.minigame-screen{text-align:center;touch-action:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:8px 12px;box-sizing:border-box;height:100%;overflow-y:auto;overflow-x:hidden}.minigame-header{padding:6px 8px;flex-shrink:0}.minigame-header h2{font-size:14px;margin:0 0 4px;color:var(--accent-secondary)}.minigame-time{font-size:12px;color:var(--text-muted);font-weight:600}.game-instruction{margin:0 0 12px;flex-shrink:0}.game-instruction,.game-progress{font-size:13px;color:var(--text-secondary)}.game-progress{font-weight:600}.game-hint{font-size:11px;color:var(--text-muted);font-style:italic}.balloon-game,.cardpairs-game,.clickfast-game,.color-game,.connect4-game,.crash-game,.dice-game,.math-game,.memory-game,.minesweeper-game,.numberorder-game,.pattern-game,.petdog-game,.quickmath-game,.reaction-game,.sequence-game,.slidingpuzzle-game,.speedspot-game,.targetsum-game,.tictactoe-game,.uniquefinder-game,.wordscramble-game{touch-action:manipulation;overflow:hidden;max-width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;box-sizing:border-box;gap:12px;flex:1;padding:4px}.reaction-button{width:160px;height:160px;border-radius:50%;border:none;font-size:20px;font-weight:700;cursor:pointer;transition:all .2s ease;background:hsla(0,0%,100%,.08);color:var(--text-secondary)}.reaction-button.active{background:linear-gradient(135deg,var(--accent),#8b5cf6);color:#fff;box-shadow:0 0 30px var(--accent-glow);transform:scale(1.1);animation:pulseReaction .8s infinite}.reaction-button:disabled{cursor:not-allowed}@keyframes pulseReaction{0%,to{transform:scale(1.1)}50%{transform:scale(1.18)}}.math-problem{display:flex;align-items:center;justify-content:center;gap:8px;font-size:26px;font-weight:700;color:var(--text-primary)}.math-answer,.math-equals,.math-number,.math-operator{padding:6px 12px;background:hsla(0,0%,100%,.05);border-radius:8px}.math-answer{color:var(--accent-secondary);min-width:50px}.math-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;max-width:280px}.math-option-button{padding:14px;background:hsla(0,0%,100%,.08);border:1px solid var(--border-light);border-radius:12px;color:var(--text-primary);font-size:18px;font-weight:600;cursor:pointer;transition:all .15s ease;min-height:48px}.math-option-button:active{background:rgba(108,92,231,.3);border-color:var(--accent);transform:scale(.95)}.pattern-display{font-size:36px;padding:16px;background:hsla(0,0%,100%,.05);border-radius:12px;letter-spacing:6px}.pattern-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:100%;max-width:280px}.pattern-option-button{padding:14px;background:hsla(0,0%,100%,.08);border:1px solid var(--border-light);border-radius:12px;font-size:28px;cursor:pointer;transition:all .15s ease;letter-spacing:3px;min-height:56px}.pattern-option-button:active{background:rgba(108,92,231,.3);transform:scale(.95)}.clickfast-button{width:160px;height:160px;border-radius:50%;border:none;font-size:18px;font-weight:700;cursor:pointer;background:linear-gradient(135deg,var(--accent),#8b5cf6);color:#fff;box-shadow:0 0 20px var(--accent-glow);transition:all .08s ease}.clickfast-button:active{transform:scale(.92)}.clickfast-button.cooldown{opacity:.5;cursor:not-allowed}.dice-display{gap:10px;flex-wrap:wrap;min-height:40px}.dice-display,.dice-result{display:flex;justify-content:center}.dice-result{width:48px;height:48px;background:hsla(0,0%,100%,.08);border:1px solid var(--border-light);border-radius:8px;align-items:center;font-size:22px;font-weight:700}.dice-button{padding:14px 28px;background:linear-gradient(135deg,var(--accent),var(--accent-secondary));border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;box-shadow:0 0 15px var(--accent-glow);min-height:48px}.dice-button.rolling{opacity:.7;cursor:not-allowed;animation:spin .5s linear infinite}.balloon-game{position:relative;width:100%;height:100%;min-height:200px;background:hsla(0,0%,100%,.03);border-radius:12px;cursor:crosshair;overflow:hidden;touch-action:none}.balloon{font-size:40px;transition:all .15s ease;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute}.balloon:active{transform:scale(1.3)}.petdog-button{width:160px;height:160px;border-radius:50%;border:none;font-size:48px;cursor:pointer;background:linear-gradient(135deg,var(--accent-secondary),#00b4d8);color:#fff;box-shadow:0 0 20px var(--accent-secondary-glow);transition:all .1s ease}.petdog-button:active{transform:scale(.88)}.sequence-display{gap:8px;flex-wrap:wrap}.sequence-display,.sequence-number{display:flex;justify-content:center}.sequence-number{width:44px;height:44px;background:hsla(0,0%,100%,.08);border:1px solid var(--border-light);border-radius:8px;align-items:center;font-size:20px;font-weight:700}.sequence-input{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;max-width:260px}.sequence-button{padding:12px;background:hsla(0,0%,100%,.08);border:1px solid var(--border-light);border-radius:12px;color:var(--text-primary);font-size:18px;font-weight:600;cursor:pointer;transition:all .15s ease;min-height:48px}.sequence-button:active{background:rgba(108,92,231,.3);transform:scale(.95)}.sequence-current{display:flex;gap:6px;min-height:40px;align-items:center;justify-content:center;flex-wrap:wrap}.color-target{font-size:48px;padding:16px;background:hsla(0,0%,100%,.05);border-radius:12px}.color-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;max-width:280px}.color-option-button{padding:16px;background:hsla(0,0%,100%,.08);border:1px solid var(--border-light);border-radius:12px;font-size:28px;cursor:pointer;transition:all .15s ease;min-height:56px}.color-option-button:active{background:rgba(108,92,231,.3);transform:scale(.95)}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;width:100%;max-width:280px}.memory-card{aspect-ratio:1;background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:10px;font-size:22px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-height:48px;min-width:48px}.memory-card:active:not(.flipped):not(:disabled){transform:scale(.93)}.memory-card.flipped{background:rgba(108,92,231,.25);border-color:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.memory-card:disabled{opacity:.4;cursor:not-allowed}.wordscramble-scrambled{font-size:26px;font-weight:700;letter-spacing:3px;color:var(--accent-secondary);padding:12px;background:hsla(0,0%,100%,.05);border-radius:12px}.wordscramble-display{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;max-width:100%}.wordscramble-letter{min-width:44px;height:44px;padding:6px 10px;background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:10px;color:var(--text-primary);font-size:20px;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.wordscramble-letter.filled{background:linear-gradient(135deg,var(--accent),var(--accent-secondary));border-color:var(--accent);color:#fff}.wordscramble-letter.empty{background:hsla(0,0%,100%,.03);color:var(--text-muted)}.wordscramble-letter:active{transform:scale(.93)}.quickmath-input{display:flex;gap:10px;align-items:center}.quickmath-input input{width:90px;padding:12px;background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:10px;color:var(--text-primary);font-size:20px;font-weight:600;text-align:center}.quickmath-input input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 10px var(--accent-glow)}.quickmath-input button{padding:12px 20px;background:linear-gradient(135deg,var(--accent),#8b5cf6);border:none;border-radius:10px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;min-height:48px}.cardpairs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;width:100%;max-width:280px}.cardpairs-card{aspect-ratio:1;background:transparent;border:none;perspective:600px;cursor:pointer;min-height:48px}.card-inner{position:relative;width:100%;height:100%;transition:transform .5s;transform-style:preserve-3d;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.3)}.cardpairs-card.flipped .card-inner{transform:rotateY(180deg)}.card-back,.card-front{position:absolute;width:100%;height:100%;backface-visibility:hidden;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:24px;border:2px solid var(--border-light)}.card-front{background:linear-gradient(135deg,rgba(108,92,231,.15),rgba(0,212,255,.15));border-color:var(--accent);transform:rotateY(180deg);box-shadow:inset 0 0 15px rgba(108,92,231,.2)}.card-back{background:hsla(0,0%,100%,.06);font-size:20px;color:var(--text-muted);background-image:repeating-linear-gradient(45deg,hsla(0,0%,100%,.02),hsla(0,0%,100%,.02) 10px,transparent 0,transparent 20px)}.cardpairs-card:active .card-back{background-color:hsla(0,0%,100%,.1);box-shadow:0 0 12px var(--accent-glow)}.tictactoe-board{flex-direction:column}.tictactoe-board,.tictactoe-row{display:flex;gap:4px}.tictactoe-cell{width:64px;height:64px;background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:10px;font-size:28px;font-weight:700;cursor:pointer;transition:all .15s ease;color:var(--accent);display:flex;align-items:center;justify-content:center}.tictactoe-cell:active:not(:disabled){background:rgba(108,92,231,.2);transform:scale(.93)}.tictactoe-cell:disabled{cursor:not-allowed;opacity:.7}.connect4-board{flex-direction:column;background:rgba(30,30,80,.5);padding:8px;border-radius:12px;border:2px solid rgba(108,92,231,.3)}.connect4-board,.connect4-row{display:flex;gap:3px}.connect4-cell{width:40px;height:40px;background:hsla(0,0%,100%,.06);border:2px solid hsla(0,0%,100%,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.connect4-cell:active:not(:disabled){transform:scale(.9)}.connect4-cell.red{background:radial-gradient(circle at 30% 30%,#ff6b6b,#c92a2a);border-color:#c92a2a;box-shadow:0 0 10px hsla(0,100%,71%,.5)}.connect4-cell.yellow{background:radial-gradient(circle at 30% 30%,#fcc419,#f08c00);border-color:#f08c00;box-shadow:0 0 10px rgba(252,196,25,.5)}.connect4-cell:disabled{cursor:not-allowed}.minesweeper-grid{flex-direction:column}.minesweeper-grid,.minesweeper-row{display:flex;gap:2px}.minesweeper-cell{width:36px;height:36px;background:hsla(0,0%,100%,.08);border:1px solid var(--border-light);border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .15s ease;color:var(--text-primary);display:flex;align-items:center;justify-content:center}.minesweeper-cell:active:not(:disabled){background:hsla(0,0%,100%,.15);transform:scale(.93)}.minesweeper-cell.revealed{background:rgba(108,92,231,.15);cursor:not-allowed}.minesweeper-cell:disabled{cursor:not-allowed}.slidingpuzzle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:100%;max-width:200px}.slidingpuzzle-tile{aspect-ratio:1;background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:10px;font-size:22px;font-weight:700;cursor:pointer;transition:all .15s ease;color:var(--text-primary);display:flex;align-items:center;justify-content:center}.slidingpuzzle-tile:active:not(:disabled):not(.empty){background:rgba(108,92,231,.2);transform:scale(.93)}.slidingpuzzle-tile.empty{background:hsla(0,0%,100%,.02);border-color:transparent;cursor:not-allowed}.slidingpuzzle-tile:disabled{cursor:not-allowed}.numberorder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;max-width:240px}.numberorder-button{aspect-ratio:1;background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:12px;font-size:22px;font-weight:700;cursor:pointer;transition:all .15s ease;color:var(--text-primary);display:flex;align-items:center;justify-content:center;min-height:56px}.numberorder-button:active:not(:disabled){background:rgba(108,92,231,.3);transform:scale(.93)}.numberorder-button.selected{background:linear-gradient(135deg,var(--accent),var(--accent-secondary));border-color:var(--accent);color:#fff;box-shadow:0 0 10px var(--accent-glow)}.numberorder-button:disabled{cursor:not-allowed;opacity:.4}.targetsum-grid{flex-wrap:wrap;gap:8px;width:100%;max-width:320px}.targetsum-button,.targetsum-grid{display:flex;justify-content:center}.targetsum-button{min-width:56px;height:56px;font-size:18px;font-weight:700;background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:10px;color:var(--text-primary);cursor:pointer;transition:all .15s ease;align-items:center}.targetsum-button:active:not(.selected){background:hsla(0,0%,100%,.15);transform:scale(.93)}.targetsum-button.selected{background:rgba(108,92,231,.3);border-color:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.uniquefinder-grid{display:grid;gap:6px;width:100%;max-width:280px;grid-template-columns:repeat(auto-fit,minmax(56px,1fr))}.uniquefinder-button{aspect-ratio:1;background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:10px;font-size:28px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;min-height:56px}.uniquefinder-button:active{background:rgba(108,92,231,.3);transform:scale(.93)}.speedspot-grid{display:grid;gap:4px;width:100%;max-width:300px}.speedspot-button,.speedspot-grid{aspect-ratio:1;justify-content:center}.speedspot-button{background:hsla(0,0%,100%,.08);border:2px solid var(--border-light);border-radius:8px;font-size:22px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center}.speedspot-button:active{background:rgba(108,92,231,.3);transform:scale(.93)}.crash-display{font-size:36px;font-weight:900;color:var(--accent-secondary)}.crash-button{padding:16px 32px;background:linear-gradient(135deg,#dc2626,#ef4444);border:none;border-radius:14px;color:#fff;font-size:18px;font-weight:700;cursor:pointer;box-shadow:0 4px 15px rgba(220,38,38,.4);min-height:52px}.crash-button:active{transform:scale(.95)}@media (max-width:400px){.tictactoe-cell{width:52px;height:52px;font-size:24px}.connect4-cell{width:34px;height:34px}.minesweeper-cell{width:30px;height:30px;font-size:14px}.cardpairs-grid,.memory-grid{grid-template-columns:repeat(3,1fr);max-width:220px}.wordscramble-letter{min-width:36px;height:36px;font-size:18px}.numberorder-grid{max-width:200px;gap:6px}.targetsum-button{min-width:48px;height:48px;font-size:16px}.uniquefinder-grid{max-width:240px}.uniquefinder-button{font-size:24px}.speedspot-grid{max-width:260px}.speedspot-button{font-size:18px}.clickfast-button,.petdog-button,.reaction-button{width:140px;height:140px}.slidingpuzzle-grid{max-width:170px}}@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg-deep:#0a0a12;--bg-main:#0f0f1a;--bg-card:#161625;--bg-card-hover:#1c1c30;--bg-elevated:#1e1e32;--accent:#6c5ce7;--accent-glow:rgba(108,92,231,.4);--accent-secondary:#00d4ff;--accent-secondary-glow:rgba(0,212,255,.3);--hp-green:#00e676;--hp-yellow:#ffc107;--hp-red:#ff1744;--damage-red:#ff4757;--heal-green:#2ed573;--crit-gold:gold;--gold:gold;--xp-purple:#a855f7;--rarity-common:#94a3b8;--rarity-uncommon:#22c55e;--rarity-rare:#3b82f6;--rarity-epic:#a855f7;--text-primary:#f0f0f5;--text-secondary:#88a;--text-muted:#555570;--border:hsla(0,0%,100%,.08);--border-light:hsla(0,0%,100%,.12);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);font-family:Inter,-apple-system,system-ui,sans-serif}:root,body,html{color:var(--text-primary);background:var(--bg-deep)}body,html{height:100%;height:100dvh;overflow:hidden;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;touch-action:manipulation}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translateX(0)}20%{transform:translateX(-8px) rotate(-1deg)}40%{transform:translateX(8px) rotate(1deg)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px var(--accent-glow),0 0 30px transparent}50%{box-shadow:0 0 25px var(--accent-glow),0 0 50px var(--accent-glow)}}@keyframes floatUp{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-60px) scale(1.3)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}.damage-number.partial{color:gold;text-shadow:0 0 8px rgba(255,215,0,.5)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes shrinkWidth{0%{width:100%}to{width:0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes slideIn{0%{transform:translateX(100px);opacity:0}to{transform:translateX(0);opacity:1}}.shake{animation:shake .4s ease-in-out}.slide-in{animation:slideIn .6s cubic-bezier(.34,1.56,.64,1)}.fade-in{animation:fadeIn .4s ease}.gauntlet-app{width:100%;height:100dvh;max-width:480px;margin:0 auto;overflow:hidden;position:relative;background:var(--bg-main)}.screen{width:100%;height:100%;display:flex;flex-direction:column;padding:20px 16px;padding-top:calc(20px + var(--safe-top));padding-bottom:calc(20px + var(--safe-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;animation:fadeIn .3s ease}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:12px;border:1px solid var(--border-light);background:var(--bg-card);color:var(--text-primary);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;min-height:48px;touch-action:manipulation;-moz-user-select:none;user-select:none;-webkit-user-select:none}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg,var(--accent),#8b5cf6);border-color:var(--accent);box-shadow:0 4px 15px var(--accent-glow)}.btn-primary:active{box-shadow:0 2px 8px var(--accent-glow)}.btn-danger{background:linear-gradient(135deg,#dc2626,#ef4444)!important;border-color:#dc2626!important;box-shadow:0 4px 15px rgba(220,38,38,.4)}.btn-secondary{background:var(--bg-elevated);border-color:var(--border-light)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn-lg{padding:16px 32px;font-size:17px;border-radius:14px;width:100%}.btn-icon{font-size:20px}.pulse-glow{animation:pulseGlow 2s infinite}.lobby-screen{justify-content:center;align-items:center;gap:28px;text-align:center}.lobby-hero{animation:fadeInScale .5s ease}.lobby-icon{font-size:64px;margin-bottom:12px;filter:drop-shadow(0 0 20px var(--accent-glow))}.lobby-title{font-size:36px;font-weight:900;letter-spacing:4px;background:linear-gradient(135deg,var(--accent),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lobby-subtitle{color:var(--text-secondary);font-size:14px;margin-top:6px}.lobby-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%;animation:slideUp .5s ease .2s both}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:12px 6px;display:flex;flex-direction:column;align-items:center;gap:4px}.stat-value{font-size:22px;font-weight:800;color:var(--accent-secondary)}.stat-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.lobby-actions{display:flex;flex-direction:column;gap:10px;width:100%;animation:slideUp .5s ease .3s both}.lobby-tip{display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px;font-size:12px;color:var(--text-secondary);line-height:1.5;animation:fadeIn .5s ease .5s both}.tip-emoji{font-size:18px;flex-shrink:0}.map-screen{padding-top:12px;gap:8px}.map-header{display:flex;justify-content:space-around;padding:10px 0;border-bottom:1px solid var(--border)}.map-header-stat{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600}.header-icon{font-size:16px}.map-items-bar{display:flex;gap:6px;padding:8px 0;flex-wrap:wrap}.item-pip{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:16px;background:var(--bg-card);border:1px solid var(--border)}.item-pip.rarity-uncommon{border-color:var(--rarity-uncommon)}.item-pip.rarity-rare{border-color:var(--rarity-rare)}.item-pip.rarity-epic{border-color:var(--rarity-epic);box-shadow:0 0 8px var(--rarity-epic)}.item-more{font-size:11px;color:var(--text-muted)}.floor-map{flex:1;overflow-y:auto;padding:8px 0}.floor-path{display:flex;flex-direction:column;align-items:center;gap:0}.floor-connector{width:2px;height:20px;background:var(--border);transition:background .3s}.floor-connector.active{background:var(--accent)}.floor-node{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;cursor:default;transition:all .2s;color:var(--text-primary);font-size:14px}.floor-node.current{border-color:var(--accent);box-shadow:0 0 15px var(--accent-glow);cursor:pointer;animation:pulseGlow 2s infinite}.floor-node.current:active{transform:scale(.98)}.floor-node.completed{opacity:.5}.floor-node.future{opacity:.35}.floor-node.danger{border-color:var(--hp-red)}.floor-node.danger.current{box-shadow:0 0 15px rgba(255,23,68,.4)}.node-icon{font-size:24px;flex-shrink:0}.node-label{font-weight:600}.node-floor{color:var(--text-muted);font-size:12px;margin-left:auto}.node-monster{font-size:12px;color:var(--text-secondary)}.map-cta{padding:12px 0}.map-victory{text-align:center;padding:24px 0}.victory-icon{font-size:48px;animation:bounceIn .6s ease}.victory-text{font-size:20px;font-weight:800;margin-top:8px;color:var(--crit-gold)}.battle-screen{padding:6px 10px;gap:2px;justify-content:flex-start;overflow:hidden}.battle-enemy-section{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:4px}.enemy-info{text-align:center}.enemy-name{font-size:16px;font-weight:700}.enemy-special{font-size:11px;color:var(--text-muted);display:block;margin-top:2px;font-style:italic}.enemy-sprite{font-size:44px;position:relative;transition:transform .2s;filter:drop-shadow(0 6px 15px rgba(0,0,0,.5))}.monster-emoji{display:block}.battle-divider{flex:0 0 auto;text-align:center;padding:4px 0}.turn-indicator{font-size:14px;font-weight:700;color:var(--text-secondary);letter-spacing:1px}.battle-player-section{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:6px}.player-avatar{font-size:32px;position:relative}.player-emoji{display:block}.player-stats-row{display:flex;gap:12px;font-size:13px;color:var(--text-secondary);font-weight:600}.hp-bar-wrap{width:100%;max-width:280px;height:18px;background:var(--bg-card);border-radius:9px;border:1px solid var(--border);position:relative;overflow:hidden}.hp-bar{height:100%;border-radius:8px;transition:width .5s cubic-bezier(.22,1,.36,1)}.enemy-hp{background:linear-gradient(90deg,var(--hp-red),#ff6b6b)}.player-hp{background:linear-gradient(90deg,var(--hp-green),#69db7c)}.hp-text{top:50%;transform:translate(-50%,-50%);font-size:10px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.8)}.damage-number,.hp-text{position:absolute;left:50%}.damage-number{top:-10px;transform:translateX(-50%);font-size:24px;font-weight:900;animation:floatUp 1s ease forwards;pointer-events:none;z-index:100;text-shadow:0 2px 4px rgba(0,0,0,.8)}.damage-number.dealt{color:var(--hp-red)}.damage-number.crit{color:var(--crit-gold);font-size:30px}.damage-number.taken{color:var(--hp-red)}.damage-number.heal{color:var(--heal-green)}.battle-minigame-area{flex:1;min-height:240px;background:var(--bg-card);border:1px solid var(--border-light);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;position:relative}.minigame-timer-bar{height:4px;background:var(--bg-deep);flex-shrink:0}.minigame-timer-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-secondary));transition:width 1s linear}.battle-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted)}.loading-spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.loot-screen{justify-content:center;align-items:center;gap:24px}.loot-header{text-align:center;animation:bounceIn .5s ease}.loot-title-icon{font-size:48px}.loot-title{font-size:24px;font-weight:800;margin-top:8px}.loot-cards{display:flex;flex-direction:column;gap:12px;width:100%;animation:slideUp .4s ease .2s both}.loot-cards.collected{opacity:.3;transform:scale(.95);transition:all .5s}.loot-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:14px;padding:16px;display:flex;align-items:center;gap:14px}.loot-emoji{font-size:32px}.loot-amount{font-size:18px;font-weight:700}.gold-card{border-color:var(--gold)}.heal-card{border-color:var(--heal-green)}.item-card{flex-direction:column;text-align:center}.loot-item-name{font-size:16px;font-weight:700}.loot-item-desc{font-size:13px;color:var(--text-secondary)}.rarity-badge{font-size:10px;font-weight:800;letter-spacing:1px;padding:3px 10px;border-radius:6px;margin-top:6px}.rarity-badge.common{background:rgba(148,163,184,.2);color:var(--rarity-common)}.rarity-badge.uncommon{background:rgba(34,197,94,.2);color:var(--rarity-uncommon)}.rarity-badge.rare{background:rgba(59,130,246,.2);color:var(--rarity-rare)}.rarity-badge.epic{background:rgba(168,85,247,.2);color:var(--rarity-epic)}.loot-card.rarity-uncommon{border-color:var(--rarity-uncommon)}.loot-card.rarity-rare{border-color:var(--rarity-rare)}.loot-card.rarity-epic{border-color:var(--rarity-epic);box-shadow:0 0 20px rgba(168,85,247,.3)}.loot-actions{width:100%;animation:slideUp .4s ease .4s both}.gameover-screen{justify-content:center;align-items:center;gap:24px}.gameover-screen.victory{background:radial-gradient(circle at center,rgba(108,92,231,.1) 0,transparent 70%)}.gameover-screen.defeat{background:radial-gradient(circle at center,rgba(255,23,68,.08) 0,transparent 70%)}.gameover-hero{text-align:center;animation:bounceIn .5s ease}.gameover-icon{font-size:64px}.gameover-title{font-size:28px;font-weight:900;margin-top:8px;letter-spacing:2px}.gameover-subtitle{color:var(--text-secondary);font-size:14px;margin-top:6px}.gameover-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;width:100%;animation:slideUp .5s ease .2s both}.gameover-stat{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.gameover-stat .stat-icon{font-size:20px}.gameover-stat .stat-label{font-size:11px;color:var(--text-muted)}.gameover-stat .stat-value{font-size:16px;font-weight:700}.gameover-loss-warning{background:rgba(255,23,68,.1);border:1px solid rgba(255,23,68,.3);border-radius:12px;padding:16px;text-align:center;animation:fadeIn .5s ease .4s both}.loss-icon{font-size:24px}.loss-detail{font-size:12px;color:var(--text-muted);margin-top:4px}.gameover-win-bonus{background:rgba(108,92,231,.1);border:1px solid rgba(108,92,231,.3);border-radius:12px;padding:16px;text-align:center;animation:fadeIn .5s ease .4s both}.bonus-icon{font-size:24px}.gameover-actions{width:100%;animation:slideUp .5s ease .5s both}.staking-screen{justify-content:center;gap:24px}.staking-header{text-align:center}.staking-icon{font-size:48px}.staking-desc{font-size:13px;color:var(--text-secondary);margin-top:8px;line-height:1.5}.staking-options{display:flex;gap:10px;width:100%}.staking-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 8px;background:var(--bg-card);border:2px solid var(--border);border-radius:14px;cursor:pointer;transition:all .2s;color:var(--text-primary)}.staking-option:active{transform:scale(.97)}.staking-option.selected{border-color:var(--accent);box-shadow:0 0 15px var(--accent-glow)}.stake-count{font-size:28px;font-weight:900}.stake-label{font-size:13px;color:var(--text-secondary)}.stake-bonus{font-size:10px;color:var(--accent-secondary);font-weight:600;text-align:center;margin-top:4px}.staking-warning{display:flex;align-items:center;gap:8px;background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.3);border-radius:10px;padding:12px;font-size:12px;color:var(--text-secondary)}.staking-actions{display:flex;flex-direction:column;gap:8px}.mystery-screen{justify-content:center;align-items:center;gap:24px}.mystery-header{text-align:center}.mystery-emoji{font-size:56px;animation:bounceIn .5s ease}.mystery-title{font-size:22px;font-weight:800;margin-top:12px}.mystery-desc{font-size:14px;color:var(--text-secondary);margin-top:8px;line-height:1.5}.mystery-options{display:flex;flex-direction:column;gap:10px;width:100%}.mystery-choice{width:100%}.mystery-result{text-align:center;padding:24px;border-radius:16px;animation:bounceIn .4s ease}.mystery-result.good{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3)}.mystery-result.bad{background:rgba(255,23,68,.1);border:1px solid rgba(255,23,68,.3)}.mystery-result.neutral{background:var(--bg-card);border:1px solid var(--border)}.result-emoji{font-size:40px}.result-details{margin-top:12px}.result-details p{font-size:15px;font-weight:600;margin:4px 0}.merchant-screen{gap:16px}.merchant-header{text-align:center}.merchant-emoji{font-size:40px}.merchant-gold{font-size:18px;font-weight:700;color:var(--gold);margin-top:6px}.merchant-items{display:flex;flex-direction:column;gap:8px;flex:1;overflow-y:auto}.merchant-item{display:flex;align-items:center;gap:12px;padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;cursor:pointer;transition:all .2s;color:var(--text-primary);width:100%;text-align:left}.merchant-item:active{transform:scale(.98)}.merchant-item.sold{opacity:.4;cursor:default}.merchant-item.too-expensive{opacity:.5}.mi-emoji{font-size:24px;flex-shrink:0}.mi-info{flex:1}.mi-name{font-size:14px;font-weight:700;display:block}.mi-desc{font-size:11px;color:var(--text-muted)}.mi-cost{font-size:14px;font-weight:700;color:var(--gold);flex-shrink:0}.rest-screen{justify-content:center;align-items:center;gap:24px;text-align:center}.rest-emoji{font-size:56px;animation:bounceIn .5s ease}.rest-heal-preview{font-size:18px;font-weight:600;margin-top:12px;display:flex;align-items:center;gap:8px}.heal-amount{color:var(--heal-green)}.treasure-screen{justify-content:center;align-items:center;gap:24px;text-align:center}.treasure-emoji{font-size:56px;animation:bounceIn .5s ease}.treasure-loot{margin-top:16px}.treasure-gold{font-size:22px;font-weight:800;color:var(--gold)}.treasure-heal{font-size:18px;font-weight:600;color:var(--heal-green)}.treasure-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;margin-top:8px;background:var(--bg-card);border-radius:12px}.treasure-item .item-desc{font-size:12px;color:var(--text-muted)}.gallery-screen{align-items:center;justify-content:center;text-align:center}.gallery-header p{margin-top:8px}.loading-screen{justify-content:center;align-items:center;color:var(--text-muted)}.battle-minigame-area .minigame-screen{height:100%;overflow-y:auto;overflow-x:hidden;padding:8px}.battle-minigame-area .minigame-header{padding:4px 8px}.battle-minigame-area .minigame-header h2{font-size:13px}.agegate-screen{justify-content:center;align-items:center;gap:28px;text-align:center}.agegate-icon{font-size:56px;animation:bounceIn .5s ease}.agegate-title{font-size:24px;font-weight:800;margin-top:8px}.agegate-desc{font-size:14px;color:var(--text-secondary);margin-top:8px;line-height:1.5;max-width:320px}.agegate-actions{display:flex;flex-direction:column;gap:10px;width:100%;max-width:300px}.agegate-disclaimer{font-size:11px;color:var(--text-muted);line-height:1.5}.auth-screen{justify-content:center;align-items:center;gap:24px;text-align:center}.auth-icon{font-size:48px}.auth-title{font-size:20px;font-weight:800;margin-top:8px}.auth-desc{font-size:13px;color:var(--text-secondary);line-height:1.5}.auth-recovery-key{background:var(--bg-card);border:2px solid var(--accent);border-radius:12px;padding:16px;font-family:monospace;font-size:14px;word-break:break-all;color:var(--accent-secondary);max-width:320px}.auth-recovery-label{font-size:11px;color:var(--text-muted);margin-top:4px}.gallery-screen{gap:16px;align-items:stretch}.gallery-header{text-align:center;flex-shrink:0}.gallery-header h2{font-size:22px;font-weight:800}.gallery-header p{color:var(--text-muted);margin-top:4px;font-size:13px}.gallery-upload-area{background:var(--bg-card);border:2px dashed var(--border-light);border-radius:14px;padding:20px;text-align:center;cursor:pointer;transition:all .2s}.gallery-upload-area:active{border-color:var(--accent);background:var(--bg-card-hover)}.gallery-upload-area input[type=file]{display:none}.upload-icon{font-size:32px}.upload-text{font-size:13px;color:var(--text-secondary);margin-top:6px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;flex:1;overflow-y:auto}.gallery-pic{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;border:2px solid var(--border);cursor:pointer;transition:all .2s}.gallery-pic img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.gallery-pic.selected{border-color:var(--accent);box-shadow:0 0 12px var(--accent-glow)}.gallery-pic.exposed{border-color:var(--hp-red);opacity:.5}.gallery-pic-status{position:absolute;bottom:2px;right:2px;font-size:14px;background:rgba(0,0,0,.7);border-radius:4px;padding:1px 4px}.gallery-require-msg{text-align:center;padding:16px;background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.3);border-radius:10px;font-size:13px;color:var(--text-secondary)}