*{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f0e17;--card: #1a1a2e;--card2: #16213e;--accent: #ff6b6b;--accent2: #4ecdc4;--accent3: #ffe66d;--text: #fffffe;--muted: #a7a9be;--buff: #4ade80;--debuff: #f87171;--border: #2a2a4a;--c-dex: #a78bfa;--c-vit: #4ade80;--c-agi: #22d3ee;--c-atk: #fb7185}html,body{background:var(--bg);color:var(--text);font-family:Hiragino Kaku Gothic ProN,Meiryo,system-ui,sans-serif;min-height:100vh;-webkit-tap-highlight-color:transparent}body{display:flex;justify-content:center;overflow-x:hidden}#app{width:100%;max-width:440px;min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#0f0e17,#1a1a2e);border-left:1px solid var(--border);border-right:1px solid var(--border);position:relative}.header{padding:12px 14px 10px;background:#00000040;border-bottom:2px solid var(--border);position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-top{display:flex;align-items:center;gap:8px}.title{font-size:22px;font-weight:900;letter-spacing:.04em;color:var(--accent3);text-shadow:0 2px 0 #000,0 0 12px rgba(255,230,109,.5)}.subtitle{font-size:10px;color:var(--muted);letter-spacing:.2em}.help-btn{width:30px;height:30px;border-radius:50%;border:2px solid var(--accent3);background:#ffe66d26;color:var(--accent3);font-weight:900;font-size:16px;cursor:pointer;display:grid;place-items:center;box-shadow:0 0 10px #ffe66d4d;transition:transform .15s,background .2s}.help-btn:active{transform:scale(.9)}.help-btn:hover{background:#ffe66d47}.audio-controls{display:flex;align-items:center;gap:6px;background:#00000040;border:1px solid var(--border);border-radius:999px;padding:3px 6px}.audio-mute-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--card2);color:var(--text);font-size:14px;cursor:pointer;display:grid;place-items:center;transition:transform .12s,background .2s}.audio-mute-btn:active{transform:scale(.9)}.audio-mute-btn.muted{background:#331414;border-color:#5a1a1a}.audio-volume{width:70px;height:4px;accent-color:var(--accent3);cursor:pointer}@media (max-width: 400px){.audio-volume{width:50px}}.stats-bar{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.stat-chip{background:var(--card);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:12px;color:var(--muted)}.stat-chip b{color:var(--text);margin-left:4px}.stat-chip.hiscore{margin-left:auto;background:#2a1a00;border-color:#5a3a00;color:var(--accent3)}.main{flex:1;padding:12px;display:flex;flex-direction:column;gap:12px}.hero-area{background:linear-gradient(135deg,#1a1a2e,#1e2a4a);border:1px solid var(--border);border-radius:16px;padding:12px;overflow:hidden;box-shadow:0 4px 20px #0000004d,inset 0 1px #ffffff0f}.hero-visual{display:flex;align-items:center;gap:12px;justify-content:center;padding:8px 0 6px}.hero-sprite{font-size:48px;transition:transform .5s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 4px 8px rgba(0,0,0,.5));will-change:transform}.hero-sprite.pulse{animation:heroPulse .5s ease}@keyframes heroPulse{0%{transform:scale(1)}50%{transform:scale(1.25) rotate(-3deg)}to{transform:scale(1)}}.hero-layers{display:flex;flex-wrap:wrap;gap:4px;max-width:180px}.hero-layer{background:var(--card2);border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:11px;animation:layerIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes layerIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.slots{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.slot-card{background:var(--card2);border:1px solid var(--border);border-radius:14px;padding:8px 8px 10px;position:relative;transition:all .25s;overflow:hidden}.slot-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:14px 14px 0 0;opacity:.9}.slot-card[data-slot=head]:before{background:linear-gradient(90deg,#7c3aed,#a78bfa)}.slot-card[data-slot=armor]:before{background:linear-gradient(90deg,#16a34a,#4ade80)}.slot-card[data-slot=legs]:before{background:linear-gradient(90deg,#0891b2,#22d3ee)}.slot-card[data-slot=sword]:before{background:linear-gradient(90deg,#e11d48,#fb7185)}.slot-card.used-this-lap{opacity:.55;border-color:#333;filter:grayscale(.3)}.slot-card.pulse{animation:slotPulse .5s ease}@keyframes slotPulse{0%{transform:scale(1);box-shadow:0 0 #4ade8000}50%{transform:scale(1.04);box-shadow:0 0 20px #4ade8066}to{transform:scale(1)}}.slot-head{display:flex;align-items:center;gap:4px;font-size:11px;flex-wrap:wrap}.slot-icon{font-size:15px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.slot-name{font-weight:900;font-size:13px;letter-spacing:.03em}.slot-stat{color:var(--muted);font-size:10px}.slot-stat-detail{font-size:9px;color:#6b7280;margin-top:1px;letter-spacing:.02em}.used-badge{margin-left:auto;background:#333;color:#aaa;border-radius:999px;padding:1px 6px;font-size:9px}.available-badge{margin-left:auto;background:linear-gradient(135deg,#4ecdc4,#22d3ee);color:#000;border-radius:999px;padding:1px 7px;font-size:9px;font-weight:800;box-shadow:0 0 8px #22d3ee80;animation:badgeGlow 1.8s ease-in-out infinite alternate}@keyframes badgeGlow{0%{box-shadow:0 0 6px #22d3ee66}to{box-shadow:0 0 14px #22d3eecc}}.slot-gauge-wrap{margin-top:6px;background:#0a0a14;border-radius:999px;height:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);position:relative}.slot-gauge{height:100%;border-radius:999px;transition:width .7s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.slot-gauge:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);animation:shimmerMove 1.8s linear infinite;opacity:.6}@keyframes shimmerMove{0%{transform:translate(-100%)}to{transform:translate(100%)}}.slot-gauge.dex{background:linear-gradient(90deg,#6d28d9,#a78bfa);box-shadow:0 0 8px #a78bfa80}.slot-gauge.vit{background:linear-gradient(90deg,#15803d,#4ade80);box-shadow:0 0 8px #4ade8080}.slot-gauge.agi{background:linear-gradient(90deg,#0e7490,#22d3ee);box-shadow:0 0 8px #22d3ee80}.slot-gauge.atk{background:linear-gradient(90deg,#be123c,#fb7185);box-shadow:0 0 8px #fb718580}.slot-gauge.maxed{animation:gaugeMaxed .8s ease-in-out infinite alternate}@keyframes gaugeMaxed{0%{box-shadow:0 0 8px #fff6;filter:brightness(1)}to{box-shadow:0 0 18px #ffffffe6;filter:brightness(1.2)}}.slot-bigvalue{margin-top:4px;display:flex;align-items:baseline;gap:4px}.slot-bigvalue .big-num{font-size:22px;font-weight:900;line-height:1;text-shadow:0 2px 4px rgba(0,0,0,.5);transition:transform .3s}.slot-bigvalue .big-num.dex{color:var(--c-dex)}.slot-bigvalue .big-num.vit{color:var(--c-vit)}.slot-bigvalue .big-num.agi{color:var(--c-agi)}.slot-bigvalue .big-num.atk{color:var(--c-atk)}.slot-bigvalue .big-num.pop{animation:numPop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes numPop{0%{transform:scale(1)}50%{transform:scale(1.35)}to{transform:scale(1)}}.slot-bigvalue .unit{font-size:10px;color:var(--muted)}.slot-formula{margin-top:6px;font-family:monospace;font-size:11px;color:var(--accent3);background:#00000052;border-radius:6px;padding:4px 6px;word-break:break-all;min-height:24px;border:1px solid rgba(255,230,109,.15)}.slot-value{display:none}.slot-equips{display:flex;flex-wrap:wrap;gap:3px;margin-top:5px;min-height:18px}.equip-chip{font-family:monospace;font-size:10px;padding:1px 5px;border-radius:999px;font-weight:700}.equip-chip.buff{background:#14332a;color:var(--buff);border:1px solid #1a5a3a}.equip-chip.debuff{background:#331414;color:var(--debuff);border:1px solid #5a1a1a}.no-equip{font-size:10px;color:var(--muted)}.enemy-area{background:linear-gradient(135deg,#1a1a2e,#1a1f3a);border:1px solid var(--border);border-radius:16px;padding:12px;position:relative;box-shadow:0 4px 20px #0000004d}.enemy-card{display:flex;gap:12px;align-items:center;position:relative}.enemy-card.shake{animation:shake .2s ease}.enemy-card.shake-strong{animation:shakeStrong .35s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes shakeStrong{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-8px,0,0)}40%,60%{transform:translate3d(8px,0,0)}}.enemy-icon{font-size:44px;width:64px;height:64px;display:grid;place-items:center;background:radial-gradient(circle at 30% 30%,#1a1a3a,#0a0a1a);border-radius:14px;border:1px solid var(--border);box-shadow:inset 0 1px #ffffff14,0 4px 12px #0006;transition:transform .2s}.enemy-icon.hit{animation:enemyHit .3s ease}@keyframes enemyHit{0%{transform:scale(1);filter:brightness(1)}50%{transform:scale(.92);filter:brightness(1.6) hue-rotate(-10deg)}to{transform:scale(1);filter:brightness(1)}}.enemy-info{flex:1}.enemy-name{font-weight:900;font-size:15px;display:flex;align-items:center;gap:6px}.enemy-name .lv-badge{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff;font-size:10px;padding:2px 6px;border-radius:999px;font-weight:800}.hp-bar-wrap{margin-top:6px;background:#0a0a14;border-radius:999px;height:16px;position:relative;overflow:hidden;border:1px solid #222;box-shadow:inset 0 2px 4px #00000080}.hp-bar-wrap.small{height:14px;margin-top:4px}.hp-bar{height:100%;background:linear-gradient(90deg,#ff416c,#ff4b2b);border-radius:999px;transition:width .45s cubic-bezier(.34,1.56,.64,1);width:100%;box-shadow:0 0 6px #ff416c80}.hp-bar.player{background:linear-gradient(90deg,#00b09b,#96c93d);box-shadow:0 0 6px #96c93d80}.hp-bar.blink{animation:hpBlink .35s ease 2}@keyframes hpBlink{0%,to{filter:brightness(1)}50%{filter:brightness(1.7) saturate(1.5)}}.hp-text{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:10px;font-weight:800;color:#fff;text-shadow:0 1px 2px #000,0 0 4px rgba(0,0,0,.8)}.enemy-stats{display:flex;gap:6px;margin-top:6px;font-size:11px;color:var(--muted);flex-wrap:wrap}.enemy-stats span{background:#0f0f1f;padding:2px 6px;border-radius:6px;border:1px solid rgba(255,255,255,.06);display:inline-flex;align-items:center;gap:3px}.enemy-stats .cmp{font-size:9px;font-weight:800;padding:1px 4px;border-radius:999px}.cmp.up{background:#4ade8026;color:var(--buff)}.cmp.down{background:#f8717126;color:var(--debuff)}.cmp.even{background:#ffffff14;color:var(--muted)}.player-hp{margin-top:10px;font-size:11px;color:var(--muted);position:relative}.forecast{margin-top:12px;background:#00000047;border:1px solid var(--border);border-radius:12px;padding:8px 10px;transition:opacity .3s}.forecast.hidden{display:none}.forecast-label{font-size:10px;color:var(--accent3);font-weight:800;letter-spacing:.08em;text-align:center}.forecast-bar-wrap{margin-top:4px}.forecast-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:#111;border:1px solid #333;position:relative}.forecast-fill{height:100%;transition:width .6s cubic-bezier(.34,1.56,.64,1)}.forecast-fill.player{background:linear-gradient(90deg,#00b09b,#4ade80)}.forecast-fill.enemy{background:linear-gradient(90deg,#ff416c,#ff6b6b)}.forecast-text{display:flex;justify-content:space-between;align-items:center;margin-top:4px;font-size:12px;font-weight:900}.forecast-text #forecast-pct-player{color:#4ade80}.forecast-text #forecast-pct-enemy{color:#ff6b6b}.forecast-text .vs{color:var(--muted);font-size:10px}.forecast-detail{text-align:center;font-size:10px;color:var(--muted);margin-top:2px}.damage-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible}#damage-layer-enemy{left:76px}#damage-layer-player{top:18px}.dmg-pop{position:absolute;font-weight:900;font-size:18px;color:#fff;text-shadow:0 2px 0 #000,0 0 8px rgba(0,0,0,.8);animation:dmgPop .75s cubic-bezier(.34,1.56,.64,1) forwards;white-space:nowrap;will-change:transform,opacity}.dmg-pop.crit{font-size:26px;color:#ffe66d;text-shadow:0 2px 0 #7a5a00,0 0 12px rgba(255,230,109,.9),0 0 20px rgba(255,107,107,.6);animation:dmgPopCrit .85s cubic-bezier(.34,1.56,.64,1) forwards}.dmg-pop.miss{color:#9ca3af;font-size:14px}.dmg-pop.heal{color:#4ade80}@keyframes dmgPop{0%{transform:translateY(0) scale(.5);opacity:0}15%{transform:translateY(-6px) scale(1.15);opacity:1}to{transform:translateY(-44px) scale(1);opacity:0}}@keyframes dmgPopCrit{0%{transform:translateY(0) scale(.3) rotate(-5deg);opacity:0}20%{transform:translateY(-10px) scale(1.35) rotate(2deg);opacity:1}to{transform:translateY(-55px) scale(1.05) rotate(0);opacity:0}}.crit-label{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);font-size:13px;font-weight:900;color:#ffe66d;background:linear-gradient(135deg,#ff6b6b,#ffe66d);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.8));animation:critLabel .7s ease forwards;pointer-events:none;white-space:nowrap}@keyframes critLabel{0%{transform:translate(-50%,-50%) scale(0);opacity:0}30%{transform:translate(-50%,-50%) scale(1.2);opacity:1}to{transform:translate(-50%,-80%) scale(1);opacity:0}}.log-area{background:#0a0a12;border:1px solid var(--border);border-radius:12px;padding:8px;box-shadow:inset 0 2px 8px #00000080}.log{height:140px;overflow-y:auto;font-size:12px;line-height:1.6;font-family:monospace;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.log-line{padding:1px 0;transition:all .2s}.log-line.active{color:var(--accent3);font-weight:700;animation:logIn .3s ease}@keyframes logIn{0%{transform:translate(-6px);opacity:0}to{transform:translate(0);opacity:1}}.log-line.crit{color:#ffe66d;text-shadow:0 0 6px rgba(255,230,109,.6)}.action-area{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 0}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:999px;padding:14px 28px;font-size:16px;font-weight:900;cursor:pointer;transition:transform .12s,opacity .2s,box-shadow .2s;width:100%;max-width:320px;position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:translate(-100%);transition:transform .6s}.btn:hover:after{transform:translate(100%)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn:disabled:after{display:none}.btn.primary{background:linear-gradient(180deg,#ff6b6b,#ee5a24);color:#fff;box-shadow:0 6px #a83a2a,0 8px 20px #ee5a2459,0 0 #ff6b6b00;animation:btnPulse 2.2s ease-in-out infinite}@keyframes btnPulse{0%,to{box-shadow:0 6px #a83a2a,0 8px 20px #ee5a2459}50%{box-shadow:0 6px #a83a2a,0 8px 24px #ff6b6b80,0 0 18px #ffe66d40}}.btn.primary:disabled{animation:none;box-shadow:0 4px #6b6b6b}.btn.primary.large{font-size:18px;padding:16px 32px}.hint{font-size:12px;color:var(--muted);text-align:center;min-height:16px}.footer{text-align:center;padding:10px;font-size:10px;color:var(--muted);border-top:1px solid var(--border)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;z-index:20;padding:16px;animation:modalFadeIn .25s ease}.modal.hidden{display:none}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-inner{background:linear-gradient(180deg,#1a1a2e,#16213e);border:1px solid var(--border);border-radius:20px;padding:16px;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #000000b3,0 0 0 1px #ffffff0d;animation:modalScaleIn .35s cubic-bezier(.34,1.56,.64,1)}@keyframes modalScaleIn{0%{transform:scale(.88) translateY(12px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.modal-title{text-align:center;font-size:20px;font-weight:900;color:var(--accent3);text-shadow:0 2px 0 #000,0 0 10px rgba(255,230,109,.4)}.modal-title.bounce{animation:titleBounce .6s cubic-bezier(.34,1.56,.64,1)}@keyframes titleBounce{0%{transform:scale(.8)}50%{transform:scale(1.12)}to{transform:scale(1)}}.modal-desc{text-align:center;font-size:12px;color:var(--muted);margin-top:4px}.choices{display:flex;flex-direction:column;gap:10px;margin-top:14px}.choice-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;background:linear-gradient(135deg,#1e2a4a,#16213e);border:2px solid var(--border);border-radius:16px;padding:12px;cursor:pointer;width:100%;color:var(--text);transition:transform .15s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.choice-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.08) 50%,transparent 60%);transform:translate(-100%);transition:transform .6s}.choice-card:hover:before{transform:translate(100%)}.choice-card:active{transform:scale(.97)}.choice-card.buff{border-color:#1a5a3a}.choice-card.buff:hover{border-color:var(--buff);box-shadow:0 0 16px #4ade8033}.choice-card.debuff{border-color:#5a1a1a;background:linear-gradient(135deg,#2a1218,#1e1620)}.choice-card.debuff:hover{border-color:var(--debuff);box-shadow:0 0 16px #f8717133}.choice-card.rare{border-color:#facc15;background:linear-gradient(135deg,#2a2410,#1e2a4a);box-shadow:0 0 18px #facc1559,inset 0 1px #ffffff1a;animation:rareGlow 1.6s ease-in-out infinite alternate}.choice-card.rare:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:16px;background:linear-gradient(90deg,transparent,rgba(250,204,21,.5),transparent);animation:shimmerMove 1.4s linear infinite;pointer-events:none;opacity:.6;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:2px}@keyframes rareGlow{0%{box-shadow:0 0 12px #facc1540}to{box-shadow:0 0 24px #facc158c,0 0 36px #ffe66d33}}.choice-card.super-rare{border-color:#f472b6;background:linear-gradient(135deg,#2a1230,#1e1a4a);box-shadow:0 0 22px #f472b673,0 0 40px #a78bfa40}.choice-card.debuff.rare{border-color:#f87171;background:linear-gradient(135deg,#3a1515,#2a1020);box-shadow:0 0 18px #f8717166,inset 0 1px #ffffff0d}.choice-card.debuff.super-rare{border-color:#ef4444;background:linear-gradient(135deg,#4a1515,#2a0a1a);box-shadow:0 0 22px #ef444480,0 0 40px #f8717140}.rare-badge{position:absolute;top:6px;right:8px;font-size:10px;font-weight:900;padding:2px 8px;border-radius:999px;letter-spacing:.06em;animation:badgePop .5s cubic-bezier(.34,1.56,.64,1)}.rare-badge.rare{background:linear-gradient(135deg,#facc15,#f59e0b);color:#000;box-shadow:0 2px 8px #f59e0b80}.rare-badge.super{background:linear-gradient(135deg,#f472b6,#a78bfa);color:#fff;box-shadow:0 2px 8px #f472b699}.choice-card.debuff .rare-badge.rare{background:linear-gradient(135deg,#f87171,#ef4444);color:#fff;box-shadow:0 2px 8px #ef444480}.choice-card.debuff .rare-badge.super{background:linear-gradient(135deg,#991b1b,#ef4444);color:#fff;box-shadow:0 2px 8px #ef444499}@keyframes badgePop{0%{transform:scale(0) rotate(-10deg)}to{transform:scale(1) rotate(0)}}.sparkle{position:absolute;width:6px;height:6px;background:#ffe66d;border-radius:50%;box-shadow:0 0 6px #ffe66d,0 0 10px #fff;animation:sparkleAnim 1.2s ease-in-out infinite;pointer-events:none}.sparkle:nth-child(1){top:12%;left:8%;animation-delay:0s}.sparkle:nth-child(2){top:18%;right:12%;animation-delay:.3s}.sparkle:nth-child(3){bottom:18%;left:14%;animation-delay:.6s}.sparkle:nth-child(4){bottom:12%;right:10%;animation-delay:.9s}@keyframes sparkleAnim{0%,to{transform:scale(.6);opacity:.5}50%{transform:scale(1.4);opacity:1}}.choice-slot{font-size:13px;font-weight:800;display:flex;align-items:center;gap:4px}.choice-stat{color:var(--muted);font-weight:400;margin-left:4px;font-size:11px}.choice-op{font-size:30px;font-weight:900;font-family:monospace;margin-top:2px;letter-spacing:-.03em;line-height:1;text-shadow:0 2px 0 rgba(0,0,0,.5)}.op-buff{color:var(--buff);text-shadow:0 0 10px rgba(74,222,128,.5),0 2px 0 #0a2a1a}.op-debuff{color:var(--debuff);text-shadow:0 0 10px rgba(248,113,113,.4),0 2px 0 #2a0a0a}.choice-preview{margin-top:6px;font-family:monospace;font-size:14px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.choice-preview .before{color:var(--muted);font-size:13px}.choice-preview .arrow{color:var(--accent3);font-size:16px;animation:arrowPulse 1s ease-in-out infinite alternate}@keyframes arrowPulse{0%{transform:translate(0)}to{transform:translate(4px)}}.choice-preview .after.up{color:var(--buff);font-weight:900;font-size:20px;text-shadow:0 0 8px rgba(74,222,128,.6)}.choice-preview .after.down{color:var(--debuff);font-weight:900;font-size:20px;text-shadow:0 0 8px rgba(248,113,113,.5)}.choice-preview .after.pop{animation:numPop .45s cubic-bezier(.34,1.56,.64,1)}.choice-preview .diff{font-weight:900;padding:2px 8px;border-radius:999px;font-size:13px}.choice-preview .diff.up{color:#fff;background:linear-gradient(135deg,#16a34a,#4ade80);box-shadow:0 0 10px #4ade8080;animation:diffPop .4s cubic-bezier(.34,1.56,.64,1)}.choice-preview .diff.down{color:#fff;background:linear-gradient(135deg,#dc2626,#f87171);box-shadow:0 0 10px #f8717166;animation:diffShake .4s ease}@keyframes diffPop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes diffShake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.choice-gauge-row{display:flex;gap:6px;margin-top:8px;align-items:center}.mini-gauge-wrap{flex:1;height:6px;background:#0a0a14;border-radius:999px;overflow:hidden;border:1px solid rgba(255,255,255,.06);position:relative}.mini-gauge{height:100%;border-radius:999px;transition:width .8s cubic-bezier(.34,1.56,.64,1)}.mini-gauge.before{background:#333;opacity:.7}.mini-gauge.after.buff{background:linear-gradient(90deg,#16a34a,#4ade80);box-shadow:0 0 6px #4ade8080}.mini-gauge.after.debuff{background:linear-gradient(90deg,#dc2626,#f87171)}.mini-gauge-label{font-size:9px;color:var(--muted);min-width:24px;text-align:center}.choice-formula{margin-top:6px;font-family:monospace;font-size:10px;color:var(--muted);background:#00000052;padding:4px 6px;border-radius:6px;border:1px solid rgba(255,255,255,.06)}.debuff-warn{margin-top:6px;font-size:11px;color:var(--debuff);font-weight:700;background:#f871711a;padding:4px 8px;border-radius:6px;border:1px solid rgba(248,113,113,.2)}.buff-hint{margin-top:6px;font-size:11px;color:var(--buff);background:#4ade8014;padding:4px 8px;border-radius:6px;border:1px solid rgba(74,222,128,.15)}.skip-row{display:flex;align-items:center;gap:8px;margin-top:12px;justify-content:center;flex-wrap:wrap}.skip-btn{max-width:220px;padding:12px 18px;font-size:14px;background:linear-gradient(180deg,#2a2a4a,#1a1a2e);border:1px solid var(--border);color:var(--text);box-shadow:0 4px #1a1a2e,0 4px 12px #0000004d;animation:none}.skip-btn:not(:disabled):hover{border-color:var(--accent3);transform:translateY(-1px);box-shadow:0 6px #1a1a2e,0 6px 16px #00000059}.skip-btn:disabled{opacity:.42;cursor:not-allowed;transform:none;box-shadow:0 2px #222}.skip-hint{font-size:10px;color:var(--muted)}.lap-info{margin-top:12px;font-size:10px;color:var(--muted);text-align:center;background:#00000040;padding:8px;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.modal-inner.gameover{text-align:center}.modal-inner.gameover h2{font-size:24px;animation:titleBounce .6s cubic-bezier(.34,1.56,.64,1)}.go-score{margin-top:12px;font-size:18px}.go-hiscore{font-size:12px;color:var(--muted);margin-top:4px}.go-msg{margin:12px 0;font-size:13px;color:var(--accent2)}.modal-inner.help{max-width:440px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.help-card{background:var(--card2);border:1px solid var(--border);border-radius:12px;padding:10px;text-align:center;position:relative;overflow:hidden}.help-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.help-card.vit:before{background:var(--c-vit)}.help-card.atk:before{background:var(--c-atk)}.help-card.agi:before{background:var(--c-agi)}.help-card.dex:before{background:var(--c-dex)}.help-icon{font-size:24px}.help-name{font-weight:900;font-size:12px;margin-top:4px}.help-desc{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.4}.help-formula{font-family:monospace;font-size:9px;color:var(--accent3);background:#0000004d;padding:3px 4px;border-radius:4px;margin-top:6px}.help-note{margin-top:12px;background:#ffe66d14;border:1px solid rgba(255,230,109,.2);border-radius:10px;padding:10px;font-size:11px;line-height:1.6;color:var(--muted)}.help-note b{color:var(--accent3)}#help-close{margin-top:14px}.victory-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:radial-gradient(circle at center,#ffe66d2e,#000000a6 70%);z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:victoryFadeIn .3s ease}.victory-overlay.hidden{display:none}.victory-text{font-size:54px;font-weight:900;color:var(--accent3);text-shadow:0 4px 0 #7a5a00,0 0 20px rgba(255,230,109,.9),0 0 40px rgba(255,107,107,.6);letter-spacing:.08em;animation:victoryPop .6s cubic-bezier(.34,1.56,.64,1),victoryGlow 1.2s ease-in-out infinite alternate .6s;transform-origin:center}@keyframes victoryFadeIn{0%{opacity:0}to{opacity:1}}@keyframes victoryPop{0%{transform:scale(0) rotate(-8deg);opacity:0}60%{transform:scale(1.15) rotate(3deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes victoryGlow{0%{text-shadow:0 4px 0 #7a5a00,0 0 20px rgba(255,230,109,.9)}to{text-shadow:0 4px 0 #7a5a00,0 0 30px rgba(255,230,109,1),0 0 50px rgba(255,107,107,.8)}}.confetti-container{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.confetti{position:absolute;width:10px;height:10px;top:-10px;border-radius:2px;animation:confettiFall linear forwards;will-change:transform}@keyframes confettiFall{0%{transform:translateY(0) rotate(0) translate(0);opacity:1}to{transform:translateY(110vh) rotate(720deg) translate(40px);opacity:0}}.flash-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#fff;opacity:0;pointer-events:none;z-index:29}.flash-overlay.flash{animation:flashAnim .25s ease}@keyframes flashAnim{0%{opacity:.85}to{opacity:0}}.stage-banner{display:flex;align-items:center;gap:6px;justify-content:center;padding:6px 12px;font-size:12px;font-weight:800;letter-spacing:.04em;background:linear-gradient(90deg,#ffe66d1f,#4ecdc41f);border-bottom:1px solid var(--border);color:var(--text)}.stage-banner-sep{color:var(--muted);font-weight:400}#stage-theme-emoji{font-size:16px}#stage-theme-label{color:var(--accent3)}.story-bar{text-align:center;font-size:11px;color:var(--muted);padding:6px 12px 8px;font-style:italic;line-height:1.4;background:#0000002e;border-bottom:1px solid rgba(255,255,255,.06);min-height:22px}#app[data-theme=meadow]{background:url(/bg-meadow.png) repeat;background-size:128px 128px;image-rendering:pixelated}#app[data-theme=forest]{background:url(/bg-forest.png) repeat;background-size:128px 128px;image-rendering:pixelated}#app[data-theme=mountain]{background:url(/bg-mountain.png) repeat;background-size:128px 128px;image-rendering:pixelated}#app[data-theme=volcano]{background:url(/bg-volcano.png) repeat;background-size:128px 128px;image-rendering:pixelated}#app[data-theme=sky]{background:url(/bg-sky.png) repeat;background-size:128px 128px;image-rendering:pixelated}#app[data-theme=demon]{background:url(/bg-demon.png) repeat;background-size:128px 128px;image-rendering:pixelated}#app[data-theme]{position:relative}#app[data-theme]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0f0e178c,#1a1a2eb8);pointer-events:none;z-index:0}#app[data-theme]>*{position:relative;z-index:1}.hero-img{width:64px;height:64px;image-rendering:pixelated;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5));transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.enemy-img{width:56px;height:56px;image-rendering:pixelated;object-fit:contain}.slot-icon-img{width:20px;height:20px;image-rendering:pixelated;object-fit:contain;vertical-align:middle}.slot-icon-img.small{width:16px;height:16px}.slot-icon-img.tiny{width:14px;height:14px}.theme-icon{width:22px;height:22px;image-rendering:pixelated;object-fit:cover;border-radius:4px;vertical-align:middle;border:1px solid var(--border)}.g-icon-img{width:20px;height:20px;image-rendering:pixelated;object-fit:contain;grid-row:1 / 3}.hero-layer .slot-icon-img.tiny{width:14px;height:14px}.growth-panel{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid var(--border);border-radius:16px;padding:10px 12px;box-shadow:0 4px 20px #0000004d,inset 0 1px #ffffff0f;position:relative;overflow:hidden}.growth-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#facc15,#a78bfa,#22d3ee,#4ade80);opacity:.8}.growth-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.growth-title{font-weight:900;font-size:13px;color:var(--accent3)}.growth-points{background:linear-gradient(135deg,#facc15,#f59e0b);color:#000;padding:2px 10px;border-radius:999px;font-size:13px;font-weight:900;box-shadow:0 0 10px #facc1566}.growth-points b{font-size:15px}.growth-total{margin-left:auto;font-size:10px;color:var(--muted);background:#00000040;padding:2px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.06)}.growth-desc{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.4}.growth-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.growth-slot-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:12px;padding:8px 6px;background:var(--card2);color:var(--text);cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:2px 6px;align-items:center;text-align:left;transition:transform .12s,border-color .2s,box-shadow .2s,opacity .2s;position:relative;overflow:hidden}.growth-slot-btn:active{transform:scale(.97)}.growth-slot-btn.affordable{border-color:#facc15;box-shadow:0 0 10px #facc152e}.growth-slot-btn.affordable:hover{border-color:var(--accent3);box-shadow:0 0 14px #ffe66d4d}.growth-slot-btn.poor{opacity:.55}.growth-slot-btn:disabled{cursor:not-allowed}.g-icon{font-size:18px;grid-row:1 / 3}.g-label{font-weight:800;font-size:12px}.g-base{font-size:10px;color:var(--muted)}.g-base .g-arrow{color:var(--buff);margin-left:3px;font-weight:700}.g-computed{font-size:10px;color:var(--accent3);text-align:right}.g-cost{font-size:10px;font-weight:800;color:var(--accent3);text-align:right}.g-up{grid-column:1 / 4;text-align:center;font-size:9px;color:var(--muted);margin-top:1px}.growth-slot-btn.affordable .g-up{color:var(--buff);font-weight:800}.base-tag{color:var(--accent3);font-size:9px;background:#ffe66d1f;padding:1px 4px;border-radius:999px}.growth-toast{position:absolute;top:8px;right:10px;background:linear-gradient(135deg,#facc15,#f59e0b);color:#000;font-weight:900;font-size:12px;padding:6px 12px;border-radius:999px;box-shadow:0 4px 16px #0000004d;transition:transform .3s,opacity .3s;z-index:2}.growth-toast.hidden{opacity:0;transform:translateY(-10px) scale(.9);pointer-events:none}.growth-toast.show{opacity:1;transform:translateY(0) scale(1);animation:toastPop 2.2s ease forwards}@keyframes toastPop{0%{transform:translateY(-6px) scale(.8);opacity:0}15%{transform:translateY(0) scale(1.1);opacity:1}80%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-8px) scale(.95);opacity:0}}.choice-status-panel{margin-top:12px;background:#00000047;border:1px solid var(--border);border-radius:12px;padding:8px}.choice-status-title{font-size:11px;font-weight:900;color:var(--accent3);text-align:center;letter-spacing:.04em}.choice-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}.choice-status-cell{background:var(--card2);border:1px solid var(--border);border-radius:10px;padding:6px;transition:border-color .2s,box-shadow .2s,transform .2s}.choice-status-cell.highlight{border-color:var(--accent3);box-shadow:0 0 12px #ffe66d59;transform:scale(1.03)}.cs-head{font-size:10px;font-weight:800;display:flex;gap:3px;align-items:center}.cs-stat{color:var(--muted);font-weight:400;font-size:9px;margin-left:auto}.cs-value{font-size:16px;font-weight:900;margin-top:2px}.cs-value.dex{color:var(--c-dex)}.cs-value.vit{color:var(--c-vit)}.cs-value.agi{color:var(--c-agi)}.cs-value.atk{color:var(--c-atk)}.cs-formula{font-family:monospace;font-size:9px;color:var(--muted);margin-top:2px;word-break:break-all;background:#00000040;padding:2px 4px;border-radius:4px}.cs-base{font-size:9px;color:var(--accent3);margin-top:2px}.choice-status-note{font-size:9px;color:var(--muted);text-align:center;margin-top:6px}.choice-growth-panel{margin-top:12px;background:#facc1512;border:1px solid rgba(250,204,21,.2);border-radius:12px;padding:8px}.cg-header{font-size:11px;font-weight:800;color:var(--accent3);text-align:center}.cg-header b{color:#facc15}.cg-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}.cg-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:999px;padding:6px 8px;font-size:11px;font-weight:700;background:var(--card2);color:var(--text);cursor:pointer;transition:all .15s}.cg-btn.affordable{border-color:#facc15;background:linear-gradient(135deg,#2a2410,#1e2a4a);box-shadow:0 0 8px #facc1533}.cg-btn.affordable:active{transform:scale(.96)}.cg-btn.poor{opacity:.45;cursor:not-allowed}.cg-cost{color:var(--accent3);font-size:9px;margin-left:4px}#app.shake-screen{animation:screenShake .35s ease}@keyframes screenShake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.growth-open-btn{margin-left:auto;background:linear-gradient(135deg,#2a2410,#3a2a00);border:1px solid #5a4500;color:#facc15;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:900;cursor:pointer;box-shadow:0 0 8px #facc1540;transition:transform .12s,opacity .2s}.growth-open-btn:active{transform:scale(.96)}.growth-open-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.compact-stats{display:none;flex-direction:column;gap:6px;margin-top:10px;background:#00000038;border:1px solid var(--border);border-radius:12px;padding:8px}.compact-row{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.compact-chip{background:var(--card2);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800}.compact-chip.dex{color:var(--c-dex);border-color:#a78bfa66}.compact-chip.vit{color:var(--c-vit);border-color:#4ade8066}.compact-chip.agi{color:var(--c-agi);border-color:#22d3ee66}.compact-chip.atk{color:var(--c-atk);border-color:#fb718566}.compact-bases{text-align:center;font-size:10px;color:var(--muted)}.result-summary{margin-top:10px;display:flex;flex-direction:column;gap:8px}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.result-stat{background:var(--card2);border:1px solid var(--border);border-radius:10px;padding:8px;text-align:center}.result-stat span{display:block;font-size:10px;color:var(--muted)}.result-stat b{font-size:18px}.result-stat b.accent{color:#facc15}.result-breakdown{background:#00000047;border:1px solid var(--border);border-radius:8px;padding:6px 8px;font-size:10px;color:var(--muted);font-family:monospace;word-break:break-all;text-align:center}.result-bases{display:grid;grid-template-columns:1fr 1fr;gap:6px}.result-base{background:var(--card2);border:1px solid var(--border);border-radius:8px;padding:6px;font-size:11px;display:flex;flex-direction:column;gap:2px;text-align:center}.result-base b{color:var(--accent3)}.result-base .r-comp{font-weight:800;font-size:13px;color:var(--text)}.result-actions{display:flex;flex-direction:column;gap:8px;margin-top:14px}.growth-modal-summary{text-align:center;margin-top:8px;background:#00000038;border:1px solid var(--border);border-radius:10px;padding:8px}.gm-points{font-size:14px;font-weight:900}.gm-points b{color:#facc15;font-size:18px}.gm-total{font-size:11px;color:var(--muted);margin-left:6px}.gm-bases{font-size:11px;color:var(--muted);margin-top:4px}.growth-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.growth-inner{position:relative}#app[data-phase=battle] #growth-panel,#app[data-phase=battle] .slots{display:none}#app[data-phase=battle] .compact-stats{display:flex}#app[data-phase=battle] .log{height:60px}#app[data-phase=battling] #growth-panel,#app[data-phase=battling] .slots,#app[data-phase=battling] .compact-stats{display:none}#app[data-phase=battling] #forecast{display:none!important}#app[data-phase=battling] #stage-banner{opacity:.5}#app[data-phase=battling] #story-bar{opacity:.5;font-size:10px}#app[data-phase=battling] .log{height:180px}#app[data-phase=battling] .action-area{opacity:.7}#app[data-phase=choose] #growth-panel{display:none}#app[data-phase=choose] #forecast{display:none!important}#app[data-phase=choose] .log-area,#app[data-phase=choose] .action-area,#app[data-phase=gameover] #growth-panel{display:none}#app[data-phase=gameover] #forecast{display:none!important}#app[data-phase=growth] #growth-panel{display:none}#app[data-phase=growth] #forecast{display:none!important}#app[data-phase=growth] .log-area,#app[data-phase=growth] .action-area,#app[data-phase=growth] .slots,#app[data-phase=growth] .compact-stats,#app[data-phase=ending] #growth-panel{display:none}#app[data-phase=ending] #forecast{display:none!important}#app[data-phase=ending] .log-area,#app[data-phase=ending] .action-area,#app[data-phase=ending] .slots,#app[data-phase=ending] .compact-stats{display:none}#growth-modal .growth-toast{position:absolute;top:12px;right:12px;left:12px;text-align:center}.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:16px}.tutorial-overlay.hidden{display:none}.tutorial-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000009e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.tutorial-spotlight{position:fixed;border:2px solid #ffe66d;border-radius:14px;box-shadow:0 0 0 9999px #0000009e,0 0 18px #ffe66db3;pointer-events:none;z-index:1;transition:all .35s cubic-bezier(.34,1.56,.64,1)}.tutorial-bubble{position:fixed;z-index:2;background:linear-gradient(180deg,#1a1a2e,#16213e);border:1px solid var(--border);border-radius:18px;padding:14px 14px 12px;width:min(420px,calc(100vw - 24px));max-height:min(70vh,560px);overflow-y:auto;box-shadow:0 20px 50px #000000b3,0 0 0 1px #ffffff0f;animation:modalScaleIn .35s cubic-bezier(.34,1.56,.64,1);left:50%;top:50%;transform:translate(-50%,-50%)}.tutorial-bubble-header{display:flex;align-items:center;gap:8px}.tutorial-title{font-size:16px;font-weight:900;color:var(--accent3);text-shadow:0 1px 0 #000}.tutorial-skip{margin-left:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff14;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;cursor:pointer}.tutorial-body{margin-top:8px;font-size:12px;line-height:1.7;color:var(--text);white-space:pre-wrap;background:#00000038;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:10px}.tutorial-progress{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.tutorial-dots{display:flex;gap:6px}.tutorial-dot{width:8px;height:8px;border-radius:50%;background:var(--border);transition:all .2s}.tutorial-dot.active{background:var(--accent3);width:22px;border-radius:999px;box-shadow:0 0 8px #ffe66d80}.tutorial-dot.done{background:#4ade80;opacity:.7}.tutorial-idx{font-size:10px;color:var(--muted);font-weight:700}.tutorial-actions{display:flex;gap:8px;margin-top:10px}.tutorial-actions .btn.small{padding:10px 14px;font-size:13px;flex:1}.btn.secondary{background:linear-gradient(180deg,#2a2a4a,#1e1e3a);color:var(--text);border:1px solid var(--border);box-shadow:0 4px #1a1a2e,0 4px 12px #0000004d}.btn.secondary.large{padding:14px 18px;font-size:15px}#app[data-tutorial=active]{pointer-events:none}#app[data-tutorial=active] .tutorial-overlay{pointer-events:auto}.ending-inner{text-align:center;position:relative;overflow:hidden;border:1px solid rgba(255,230,109,.35);background:linear-gradient(180deg,#1a1a2e,#16213e,#1a0a2a);max-height:92vh}.ending-badge{display:inline-block;margin-top:8px;padding:4px 14px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.08em}.ending-badge.normal{background:linear-gradient(135deg,#facc15,#f59e0b);color:#000;box-shadow:0 0 14px #facc1580}.ending-badge.true{background:linear-gradient(135deg,#f472b6,#a78bfa,#22d3ee);color:#fff;box-shadow:0 0 18px #f472b699;animation:rareGlow 1.6s ease-in-out infinite alternate}.ending-title{margin-top:10px;font-size:22px;font-weight:900;color:var(--accent3);text-shadow:0 2px 0 #000,0 0 16px rgba(255,230,109,.5)}.ending-story{margin-top:12px;background:#00000047;border:1px solid var(--border);border-radius:12px;padding:10px 12px;font-size:12px;line-height:1.7;color:var(--text);text-align:left}.ending-story p{margin:4px 0}.ending-epilogue{margin-top:10px;text-align:center;font-weight:800;color:#facc15;background:#facc151f;border:1px solid rgba(250,204,21,.25);border-radius:8px;padding:6px 8px}.ending-stats{margin-top:12px}.ending-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.ending-stat{background:var(--card2);border:1px solid var(--border);border-radius:10px;padding:7px 4px;text-align:center}.ending-stat span{display:block;font-size:9px;color:var(--muted)}.ending-stat b{font-size:15px}.ending-stat b.accent{color:#facc15}.ending-bases{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.ending-base{background:var(--card2);border:1px solid var(--border);border-radius:8px;padding:6px;font-size:11px;display:flex;flex-direction:column;gap:2px;text-align:center}.ending-base b{color:var(--accent3)}.ending-base .r-comp{font-weight:800;font-size:13px;color:var(--text)}.ending-extra{margin-top:8px;font-size:10px;color:var(--muted);background:#00000038;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:6px 8px}.ending-actions{display:flex;flex-direction:column;gap:10px;margin-top:14px}.ending-actions .btn{max-width:100%}.boss-badge{background:linear-gradient(135deg,#991b1b,#ef4444);color:#fff;font-size:10px;padding:2px 7px;border-radius:999px;font-weight:900;letter-spacing:.04em;box-shadow:0 0 8px #ef444480}.ad-btn{position:relative}.ad-btn:disabled{opacity:.45}.reroll-row,.revive-row{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:12px;flex-wrap:wrap}.reroll-row .ad-btn.small{max-width:220px;padding:10px 16px;font-size:13px}.revive-row .ad-btn{max-width:320px}.ads-removed-badge{background:#4ade801f;border:1px solid rgba(74,222,128,.25);color:var(--buff);padding:6px 12px;border-radius:999px;font-size:12px;font-weight:800}.ads-removed-badge.hidden{display:none}.iap-section{margin-top:14px;background:linear-gradient(135deg,#facc1514,#a78bfa14);border:1px solid rgba(250,204,21,.22);border-radius:12px;padding:12px;text-align:center}.iap-title{font-weight:900;font-size:14px;color:var(--accent3)}.iap-price{background:var(--accent3);color:#000;padding:1px 8px;border-radius:999px;font-size:12px;margin-left:6px}.iap-desc{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.4}.iap-owned{margin-top:8px;background:#4ade801f;border:1px solid rgba(74,222,128,.25);color:var(--buff);padding:8px 12px;border-radius:10px;font-weight:800;font-size:13px}.iap-owned.hidden{display:none}.ad-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;z-index:70;padding:24px}.ad-overlay.hidden{display:none}.ad-overlay-inner{text-align:center}.ad-overlay-text{font-size:22px;font-weight:900;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.8)}.ad-overlay-sub{font-size:13px;color:var(--muted);margin-top:6px}.ad-overlay-spinner{margin:18px auto 0;width:36px;height:36px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--accent3);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 380px){.slots,.help-grid{grid-template-columns:1fr}.victory-text{font-size:42px}.ending-grid{grid-template-columns:1fr 1fr}}.share-row{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;justify-content:center}.share-btn{flex:1 1 0;min-width:92px;padding:11px 10px;font-size:13px;font-weight:900;border-radius:12px;cursor:pointer;transition:transform .12s,filter .2s}.share-btn:active{transform:scale(.97)}.share-btn.x{background:#000;color:#fff;border:1px solid #333;box-shadow:0 4px #222,0 4px 14px #0006}.share-btn.x:hover{filter:brightness(1.15)}.share-btn.copy{background:linear-gradient(180deg,#2a2a4a,#1e1e3a);color:var(--text);border:1px solid var(--border)}.share-btn.img{background:linear-gradient(135deg,#4ade80,#22d3ee);color:#0f0e17;border:1px solid rgba(255,255,255,.18);box-shadow:0 4px #1a5a3a,0 4px 14px #4ade8059}@media (max-width: 360px){.share-row{flex-direction:column}.share-btn{width:100%}}
