@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&family=VT323&display=swap";:root{--bg:#070a06;--bg-soft:#0d120b;--ink:#ece6d6;--ink-dim:#b9b39e;--ink-faint:#7e806b;--amber:#ffb454;--amber-hot:#ff8d3a;--acid:#c8f06c;--danger:#ff5b4d;--line:#ffc2773d;--line-strong:#ffc2777a;--panel:#0a0e09c2;--panel-heavy:#080b07eb;--font-display:"Bahnschrift", "DIN Alternate", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;--font-body:"Avenir Next", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono:"SFMono-Regular", "Cascadia Mono", Menlo, Consolas, monospace;--hud-pad:22px;--ease-out:cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html,body{background:var(--bg);width:100%;height:100%;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow:hidden}body{-webkit-user-select:none;user-select:none;overscroll-behavior:none}button,input{font:inherit}button{color:inherit}#app{background:radial-gradient(circle at 50% 25%,#202615 0%,#0b0e08 55%,#050704 100%);position:fixed;inset:0}#game-canvas{cursor:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}body.ui-open #game-canvas{cursor:default}.is-hidden{opacity:0!important;visibility:hidden!important;pointer-events:none!important}#fx-layer{z-index:10;pointer-events:none;position:absolute;inset:0}.vignette{mix-blend-mode:multiply;background:radial-gradient(at 50% 46%,#0000 38%,#03050247 72%,#020401bd 100%),linear-gradient(#0204015c 0%,#0000 14% 82%,#0204017a 100%);position:absolute;inset:0}.grain{opacity:.055;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");animation:1.1s steps(2,end) infinite grain-shift;position:absolute;inset:-60px}@keyframes grain-shift{0%{transform:translate(0,0)}25%{transform:translate(-2%,1%)}50%{transform:translate(1%,-2%)}75%{transform:translate(-1%,-1%)}to{transform:translate(2%,1%)}}#damage-flash{opacity:0;mix-blend-mode:screen;background:radial-gradient(#0000 32%,#ff301e38 74%,#ad11078a 100%);position:absolute;inset:0}#damage-flash.hit{animation:.36s ease-out damage-flash}@keyframes damage-flash{0%{opacity:.7}20%{opacity:.5}to{opacity:0}}#nuke-blind{z-index:240;pointer-events:none;opacity:0;mix-blend-mode:screen;background:#fff;transition:opacity 80ms linear;position:fixed;inset:0}#nuke-blind.active{background:radial-gradient(#fff 0%,#fff6d8 46%,#ffd88ceb 100%)}#lightning-flash{opacity:0;mix-blend-mode:screen;pointer-events:none;background:radial-gradient(at 50% 15%,#ebf5ffc7,#0000 65%),linear-gradient(#d7ebff57,#0000 70%);position:absolute;inset:0}#lightning-flash.flash{animation:.22s ease-out lightning-flash}@keyframes lightning-flash{0%{opacity:.9}15%{opacity:.18}30%{opacity:.65}to{opacity:0}}#low-health-pulse{opacity:0;transition:opacity .5s;position:absolute;inset:0;box-shadow:inset 0 0 90px 15px #a40a026b}body.low-health #low-health-pulse{opacity:1;animation:1.65s ease-in-out infinite low-health}@keyframes low-health{0%,to{opacity:.25}50%{opacity:.65}}body.is-paused .grain,body.is-menu .grain{animation-play-state:paused}.hud{z-index:30;pointer-events:none;transition:opacity .35s;position:absolute;inset:0}.panel{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px)saturate(.9);backdrop-filter:blur(12px)saturate(.9);clip-path:polygon(0 0,calc(100% - 15px) 0,100% 15px,100% 100%,0 100%);background:linear-gradient(120deg,#171e11d1,#080c07b8);position:relative;box-shadow:inset 0 0 0 1px #ffffff06,0 18px 38px #00000047}.panel:after{content:"";background:var(--amber);opacity:.85;width:36px;height:1px;position:absolute;top:0;right:15px}.panel-notch{background:linear-gradient(180deg, var(--amber), transparent);opacity:.85;width:4px;height:44%;position:absolute;bottom:0;left:0}.hud-label{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:7px;font-size:9px;font-weight:600;line-height:1;display:inline-flex}.live-dot{background:var(--acid);border-radius:50%;width:5px;height:5px;animation:1.7s ease-in-out infinite live-pulse;display:inline-block;box-shadow:0 0 8px #c8f06ccc}@keyframes live-pulse{0%,to{opacity:.45}50%{opacity:1}}kbd{color:#ffe2b4;min-width:21px;height:19px;font-family:var(--font-mono);letter-spacing:.06em;background:#ffbe640f;border:1px solid #ffd49b52;border-bottom-color:#ffd49b29;border-radius:2px;justify-content:center;align-items:center;padding:0 5px;font-size:9px;font-style:normal;display:inline-flex;box-shadow:0 1px #00000080}.hud-top{top:max(var(--hud-pad), env(safe-area-inset-top));left:max(var(--hud-pad), env(safe-area-inset-left));grid-template-columns:minmax(180px,238px) minmax(320px,1fr) minmax(214px,254px);align-items:start;gap:clamp(12px,2vw,28px);display:grid;position:absolute;right:92px}.score-value{color:var(--ink);font-family:var(--font-display);letter-spacing:.035em;font-variant-numeric:tabular-nums;text-shadow:0 2px 16px #ffb45424;margin:6px 0 7px;font-size:clamp(30px,3vw,42px);font-weight:700;line-height:.95}.hud-meta{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.1em;gap:16px;font-size:8px;display:flex}.hud-meta b{color:var(--ink-dim);font-variant-numeric:tabular-nums;font-weight:500}.mission-panel{text-align:center;text-shadow:0 2px 12px #000c;justify-self:center;width:min(100%,600px);padding:4px 0 0;position:relative}.mission-head{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.distance{color:var(--amber);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.distance b{letter-spacing:.04em;font-size:16px;font-weight:500}.distance em{opacity:.65;margin-left:3px;font-size:9px;font-style:normal}.mission-objective{color:var(--ink);font-family:var(--font-display);letter-spacing:.15em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;margin-bottom:10px;font-size:clamp(12px,1.15vw,15px);font-weight:600;overflow:hidden}.progress-track{background:#0000007a;border-top:1px solid #ffffff12;border-bottom:1px solid #ffffff0a;height:5px;position:relative;overflow:visible}.progress-track:before{content:"";z-index:2;pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 19px,#0000007a 19px 21px);position:absolute;inset:0}.progress-fill{background:linear-gradient(90deg, #8c9b4c, var(--amber) 72%, #ffe0a4);width:0%;transition:width .18s linear;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 16px #ffb45480}.progress-marker{width:2px;height:11px;box-shadow:0 0 10px var(--amber);z-index:3;background:#fff1d0;transition:left .18s linear;position:absolute;top:-3px;left:0%;transform:translate(-1px)}.progress-tick{z-index:3;background:#ffdca552;width:1px;height:9px;position:absolute;top:-2px}.mission-foot{color:#c5c2ac6b;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;margin-top:6px;font-size:7px;display:flex}.status-head{justify-content:space-between;align-items:baseline;margin-bottom:7px;display:flex}.health-value{color:var(--ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.health-value em{color:var(--ink-faint);font-size:9px;font-style:normal}.health-track{background:#0000008c;border:1px solid #ffffff0d;height:7px;position:relative;overflow:hidden}.health-track:after{content:"";pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 12px,#040804b3 12px 14px);position:absolute;inset:0}.health-track i{width:100%;height:100%;transition:width .22s var(--ease-out), background .3s ease;background:linear-gradient(90deg,#a9d96b,#d4f58d);display:block;box-shadow:0 0 12px #c8f06c59}.status-grid{justify-content:space-between;margin-top:9px;display:flex}.upgrade-line{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.1em;justify-content:space-between;gap:10px;margin-top:7px;font-size:7px;display:flex}.status-cell{align-items:center;gap:9px;display:flex}.status-number{color:var(--ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:16px;font-weight:500;line-height:1}.status-number.bump{animation:.25s number-bump}@keyframes number-bump{0%{color:var(--amber);transform:scale(1.35)}to{transform:scale(1)}}.lives-pips{gap:5px;height:6px;margin-top:7px;display:flex}.life-pip{background:linear-gradient(90deg, var(--amber), #ffb45452);clip-path:polygon(0 0,100% 0,calc(100% - 4px) 100%,0 100%);opacity:.9;width:26px;height:5px;transition:opacity .25s,background .25s}.life-pip.spent{opacity:.5;background:#ffffff1a}.combat-state{gap:5px;min-height:13px;margin-top:7px;display:flex}.state-chip{font-family:var(--font-mono);letter-spacing:.13em;opacity:0;border:1px solid #0000;padding:2px 5px;font-size:7px;line-height:1;transition:opacity .18s,transform .18s;transform:translateY(3px)}.state-chip.active{opacity:1;transform:translateY(0)}.state-chip.brace{color:#d9f6a5;background:#567a2d29;border-color:#b9eb7857}.state-chip.cover{color:#a9ddff;background:#325c7629;border-color:#87c8f052}.pad-status{color:#c5c2ac59;font-family:var(--font-mono);letter-spacing:.13em;text-align:right;margin-top:8px;font-size:7px}.boss-bar{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));background:linear-gradient(90deg,#1f0805e0,#0f0a06c2);border:1px solid #ff6d4659;width:min(460px,56vw);padding:9px 12px 8px;transition:opacity .3s;position:absolute;top:128px;left:50%;transform:translate(-50%);box-shadow:0 10px 34px #00000059}.boss-name{font-family:var(--font-mono);letter-spacing:.15em;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:8px;display:flex}.boss-track{background:#0009;height:5px;overflow:hidden}.boss-track i{background:linear-gradient(90deg,#a52213,#ff6a3b 70%,#ffb27d);width:100%;height:100%;transition:width .2s linear;display:block;box-shadow:0 0 14px #ff5b378c}.radar-panel{right:max(var(--hud-pad), env(safe-area-inset-right));bottom:max(var(--hud-pad), env(safe-area-inset-bottom));pointer-events:none;width:232px;padding:10px;position:absolute}.radar-head,.radar-foot{font-family:var(--font-mono);letter-spacing:.13em;color:#d6d2be8c;justify-content:space-between;align-items:center;font-size:8px;display:flex}.radar-head{margin-bottom:8px}.radar-head span:first-child{align-items:center;gap:6px;display:flex}.radar-foot{margin-top:7px}.radar-foot>span:first-child{width:17px;height:17px;color:var(--amber);border:1px solid #ffc37840;justify-content:center;align-items:center;font-size:9px;display:inline-flex}.radar-frame{background:#071009;border:1px solid #b9e29033;position:relative;overflow:hidden;box-shadow:inset 0 0 30px #000000bf}.radar-frame:before{content:"";z-index:2;pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#c7f58b0b 1px,#0000 1px),linear-gradient(0deg,#c7f58b0b 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:20px 20px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.radar-frame:after{content:"";z-index:3;pointer-events:none;opacity:.5;background:repeating-linear-gradient(0deg,#0000 0 3px,#00000029 3px 4px);position:absolute;inset:0}#radar{aspect-ratio:.9167;opacity:.92;width:100%;height:auto;display:block}.weapon-panel{left:max(var(--hud-pad), env(safe-area-inset-left));bottom:max(var(--hud-pad), env(safe-area-inset-bottom));grid-template-columns:1fr auto;gap:7px 18px;width:330px;padding:13px 16px 12px;display:grid;position:absolute}.weapon-main .hud-label{margin-bottom:5px}.weapon-main strong{color:var(--ink);font-family:var(--font-display);letter-spacing:.08em;font-size:19px;font-weight:700;line-height:1;display:block}.weapon-main strong b{font:inherit;font-weight:inherit}.weapon-main strong span{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.12em;vertical-align:1px;margin-left:5px;font-size:7px;font-weight:500;display:inline-block}.weapon-ammo{text-align:right;align-self:center}.weapon-ammo b{color:var(--amber);font-family:var(--font-display);font-size:32px;font-weight:600;line-height:.8;display:block}.weapon-ammo span{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.12em;margin-top:4px;font-size:7px;display:block}.weapon-slots{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:2px;display:grid}.weapon-slot{color:#d3cdb959;min-width:0;font-family:var(--font-mono);letter-spacing:.05em;white-space:nowrap;background:#0003;border:1px solid #ffffff12;align-items:center;gap:5px;padding:4px 5px;font-size:7px;transition:border-color .2s,background .2s,color .2s;display:flex;overflow:hidden}.weapon-slot.locked{opacity:.45}.weapon-slot .wpn-lock{opacity:.65;margin-left:auto;font-size:8px}.weapon-slot.unlocked .wpn-lock{opacity:0}.weapon-slot.locked .wpn-lock:after{content:"LOCK";letter-spacing:.08em;font-size:6px}.weapon-secondary{color:#dcd7c48c;font-family:var(--font-mono);letter-spacing:.09em;border-top:1px solid #ffffff0f;grid-column:1/-1;justify-content:space-between;gap:12px;padding-top:8px;font-size:8px;display:flex}.combo-badge{top:132px;left:max(var(--hud-pad), env(safe-area-inset-left));border-left:2px solid var(--amber-hot);opacity:1;transition:opacity .2s ease, transform .25s var(--ease-out);background:linear-gradient(90deg,#411f0c9e,#0000 95%);grid-template-rows:auto auto;grid-template-columns:auto 1fr;column-gap:10px;padding:8px 12px 8px 10px;display:grid;position:absolute;transform:translate(0)}.combo-x{color:var(--amber);font-family:var(--font-display);grid-row:1/3;align-self:center;font-size:27px;font-weight:700;line-height:1}.combo-label{color:var(--ink);font-family:var(--font-mono);letter-spacing:.16em;font-size:8px}.combo-count{color:#ffc07894;font-family:var(--font-mono);letter-spacing:.14em;font-size:7px}.combo-badge.pulse{animation:combo-pulse .3s var(--ease-out)}@keyframes combo-pulse{0%{filter:brightness(1.8);transform:translate(-6px)scale(.96)}to{filter:brightness();transform:translate(0)scale(1)}}.banner{text-align:center;opacity:0;min-width:420px;transition:opacity .32s ease, transform .4s var(--ease-out);pointer-events:none;background:linear-gradient(90deg,#0000,#080c078c 20% 80%,#0000);flex-direction:column;align-items:center;gap:5px;padding:12px 60px 14px;display:flex;position:absolute;top:184px;left:50%;transform:translate(-50%,-8px)}.banner:before,.banner:after{content:"";background:linear-gradient(90deg, transparent, var(--amber));opacity:.5;width:70px;height:1px;position:absolute;top:50%}.banner:before{right:calc(100% - 30px)}.banner:after{left:calc(100% - 30px);transform:rotate(180deg)}.banner.visible{opacity:1;transform:translate(-50%)}.banner-kicker{color:var(--amber);font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;font-size:8px}.banner-text{color:#fff0d4;font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;text-shadow:0 2px 22px #ffa03c2e,0 2px 8px #000000e6;font-size:clamp(18px,1.9vw,27px);font-weight:600}.toasts{left:max(var(--hud-pad), env(safe-area-inset-left));pointer-events:none;flex-direction:column-reverse;gap:6px;display:flex;position:absolute;bottom:164px}.toast{border-left:2px solid var(--amber);color:#f0ebdbd9;font-family:var(--font-mono);letter-spacing:.1em;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:toast-in .25s var(--ease-out) both, toast-out .4s 2.1s ease both;background:#090d08c2;align-items:center;gap:9px;padding:7px 11px 7px 9px;font-size:9px;display:flex}.toast.health{border-left-color:var(--acid)}.toast.danger{border-left-color:var(--danger)}.toast.muted{border-left-color:var(--ink-faint);color:var(--ink-dim)}.toast.muted:before{content:"·";color:var(--ink-faint)}@keyframes toast-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes toast-out{to{opacity:0;transform:translate(-6px)}}.crosshair{z-index:40;pointer-events:none;opacity:1;will-change:transform;width:40px;height:40px;transition:opacity .15s;position:fixed;top:0;left:0}.crosshair.is-hidden{opacity:0!important;visibility:hidden!important}.ch-ring{border:1px solid #ffd59eb3;border-radius:50%;transition:transform .12s,border-color .15s,opacity .15s;position:absolute;inset:11px;box-shadow:0 0 8px #ffb0581f}.crosshair:before,.crosshair:after{content:"";background:#ffd59e6b;position:absolute}.crosshair:before{width:1px;height:5px;top:50%;left:50%;transform:translate(-50%,-50%)}.ch-dot{background:#ffe7c0;border-radius:50%;width:3px;height:3px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 6px #ffc878bf}.ch-tick{background:#ffd59ed9;position:absolute}.ch-top,.ch-bottom{width:1px;height:6px;left:50%;transform:translate(-50%)}.ch-top{top:1px}.ch-bottom{bottom:1px}.ch-left,.ch-right{width:6px;height:1px;top:50%;transform:translateY(-50%)}.ch-left{left:1px}.ch-right{right:1px}.crosshair.firing .ch-ring{opacity:.55;transform:scale(1.38)}.hitmarker{z-index:41;pointer-events:none;opacity:0;will-change:transform, opacity;width:30px;height:30px;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.hitmarker span{transform-origin:0;background:#fff1d3;width:8px;height:1px;position:absolute;top:50%;left:50%;box-shadow:0 0 4px #ffc882cc}.hitmarker span:first-child{transform:rotate(45deg)translate(6px)}.hitmarker span:nth-child(2){transform:rotate(135deg)translate(6px)}.hitmarker span:nth-child(3){transform:rotate(225deg)translate(6px)}.hitmarker span:nth-child(4){transform:rotate(315deg)translate(6px)}.hitmarker.show{animation:.22s ease-out both hitmarker}.hitmarker.kill span{background:var(--amber-hot);height:2px}.hitmarker.weak span{background:#ffd873;height:2px;box-shadow:0 0 7px #ffc45af2}@keyframes hitmarker{0%{opacity:1;transform:translate(-50%,-50%)scale(.8)}45%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.2)}}.damage-indicators,.threat-indicators{z-index:39;pointer-events:none;position:absolute;inset:0;overflow:hidden}.damage-arc{width:190px;height:190px;transform:translate(-50%, -50%) rotate(var(--angle));animation:.95s ease-out forwards damage-arc;position:absolute;top:50%;left:50%}.damage-arc:before{content:"";filter:blur(.4px);background:radial-gradient(#ff5230f2,#ff523000 72%);border-radius:50%;width:54px;height:11px;position:absolute;top:1px;left:50%;transform:translate(-50%);box-shadow:0 0 18px #ff4624a6}@keyframes damage-arc{0%{opacity:0;transform:translate(-50%, -50%) rotate(var(--angle)) scale(.82)}12%{opacity:1}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--angle)) scale(1.16)}}.threat-marker{color:#ff8b63;font-family:var(--font-mono);letter-spacing:.12em;opacity:0;text-shadow:0 1px 5px #000,0 0 8px #000c;white-space:nowrap;align-items:center;gap:4px;font-size:7px;transition:opacity .18s;display:flex;position:absolute;transform:translate(-50%,-50%)}.threat-marker.active{opacity:.95}.threat-marker .tm-arrow{width:0;height:0;transform:rotate(var(--rot));filter:drop-shadow(0 0 5px);border-bottom:7px solid;border-left:4px solid #0000;border-right:4px solid #0000}.sound-toggle{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));z-index:80;border:1px solid var(--line);height:30px;color:var(--amber);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080c07b8;align-items:center;gap:6px;padding:0 9px 0 7px;transition:border-color .2s,background .2s,color .2s;display:flex;position:fixed}.sound-toggle:hover{border-color:var(--line-strong);color:#ffd89f;background:#141a0ee6}.sound-toggle svg{flex:none;width:16px;height:16px}.sound-toggle .icon-off{display:none}.sound-toggle.muted{color:var(--ink-faint)}.sound-toggle.muted .icon-on{display:none}.sound-toggle.muted .icon-off{display:block}.sound-label{font-family:var(--font-mono);letter-spacing:.16em;font-size:7px}.overlay{z-index:60;opacity:1;visibility:visible;justify-content:center;align-items:center;padding:clamp(20px,4vw,56px);transition:opacity .35s,visibility .35s;display:flex;position:absolute;inset:0;overflow-y:auto}.overlay.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.overlay-scrim{background:radial-gradient(at 68% 40%,#161f1114,#040703a8 70%,#030502e6),linear-gradient(90deg,#030603e6 0%,#030603ad 42%,#0306032e 100%);position:absolute;inset:0}.overlay-scrim:after{content:"";background-image:repeating-linear-gradient(90deg,#0000 0 119px,#ffc46e05 119px 120px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 72%);mask-image:linear-gradient(90deg,#000,#0000 72%)}.start-shell{z-index:1;width:min(1180px,100%);animation:shell-in .65s var(--ease-out) both;margin:auto;padding:2px 0;position:relative}@keyframes shell-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.brand-eyebrow{color:#ffc37a9e;font-family:var(--font-mono);letter-spacing:.23em;align-items:center;gap:8px;margin-bottom:12px;font-size:8px;display:flex}.status-light{background:var(--amber);border-radius:50%;width:5px;height:5px;animation:1.5s ease-in-out infinite live-pulse;display:inline-block;box-shadow:0 0 8px #ffb454cc}.game-title{font-family:var(--font-display);text-transform:uppercase;flex-direction:column;align-items:flex-start;margin:0;line-height:.8;display:flex;position:relative}.title-main{color:#f3ead5;letter-spacing:.035em;text-shadow:0 2px #211e13eb,0 8px #0c0e0873,0 28px 60px #0009;font-size:clamp(66px,9.4vw,136px);font-weight:800;position:relative}.title-main:after{content:attr(data-text);z-index:-1;color:#0000;-webkit-text-stroke:1px #ffb45438;position:absolute;top:0;left:0;transform:translate(4px,4px)}.title-sub{color:var(--amber);letter-spacing:.52em;text-indent:.08em;text-shadow:0 0 28px #ffaa4638;margin-top:6px;padding-left:4px;font-size:clamp(17px,2.3vw,32px);font-weight:600}.title-main:before{content:"";background:var(--amber-hot);width:4px;height:70%;position:absolute;top:16%;left:-18px;box-shadow:0 0 20px #ff642d4d}.brand-rule{align-items:center;gap:14px;width:min(760px,100%);margin-top:17px;display:flex}.brand-rule i{background:linear-gradient(90deg, var(--line-strong), transparent);flex:1;height:1px}.brand-rule em{color:#d1c6ab73;font-family:var(--font-mono);letter-spacing:.24em;white-space:nowrap;font-size:8px;font-style:normal}.briefing-card{border-left:2px solid var(--amber);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:linear-gradient(105deg,#0d120bd4,#080b0773 68%,#0000);grid-template-columns:minmax(0,1.25fr) minmax(300px,.78fr);gap:clamp(24px,5vw,70px);width:min(980px,100%);padding:clamp(18px,2.4vw,28px) clamp(20px,3vw,34px);display:grid}.kicker{color:var(--amber);font-family:var(--font-mono);letter-spacing:.23em;margin:0 0 10px;font-size:9px;font-weight:600}.briefing-lede{color:#e4e0ceb8;max-width:550px;margin:0 0 17px;font-size:clamp(12px,1.12vw,14px);line-height:1.75}.objective-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.objective-list li{color:#e4e0ce94;font-family:var(--font-mono);letter-spacing:.07em;align-items:baseline;gap:12px;font-size:9px;display:flex}.objective-list b{color:var(--amber);border:1px solid #ffb45442;padding:2px 4px;font-size:8px;font-weight:500}.briefing-note{border-top:1px solid #ffffff13;gap:10px;max-width:510px;margin-top:20px;padding-top:13px;display:flex}.briefing-note .status-light{background:var(--acid);flex:none;margin-top:5px;box-shadow:0 0 8px #c8f06c8c}.briefing-note p{color:#bebfa480;font-family:var(--font-mono);letter-spacing:.04em;margin:0;font-size:8px;line-height:1.7}.briefing-note b{color:#ebe3ccad;letter-spacing:.1em;font-weight:500}.controls-card{background:#05090473;border:1px solid #ffc77f26;align-self:center;padding:14px 16px 12px}.controls-head{color:var(--amber);font-family:var(--font-mono);letter-spacing:.16em;border-bottom:1px solid #ffffff12;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;font-size:8px;display:flex}.control-row{border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;gap:12px;min-height:30px;display:flex}.control-row>span:last-child{color:#dcd7c585;font-family:var(--font-mono);letter-spacing:.09em;text-align:right;font-size:7px}.control-keys{flex:none;gap:3px;display:flex}.control-keys kbd{min-width:20px;padding:0 4px}.gamepad-row>span:last-child{max-width:210px;line-height:1.6}.controls-foot{color:#c5c2ac4d;font-family:var(--font-mono);letter-spacing:.06em;margin-top:9px;font-size:7px}.start-actions{flex-wrap:wrap;align-items:center;gap:clamp(24px,5vw,58px);margin-top:clamp(20px,3vh,32px);display:flex}.btn{cursor:pointer;min-height:46px;font-family:var(--font-display);letter-spacing:.17em;text-transform:uppercase;transition:transform .18s var(--ease-out), background .2s, border-color .2s, color .2s;background:0 0;border:1px solid #0000;justify-content:space-between;align-items:center;gap:24px;padding:0 19px;font-size:11px;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:translateY(1px)scale(.995)}.btn:focus-visible{outline-offset:3px;outline:2px solid #ffe7c1}.btn-primary{color:#171206;clip-path:polygon(0 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%);background:repeating-linear-gradient(135deg,#0000 0 10px,#0000000e 10px 20px),linear-gradient(100deg,#ffc276,#ffad50 70%,#f28e35);min-width:246px;box-shadow:0 12px 32px #ff9c3721,inset 0 1px #ffffff59}.btn-primary:after{content:"";width:24%;height:180%;transition:left .5s var(--ease-out);background:linear-gradient(90deg,#0000,#ffffff59,#0000);position:absolute;top:-40%;left:-30%;transform:skew(-18deg)}.btn-primary:hover{filter:brightness(1.06);background-color:#ffc77f}.btn-primary:hover:after{left:118%}.btn-kbd{z-index:1;font-family:var(--font-mono);letter-spacing:.08em;border:1px solid #17120638;padding:3px 5px;font-size:7px;font-weight:600;position:relative}.btn-ghost{color:#f0e9d7b8;background:#ffbe6409;border-color:#ffc8823d;justify-content:center;min-width:200px}.btn-ghost:hover{color:#fff0d8;background:#ffbe6417;border-color:#ffc8828c}.btn kbd{color:#1811059e;background:#140e0514;border-color:#140e054d}.start-meta{gap:clamp(18px,3vw,38px);display:flex}.start-meta div{flex-direction:column;gap:3px;display:flex}.start-meta span{color:#c6c0aa57;font-family:var(--font-mono);letter-spacing:.14em;font-size:7px}.start-meta b{color:#eee7d3c7;font-family:var(--font-mono);letter-spacing:.08em;font-variant-numeric:tabular-nums;font-size:11px;font-weight:500}.audio-hint{color:#c4bfa952;font-family:var(--font-mono);letter-spacing:.12em;align-items:center;gap:8px;margin:24px 0 0;font-size:7px;display:flex}.pause-overlay,.end-overlay{z-index:65;background:#03050240}.pause-shell,.end-shell{z-index:1;text-align:center;border:1px solid var(--line);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px));background:linear-gradient(150deg,#11170df0,#060905eb);width:min(520px,100%);padding:clamp(24px,3vw,40px);position:relative;box-shadow:0 40px 100px #0000008c}.pause-kicker,.end-kicker{color:var(--amber);font-family:var(--font-mono);letter-spacing:.25em;font-size:8px}.pause-shell h2,.end-shell h2{font-family:var(--font-display);letter-spacing:.1em;margin:10px 0 8px;font-size:clamp(36px,5vw,54px);font-weight:700;line-height:1}.pause-actions{flex-direction:column;align-items:stretch;gap:8px;margin-top:22px;display:flex}.pause-actions .btn{justify-content:center;width:100%}.pause-actions .btn kbd{margin-left:auto}.settings-row{border-top:1px solid #ffffff12;align-items:center;gap:12px;margin-top:22px;padding-top:16px;display:flex}.settings-row label{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.1em;flex:none;font-size:8px}.settings-row output,.settings-row span{width:24px;color:var(--amber);font-family:var(--font-mono);text-align:right;font-size:9px}input[type=range]{appearance:none;background:linear-gradient(90deg, var(--amber) var(--fill,80%), #ffffff1f var(--fill,80%));cursor:pointer;outline:none;flex:1;height:3px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--amber);border-radius:50%;width:10px;height:10px;box-shadow:0 0 8px #ffb45466}input[type=range]::-moz-range-thumb{background:var(--amber);border:0;border-radius:50%;width:10px;height:10px}.pause-hint{color:#c4bfa947;font-family:var(--font-mono);letter-spacing:.08em;margin-top:18px;font-size:7px;line-height:1.6}.end-overlay.is-victory .end-shell:before{content:"";background:linear-gradient(90deg, transparent, var(--acid), transparent);height:3px;position:absolute;top:0;left:0;right:0}.end-overlay.is-victory .end-shell h2{color:#edf8d0;text-shadow:0 0 40px #c8f06c29}.end-stats{border-top:1px solid #ffffff14;border-left:1px solid #ffffff14;grid-template-columns:repeat(3,1fr);margin:24px 0 16px;display:grid}.end-stats div{background:#ffffff04;border-bottom:1px solid #ffffff14;border-right:1px solid #ffffff14;flex-direction:column;gap:6px;padding:15px 10px;display:flex}.end-stats span{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.14em;font-size:7px}.end-stats b{color:var(--ink);font-family:var(--font-mono);letter-spacing:.03em;font-variant-numeric:tabular-nums;font-size:16px;font-weight:500}.end-best{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.13em;font-size:8px}.boot-screen{z-index:100;background:radial-gradient(#171d10,#060904 64%,#030502 100%);justify-content:center;align-items:center;transition:opacity .65s,visibility .65s;display:flex;position:absolute;inset:0}.boot-screen.is-hidden{opacity:0;visibility:hidden}.boot-inner{text-align:center;flex-direction:column;align-items:center;width:min(340px,74vw);display:flex}.boot-emblem{place-items:center;width:86px;height:86px;margin-bottom:28px;display:grid;position:relative}.boot-emblem b{width:52px;height:52px;color:var(--amber);font-family:var(--font-display);border:1px solid #ffb75e75;border-radius:50%;place-items:center;font-size:25px;font-weight:700;display:grid;box-shadow:0 0 32px #ffa5421f,inset 0 0 20px #ffa5420f}.boot-ring{border:1px solid #ffbb6821;border-top-color:#ffbb68b8;border-radius:50%;animation:2.4s linear infinite boot-spin;position:absolute;inset:0}@keyframes boot-spin{to{transform:rotate(360deg)}}.boot-cross{background:#ffbe6e40;position:absolute}.boot-cross-a{width:126px;height:1px}.boot-cross-b{width:1px;height:126px}.boot-classified{color:#ffc0736b;font-family:var(--font-mono);letter-spacing:.24em;font-size:7px}.boot-title{color:var(--ink);font-family:var(--font-display);letter-spacing:.45em;text-indent:.45em;margin:10px 0 26px;font-size:22px;font-weight:700}.boot-bar{background:#ffc2731f;width:100%;height:2px;overflow:hidden}.boot-bar i{background:linear-gradient(90deg, #9d7c3b, var(--amber));width:0%;height:100%;transition:width .3s;display:block;box-shadow:0 0 12px #ffb4548c}.boot-status{color:#c0bca55c;font-family:var(--font-mono);letter-spacing:.18em;margin-top:12px;font-size:7px}.error-screen{z-index:110;text-align:center;background:radial-gradient(#1c130d,#060705 70%);justify-content:center;align-items:center;padding:30px;display:flex;position:absolute;inset:0}.error-screen h2{font-family:var(--font-display);letter-spacing:.1em;margin:10px 0 12px;font-size:clamp(32px,6vw,56px)}.error-screen p{color:#d7d0bc8c;max-width:440px;font-family:var(--font-mono);margin:0 auto;font-size:10px;line-height:1.8}.error-hint{color:#d7d0bc4d!important;margin-top:12px!important}@media (max-width:1060px){.hud-top{grid-template-columns:minmax(150px,190px) minmax(260px,1fr) minmax(180px,210px);right:82px}.score-panel{padding:12px 13px}.status-panel{padding:10px 12px}.briefing-card{grid-template-columns:minmax(0,1.1fr) minmax(270px,.9fr);gap:28px}.weapon-panel{width:292px}.radar-panel{width:204px}}@media (max-width:820px){:root{--hud-pad:12px}.hud-top{grid-template-columns:1fr 1fr;grid-template-areas:"score status""mission mission";gap:8px;right:64px}.score-panel{grid-area:score;min-height:0}.mission-panel{grid-area:mission;width:100%;margin-top:2px}.status-panel{grid-area:status}.score-value{margin:4px 0 5px;font-size:26px}.status-grid{margin-top:6px}.pad-status,.mission-foot{display:none}.mission-head{margin-bottom:5px}.mission-objective{margin-bottom:7px;font-size:10px}.boss-bar{width:70vw;top:154px}.banner{width:calc(100% - 24px);min-width:0;padding-inline:28px;top:194px}.banner:before,.banner:after{display:none}.radar-panel{width:152px;padding:7px}.radar-foot{display:none}.radar-head{margin-bottom:5px;font-size:7px}.weapon-panel{width:255px;padding:10px 12px}.weapon-main strong{font-size:15px}.weapon-ammo b{font-size:24px}.weapon-secondary{font-size:7px}.toasts{bottom:142px}.combo-badge{top:122px}.overlay{align-items:flex-start;padding:28px 22px}.start-shell{margin-top:auto;margin-bottom:auto}.briefing-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#090d08a1;grid-template-columns:1fr;gap:18px}.brand{margin-bottom:18px}.title-main{font-size:clamp(58px,13vw,90px)}.title-sub{letter-spacing:.38em;font-size:17px}.controls-card{display:none}.start-actions{gap:18px;margin-top:18px}.start-meta{gap:16px}.audio-hint{margin-top:16px}.sound-label{display:none}.sound-toggle{height:28px;padding:0 7px}}@media (max-width:560px){.radar-panel{display:none}.weapon-panel{width:220px}.weapon-secondary,.weapon-main strong span{display:none}.hud-top{right:54px}.combo-badge{top:158px}.brand-eyebrow{letter-spacing:.17em;font-size:6px}.title-sub{font-size:13px}.briefing-card{padding:16px}.briefing-lede{font-size:11px;line-height:1.6}.objective-list li{font-size:8px}.start-actions{flex-direction:column;align-items:stretch}.start-meta{justify-content:space-between}.btn-primary{width:100%}.audio-hint{font-size:6px}.end-stats{grid-template-columns:repeat(2,1fr)}.pause-shell,.end-shell{padding:24px 18px}.banner{top:174px}.toasts{bottom:112px}}@media (max-height:760px) and (min-width:821px){.overlay{align-items:flex-start;padding-top:24px;padding-bottom:24px}.start-shell{margin-top:auto;margin-bottom:auto}.brand{margin-bottom:14px}.title-main{font-size:clamp(60px,8vw,100px)}.title-sub{font-size:clamp(15px,2vw,24px)}.brand-rule{margin-top:11px}.briefing-card{padding-top:16px;padding-bottom:16px}.briefing-lede{margin-bottom:12px;line-height:1.6}.briefing-note{margin-top:13px;padding-top:10px}.start-actions{margin-top:16px}.audio-hint{margin-top:13px}.control-row{min-height:25px}}@media (prefers-reduced-motion:reduce){.grain,.live-dot,.status-light,#low-health-pulse{animation:none!important}}:root{--c64-black:#000;--c64-white:#f4f4ff;--c64-blue:#352879;--c64-blue-deep:#120d46;--c64-blue-panel:#171152;--c64-border:#8f86ff;--c64-border-soft:#5a50b8;--c64-cyan:#74e0e0;--c64-yellow:#ffe96e;--c64-green:#7ee06b;--c64-purple:#c47bff;--c64-red:#ff6b5e;--c64-orange:#ff9d5c;--c64-dim:#a6a2e8;--c64-grey:#6c6c8f;--bg:var(--c64-blue-deep);--bg-soft:var(--c64-blue-panel);--ink:var(--c64-white);--ink-dim:#c6c2ff;--ink-faint:var(--c64-dim);--amber:var(--c64-yellow);--amber-hot:var(--c64-orange);--acid:var(--c64-green);--danger:var(--c64-red);--line:var(--c64-border-soft);--line-strong:var(--c64-border);--panel:var(--c64-blue-panel);--panel-heavy:#0c0838;--font-display:"Press Start 2P", "C64 Pro Mono", "SFMono-Regular", Menlo, monospace;--font-body:"VT323", "SFMono-Regular", Menlo, Consolas, monospace;--font-mono:"Press Start 2P", "C64 Pro Mono", "SFMono-Regular", Menlo, monospace}html,body{background:var(--c64-blue-deep);color:var(--c64-white);font-family:var(--font-body);-webkit-font-smoothing:none;font-smooth:never;text-rendering:geometricprecision;font-size:18px}body{letter-spacing:.015em}#app{background:radial-gradient(at 50% 12%,#6e60dc47,#0000 55%),linear-gradient(#241c6c 0%,#171152 58%,#0b0730 100%)}#app:before{content:"";z-index:200;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 7px #6c5eb5,inset 0 0 0 9px #000,inset 0 0 0 12px #8f86ff}#app:after{content:"";z-index:199;pointer-events:none;opacity:.22;mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#00000038 0 1px,#0000 1px 3px);position:absolute;inset:0}::selection{background:var(--c64-yellow);color:var(--c64-black)}.hud-label,.hud-meta,.mission-foot,.radar-head,.radar-foot,.weapon-main strong span,.weapon-ammo span,.weapon-slot,.weapon-secondary,.combo-label,.combo-count,.banner-kicker,.toast,.threat-marker,.sound-label,.pause-kicker,.end-kicker,.end-stats span,.end-best,.settings-row label,.settings-row span,.pause-hint,.brand-eyebrow,.brand-rule em,.controls-head,.control-row>span:last-child,.controls-foot,.start-meta span,.audio-hint,.boot-classified,.boot-status{letter-spacing:.04em;text-transform:uppercase}.panel{background:var(--c64-blue-panel);border:3px solid var(--c64-border);-webkit-backdrop-filter:none;backdrop-filter:none;clip-path:none;box-shadow:inset 0 0 0 2px #000,6px 6px #000000b8}.panel:after,.panel-notch{display:none}.hud-label{color:var(--c64-cyan);font-family:var(--font-mono);letter-spacing:.06em;text-shadow:1px 1px #000;font-size:7px;font-weight:400}.live-dot{background:var(--c64-green);border-radius:0;width:6px;height:6px;box-shadow:0 0 0 1px #000,0 0 8px #7ee06be6}kbd{border:2px solid var(--c64-border);min-width:20px;height:18px;color:var(--c64-yellow);font-family:var(--font-mono);background:#000;border-radius:0;padding:0 4px;font-size:6px;box-shadow:2px 2px #000}.hud-top{right:100px}.score-panel{min-height:92px;padding:12px 14px 11px}.score-value{color:var(--c64-yellow);font-family:var(--font-display);letter-spacing:0;text-shadow:3px 3px #000;margin:7px 0 8px;font-size:clamp(19px,2.05vw,27px);font-weight:400;line-height:1}.hud-meta{color:var(--c64-dim);font-family:var(--font-mono);gap:12px;font-size:6px}.hud-meta b{color:var(--c64-white);font-weight:400}.mission-panel{border:3px solid var(--c64-border);text-shadow:none;background:#171152db;padding:8px 12px 9px;box-shadow:inset 0 0 0 2px #000,5px 5px #0009}.mission-head{margin-bottom:7px}.mission-head .hud-label{color:var(--c64-cyan)}.distance{color:var(--c64-yellow);font-family:var(--font-mono)}.distance b{font-size:12px;font-weight:400}.distance em{color:var(--c64-dim);margin-left:4px;font-size:7px}.mission-objective{color:var(--c64-white);font-family:var(--font-mono);letter-spacing:.04em;text-shadow:1px 1px #000;margin-bottom:8px;font-size:clamp(7px,.78vw,9px);font-weight:400}.progress-track{border:2px solid var(--c64-border-soft);background:#000;height:10px;box-shadow:inset 0 0 0 1px #000}.progress-track:before{background:repeating-linear-gradient(90deg,#0000 0 13px,#ffffff1f 13px 15px)}.progress-fill{background:repeating-linear-gradient(90deg, var(--c64-green) 0 6px, #4e9e43 6px 8px);box-shadow:0 0 10px #7ee06b73}.progress-marker{background:var(--c64-white);width:4px;height:16px;box-shadow:0 0 8px var(--c64-yellow);top:-5px}.progress-tick{background:#ffe96e73;width:2px;height:14px;top:-4px}.mission-foot{color:var(--c64-dim);font-family:var(--font-mono);margin-top:5px;font-size:5px}.mission-foot b{color:var(--c64-yellow);font-weight:400}.status-panel{padding:11px 13px 10px}.status-head{margin-bottom:6px}.health-value{color:var(--c64-white);font-family:var(--font-mono)}.health-value b{font-size:13px;font-weight:400}.health-value em{color:var(--c64-dim);font-size:6px}.health-track{border:2px solid var(--c64-border-soft);background:#000;height:12px;box-shadow:inset 0 0 0 1px #000}.health-track:after{background:repeating-linear-gradient(90deg,#0000 0 8px,#000000b8 8px 10px)}.health-track i{background:repeating-linear-gradient(90deg, var(--c64-green) 0 7px, #4fae48 7px 9px);box-shadow:0 0 10px #7ee06b59}.status-panel.warning .health-track i{background:repeating-linear-gradient(90deg, var(--c64-yellow) 0 7px, #b9a93f 7px 9px)}.status-panel.critical .health-track i{background:repeating-linear-gradient(90deg, var(--c64-red) 0 7px, #a83a36 7px 9px);box-shadow:0 0 12px #ff6b5e8c}.status-grid{margin-top:8px}.upgrade-line{color:var(--c64-dim);font-family:var(--font-mono);margin-top:6px;font-size:5px}.upgrade-line b{color:var(--c64-yellow);font-weight:400}.status-number{color:var(--c64-yellow);font-family:var(--font-mono);font-size:12px;font-weight:400}.lives-pips{gap:4px;height:10px;margin-top:8px}.life-pip{background:var(--c64-green);clip-path:none;opacity:1;border:2px solid #000;width:22px;height:8px;box-shadow:inset 0 0 0 1px #baffaa}.life-pip.spent{border-color:var(--c64-border-soft);box-shadow:none;opacity:.8;background:#2c1650}.combat-state{margin-top:6px}.state-chip{font-family:var(--font-mono);border-width:2px;padding:3px 5px;font-size:5px}.state-chip.brace{color:#baffaa;border-color:var(--c64-green);background:#000}.state-chip.cover{color:var(--c64-cyan);border-color:var(--c64-cyan);background:#000}.pad-status{color:var(--c64-dim);font-family:var(--font-mono);margin-top:7px;font-size:5px}.pad-status.active{color:var(--c64-green)}.boss-bar{border:3px solid var(--c64-red);clip-path:none;background:#170b32;padding:8px 10px 7px;top:138px;box-shadow:inset 0 0 0 2px #000,5px 5px #000000b3}.boss-name{font-family:var(--font-mono);margin-bottom:5px;font-size:6px}.boss-name span{color:var(--c64-dim)}.boss-name b{color:var(--c64-red);font-size:7px;font-weight:400}.boss-track{background:#000;border:2px solid #5a202a;height:10px}.boss-track i{background:repeating-linear-gradient(90deg, var(--c64-red) 0 7px, #a63b35 7px 9px);box-shadow:0 0 10px #ff6b5e8c}.radar-panel{width:234px;padding:9px}.radar-head,.radar-foot{color:var(--c64-cyan);font-family:var(--font-mono);font-size:6px}.radar-foot>span:first-child{border:2px solid var(--c64-border);width:18px;height:18px;color:var(--c64-yellow);font-size:7px}.radar-coords{color:var(--c64-dim);font-size:5px}.radar-frame{border:2px solid var(--c64-border-soft);background:#000;box-shadow:inset 0 0 24px #000000e6}.radar-frame:before{background-color:#0000;background-image:linear-gradient(90deg,#74e0e014 1px,#0000 1px),linear-gradient(0deg,#74e0e014 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:18px 18px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}#radar{image-rendering:pixelated;opacity:1}.weapon-panel{gap:7px 16px;width:340px;padding:12px 14px 11px}.weapon-main strong{color:var(--c64-white);font-family:var(--font-display);letter-spacing:.02em;text-shadow:2px 2px #000;font-size:clamp(9px,.92vw,12px);font-weight:400;line-height:1.35}.weapon-main strong span{color:var(--c64-dim);font-family:var(--font-mono);margin:4px 0 0;font-size:5px;font-weight:400;display:block}.weapon-ammo b{color:var(--c64-yellow);font-family:var(--font-display);text-shadow:2px 2px #000;font-size:24px;font-weight:400}.weapon-ammo span{color:var(--c64-dim);font-family:var(--font-mono);font-size:5px}.weapon-slots{gap:5px}.weapon-slot{border:2px solid var(--c64-border-soft);color:var(--c64-dim);font-family:var(--font-mono);background:#000;padding:5px;font-size:5px;box-shadow:2px 2px #000}.weapon-slot b{color:var(--c64-cyan);font-size:6px;font-weight:400}.weapon-slot.unlocked{color:var(--c64-white);border-color:var(--c64-border)}.weapon-slot.active{color:var(--c64-black);border-color:var(--c64-yellow);background:var(--c64-yellow);box-shadow:0 0 12px #ffe96e47,2px 2px #000}.weapon-slot.active b{color:#3b3000}.weapon-secondary{border-top:2px solid var(--c64-border-soft);color:var(--c64-dim);font-family:var(--font-mono);padding-top:7px;font-size:5px}.weapon-secondary kbd{min-width:16px;height:15px;font-size:5px}.combo-badge{border:3px solid var(--c64-purple);background:#150d3c;border-left-width:3px;padding:8px 11px;top:142px;box-shadow:4px 4px #000}.combo-x{color:var(--c64-yellow);font-family:var(--font-display);text-shadow:2px 2px #000;font-size:18px;font-weight:400}.combo-label{color:var(--c64-white);font-family:var(--font-mono);font-size:6px}.combo-count{color:var(--c64-purple);font-family:var(--font-mono);font-size:5px}.banner{border:3px solid var(--c64-yellow);background:#000;min-width:380px;padding:12px 36px 13px;top:190px;box-shadow:inset 0 0 0 2px #000,6px 6px #000000b3}.banner:before,.banner:after{display:none}.banner-kicker{color:var(--c64-cyan);font-family:var(--font-mono);font-size:6px}.banner-text{color:var(--c64-yellow);font-family:var(--font-display);letter-spacing:.04em;text-shadow:2px 2px #000;font-size:clamp(10px,1.15vw,15px);font-weight:400}.banner.danger{border-color:var(--c64-red)}.banner.danger .banner-text{color:var(--c64-red);text-shadow:2px 2px #000}.banner.danger .banner-kicker{color:var(--c64-orange)}.toasts{gap:5px;bottom:160px}.toast{border:2px solid var(--c64-cyan);color:var(--c64-cyan);font-family:var(--font-mono);-webkit-backdrop-filter:none;backdrop-filter:none;background:#000;border-left-width:2px;padding:6px 9px 6px 8px;font-size:6px;box-shadow:3px 3px #000000bf}.toast:before{content:">";color:var(--c64-yellow);font-size:9px}.toast.health{border-color:var(--c64-green);color:var(--c64-green)}.toast.health:before{content:"+";color:var(--c64-green)}.toast.danger{border-color:var(--c64-red);color:var(--c64-red)}.toast.danger:before{content:"!";color:var(--c64-red)}.toast.muted{border-color:var(--c64-grey);color:var(--c64-dim)}.ch-ring{border:2px solid var(--c64-yellow);border-radius:0;inset:10px;box-shadow:0 0 0 1px #000}.ch-dot{background:var(--c64-cyan);border-radius:0;width:4px;height:4px;box-shadow:0 0 0 1px #000}.ch-tick,.crosshair:before,.crosshair:after{background:var(--c64-yellow)}.crosshair.over-enemy .ch-ring{border-color:var(--c64-red);box-shadow:0 0 0 1px #000,0 0 12px #ff6b5e80}.hitmarker span{background:var(--c64-yellow);box-shadow:0 0 0 1px #000}.hitmarker.kill span{background:var(--c64-red)}.hitmarker.weak span{background:var(--c64-cyan)}.damage-arc:before{background:radial-gradient(#ff6b5ef2,#ff6b5e00 72%);border-radius:0}.threat-marker{color:var(--c64-orange);font-family:var(--font-mono);text-shadow:1px 1px #000;font-size:5px}.threat-marker.kind-mortar{color:var(--c64-yellow)}.threat-marker.kind-shell{color:var(--c64-orange)}.threat-marker.kind-truck{color:var(--c64-red)}.sound-toggle{border:2px solid var(--c64-border);height:32px;color:var(--c64-yellow);-webkit-backdrop-filter:none;backdrop-filter:none;background:#000;padding:0 9px;top:16px;right:16px;box-shadow:3px 3px #000000b3}.sound-toggle:hover{border-color:var(--c64-yellow);background:var(--c64-yellow);color:var(--c64-black)}.sound-label{font-family:var(--font-mono);font-size:5px}.crt-toggle{top:calc(max(16px, env(safe-area-inset-top)) + 40px);right:max(16px, env(safe-area-inset-right));z-index:80;border:2px solid var(--c64-border);height:32px;color:var(--c64-yellow);cursor:pointer;-webkit-backdrop-filter:none;backdrop-filter:none;background:#000;align-items:center;gap:6px;padding:0 9px;transition:border-color .2s,background .2s,color .2s;display:flex;position:fixed;box-shadow:3px 3px #000000b3}.crt-toggle:hover{border-color:var(--c64-yellow);background:var(--c64-yellow);color:var(--c64-black)}.crt-toggle svg{flex:none;width:18px;height:18px}.crt-toggle[aria-pressed=false]{border-color:var(--c64-border-soft);color:var(--c64-grey)}.crt-toggle .crt-label{font-family:var(--font-mono);font-size:5px}body.crt-disabled #app:after{opacity:0}body.crt-disabled .crt-toggle{opacity:.85}.overlay{padding:clamp(22px,4vw,56px)}.overlay-scrim{background:radial-gradient(at 50% 30%,#4c3eb4d1,#19125af5 62%,#090624 100%)}.overlay-scrim:after{opacity:.65;background:repeating-linear-gradient(0deg,#0000 0 2px,#00000029 2px 4px);-webkit-mask-image:none;mask-image:none}.start-shell{border:4px solid var(--c64-border);background:#0e0934e0;padding:clamp(18px,2.6vw,34px);box-shadow:inset 0 0 0 3px #000,10px 10px #000000b8}.brand{margin-bottom:clamp(16px,2.6vh,28px)}.brand-eyebrow{color:var(--c64-cyan);font-family:var(--font-mono);letter-spacing:.07em;text-shadow:1px 1px #000;margin-bottom:12px;font-size:6px}.status-light{background:var(--c64-green);border-radius:0;width:7px;height:7px;box-shadow:0 0 0 1px #000}.game-title{line-height:.9}.title-main{color:var(--c64-yellow);font-family:var(--font-display);letter-spacing:.015em;text-shadow:4px 4px #000,8px 8px #6f3d86;font-size:clamp(36px,5.7vw,78px);font-weight:400}.title-main:after,.title-main:before{display:none}.title-sub{color:var(--c64-cyan);font-family:var(--font-display);letter-spacing:.36em;text-shadow:2px 2px #000;margin-top:10px;padding-left:0;font-size:clamp(11px,1.5vw,19px);font-weight:400}.brand-rule{width:min(760px,100%);margin-top:15px}.brand-rule i{background:var(--c64-border-soft);height:3px}.brand-rule i:last-child{background:var(--c64-border-soft)}.brand-rule em{color:var(--c64-dim);font-family:var(--font-mono);font-size:5px}.briefing-card{border:3px solid var(--c64-border);background:var(--c64-blue-panel);-webkit-backdrop-filter:none;backdrop-filter:none;border-left-width:3px;gap:clamp(20px,4vw,54px);padding:clamp(18px,2.2vw,26px) clamp(18px,2.6vw,30px);box-shadow:inset 0 0 0 2px #000}.kicker{color:var(--c64-yellow);font-family:var(--font-mono);margin:0 0 9px;font-size:7px;font-weight:400}.briefing-lede{max-width:560px;color:var(--c64-white);font-family:var(--font-body);margin:0 0 15px;font-size:clamp(16px,1.35vw,20px);line-height:1.35}.objective-list{gap:6px}.objective-list li{color:var(--c64-dim);font-family:var(--font-body);letter-spacing:.02em;font-size:16px;line-height:1.2}.objective-list b{border:2px solid var(--c64-border-soft);color:var(--c64-yellow);font-family:var(--font-mono);padding:2px 4px;font-size:6px;font-weight:400}.briefing-note{border-top:2px solid var(--c64-border-soft);margin-top:16px;padding-top:11px}.briefing-note .status-light{background:var(--c64-green)}.briefing-note p{color:var(--c64-dim);font-family:var(--font-body);font-size:15px;line-height:1.35}.briefing-note b{color:var(--c64-cyan);font-family:var(--font-mono);font-size:6px;font-weight:400}.controls-card{border:3px solid var(--c64-border-soft);background:#000;padding:12px 14px 10px;box-shadow:inset 0 0 0 2px #171152}.controls-head{border-bottom:2px solid var(--c64-border-soft);color:var(--c64-yellow);font-family:var(--font-mono);margin-bottom:7px;padding-bottom:7px;font-size:6px}.controls-head span:last-child{color:var(--c64-dim)}.control-row{border-bottom:2px solid #211a5e;min-height:29px}.control-row>span:last-child{color:var(--c64-cyan);font-family:var(--font-mono);font-size:5px}.controls-foot{color:var(--c64-dim);font-family:var(--font-mono);margin-top:8px;font-size:5px}.start-actions{gap:clamp(20px,4vw,48px)}.btn{border:3px solid var(--c64-border);min-height:46px;color:var(--c64-cyan);font-family:var(--font-display);letter-spacing:.04em;background:#000;border-radius:0;padding:0 18px;font-size:9px;font-weight:400;overflow:visible;box-shadow:5px 5px #000c}.btn:active{transform:translate(2px,2px);box-shadow:2px 2px #000c}.btn:focus-visible{outline:3px solid var(--c64-white);outline-offset:3px}.btn-primary{background:var(--c64-yellow);min-width:246px;color:var(--c64-black);border-color:var(--c64-white);clip-path:none;box-shadow:5px 5px #000c}.btn-primary:after{display:none}.btn-primary:hover{background:var(--c64-cyan);color:var(--c64-black);filter:none}.btn-primary .btn-label{z-index:1;position:relative}.btn-kbd{font-family:var(--font-mono);border:2px solid #0000008c;padding:3px 5px;font-size:5px;font-weight:400}.btn-ghost{border-color:var(--c64-border);min-width:200px;color:var(--c64-cyan);background:#000}.btn-ghost:hover{border-color:var(--c64-yellow);color:var(--c64-yellow);background:#2a2068}.btn kbd{color:inherit;box-shadow:none;background:0 0;border-color:currentColor}.start-meta{gap:clamp(16px,2.4vw,30px)}.start-meta div{gap:4px}.start-meta span{color:var(--c64-dim);font-family:var(--font-mono);font-size:5px}.start-meta b{color:var(--c64-white);font-family:var(--font-mono);font-size:9px;font-weight:400}.start-meta div:nth-child(2) b{color:var(--c64-yellow)}.audio-hint{color:var(--c64-dim);font-family:var(--font-mono);margin:20px 0 0;font-size:5px}.pause-overlay .overlay-scrim,.end-overlay .overlay-scrim{background:radial-gradient(#1f176ec7,#07041cf5 68%),repeating-linear-gradient(0deg,#0000 0 2px,#0000002e 2px 4px)}.pause-shell,.end-shell{background:var(--c64-blue-panel);border:4px solid var(--c64-border);clip-path:none;padding:clamp(22px,3vw,38px);box-shadow:inset 0 0 0 3px #000,10px 10px #000000b8}.pause-kicker,.end-kicker{color:var(--c64-cyan);font-family:var(--font-mono);font-size:7px}.pause-shell h2,.end-shell h2{color:var(--c64-yellow);font-family:var(--font-display);letter-spacing:.03em;text-shadow:3px 3px #000;margin:12px 0 9px;font-size:clamp(22px,3.2vw,36px);font-weight:400;line-height:1.2}.pause-shell>p,.end-shell>p{color:var(--c64-dim);font-family:var(--font-body);letter-spacing:.01em;margin:0 0 20px;font-size:17px}.pause-actions{gap:9px}.settings-row{border-top:2px solid var(--c64-border-soft);margin-top:20px;padding-top:14px}.settings-row label{color:var(--c64-cyan);font-family:var(--font-mono);font-size:5px}.settings-row output,.settings-row span{color:var(--c64-yellow);font-family:var(--font-mono);font-size:7px}input[type=range]{background:repeating-linear-gradient(90deg, var(--c64-green) var(--fill,80%), #3d3a70 var(--fill,80%));border:2px solid var(--c64-border-soft);height:8px}input[type=range]::-webkit-slider-thumb{background:var(--c64-yellow);border-radius:0;width:12px;height:18px;box-shadow:2px 2px #000}input[type=range]::-moz-range-thumb{background:var(--c64-yellow);border-radius:0;width:12px;height:18px;box-shadow:2px 2px #000}.pause-hint{color:var(--c64-dim);font-family:var(--font-mono);margin-top:16px;font-size:5px;line-height:1.8}.end-shell{width:min(660px,100%)}.end-shell h2{color:var(--c64-red)}.end-overlay.is-victory .end-kicker,.end-overlay.is-victory .end-shell h2{color:var(--c64-green)}.end-overlay.is-victory .end-shell:before{background:var(--c64-green);height:4px}.end-stats{border-top:3px solid var(--c64-border-soft);border-left:3px solid var(--c64-border-soft);margin:22px 0 15px}.end-stats div{border-right:3px solid var(--c64-border-soft);border-bottom:3px solid var(--c64-border-soft);background:#000;gap:7px;padding:13px 8px}.end-stats span{color:var(--c64-dim);font-family:var(--font-mono);font-size:5px}.end-stats b{color:var(--c64-white);font-family:var(--font-mono);font-size:10px;font-weight:400}.end-stats div:first-child b{color:var(--c64-yellow)}.end-best{color:var(--c64-dim);font-family:var(--font-mono);font-size:5px}.end-best b{color:var(--c64-yellow);font-weight:400}.boot-screen{background:var(--c64-blue)}.boot-inner{border:4px solid var(--c64-border);text-align:left;background:#000;width:min(640px,86vw);padding:28px 26px 24px;box-shadow:inset 0 0 0 3px #171152,10px 10px #000c}.boot-emblem{justify-content:flex-start;align-items:center;width:auto;height:auto;margin-bottom:16px;display:flex}.boot-ring,.boot-cross{display:none}.boot-emblem b{background:var(--c64-border);color:#000;width:58px;height:38px;font-family:var(--font-display);place-items:center;font-size:22px;font-weight:400;display:grid;position:static;box-shadow:4px 4px #6f3d86}.boot-classified{color:var(--c64-cyan);font-family:var(--font-mono);text-align:left;font-size:6px}.boot-title{color:var(--c64-yellow);font-family:var(--font-display);letter-spacing:.03em;text-align:left;text-shadow:3px 3px #171152;margin:16px 0 14px;font-size:clamp(16px,4.2vw,34px);font-weight:400}.boot-bar{border:2px solid var(--c64-border);background:#000;height:16px;padding:3px}.boot-bar i{background:repeating-linear-gradient(90deg, var(--c64-green) 0 8px, #4b9b42 8px 10px);box-shadow:0 0 8px #7ee06b66}.boot-status{color:var(--c64-cyan);font-family:var(--font-mono);text-align:left;margin-top:12px;font-size:6px}.boot-ready{color:var(--c64-white);font-family:var(--font-mono);margin-top:16px;font-size:9px}.boot-ready .boot-cursor{vertical-align:-.15em;background:var(--c64-cyan);width:.65em;height:1em;margin-left:.25em;animation:.9s steps(2,end) infinite c64-cursor;display:inline-block}@keyframes c64-cursor{0%,49%{opacity:1}50%,to{opacity:0}}.error-screen{background:var(--c64-blue)}.error-screen>div{border:4px solid var(--c64-red);background:#000;padding:28px;box-shadow:inset 0 0 0 3px #2b0f2c,10px 10px #000c}.error-screen h2{font-family:var(--font-display);text-shadow:3px 3px #000;font-size:clamp(16px,2.4vw,26px);font-weight:400}.error-screen p,.error-hint{font-family:var(--font-body);font-size:17px}@media (max-width:820px){.hud-top{right:86px}.score-value{font-size:clamp(16px,3vw,22px)}.mission-objective{font-size:6px}.radar-panel{width:152px;padding:7px}.radar-foot{display:none}.weapon-panel{width:255px;padding:10px 12px}.weapon-main strong{font-size:9px}.weapon-ammo b{font-size:18px}.weapon-slot{font-size:4px}.weapon-secondary{font-size:5px}.banner{width:calc(100% - 24px);min-width:0;padding:10px 20px;top:250px}.banner-text{font-size:9px}.boss-bar{top:240px}.toasts{bottom:142px}.combo-badge{top:122px}.title-main{font-size:clamp(30px,9vw,54px)}.start-shell{padding:18px}.briefing-card{background:var(--c64-blue-panel)}}@media (max-width:560px){.hud-top{right:54px}.radar-panel{display:none}.weapon-panel{width:220px}.weapon-secondary,.weapon-main strong span{display:none}.banner{top:250px}.toasts{bottom:112px}.combo-badge{top:158px}.start-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;width:100%;display:grid}.start-meta div{min-width:0}.start-meta b{font-size:8px}.brand-eyebrow{letter-spacing:.04em;font-size:5px}.title-sub{letter-spacing:.24em;font-size:10px}.briefing-lede{font-size:15px}.objective-list li{font-size:14px}.briefing-card{padding:14px}.boot-inner{padding:20px 16px}}@media (max-width:820px){.crt-toggle{top:calc(max(16px, env(safe-area-inset-top)) + 36px);right:max(16px, env(safe-area-inset-right));height:28px;padding:0 7px}.crt-toggle .crt-label{display:none}}#game-canvas{touch-action:none}#touch-controls{z-index:60;pointer-events:none;font-family:var(--font-mono);display:none;position:fixed;inset:0}body.touch-capable.is-playing #touch-controls{display:block}.touch-stick{bottom:calc(18px + env(safe-area-inset-bottom));pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;width:122px;height:122px;position:absolute}.touch-move{left:calc(14px + env(safe-area-inset-left))}.touch-aim{right:calc(14px + env(safe-area-inset-right))}.touch-base{background:radial-gradient(circle,#74e0e024,#080c078c 68%),#00000047;border:2px solid #74e0e08c;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #00000073,0 0 18px #74e0e024}.touch-aim .touch-base{background:radial-gradient(circle,#ffb45429,#080c078c 68%),#00000047;border-color:#ffb45499}.touch-knob{border:2px solid var(--amber);will-change:transform;background:#0c120ad9;border-radius:50%;width:46px;height:46px;margin:-23px 0 0 -23px;position:absolute;top:50%;left:50%;box-shadow:inset 0 0 0 2px #0009,0 0 14px #ffb45459}.touch-aim .touch-knob{border-color:var(--c64-cyan,#74e0e0);box-shadow:inset 0 0 0 2px #0009,0 0 14px #74e0e059}.touch-stick.is-active .touch-base{border-color:var(--acid);box-shadow:inset 0 0 0 2px #00000073,0 0 26px #c8f06c57}.touch-label{color:var(--ink-faint);letter-spacing:.1em;white-space:nowrap;text-shadow:1px 1px #000;font-size:6px;position:absolute;bottom:-15px;left:50%;transform:translate(-50%)}.touch-actions{left:50%;bottom:calc(22px + env(safe-area-inset-bottom));pointer-events:auto;touch-action:none;grid-template-columns:repeat(2,54px);gap:7px;display:grid;position:absolute;transform:translate(-50%)}.touch-btn{width:54px;height:42px;color:var(--ink);font-family:var(--font-mono);letter-spacing:.04em;-webkit-tap-highlight-color:transparent;background:#0a0e09c2;border:2px solid #ffc27785;border-radius:0;padding:0;font-size:6px;box-shadow:inset 0 0 0 2px #00000080,3px 3px #0000008c}.touch-btn b{font-weight:400}.touch-btn.is-pressed{background:#ffb4543d;transform:translateY(1px);box-shadow:inset 0 0 0 2px #00000080,1px 1px #0000008c}.touch-use{color:var(--acid);border-color:#c8f06cb3}.touch-pause{top:calc(max(14px, env(safe-area-inset-top)) + 4px);right:max(14px, env(safe-area-inset-right));border:2px solid var(--c64-border,var(--line));width:40px;height:34px;color:var(--amber);font-family:var(--font-mono);pointer-events:auto;-webkit-tap-highlight-color:transparent;background:#0a0e09d1;font-size:9px;position:absolute}.touch-pause:active{background:#ffb45433}.interact-prompt{z-index:55;border:2px solid var(--acid,#c8f06c);color:var(--ink);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;pointer-events:none;background:#070a06e6;align-items:center;gap:10px;padding:9px 16px;font-size:8px;transition:opacity .15s;display:flex;position:fixed;bottom:178px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 2px #00000080,4px 4px #0000008c}.interact-prompt kbd{border-color:var(--acid,#c8f06c);min-width:24px;height:22px;color:var(--acid,#c8f06c);font-size:8px}.interact-prompt.is-hidden{opacity:0!important}.dungeon-fade{z-index:230;opacity:0;pointer-events:none;background:#000;place-items:center;transition:opacity .32s;display:grid;position:fixed;inset:0}.dungeon-fade span{color:var(--acid,#c8f06c);font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;text-shadow:2px 2px #000;font-size:clamp(10px,2vw,16px)}.dungeon-fade.active{opacity:.94}@media (pointer:coarse){.hud-top{top:calc(max(10px, env(safe-area-inset-top)));right:calc(max(10px, env(safe-area-inset-right)) + 8px)}.radar-panel{display:none}.weapon-panel{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 132px);left:calc(max(10px, env(safe-area-inset-left)));width:min(252px,60vw)}.weapon-secondary{display:none}.toasts{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 210px)}.banner{top:calc(max(12px, env(safe-area-inset-top)) + 152px)}.combo-badge{top:calc(max(12px, env(safe-area-inset-top)) + 212px)}.crt-toggle{top:calc(max(14px, env(safe-area-inset-top)) + 40px);right:max(14px, env(safe-area-inset-right))}.sound-toggle{top:calc(max(14px, env(safe-area-inset-top)) + 78px);right:max(14px, env(safe-area-inset-right))}.overlay{-webkit-overflow-scrolling:touch;padding:max(16px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));overflow-y:auto}.start-shell{max-height:none;margin-top:auto;margin-bottom:auto}.controls-card{display:none}.briefing-card{background:var(--c64-blue-panel,var(--panel-heavy))}.start-actions{flex-direction:column;align-items:stretch}.start-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;width:100%;display:grid}.start-meta b{font-size:8px}}@media (max-width:430px){.touch-stick{width:108px;height:108px}.touch-knob{width:40px;height:40px;margin:-20px 0 0 -20px}.touch-actions{bottom:calc(18px + env(safe-area-inset-bottom));grid-template-columns:repeat(2,46px);gap:5px}.touch-btn{width:46px;height:38px;font-size:5px}.weapon-panel{width:min(226px,64vw);bottom:calc(max(10px, env(safe-area-inset-bottom)) + 120px)}.interact-prompt{font-size:7px;bottom:162px}.hud-top{right:calc(max(8px, env(safe-area-inset-right)) + 4px)}}@media (max-height:520px) and (pointer:coarse){.touch-stick{width:96px;height:96px;bottom:calc(8px + env(safe-area-inset-bottom))}.touch-actions{bottom:calc(8px + env(safe-area-inset-bottom))}.weapon-panel{display:none}.toasts{bottom:calc(10px + env(safe-area-inset-bottom) + 106px)}.banner{top:calc(max(8px, env(safe-area-inset-top)) + 86px)}}body.touch-capable .crt-toggle,body.touch-capable .sound-toggle{display:none}@media (pointer:coarse){.hud-top{right:calc(max(10px, env(safe-area-inset-right)) + 54px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.score-panel,.status-panel{padding:10px 10px 9px}.status-grid{gap:4px}.status-number{font-size:11px}.hud-meta{gap:6px;font-size:5px}.mission-panel{padding:7px 9px 8px}.mission-objective{font-size:7px;line-height:1.3}.banner{top:calc(max(12px, env(safe-area-inset-top)) + 202px)}.combo-badge{top:calc(max(12px, env(safe-area-inset-top)) + 266px)}.toasts{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 228px)}.touch-pause{top:calc(max(10px, env(safe-area-inset-top)) + 2px)}}@media (max-width:430px) and (pointer:coarse){.hud-top{right:calc(max(8px, env(safe-area-inset-right)) + 48px)}.score-value{font-size:19px}.health-value b{font-size:11px}.status-number{font-size:10px}.banner{top:calc(max(10px, env(safe-area-inset-top)) + 194px)}}body.touch-capable .radar-panel{display:none}body.touch-capable .hud-top{right:calc(max(10px, env(safe-area-inset-right)) + 64px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}body.touch-capable .score-panel,body.touch-capable .status-panel{padding:10px 10px 9px}body.touch-capable .hud-meta{gap:6px;font-size:5px}body.touch-capable .mission-panel{padding:7px 9px 8px}body.touch-capable .mission-objective{font-size:7px;line-height:1.3}body.touch-capable .weapon-panel{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 132px);left:max(10px, env(safe-area-inset-left));width:min(252px,60vw)}body.touch-capable .weapon-secondary{display:none}body.touch-capable .banner{top:calc(max(12px, env(safe-area-inset-top)) + 228px)}body.touch-capable .combo-badge{top:calc(max(12px, env(safe-area-inset-top)) + 290px)}body.touch-capable .toasts{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 228px)}body.touch-capable .overlay{-webkit-overflow-scrolling:touch;padding:max(16px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));overflow-y:auto}body.touch-capable .start-shell{margin-top:auto;margin-bottom:auto}body.touch-capable .controls-card{display:none}body.touch-capable .start-actions{flex-direction:column;align-items:stretch}body.touch-capable .start-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;width:100%;display:grid}body.touch-capable .start-meta b{font-size:8px}@media (max-width:430px){body.touch-capable .hud-top{right:calc(max(8px, env(safe-area-inset-right)) + 58px)}body.touch-capable .score-value{font-size:19px}body.touch-capable .weapon-panel{width:min(226px,64vw);bottom:calc(max(10px, env(safe-area-inset-bottom)) + 120px)}body.touch-capable .banner{top:calc(max(10px, env(safe-area-inset-top)) + 222px)}}@media (max-height:520px){body.touch-capable .weapon-panel{display:none}body.touch-capable .toasts{bottom:calc(10px + env(safe-area-inset-bottom) + 112px)}body.touch-capable .banner{top:calc(max(8px, env(safe-area-inset-top)) + 92px)}body.touch-capable .touch-stick{width:96px;height:96px;bottom:calc(8px + env(safe-area-inset-bottom))}body.touch-capable .touch-actions{bottom:calc(8px + env(safe-area-inset-bottom))}}body.touch-capable .interact-prompt{bottom:calc(max(12px, env(safe-area-inset-bottom)) + 244px)}@media (max-height:520px){body.touch-capable .interact-prompt{bottom:calc(max(8px, env(safe-area-inset-bottom)) + 118px)}}.pause-toggles{justify-content:flex-start;gap:10px}.mini-toggle{border:2px solid var(--c64-border,var(--line));min-width:92px;color:var(--c64-cyan,var(--ink));font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#00000073;padding:8px 10px;font-size:7px}.mini-toggle:active,.mini-toggle[aria-pressed=true]{color:var(--c64-yellow,var(--amber));border-color:var(--c64-yellow,var(--amber))}body.touch-capable.is-paused #touch-controls,body.touch-capable.is-ended #touch-controls{display:none}body.touch-capable .panel{-webkit-backdrop-filter:none;backdrop-filter:none}
