:root{color-scheme:dark;--ink-1000: #070a0c;--ink-950: #0a0e10;--ink-900: #101619;--ink-850: #151d20;--ink-800: #1b2529;--steel-800: #263238;--steel-700: #35454c;--steel-600: #72858c;--steel-500: #8b9da3;--steel-400: #a8b6ba;--steel-300: #b7c1c3;--steel-200: #d3d8d7;--steel-100: #e8e9e4;--orange-700: #9c3f08;--orange-600: #d8630c;--orange-500: #f47b18;--orange-400: #ff9a2f;--cyan-700: #087481;--cyan-600: #0aa4b5;--cyan-500: #1bd0dd;--cyan-400: #64e7ed;--red-600: #d33c2f;--red-500: #f24f3f;--green-500: #69c98b;--black-a20: rgb(7 10 12 / 20%);--black-a40: rgb(7 10 12 / 40%);--black-a65: rgb(7 10 12 / 65%);--black-a82: rgb(7 10 12 / 82%);--white-a04: rgb(232 233 228 / 4%);--white-a07: rgb(232 233 228 / 7%);--white-a10: rgb(232 233 228 / 10%);--white-a16: rgb(232 233 228 / 16%);--white-a28: rgb(232 233 228 / 28%);--orange-a12: rgb(244 123 24 / 12%);--orange-a20: rgb(244 123 24 / 20%);--orange-a35: rgb(244 123 24 / 35%);--cyan-a10: rgb(27 208 221 / 10%);--cyan-a18: rgb(27 208 221 / 18%);--cyan-a35: rgb(27 208 221 / 35%);--red-a15: rgb(242 79 63 / 15%);--grid-line: rgb(145 160 165 / 7%);--grid-line-bright: rgb(145 160 165 / 13%);--shadow-panel: 0 24px 64px var(--black-a65);--shadow-hard: 8px 8px 0 var(--black-a40);--focus-ring: var(--cyan-400);--font-display: "Arial Narrow", "Aptos Narrow", "Segoe UI", sans-serif;--font-ui: "Segoe UI Variable Text", "Segoe UI", sans-serif;--font-mono: "Cascadia Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--clip-panel: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px) );--clip-button: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%);--clip-notch: polygon(18px 0, 100% 0, 100% calc(100% - 18px) , calc(100% - 18px) 100%, 0 100%, 0 18px);--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .12s;--duration-base: .22s}*,*:before,*:after{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:var(--ink-1000)}body{min-width:20rem;color:var(--steel-100);font-family:var(--font-ui);font-size:1rem;line-height:1.5;overscroll-behavior:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,output{font:inherit}button{min-width:44px;min-height:44px;margin:0;border:0;color:inherit}button:not(:disabled),input[type=range],input[type=checkbox]{cursor:pointer}button:disabled{cursor:not-allowed;filter:saturate(0);opacity:.45}button,input,a,[tabindex]{-webkit-tap-highlight-color:transparent}:where(button,input,select,summary):focus,:where(button,input,[tabindex]):focus-visible,[data-controller-focus].is-focused,[data-controller-focus][data-focused=true]{outline:2px solid var(--focus-ring);outline-offset:3px}::selection{color:var(--ink-1000);background:var(--cyan-500)}[hidden],.is-hidden{display:none!important}kbd{display:inline-grid;min-width:1.75rem;min-height:1.5rem;place-items:center;padding-inline:var(--space-1);border:1px solid var(--white-a28);border-bottom-color:var(--steel-600);border-radius:2px;color:var(--steel-200);background:var(--black-a40);box-shadow:inset 0 -2px 0 var(--black-a40);font-family:var(--font-mono);font-size:.625rem;line-height:1}.app-frame{position:fixed;inset:0;isolation:isolate;overflow:hidden;background:var(--ink-1000)}.ambient-grid{position:absolute;inset:0;z-index:-1;background:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px),radial-gradient(circle at 70% 40%,var(--cyan-a10),transparent 32%),radial-gradient(circle at 26% 78%,var(--orange-a12),transparent 30%),var(--ink-950);background-size:48px 48px,48px 48px,auto,auto,auto}.screen{position:fixed;inset:0;z-index:10;min-width:20rem;min-height:100svh;overflow:auto;overscroll-behavior:contain}.eyebrow,.hud-kicker,.panel-heading,.screen-header__instruction{margin:0;color:var(--steel-500);font-family:var(--font-mono);font-size:.6875rem;font-weight:700;letter-spacing:.16em;line-height:1.3;text-transform:uppercase}.eyebrow--accent{color:var(--orange-400)}.screen-title{margin:var(--space-2) 0 0;color:var(--steel-100);font-family:var(--font-display);font-size:clamp(2.5rem,5vw,5rem);font-stretch:condensed;font-weight:900;letter-spacing:-.045em;line-height:.9;text-transform:uppercase}.screen-title:after{display:block;width:3.5rem;height:3px;margin-top:var(--space-4);background:var(--orange-500);content:""}.boot-screen{display:grid;place-items:center;padding:var(--space-6);background:linear-gradient(135deg,transparent 0 48%,var(--orange-a12) 48% 50%,transparent 50%),radial-gradient(circle at center,var(--ink-850),var(--ink-1000) 68%)}.boot-screen:before,.boot-screen:after{position:fixed;width:5rem;height:5rem;border-color:var(--orange-500);content:""}.boot-screen:before{top:var(--space-6);left:var(--space-6);border-top:2px solid;border-left:2px solid}.boot-screen:after{right:var(--space-6);bottom:var(--space-6);border-right:2px solid;border-bottom:2px solid}.boot-panel{position:relative;width:min(29rem,100%);padding:var(--space-10) var(--space-8) var(--space-8);border:1px solid var(--steel-800);background:var(--black-a82);box-shadow:var(--shadow-panel);clip-path:var(--clip-panel);text-align:center}.boot-panel:before,.boot-panel:after{position:absolute;top:0;width:4rem;height:3px;background:var(--orange-500);content:""}.boot-panel:before{left:0}.boot-panel:after{right:0;background:var(--cyan-500)}.boot-mark{position:relative;width:5.5rem;height:5.5rem;margin:0 auto var(--space-6);transform:rotate(45deg)}.boot-mark__frame,.boot-mark__core{position:absolute;inset:0}.boot-mark__frame{border:5px solid var(--steel-300);clip-path:polygon(0 0,70% 0,100% 30%,100% 100%,30% 100%,0 70%)}.boot-mark__frame:before,.boot-mark__frame:after{position:absolute;background:var(--orange-500);content:""}.boot-mark__frame:before{top:22%;left:22%;width:58%;height:16%}.boot-mark__frame:after{right:18%;bottom:14%;width:42%;height:26%;background:var(--cyan-500)}.boot-mark__core{inset:34%;border:2px solid var(--orange-400);animation:boot-pulse 1.2s var(--ease-out) infinite alternate}.boot-panel__title{margin:var(--space-3) 0 var(--space-6);color:var(--steel-100);font-family:var(--font-display);font-size:clamp(2.75rem,8vw,4.5rem);font-weight:900;letter-spacing:-.04em;line-height:.9}.boot-meter{height:6px;overflow:hidden;border:1px solid var(--steel-700);background:var(--ink-1000)}.boot-meter span{display:block;width:42%;height:100%;background:var(--orange-500);box-shadow:0 0 var(--space-4) var(--orange-500);animation:boot-scan 1.4s var(--ease-out) infinite}.boot-panel__status,.boot-panel__serial{margin:var(--space-3) 0 0;color:var(--steel-400);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.08em}.boot-panel__serial{color:var(--steel-600)}.boot-panel--error{width:min(38rem,100%)}.boot-error{display:grid;gap:var(--space-4);margin-top:var(--space-6);text-align:left}.boot-error__headline{margin:0;color:var(--orange-500);font-family:var(--font-display);font-size:clamp(1.5rem,4vw,2.125rem);font-weight:900;letter-spacing:-.02em;line-height:1}.boot-error__detail{margin:0;color:var(--steel-300);font-size:.9375rem;line-height:1.55}.boot-error__code{margin:0;padding:var(--space-3) var(--space-4);border:1px solid var(--steel-800);background:var(--ink-1000);color:var(--steel-500);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.06em;overflow-wrap:anywhere}.boot-error__action{justify-self:start;margin-top:var(--space-2);padding:var(--space-3) var(--space-6);border:1px solid var(--orange-500);background:var(--orange-500);color:var(--ink-1000);cursor:pointer;font-family:var(--font-display);font-size:.8125rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.boot-error__action:hover,.boot-error__action:focus-visible{background:var(--orange-400);border-color:var(--orange-400)}.title-screen{display:grid;grid-template-columns:9rem minmax(0,1fr) 13rem;grid-template-rows:minmax(0,1fr) auto;gap:var(--space-6);padding:max(var(--space-8),env(safe-area-inset-top)) max(var(--space-10),env(safe-area-inset-right)) var(--space-6) max(var(--space-10),env(safe-area-inset-left));overflow:hidden;background:linear-gradient(108deg,rgb(7 10 12 / 92%) 0 34%,rgb(7 10 12 / 64%) 50%,rgb(7 10 12 / 8%) 72%,transparent 100%),linear-gradient(155deg,transparent 0 62%,var(--orange-a12) 62% 64%,transparent 64%),radial-gradient(circle at 72% 28%,var(--cyan-a10),transparent 28%)}.title-screen:before{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.9%,var(--cyan-a18) 50%,transparent 50.1%),linear-gradient(transparent 49.9%,var(--cyan-a10) 50%,transparent 50.1%);background-size:96px 96px;content:"";mask-image:linear-gradient(90deg,transparent 0 38%,var(--ink-1000) 72% 100%)}.title-screen:after{position:absolute;top:0;right:18%;width:1px;height:100%;background:linear-gradient(transparent,var(--cyan-a35) 20% 80%,transparent);box-shadow:5rem 0 0 var(--orange-a12);content:""}.title-rail{position:relative;z-index:1;color:var(--steel-600);font-family:var(--font-mono);font-size:.625rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.title-rail--left{display:flex;align-items:center;gap:var(--space-4);writing-mode:vertical-rl;transform:rotate(180deg)}.title-rail__line{width:1px;height:9rem;background:linear-gradient(transparent,var(--orange-500),transparent)}.title-rail--right{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:var(--space-8);border-left:1px solid var(--white-a10);padding-left:var(--space-6)}.system-stamp{position:relative;display:grid;width:8.5rem;height:8.5rem;place-items:center;border:1px solid var(--orange-a35);background:var(--orange-a12);clip-path:polygon(50% 0,100% 22%,88% 100%,12% 100%,0 22%)}.system-stamp:before{position:absolute;inset:.5rem;border:1px solid var(--orange-a20);content:""}.system-stamp span{color:var(--orange-400);font-family:var(--font-display);font-size:3.5rem;font-weight:900;line-height:.8}.system-stamp small{position:absolute;bottom:1.1rem;color:var(--orange-400);font-size:.5rem;letter-spacing:.2em}.title-status{display:grid;gap:var(--space-3);margin:0}.title-status div{display:flex;justify-content:space-between;gap:var(--space-3);border-bottom:1px solid var(--white-a10);padding-bottom:var(--space-2)}.title-status dt,.title-status dd{margin:0;font-size:.625rem}.title-status dd{color:var(--steel-300)}.title-status .is-alert{color:var(--orange-400)}.icon-command{display:grid;min-height:4.5rem;place-items:center;gap:var(--space-1);border:1px solid var(--steel-700);background:var(--ink-900);clip-path:var(--clip-button);color:var(--steel-300);font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.12em;transition:border-color var(--duration-fast),color var(--duration-fast),background var(--duration-fast)}.icon-command span:first-child{color:var(--orange-400);font-size:1.5rem;line-height:1}.icon-command:hover{border-color:var(--cyan-500);color:var(--steel-100);background:var(--ink-800)}.title-content{position:relative;z-index:1;align-self:center;width:min(57rem,100%);padding-block:var(--space-6)}.wordmark{display:flex;margin:var(--space-4) 0 var(--space-6);color:var(--steel-200);font-family:var(--font-display);font-size:clamp(5rem,9.3vw,9.25rem);font-stretch:condensed;font-weight:300;letter-spacing:-.075em;line-height:.72;text-transform:uppercase;transform:skew(-4deg);transform-origin:left bottom;white-space:nowrap}.wordmark strong{color:var(--orange-500);font-weight:900}.title-deck{margin:0;color:var(--steel-300);font-family:var(--font-display);font-size:clamp(1.125rem,2vw,1.5rem);font-weight:600;letter-spacing:.015em;line-height:1.3;text-transform:uppercase}.title-goal{display:grid;width:min(42rem,100%);grid-template-columns:auto minmax(0,1fr);gap:var(--space-1) var(--space-4);margin:calc(var(--space-3) * -1) 0 var(--space-5);border-left:2px solid var(--cyan-500);padding:var(--space-3) var(--space-4);background:linear-gradient(90deg,var(--black-a82),var(--black-a40))}.title-goal span{grid-column:1 / -1;color:var(--cyan-400);font-family:var(--font-mono);font-size:.5625rem;font-weight:800;letter-spacing:.14em}.title-goal strong{color:var(--steel-100);font-family:var(--font-display);font-size:.8125rem;letter-spacing:.045em;line-height:1.3}.title-goal small{color:var(--steel-400);font-size:.6875rem;line-height:1.35}.title-rule{position:relative;width:min(42rem,100%);height:1px;margin:var(--space-6) 0;background:var(--steel-700)}.title-rule:before{position:absolute;top:-3px;left:0;width:5rem;height:7px;background:var(--orange-500);clip-path:polygon(0 0,100% 0,92% 100%,0 100%);content:""}.title-rule span{position:absolute;top:-.25rem;right:0;width:.5rem;height:.5rem;border-top:1px solid var(--cyan-500);border-right:1px solid var(--cyan-500)}.title-actions{display:grid;width:min(42rem,100%);grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.command-button{position:relative;display:grid;min-height:4rem;grid-template-columns:2.25rem minmax(0,1fr) 1.5rem;align-items:center;gap:var(--space-2);overflow:hidden;border:1px solid var(--steel-700);padding:var(--space-3) var(--space-4);background:var(--ink-900);clip-path:var(--clip-button);color:var(--steel-200);text-align:left;transition:color var(--duration-fast),border-color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast) var(--ease-out)}.command-button:after{position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,var(--white-a07) 50%,transparent 80%);content:"";transform:translate(-120%);transition:transform var(--duration-base) var(--ease-out)}.command-button:hover{border-color:var(--cyan-500);background:var(--ink-800);color:var(--steel-100);transform:translateY(-2px)}.command-button:hover:after{transform:translate(120%)}.command-button:active{transform:translateY(0)}.command-button--primary{border-color:var(--orange-500);background:var(--orange-500);color:var(--ink-1000)}.command-button--primary:hover{border-color:var(--orange-400);background:var(--orange-400);color:var(--ink-1000)}.command-button__index{color:var(--steel-500);font-family:var(--font-mono);font-size:.625rem}.command-button--primary .command-button__index{color:var(--orange-700)}.command-button__label{display:grid;gap:.2rem;font-family:var(--font-display);font-size:.9375rem;font-weight:900;letter-spacing:.07em;line-height:1}.command-button__label small{color:var(--steel-400);font-family:var(--font-mono);font-size:.5rem;font-weight:700;letter-spacing:.1em}.command-button--primary .command-button__label small{color:var(--orange-700)}.command-button__arrow{justify-self:end;color:var(--cyan-400);font-family:var(--font-mono);font-size:1.125rem}.command-button--primary .command-button__arrow{color:var(--ink-1000)}.title-footer{position:relative;z-index:1;display:flex;grid-column:1 / -1;align-items:center;justify-content:space-between;border-top:1px solid var(--white-a10);padding-top:var(--space-4);color:var(--steel-600);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.08em}.title-footer p{margin:0}.title-footer__build{color:var(--orange-500)}.game-shell{position:fixed;inset:0;overflow:hidden;background:var(--ink-1000)}.game-shell.is-preview>:not(.game-canvas):not(.game-vignette):not(.game-scanlines){display:none!important}.game-shell.is-preview .game-vignette{background:radial-gradient(circle at 62% 40%,transparent 24%,rgb(7 10 12 / 62%) 100%)}.game-shell.is-preview .game-scanlines{opacity:.08}.game-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;outline:none;touch-action:none}.game-canvas:focus-visible{outline:2px solid var(--cyan-500);outline-offset:-4px}.game-vignette,.game-scanlines,.screen-shake,.damage-flash,.damage-numbers{position:absolute;inset:0;pointer-events:none}.game-vignette{z-index:1;background:radial-gradient(circle at center,transparent 46%,var(--black-a65) 100%)}.game-scanlines{z-index:2;background:repeating-linear-gradient(0deg,transparent 0 3px,var(--black-a20) 3px 4px);opacity:.25}.screen-shake{z-index:3;opacity:0}.screen-shake.is-active{animation:screen-shake .18s steps(2,end)}.damage-flash{z-index:4;background:radial-gradient(circle,transparent 34%,rgb(255 76 71 / 48%) 100%);opacity:0}.damage-flash.is-active{animation:damage-flash .18s var(--ease-out)}.damage-numbers{z-index:15;overflow:hidden}.damage-number{position:absolute;color:var(--orange-400);font-family:var(--font-display);font-size:1.5rem;font-weight:900;text-shadow:0 2px 0 var(--ink-1000);animation:damage-rise .7s var(--ease-out) forwards}.damage-number--player{color:var(--red-500);font-size:1.25rem}.damage-number--blocked{color:var(--cyan-400);font-size:.95rem;letter-spacing:.08em}.hud-top{position:absolute;z-index:10;top:max(var(--space-5),env(safe-area-inset-top));right:max(var(--space-6),env(safe-area-inset-right));left:max(var(--space-6),env(safe-area-inset-left));display:grid;grid-template-columns:minmax(15rem,1fr) auto minmax(15rem,1fr);align-items:start;pointer-events:none}.mission-block,.run-block{position:relative;background:linear-gradient(90deg,var(--black-a82),var(--black-a40));clip-path:var(--clip-button)}.mission-block{width:fit-content;min-width:16rem;border-left:3px solid var(--orange-500);padding:var(--space-2) var(--space-6) var(--space-3) var(--space-3)}.run-block{min-width:7.5rem;padding:var(--space-2) var(--space-4);text-align:center}.run-block:before,.run-block:after{position:absolute;top:0;width:1.5rem;height:100%;content:""}.run-block:before{left:0;border-left:1px solid var(--cyan-a35)}.run-block:after{right:0;border-right:1px solid var(--cyan-a35)}.hud-sector,.hud-run,.hud-objective{margin:0;font-family:var(--font-display);font-weight:800;line-height:1.1;text-transform:uppercase}.hud-sector{color:var(--steel-100);font-size:1.125rem;letter-spacing:.04em}.hud-objective{margin-top:var(--space-1);color:var(--orange-400);font-size:.6875rem;letter-spacing:.09em}.hud-run{color:var(--cyan-400);font-family:var(--font-mono);font-size:.875rem;letter-spacing:.08em}.hud-actions{display:flex;justify-self:end;gap:var(--space-2);pointer-events:auto}.hud-icon-button{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid var(--steel-600);background:var(--black-a82);clip-path:var(--clip-button);color:var(--steel-200);font-family:var(--font-mono);font-size:.75rem;transition:border-color var(--duration-fast),color var(--duration-fast),background var(--duration-fast)}.hud-icon-button:hover,.hud-icon-button[aria-pressed=true]{border-color:var(--orange-500);color:var(--orange-400);background:var(--black-a65)}.component-readout,.frame-meters{position:absolute;z-index:10;bottom:max(var(--space-6),env(safe-area-inset-bottom));left:max(var(--space-6),env(safe-area-inset-left));width:19rem;border:1px solid var(--white-a10);padding:var(--space-3);background:linear-gradient(135deg,var(--black-a82),var(--black-a65));box-shadow:var(--shadow-hard);clip-path:var(--clip-panel);pointer-events:none}.component-readout{bottom:calc(max(var(--space-6),env(safe-area-inset-bottom)) + 11.5rem)}.component-readout:empty{display:none}.component-readout:before,.frame-meters:before{position:absolute;top:0;right:18px;left:0;height:2px;background:var(--orange-500);content:""}#component-readout>.panel-heading{display:flex;gap:var(--space-3);justify-content:space-between;align-items:baseline;padding-right:1.25rem}#component-readout>.panel-heading>span{min-width:0;letter-spacing:.1em}#component-readout>.panel-heading>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#component-readout>.panel-heading>span:last-child{flex:none;color:var(--orange-500)}#component-readout>div:not(.meter-row):not(.panel-heading){display:grid;grid-template-columns:minmax(4.5rem,1fr) minmax(5rem,1.25fr) 2.75rem;align-items:center;gap:var(--space-2);min-height:2rem;border-bottom:1px solid var(--white-a07)}#component-readout>div:not(.meter-row):not(.panel-heading):last-child{border-bottom:0}#component-readout>div>span{overflow:hidden;color:var(--steel-400);font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}#component-readout>div>i{display:block;height:.375rem;overflow:hidden;background:var(--ink-1000);transform:skew(-10deg)}#component-readout>div>i>b{display:block;height:100%;background:var(--cyan-500)}#component-readout>div>strong{color:var(--steel-300);font-family:var(--font-mono);font-size:.5625rem;text-align:right}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3);color:var(--steel-400)}.status-light{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background:var(--green-500);box-shadow:0 0 var(--space-2) var(--green-500)}.meter-row+.meter-row{margin-top:var(--space-2)}.meter-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px;color:var(--steel-500);font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.08em}.meter-label output{color:var(--steel-300)}.meter{position:relative;height:.5rem;overflow:hidden;border:1px solid var(--steel-700);background:var(--ink-1000);transform:skew(-10deg)}.meter:after{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),var(--black-a40) calc(10% - 1px) 10%);content:""}.meter__fill{display:block;width:var(--meter-value);height:100%;transition:width var(--duration-base) var(--ease-out)}.meter__fill--health{background:var(--cyan-500)}.meter__fill--armor{background:var(--steel-300)}.meter__fill--heat{background:var(--orange-500)}.meter__fill--boost{background:var(--green-500)}.enemy-count{position:absolute;z-index:10;top:5.75rem;right:max(var(--space-6),env(safe-area-inset-right));display:flex;align-items:center;gap:var(--space-2);min-width:6.5rem;border-right:2px solid var(--red-600);padding:var(--space-2) var(--space-3);background:linear-gradient(270deg,var(--black-a82),transparent);color:var(--red-500);font-family:var(--font-mono);font-size:.875rem;font-weight:800;letter-spacing:.06em;pointer-events:none}.enemy-count__icon{font-size:1.75rem;line-height:1}.enemy-count>span:nth-child(2){font-size:1.25rem;font-weight:800;line-height:1}.enemy-count small{color:var(--steel-500);font-size:.5rem;letter-spacing:.12em}.boss-hud{position:absolute;z-index:11;top:5.75rem;left:50%;width:min(34rem,46vw);padding:var(--space-2) var(--space-3) var(--space-3);background:linear-gradient(180deg,var(--black-a82),transparent);transform:translate(-50%);pointer-events:none}.boss-hud__header{display:flex;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2);color:var(--steel-300);font-family:var(--font-mono);font-size:.6875rem;font-weight:800;letter-spacing:.12em}#phase-label{color:var(--orange-400)}.boss-meter{position:relative;height:.75rem;overflow:hidden;border:1px solid var(--red-600);padding:2px;background:var(--ink-1000);transform:skew(-12deg)}.boss-meter>span{display:block;width:var(--boss-value);height:100%;background:linear-gradient(90deg,var(--red-600),var(--orange-400));box-shadow:0 0 var(--space-3) var(--red-a15);transition:width var(--duration-base) var(--ease-out)}.boss-hud__ticks{height:4px;margin-top:3px;background:repeating-linear-gradient(90deg,var(--red-500) 0 1px,transparent 1px 12.5%);opacity:.5}.event-feed{position:absolute;z-index:10;top:28%;right:max(var(--space-6),env(safe-area-inset-right));display:grid;width:min(18rem,28vw);justify-items:end;gap:var(--space-1);pointer-events:none}.feed-line,.feed-item{margin:0;border-right:2px solid var(--cyan-500);padding:var(--space-1) var(--space-2);background:linear-gradient(270deg,var(--black-a65),transparent);color:var(--steel-300);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.05em;text-transform:uppercase;transition:opacity var(--duration-base)}.feed-item.is-fading{opacity:0}.feed-line[data-tone=warning],.feed-warning,.feed-critical{border-color:var(--orange-500);color:var(--orange-400)}.reticle{position:absolute;z-index:12;top:0;left:0;width:2.5rem;height:2.5rem;transform:translate(-50%,-50%);pointer-events:none}.reticle span{position:absolute;background:var(--cyan-400);box-shadow:0 0 4px var(--cyan-a35)}.reticle span:nth-child(1),.reticle span:nth-child(2){top:50%;width:.625rem;height:1px}.reticle span:nth-child(1){left:0}.reticle span:nth-child(2){right:0}.reticle span:nth-child(3),.reticle span:nth-child(4){left:50%;width:1px;height:.625rem}.reticle span:nth-child(3){top:0}.reticle span:nth-child(4){bottom:0}.reticle i{position:absolute;inset:.875rem;border:1px solid var(--cyan-400);transform:rotate(45deg)}.reticle:after{position:absolute;inset:-.25rem;border:1px solid var(--orange-400);border-radius:50%;content:"";opacity:0}.reticle.is-hit:after{animation:reticle-hit .18s var(--ease-out)}.reticle.is-hit span,.reticle.is-hit i{background:var(--orange-400);border-color:var(--orange-400);box-shadow:0 0 8px var(--orange-a35)}.reticle.is-kill:after{border-width:2px;animation-duration:.26s}.interact-prompt{position:absolute;z-index:14;bottom:9.5rem;left:50%;display:flex;min-height:2.75rem;align-items:center;gap:var(--space-2);border:1px solid var(--cyan-500);padding:var(--space-1) var(--space-3);background:var(--black-a82);clip-path:var(--clip-button);color:var(--steel-100);font-family:var(--font-mono);font-size:.6875rem;font-weight:700;letter-spacing:.08em;transform:translate(-50%)}.control-legend{position:absolute;z-index:10;bottom:max(var(--space-5),env(safe-area-inset-bottom));left:50%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--black-a65);clip-path:var(--clip-button);color:var(--steel-500);font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.05em;transform:translate(-50%);pointer-events:none}.control-legend span{display:flex;align-items:center;gap:var(--space-1);white-space:nowrap}.tutorial-prompt{position:absolute;z-index:16;bottom:max(var(--space-5),env(safe-area-inset-bottom));left:50%;width:min(30rem,calc(100% - 3rem));border:1px solid var(--cyan-500);border-left-width:3px;padding:var(--space-3) var(--space-4);background:linear-gradient(110deg,var(--black-a82),var(--black-a65));box-shadow:var(--shadow-hard);clip-path:var(--clip-button);transform:translate(-50%);transition:opacity var(--duration-fast),transform var(--duration-fast) var(--ease-out)}.tutorial-prompt.is-suspended{opacity:0;pointer-events:none;transform:translate(-50%,.5rem)}.tutorial-prompt__meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--cyan-400);font-family:var(--font-mono);font-size:.5625rem;font-weight:800;letter-spacing:.12em}.tutorial-prompt>strong{display:block;margin-top:var(--space-2);color:var(--steel-100);font-family:var(--font-display);font-size:.9375rem;letter-spacing:.07em}.tutorial-prompt p{margin:var(--space-1) 0 var(--space-2);color:var(--steel-300);font-size:.75rem;line-height:1.35}.tutorial-progress{height:3px;overflow:hidden;background:var(--ink-1000)}.tutorial-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--orange-500),var(--cyan-400));transition:width var(--duration-base) var(--ease-out)}body.has-tutorial .control-legend{opacity:0}.touch-controls{display:none}.forge-screen,.story-screen,.archive-screen,.end-screen{padding:max(var(--space-6),env(safe-area-inset-top)) max(var(--space-8),env(safe-area-inset-right)) max(var(--space-6),env(safe-area-inset-bottom)) max(var(--space-8),env(safe-area-inset-left));background:linear-gradient(130deg,var(--orange-a12),transparent 24%),linear-gradient(310deg,var(--cyan-a10),transparent 30%),var(--ink-950)}.forge-screen{display:grid;min-height:100svh;grid-template-rows:auto minmax(0,1fr) auto;padding-top:max(var(--space-8),env(safe-area-inset-top));gap:var(--space-5);overflow:hidden}.forge-screen:before,.story-screen:before,.archive-screen:before,.end-screen:before{position:fixed;inset:var(--space-4);border:1px solid var(--white-a07);pointer-events:none;content:""}.forge-screen:after{position:fixed;top:0;left:0;width:28%;height:4px;background:repeating-linear-gradient(135deg,var(--orange-500) 0 10px,var(--ink-1000) 10px 20px);content:""}.screen-header{position:relative;z-index:1;display:flex;align-items:end;justify-content:space-between;gap:var(--space-8);border-bottom:1px solid var(--white-a10);padding-bottom:var(--space-5)}.screen-header__instruction{padding-bottom:var(--space-1);color:var(--steel-500);text-align:right}.forge-layout{position:relative;z-index:1;display:grid;min-height:0;grid-template-columns:11.5rem minmax(0,1fr) 16rem;gap:var(--space-4)}.forge-categories{display:grid;min-height:0;grid-template-rows:repeat(6,minmax(4.25rem,1fr));gap:var(--space-2)}.forge-category{position:relative;display:grid;min-height:4.25rem;grid-template-columns:1.75rem minmax(0,1fr);grid-template-rows:auto auto;align-content:center;column-gap:var(--space-2);overflow:hidden;border:1px solid var(--steel-800);padding:var(--space-2) var(--space-3);background:var(--ink-900);clip-path:var(--clip-button);text-align:left;transition:border-color var(--duration-fast),background var(--duration-fast),color var(--duration-fast)}.forge-category>span{grid-row:1 / 3;align-self:center;color:var(--steel-600);font-family:var(--font-mono);font-size:.625rem}.forge-category strong{overflow:hidden;color:var(--steel-300);font-family:var(--font-display);font-size:.8125rem;letter-spacing:.06em;line-height:1.1;text-overflow:ellipsis}.forge-category small{color:var(--steel-600);font-family:var(--font-mono);font-size:.5rem;letter-spacing:.05em;line-height:1.1}.forge-category:hover{border-color:var(--steel-500);background:var(--ink-800)}.forge-category.is-selected,.forge-category[aria-pressed=true]{border-color:var(--orange-500);background:var(--orange-a12)}.forge-category.is-selected:after,.forge-category[aria-pressed=true]:after{position:absolute;top:0;right:0;border-width:0 .75rem .75rem 0;border-style:solid;border-color:transparent transparent var(--orange-400) transparent;content:""}.forge-category.is-selected strong,.forge-category[aria-pressed=true] strong,.forge-category.is-selected>span,.forge-category[aria-pressed=true]>span{color:var(--orange-400)}.forge-slots>.forge-category{display:block;min-height:0;border:0;padding:0;background:transparent;clip-path:none}.forge-slots>.forge-category+.forge-category{margin-top:var(--space-6);border-top:1px solid var(--white-a10);padding-top:var(--space-5)}.forge-slots>.forge-category:hover{background:transparent}.forge-slots .forge-category>header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-3)}.forge-slots .forge-category>header>span{color:var(--orange-400);font-family:var(--font-mono);font-size:.625rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.forge-slots .forge-category>header>strong{color:var(--steel-300);font-size:.75rem;text-align:right}.forge-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:var(--space-3)}.forge-slots{min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;border:1px solid var(--steel-800);padding:var(--space-4);background:var(--black-a40);scrollbar-color:var(--steel-600) var(--ink-950);scrollbar-width:thin}.module-empty,.archive-empty{display:grid;min-height:100%;place-items:center;align-content:center;gap:var(--space-2);color:var(--steel-600);text-align:center}.module-empty__mark,.archive-empty>span{display:grid;width:3.5rem;height:3.5rem;place-items:center;margin-bottom:var(--space-3);border:1px solid var(--steel-700);color:var(--orange-500);font-family:var(--font-mono);font-size:1.75rem;transform:rotate(45deg)}.module-empty strong,.archive-empty strong{color:var(--steel-400);font-family:var(--font-display);font-size:1rem;letter-spacing:.1em}.module-empty>span:last-child,.archive-empty p{margin:0;font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.08em}.module-section+.module-section{margin-top:var(--space-6);border-top:1px solid var(--white-a10);padding-top:var(--space-5)}.module-section__heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 var(--space-3);color:var(--steel-400);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.12em}.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:var(--space-3)}.module-card,[data-module]{position:relative;display:grid;min-height:11rem;grid-template-rows:auto 1fr auto;overflow:hidden;border:1px solid var(--steel-700);padding:var(--space-3);background:linear-gradient(135deg,var(--white-a04),transparent 46%),var(--ink-850);clip-path:var(--clip-panel);color:var(--steel-200);text-align:left;transition:border-color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast) var(--ease-out)}.module-card:hover,[data-module]:hover{border-color:var(--cyan-500);background-color:var(--ink-800);transform:translateY(-2px)}.module-card.is-selected,[data-module][aria-pressed=true],[data-module].is-selected{border-color:var(--orange-500);box-shadow:inset 0 0 0 1px var(--orange-a20)}.module-card__index,[data-module]>small{color:var(--steel-600);font-family:var(--font-mono);font-size:.5rem;letter-spacing:.08em}.module-card__name,[data-module]>strong{align-self:center;color:var(--steel-100);font-family:var(--font-display);font-size:1.125rem;letter-spacing:.05em;line-height:1;text-transform:uppercase}.module-card__meta,[data-module]>span{color:var(--cyan-400);font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.04em}[data-module]>small{display:-webkit-box;overflow:hidden;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.forge-preview{min-height:0;overflow-y:auto;border:1px solid var(--steel-800);padding:var(--space-3);background:var(--black-a65);clip-path:var(--clip-panel)}.preview-frame{position:relative;width:9rem;height:8rem;margin:var(--space-4) auto;border:1px solid var(--steel-800);background:linear-gradient(var(--grid-line-bright) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line-bright) 1px,transparent 1px),var(--ink-900);background-size:12px 12px}.preview-frame span{position:absolute;display:block;background:var(--steel-600);clip-path:polygon(18% 0,100% 12%,88% 100%,0 88%)}.preview-frame__head{top:18%;left:34%;width:34%;height:34%;border:2px solid var(--cyan-500);background:var(--ink-800)}.preview-frame__shoulder{top:45%;width:36%;height:38%}.preview-frame__shoulder--left{left:4%;transform:rotate(8deg)}.preview-frame__shoulder--right{right:4%;background:var(--orange-600);transform:rotate(-8deg)}.preview-frame__core{top:41%;left:44%;width:14%;height:18%;background:var(--cyan-500);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.preview-stats{display:grid;gap:1px;margin:0;background:var(--white-a07)}.preview-stats div{display:flex;min-height:2rem;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--ink-900)}.preview-stats dt,.preview-stats dd{margin:0;font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.05em}.preview-stats dt{color:var(--steel-600)}.preview-stats dd{overflow:hidden;color:var(--steel-200);text-align:right;text-overflow:ellipsis;white-space:nowrap}.preview-derived{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1);margin-top:var(--space-3)}.preview-derived div{display:grid;gap:var(--space-1);border-left:2px solid var(--steel-700);padding-left:var(--space-2)}.preview-derived span{color:var(--steel-600);font-family:var(--font-mono);font-size:.5rem}.preview-derived strong{color:var(--cyan-400);font-family:var(--font-display);font-size:1.5rem;line-height:1}.forge-readout{display:grid;gap:var(--space-1);border-left:2px solid var(--cyan-500);padding:var(--space-2) var(--space-3);background:var(--cyan-a10)}.forge-readout span,.forge-readout strong,.stat-grid span,.stat-grid strong{font-family:var(--font-mono);line-height:1.25}.forge-readout span{color:var(--steel-500);font-size:.5rem;letter-spacing:.08em}.forge-readout strong{color:var(--cyan-400);font-size:.6875rem;letter-spacing:.04em}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:var(--space-3);background:var(--white-a07)}.stat-grid>div{display:grid;min-height:3.5rem;align-content:center;gap:var(--space-1);padding:var(--space-2);background:var(--ink-900)}.stat-grid span{color:var(--steel-600);font-size:.5rem;letter-spacing:.08em}.stat-grid strong{color:var(--steel-100);font-size:.875rem}.forge-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--white-a10);padding-top:var(--space-4)}.forge-footer p{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--steel-500);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.08em}.forge-deploy{width:min(24rem,50vw)}.story-screen,.end-screen{display:grid;place-items:center;overflow:hidden}.story-screen:after,.end-screen:after{position:absolute;inset:10% 50%;border-right:1px solid var(--cyan-a35);border-left:1px solid var(--orange-a35);background:linear-gradient(90deg,var(--orange-a12),transparent 50%,var(--cyan-a10));content:"";transform:skew(-12deg)}.story-frame,.end-frame{position:relative;z-index:1;width:min(52rem,100%);border-top:2px solid var(--orange-500);border-bottom:1px solid var(--cyan-a35);padding:var(--space-10) clamp(var(--space-6),6vw,var(--space-16));background:linear-gradient(90deg,var(--black-a82),var(--black-a65));box-shadow:var(--shadow-panel);clip-path:var(--clip-panel)}.story-frame h2,.end-title{margin:var(--space-4) 0 var(--space-6);color:var(--steel-100);font-family:var(--font-display);font-size:clamp(3rem,7vw,6.5rem);font-weight:900;letter-spacing:-.055em;line-height:.86;text-transform:uppercase}.story-rule,.end-rule{position:relative;width:100%;height:1px;margin-bottom:var(--space-6);background:var(--steel-700)}.story-rule:after,.end-rule span{position:absolute;top:-3px;right:0;width:5rem;height:7px;background:var(--cyan-500);clip-path:polygon(10% 0,100% 0,90% 100%,0 100%);content:""}.story-copy,.end-copy{max-width:42rem;margin:0 0 var(--space-8);color:var(--steel-300);font-family:var(--font-display);font-size:clamp(1.125rem,2.2vw,1.5rem);font-weight:500;line-height:1.55}.story-continue{width:min(22rem,100%)}.story-index,.end-serial{position:absolute;z-index:1;right:var(--space-8);bottom:var(--space-6);margin:0;color:var(--steel-600);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.12em}.modal-screen{display:grid;place-items:center;padding:max(var(--space-6),env(safe-area-inset-top)) max(var(--space-6),env(safe-area-inset-right)) max(var(--space-6),env(safe-area-inset-bottom)) max(var(--space-6),env(safe-area-inset-left));background:linear-gradient(90deg,var(--black-a82),var(--black-a40) 50%,var(--black-a82)),repeating-linear-gradient(90deg,transparent 0 5rem,var(--white-a04) 5rem calc(5rem + 1px));backdrop-filter:blur(4px)}.modal-panel{position:relative;width:min(38rem,100%);border:1px solid var(--steel-700);padding:clamp(var(--space-6),5vw,var(--space-10));background:var(--ink-900);box-shadow:var(--shadow-panel),10px 10px 0 var(--black-a40);clip-path:var(--clip-panel)}.pause-panel{width:min(50rem,100%);max-height:calc(100svh - 3rem);overflow-y:auto}.controls-help{margin-top:var(--space-5);border-top:1px solid var(--white-a10);padding-top:var(--space-4)}.controls-help__heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.controls-help__heading span{color:var(--orange-400);font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.12em}.controls-help__heading h3{margin:0;color:var(--steel-200);font-family:var(--font-display);font-size:.875rem;letter-spacing:.08em}.controls-help__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.controls-help__grid div{display:grid;align-content:start;gap:var(--space-1);border-left:1px solid var(--steel-700);padding:var(--space-1) var(--space-3)}.controls-help__grid strong{color:var(--cyan-400);font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.08em}.controls-help__grid span{color:var(--steel-300);font-size:.6875rem;line-height:1.45}.modal-panel:before{position:absolute;top:0;left:0;width:35%;height:3px;background:var(--orange-500);content:""}.modal-panel__code{position:absolute;top:var(--space-5);right:var(--space-5);color:var(--steel-700);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.12em}.modal-copy{max-width:28rem;margin:var(--space-6) 0;color:var(--steel-400);font-size:.875rem}.modal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.controller-readout{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-8);border-top:1px solid var(--white-a10);padding-top:var(--space-4);color:var(--steel-600);font-family:var(--font-mono);font-size:.5625rem;letter-spacing:.08em}.controller-readout output{color:var(--cyan-400)}.settings-panel{width:min(52rem,100%);max-height:calc(100svh - 3rem);overflow-y:auto}.modal-panel__header{display:flex;align-items:start;justify-content:space-between;gap:var(--space-6);border-bottom:1px solid var(--white-a10);padding-bottom:var(--space-5)}.close-button{display:grid;width:2.75rem;height:2.75rem;flex:0 0 auto;place-items:center;border:1px solid var(--steel-700);background:var(--ink-850);clip-path:var(--clip-button);color:var(--steel-300);font-family:var(--font-mono);font-size:1.5rem;transition:border-color var(--duration-fast),color var(--duration-fast)}.close-button:hover{border-color:var(--orange-500);color:var(--orange-400)}.settings-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}.modal-panel__header,.settings-back{grid-column:1 / -1}.settings-group{display:grid;align-content:start;gap:var(--space-4);border-left:2px solid var(--steel-700);padding-left:var(--space-4)}.settings-group__heading{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-1)}.settings-group__heading span{color:var(--orange-500);font-family:var(--font-mono);font-size:.625rem}.settings-group__heading h3{margin:0;color:var(--steel-300);font-family:var(--font-display);font-size:1rem;letter-spacing:.08em}.range-control{display:grid;min-height:3rem;gap:var(--space-2)}.range-control>span,.toggle-control>span{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.range-control strong,.toggle-control strong{color:var(--steel-300);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.08em}.range-control output{color:var(--cyan-400);font-family:var(--font-mono);font-size:.625rem}.range-control input[type=range]{width:100%;height:2.75rem;margin:0;appearance:none;background:transparent}.range-control input[type=range]::-webkit-slider-runnable-track{height:4px;border:1px solid var(--steel-700);background:linear-gradient(90deg,var(--orange-500),var(--cyan-500))}.range-control input[type=range]::-moz-range-track{height:4px;border:1px solid var(--steel-700);background:linear-gradient(90deg,var(--orange-500),var(--cyan-500))}.range-control input[type=range]::-webkit-slider-thumb{width:1rem;height:1.5rem;margin-top:-.5rem;appearance:none;border:2px solid var(--ink-1000);border-radius:0;background:var(--steel-100);box-shadow:0 0 0 1px var(--cyan-500);clip-path:polygon(0 0,100% 0,100% 72%,72% 100%,0 100%)}.range-control input[type=range]::-moz-range-thumb{width:1rem;height:1.5rem;border:2px solid var(--ink-1000);border-radius:0;background:var(--steel-100);box-shadow:0 0 0 1px var(--cyan-500)}.select-control{display:grid;min-height:4rem;gap:var(--space-2);border-bottom:1px solid var(--white-a07)}.select-control>span{display:grid;gap:2px}.select-control strong{color:var(--steel-200);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.08em}.select-control small{color:var(--steel-400);font-size:.625rem;line-height:1.35}.select-control select{width:100%;min-height:2.75rem;border:1px solid var(--steel-600);border-radius:0;padding:var(--space-2) var(--space-3);background:var(--ink-1000);color:var(--steel-100);font-family:var(--font-mono);font-size:.6875rem;font-weight:800;letter-spacing:.08em}.select-control select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.toggle-control{position:relative;display:grid;min-height:3.5rem;grid-template-columns:minmax(0,1fr) 2.75rem;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--white-a07)}.toggle-control>span{display:grid;justify-content:start}.toggle-control small{color:var(--steel-600);font-family:var(--font-mono);font-size:.5rem;letter-spacing:.04em}.toggle-control input{position:absolute;width:2.75rem;height:2.75rem;right:0;opacity:0}.toggle-control i{position:relative;width:2.75rem;height:1.5rem;border:1px solid var(--steel-600);background:var(--ink-1000);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px))}.toggle-control i:after{position:absolute;top:.25rem;left:.25rem;width:.875rem;height:.875rem;background:var(--steel-500);content:"";transition:left var(--duration-fast) var(--ease-out),background var(--duration-fast)}.toggle-control input:checked+i{border-color:var(--cyan-500);background:var(--cyan-a10)}.toggle-control input:checked+i:after{left:1.5rem;background:var(--cyan-400)}.toggle-control input:focus-visible+i{outline:2px solid var(--focus-ring);outline-offset:3px}.settings-back{width:12rem;justify-self:end}.archive-screen{display:grid;place-items:center}.archive-shell{position:relative;z-index:1;display:grid;width:min(76rem,100%);max-height:calc(100svh - 6rem);grid-template-rows:auto auto minmax(0,1fr);border:1px solid var(--steel-800);background:var(--black-a82);box-shadow:var(--shadow-panel);clip-path:var(--clip-panel)}.archive-shell .screen-header{padding:var(--space-6) var(--space-8)}.archive-index{display:grid;grid-template-columns:5rem 2fr 1fr 7rem;gap:var(--space-4);border-top:1px solid var(--white-a10);border-bottom:1px solid var(--white-a10);padding:var(--space-2) var(--space-6);background:var(--ink-950);color:var(--steel-600);font-family:var(--font-mono);font-size:.5rem;letter-spacing:.1em}.archive-list{min-height:18rem;overflow-y:auto;padding:var(--space-4) var(--space-6)}.archive-entry{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:var(--space-4);border-bottom:1px solid var(--white-a10);padding:var(--space-4) var(--space-2)}.archive-entry:last-child{border-bottom:0}.archive-entry>span{display:grid;width:2.5rem;height:2.5rem;place-items:center;border:1px solid var(--steel-700);color:var(--steel-500);font-family:var(--font-mono);font-size:.625rem;transform:rotate(45deg)}.archive-entry>div{min-width:0}.archive-entry small{color:var(--orange-400);font-family:var(--font-mono);font-size:.5rem;letter-spacing:.1em}.archive-entry h3{margin:var(--space-1) 0;color:var(--steel-200);font-family:var(--font-display);font-size:1rem;letter-spacing:.05em;text-transform:uppercase}.archive-entry p{margin:0;color:var(--steel-500);font-size:.75rem;line-height:1.55}.archive-entry.is-locked{opacity:.48}.archive-entry.is-unlocked{border-left:2px solid var(--orange-500);background:linear-gradient(90deg,var(--orange-a12),transparent 40%)}.archive-empty{min-height:16rem}.archive-empty>span{color:var(--steel-600)}.end-screen{overflow-y:auto;background:linear-gradient(120deg,var(--red-a15),transparent 40%),var(--ink-1000)}.end-screen.is-victory{background:linear-gradient(120deg,var(--cyan-a18),transparent 42%),linear-gradient(300deg,var(--orange-a12),transparent 38%),var(--ink-1000)}.end-screen.is-victory:before{border-color:var(--cyan-a35)}.end-screen:before{border-color:var(--red-a15)}.end-frame{width:min(64rem,100%);border-top-color:var(--red-600)}.end-screen.is-victory .end-frame{border-top-color:var(--cyan-500)}.end-title{color:var(--steel-100);font-size:clamp(3rem,6vw,5.5rem)}.end-copy{max-width:46rem;margin-bottom:var(--space-5);font-size:clamp(1rem,1.8vw,1.25rem)}.end-stats{display:grid;grid-template-columns:1.4fr repeat(4,minmax(0,1fr));margin:0 0 var(--space-5);border-top:1px solid var(--white-a16);border-bottom:1px solid var(--white-a16)}.end-stats div{display:grid;gap:var(--space-1);border-right:1px solid var(--white-a10);padding:var(--space-3)}.end-stats div:last-child{border-right:0}.end-stats dt{color:var(--steel-400);font-family:var(--font-mono);font-size:.5625rem;font-weight:800;letter-spacing:.1em}.end-stats dd{margin:0;color:var(--steel-100);font-family:var(--font-display);font-size:1.125rem;font-weight:900;letter-spacing:.03em}.end-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.share-status{min-height:1.25rem;margin:var(--space-3) 0 0;color:var(--cyan-400);font-family:var(--font-mono);font-size:.625rem;letter-spacing:.06em}.share-status:empty{display:none}.toast{position:fixed;z-index:100;right:max(var(--space-6),env(safe-area-inset-right));bottom:max(var(--space-6),env(safe-area-inset-bottom));min-height:2.75rem;max-width:min(24rem,calc(100vw - 2rem));border:1px solid var(--cyan-500);padding:var(--space-2) var(--space-4);background:var(--ink-900);box-shadow:var(--shadow-hard);clip-path:var(--clip-button);color:var(--steel-100);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.05em;opacity:0;pointer-events:none;transform:translateY(1rem);transition:opacity var(--duration-base),transform var(--duration-base) var(--ease-out)}.toast.is-visible{opacity:1;transform:translateY(0)}@keyframes boot-pulse{0%{opacity:.35;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes boot-scan{0%{transform:translate(-110%)}to{transform:translate(340%)}}@keyframes screen-shake{0%,to{opacity:0;transform:translate(0)}25%{opacity:.16;transform:translate(-4px,2px)}50%{opacity:.08;transform:translate(4px,-3px)}75%{opacity:.14;transform:translate(-2px,-1px)}}@keyframes reticle-hit{0%{opacity:.9;transform:scale(.65)}to{opacity:0;transform:scale(1.45)}}@keyframes damage-flash{0%{opacity:.8}to{opacity:0}}@keyframes damage-rise{0%{opacity:1;transform:translate(-50%) scale(.8)}to{opacity:0;transform:translate(-50%,-4rem) scale(1.15)}}@media(pointer:coarse),(max-width:700px){.touch-controls{position:absolute;z-index:20;right:max(var(--space-3),env(safe-area-inset-right));bottom:max(var(--space-3),env(safe-area-inset-bottom));left:max(var(--space-3),env(safe-area-inset-left));display:grid;grid-template-columns:5.5rem minmax(8.75rem,1fr) 5.5rem;align-items:end;justify-content:space-between;gap:var(--space-2);pointer-events:none;user-select:none}.touch-stick,.touch-action{pointer-events:auto;touch-action:none}.touch-stick{position:relative;width:5.5rem;height:5.5rem;border:1px solid var(--steel-500);border-radius:50%;background:var(--black-a40);box-shadow:inset 0 0 0 .5rem var(--black-a20);color:var(--steel-500);opacity:.82}.touch-stick__ring{position:absolute;inset:.75rem;border:1px dashed var(--steel-600);border-radius:50%;transform:translate(var(--stick-x, 0px),var(--stick-y, 0px))}.touch-stick__axis{position:absolute;top:50%;left:12%;width:76%;height:1px;background:var(--steel-700)}.touch-stick__axis:after{position:absolute;top:-2.25rem;left:50%;width:1px;height:4.5rem;background:var(--steel-700);content:""}.touch-stick__n,.touch-stick__core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.touch-stick__n{top:.5rem;left:50%;color:var(--orange-400);font-family:var(--font-mono);font-size:.5rem;transform:translate(-50%)}.touch-stick__core{width:.625rem;height:.625rem;border:1px solid var(--cyan-400);transform:translate(calc(-50% + var(--stick-x, 0px)),calc(-50% + var(--stick-y, 0px))) rotate(45deg)}.touch-stick:active,.touch-stick.is-active{border-color:var(--cyan-400);background:var(--cyan-a10);opacity:1}.touch-actions{display:grid;width:8.75rem;grid-template-columns:repeat(3,2.75rem);grid-template-rows:repeat(2,2.75rem);gap:var(--space-1);justify-self:center;pointer-events:auto}.touch-action{display:grid;min-width:2.75rem;min-height:2.75rem;place-items:center;border:1px solid var(--steel-500);background:var(--black-a65);clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,0 100%);color:var(--steel-300);font-family:var(--font-mono);font-size:.5625rem;font-weight:800;letter-spacing:.04em}.touch-action--fire{grid-column:span 2;border-color:var(--orange-500);background:var(--orange-500);color:var(--ink-1000);font-size:.6875rem}.touch-action:active,.touch-action.is-active{border-color:var(--cyan-400);background:var(--cyan-a18);color:var(--cyan-400)}.touch-action--fire:active,.touch-action--fire.is-active{border-color:var(--orange-400);background:var(--orange-400);color:var(--ink-1000)}.run-block{display:none}.frame-meters{top:7.25rem;right:max(var(--space-3),env(safe-area-inset-right));bottom:auto;left:max(var(--space-3),env(safe-area-inset-left));display:grid;width:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);padding:var(--space-2)}.component-readout{top:11.5rem;right:max(var(--space-3),env(safe-area-inset-right));bottom:auto;left:max(var(--space-3),env(safe-area-inset-left));display:grid;width:auto;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-1);padding:var(--space-1)}.component-readout .panel-heading{grid-column:1 / -1;margin:0;font-size:.4375rem;line-height:1}#component-readout>div:not(.meter-row):not(.panel-heading){min-height:.875rem;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto .125rem;gap:0 var(--space-1)}#component-readout>div>span,#component-readout>div>strong{font-size:.5625rem;line-height:1}#component-readout>div>i{height:.125rem;grid-column:1 / -1}.frame-meters .panel-heading{display:none}.meter-row+.meter-row{margin-top:0}.meter-label{margin-bottom:.125rem;font-size:.4375rem;line-height:1}.frame-meters .meter{height:.375rem}.enemy-count{top:5rem;right:max(var(--space-3),env(safe-area-inset-right));left:auto;min-width:0;padding:var(--space-1) var(--space-2)}.boss-hud{top:5.25rem;right:auto;left:max(var(--space-3),env(safe-area-inset-left));width:min(13rem,calc(100vw - 6rem));padding:var(--space-1) var(--space-2);transform:none}.boss-hud__header{margin-bottom:var(--space-1);font-size:.5rem;line-height:1}.boss-meter{height:.5rem}.boss-hud__ticks{height:2px;margin-top:2px}.event-feed{top:14.5rem;right:var(--space-3);width:9.5rem}.control-legend{display:none}.interact-prompt{bottom:7.25rem}.tutorial-prompt{bottom:max(7.25rem,calc(env(safe-area-inset-bottom) + 7.25rem));width:calc(100% - 1.5rem);padding:var(--space-2) var(--space-3)}.tutorial-prompt>strong{margin-top:var(--space-1);font-size:.8125rem}.tutorial-prompt p{font-size:.6875rem}body.has-tutorial .interact-prompt{bottom:14.5rem}}@media(max-width:1100px){.title-screen{grid-template-columns:4rem minmax(0,1fr) 11rem;padding-inline:var(--space-8) var(--space-6)}.wordmark{font-size:clamp(4.5rem,10vw,7rem)}.forge-screen{padding-inline:var(--space-6)}.forge-layout{grid-template-columns:9.5rem minmax(0,1fr) 13rem}.forge-category{padding-inline:var(--space-2)}}@media(max-width:900px){.title-screen{grid-template-columns:3rem minmax(0,1fr)}.title-rail--right{display:none}.title-content{grid-column:2}.wordmark{font-size:clamp(4.75rem,13vw,7rem)}.forge-screen{height:auto;min-height:100svh;overflow:auto}.forge-layout{grid-template-columns:9rem minmax(0,1fr);grid-template-rows:minmax(29rem,1fr) auto}.forge-categories,.forge-slots{grid-row:1}.forge-preview{display:grid;grid-column:1 / -1;grid-template-columns:10rem minmax(12rem,1fr) minmax(12rem,1fr);gap:var(--space-4)}.forge-preview .panel-heading{grid-column:1 / -1;margin-bottom:0}.preview-frame{margin-block:0}.settings-panel{grid-template-columns:1fr}.modal-panel__header,.settings-back{grid-column:1}.controls-help__grid{grid-template-columns:1fr}}@media(max-width:700px){.ambient-grid{background-size:32px 32px,32px 32px,auto,auto,auto}.screen{min-height:100svh}.hud-top{grid-template-columns:minmax(0,1fr) auto}.mission-block{width:100%;min-width:0;max-width:14rem;padding-right:var(--space-4)}.hud-objective{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-block{display:none}.boot-panel{padding:var(--space-8) var(--space-5) var(--space-6)}.title-screen{display:flex;min-height:100svh;flex-direction:column;justify-content:center;gap:var(--space-5);padding:max(var(--space-6),env(safe-area-inset-top)) var(--space-5) max(var(--space-5),env(safe-area-inset-bottom));background:linear-gradient(180deg,#070a0c73,#070a0cad 48%,#070a0ce5),radial-gradient(circle at 70% 28%,var(--cyan-a10),transparent 32%)}.title-screen:after{right:8%}.title-rail--left{display:none}.title-rail--right{position:absolute;top:max(var(--space-5),env(safe-area-inset-top));right:max(var(--space-5),env(safe-area-inset-right));display:block;width:3rem}.title-rail--right .system-stamp,.title-rail--right .title-status,.title-rail--right .icon-command>span:last-child{display:none}.title-rail--right .icon-command{width:3rem;min-height:3rem;padding:0}.title-content{width:100%;padding:0}.wordmark{display:block;margin-block:var(--space-5) var(--space-4);font-size:clamp(4rem,21vw,6.5rem);line-height:.7}.wordmark span,.wordmark strong{display:block}.title-deck{font-size:1rem}.title-goal{grid-template-columns:1fr;gap:var(--space-1);margin-top:calc(var(--space-2) * -1);padding:var(--space-2) var(--space-3)}.title-goal span{grid-column:auto}.title-rule{margin-block:var(--space-5)}.title-actions{grid-template-columns:1fr}.command-button{min-height:3.5rem}.title-footer{width:100%}.title-footer>p:first-child{display:none}.title-footer__build{margin-left:auto!important}.hud-top{top:max(var(--space-3),env(safe-area-inset-top));right:max(var(--space-3),env(safe-area-inset-right));left:max(var(--space-3),env(safe-area-inset-left));grid-template-columns:minmax(0,1fr) auto;gap:var(--space-1)}.mission-block{min-width:0;max-width:calc(100% - 6rem);padding:var(--space-1) var(--space-3) var(--space-2) var(--space-2)}.hud-sector{overflow:hidden;font-size:.8125rem;text-overflow:ellipsis;white-space:nowrap}.hud-objective{display:-webkit-box;max-width:none;overflow:hidden;font-size:.625rem;line-height:1.2;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.run-block{min-width:4.5rem;padding-inline:var(--space-2)}.hud-kicker{font-size:.5rem}.hud-run{font-size:.6875rem}.hud-actions{gap:var(--space-1)}.hud-icon-button{width:2.75rem;height:2.75rem}.feed-line,.feed-item{font-size:.5rem}.reticle{width:2rem;height:2rem}.interact-prompt{bottom:6.5rem}.forge-screen,.story-screen,.archive-screen,.end-screen{padding:max(var(--space-5),env(safe-area-inset-top)) var(--space-4) max(var(--space-5),env(safe-area-inset-bottom))}.forge-screen{display:block;overflow:auto}.forge-screen:before,.story-screen:before,.archive-screen:before,.end-screen:before{inset:var(--space-2)}.screen-header{align-items:start;padding-bottom:var(--space-4)}.screen-header__instruction{display:none}.screen-title{font-size:clamp(2.5rem,12vw,4rem)}.forge-layout{display:block}.forge-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,4rem);gap:var(--space-1);margin-top:var(--space-4)}.forge-category{min-height:4rem;grid-template-columns:1.25rem minmax(0,1fr);padding:var(--space-1) var(--space-2)}.forge-category small{display:none}.forge-category strong{font-size:.6875rem}.forge-slots{min-height:25rem;max-height:36rem;margin-top:var(--space-3);padding:var(--space-3)}.module-grid{grid-template-columns:1fr}[data-module]{min-height:8.5rem}.forge-preview{display:block;margin-top:var(--space-3)}.preview-frame{margin-block:var(--space-4)}.forge-footer{margin-top:var(--space-4)}.forge-footer p{display:none}.forge-deploy{width:100%}.story-frame,.end-frame{padding:var(--space-8) var(--space-5)}.story-frame h2{font-size:clamp(2.5rem,12vw,4rem)}.end-screen{place-items:start center}.end-title{overflow-wrap:normal;font-size:clamp(2.25rem,9.5vw,3.25rem)}.story-copy,.end-copy{font-size:1rem}.story-continue{width:100%}.end-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.end-stats div:first-child{grid-column:1 / -1}.end-stats div:nth-child(3){border-right:0}.end-actions{grid-template-columns:1fr}.end-actions .command-button{min-height:3.5rem}.story-index,.end-serial{display:none}.modal-screen{align-items:center;padding:max(var(--space-3),env(safe-area-inset-top)) var(--space-3) max(var(--space-3),env(safe-area-inset-bottom))}.modal-panel{max-height:calc(100svh - 1.5rem);overflow-y:auto;padding:var(--space-6) var(--space-5);box-shadow:var(--shadow-panel)}.modal-actions{grid-template-columns:1fr}.settings-panel{display:block}.settings-group+.settings-group{margin-top:var(--space-6)}.settings-back{width:100%;margin-top:var(--space-6)}.archive-shell{max-height:calc(100svh - 2rem)}.archive-shell .screen-header{padding:var(--space-5)}.archive-index{display:none}.archive-list{min-height:20rem;padding:var(--space-3)}.toast{right:var(--space-3);bottom:max(var(--space-3),env(safe-area-inset-bottom));left:var(--space-3);max-width:none;text-align:center}}@media(max-width:360px){.touch-controls{right:var(--space-2);bottom:max(var(--space-2),env(safe-area-inset-bottom));left:var(--space-2);grid-template-columns:5rem 8.625rem 5rem;gap:.375rem}.touch-stick{width:5rem;height:5rem}.touch-actions{width:8.625rem;grid-template-columns:repeat(3,2.75rem);gap:.25rem}.frame-meters{width:auto}.component-readout{display:grid}.enemy-count{min-width:5rem}}@media(max-height:700px)and (orientation:landscape){.title-screen{padding-block:var(--space-4)}.wordmark{margin-block:var(--space-2) var(--space-3);font-size:clamp(3.5rem,10vh,5.5rem)}.title-deck{font-size:.875rem}.title-rule{margin-block:var(--space-3)}.command-button{min-height:3.25rem;padding-block:var(--space-2)}.title-footer,.run-block{display:none}.frame-meters{top:7.25rem;right:max(var(--space-3),env(safe-area-inset-right));bottom:auto;left:max(var(--space-3),env(safe-area-inset-left));width:auto}.component-readout{top:11.25rem;right:max(var(--space-3),env(safe-area-inset-right));left:max(var(--space-3),env(safe-area-inset-left));display:grid;width:auto;grid-template-columns:repeat(6,minmax(0,1fr))}.enemy-count{top:5rem;right:max(var(--space-3),env(safe-area-inset-right));left:auto}.boss-hud{top:5rem;left:max(var(--space-3),env(safe-area-inset-left));width:12rem}.event-feed{top:13.25rem;right:var(--space-3);width:8.5rem}.touch-controls{bottom:var(--space-2)}.touch-stick{width:4.75rem;height:4.75rem}.touch-actions{width:8.75rem}}@media(forced-colors:active){.command-button,.icon-command,.hud-icon-button,.tutorial-prompt,.modal-panel,.end-frame,.select-control select{border:2px solid ButtonText}.meter__fill,.tutorial-progress span,.boss-meter>span{background:Highlight}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.reticle:after,.damage-flash{display:none!important}}body:has(#reduced-motion:checked) *,body:has(#reduced-motion:checked) *:before,body:has(#reduced-motion:checked) *:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}body:has(#reduced-motion:checked) .reticle:after,body:has(#reduced-motion:checked) .damage-flash{display:none!important}body.reduced-motion *,body.reduced-motion *:before,body.reduced-motion *:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}body.reduced-motion .reticle:after,body.reduced-motion .damage-flash{display:none!important}
