html,body{margin:0;padding:0;overflow:hidden;background-color:#1a1a1a}#app{width:100vw;height:100vh;display:block}canvas{width:100%;height:100%;display:block}:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#edf5fa}*{box-sizing:border-box}button,select{font:inherit}button,summary,select{cursor:pointer}button:focus-visible,select:focus-visible{outline:2px solid #7ae3ed;outline-offset:4px}canvas:focus{outline:none}.game-menu{position:fixed;inset:0;z-index:50;display:grid;place-items:center;align-items:safe center;padding:24px;overflow-y:auto;background:linear-gradient(125deg,#050c16dd,#0b122bc9);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.menu-panel{width:min(640px,100%);padding:34px 40px;border:1px solid #7593aa40;border-radius:18px;background:#0a1324e8;box-shadow:0 30px 90px #0007}.menu-logo{display:block;width:min(340px,90%);max-height:170px;object-fit:contain;margin:0 auto 22px}.eyebrow{margin:0 0 12px;font-size:11px;letter-spacing:.16em;color:#82dfe5;font-weight:700}.menu-panel h1{margin:0;font-size:clamp(30px,4vw,42px);font-weight:700;letter-spacing:-.04em;line-height:1.1}.menu-copy{margin:16px 0 24px;color:#aabdcf;line-height:1.6;font-size:15px}.menu-actions{display:flex;gap:10px;flex-wrap:wrap}.button{padding:12px 18px;min-height:46px;border:1px solid #8ba6be55;border-radius:8px;background:#17263a;color:#e5eff9;font-size:14px;font-weight:650;transition:background .12s}.button:hover{background:#22384f}.button.primary{background:#83e0e6;color:#071b25;border-color:#83e0e6}.button.primary:hover{background:#b4f4f4}.control-guide{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;padding:20px 0 0;margin:24px 0 0;border-top:1px solid #7593aa30}.control-guide div{min-width:0}.control-guide dt{font-size:12px;color:#edf5fa;font-weight:700}.control-guide dd{margin:4px 0 0;font-size:12px;color:#9eafc4;line-height:1.45}.menu-note{margin:20px 0 0;color:#859aae;font-size:11px;line-height:1.5}.game-title{background:linear-gradient(180deg,#03060c10,#03060c50 60%,#03060cbc);-webkit-backdrop-filter:none;backdrop-filter:none}.game-title .menu-panel{width:min(940px,100%);padding:28px;border:0;border-radius:0;background:none;box-shadow:none;text-align:center}.game-title .menu-logo{width:min(700px,82vw);max-height:360px;margin:0 auto 28px;filter:drop-shadow(0 14px 35px #0008)}.game-title h1{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.game-title .eyebrow{color:#b3cadb;letter-spacing:.32em;font-size:10px}.game-title .menu-copy{margin:14px 0 28px;font-size:18px;color:#edf3f8;letter-spacing:.04em;text-shadow:0 2px 8px #000}.game-title .menu-actions{justify-content:center}.game-title .button.primary{min-width:200px;padding:15px 32px;border:1px solid #ffffff70;border-radius:4px;background:#ffffff0d;color:#fff;text-transform:uppercase;letter-spacing:.14em;font-size:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.game-title .button.primary:hover{background:#ffffff20;border-color:#fff}.game-title .menu-note{margin-top:24px;color:#a4b8c8;font-size:11px;text-shadow:0 2px 8px #000}.menu-settings{margin-top:22px;display:flex;align-items:center;flex-wrap:wrap;gap:14px;font-size:13px}.menu-settings label{display:grid;gap:8px;color:#aabdcf}.menu-settings select{border:1px solid #7593aa66;border-radius:6px;background:#17263a;color:#edf5fa;padding:10px}.flight-slider{width:170px}.flight-slider input{width:100%;accent-color:#83e0e6}.menu-settings .flight-toggle{display:flex;align-items:center;gap:8px}.flight-toggle input{accent-color:#83e0e6}#flight-hud{position:fixed;inset:0;z-index:10;pointer-events:none;font-variant-numeric:tabular-nums}.hud-panel{background:#07111fe8;border:1px solid #789bbd45;border-radius:10px;padding:18px;box-shadow:0 6px 30px #0004}.status-panel{position:absolute;top:20px;left:20px;width:236px}.meter-label{display:flex;justify-content:space-between;font-size:12px;margin-top:12px}.meter-label b{font-weight:550;color:#b5c9df}.meter{height:5px;margin-top:7px;background:#26394a;border-radius:3px;overflow:hidden}.meter i{display:block;width:100%;height:100%;transform-origin:left;background:#72ddea}.hull-meter i{background:#a2d5a9}.throttle-meter{position:relative}.throttle-meter i{background:#b7d9ec}.throttle-meter>span{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#ffd788}.optimal-turn .throttle-meter i{background:#ffd788}.boost-meter i{background:#b4a7ee}.boosting .boost-meter i{background:#79edff}.throttle-detents{display:flex;justify-content:space-between;margin-top:5px;font-size:9px;color:#8398a9}.boosting .status-panel{border-color:#8beaff80}.boosting .speed b{color:#c7f8ff;text-shadow:0 0 16px #53c8ef66}.boost-fx{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;opacity:var(--boost-strength, 0)}.boost-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 42%,#3bbae518 70%,#277ac348 100%);box-shadow:inset 0 0 65px #65c9f21a}.boost-streaks{position:absolute;inset:0;-webkit-mask-image:radial-gradient(ellipse at center,transparent 24%,#000 58%);mask-image:radial-gradient(ellipse at center,transparent 24%,#000 58%)}.boost-streak{position:absolute;left:50%;top:50%;width:65vmax;height:1px;transform-origin:0 0;transform:rotate(var(--angle))}.boost-streak:after{content:"";display:block;width:clamp(25px,7vw,100px);height:1px;background:linear-gradient(90deg,transparent,#c2f2ffb3);animation:boost-streak-flight .72s linear infinite;animation-delay:var(--delay);animation-play-state:paused}.boosting .boost-streak:after{animation-play-state:running}.flight-paused .boost-streak:after{animation-play-state:paused}.taking-damage .boost-fx{opacity:calc(var(--boost-strength, 0) * .35)}@keyframes boost-streak-flight{0%{transform:translate(18vmin) scaleX(.25);opacity:0}25%{opacity:.65}to{transform:translate(65vmax) scaleX(1.6);opacity:0}}@media(prefers-reduced-motion:reduce){.boost-streaks{display:none}}.critical-hull .hull-meter i{background:#ff6c6c}.speed{margin-top:16px;display:flex;align-items:baseline;gap:6px}.speed b{font-size:25px;font-weight:650}.speed span{color:#9faebf;font-size:12px}.navigation-value{color:#8c9eb4;font-size:10px;margin:6px 0 0}.objective-panel{position:absolute;top:20px;left:50%;transform:translate(-50%);text-align:center;min-width:220px}.objective-panel b{font-size:16px;color:#fff2b8;font-weight:650}.objective-panel>p:last-child{color:#b8c8d5;font-size:12px;margin:8px 0 0}.controls-panel{position:absolute;top:20px;right:20px;width:238px}.controls-panel b{font-size:13px;color:#d1ebee}.controls-panel>p:not(.eyebrow){color:#a7bccb;font-size:11px;margin:8px 0}.hud-button{pointer-events:auto;border:1px solid #7197b24d;border-radius:5px;color:#d7ecf6;background:#14293b;padding:8px 12px;font-size:11px}.pause-button{margin-top:8px}.aim-reticle{position:absolute;width:36px;height:36px;transform:translate(-50%,-50%);filter:drop-shadow(0 0 2px #000)}.aim-reticle i{display:block;position:absolute;inset:2px;border:2px solid #c9f7ff;border-radius:50%;box-shadow:0 0 0 2px #020714c0;opacity:.9}.aim-dot{position:absolute;left:16px;top:16px;width:4px;height:4px;border-radius:50%;background:#fff}.hit-confirm .aim-reticle i{border-color:#ffd98b;transform:scale(1.15)}.kill-confirm .aim-reticle i{border-color:#9cf4b8;transform:scale(1.3)}.aim-assist{position:absolute;width:12px;height:12px;transform:translate(-50%,-50%);border:1px solid #86d9e3;border-radius:50%;opacity:.6}.aim-assist[hidden],[hidden]{display:none!important}.flight-stick{position:absolute;width:150px;height:150px;transform:translate(-50%,-50%);pointer-events:none}.flight-stick-ring{position:absolute;inset:10px;border:1px solid #a9dfe326;border-radius:50%}.flight-stick-cursor{position:absolute;top:50%;left:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border:1.5px solid #bcf3ff;border-radius:50%;background:#0319249c;box-shadow:0 0 3px #000}.flight-stick-tether{position:absolute;top:50%;left:50%;height:1px;background:#ace6ec77;transform-origin:left center}.lead-pipper{position:absolute;width:14px;height:14px;transform:translate(-50%,-50%);border:1px dashed #76eeef;border-radius:50%;box-shadow:0 0 3px #000}.lead-pipper span{position:absolute;width:3px;height:3px;background:#95f5f5;border-radius:50%;top:4.5px;left:4.5px}.target-marker{position:absolute;width:68px;display:grid;justify-items:center;gap:5px;color:#ff9393;text-shadow:0 1px 3px #000,0 0 5px #000;font-size:11px;font-weight:650}.target-marker.nearest{color:#ffe29a}.target-box{width:40px;height:40px;border:2px solid currentColor;border-radius:3px;box-shadow:0 0 0 1px #080d15,inset 0 0 0 1px #080d15;background:#ff656508}.target-marker.offscreen .target-box{width:0;height:0;border:9px solid transparent;border-left:15px solid currentColor;box-shadow:none;background:none}.target-marker.offscreen .target-range{margin-top:0}.damage-vignette{position:absolute;inset:0;opacity:0;background:radial-gradient(ellipse,transparent 42%,#e51a3780 100%);transition:opacity .1s}.taking-damage .damage-vignette{opacity:1}.taking-damage.shield-hit .damage-vignette{background:radial-gradient(ellipse,transparent 42%,#268eec75 100%)}.damage-label{position:absolute;top:64%;left:50%;transform:translate(-50%);color:#ff9292;font-size:13px;letter-spacing:.08em;font-weight:700;opacity:0;text-shadow:0 2px 5px #000}.shield-hit .damage-label{color:#8bd8ff}.damage-direction{position:absolute;top:50%;left:50%;height:160px;width:20px;margin-top:-160px;margin-left:-10px;transform-origin:bottom center;color:#ff6868;font-size:20px;text-align:center;opacity:0}.taking-damage .damage-label,.taking-damage .damage-direction{opacity:1}.center-message{position:absolute;left:50%;top:28%;transform:translate(-50%,-50%);padding:14px 22px;border:1px solid #92c0dc55;background:#071220dd;border-radius:8px;color:#e2faff;font-size:clamp(16px,2vw,26px);font-weight:700;letter-spacing:.06em;opacity:0;transition:opacity .15s;text-align:center}.center-message.visible{opacity:1}#flight-hud .center-message.tutorial-announcement{top:50%;white-space:pre-line;font-size:clamp(24px,3vw,38px);line-height:1.5;pointer-events:none}.training-panel{position:absolute;bottom:24px;left:50%;transform:translate(-50%);width:min(540px,calc(100% - 40px))}.training-panel h2{margin:0;font-size:20px;font-weight:650}.training-copy{font-size:13px;color:#b7c9d8;line-height:1.6;margin:10px 0}.skip-training{padding:6px 10px;background:transparent;color:#829cae;font-size:10px}#loading-stage{font-size:13px;color:#acbfd5;margin-top:18px}.asset-notice{position:fixed;bottom:12px;left:18px;z-index:60;padding:6px 10px;color:#8cbbcd;background:#07111fdf;border-radius:4px;font-size:11px;pointer-events:none}.loading-error{color:#ffb8b8;line-height:1.5}@media(max-width:850px){.controls-panel{top:auto;bottom:18px;right:18px;width:160px;padding:12px}.controls-panel>p:not(.eyebrow){display:none}.objective-panel{left:auto;right:18px;transform:none;min-width:0;width:215px}.training-panel{bottom:130px}}@media(max-width:550px){.menu-panel{padding:24px}.game-menu{padding:14px}.menu-logo{width:220px;max-height:125px}.control-guide{gap:12px}.menu-actions{flex-direction:column}.status-panel{top:auto;bottom:18px;left:18px;width:175px;padding:12px}.status-panel .eyebrow,.navigation-value{display:none}.objective-panel{left:18px;right:18px;width:auto;top:16px;text-align:left}.controls-panel{width:140px}.controls-panel .eyebrow{font-size:9px}.speed{margin-top:10px}.training-panel{bottom:205px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}#flight-hud{--hud-green: #9bffac;color:var(--hud-green);font:12px/1.4 SFMono-Regular,Consolas,Liberation Mono,monospace;text-shadow:0 1px 3px #000,0 0 6px #000;letter-spacing:.06em}.av-caption{display:block;font-size:10px;letter-spacing:.15em;opacity:.7;margin:0 0 8px}.av-mission{position:absolute;left:4%;top:5%;display:grid;gap:5px;max-width:47%}.av-mission b{font-size:13px;font-weight:500}.av-mission .enemy-value{font-size:11px;opacity:.8}.av-system{position:absolute;right:4%;top:5%;display:grid;justify-items:end;gap:9px;font-size:10px;max-width:40%;text-align:right}.av-system .hud-button{color:inherit;background:#00140833;border:1px solid #9bffac66;border-radius:0;margin:0;padding:7px 10px;font:inherit;letter-spacing:.12em}.av-system .hud-button:hover,.av-system .hud-button:focus-visible{background:#9bffac25;outline:1px solid var(--hud-green)}.av-compass{position:absolute;left:50%;top:19%;transform:translate(-50%);width:min(390px,46vw);text-align:center}.av-compass .av-caption{margin-bottom:3px}.heading-value{font-size:18px;font-weight:400;border:1px solid currentColor;padding:2px 9px}.compass-window{position:relative;margin-top:11px;height:35px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.compass-ticks{position:absolute;inset:0;border-top:1px solid #9bffac55}.compass-ticks span{position:absolute;top:0;transform:translate(-50%);padding-top:12px;font-size:10px}.compass-ticks span:before{content:"";position:absolute;top:0;left:50%;width:1px;height:7px;background:currentColor}.compass-index{position:absolute;top:50px;left:calc(50% - 4px);border:4px solid transparent;border-top-color:currentColor}.attitude-ladder{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;clip-path:inset(30% 30% 39%);opacity:.65}.attitude-ladder path{fill:none;stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}.attitude-ladder text{fill:currentColor;font-size:14px;stroke:none}.attitude-ladder .negative path{stroke-dasharray:5 4}.attitude-ladder .horizon path{stroke-width:1.5}.av-tape{position:absolute;top:44%;width:100px;text-align:center}.av-speed{right:72%}.av-altitude{left:72%}.av-tape .av-caption{margin-bottom:12px}.tape-body{position:relative;height:34px;display:grid;place-items:center}.tape-body b{padding:3px 10px;min-width:74px;font-size:22px;font-weight:400;border:1px solid currentColor;background:#03130933}.tape-body i{position:absolute;top:-20px;bottom:-20px;width:9px;background:repeating-linear-gradient(to bottom,currentColor 0 1px,transparent 1px 12px);opacity:.65}.av-speed .tape-body i{right:-12px;border-right:1px solid currentColor}.av-altitude .tape-body i{left:-12px;border-left:1px solid currentColor}.av-unit{display:block;font-size:9px;opacity:.75;margin-top:12px}.flight-mode-value,.pitch-value{display:block;margin-top:20px;font-size:10px}.av-status,.av-engine{position:absolute;top:auto;bottom:7%;width:204px;padding:0;border:0;background:none;box-shadow:none}.av-status{left:5%}.av-engine{right:5%}#flight-hud .meter-label{margin-top:9px;font-size:11px}#flight-hud .meter-label b{color:inherit;font-weight:400}#flight-hud .meter{height:3px;border-radius:0;background:#9bffac22;margin-top:5px}#flight-hud .meter i{background:var(--hud-green)}#flight-hud.critical-hull .hull-meter i{background:#ffb26c}#flight-hud.critical-hull .av-status{color:#ffb26c}.av-reference{position:absolute;bottom:3%;left:5%;font-size:9px;opacity:.5}.av-weapon{position:absolute;right:5%;top:auto;bottom:7%;width:204px;display:grid;gap:9px;text-align:center;color:var(--hud-green)}.av-weapon .av-engine{position:static;width:100%;padding:0;text-align:left}.instrument-eyebrow{display:flex;align-items:baseline;justify-content:space-between;gap:6px;padding:0 0 8px;border-bottom:1px solid #b8d9e326;font:8px/1.3 SFMono-Regular,Consolas,monospace;letter-spacing:.08em;color:#829da8}.av-status,.av-weapon{height:218px;display:flex;flex-direction:column;gap:0}.instrument-eyebrow{flex:0 0 25px;white-space:nowrap}.av-weapon .av-engine{margin-top:4px}.instrument-eyebrow b{color:#d4e2e8;font-weight:500;font-size:9px;letter-spacing:.05em}.airframe-diagram,.weapon-indicator{position:relative;width:100%;padding:0;margin:0}.status-art{display:block;width:100%;height:120px;fill:none;stroke:#b1eaca;stroke-width:1.25;stroke-linejoin:round;filter:drop-shadow(0 1px 2px #000)}.status-art .art-panel{fill:#07120bd9}.status-art .art-detail{stroke-width:.75;stroke:#77a991;opacity:.75}.status-art .art-engine{fill:#09170f;stroke-width:1.1}.status-art .art-canopy{fill:#8ed9da19;stroke:#b5edeb}.status-art .art-exhaust{stroke:#8ed9da;stroke-width:.8}.hull-schematic{opacity:var(--hull-integrity, 1)}.critical-hull .hull-schematic{stroke:#ffbd81}.cannon-core{stroke:#7ccedb;opacity:.45;stroke-width:1.8}.is-firing .cannon-core{opacity:1;stroke:#efffff;stroke-width:2.4}.weapon-muzzle{opacity:0;stroke:#e9ffff;stroke-width:1.5}.is-firing .weapon-muzzle{opacity:1}.shield-shell-track,.hull-track{stroke:#a8c6d726;stroke-width:1.4}.shield-shell{stroke:#82c6d5;stroke-width:1.1;fill:none;opacity:.7}.hull-spine{stroke:#c8ecd9;stroke-width:1.4}.shield-empty .shield-shell{opacity:0}.is-recharging .shield-shell{stroke:#cbfaff}.taking-damage.shield-hit .shield-shell{stroke:#fff}.critical-hull .hull-spine{stroke:#ffb97b}#flight-hud .av-status .meter{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#flight-hud .av-status .meter-label,#flight-hud .av-weapon .meter-label{color:#8eabb5;font-size:10px}#flight-hud .av-status .meter-label b,#flight-hud .av-weapon .meter-label b{color:#dde9ed}.weapon-diagram{position:relative;width:100%;margin:0}.weapon-charge{display:block;width:100%;height:4px;margin-top:8px;fill:none}.weapon-cycle-track{stroke:#79cfe638;stroke-width:1.5}.weapon-cycle-fill{fill:#7adef2}.is-firing .weapon-cycle-fill{fill:#edfcff}.aim-reticle{width:28px;height:28px;color:var(--hud-green)}.aim-reticle i{inset:0;border:1px solid currentColor;border-radius:0;box-shadow:none;clip-path:polygon(0 0,30% 0,30% 6%,6% 6%,6% 30%,0 30%,0 70%,6% 70%,6% 94%,30% 94%,30% 100%,70% 100%,70% 94%,94% 94%,94% 70%,100% 70%,100% 30%,94% 30%,94% 6%,70% 6%,70% 0,100% 0,100% 100%,0 100%)}.aim-dot{left:13px;top:13px;width:2px;height:2px;border-radius:0;background:var(--hud-green)}.flight-stick-ring{border-color:transparent}.flight-stick-cursor{width:6px;height:6px;margin:-3px;border:1px solid #9bffac99;border-radius:0;background:none}.flight-stick-tether{background:#9bffac33}.lead-pipper{border:1px solid var(--hud-green);border-radius:50%;width:12px;height:12px}.lead-pipper span{background:var(--hud-green);top:4px;left:4px;width:2px;height:2px}.target-marker{font:10px/1.3 SFMono-Regular,Consolas,monospace;color:#9bffacb3;display:block;width:95px;height:34px}.target-marker.nearest{color:var(--hud-green)}.target-marker{color:#d4ab7a}.target-marker.nearest{color:#ffe3b3}.target-marker.threatening .target-box{border-color:#ff9469;box-shadow:0 0 5px #ff946944}.target-marker[data-role=attacker] .target-box{border-width:2px}.target-marker[data-role=ace] .target-box{border-style:double;border-width:3px}.target-marker.occluded{opacity:.5}.target-marker.occluded .target-box{border-style:dashed}.target-marker.distant:not(.offscreen) .target-box{width:6px;height:6px;left:calc(50% - 3px);top:14px;border-radius:50%}.target-marker.distant:not(.offscreen) .target-health{display:none}.relay-status{margin-top:9px;max-width:185px;display:grid;grid-template-columns:1fr auto;gap:6px;font-size:9px;color:#9cdee5}.relay-status span{letter-spacing:.05em}.relay-status b{font:inherit}.relay-meter{grid-column:1/-1;height:3px;background:#9cdee522}.relay-meter i{display:block;width:100%;height:100%;transform-origin:left;background:#9cdee5}.relay-status.critical{color:#ffaf78}.relay-status.critical .relay-meter i{background:#ffaf78}.relay-waypoint{position:absolute;width:110px;height:18px;transform:translate(-50%,-50%);color:#8ed8e9;text-align:center;font-size:9px}.relay-waypoint i{display:block;width:12px;height:12px;border:1px solid currentColor;transform:rotate(45deg);margin:0 auto 7px}.relay-waypoint span,.relay-waypoint small{display:block;white-space:nowrap;font:inherit}.relay-waypoint.offscreen i{width:7px;height:7px}.av-threat,.av-return{position:absolute;left:50%;transform:translate(-50%);text-align:center;white-space:nowrap;font-size:11px;color:#ffbd83;letter-spacing:.1em}.av-threat{top:12%}.av-return{top:31%}.combat-telemetry{position:absolute;left:4%;top:24%;background:#020b0fe8;border:1px solid #77aaa966;padding:12px;color:#ccebdd;font:10px/1.6 monospace}@media(max-width:650px){.av-threat{top:17%;font-size:9px}.relay-status{font-size:8px}.av-return{font-size:9px;top:34%}}.target-box{position:absolute;left:calc(50% - 17px);top:0;border:1px solid currentColor;width:34px;height:34px;border-radius:0;box-shadow:none;background:transparent}.target-health{position:absolute;bottom:calc(100% + 18px);left:50%;transform:translate(-50%);white-space:nowrap}.target-vitals{position:absolute;bottom:calc(100% + 5px);left:calc(50% - 24px);width:48px;display:grid;gap:3px}.target-shield-bar,.target-hull-bar{height:3px;background:#021109dd;box-shadow:0 0 0 1px #9bffac33}.target-vitals i{display:block;width:100%;height:100%;transform-origin:left center;background:var(--hud-green)}.target-shield-bar i{background:#82d4ec}.critical-target .target-hull-bar i{background:#ffc17b}.target-marker.recent-hit .target-box{border-color:#fff0b5}.target-marker.recent-hit .target-vitals{filter:brightness(1.35)}.target-range{position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%);white-space:nowrap}.target-marker.offscreen{height:12px}.target-marker.offscreen .target-vitals,.target-marker.offscreen .target-health{display:none}.target-marker.offscreen .target-box{left:calc(50% - 7px)}.target-marker.offscreen .target-box{border-width:5px;border-left-width:9px}.center-message{background:none;border:0;border-radius:0;padding:0;color:var(--hud-green);font:16px/1.4 SFMono-Regular,Consolas,monospace;top:33%;letter-spacing:.16em}.training-panel{color:#deefea;bottom:5%;width:min(490px,54%)}@media(max-width:650px){.av-caption{font-size:8px}.av-mission b{font-size:10px}.av-mission .enemy-value,.av-system{font-size:9px}.av-compass{top:21%;width:48vw}.av-tape{width:70px}.tape-body b{font-size:17px;min-width:60px;padding:3px 5px}.av-speed{right:76%}.av-altitude{left:76%}.av-speed .tape-body i{right:-5px}.av-altitude .tape-body i{left:-5px}.av-unit,.pitch-value,.flight-mode-value{font-size:8px}.av-status,.av-engine{width:120px;bottom:8%}.av-weapon{top:auto;bottom:8%;width:120px}.status-art{height:96px}.av-status,.av-weapon{height:194px}.instrument-eyebrow span{display:none}.instrument-eyebrow{flex-basis:22px}.training-panel{bottom:26%;width:90%}}@media(max-height:600px){.av-compass{top:7%}.av-status,.av-engine{bottom:7%;width:130px}.av-status .av-caption,.av-engine .av-caption,.av-reference{display:none}.av-weapon{top:auto;bottom:7%;width:125px}.status-art{height:84px}.av-status,.av-weapon{height:180px}.instrument-eyebrow span{display:none}}@media(max-width:450px){.compass-ticks span:nth-child(2n){visibility:hidden}.av-mission .av-caption{letter-spacing:.06em}}.flight-pause-menu{--console-green: #9bffac;background:#010a07c4;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--console-green);font:12px/1.5 SFMono-Regular,Consolas,Liberation Mono,monospace;letter-spacing:.03em}.flight-pause-menu .menu-panel{position:relative;width:min(860px,100%);padding:30px 34px 20px;border:1px solid #9bffac66;border-radius:0;background:#040e0bec;box-shadow:0 16px 80px #0005}.flight-pause-menu .menu-panel:before,.flight-pause-menu .menu-panel:after{content:"";position:absolute;width:15px;height:15px;pointer-events:none}.flight-pause-menu .menu-panel:before{top:-1px;left:-1px;border-top:2px solid var(--console-green);border-left:2px solid var(--console-green)}.flight-pause-menu .menu-panel:after{bottom:-1px;right:-1px;border-bottom:2px solid var(--console-green);border-right:2px solid var(--console-green)}.flight-pause-menu .eyebrow{color:#87ac91;font:inherit;font-size:10px;letter-spacing:.17em;margin:0 0 10px}.flight-pause-menu .menu-panel h1{color:var(--console-green);font:30px/1.2 SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.08em}.flight-pause-menu .menu-copy{color:#90a99a;font:inherit;font-size:11px;margin:10px 0 26px}.pause-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:30px;border-top:1px solid #9bffac33;padding-top:22px}.pause-layout>section+section{border-left:1px solid #9bffac25;padding-left:30px}.pause-section-title{font:inherit;font-size:10px;letter-spacing:.13em;color:#83a58b;margin:0 0 18px}.flight-pause-menu .menu-actions{display:grid;gap:10px;counter-reset:command}.flight-pause-menu .button{background:transparent;color:#a7c8af;border:1px solid #9bffac33;border-radius:0;padding:10px 12px;min-height:40px;font:inherit;font-size:11px;font-weight:400;text-transform:uppercase;text-align:left}.flight-pause-menu .menu-actions .button:before{counter-increment:command;content:"0" counter(command) " ";color:#7a9d84;margin-right:8px}.flight-pause-menu .button.primary{color:var(--console-green);background:#9bffac0e;border-color:#9bffac8c;border-left:3px solid var(--console-green)}.flight-pause-menu .button:hover{color:var(--console-green);background:#9bffac17;border-color:var(--console-green)}.flight-pause-menu :is(button,select,input,summary):focus-visible{outline:1px solid var(--console-green);outline-offset:3px}.flight-pause-menu .menu-settings{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:20px 18px;margin:0;font:inherit;font-size:11px}.flight-pause-menu .menu-settings label{color:#a7c8af;gap:8px;min-width:0}.flight-pause-menu .menu-settings select{width:100%;min-width:0;border:1px solid #9bffac4d;border-radius:0;color:var(--console-green);background:#091910;padding:10px 8px;font:inherit;min-height:40px}.flight-pause-menu .flight-toggle{align-items:center;min-height:30px;font-size:10px}.flight-pause-menu .flight-toggle input{accent-color:var(--console-green);margin:0;width:14px;height:14px;flex-shrink:0}.flight-pause-menu .flight-slider{width:100%;min-width:0}.flight-pause-menu .flight-slider input{accent-color:var(--console-green);margin:0;height:22px;cursor:pointer}.flight-pause-menu input[type=range]{appearance:none;background:transparent}.flight-pause-menu input[type=range]::-webkit-slider-runnable-track{height:2px;background:#9bffac55}.flight-pause-menu input[type=range]::-webkit-slider-thumb{appearance:none;width:7px;height:14px;margin-top:-6px;border:1px solid var(--console-green);border-radius:0;background:#244b31}.flight-pause-menu input[type=range]::-moz-range-track{height:2px;background:#9bffac55}.flight-pause-menu input[type=range]::-moz-range-thumb{width:7px;height:14px;border:1px solid var(--console-green);border-radius:0;background:#244b31}.pause-reference{margin-top:26px;border-top:1px solid #9bffac33;border-bottom:1px solid #9bffac33}.pause-reference summary{padding:14px 0;font-size:10px;letter-spacing:.08em;color:#9cbea5}.pause-reference summary span{float:right;font-size:9px;color:#6e907a}.flight-pause-menu .control-guide{margin:0;padding:6px 0 20px;border:0;gap:14px 24px}.flight-pause-menu .control-guide dt{color:var(--console-green);font:inherit;font-size:11px}.flight-pause-menu .control-guide dd{color:#8aa393;font:inherit;font-size:10px}.pause-footer{display:flex;justify-content:space-between;gap:12px;margin-top:16px;color:#6e907a;font-size:9px;letter-spacing:.09em}.pause-footer i{display:inline-block;width:5px;height:5px;background:var(--console-green);margin-right:6px;vertical-align:1px}@media(max-width:650px){.flight-pause-menu{padding:18px}.flight-pause-menu .menu-panel{padding:24px 20px 18px}.flight-pause-menu .menu-panel h1{font-size:25px}.pause-layout{grid-template-columns:1fr;gap:24px}.pause-layout>section+section{padding:20px 0 0;border-left:0;border-top:1px solid #9bffac25}.flight-pause-menu .menu-actions{grid-template-columns:1fr 1fr}.pause-reference summary span{display:none}}@media(max-width:390px){.flight-pause-menu .menu-settings,.flight-pause-menu .menu-actions{grid-template-columns:1fr}.pause-footer{flex-wrap:wrap}}.game-menu:not(.flight-pause-menu){background:#010a07b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#9bffac;font-family:SFMono-Regular,Consolas,monospace}.game-menu:not(.flight-pause-menu) .menu-panel{border-radius:0;border-color:#9bffac55;background:#040e0bec;box-shadow:0 16px 80px #0005}.game-menu:not(.flight-pause-menu) h1{font:28px/1.3 SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.09em}.game-menu:not(.flight-pause-menu) .eyebrow{color:#89b095;font-weight:400}.game-menu:not(.flight-pause-menu) .menu-copy,.game-menu:not(.flight-pause-menu) .menu-note{color:#90a99a;font-size:12px;line-height:1.7}.game-menu:not(.flight-pause-menu) .button{border-radius:0;border:1px solid #9bffac55;background:transparent;color:#9bffac;font:11px/1.5 SFMono-Regular,Consolas,monospace;letter-spacing:.1em;text-transform:uppercase}.game-menu:not(.flight-pause-menu) .button.primary{border-color:#9bffacbb;background:#9bffac0e;border-left-width:3px}.game-menu:not(.flight-pause-menu) .button:hover{background:#9bffac22;border-color:#9bffac}.game-menu:not(.flight-pause-menu) .button:focus-visible{outline-color:#9bffac}.game-menu.game-title{background:linear-gradient(180deg,#010a0700 25%,#010a0730 65%,#010a07b0);-webkit-backdrop-filter:none;backdrop-filter:none}.game-menu.game-title .menu-panel{border:0;background:none;box-shadow:none}.game-menu.game-title .button.primary{-webkit-backdrop-filter:none;backdrop-filter:none;min-width:220px;padding:15px 28px}.game-title .menu-logo{filter:drop-shadow(0 12px 25px #0008)}.debrief-report{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:18px 0;margin:24px 0;border-block:1px solid #9bffac33}.debrief-report div{display:grid;gap:7px}.debrief-report span{font-size:9px;letter-spacing:.12em;color:#83a58b}.debrief-report b{font-size:20px;font-weight:400}.game-menu.mission-failure h1,.mission-failure .debrief-report b{color:#efc184}#flight-hud .training-panel{background:#040e0bef;border:1px solid #9bffac66;border-radius:0;color:#9bffac;box-shadow:none}#flight-hud .training-panel .eyebrow{color:#87ac91}#flight-hud .training-panel h2{font:17px/1.4 SFMono-Regular,Consolas,monospace;letter-spacing:.03em;text-transform:uppercase}#flight-hud .training-copy{color:#a7c8af;font:11px/1.6 SFMono-Regular,Consolas,monospace}#flight-hud .skip-training{border-radius:0;border-color:#9bffac55;color:#9bffac}#loading-screen{position:fixed;inset:0;background:#000;display:flex;align-items:center;justify-content:center;z-index:9999}#loading-panel{width:min(520px,80vw);color:#9bffac;font-family:SFMono-Regular,Consolas,monospace;text-align:center}#loading-title{font-size:22px;letter-spacing:.2em;opacity:.9;margin-bottom:18px}#loading-track{width:100%;height:3px;background:#9bffac22;border-radius:0;overflow:hidden}#loading-bar{width:0%;height:100%;background:#9bffac;border-radius:0;transition:width .12s linear}#loading-percent{margin-top:12px;font-size:14px;opacity:.75}#loading-stage{color:#87ac91;font-family:SFMono-Regular,Consolas,monospace}.asset-notice{color:#9bffac;background:#040e0bdd;border-radius:0;border-left:1px solid #9bffac66;font:10px/1.5 SFMono-Regular,Consolas,monospace}.menu-credits{color:#8ba69b;font:11px/1.5 monospace;letter-spacing:.12em;text-underline-offset:4px}.menu-credits:hover,.menu-credits:focus-visible{color:#b8f2cf}#flight-hud.is-training .training-panel{top:24px;left:24px;bottom:auto;transform:none;width:min(360px,calc(100% - 190px));padding:9px 12px;border:0;border-top:1px solid #9bffac66;background:#06100edb;pointer-events:none}#flight-hud.is-training .av-mission{visibility:hidden}#flight-hud .training-heading{display:flex;align-items:center;gap:12px;margin-bottom:6px}#flight-hud .training-heading .eyebrow{margin:0;font-size:10px;letter-spacing:.08em;white-space:nowrap}#flight-hud .training-heading .training-title{font:12px/1.3 monospace;text-transform:none;letter-spacing:0}#flight-hud .training-heading .skip-training{margin-left:auto;pointer-events:auto}#flight-hud .skip-training{padding:4px 0;border:0;font-size:10px;opacity:.7}#flight-hud .training-keys{display:grid;gap:0;margin:6px 0}#flight-hud .training-cue{display:flex;align-items:center;gap:10px;font:12px/1.35 SFMono-Regular,Consolas,monospace}#flight-hud .training-check{width:12px;color:#608971}#flight-hud .training-keycaps{display:flex;gap:4px}#flight-hud .training-cue kbd{min-width:27px;padding:5px 7px;text-align:center;border:1px solid #9bffac88;border-bottom-width:3px;border-radius:3px;background:#12271d;font:600 11px/1 monospace;color:#d6ffdf}#flight-hud .training-cue.done{color:#739680}#flight-hud .training-cue.done .training-check{color:#9bffac}#flight-hud .training-cue.done kbd{opacity:.45}#flight-hud .training-action-count{margin-left:auto;color:#789984;font:10px monospace}#flight-hud.is-training .training-copy{margin:5px 0 0;font-size:10px;line-height:1.4}@media(max-width:850px){#flight-hud.is-training .training-panel{top:18px;left:14px;bottom:auto;width:min(340px,calc(100% - 172px))}}@media(max-width:440px){#flight-hud.is-training .training-panel{top:14px;left:10px;width:calc(100% - 128px);padding:8px}#flight-hud.is-training .training-heading{flex-wrap:wrap;gap:4px 8px}#flight-hud.is-training .training-cue{flex-wrap:wrap;gap:6px;font-size:11px}}
