*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:#101d26;color:#d9e3dd;font:15px/1.6 system-ui,sans-serif}a{color:inherit}main.flight-shell{max-width:1320px;padding:38px 4vw 50px;margin:auto}.mission-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:24px}.mission-head h1{font-size:clamp(28px,4vw,48px);line-height:1.15;letter-spacing:-.04em;margin:8px 0}.eyebrow{font:11px/1.5 ui-monospace,monospace;letter-spacing:.16em;color:#d0aa83}.mission-head p{max-width:640px;color:#aabfbd;margin:8px 0}.edition-label{font:11px ui-monospace,monospace;color:#d0aa83;padding:8px 12px;border:1px solid #53605e;white-space:nowrap}.cockpit{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:1px;background:#3a4d54;border:1px solid #3a4d54;border-radius:8px;overflow:hidden}.viewport{position:relative;background:#081320;min-width:0}canvas{display:block;width:100%;height:auto;aspect-ratio:1000/560}.flight-controls{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:16px;background:#142b36;border-top:1px solid #2a434e}.flight-controls button{touch-action:none;user-select:none;min-width:90px}button,.flight-button{font:inherit;border:1px solid #59716f;color:#dce7de;background:#203d44;padding:10px 15px;border-radius:4px;cursor:pointer;text-decoration:none;display:inline-block}button:hover,button:focus-visible{background:#31534f;border-color:#b4cdb0}button:focus-visible,a:focus-visible{outline:2px solid #e6b983;outline-offset:3px}button:disabled{opacity:.4;cursor:default}.primary{background:#bad5c0;color:#142d30;border-color:#bad5c0}.telemetry{padding:22px;background:#142630}.mission-status{font:11px ui-monospace,monospace;letter-spacing:.08em;color:#d7b384;margin-bottom:20px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:20px 10px}.metric small{display:block;font:10px/1.5 ui-monospace,monospace;color:#8eaaa9}.metric strong{font:26px/1.3 ui-monospace,monospace;font-weight:400}.metric strong[data-safe=false]{color:#e8a181}.metric strong[data-safe=true]{color:#acd3b4}.metric span{font-size:10px;color:#8eaaa9}meter{width:100%;height:8px;display:block;margin:10px 0 18px}.limits{font-size:12px;border-top:1px solid #40565b;padding-top:15px;color:#afc4bd}.mission-actions{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0}.mode-buttons{display:flex;gap:8px;flex-wrap:wrap}.mode-buttons button{font-size:12px;background:transparent}.mode-buttons .active{border-color:#d6b083;color:#edc39a}.brief-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:28px 0;border-top:1px solid #364d53;padding-top:24px}.brief-grid h2{font-size:17px;margin:0 0 8px}.brief-grid p{font-size:13px;color:#a5bbb5}.debrief{background:#203c42;border:1px solid #71948b;border-radius:6px;padding:22px;margin-top:20px;display:grid;grid-template-columns:1fr auto;gap:20px}.debrief h2{margin:6px 0;font-size:26px}.debrief p{color:#bfd0c5;font-size:13px}.score{text-align:right;font:46px ui-monospace,monospace;color:#dbbf95}.score small{display:block;font:10px system-ui;letter-spacing:.15em}.course-note{border-left:2px solid #c69b74;padding:10px 18px;background:#1a3038;font-size:13px;color:#b5cbc0}.course-note a{color:#e5c194}details{border-top:1px solid #364d53;padding:20px 0;margin-top:25px;color:#b5c8c0}summary{cursor:pointer}video{display:block;max-width:580px;width:100%;margin:16px 0}footer{max-width:1320px;margin:auto;padding:20px 4vw 40px;color:#869f9c;font-size:11px}@media(max-width:850px){.cockpit{grid-template-columns:1fr}.telemetry{padding:16px}.metrics{grid-template-columns:repeat(4,1fr);gap:15px}.limits{margin-top:12px}.brief-grid{grid-template-columns:1fr;gap:12px}.mission-head{display:block}.edition-label{display:inline-block;margin-top:12px}.flight-controls button{min-width:70px;padding:12px}.mission-head h1{font-size:32px}}@media(max-width:480px){main.flight-shell{padding:25px 4vw}.metrics{grid-template-columns:repeat(3,1fr)}.metric strong{font-size:22px}.debrief{grid-template-columns:1fr}.score{text-align:left}.flight-controls{gap:5px}}

canvas:focus-visible{outline:3px solid #e6b983;outline-offset:-3px}.keyboard-help{font-size:13px;color:#b9ccc2;max-width:850px}

.pass-recordings{border-top:1px solid #40565b;margin-top:30px;padding-top:20px}.pass-recordings>p{max-width:900px;color:#b5c8c0;font-size:13px}.pass-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.pass-grid article{min-width:0}.pass-grid h3{font-size:16px}.pass-grid video{margin:8px 0;width:100%;background:#081320}.pass-grid p{font-size:12px;color:#d3ab84}@media(max-width:850px){.pass-grid{grid-template-columns:1fr}}

.flight-controls button.is-pressed{background:#bad5c0;color:#142d30;border-color:#e6b983;box-shadow:inset 0 0 0 2px #e6b983}

.pass-grid{grid-template-columns:1fr;gap:28px}.pass-grid video{max-width:1100px}.pass-grid article{border-top:1px solid #364d53;padding-top:12px}

.key-timeline{margin:12px 0;padding:12px 0}.key-timeline table{border-collapse:collapse;font:13px ui-monospace,monospace;width:100%;max-width:720px}.key-timeline th,.key-timeline td{padding:9px 12px;text-align:left;border-bottom:1px solid #364d53}.key-timeline p{max-width:850px}

.challenge-hints{margin:12px 0;padding:14px 0}.challenge-hints summary{font-weight:600;color:#e5c194}.challenge-hints ol{max-width:900px;padding-left:24px}.challenge-hints li{padding-left:6px;margin:20px 0}.challenge-hints h4{margin:0 0 6px;font-size:15px;color:#d9e3dd}.challenge-hints p{line-height:1.8;font-size:14px}.challenge-hints .hint-note{border-left:2px solid #d0aa83;padding:10px 15px;max-width:880px;background:#1a3038}

.pass-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 8px}.pass-tabs [role=tab]{background:transparent;font-size:14px}.pass-tabs [aria-selected=true]{background:#bad5c0;color:#142d30;border-color:#bad5c0}.pass-grid [role=tabpanel]:focus-visible{outline:2px solid #e6b983;outline-offset:5px}

.attempt-tips{grid-column:1/-1;border-top:1px solid #54716d;padding-top:16px}.attempt-tips h3{margin:0 0 12px;font-size:18px}.attempt-tips ol{padding-left:22px;max-width:950px}.attempt-tips li{padding-left:6px;margin:14px 0}.attempt-tips .tip-evidence{color:#e2c29b}.attempt-tips .review-note{font-size:11px;color:#92aca4}
