:root{color-scheme:dark;--ink:#eaf6f9;--muted:#95acbb;--cyan:#75f5df;--orange:#ffb764}*{box-sizing:border-box}body{margin:0;background:#080f1a;color:var(--ink);font-family:'Trebuchet MS',sans-serif}main{max-width:1440px;padding:26px 36px 18px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.brand{display:flex;gap:14px;align-items:center;font-size:20px;font-weight:bold;letter-spacing:3px}.mark{font-size:44px;color:var(--cyan)}small{display:block;font-size:12px;color:var(--muted);letter-spacing:2px;margin-top:7px}button{font:inherit;cursor:pointer;border:1px solid #405267;color:var(--ink);background:#142333;border-radius:7px;padding:13px 20px;min-height:46px}button:hover:not(:disabled){border-color:var(--cyan);background:#213c48}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}button:disabled{cursor:default;opacity:.5}kbd{font:12px monospace;color:var(--muted)}header kbd{margin-left:12px}.dashboard{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px;padding:20px 26px;border:1px solid #29384b;border-radius:10px 10px 0 0;background:#0e1928}label{display:block;font:12px monospace;letter-spacing:1.7px;color:var(--muted)}strong{display:block;font:28px monospace;margin-top:10px}strong span{font-size:15px;color:var(--muted)}.fuel{position:relative;padding-right:90px}.fuel strong{position:absolute;right:0;top:-8px;color:var(--cyan)}progress{width:100%;height:7px;display:block;margin-top:22px;border:0;border-radius:4px;overflow:hidden;background:#28364a}progress::-webkit-progress-bar{background:#28364a}progress::-webkit-progress-value{background:var(--cyan)}progress::-moz-progress-bar{background:var(--cyan)}#hull{color:var(--orange);font-size:22px}.viewport{position:relative;height:clamp(420px,65vh,750px);overflow:hidden;border:1px solid #29384b;border-top:0;background:radial-gradient(ellipse at 70% 30%,#172c49,#060c18 70%);border-radius:0 0 10px 10px}canvas{width:100%;height:100%;display:block;touch-action:none}.sector,.coordinates{position:absolute;left:24px;font:12px monospace;letter-spacing:1.5px;color:#7890a7;pointer-events:none}.sector{top:22px}.sector span{color:var(--cyan);padding:0 10px}.coordinates{bottom:20px;font-size:11px}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#07101b69;backdrop-filter:blur(3px);overflow:auto}.overlay[hidden]{display:none}.panel{max-width:570px;width:100%;padding:32px;background:#0c1828ee;border:1px solid #395068;border-radius:14px;box-shadow:0 25px 90px #0008}.eyebrow{font:12px monospace;letter-spacing:2px;color:var(--cyan);margin:0 0 16px}h1,h2{font-size:clamp(28px,4vw,45px);letter-spacing:-1.5px;line-height:1.08;margin:0 0 18px}h2{font-size:29px;letter-spacing:-.5px}p{color:#b4c7d6;line-height:1.6;font-size:16px;margin:0 0 20px}.primary{background:var(--cyan);color:#092126;border-color:var(--cyan);font-weight:bold;width:100%;margin-top:6px}.primary:hover:not(:disabled){background:#a6ffed;color:#092126}.instructions{display:flex;gap:16px;margin:25px 0;font:14px monospace;color:var(--muted)}.instructions b{color:var(--orange)}.answers{display:grid;gap:10px}.answers button{text-align:left;display:flex;gap:14px;align-items:center}.answers button span{font:13px monospace;color:var(--cyan)}.answers button.correct{border-color:var(--cyan);background:#153c38;opacity:1}.answers button.wrong{border-color:#ff8b88;color:#ffb3b1}.feedback{min-height:24px;margin:16px 0 5px;font-size:15px}#notice{position:absolute;top:52px;text-align:center;width:100%;color:var(--orange);font:14px monospace;pointer-events:none}footer{display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted);padding-top:17px}a{color:var(--muted);text-underline-offset:4px}.result{font:22px monospace;color:var(--cyan)}@media(max-width:650px){main{padding:14px 12px}header{margin-bottom:16px}.brand{font-size:15px;letter-spacing:2px}.mark{font-size:32px}small{font-size:10px;letter-spacing:1px}header button{padding:10px}header kbd{display:none}.dashboard{grid-template-columns:1fr 1fr;gap:18px;padding:18px}.fuel{padding-right:55px}strong{font-size:24px}.viewport{height:580px;max-height:none}.panel{padding:24px}.overlay{padding:12px}.sector{font-size:10px;left:15px}.instructions{flex-wrap:wrap;font-size:12px}footer{flex-direction:column;font-size:12px}.coordinates{display:none}}@media(prefers-reduced-motion:reduce){.overlay{backdrop-filter:none}}
/* Flight deck: restrained instrument chrome keeps the battlefield dominant. */
body{background:radial-gradient(ellipse at 50% 0,#172438,#050912 65%)}main{max-width:1600px;padding:20px 26px 16px}header{margin-bottom:17px}.brand{font-size:18px;letter-spacing:4px}.mark{color:#b9f6ff;text-shadow:0 0 20px #66dfff80}small{letter-spacing:2.4px}.dashboard{background:linear-gradient(110deg,#18283be8,#0c1421f5);border-color:#45627a55;border-radius:4px 4px 0 0;box-shadow:0 0 35px #0005;padding:18px 26px}.viewport{height:clamp(480px,72vh,900px);border-color:#45627a66;border-radius:0 0 4px 4px;box-shadow:0 25px 70px #0007}.viewport:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 100px #02061088;z-index:1}.sector{color:#a3c9db;text-shadow:0 2px 6px #000}.sector span{padding:0;color:#bef5f4}.overlay{z-index:4;background:linear-gradient(90deg,#02061088,#050c1655);backdrop-filter:blur(5px)}.panel{border-radius:5px;border:1px solid #61849c66;border-top:2px solid #8bebef;background:linear-gradient(140deg,#142538f5,#07121fef);box-shadow:0 35px 100px #000b,inset 0 1px #d9ffff1a}.eyebrow{color:#a7eef6}.primary{background:linear-gradient(110deg,#c4fbff,#70dadd);border-radius:3px;letter-spacing:.5px;box-shadow:0 0 28px #80f0ef12}h1{font-size:clamp(34px,4vw,52px)}.answers button{background:#1b314377;border-radius:3px}.coordinates{display:flex;flex-direction:column;gap:7px;color:#b6d8e9;z-index:2}.weapon-name{font-size:12px;letter-spacing:2px}.weapon-status{font-size:10px;color:#73ddc9;letter-spacing:2px}.combat-score{position:absolute;right:25px;top:22px;color:#a3c9db;font:11px monospace;letter-spacing:2px;text-align:right;z-index:2;pointer-events:none}.combat-score strong{font-size:25px;color:#fff;margin-top:5px}#fire{position:absolute;right:22px;bottom:22px;z-index:3;width:88px;height:76px;touch-action:none;user-select:none;border:1px solid #9be9ef99;background:#123146bd;border-radius:9px;color:#d2fcff;font-weight:bold;letter-spacing:2px;box-shadow:inset 0 0 25px #67e5ff15}#fire small{font:10px monospace;color:#91c2ce;letter-spacing:2px;margin-top:7px}#fire:active{background:#326779;box-shadow:0 0 25px #67e5ff55}#fire[hidden]{display:none}#notice{z-index:2;text-shadow:0 2px 5px #000}.instructions{gap:12px}
@media(max-width:650px){main{padding:10px 8px}.brand{font-size:13px;letter-spacing:2px}.brand small{font-size:9px;letter-spacing:1px}.dashboard{padding:15px;gap:13px}.viewport{height:620px}.panel{padding:22px}.sector{font-size:9px;max-width:70%}.combat-score{right:12px;top:17px;font-size:9px}.combat-score strong{font-size:20px}.coordinates{display:flex;left:15px;bottom:25px}.weapon-name{font-size:10px}.weapon-status{font-size:9px}#fire{right:15px;bottom:18px}.overlay{align-items:center}.instructions{margin:18px 0}p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.overlay{backdrop-filter:none}}
.header-controls{display:flex;gap:8px}#sound{font-size:13px;padding:10px 12px}.panel{max-height:100%;overflow:auto}#missile{position:absolute;right:22px;bottom:110px;z-index:3;width:88px;height:68px;padding:10px 3px;touch-action:manipulation;user-select:none;border-color:#ffc66799;color:#ffe7ba;background:#49361fc9;font-size:12px;letter-spacing:1px}#missile small{font:10px monospace;margin-top:8px;letter-spacing:0;color:#ebc78e}#missile[hidden]{display:none}.combat-score strong{margin-bottom:7px}.combat-score>span{color:#fff}.header-controls button{white-space:nowrap}@media(max-width:650px){#sound{font-size:11px;padding:8px;min-height:42px}.header-controls{gap:4px}#missile{right:15px;bottom:104px}.brand{letter-spacing:1px;font-size:12px}.brand small{max-width:160px;font-size:8px}.mark{font-size:24px}.brand{gap:6px}}
