:root{color-scheme:dark;font-family:'Segoe UI',Arial,sans-serif;color:#d9eaf1;background:#050910}*{box-sizing:border-box}body{margin:0}main{max-width:1600px;margin:auto;padding:0 28px}header{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:14px;letter-spacing:3px}.brand b{font-size:20px}.mark{font-size:34px;color:#88ddf1;font-weight:200}.subtitle{border-left:1px solid #314351;padding-left:18px;color:#7f95a5;font-size:12px;letter-spacing:3px}.top{display:flex;align-items:center;gap:16px;font-size:12px;letter-spacing:1px;color:#7d9aab}button{font:inherit;cursor:pointer;background:transparent;color:#a7c4d4;border:1px solid #293e4c;border-radius:3px;padding:9px 13px}button:hover{background:#142733;color:white;border-color:#83d9ee}button:focus-visible{outline:2px solid #8bf1ff;outline-offset:3px}kbd{font:inherit;font-size:11px;border:1px solid #344653;border-radius:3px;padding:3px 5px;color:#b4c9d5}.top kbd{margin-left:6px}#full{font-size:22px;padding:3px 12px}.viewport{position:relative;aspect-ratio:16/9;max-height:calc(100dvh - 145px);margin:auto;border:1px solid #253f4b;overflow:hidden;background:#030a16}canvas{display:block;width:100%;height:100%}.vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 120px 35px #02070c99}#hud{position:absolute;inset:0;pointer-events:none;font-family:Consolas,'Courier New',monospace;text-shadow:0 0 12px #70e5ff55}.hud-top{display:flex;justify-content:space-between;padding:27px 30px}.mission,.points{display:flex;flex-direction:column;gap:8px}small{font-size:12px;color:#8bafbf;letter-spacing:1.8px}.mission strong{font-size:14px;letter-spacing:1.8px}.mission>span{font-size:12px;color:#708b99}.points{text-align:right}.points strong{font-size:28px;letter-spacing:3px;font-weight:400}.points>span{font-size:13px;color:#75def0}.hud-bottom{position:absolute;bottom:25px;left:30px;right:30px;display:flex;justify-content:space-between;align-items:end;gap:20px}.systems{width:22%;max-width:245px}.meter{margin-top:13px}.meter>span{display:flex;justify-content:space-between;font-size:12px;letter-spacing:2px}.meter b{font-weight:400}.meter>div{height:6px;background:#4d91a522;margin-top:9px;transform:skewX(-20deg)}.meter i{display:block;height:100%;background:#89ecff;box-shadow:0 0 12px #6ae6ff66;transition:width .12s}.hull i{background:#bccbd0;box-shadow:none}.energy{width:215px;text-align:center}.energy small{font-size:10px;letter-spacing:1px}.energy kbd{font-size:10px;margin-left:8px}.energy strong{display:block;font-size:17px;color:#c2f7ff;letter-spacing:2px;margin:10px 0}.outputs{display:flex;justify-content:center;gap:14px}.outputs label{font-size:10px;color:#7297a9;letter-spacing:1px;width:50px}.outputs i{display:block;height:4px;background:#6ddcec;margin-top:6px;transition:width .2s}.equipment{display:flex;gap:28px;text-align:right}.equipment small{font-size:10px;letter-spacing:1px}.equipment strong{display:block;font-size:13px;color:#c3e6ef;margin-top:10px;font-weight:400}#torpedo{color:#f3b68d;letter-spacing:5px}.r2track{height:2px;background:#1c3644;margin-top:8px}.r2track i{height:100%;display:block;background:#78dcdf}#ace{display:none;position:absolute;top:30px;left:35%;width:30%;text-align:center;color:#ee9c82;font-size:11px;letter-spacing:2px}#ace>div{height:4px;background:#663b3833;margin-top:10px}#ace i{display:block;background:#ed8f73;height:100%}#notice{position:absolute;top:24%;left:20%;width:60%;text-align:center;opacity:0;transition:opacity .2s}#notice strong{font-size:19px;letter-spacing:3px;color:#aff7ff}#notice span{display:block;margin-top:9px;color:#96b8c7;font-size:12px;letter-spacing:1px}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(90deg,#030911a8,#03091155,#03091190);backdrop-filter:blur(2px)}.hidden{display:none}.panel{text-align:center;width:min(540px,90%);padding:20px}.eyebrow{font-size:11px;color:#89afc3;letter-spacing:3px}h1{font-size:clamp(48px,7vw,100px);font-weight:300;letter-spacing:12px;margin:20px 0 0;text-shadow:0 0 50px #7fdcfa55;color:#effcff}.flight{font-size:17px;letter-spacing:9px;color:#a9d6e6;margin:5px 0 25px;padding-left:9px}.brief{font-size:14px;color:#a9bdc8;line-height:1.9}.mission-tags{display:flex;justify-content:center;gap:20px;font:10px Consolas,monospace;letter-spacing:1px;color:#6993a6;margin:23px 0}.launch{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#b8ecf6;color:#08131c;border:1px solid #c8f7ff;width:100%;padding:17px 22px;letter-spacing:2px;font-size:14px;box-shadow:0 0 30px #73d8ff15}.launch:hover{background:#dcfaff;color:#08131c}.launch span{font-size:11px;letter-spacing:1px;opacity:.7}.hint{font-size:11px;color:#6f94a5;margin-top:18px}.compact{width:min(500px,90%)}h2{font-weight:300;font-size:37px;letter-spacing:4px;margin:20px 0}.compact>p{font-size:14px;color:#9cb4c2}.secondary{margin-top:16px;letter-spacing:2px;font-size:11px}.stats{text-align:left;margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:15px;border-top:1px solid #315266;padding-top:20px;font:13px Consolas,monospace}.stats b{text-align:right;color:#b3f2ff;font-weight:400}#next{font-size:11px;letter-spacing:2px;color:#7c9eae;margin:25px 0}footer{display:flex;gap:23px;align-items:center;justify-content:center;min-height:60px;color:#6d8999;font-size:10px;letter-spacing:1px}footer>div{display:flex;gap:7px;align-items:center}.controller{border-left:1px solid #243a47;padding-left:20px;font-size:10px}@media(max-width:850px){main{padding:0 10px}header{height:60px}.subtitle,#pad,.controller{display:none}.top{gap:6px}.top button{font-size:10px;padding:8px}.viewport{max-height:none}.hud-top{padding:14px}.hud-bottom{left:14px;right:14px;bottom:14px}.equipment{gap:10px}.equipment small,.energy small{font-size:8px}.energy{width:155px}.energy strong{font-size:12px}.points strong{font-size:20px}.mission strong{font-size:10px}footer{gap:10px;flex-wrap:wrap;padding:12px 0}h1{margin-top:12px}.flight{margin-bottom:10px}.brief{font-size:12px}.mission-tags{margin:12px 0}.hint{font-size:9px}.launch{padding:12px;font-size:12px}.eyebrow{font-size:9px}#ace{top:15px}small{font-size:9px}}:fullscreen main{max-width:none;padding:0 16px}:fullscreen .viewport{max-height:calc(100dvh - 130px)}
