:root{--ink:#140f2e;--ink-soft:#140f2eb8;--good:#4dff9f;--bad:#ff3b5c;--hot:#ffd23f;--cool:#7de3ff;--pink:#ff4d9f;--purple:#c46bff;--brand:#e3262e;--display:900 1rem/1 "Arial Black", "Arial Bold", Impact, "Segoe UI", system-ui, sans-serif;--body:700 1rem/1.4 "Segoe UI", system-ui, -apple-system, sans-serif;--edge:3px solid var(--ink);--shadow-hard:0 4px 0 #140f2e8c;--hud-scale:1;--glass:linear-gradient(180deg, #241e449e, #0d0b1ec2);--glass-dense:linear-gradient(180deg, #241e44e6, #0d0b1ef0);--glass-line:#ffffff1f;--glass-hi:inset 0 1px 0 #ffffff21;--glass-shadow:0 1px 2px #00000047, 0 14px 32px -12px #0009;--accent-line:linear-gradient(90deg, transparent, var(--brand) 18%, var(--hot) 50%, var(--pink) 82%, transparent);--ease-out:cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body{color:#fff;width:100%;height:100%;font:var(--body);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;touch-action:none;overscroll-behavior:none;background:#0b1026;overflow:hidden}#app{position:fixed;top:0;bottom:0;left:0;right:0}#scene{width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}body.playing #scene{cursor:none}#ui-root{pointer-events:none;font-size:calc(16px * var(--hud-scale));position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}#ui-root>*{pointer-events:none}.clickable{pointer-events:auto;cursor:pointer}.panel{background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(16px)saturate(1.35);box-shadow:var(--glass-hi), var(--glass-shadow);border-radius:16px}.title{font:var(--display);letter-spacing:.04em;text-transform:uppercase;text-align:center;color:#fff;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px #080516cc)drop-shadow(0 10px 24px #00000073);background-image:linear-gradient(#fff 18%,#ffeec6 56%,#ffc45a 100%);-webkit-background-clip:text;background-clip:text}#hud{opacity:0;transition:opacity .25s;position:absolute;top:0;bottom:0;left:0;right:0}#hud.on{opacity:1;transition:none}#hud.on #vitals{animation:hudInLeft .5s var(--ease-out) both}#hud.on #score-box{animation:hudInRight .5s var(--ease-out) both}@keyframes hudInLeft{0%{opacity:0;translate:-12px}}@keyframes hudInRight{0%{opacity:0;translate:12px}}#vitals{top:calc(1.1rem + env(safe-area-inset-top,0px));left:calc(1.1rem + env(safe-area-inset-left,0px));width:20rem;padding:.7rem .8rem .6rem;position:absolute}.bar{isolation:isolate;background:#05040e9e;border:1px solid #ffffff29;border-radius:999px;height:1.35rem;margin-bottom:.35rem;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #0009}.bar:after{content:"";z-index:1;border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff4d,#ffffff0f 48%,#0000000f 52%,#0000);position:absolute;top:0;bottom:0;left:0;right:0}.bar .fill{transform-origin:0;border-radius:999px;transition:transform .12s cubic-bezier(.2,.9,.25,1);position:absolute;top:0;bottom:0;left:0;right:0}.bar .ghost{transform-origin:0;background:#ffffff8c;border-radius:999px;transition:transform .55s ease-out .18s;position:absolute;top:0;bottom:0;left:0;right:0}.bar .label{z-index:2;font:var(--display);text-shadow:0 1px 1px #000000bf,0 0 6px #0006;letter-spacing:.07em;justify-content:center;align-items:center;font-size:.8rem;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}#hp-fill{background:linear-gradient(#a4ffc6 0%,#45e58b 42%,#17b25e 100%)}#hp-bar.low #hp-fill{background:linear-gradient(#ffb09c 0%,#ff4d62 45%,#c4152c 100%)}#hp-bar.low{border-color:#ff6e7dbf;box-shadow:inset 0 1px 3px #0009,0 0 12px #ff3b5c8c}#sh-bar{height:.8rem}#sh-fill{background:linear-gradient(#c6f6ff,#2aa5d8)}#focus-bar{height:.7rem;margin-bottom:0}#focus-fill{background:linear-gradient(#ffe89a,#ff9a3f)}#focus-bar.ready{box-shadow:0 0 12px #ffd23fcc}.stat-row{font:var(--display);flex-wrap:wrap;gap:.5rem;margin-top:.5rem;font-size:.78rem;display:flex}.stat-row .chip{min-width:5.2rem}.chip{background:#ffffff0b;border:1px solid #ffffff12;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:.25rem;padding:.3rem .2rem;transition:transform .12s,background .2s;display:flex;position:relative}.chip:before{content:"";border-radius:inherit;opacity:0;pointer-events:none;background:radial-gradient(closest-side,#ffd23f61,#ffd23f00);position:absolute;top:-1px;bottom:-1px;left:-1px;right:-1px}.chip.pulse{animation:.42s cubic-bezier(.2,1.5,.4,1) chipPop}.chip.pulse:before{animation:.6s ease-out chipGlow}@keyframes chipPop{0%{transform:scale(1)}35%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes chipGlow{25%{opacity:1}}.chip .v{color:var(--hot)}.chip.guns .v{color:var(--cool)}.chip.rate .v{color:var(--good)}#wave-box{top:calc(1.1rem + env(safe-area-inset-top,0px));text-align:center;width:26rem;max-width:46vw;padding:.55rem .8rem .6rem;position:absolute;left:50%;transform:translate(-50%)}#wave-box:before{content:"";background:var(--accent-line);opacity:.85;pointer-events:none;height:1px;position:absolute;top:-1px;left:24%;right:24%}#wave-name{font:var(--display);letter-spacing:.14em;text-shadow:0 1px #0006;font-size:1.05rem}#wave-sub{letter-spacing:.22em;color:#ffe0aac7;white-space:nowrap;margin-top:.15rem;font-size:.72rem}#wave-fill{background:linear-gradient(90deg, var(--hot), #ff7a45 60%, var(--pink))}#boss-box{text-align:center;opacity:0;width:40rem;max-width:72vw;padding:.5rem .8rem .6rem;transition:opacity .35s,transform .35s cubic-bezier(.2,1.4,.4,1);position:absolute;top:1.1rem;left:50%;transform:translate(-50%)scale(.9)}#boss-box.on{opacity:1;transform:translate(-50%)scale(1)}#wave-box{transition:opacity .3s,transform .3s}#wave-box.hidden{opacity:0;transform:translate(-50%)translateY(-1.5rem)}#boss-name{font:var(--display);letter-spacing:.18em;color:#ffb3c0;text-shadow:0 0 12px #ff3b5c73;font-size:1rem}#boss-bar{height:1.15rem;margin-top:.35rem}#boss-fill{background:linear-gradient(#ffa190,#ff3b5c 50%,#a3102a)}#boss-pips{justify-content:center;gap:.3rem;margin-top:.4rem;display:flex}#boss-pips i{background:#ffffff2e;border-radius:999px;width:1.6rem;height:.26rem}#boss-pips i.on{background:linear-gradient(90deg,#ffd23f,#ff9a3f);box-shadow:0 0 6px #ffbe3c99}#score-box{top:calc(1.1rem + env(safe-area-inset-top,0px));right:calc(1.1rem + env(safe-area-inset-right,0px));text-align:right;min-width:12rem;padding:.6rem .9rem;position:absolute}#score{font:var(--display);color:#fff;letter-spacing:.02em;font-variant-numeric:tabular-nums;text-shadow:0 1px #00000059,0 0 18px #ffc46438;font-size:1.7rem}#score.pop{animation:.3s cubic-bezier(.2,1.6,.4,1) scorePop}@keyframes scorePop{0%{transform:scale(1)}40%{transform:scale(1.16)}to{transform:scale(1)}}.score-sub{font:var(--display);opacity:.95;justify-content:flex-end;gap:.9rem;margin-top:.25rem;font-size:.78rem;display:flex}.score-pause{display:none}body.touch .score-pause{-webkit-appearance:none;appearance:none;border-radius:inherit;color:#ffffffb8;touch-action:manipulation;background:0 0;border:0;margin:0;padding:0;transition:background-color .12s;display:block;position:absolute;top:0;bottom:0;left:0;right:0}body.touch .score-pause:before{content:"";box-sizing:border-box;border-left:.2rem solid;border-right:.2rem solid;width:.62rem;height:.72rem;position:absolute;top:.5rem;left:.55rem}body.touch .score-pause:active{background-color:#ffffff1a}.score-sub .coin{color:var(--hot)}.score-sub .fan-count{color:var(--good)}.score-sub .dist{color:var(--cool)}#overcharge{text-align:center;opacity:0;visibility:hidden;width:26rem;max-width:80vw;transition:opacity .16s,transform .16s,visibility 0s linear .16s;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)scale(.92)}#overcharge.on{opacity:1;visibility:visible;transition:opacity .16s,transform .16s,visibility;transform:translate(-50%,-50%)scale(1)}#oc-name{font:var(--display);letter-spacing:.1em;color:#ff3b5c;text-shadow:0 0 .5rem #ff3b5cd9, 0 .12rem 0 var(--ink);font-size:1.5rem;animation:.5s ease-in-out infinite alternate ocPulse}@keyframes ocPulse{0%{transform:scale(1)}to{transform:scale(1.06)}}#oc-bar{background:#080614bf;border:1px solid #ffffff29;border-radius:999px;height:1.1rem;margin:.35rem 0 .3rem;position:relative;overflow:hidden}#oc-fill{transform-origin:0;background:linear-gradient(#ffa190,#b0122c)}#oc-break{transform-origin:0;opacity:.95;background:linear-gradient(#fff,#7de3ff);height:42%;top:29%}#oc-hint{font:var(--display);letter-spacing:.12em;color:#fff;opacity:.9;text-shadow:0 .1rem 0 var(--ink);font-size:.78rem}.chip.aegis{color:#7de3ff}#combo{top:42%;right:calc(2.2rem + env(safe-area-inset-right,0px));text-align:right;opacity:0;transition:opacity .18s,transform .18s;position:absolute;transform:translate(1.5rem)}#combo.on{opacity:1;transform:translate(0)}#combo-n{font:var(--display);color:var(--hot);-webkit-text-stroke:4px var(--ink);paint-order:stroke fill;text-shadow:0 0 24px #ffd23f99;font-size:3.4rem;line-height:.9}#combo-n.hit{animation:.22s cubic-bezier(.2,1.6,.4,1) comboHit}@keyframes comboHit{0%{transform:scale(1)}40%{transform:scale(1.25)rotate(-3deg)}to{transform:scale(1)}}#combo-tier{font:var(--display);letter-spacing:.16em;color:#fff;text-shadow:0 1px 2px #000c;margin-top:-.1rem;font-size:1rem}#combo-ring{background:#ffffff2e;border-radius:999px;height:.26rem;margin-top:.3rem;overflow:hidden;box-shadow:0 1px 2px #00000080}#combo-ring i{background:linear-gradient(90deg, #ff9a3f, var(--hot));transform-origin:100%;height:100%;display:block}#crosshair{opacity:0;width:46px;height:46px;margin:-23px 0 0 -23px;transition:opacity .18s;position:absolute;top:50%;left:50%}#crosshair.on{opacity:1}#crosshair i{background:#fff;position:absolute;box-shadow:0 0 0 2px #140f2ee6}#crosshair i:first-child{width:2px;height:12px;margin-left:-1px;top:0;left:50%}#crosshair i:nth-child(2){width:2px;height:12px;margin-left:-1px;bottom:0;left:50%}#crosshair i:nth-child(3){width:12px;height:2px;margin-top:-1px;top:50%;left:0}#crosshair i:nth-child(4){width:12px;height:2px;margin-top:-1px;top:50%;right:0}#crosshair.hit i{background:var(--bad)}#crosshair-dot{background:var(--hot);border-radius:50%;width:4px;height:4px;margin:-2px 0 0 -2px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #140f2ee6}#letterbox{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}#letterbox i{background:var(--ink,#140f2e);height:11vh;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;left:0;right:0}#letterbox i:first-child{top:0;transform:translateY(-100%)}#letterbox i:last-child{bottom:0;transform:translateY(100%)}#letterbox.on i{transform:translateY(0)}#boss-card{text-align:center;opacity:0;pointer-events:none;text-shadow:0 3px 0 var(--ink,#140f2e), 0 0 24px #0009;transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1);position:absolute;top:22%;left:50%;transform:translate(-50%,-8px)scale(.94)}#boss-card.on{opacity:1;transform:translate(-50%)scale(1)}#boss-card .role{font:var(--display);letter-spacing:.4em;color:var(--cool,#7de3ff);font-size:.9rem}#boss-card .name{font:var(--display);letter-spacing:.08em;color:var(--hot,#ff3b5c);-webkit-text-stroke:3px var(--ink,#140f2e);paint-order:stroke fill;margin:.1em 0;font-size:3.4rem}#boss-card .special{font:var(--display);letter-spacing:.3em;color:#ffd23f;font-size:1rem}#boss-card.fan .name{color:var(--good,#4dff9f)}#boss-card.fan .role{color:#ffd23f}#boss-card .line{font:var(--display);letter-spacing:.12em;color:#fff;opacity:.85;max-width:42rem;margin-top:.5em;font-size:.85rem}@media (max-width:700px){#boss-card .name{font-size:2rem}#boss-card .line{max-width:80vw;font-size:.7rem}}#banners{flex-direction:column;align-items:center;gap:.4rem;display:flex;position:absolute;top:23%;left:0;right:0}.banner{font:var(--display);-webkit-text-stroke:5px var(--ink);paint-order:stroke fill;text-align:center;white-space:nowrap;animation:.45s cubic-bezier(.15,1.5,.4,1) forwards bannerIn,.4s 1.05s forwards bannerOut}.banner.wave{color:#fff;font-size:3.6rem}.banner.wave small{letter-spacing:.3em;color:var(--cool);-webkit-text-stroke:3px var(--ink);margin-top:.3rem;font-size:1.1rem;display:block}.banner.combo{color:var(--hot);font-size:2.4rem}#combo.tierup #combo-n{animation:.5s cubic-bezier(.2,1.5,.4,1) tierUp}#combo.tierup #combo-tier{animation:.5s cubic-bezier(.2,1.5,.4,1) 60ms tierUp}@keyframes tierUp{0%{transform:scale(1)}30%{filter:brightness(1.7);transform:scale(1.5)}to{transform:scale(1)}}.banner.gate{font-size:2.4rem}.banner.gate.good{color:var(--good)}.banner.gate.bad{color:var(--bad)}.banner.boss{color:var(--bad);font-size:3rem;animation-duration:.5s,.4s}.banner.clear{color:var(--good);font-size:3.2rem}@keyframes bannerIn{0%{opacity:0;transform:scale(.3)translateY(30px)}60%{opacity:1;transform:scale(1.12)translateY(0)}to{opacity:1;transform:scale(1)}}@keyframes bannerOut{to{opacity:0;transform:scale(1.25)translateY(-24px)}}#toasts{flex-direction:column;align-items:center;gap:.3rem;display:flex;position:absolute;top:7.5rem;left:50%;transform:translate(-50%)}.toast.again{animation:.3s cubic-bezier(.2,1.6,.4,1) toastAgain}@keyframes toastAgain{40%{transform:scale(1.14)}}.toast{font:var(--display);letter-spacing:.12em;background:var(--ink-soft);border:1px solid #ffffff24;border-radius:999px;padding:.35rem .8rem;font-size:.95rem;animation:.3s cubic-bezier(.2,1.5,.4,1) forwards toastIn,.35s 1.3s forwards toastOut}@keyframes toastIn{0%{opacity:0;transform:translateY(14px)scale(.85)}}#speech{pointer-events:none;position:absolute;top:0;left:0}#speech .bubble{opacity:0;font:var(--display);letter-spacing:.06em;text-transform:uppercase;text-align:center;color:#fff;background:var(--glass-dense);border:1px solid var(--glass-line);width:max-content;max-width:min(34rem,100vw - 1.5rem);box-shadow:var(--glass-hi), var(--glass-shadow);border-radius:16px;padding:.5rem .85rem .55rem;font-size:1.05rem;transition:opacity .25s;position:absolute;top:0;left:0;transform:translate(-50%,-100%)}#speech .bubble:after{content:"";border-right:1px solid var(--glass-line);border-bottom:1px solid var(--glass-line);background:#0d0b1ef0;width:13px;height:13px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}#speech.on .bubble{opacity:1;animation:speechPop .32s var(--ease-out)}#shouts{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}#shouts .shout{will-change:transform, opacity;position:absolute;top:0;left:0}#shouts .shout span{font:900 calc(1.05rem * var(--hud-scale,1)) "Arial Black", Impact, system-ui, sans-serif;letter-spacing:.02em;white-space:nowrap;color:#c8262d;background:#fffdf6;border:3px solid #17150f;border-radius:18px;padding:.38rem .8rem .42rem;position:absolute;top:0;left:0;transform:translate(-50%,-100%);box-shadow:0 4px 14px #00000059}#shouts .shout span:after{content:"";background:#fffdf6;border-bottom:3px solid #17150f;border-right:3px solid #17150f;width:14px;height:14px;position:absolute;bottom:-11px;left:30%;transform:rotate(45deg)}#shouts .shout.on span{animation:.28s cubic-bezier(.2,1.6,.4,1) shoutPop}@keyframes shoutPop{0%{transform:translate(-50%,-80%)scale(.4)}}@keyframes speechPop{0%{opacity:0;transform:translate(-50%,-80%)scale(.6)}}@keyframes toastOut{to{opacity:0;transform:translateY(-10px)}}#build{flex-wrap:wrap;gap:.3rem;max-width:26rem;display:flex;position:absolute;bottom:1.1rem;left:1.1rem}.build-chip{background:var(--ink-soft);font:var(--display);border:1px solid #ffffff24;border-radius:8px;align-items:center;gap:.25rem;padding:.22rem .45rem;font-size:.72rem;display:flex}.build-chip .n{opacity:.85}#hint{font:var(--display);letter-spacing:.16em;opacity:.55;text-align:center;font-size:.74rem;transition:opacity .3s;position:absolute;bottom:1.2rem;left:50%;transform:translate(-50%)}#hurt-vignette{opacity:0;transition:opacity .35s;position:absolute;top:0;bottom:0;left:0;right:0;box-shadow:inset 0 0 14rem #ff3b5ce6}@property --scrim{syntax:"<number>";inherits:false;initial-value:0}.screen{--scrim:0;background:radial-gradient(ellipse at 50% 45%, rgba(20, 15, 46, calc(.38 * var(--scrim))), rgba(8, 6, 20, calc(.85 * var(--scrim))));pointer-events:none;visibility:hidden;flex-direction:column;justify-content:center;align-items:center;gap:1.2rem;padding:2rem;transition:--scrim .3s,visibility 0s linear .3s;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.screen.on{--scrim:1;pointer-events:auto;visibility:visible;transition:--scrim .35s,visibility}.screen:not(.on) .clickable{pointer-events:none}#pause,#revive,#scores,#gameover{background:radial-gradient(ellipse at 50% 45%, rgba(20, 15, 46, calc(.78 * var(--scrim))), rgba(8, 6, 20, calc(.94 * var(--scrim))))}#menu{background:radial-gradient(ellipse at 50% 45%, rgba(20, 15, 46, calc(.3 * var(--scrim))), rgba(8, 6, 20, calc(.6 * var(--scrim))))}#menu,#pause,#revive,#scores,#gameover{justify-content:flex-start}:-webkit-any(#menu,#pause,#revive,#scores,#gameover)>:first-child{margin-top:auto}:is(#menu,#pause,#revive,#scores,#gameover)>:first-child{margin-top:auto}:-webkit-any(#menu,#pause,#revive,#scores,#gameover)>:last-child{margin-bottom:auto}:is(#menu,#pause,#revive,#scores,#gameover)>:last-child{margin-bottom:auto}body.touch #gameover>.go-actions{margin-bottom:auto}#pause,#revive,#scores{overscroll-behavior:contain;touch-action:pan-y;overflow-y:auto}.tour-poster{text-align:center;-webkit-backdrop-filter:blur(16px)saturate(1.35);background:radial-gradient(90% 55% at 50% -8%,#ffba5c38,#0000 62%),radial-gradient(55% 45% at 0 104%,#e3262e33,#0000 70%),radial-gradient(55% 45% at 100% 104%,#ff4d9f24,#0000 70%),linear-gradient(#201a3c94,#0c0a1cc7);border:1px solid #ffffff24;border-radius:26px;flex-direction:column;align-items:center;width:min(100%,46rem);padding:clamp(1.1rem,4vw,2.3rem) clamp(1rem,3.5vw,2.1rem) clamp(1.1rem,4vw,1.8rem);display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff29,0 2px 6px #00000040,0 28px 64px -20px #000000bf,0 0 90px -30px #ff963c59}.tour-poster:before,.tour-poster:after{content:"";z-index:1;pointer-events:none;position:absolute}.tour-poster:before{background:conic-gradient(at 50% -12%,#0000 0deg 150deg,#ffd69613 160deg,#0000 170deg 190deg,#ffd69613 200deg,#0000 210deg);top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000 10%,#0000 72%);mask-image:linear-gradient(#000 10%,#0000 72%)}.tour-poster:after{background:var(--accent-line);border-radius:2px;height:2px;top:0;left:10%;right:10%;box-shadow:0 0 18px 1px #ff963c80}.tour-poster>*{z-index:2;position:relative}.poster-stripe{display:none}.poster-kicker,.poster-subtitle{font:var(--display);letter-spacing:max(.18em,.04vw);text-transform:uppercase}.poster-kicker{letter-spacing:.34em;color:#ffe8c4cc;align-items:center;gap:.9em;font-size:clamp(.62rem,2vw,.74rem);display:flex}.poster-kicker:before,.poster-kicker:after{content:"";background:linear-gradient(90deg,#0000,#ffc46ebf);width:2.4em;height:1px}.poster-kicker:after{background:linear-gradient(270deg,#0000,#ffc46ebf)}.poster-subtitle{color:var(--cool);text-shadow:2px 2px 0 var(--ink), -1px -1px 0 var(--ink);margin-top:.65rem;font-size:clamp(.76rem,2.6vw,1rem)}.poster-line{max-width:33rem;color:var(--hot);font:var(--display);letter-spacing:.1em;text-transform:uppercase;background:#140f2eb8;border:1px solid #ffd23f80;margin:.55rem auto 0;padding:.35rem .7rem;font-size:clamp(.64rem,2.2vw,.78rem);line-height:1.35}.poster-meta{color:#fff;opacity:.86;font:var(--body);letter-spacing:.05em;margin-top:.45rem;font-size:clamp(.66rem,2vw,.74rem);font-weight:800}.sound-select{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;width:min(100%,32rem);margin-top:1.15rem;display:grid}.sound-option{color:#ece8f8c7;min-height:2.9rem;font:var(--display);letter-spacing:.1em;transition:border-color .2s, background-color .2s, color .2s, box-shadow .2s, transform .18s var(--ease-out);background:linear-gradient(#ffffff14,#ffffff05);border:1px solid #ffffff21;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;font-size:.88rem;display:flex;position:relative;box-shadow:inset 0 1px #ffffff14}.sound-option[aria-pressed=true]{border-color:var(--band);color:#fff;background:linear-gradient(#ffffff29,#ffffff0a);background:linear-gradient(180deg, color-mix(in srgb, var(--band) 30%, transparent), color-mix(in srgb, var(--band) 7%, transparent));box-shadow:inset 0 1px 0 #ffffff38, inset 0 -2px 0 var(--band), 0 10px 24px -10px var(--band)}.sound-option[aria-pressed=true] .sound-icon{color:var(--band);text-shadow:0 0 12px var(--band)}@media (hover:hover){.sound-option:hover{border-color:var(--band);color:#fff;transform:translateY(-1px)}}.sound-option:active{transform:translateY(1px)scale(.98)}.sound-icon{font-size:1.3rem}.sound-description{color:#ece6f8d1;width:min(100%,32rem);min-height:2.8rem;margin-top:.65rem;font-size:.8rem;line-height:1.5}.poster-ticket{z-index:2;writing-mode:vertical-rl;color:#ffe8c84d;font:var(--display);letter-spacing:.3em;white-space:nowrap;border-right:1px dashed #ffffff29;justify-content:center;align-items:center;gap:1.2rem;padding-right:.5rem;font-size:.5rem;display:flex;position:absolute;top:1.6rem;bottom:1.6rem;right:.7rem;transform:rotate(180deg)}.poster-stamp{z-index:2;aspect-ratio:1;color:#ffd13ff5;width:clamp(4.4rem,17vw,5.6rem);font:var(--display);letter-spacing:.06em;mix-blend-mode:screen;background:radial-gradient(circle,#ff4d9f33,#ff4d9f08);border:3px solid #ff4d9ff0;border-radius:50%;place-items:center;font-size:clamp(.72rem,2.6vw,.95rem);line-height:1;display:grid;position:absolute;top:clamp(.7rem,5vw,1.5rem);right:clamp(.7rem,5vw,1.5rem);transform:rotate(12deg);box-shadow:0 0 0 2px #140f2e80,inset 0 0 12px #ff4d9f40}.poster-actions{flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:clamp(.8rem,3vw,1.1rem);display:flex}.logo{font:var(--display);letter-spacing:.01em;text-align:center;color:#ffd35a;-webkit-text-fill-color:transparent;filter:drop-shadow(0 .045em #7a1d14)drop-shadow(0 .1em .08em #00000073)drop-shadow(0 0 .45em #ff8c3c4d);background-image:linear-gradient(#fffaf0 16%,#ffe7a6 38%,#ffc54d 58%,#ff8a2b 82%,#ff5a3c 100%);background-size:100% 1lh;-webkit-background-clip:text;background-clip:text;max-width:min(100%,12.6em);margin:.6rem auto 0;padding:0 .08em;font-size:clamp(1.45rem,7vw,3.5rem);line-height:1;transform:rotate(-2deg)skew(-5deg)}.tagline{font:var(--display);letter-spacing:.24em;color:var(--cool);text-align:center;text-shadow:0 1px 8px #0006;font-size:1rem}.btn{isolation:isolate;font:var(--display);letter-spacing:.12em;color:#26110a;text-shadow:0 1px #fff6;transition:transform .18s var(--ease-out), box-shadow .18s var(--ease-out), filter .18s, background-color .18s, border-color .18s, color .18s;background:linear-gradient(#ffeaa0 0%,#ffcf4a 46%,#ffa431 100%);border:1px solid #82380099;border-radius:14px;padding:.85rem 2.3rem;font-size:1.25rem;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffbf,inset 0 -2px #aa46004d,0 3px #a14d12,0 10px 24px -8px #ff96288c,0 2px 6px #0000004d}.btn:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(105deg,#0000 20%,#ffffff8c 50%,#0000 80%);width:45%;position:absolute;top:0;bottom:0;left:0;translate:-120%}.screen.on .btn:not(.ghost):after{animation:5.5s ease-in-out 1.4s infinite sheen}@keyframes sheen{0%{translate:-120%}16%,to{translate:260%}}@media (hover:hover){.btn:hover{filter:brightness(1.06)saturate(1.05);transform:translateY(-2px);box-shadow:inset 0 1px #fffc,inset 0 -2px #aa46004d,0 5px #a14d12,0 16px 32px -10px #ff9628b3,0 3px 8px #0000004d}}.btn:active{filter:brightness(.97);transition-duration:60ms;transform:translateY(2px)scale(.97);box-shadow:inset 0 1px #fff9,inset 0 -1px #aa46004d,0 1px #a14d12,0 4px 12px -6px #ff962880}.btn.ghost{color:#f4f1ff;text-shadow:0 1px 2px #00000073;background:linear-gradient(#ffffff21,#ffffff0a);border-color:#ffffff2e;padding:.6rem 1.6rem;font-size:1rem;box-shadow:inset 0 1px #ffffff24,0 1px #00000059,0 8px 18px -10px #0009}.btn.ghost:after{content:none}@media (hover:hover){.btn.ghost:hover{background:linear-gradient(#ffffff2e,#ffffff0f);border-color:#ffd69680;box-shadow:inset 0 1px #fff3,0 0 0 1px #ffc8781f,0 12px 26px -12px #ffa03c73}}.btn.ghost:active{background:linear-gradient(#ffffff14,#ffffff08);box-shadow:inset 0 1px 2px #00000059}.btn:disabled{cursor:default;filter:saturate(.55)brightness(.85);transform:none}.keys{color:#ece8f8cc;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.55rem 1.6rem;width:100%;max-width:44rem;font-size:.8rem;display:grid}.keys div{justify-content:flex-start;align-items:center;gap:.4rem;display:flex}.keys span{font-weight:600;line-height:1.3}kbd{text-align:center;white-space:nowrap;color:#fff;min-width:2rem;font:var(--display);letter-spacing:.06em;background:linear-gradient(#ffffff29,#ffffff0f);border:1px solid #ffffff3d;border-bottom:2px solid #ffffff57;border-radius:7px;flex:none;padding:.2rem .5rem .16rem;font-size:.68rem;display:inline-block;box-shadow:inset 0 1px #ffffff29,0 2px 4px #0000004d}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.7rem;width:100%;max-width:40rem;display:grid}.stat-card{text-align:center;border:1px solid var(--glass-line);box-shadow:var(--glass-hi), 0 10px 24px -14px #000000b3;background:linear-gradient(#241e44bd,#0d0b1ed6);border-radius:14px;padding:.8rem .55rem .75rem}.stat-card .k{letter-spacing:.2em;color:#ece8ffa3;font-size:.62rem}.stat-card .v{font:var(--display);font-variant-numeric:tabular-nums;text-shadow:0 1px #0006;margin-top:.3rem;font-size:1.55rem}.stat-card.best{box-shadow:var(--glass-hi), 0 10px 24px -14px #000000b3, 0 0 26px -12px #ffbe3c8c;background:linear-gradient(#ffd23f29,#0d0b1ed6 72%);border-color:#ffd23f66}.stat-card.best .v{color:var(--hot);text-shadow:0 0 16px #ffbe3c66}body.touch .key-hint,body.touch #menu .keys{display:none}@media (max-width:620px){.screen{gap:.8rem;padding:.8rem}.tour-poster{border-radius:22px}.tour-poster:after{left:6%;right:6%}.poster-ticket{display:none}.poster-stamp{opacity:.9}.poster-actions{flex-direction:column;align-items:stretch;width:100%}.poster-actions .btn{width:100%;padding:.72rem 1rem;font-size:1rem}#menu .keys{display:none}}#draft .cards{flex-wrap:wrap;justify-content:center;gap:1.1rem;display:flex}.card{text-align:center;border:4px solid var(--ink);background:linear-gradient(#261e4ef5,#120e2cfa);border-radius:20px;flex-direction:column;align-items:center;gap:.55rem;width:15rem;min-height:16.5rem;padding:1.1rem 1rem;transition:transform .14s cubic-bezier(.2,1.4,.4,1),box-shadow .14s,filter .14s;animation:.4s cubic-bezier(.2,1.4,.4,1) backwards cardIn;display:flex;position:relative;overflow:hidden;box-shadow:0 8px #140f2e99}.card:before{content:"";background:radial-gradient(ellipse at 50% 100%, var(--glow), transparent 70%);pointer-events:none;height:60%;position:absolute;top:-40%;bottom:auto;left:-10%;right:-10%}.card:first-child{animation-delay:40ms}.card:nth-child(2){animation-delay:.12s}.card:nth-child(3){animation-delay:.2s}@keyframes cardIn{0%{opacity:0;transform:translateY(40px)scale(.85)rotate(-3deg)}}.card:hover{filter:brightness(1.1);transform:translateY(-10px)scale(1.04);box-shadow:0 16px #140f2e99}.card .rar{font:var(--display);letter-spacing:.22em;font-size:.68rem}.card .icon{filter:drop-shadow(0 4px #0006);font-family:Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,sans-serif;font-size:3.4rem;line-height:1}.build-chip span:first-child{font-family:Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,sans-serif}.card .name{font:var(--display);letter-spacing:.02em;font-size:1.05rem}.card .desc{opacity:.88;font-size:.84rem;line-height:1.35}.card .stacks{letter-spacing:.14em;opacity:.6;margin-top:auto;font-size:.7rem}.card .pickhint{font:var(--display);letter-spacing:.18em;border:2px solid;border-radius:999px;margin-top:.5rem;padding:.2rem .7rem;font-size:.7rem}.shop-grid{grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));gap:.6rem;width:100%;max-width:62rem;max-height:58vh;padding:.2rem;display:grid;overflow-y:auto}.shop-item{transition:transform .18s var(--ease-out), border-color .18s, box-shadow .18s, filter .18s;background:linear-gradient(#28214ecc,#120f28e0);border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:.8rem;padding:.6rem .8rem;display:flex;position:relative;box-shadow:inset 0 1px #ffffff14,0 10px 24px -14px #000000bf}.shop-item.poor{opacity:1;background:linear-gradient(#201b3cbd,#100d22d6)}.shop-item.maxed{opacity:.8;border-color:#4dff9f66}.shop-item.feature-ready{border-color:#7de3ff8c;box-shadow:inset 0 1px #ffffff1a,0 0 0 1px #7de3ff24,0 10px 26px -12px #7de3ff66}.si-icon{background:radial-gradient(circle at 50% 30%,#7de3ff29,#7de3ff08);border:1px solid #7de3ff33;border-radius:12px;flex:none;place-items:center;width:2.7rem;height:2.7rem;padding:.45rem;font-family:Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,sans-serif;font-size:1.9rem;display:grid}.si-main{flex:1;min-width:0}.si-name{font:var(--display);letter-spacing:.05em;font-size:.86rem}.si-lv{color:var(--cool);opacity:.8;font-size:.72rem}.si-kind{color:var(--hot);letter-spacing:.08em;vertical-align:.12rem;background:#ffd23f14;border:1px solid;border-radius:999px;margin-left:.35rem;padding:.12rem .4rem;font:700 .52rem/1.2 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:inline-block}.si-desc{color:#e3dff0;margin-top:.35rem;font-size:.8rem;line-height:1.45}.si-step{opacity:.55;font-size:.68rem}.si-cost{color:var(--cool)}.si-pips{flex-wrap:wrap;gap:.16rem;margin-top:.3rem;display:flex}.si-pips i{background:#ffffff2e;border-radius:999px;width:.8rem;height:.3rem}.si-pips i.on{background:var(--hot)}.si-cost{font:var(--display);color:var(--cool);text-align:right;flex:none;min-width:5rem;font-size:.92rem}.shop-item.maxed .si-cost{color:var(--good)}#pause .rows{border:1px solid var(--glass-line);background:var(--glass);width:min(100%,23rem);box-shadow:var(--glass-hi), var(--glass-shadow);-webkit-backdrop-filter:blur(16px)saturate(1.35);border-radius:18px;flex-direction:column;align-items:stretch;gap:.75rem;padding:1.05rem 1.3rem;display:flex}.slider-row{font:var(--display);letter-spacing:.14em;color:#f4f0ffe0;grid-template-columns:6.8rem minmax(0,1fr);align-items:center;gap:.9rem;font-size:.76rem;display:grid}.slider-row input{width:100%;accent-color:var(--hot)}.slider-row[hidden]{display:none}.slider-row .toggle{min-width:4.6rem;font:var(--display);letter-spacing:.16em;cursor:pointer;color:#26110a;background:linear-gradient(#ffeaa0,#ffcf4a 46%,#ffa431);border:1px solid #82380099;border-radius:999px;justify-self:start;padding:.4rem .9rem;font-size:.78rem}.slider-row .toggle[aria-pressed=false]{color:#ece8f8cc;border-color:var(--glass-line);background:linear-gradient(#ffffff14,#ffffff08)}#pause>.btn{width:min(100%,23rem)}#perf{opacity:.62;text-align:right;white-space:pre;text-shadow:0 1px #000c;font:700 .68rem/1.35 ui-monospace,Cascadia Mono,Consolas,monospace;display:none;position:absolute;bottom:.5rem;right:.6rem}#perf.on{display:block}#touch{display:none;position:absolute;top:0;bottom:0;left:0;right:0}body.touch #touch{display:block}.touch-pad{-webkit-appearance:none;appearance:none;color:#fff;text-align:center;width:4.6rem;height:4.6rem;font:var(--display);letter-spacing:.02em;text-shadow:0 1px 2px #0009;touch-action:none;background:radial-gradient(circle at 50% 28%,#ffffff2b,#140f2e99 68%);border:1.5px solid #ffffff73;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.54rem;transition:transform 80ms,background 80ms,border-color 80ms;display:flex;position:absolute;box-shadow:inset 0 1px #ffffff38,0 8px 18px -8px #000000bf}.touch-pad.down{color:var(--ink);text-shadow:none;background:radial-gradient(circle at 50% 30%,#ffecaacc,#ffaa3299 70%);border-color:#ffe096f2;transform:scale(.9)}.touch-pad:focus-visible{outline-offset:3px;outline:3px solid #fff}.touch-pad{flex-direction:column;gap:.14rem}.touch-pad:before{content:"";background-color:currentColor;flex-shrink:0;width:1.3rem;height:1.3rem;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}#touch-jump:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.8'%3E%3Cpath d='M5.5 11.5 12 5l6.5 6.5'/%3E%3Cpath d='M5.5 18.5 12 12l6.5 6.5' stroke-opacity='.5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.8'%3E%3Cpath d='M5.5 11.5 12 5l6.5 6.5'/%3E%3Cpath d='M5.5 18.5 12 12l6.5 6.5' stroke-opacity='.5'/%3E%3C/svg%3E")}#touch-dodge:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.6'%3E%3Cpath d='M3.5 17C6 10 13 8 19 11.5'/%3E%3Cpath d='M17 5.8l2 5.7-5.9 1'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.6'%3E%3Cpath d='M3.5 17C6 10 13 8 19 11.5'/%3E%3Cpath d='M17 5.8l2 5.7-5.9 1'/%3E%3C/svg%3E")}#touch-bomb:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.2'%3E%3Cpath d='M3 9.5v5h3.5l6.5 4v-13l-6.5 4z' fill='black'/%3E%3Cpath d='M16.5 9.2a4 4 0 0 1 0 5.6'/%3E%3Cpath d='M19.2 6.6a7.6 7.6 0 0 1 0 10.8'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.2'%3E%3Cpath d='M3 9.5v5h3.5l6.5 4v-13l-6.5 4z' fill='black'/%3E%3Cpath d='M16.5 9.2a4 4 0 0 1 0 5.6'/%3E%3Cpath d='M19.2 6.6a7.6 7.6 0 0 1 0 10.8'/%3E%3C/svg%3E")}#touch-aegis:before{width:1.6rem;height:1.6rem;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.4'%3E%3Cpath d='M12 3l7 3v5.2c0 4.6-3 8.1-7 9.8-4-1.7-7-5.2-7-9.8V6z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.4'%3E%3Cpath d='M12 3l7 3v5.2c0 4.6-3 8.1-7 9.8-4-1.7-7-5.2-7-9.8V6z'/%3E%3C/svg%3E")}#touch-jump{right:calc(6.4rem + env(safe-area-inset-right,0px));bottom:calc(2.4rem + env(safe-area-inset-bottom,0px))}#touch-dodge{right:calc(1.2rem + env(safe-area-inset-right,0px));bottom:calc(1.2rem + env(safe-area-inset-bottom,0px))}#touch-bomb{right:calc(1.2rem + env(safe-area-inset-right,0px));bottom:calc(6.4rem + env(safe-area-inset-bottom,0px));border-color:var(--hot);color:var(--hot);display:none}body.touch #touch-bomb.on{display:flex}#touch-aegis{left:calc(1.2rem + env(safe-area-inset-left,0px));bottom:calc(1.2rem + env(safe-area-inset-bottom,0px));color:#7de3ff;border-color:#7de3ff;width:5.6rem;height:5.6rem;display:none}body.touch #touch-aegis.on{display:flex}#wave-box{max-width:min(46vw, calc(100vw - 2 * var(--hud-side) - 2rem))}#boss-box{max-width:min(72vw, calc(100vw - 2 * var(--hud-side) - 2rem))}@media (max-width:900px){#ui-root{font-size:calc(13px * var(--hud-scale))}:root{--hud-side:15rem}#vitals{width:15rem}#combo{right:calc(1rem + env(safe-area-inset-right,0px))}.card{width:11rem;min-height:15rem;padding:.8rem .6rem}.card .icon{font-size:2.4rem}}@media (max-width:620px){#vitals{width:auto;max-width:58vw;top:calc(.6rem + env(safe-area-inset-top,0px));left:calc(.6rem + env(safe-area-inset-left,0px));padding:.45rem .55rem .4rem}#vitals .stat-row{flex-wrap:nowrap}#vitals .chip{padding:.12rem .3rem;font-size:.62rem}#score-box{min-width:0;top:calc(.6rem + env(safe-area-inset-top,0px));right:calc(.6rem + env(safe-area-inset-right,0px));padding:.4rem .6rem}#score{font-size:1.3rem}.score-sub{gap:.5rem;font-size:.68rem}#wave-box,#boss-box{top:calc(7.2rem + env(safe-area-inset-top,0px));width:auto;max-width:94vw}#boss-box{transform:translate(-50%)scale(.95)}#boss-box.on{transform:translate(-50%)scale(1)}#build{max-width:50vw;bottom:calc(.7rem + env(safe-area-inset-bottom,0px));left:calc(.7rem + env(safe-area-inset-left,0px))}#hint{bottom:calc(4.2rem + env(safe-area-inset-bottom,0px));letter-spacing:.08em;opacity:.8;max-width:60vw;font-size:.58rem}#combo{top:34%;right:calc(.8rem + env(safe-area-inset-right,0px))}}#fps{font:var(--display);letter-spacing:.08em;color:#fff;opacity:.75;pointer-events:none;white-space:nowrap;background:#0806148c;border-radius:999px;padding:.15rem .5rem;font-size:.68rem;position:absolute;top:.5rem;left:50%;transform:translate(-50%)}#fps.good{color:#4dff9f}#fps.warn{color:#ffd23f}#fps.bad{color:#ff3b5c}.board-tabs{background:#08061459;border:1px solid #ffffff14;border-radius:16px;gap:.35rem;padding:.3rem;display:flex}.board-tabs .btn.on{color:var(--hot);background:linear-gradient(#ffd23f33,#ffd23f0d);border-color:#ffd23f99;box-shadow:inset 0 1px #ffffff24,0 0 20px -8px #ffbe3c99}.board{flex-direction:column;gap:.2rem;width:min(28rem,88vw);max-height:46vh;padding:.6rem;display:flex;overflow-y:auto}.board-row{letter-spacing:.06em;border-radius:10px;grid-template-columns:2.2rem 1fr auto;align-items:baseline;gap:.6rem;padding:.4rem .55rem;font-size:.82rem;display:grid}.board-row:nth-child(odd){background:#ffffff0a}.board-row.top{background:linear-gradient(90deg,#ffd23f2e,#ffd23f0a);box-shadow:inset 0 0 0 1px #ffd23f33}.board-row.top .sc{color:var(--hot)}.board-row .rank{opacity:.5;text-align:right}.board-row .who{opacity:.78;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board-row .sc{font-variant-numeric:tabular-nums;font-weight:700}.board-empty{opacity:.5;text-align:center;letter-spacing:.14em;padding:1.6rem .5rem;font-size:.8rem}@property --k{syntax:"<number>";inherits:false;initial-value:1}.revive-ring{--k:1;width:5.4rem;height:5.4rem;font:var(--display);color:var(--hot);background:conic-gradient(var(--hot) calc(var(--k) * 360deg), #ffffff1a 0);border-radius:50%;place-items:center;font-size:1.9rem;transition:--k .95s linear;display:grid;position:relative;box-shadow:0 0 30px -6px #ffbe3c8c}.revive-ring:after{content:"";background:radial-gradient(circle at 50% 35%,#251d48,#0d0b20 75%);border-radius:50%;position:absolute;top:.38rem;bottom:.38rem;left:.38rem;right:.38rem;box-shadow:inset 0 1px #ffffff14}.revive-ring>span{z-index:1;text-shadow:0 0 14px #ffbe3c80;position:relative}#boot-status{z-index:100;text-align:center;color:#ffd98a;font:var(--display);letter-spacing:.3em;background:radial-gradient(55% 40% at 50% 44%,#ffaa4629,#0000 70%),radial-gradient(120% 70% at 50% 120%,#e3262e33,#0000 60%),#0b1026;place-items:center;padding:2rem;font-size:.82rem;line-height:1.6;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.boot-card{justify-items:center;gap:1.6rem;display:grid}.boot-logo{white-space:nowrap;max-width:none;font-size:clamp(1.3rem,6.8vw,3.2rem)}.boot-eq{align-items:flex-end;gap:.38rem;height:2.6rem;display:flex}.boot-eq i{background:linear-gradient(0deg, var(--brand), var(--hot) 70%, #fff3c4);transform-origin:50% 100%;border-radius:.25rem;width:.5rem;height:100%;animation:.9s ease-in-out infinite alternate bootEq;box-shadow:0 0 14px #ffaa3c59}.boot-eq i:nth-child(2){animation-duration:.7s;animation-delay:-.35s}.boot-eq i:nth-child(3){animation-duration:1.1s;animation-delay:-.6s}.boot-eq i:nth-child(4){animation-duration:.8s;animation-delay:-.15s}.boot-eq i:nth-child(5){animation-duration:1s;animation-delay:-.5s}.boot-eq i:nth-child(6){animation-duration:.75s;animation-delay:-.25s}.boot-eq i:nth-child(7){animation-duration:.95s;animation-delay:-.7s}@keyframes bootEq{0%{transform:scaleY(.18)}to{transform:scaleY(1)}}.boot-line{animation:1.4s ease-in-out infinite alternate bootPulse}@keyframes bootPulse{0%{color:#ffd98a80}}@media (prefers-reduced-motion:reduce){.boot-eq i,.boot-line{animation:none}.boot-eq i{transform:scaleY(.6)}}#boot-status .btn{letter-spacing:.12em;margin-top:1rem}#boot-status[hidden]{display:none}#btn-play small{letter-spacing:.14em;opacity:.72;margin-top:.45rem;font-size:.6rem;display:block}.poster-actions{flex-wrap:wrap}#draft-title{text-align:center;font-size:clamp(1.6rem,4vw,3.2rem)}button.card{font:inherit;color:inherit;text-align:left;cursor:pointer}.card-preview{opacity:.8;margin-top:1rem;font-size:.72rem;line-height:1.6}.band-draft .card .icon{font-size:3.5rem}.band-draft .card .name{letter-spacing:.12em;font-size:2rem}.band-draft .card .desc{line-height:1.6}.band-chip{border:1px solid var(--band);color:var(--band);box-shadow:inset 0 1px 0 #ffffff1a, 0 0 18px -6px var(--band);letter-spacing:.12em;background:linear-gradient(#221c40db,#0e0c20eb);border-radius:999px;padding:.4rem .85rem;font-size:.8rem;font-weight:800}.member-chip{color:#ece8f7;letter-spacing:.1em;background:linear-gradient(#221c40cc,#0e0c20db);border:1px solid #ffffff29;border-radius:999px;padding:.3rem .6rem;font-size:.62rem;font-weight:800;box-shadow:inset 0 1px #ffffff14}#build{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.run-advice{border:1px solid var(--glass-line);background:var(--glass);max-width:40rem;box-shadow:var(--glass-hi), var(--glass-shadow);color:#f4f0ffeb;border-radius:14px;padding:.95rem 1.25rem .95rem 1.55rem;font-size:.94rem;line-height:1.6;position:relative}.run-advice:before{content:"";background:linear-gradient(180deg, var(--hot), #ff7a45);border-radius:3px;width:3px;position:absolute;top:.85rem;bottom:.85rem;left:.65rem;box-shadow:0 0 10px #ffaa3c80}#go-title{text-align:center;font-size:clamp(1.6rem,4vw,3.4rem)}#go-title.won{color:var(--hot)}#hint:not(:empty){opacity:1;text-align:center;background:linear-gradient(#221c40db,#0e0c20eb);border:1px solid #ffffff26;border-radius:14px;padding:.65rem 1rem;line-height:1.5;box-shadow:inset 0 1px #ffffff1a,0 10px 26px -12px #000000bf}.btn:focus-visible{outline-offset:3px;outline:2px solid #fff}.card:focus-visible{outline-offset:3px;outline:2px solid #fff}#draft,#gameover{padding:2rem 1rem;overflow-y:auto}@media (max-width:600px){#vitals{width:55vw;max-width:55vw}#vitals .stat-row{gap:.2rem}#vitals .chip{flex:1;min-width:0;padding:.12rem .2rem;font-size:.52rem}#score-box{max-width:39vw}#toasts{width:92vw;top:10.8rem}#toasts .toast{text-align:center;font-size:.65rem}#toasts .toast:not(:last-child){display:none}#banners{padding:0 1rem;top:26%}#banners .banner{white-space:normal;-webkit-text-stroke:3px var(--ink);max-width:100%;font-size:1.35rem}#banners .banner:not(:last-child){display:none}#banners .banner small{font-size:.65rem}#hint{bottom:calc(9.5rem + env(safe-area-inset-bottom,0px));width:max-content;max-width:calc(100vw - 2rem)}#draft.on,#gameover.on{padding-top:max(1.2rem,env(safe-area-inset-top));justify-content:flex-start}#draft .cards{gap:.7rem;width:100%}#draft .card{gap:.35rem;width:100%;min-height:0;padding:.8rem}#draft.band-draft .card{text-align:left;grid-template-columns:2.6rem 1fr;min-height:8rem;display:grid}#draft.band-draft .card .icon{grid-area:1/1/3;align-self:center}#draft.band-draft .card .name,#draft.band-draft .card .desc{grid-column:2}#draft.band-draft .card .rar,#draft.band-draft .card .stacks,#draft.band-draft .card .card-preview,#draft.band-draft .card .pickhint{display:none}#draft.band-draft .card .desc{font-size:.8rem;line-height:1.45}#draft .card:hover{transform:none}.band-draft .card .icon{font-size:1.8rem}.band-draft .card .name{font-size:1.4rem}.card-preview{margin-top:.45rem}.run-advice{font-size:.8rem}}#menu,#shop,#fanshop{overscroll-behavior:contain;touch-action:pan-y;overflow-y:auto}#gameover{touch-action:pan-y}#menu{padding-top:max(1.2rem, env(safe-area-inset-top))}#menu .tour-poster,#menu .keys,#menu-best{flex-shrink:0}#menu .logo{font-size:clamp(1.45rem,7vw,3.5rem)}#menu .poster-stamp{display:none}#menu .poster-line{color:#ffd68cf2;letter-spacing:.16em;text-shadow:0 1px 8px #0006;background:0 0;border:0;max-width:34rem;margin-top:1.1rem;padding:0;font-size:clamp(.62rem,2vw,.74rem);line-height:1.55}#menu .poster-meta{opacity:1;color:#ece8f88f;letter-spacing:.02em;max-width:31rem;margin-top:.9rem;font-size:.72rem;font-weight:600;line-height:1.55}#menu .poster-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;width:min(100%,32rem);display:grid}#menu #btn-play{letter-spacing:.16em;grid-column:1/-1;font-size:1.3rem}#menu .poster-actions .btn{padding:.8rem}#menu .poster-actions .btn.ghost{font-size:.86rem}#menu-bank{color:var(--cool);letter-spacing:.04em;margin-top:.3rem;font-size:.68rem;display:block}#menu-best{grid-template-columns:repeat(4,minmax(0,1fr))}.sound-option:focus-visible{outline-offset:3px;outline:2px solid #fff}.shop-item:focus-visible{outline-offset:3px;outline:2px solid #fff}:root{--hud-side:21.5rem}#hud .panel{-webkit-backdrop-filter:none;background:linear-gradient(#1e193abd,#0b091ad1);border:1px solid #ffffff1c;border-radius:14px;box-shadow:inset 0 1px #ffffff1a,0 1px 2px #0000004d,0 10px 24px -12px #000000b3}@media (hover:hover) and (pointer:fine){@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){#hud .panel{-webkit-backdrop-filter:blur(12px)saturate(1.4);background:linear-gradient(#1e193a94,#0b091ab3)}}}#hud #boss-box.panel{background:linear-gradient(#400e20bd,#160816d6);border-color:#ff6e824d;box-shadow:inset 0 1px #ffb4be1f,0 10px 26px -12px #000000b3,0 0 30px -12px #ff3b5c80}#vitals{width:21rem;padding:.6rem}#vitals .stat-row{flex-wrap:nowrap;gap:.35rem;margin-top:.35rem}#vitals .chip{letter-spacing:.08em;color:#ece8ffa8;flex-direction:column;gap:.3rem;min-width:0;padding:.38rem .2rem .32rem;font-size:.6rem}#vitals .chip .v{letter-spacing:.02em;font-variant-numeric:tabular-nums;text-shadow:0 1px #00000073;font-size:.9rem}#vitals .chip.aegis{flex:0 0 2rem}.score-caption{color:#ece8ff9e;letter-spacing:.24em;margin-bottom:.2rem;font-size:.55rem}#score-box{min-width:9rem}.core-bank{color:var(--cool);white-space:nowrap;font-size:.76rem}#wave-box{padding:.5rem .7rem .4rem}#wave-name{font-size:.95rem}#wave-sub{font-size:.6rem}#wave-progress{height:.42rem;margin-top:.4rem}#combo{top:auto;bottom:calc(4rem + env(safe-area-inset-bottom,0px));right:calc(1.2rem + env(safe-area-inset-right,0px))}#combo-n{-webkit-text-stroke-width:2px;text-shadow:0 2px 10px #00000073,0 0 18px #ffbe3c4d;font-size:2.1rem}#combo-tier{letter-spacing:.12em;font-size:.65rem}#banners,#boss-card,#letterbox{display:none}#toasts{top:calc(7.8rem + env(safe-area-inset-top,0px));width:max-content;max-width:min(32rem,90vw)}.toast{letter-spacing:.05em;text-shadow:0 1px 1px #0006;text-align:center;background:linear-gradient(#221c40e0,#0e0c20eb);border:1px solid #ffffff26;border-radius:1.2rem;padding:.42rem .95rem;font-size:.74rem;line-height:1.4;box-shadow:inset 0 1px #ffffff1a,0 8px 20px -10px #000000bf}#hint{letter-spacing:.02em;max-width:min(36rem,80vw);font-size:.7rem}#hint:not(:empty){padding:.5rem .8rem}#overcharge{background:linear-gradient(#3a0c1aeb,#140814f2);border:1px solid #ff6e8280;border-radius:14px;width:100%;max-width:26rem;padding:.55rem .7rem;top:calc(100% + .35rem);transform:translate(-50%)scale(.96);box-shadow:inset 0 1px #ffb4be1f,0 12px 28px -12px #000000bf,0 0 26px -6px #ff3b5c8c}#overcharge.on{transform:translate(-50%)scale(1)}.oc-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}#oc-name{letter-spacing:.08em;color:#ffac99;text-shadow:none;font-size:.73rem;animation:none}#oc-countdown{color:var(--hot);font:var(--display);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.95rem}#oc-hint{letter-spacing:.025em;opacity:1;font-size:.72rem;line-height:1.4}#overcharge.protected #oc-countdown,#overcharge.protected #oc-hint{color:var(--cool)}#hud:has(#overcharge.on) #hint{visibility:hidden}#hud:has(#overcharge.on) #toasts{visibility:hidden}#hud:has(#overcharge.on) #combo{visibility:hidden}@media (min-width:901px){#boss-box #overcharge{transform-origin:0 0;width:11.5rem;max-width:none;top:0;left:calc(100% + .55rem);transform:scale(.96)}#boss-box #overcharge.on{transform:scale(1)}#boss-box #oc-hint{letter-spacing:.02em;font-size:.62rem}}#shop,#fanshop{padding-top:max(1.4rem, env(safe-area-inset-top));background:radial-gradient(70% 40% at 50% -6%, rgba(255, 170, 70, calc(.12 * var(--scrim))), transparent 70%), rgba(16, 15, 36, calc(.96 * var(--scrim)));justify-content:flex-start;gap:.8rem}#shop>*,#fanshop>*{flex-shrink:0}#shop>.title,#fanshop>.title{text-align:center;font-size:clamp(1.3rem,3.4vw,2.4rem)!important}#fanshop-feedback{min-height:1.3rem;color:var(--good);text-align:center;word-break:break-all;font-size:.8rem}#fanshop-vouchers{width:100%;max-width:42rem}#fanshop-vouchers code{letter-spacing:.06em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}#fanshop .shop-toolbar .btn{min-height:2.75rem;margin:0;padding:.6rem .8rem;font-size:.8rem}#btn-fanshop-open{text-decoration:none}.shop-explanation{text-align:center;color:#ddd8ecd1;max-width:38rem;font-size:.82rem;line-height:1.55}.shop-choice{max-width:42rem;min-height:1.2rem;color:var(--cool);font:var(--display);letter-spacing:.055em;text-align:center;background:#7de3ff12;border:1px solid #7de3ff52;border-radius:1.1rem;padding:.4rem .9rem;font-size:.65rem;line-height:1.4}.shop-toolbar{z-index:2;-webkit-backdrop-filter:blur(16px)saturate(1.35);background:linear-gradient(#1e193ad1,#0e0c20e0);border:1px solid #ffffff14;border-radius:16px;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:62rem;padding:.4rem;display:flex;position:sticky;top:0;box-shadow:inset 0 1px #ffffff14,0 12px 26px -16px #000c}.shop-toolbar .tagline{letter-spacing:.1em;padding-right:.5rem;font-size:.9rem}#shop .shop-toolbar .btn{min-height:2.75rem;margin:0;padding:.6rem .8rem;font-size:.8rem}.shop-start-bar{z-index:2;width:100vw;padding:2.4rem 1rem max(.7rem, env(safe-area-inset-bottom));pointer-events:none;background:linear-gradient(#0c0a1c00,#0c0a1ce6 58%,#0c0a1cf5);flex-shrink:0;justify-content:center;margin-top:-1.2rem;display:flex;position:sticky;bottom:0}.shop-start-bar .btn{pointer-events:auto}#shop-feedback{min-height:1.3rem;color:var(--good);text-align:center;font-size:.8rem}.shop-grid{flex-shrink:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,25rem),1fr));gap:.7rem;max-height:none;overflow:visible}.shop-item{font:inherit;color:inherit;text-align:left;min-height:7.2rem;padding:.85rem}@media (hover:hover){.shop-item:not(:disabled):hover{border-color:#7de3ff99;transform:translateY(-2px);box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #7de3ff29,0 16px 32px -14px #7de3ff66}}.shop-item:not(:disabled):active{transition-duration:60ms;transform:scale(.985)}.shop-item:disabled{cursor:default}.shop-item.poor .si-cost{color:#b9b4ca}.si-name{font-size:.85rem;line-height:1.4}.si-icon{color:var(--cool)}.si-icon svg{width:100%;height:auto;display:block}.si-lv{margin-top:.15rem;font-size:.64rem;display:block}.si-preview{color:#c9c5d8;flex-wrap:wrap;align-items:baseline;gap:.35rem;margin-top:.5rem;font-size:.78rem;line-height:1.5;display:flex}.si-preview strong{color:var(--good);font-weight:700}.si-cost{min-width:4.6rem;color:var(--cool);font-size:.94rem}.si-cost small{letter-spacing:.08em;margin-top:.45rem;font-size:.57rem;display:block}#btn-shop-back{margin-bottom:max(.5rem, env(safe-area-inset-bottom));flex-shrink:0}#go-stats{grid-template-columns:repeat(5,minmax(0,1fr));max-width:46rem}#go-stats:has(>:nth-child(6)){grid-template-columns:repeat(3,minmax(0,1fr));max-width:40rem}.go-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.8rem;display:flex}#go-build{color:#ddd8ecb3;letter-spacing:.04em;font-size:.75rem}#go-earned{letter-spacing:.07em;line-height:1.5}#go-earned.payout-lines{background:linear-gradient(#ffd23f1a,#ffd23f06);border:1px solid #ffd23f3d;border-radius:16px;padding:.85rem 1.4rem .9rem;font-size:.86rem;box-shadow:inset 0 1px #ffffff14,0 14px 30px -16px #000000bf}.payout-lines{flex-direction:column;align-items:center;gap:.18rem;display:flex}.payout-lines span,.payout-lines small{display:block}.payout-lines b{color:var(--good)}.payout-lines strong{color:var(--hot);border-top:1px solid #ffd23f38;margin-top:.3rem;padding-top:.4rem;font-size:1.05rem}.payout-lines small{color:var(--cool);font-size:.64rem}@media (max-width:900px) and (min-width:621px){:root{--hud-side:15rem}#vitals{width:15rem}#wave-box,#boss-box{max-width:calc(100vw - 33.5rem)}#vitals .chip{font-size:.52rem}#vitals .chip .v{font-size:.75rem}}@media (min-width:621px){body.touch #combo{bottom:calc(11.8rem + env(safe-area-inset-bottom,0px))}body.touch #hud:has(#touch-aegis.on) #build{visibility:hidden}}@media (min-width:621px) and (max-height:700px){#menu{padding-top:.65rem}#menu .tour-poster{padding:.9rem 1.5rem}#menu .logo{margin-top:.3rem;font-size:2.5rem}#menu .poster-line{margin-top:.75rem}#menu .sound-select{margin-top:.6rem}#menu .sound-description{min-height:2.4rem;margin-top:.4rem}#menu .poster-actions{margin-top:.55rem}#menu .poster-actions .btn{padding:.6rem .8rem}#menu .poster-meta{margin-top:.45rem}}@media (orientation:landscape) and (max-height:500px){#gameover.on{padding:max(.55rem, env(safe-area-inset-top,0px)) max(1rem, env(safe-area-inset-right,0px)) max(.55rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));gap:.45rem}#go-title{font-size:1.55rem}#gameover .run-advice{max-width:46rem;padding:.4rem .9rem .4rem 1.2rem;font-size:.74rem;line-height:1.4}#gameover .run-advice:before{top:.4rem;bottom:.4rem;left:.5rem}#go-stats{gap:.45rem}#go-stats .stat-card{border-radius:11px;padding:.35rem .4rem .4rem}#go-stats .stat-card .k{letter-spacing:.14em;font-size:.5rem}#go-stats .stat-card .v{margin-top:.1rem;font-size:1.1rem}#go-build{font-size:.66rem}#go-rank{font-size:.78rem}#go-earned.payout-lines{flex-flow:wrap;justify-content:center;align-items:baseline;gap:.15rem .9rem;max-width:46rem;padding:.4rem 1rem .45rem;font-size:.72rem}#go-earned.payout-lines:before{content:"";background:#ffd23f38;flex-basis:100%;order:1;height:1px;margin:.1rem 0}#go-earned.payout-lines :-webkit-any(strong,small){order:2}#go-earned.payout-lines :is(strong,small){order:2}#go-earned.payout-lines strong{border:0;margin:0;padding:0;font-size:.86rem}#gameover .go-actions{gap:.5rem}#gameover .go-actions .btn{padding:.55rem .9rem;font-size:.78rem}#menu{padding-top:max(.5rem, env(safe-area-inset-top,0px));padding-bottom:max(.5rem, env(safe-area-inset-bottom,0px))}#menu .tour-poster{padding:.7rem 1.6rem .8rem}#menu .poster-kicker{font-size:.56rem}#menu .logo{margin-top:.25rem;font-size:min(2.5rem,9.5vh)}#menu .poster-line{margin-top:.6rem;font-size:.6rem}#menu .sound-select{margin-top:.5rem}#menu .sound-option{min-height:2.3rem}#menu .sound-description{min-height:0;margin-top:.3rem;font-size:.74rem;line-height:1.4}#menu .poster-actions{gap:.45rem;margin-top:.5rem}#menu #btn-play{padding:.5rem .8rem;font-size:1.05rem}#btn-play small{margin-top:.25rem;font-size:.5rem}#menu .poster-actions .btn.ghost{padding:.45rem .5rem;font-size:.74rem}#menu-bank{margin-top:.15rem;font-size:.6rem}#menu .poster-meta{display:none}#build{gap:.25rem;max-width:min(26rem,34vw)}#build .band-chip{padding:.28rem .65rem;font-size:.66rem}#build .member-chip{padding:.24rem .5rem;font-size:.56rem}#hud #hint{left:calc(.9rem + env(safe-area-inset-left,0px));bottom:calc(max(6rem, var(--build-h,0px) + 1.6rem) + env(safe-area-inset-bottom,0px));text-align:left;max-width:min(19rem,36vw);transform:none}}@media (max-width:620px){#menu{padding:max(.75rem, env(safe-area-inset-top,0px)) max(.75rem, env(safe-area-inset-right,0px)) max(.75rem, env(safe-area-inset-bottom,0px)) max(.75rem, env(safe-area-inset-left,0px));gap:.75rem}#menu .tour-poster{padding:1.15rem .85rem 1rem}#menu .poster-kicker{letter-spacing:.22em;font-size:.6rem}#menu .poster-line{letter-spacing:.1em;font-size:.64rem}#menu .poster-actions{grid-template-columns:1fr 1fr;gap:.45rem}#menu #btn-shop{grid-column:1/-1}#menu .poster-actions .btn.ghost{font-size:.84rem}#menu #btn-play{font-size:1.1rem}#btn-play small{letter-spacing:.04em;font-size:.55rem;line-height:1.4}#menu .poster-meta{font-size:.68rem}.sound-select{gap:.35rem;margin-top:.85rem}.sound-option{letter-spacing:.06em;gap:.3rem;min-height:2.75rem;font-size:.73rem}.sound-description{min-height:3.5rem;font-size:.76rem}#menu-best{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}#menu-best .stat-card{padding:.55rem}#vitals{width:62vw;max-width:62vw;padding:.4rem}#vitals .stat-row{gap:.2rem}#vitals .chip{padding:.2rem .05rem;font-size:.52rem}#vitals .chip .v{font-size:.74rem}#vitals .chip.aegis{flex-basis:1rem}#vitals .bar{height:1.1rem;margin-bottom:.2rem}#vitals .bar .label{font-size:.63rem}#score-box{width:30vw;min-width:0;max-width:30vw;padding:.4rem}#score{font-size:1.15rem}.score-caption{font-size:.48rem}#score-box .score-sub{flex-direction:column;align-items:flex-end;gap:.1rem}.core-bank{white-space:normal;font-size:.6rem;line-height:1.25}#wave-box,#boss-box{top:calc(6.65rem + env(safe-area-inset-top,0px));width:15rem;max-width:80vw}#wave-box{padding:.35rem .6rem .15rem}#wave-name{font-size:.77rem}#wave-sub{font-size:.5rem}#wave-progress{height:.4rem;margin-top:.2rem}#boss-name{letter-spacing:.04em;font-size:.75rem}#boss-intro{font-size:.55rem}#toasts{top:calc(10.4rem + env(safe-area-inset-top,0px));max-width:90vw}#hud:has(#boss-box.on) #toasts{top:calc(11.6rem + env(safe-area-inset-top,0px))}#toasts .toast{font-size:.63rem}#combo{top:auto;bottom:calc(max(2.9rem, var(--build-h,0px) + 1.2rem) + env(safe-area-inset-bottom,0px));left:calc(.8rem + env(safe-area-inset-left,0px));text-align:left;right:auto}#combo-n{font-size:1.65rem}#combo-tier{font-size:.52rem}#combo-ring{max-width:5rem}body.touch #hud:has(#touch-aegis.on) #build{visibility:hidden}body.touch #hud:has(#touch-aegis.on) #combo{bottom:calc(7.5rem + env(safe-area-inset-bottom,0px))}#hint{bottom:calc(8rem + env(safe-area-inset-bottom,0px));font-size:.65rem;line-height:1.4}body.touch #hud:has(#touch-bomb.on) #hint{text-align:left;width:calc(100vw - 8rem);max-width:calc(100vw - 8rem);left:.9rem;transform:none}#overcharge{max-width:100%;padding:.5rem .6rem}#oc-name{font-size:.65rem}#oc-countdown{font-size:.9rem}#oc-hint{font-size:.68rem}.shop-item{gap:.6rem;padding:.75rem .65rem}.si-icon{border-radius:10px;width:2.3rem;height:2.3rem;padding:.38rem;font-size:1.5rem}.si-name{font-size:.76rem}.si-desc,.si-preview{font-size:.71rem}.si-cost{min-width:3.8rem;font-size:.83rem}#go-stats{grid-template-columns:repeat(2,minmax(0,1fr))}#go-stats:has(>:nth-child(6)){grid-template-columns:repeat(2,minmax(0,1fr))}#go-stats>:last-child:nth-child(odd){grid-column:1/-1}#gameover .btn{width:min(100%,22rem);padding:.8rem 1.1rem;font-size:.9rem}#go-earned.payout-lines{padding:.75rem .9rem;font-size:.76rem}#pause>.btn{font-size:1.05rem}#btn-shop-start{padding:.9rem 1rem;font-size:1rem}}.screen>*{animation:.2s ease-in both uiOut}.screen.on>*{animation:uiIn .55s var(--ease-out) both}.screen.on>:nth-child(2){animation-delay:50ms}.screen.on>:nth-child(3){animation-delay:.1s}.screen.on>:nth-child(4){animation-delay:.14s}.screen.on>:nth-child(5){animation-delay:.18s}.screen.on>:nth-child(6){animation-delay:.22s}.screen.on>:nth-child(n+7){animation-delay:.26s}@keyframes uiIn{0%{opacity:0;scale:.965}}@keyframes uiOut{to{opacity:0;scale:.985}}.screen.on .tour-poster>:-webkit-any(.poster-kicker,.poster-line,.sound-select,.sound-description,.poster-actions,.poster-meta){animation:uiRise .6s var(--ease-out) both}.screen.on .tour-poster>:is(.poster-kicker,.poster-line,.sound-select,.sound-description,.poster-actions,.poster-meta){animation:uiRise .6s var(--ease-out) both}.screen.on .tour-poster>.logo{animation:logoIn .8s var(--ease-out) .1s both}.screen.on .tour-poster>.poster-kicker{animation-delay:60ms}.screen.on .tour-poster>.poster-line{animation-delay:.2s}.screen.on .tour-poster>.sound-select{animation-delay:.25s}.screen.on .tour-poster>.sound-description{animation-delay:.29s}.screen.on .tour-poster>.poster-actions{animation-delay:.33s}.screen.on .tour-poster>.poster-meta{animation-delay:.38s}@keyframes uiRise{0%{opacity:0;translate:0 10px}}@keyframes logoIn{0%{opacity:0;translate:0 8px;scale:.9}}@media (prefers-reduced-motion:reduce){.screen,.screen>*,.tour-poster>*,.card,.btn,.btn:after,.banner,.toast,.sound-option,.shop-item,.chip,.chip:before,#combo-n,#combo-tier,#hud,#hud.on #vitals,#hud.on #score-box,.revive-ring,#boot-status{transition:none!important;animation:none!important}}@media (pointer:coarse),(max-width:620px){.panel,.tour-poster,#pause .rows,.shop-toolbar{-webkit-backdrop-filter:blur(8px)saturate(1.2)}.tour-poster{background-color:#0c0a1c38}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--glass:var(--glass-dense)}.tour-poster,.shop-toolbar{background-color:#0e0c20e6}}#tourmap{right:1.1rem;top:calc(6.4rem * var(--hud-scale));background:var(--glass-dense);border:1px solid var(--glass-line);box-shadow:var(--glass-hi), var(--glass-shadow);opacity:0;pointer-events:none;transition:opacity .35s, transform .5s var(--ease-out);border-radius:16px;padding:.55rem .7rem .35rem;position:absolute;transform:translate(115%)}#tourmap.on{opacity:1;transform:none}#tourmap .tm-title{font:var(--display);letter-spacing:.24em;color:#ffe0aae6;font-size:.78rem}#tourmap .tm-next{font:var(--display);letter-spacing:.06em;color:#fff;white-space:nowrap;margin:.25rem 0 .15rem;font-size:.7rem}#tourmap .tm-next b{color:#ffd34d}#tourmap svg{width:calc(250px * var(--hud-scale));height:auto;margin-top:-2.3rem;display:block}#tourmap .land{fill:#ffffff12;stroke:#ffffff80;stroke-width:1.2px;stroke-linejoin:round}#tourmap .sea-land{fill:#ffffff0f;stroke:#ffffff38;stroke-width:.8px;stroke-linejoin:round}#tourmap .land.now{fill:#ffd34d29;stroke:#ffe096d9}#tourmap .land.later{fill:#ffffff08;stroke:#ffffff47;stroke-dasharray:2 2}#tourmap .tm-land{color:#ffe0aad9;letter-spacing:.1em;font-size:.62rem}#tourmap .plane path{fill:#fff;stroke:#d23a3a;stroke-width:.8px;stroke-linejoin:round}#tourmap .route{fill:none;stroke:#ff5a6e;stroke-width:2px;stroke-dasharray:4 3;stroke-linejoin:round}#tourmap .leg{fill:none;stroke:#ffd34d;stroke-width:2px;stroke-dasharray:3 3;animation:.9s linear infinite tmDash}@keyframes tmDash{to{stroke-dashoffset:-12px}}#tourmap .done{fill:#ff5a6e;stroke:#fff;stroke-width:1px}#tourmap .next{fill:#ffd34d;stroke:#fff;stroke-width:1.2px;transform-box:fill-box;transform-origin:50%;animation:1s ease-in-out infinite tmPulse}@keyframes tmPulse{50%{transform:scale(1.4)}}#tourmap text{letter-spacing:.03em;paint-order:stroke;stroke:#0d0b1eeb;stroke-width:3px;font:900 9px Arial Black,Impact,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}#tourmap text.here{fill:#ffb3bd}#tourmap text.there{fill:#ffd34d}#tourmap .bus rect{fill:#d23a3a;stroke:#fff;stroke-width:1px}#tourmap .bus .win{fill:#cfe8ff;stroke:none}#tourmap .bus .tyre{fill:#17150f}@media (max-width:640px){#tourmap{top:auto;bottom:calc(5.5rem * var(--hud-scale))}#tourmap svg{width:calc(190px * var(--hud-scale))}#hud:has(>#tourmap.on) #hint{opacity:0}}@media (min-width:621px) and (max-width:1330px) and (min-height:501px){#hud #hint{top:calc(12.4rem + env(safe-area-inset-top,0px));bottom:auto}}@media (max-width:360px) and (max-height:600px){#menu .poster-kicker{letter-spacing:.14em;white-space:nowrap}#menu .poster-meta{display:none}}@media (max-width:620px) and (orientation:portrait) and (min-aspect-ratio:11/20){#hud #hint{top:calc(13.6rem + env(safe-area-inset-top,0px));text-align:center;width:max-content;max-width:calc(100vw - 2rem);bottom:auto;left:50%;transform:translate(-50%)}body.touch #hud:has(#touch-bomb.on) #hint{top:calc(13.6rem + env(safe-area-inset-top,0px));text-align:center;width:max-content;max-width:calc(100vw - 2rem);bottom:auto;left:50%;transform:translate(-50%)}}@media (max-height:500px) and (min-width:641px){#tourmap svg{width:calc(160px * var(--hud-scale))}}
