:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--void:#03070e;--glass:#040a14bd;--text:#d8f6ff;--dim:#6f8ba3;--n-cyan:#3df5ff;--n-magenta:#ff4df0;--n-amber:#ffd23d;--n-mint:#3dffa8;--n-red:#ff3b5c;--n-lime:#b6ff4d;--neon:"Orbitron", "Eurostile", ui-monospace, monospace;--body:"IBM Plex Sans Condensed", "Arial Narrow", system-ui, sans-serif;--st:env(safe-area-inset-top,0px);--sr:env(safe-area-inset-right,0px);--sb:env(safe-area-inset-bottom,0px);--sl:env(safe-area-inset-left,0px);--gap:12px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}html,body{background:var(--void);height:100%;color:var(--text);font:14px/1.35 var(--body);overscroll-behavior:none;-webkit-user-select:none;user-select:none;margin:0;overflow:hidden}#game{touch-action:none;position:fixed;inset:0}#game canvas{display:block}#hud{pointer-events:none;z-index:2;position:fixed;inset:0}.scanlines{pointer-events:none;z-index:1;mix-blend-mode:multiply;opacity:.5;background:repeating-linear-gradient(#0000 0 2px,#00000047 2px 3px);position:fixed;inset:0}.fx-off .scanlines{display:none}.vignette{pointer-events:none;z-index:1;opacity:0;background:radial-gradient(#0000 55%,#ff28508c 100%);transition:opacity .6s;animation:1.6s ease-in-out infinite alarm;position:fixed;inset:0}@keyframes alarm{50%{filter:brightness(1.6)}}#hud button,.pop,.drawer,.over{pointer-events:auto}.chip .v,.tool,.slot .nm,.slot .cs,.launch,.over h2,.pop-h,.drawer h2{text-shadow:0 0 1px #fff, 0 0 4px var(--c,var(--n-cyan)), 0 0 12px var(--c,var(--n-cyan)), 0 0 24px color-mix(in srgb, var(--c,var(--n-cyan)) 55%, transparent)}button{--c:var(--n-cyan);font:700 12px var(--neon);letter-spacing:.08em;color:color-mix(in srgb, var(--c) 35%, #fff);background:var(--glass);border:1.5px solid var(--c);cursor:pointer;box-shadow:0 0 6px color-mix(in srgb, var(--c) 70%, transparent), 0 0 16px color-mix(in srgb, var(--c) 30%, transparent), inset 0 0 8px color-mix(in srgb, var(--c) 25%, transparent);border-radius:10px;transition:box-shadow .15s,background .15s,transform 80ms}button:hover:not(:disabled){box-shadow:0 0 8px var(--c), 0 0 24px color-mix(in srgb, var(--c) 50%, transparent), inset 0 0 12px color-mix(in srgb, var(--c) 40%, transparent)}button:active:not(:disabled){background:color-mix(in srgb, var(--c) 18%, var(--void));transform:scale(.96)}button:disabled{--c:#3a4d60;cursor:not-allowed;text-shadow:none;box-shadow:none;color:#4f6478}button:focus-visible{outline-offset:3px;outline:2px solid #fff}.stack{top:calc(var(--st) + 8px);left:calc(var(--sl) + var(--gap));right:calc(var(--sr) + var(--gap));flex-direction:column;align-items:flex-start;gap:6px;display:flex;position:absolute}.top{justify-content:space-between;align-self:stretch;align-items:flex-start;gap:8px;display:flex}.chips{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.chip{--c:var(--n-cyan);background:var(--glass);-webkit-backdrop-filter:blur(8px);border:1px solid color-mix(in srgb, var(--c) 55%, transparent);box-shadow:0 0 8px color-mix(in srgb, var(--c) 30%, transparent), inset 0 0 10px color-mix(in srgb, var(--c) 12%, transparent);border-radius:8px;flex-direction:column;min-width:60px;padding:4px 10px 5px;display:flex}.chip .k{font:500 8px var(--neon);letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb, var(--c) 55%, var(--dim))}.chip .v{font:700 15px var(--neon);letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap;color:color-mix(in srgb, var(--c) 30%, #fff)}.chip .bar{background:#ffffff14;border-radius:2px;height:3px;margin-top:4px;display:block;overflow:hidden}.chip.crisis{animation:1s steps(2,end) infinite bar-blink;--c:var(--n-red)!important}.chip .bar b.low{animation:.5s steps(2,end) infinite bar-blink}@keyframes bar-blink{50%{opacity:.25}}.chip .bar b{background:var(--n-mint);width:100%;height:100%;transition:width .25s,background .25s;display:block}.tools{flex:none;gap:6px;display:flex}.tool{width:40px;height:40px;padding:0;font-size:15px}.tool[aria-pressed=false]{--c:#3a4d60;text-shadow:none;box-shadow:none}.messages{left:calc(var(--sl) + var(--gap));bottom:calc(var(--sb) + var(--gap) + 84px);pointer-events:none;flex-direction:column;align-items:flex-start;gap:4px;width:min(300px,42vw);display:flex;position:absolute}.msgs-off .messages{display:none}.intel{--c:var(--n-red);border:1px solid color-mix(in srgb, var(--c) 35%, transparent);max-width:100%;color:var(--dim);-webkit-line-clamp:3;background:#030810b8;border-radius:6px;-webkit-box-orient:vertical;margin:0;padding:4px 8px;font-size:10.5px;line-height:1.3;display:-webkit-box;overflow:hidden}.intel b{color:#ff9aab;text-shadow:0 0 8px var(--n-red);font-weight:600}.intel:empty{display:none}.mmframe{--c:var(--n-cyan);border:1px solid color-mix(in srgb, var(--c) 60%, transparent);box-shadow:0 0 10px color-mix(in srgb, var(--c) 35%, transparent), 0 4px 18px #00000080;border-radius:6px;position:absolute}.mmframe span{font:500 8px var(--neon);letter-spacing:.24em;text-transform:uppercase;color:var(--n-cyan);text-shadow:0 0 6px var(--n-cyan);position:absolute;top:-15px;right:0}.toasts{flex-direction:column-reverse;align-items:flex-start;gap:4px;width:100%;display:flex}.toast{--c:var(--n-cyan);background:var(--glass);border:1px solid color-mix(in srgb, var(--c) 50%, transparent);border-left:3px solid var(--c);box-shadow:0 0 12px color-mix(in srgb, var(--c) 25%, transparent);max-width:100%;box-shadow:none;background:#030810b8;border-radius:6px;padding:3px 8px;font-size:10.5px;line-height:1.3;transition:opacity .4s;animation:.25s ease-out toast-in}.toast.bad{--c:var(--n-red)}.toast.good{--c:var(--n-mint)}.toast.tip{--c:var(--n-lime);color:#efffd6}.toast.info{--c:var(--n-cyan)}.toast.fade{opacity:0}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}40%{opacity:.4}55%{opacity:1}65%{opacity:.6}to{opacity:1}}.dock{left:calc(var(--sl) + var(--gap));bottom:calc(var(--sb) + var(--gap));-webkit-backdrop-filter:blur(10px);max-width:calc(100vw - 3 * var(--gap) - var(--sl) - var(--sr) - 176px);scrollbar-width:none;background:#030810b3;border:1px solid #3df5ff2e;border-radius:16px;gap:8px;padding:8px;display:flex;position:absolute;overflow-x:auto}.slot{border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:1px;width:64px;height:64px;padding:4px 2px;display:flex;position:relative}.slot svg{width:22px;height:22px;filter:drop-shadow(0 0 3px var(--c)) drop-shadow(0 0 8px var(--c))}.slot .nm{font:700 8.5px var(--neon);letter-spacing:.06em;color:color-mix(in srgb, var(--c) 30%, #fff);text-transform:uppercase;line-height:1.2}.slot .cs{--c:var(--n-amber);font:700 10px var(--neon);color:#ffefa8;font-variant-numeric:tabular-nums}.slot .key{font:500 8px var(--neon);color:color-mix(in srgb, var(--c) 60%, var(--dim));position:absolute;top:3px;right:6px}.slot.on{background:color-mix(in srgb, var(--c) 22%, var(--void));box-shadow:0 0 10px var(--c), 0 0 28px color-mix(in srgb, var(--c) 60%, transparent), inset 0 0 14px color-mix(in srgb, var(--c) 55%, transparent)}.slot:disabled svg{filter:grayscale()brightness(.5)}.slot.cooling:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(to top, color-mix(in srgb, var(--c) 30%, transparent) var(--cd), transparent var(--cd));position:absolute;inset:0}.slot.cooling .cs{color:#e6ebff;text-shadow:0 0 6px var(--c)}.slot:disabled .cs{color:#4f6478;text-shadow:none}.launch{--c:var(--n-amber);right:calc(var(--sr) + var(--gap));bottom:calc(var(--sb) + var(--gap));width:164px;min-height:64px;font:900 13px var(--neon);letter-spacing:.14em;text-transform:uppercase;color:#fff6cc;border-width:2px;border-radius:14px;padding:8px 12px;animation:2.4s ease-in-out infinite tube-pulse;position:absolute}.launch.counting{letter-spacing:.08em;font-size:11px}.launch:disabled{--c:var(--n-cyan);cursor:default;opacity:.85;color:color-mix(in srgb, var(--n-cyan) 40%, #fff);text-shadow:0 0 6px var(--n-cyan);border-color:color-mix(in srgb, var(--n-cyan) 45%, transparent);box-shadow:0 0 8px color-mix(in srgb, var(--n-cyan) 30%, transparent);font-size:10px;animation:none}@keyframes tube-pulse{0%,to{box-shadow:0 0 8px var(--c), 0 0 22px color-mix(in srgb, var(--c) 50%, transparent), inset 0 0 12px color-mix(in srgb, var(--c) 35%, transparent)}50%{box-shadow:0 0 12px var(--c), 0 0 40px color-mix(in srgb, var(--c) 70%, transparent), inset 0 0 18px color-mix(in srgb, var(--c) 55%, transparent)}}.pop{--c:var(--n-cyan);-webkit-backdrop-filter:blur(10px);border:1px solid var(--c);width:236px;box-shadow:0 0 12px color-mix(in srgb, var(--c) 45%, transparent), inset 0 0 12px color-mix(in srgb, var(--c) 15%, transparent), 0 8px 28px #00000080;background:#030810db;border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex;position:absolute;top:0;left:0}.pop-h{font:700 12px var(--neon);letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--c) 25%, #fff);align-items:center;gap:6px;display:flex}.pop-h svg{width:18px;height:18px;filter:drop-shadow(0 0 4px var(--c))}.pop-h span{font:500 9px var(--neon);color:color-mix(in srgb, var(--c) 60%, var(--dim));margin-left:auto}.pop-s{color:var(--dim);font-variant-numeric:tabular-nums;font-size:12px}.pop-b{gap:6px;display:flex}.pop-b button{flex:1;min-height:40px;padding:6px 8px;font-size:10px}.pop-b .primary{--c:var(--n-amber);color:#fff6cc}.drawer{width:min(340px,86vw);padding:calc(var(--st) + 12px) calc(var(--sr) + 14px) calc(var(--sb) + 12px) 14px;border-left:1px solid var(--n-cyan);background:#03070ef5;flex-direction:column;gap:10px;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-4px 0 24px #3df5ff26}.drawer header{align-items:center;gap:8px;display:flex}.drawer h2{font:700 11px var(--neon);letter-spacing:.24em;text-transform:uppercase;color:#cffbff;margin:0 auto 0 0}.drawer header button{padding:8px 12px}.drawer ul{flex-direction:column;gap:6px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex;overflow-y:auto}.drawer li{gap:8px;display:flex}.drawer time{font:500 10px var(--neon);color:var(--dim);font-variant-numeric:tabular-nums;flex:none;padding-top:2px}.drawer .bad{color:#ff9aab}.rnd li{border:1px solid #3df5ff33;border-radius:10px;flex-direction:column;gap:6px;padding:10px}.rnd .rn{font:700 11px var(--neon);letter-spacing:.08em;text-transform:uppercase;color:#e6fdff;align-items:center;gap:8px;display:flex}.rnd .pips{gap:3px;margin-left:auto;display:flex}.rnd .pips b{background:#ffffff1f;border-radius:2px;width:10px;height:4px}.rnd .pips b.on{background:var(--n-lime);box-shadow:0 0 6px var(--n-lime)}.rnd .rd{color:var(--dim);font-size:12px}.rnd button{--c:var(--n-amber);color:#fff6cc;align-self:flex-start;padding:8px 12px;font-size:10px}.drawer .good{color:#9dffd4}.drawer .info{color:#a9eeff}.brief{pointer-events:auto;background:#03070ecc;place-items:center;padding:16px;display:grid;position:absolute;inset:0;overflow-y:auto}.brief .card{--c:var(--n-cyan);border:1.5px solid var(--c);width:min(520px,100%);box-shadow:0 0 16px color-mix(in srgb, var(--c) 50%, transparent), inset 0 0 16px color-mix(in srgb, var(--c) 18%, transparent);background:#040a14f0;border-radius:16px;padding:20px 22px}.brief h2{--c:var(--n-cyan);font:900 22px var(--neon);letter-spacing:.12em;text-transform:uppercase;color:#e6fdff;text-shadow:0 0 1px #fff, 0 0 6px var(--c), 0 0 18px var(--c);margin:0 0 4px}.brief .goal{color:var(--text);margin:0 0 12px}.brief .goal b{color:#efffc9;text-shadow:0 0 8px var(--n-lime)}.brief ul{color:var(--dim);flex-direction:column;gap:9px;margin:0 0 16px;padding:0;font-size:13px;list-style:none;display:flex}.brief li{align-items:flex-start;gap:10px;display:flex}.brief li b{color:var(--text);font-weight:600}.brief i{width:22px;height:22px;font:700 11px var(--neon);color:#fff;border:1.5px solid var(--c);box-shadow:0 0 8px var(--c);text-shadow:0 0 6px var(--c);border-radius:50%;flex:none;place-items:center;font-style:normal;display:grid}.brief-b{flex-wrap:wrap;gap:10px;display:flex}.brief-b button{min-height:46px;padding:10px 18px}.level-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:12px;display:grid}.level{--c:var(--n-cyan);text-align:left;min-height:110px;font:inherit;letter-spacing:normal;color:var(--text);border-radius:12px;flex-direction:column;gap:6px;padding:14px;display:flex}.level .ln{font:900 14px var(--neon);letter-spacing:.1em;text-transform:uppercase;color:#e6fdff;text-shadow:0 0 8px var(--c)}.level .lb{color:var(--dim);font-size:12px}.level .lt{font:700 9px var(--neon);letter-spacing:.14em;text-transform:uppercase;color:var(--c);margin-top:auto}.level.on{background:color-mix(in srgb, var(--c) 16%, var(--void))}.level.doom .ln{color:#ffd6dd}.level-grid{max-height:70vh;overflow-y:auto}.coach{--c:var(--n-lime);pointer-events:auto;border:1.5px solid var(--c);width:min(290px,80vw);box-shadow:0 0 14px color-mix(in srgb, var(--c) 55%, transparent);background:#040c08f0;border-radius:12px;padding:10px 12px;font-size:13px;animation:.3s ease-out toast-in;position:absolute;top:0;left:0}.coach p{margin:0 0 8px}.coach p b{color:#efffc9;text-shadow:0 0 6px var(--c)}.coach-b{gap:6px;display:flex}.coach-b button{--c:var(--n-lime);padding:6px 10px;font-size:10px}.coach-b #coachSkip{--c:#3a4d60;box-shadow:none;text-shadow:none;color:var(--dim)}.coach-target{animation:1s ease-in-out infinite coach-ring!important}@keyframes coach-ring{50%{box-shadow:0 0 0 4px var(--n-lime), 0 0 30px var(--n-lime)}}.over{background:#03070ec7;place-items:center;display:grid;position:absolute;inset:0}.over .card{--c:var(--n-red);text-align:center;background:var(--glass);border:1.5px solid var(--c);box-shadow:0 0 16px var(--c), inset 0 0 16px color-mix(in srgb, var(--c) 30%, transparent);border-radius:16px;max-width:88vw;padding:26px 30px}.over h2{--c:var(--n-red);font:900 28px var(--neon);letter-spacing:.12em;text-transform:uppercase;color:#ffd6dd;margin:0 0 8px;animation:3s linear infinite flicker}.over p{color:var(--dim);margin:0 0 18px}.launch-like{--c:var(--n-amber);color:#fff6cc;padding:12px 26px;font-size:13px}@keyframes flicker{0%,18%,22%,62%,64%,to{opacity:1}20%,63%{opacity:.45}}.stagebanner{--c:var(--n-red);pointer-events:none;text-align:center;flex-direction:column;align-items:center;gap:6px;animation:1.2s linear 2 flicker;display:flex;position:absolute;top:32%;left:50%;transform:translate(-50%,-50%)}.stagebanner b{font:900 clamp(22px, 5vw, 40px) var(--neon);letter-spacing:.16em;text-transform:uppercase;color:#ffe3e8;text-shadow:0 0 2px #fff, 0 0 10px var(--c), 0 0 30px var(--c), 0 0 60px var(--c)}.stagebanner span{font:700 11px var(--neon);letter-spacing:.14em;text-transform:uppercase;color:#ffb3c0;text-shadow:0 0 8px var(--c)}.rotate{display:none}@media (orientation:portrait) and (width<=600px){.rotate{left:50%;top:calc(var(--st) + 104px);background:var(--glass);color:var(--dim);white-space:nowrap;border:1px solid #3df5ff66;border-radius:8px;margin:0;padding:6px 12px;font-size:12px;display:block;position:absolute;transform:translate(-50%)}.chip{min-width:0;padding:3px 8px}.chip.wide{display:none}.dock{max-width:calc(100vw - 2 * var(--gap));bottom:calc(var(--sb) + 88px)}.launch{left:calc(var(--sl) + var(--gap));min-height:56px}.messages{bottom:calc(var(--sb) + 172px);width:min(300px,70vw)}}@media (width<=900px){.dock{gap:5px;padding:6px}.slot{width:52px;height:56px}.slot .nm{font-size:7.5px}.slot .cs{font-size:9px}.slot svg{width:19px;height:19px}}@media (width<=1000px){.chip.wide{display:none}.tool{width:36px;height:36px;font-size:13px}.tools{gap:5px}}@media (height<=420px){.messages{bottom:calc(var(--sb) + var(--gap) + 76px)}.slot{width:58px;height:58px}.launch{min-height:58px}.chip .v{font-size:13px}}@media (prefers-reduced-motion:reduce){.toast,.launch,.over h2,.vignette,.coach,.coach-target,.chip .bar b.low,.chip.crisis{animation:none!important}.chip .bar b{transition:none}}
