:root{--bg: #0f1418;--bg2: #151c22;--panel: #1a232b;--line: #2a3640;--fg: #e7ecef;--muted: #9aa8b3;--sign-y: #f3c316;--sign-k: #0b0b0b;--navy: #0d2150;--ok: #4cc98c;--warn: #f2b705;--bad: #ff4d4d;--red-line: #c8191b;--f-display: "Barlow Condensed", "Arial Narrow", "Roboto Condensed", sans-serif;--f-body: "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--f-mono: "IBM Plex Mono", ui-monospace, "Consolas", monospace;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html{height:100%}body{min-height:100%}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 var(--f-body);-webkit-font-smoothing:antialiased}a{color:var(--sign-y)}kbd{font:600 .78em var(--f-mono);background:#0b0f12;border:1px solid #3a4652;border-bottom-width:2px;border-radius:4px;padding:.05em .45em;color:#fff;white-space:nowrap}:focus-visible{outline:2px solid var(--sign-y);outline-offset:2px}h1,h2,h3{font-family:var(--f-display);font-weight:700;letter-spacing:.01em;text-wrap:balance;margin:0 0 .4em;line-height:1.1}h2{font-size:clamp(1.9rem,3.4vw,2.6rem)}h3{font-size:1.35rem}p{margin:0 0 1em}.muted{color:var(--muted)}.eyebrow{font:600 .78rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.sign{display:inline-flex;align-items:stretch;font:700 1.05rem/1 var(--f-display);letter-spacing:.04em;border:2px solid var(--sign-k);border-radius:3px;overflow:hidden;vertical-align:middle}.sign .loc{background:var(--sign-k);color:var(--sign-y);padding:.32em .55em;border:2px solid var(--sign-y)}.sign .dir{background:var(--sign-y);color:var(--sign-k);padding:.32em .6em}.topbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:#0f1418eb;backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:21;background:var(--bg)}.topbar .in{max-width:1320px;margin:0 auto;display:flex;align-items:center;gap:18px;padding-block:10px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.brand{display:flex;align-items:center;gap:10px;font:700 1.15rem var(--f-display);letter-spacing:.03em;white-space:nowrap}.brand img{width:30px;height:30px}.toc{display:flex;gap:2px;overflow-x:auto;flex:1;min-width:0;scrollbar-width:none}.toc a{color:var(--muted);text-decoration:none;font:500 .84rem var(--f-body);padding:6px 8px;border-radius:6px;white-space:nowrap}.toc a:hover{color:var(--fg);background:var(--panel)}.btn{display:inline-flex;align-items:center;gap:8px;font:600 .95rem var(--f-body);padding:10px 18px;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--fg);cursor:pointer;text-decoration:none}.btn:hover{border-color:#4a5a66}.btn.primary{background:var(--sign-y);color:var(--sign-k);border-color:var(--sign-y)}.btn.primary:hover{filter:brightness(1.08)}.btn[disabled]{opacity:.45;cursor:not-allowed}.wrap{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}section.sec{padding-block:64px;border-top:1px solid var(--line);scroll-margin-top:64px}.sec-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}.sec-head h2{margin:0}.lead{font-size:1.12rem;color:#cdd6dc;max-width:68ch}.prose{max-width:70ch}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.grid2>*,.grid3>*{min-width:0}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px}.card h3{margin-top:0}.card ul{padding-left:1.1em;margin:.4em 0 0}.card li{margin:.25em 0}.tag{display:inline-block;font:600 .72rem var(--f-mono);letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:99px;border:1px solid var(--line);color:var(--muted)}.tag.y{color:var(--sign-k);background:var(--sign-y);border-color:var(--sign-y)}.figure{background:#0c1115;border:1px solid var(--line);border-radius:12px;padding:14px;overflow-x:auto}.figure svg{display:block;width:100%;height:auto;min-width:560px}.figure figcaption{color:var(--muted);font-size:.88rem;margin-top:8px}.note{border-left:3px solid var(--sign-y);background:#f3c31612;padding:12px 16px;border-radius:0 8px 8px 0;margin:16px 0;max-width:75ch}.note.red{border-color:var(--bad);background:#ff4d4d12}.hero{position:relative;overflow:hidden;padding-block:56px 40px}.hero:after{content:"";position:absolute;inset:auto 0 0;height:10px;background:repeating-linear-gradient(-45deg,var(--sign-y) 0 18px,var(--sign-k) 18px 36px);opacity:.9}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center}.hero h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:.98;margin:14px 0 16px;text-transform:uppercase}.hero h1 em{font-style:normal;color:var(--sign-y)}.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.facts div{background:var(--bg2);padding:16px}.facts b{display:block;font:700 1.9rem/1 var(--f-display);color:var(--sign-y);font-variant-numeric:tabular-nums}.facts span{color:var(--muted);font-size:.86rem}@media (max-width: 860px){.hero-grid{grid-template-columns:1fr}}.sop{list-style:none;padding:0;margin:0;display:grid;gap:10px;counter-reset:s}.sop li{counter-increment:s;display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.sop li:before{content:counter(s,decimal-leading-zero);font:700 1.6rem/1 var(--f-display);color:var(--sign-k);background:var(--sign-y);border-radius:6px;display:grid;place-items:center;height:44px}.sop b{font-family:var(--f-display);font-size:1.15rem;letter-spacing:.02em}.sop p{margin:4px 0 0;color:#c7d0d6;font-size:.95rem}.sop .k{float:right}.tbl{width:100%;border-collapse:collapse;font-size:.95rem}.tbl th,.tbl td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.tbl th{font:600 .75rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.tbl td.ph{font-family:var(--f-mono);color:#fff;font-size:.9rem}.tbl td.num{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--bad);font-weight:600}.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--bg2)}.sig{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:start}.sig svg{width:92px;height:92px;background:#0c1115;border-radius:10px;border:1px solid var(--line)}.quiz{display:grid;gap:14px}.q{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.q .qt{font-weight:600;margin-bottom:10px}.q label{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:8px;cursor:pointer}.q label:hover{background:#ffffff0a}.q.answered label.right{background:#4cc98c24}.q.answered label.wrong{background:#ff4d4d24}.q .exp{display:none;color:var(--muted);font-size:.92rem;margin-top:8px}.q.answered .exp{display:block}.setup{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.field label.t{display:block;font:600 .75rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.seg{display:grid;gap:8px}.seg label{display:flex;gap:10px;align-items:flex-start;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer}.seg input{accent-color:var(--sign-y);margin-top:4px}.seg label:has(input:checked){border-color:var(--sign-y);background:#f3c31614}.seg small{display:block;color:var(--muted)}.gate{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:20px;padding:16px;border:1px dashed #4a5a66;border-radius:12px}.gate label{display:flex;gap:10px;align-items:center;cursor:pointer}.gate input{accent-color:var(--sign-y);width:18px;height:18px}.hist{font-size:.9rem}footer{padding-block:40px;color:var(--muted);font-size:.85rem;border-top:1px solid var(--line)}#simRoot{position:fixed;inset:0;z-index:100;background:#000}#simRoot canvas{display:block}.loading{position:fixed;inset:0;z-index:110;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 120%,#22303b,#0b0f12 70%)}.loading .box{width:min(460px,86vw);text-align:center}.loading .bar{height:8px;background:#1f2a33;border-radius:99px;overflow:hidden;margin:18px 0 10px}.loading .bar i{display:block;height:100%;width:0;background:repeating-linear-gradient(-45deg,var(--sign-y) 0 10px,#d9a90a 10px 20px);transition:width .3s}.loading .tip{color:var(--muted);font-size:.92rem;min-height:3em}.hud{position:absolute;inset:0;pointer-events:none;font:13px/1.4 var(--f-body);color:#fff}.hud .panel{background:#0c1116bd;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 12px;backdrop-filter:blur(6px);pointer-events:auto}.hud .ptitle{font:600 .68rem var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.hud-top{position:absolute;top:calc(10px + env(safe-area-inset-top,0px));left:calc(10px + env(safe-area-inset-left,0px));right:calc(282px + env(safe-area-inset-right,0px));display:grid;grid-template-columns:280px 1fr;gap:10px;align-items:start}.hud-left{display:grid;gap:8px}.steps ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}.steps li{display:grid;grid-template-columns:20px 1fr auto;gap:6px;align-items:center;padding:2px 6px;border-radius:6px;color:#9fb0bb;font-size:12px;line-height:1.3}.steps li .n{font:600 11px var(--f-mono);color:#6f808c}.steps li.done{color:#6f808c;text-decoration:line-through}.steps li.done .n:before{content:"\2713";color:var(--ok)}.steps li.done .n{font-size:0}.steps li.done .n:before{font-size:12px}.steps li.now{background:#f3c31629;color:#fff;font-weight:600}.steps li.now .n{color:var(--sign-y)}.hint-wrap{display:grid;justify-items:center;gap:8px}.hint{max-width:640px;background:#f3c316f0;color:#111;font-weight:600;padding:9px 16px;border-radius:8px;text-align:center;box-shadow:0 6px 24px #0000004d}.hint:empty{display:none}.toasts{display:grid;gap:6px;justify-items:center}.toast{background:#0c1116e0;border-left:4px solid #7fb7ff;padding:7px 12px;border-radius:6px;max-width:560px;transition:opacity .6s,transform .6s}.toast.good{border-color:var(--ok)}.toast.warn{border-color:var(--warn)}.toast.bad{border-color:var(--bad);background:#3c0a0ceb;font-weight:600}.toast.out{opacity:0;transform:translateY(-6px)}.scorebox{display:flex;justify-content:space-between;align-items:end}.scorebox .score{font:700 2.4rem/1 var(--f-display);color:var(--sign-y);font-variant-numeric:tabular-nums}.scorebox .time{font:500 .85rem var(--f-mono);color:var(--muted)}.hud-right{position:absolute;right:calc(10px + env(safe-area-inset-right,0px));top:calc(10px + env(safe-area-inset-top,0px));width:262px;display:grid;gap:8px}.gauge canvas{width:240px;height:150px;display:block}.gauge-read{display:flex;justify-content:space-between;align-items:baseline;margin-top:-8px}.gauge-read b{font:700 1.6rem var(--f-display);font-variant-numeric:tabular-nums}.gauge-read b.warn{color:var(--warn)}.gauge-read b.bad{color:var(--bad)}.gauge-read span{color:var(--muted);font:500 11px var(--f-mono)}.status .srow{display:flex;justify-content:space-between;gap:8px;padding:2px 0;font-size:12px}.status .srow span{color:var(--muted)}.status b.ok{color:var(--ok)}.status b.warn{color:var(--warn)}.status b.bad{color:var(--bad)}.comms #hComms{max-height:120px;overflow:auto;display:grid;gap:4px;font-size:12px}.comms .cm b{font:600 10px var(--f-mono);padding:1px 5px;border-radius:3px;margin-right:4px}.comms .cm.cockpit b{background:#2e6be6}.comms .cm.ground b{background:var(--sign-y);color:#111}.hud-bottom{position:absolute;left:calc(10px + env(safe-area-inset-left,0px));right:calc(10px + env(safe-area-inset-right,0px));bottom:calc(10px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:end}.dash{display:flex;gap:16px;align-items:center}.dash .speed b{font:700 3rem/1 var(--f-display);font-variant-numeric:tabular-nums}.dash .speed span{color:var(--muted);margin-left:4px}.gear{display:grid;gap:2px}.gear span{font:700 1rem/1 var(--f-display);padding:3px 8px;border-radius:4px;color:#6f808c;text-align:center}.gear span.on{background:var(--sign-y);color:#111}.dash-col{display:grid;gap:6px}.pill{font:600 10.5px var(--f-mono);padding:3px 8px;border-radius:99px;border:1px solid #3a4652;color:#6f808c;text-align:center;letter-spacing:.06em}.pill.on{border-color:var(--bad);color:#fff;background:#ff4d4d4d}#hWS.on{border-color:var(--ok);background:#4cc98c40}.steerbar{position:relative;width:120px;height:8px;background:#26313a;border-radius:99px}.steerbar i{position:absolute;top:-3px;width:6px;height:14px;background:#fff;border-radius:3px;transform:translate(-50%)}.actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;pointer-events:auto}.actions button{pointer-events:auto;display:flex;gap:6px;align-items:center;font:600 12px var(--f-body);color:#fff;background:#0c1116c7;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:7px 10px;cursor:pointer}.actions button:hover{border-color:var(--sign-y)}.minimap{position:relative;padding:6px}.minimap canvas{display:block;width:210px;height:210px;border-radius:6px}.minimap .cam{position:absolute;left:12px;bottom:10px;font:500 10.5px var(--f-mono);color:var(--muted)}.dialog{position:absolute;left:50%;bottom:120px;transform:translate(-50%);width:min(720px,92vw);background:#0a0e12f2;border:1px solid var(--sign-y);border-radius:12px;padding:14px 16px;pointer-events:auto;box-shadow:0 16px 50px #00000080}.dlg-title{font:700 1.2rem var(--f-display);color:var(--sign-y)}.dlg-sub{color:var(--muted);font-size:12px;margin-bottom:8px}.dialog .opt{display:flex;gap:10px;align-items:center;width:100%;text-align:left;font:500 14px var(--f-mono);color:#fff;background:#141b21;border:1px solid #2c3842;border-radius:8px;padding:10px 12px;margin-top:6px;cursor:pointer}.dialog .opt:hover{border-color:var(--sign-y)}.signal{position:absolute;inset:0;display:grid;place-items:center}.sig-card{background:#0c1116e6;border:2px solid var(--ok);border-radius:14px;padding:18px 26px;text-align:center;font:600 1rem var(--f-body)}.sig-icon{font-size:3rem}.overlay{position:absolute;inset:0;background:#05080ab8;display:grid;place-items:center;pointer-events:auto;padding:16px;overflow:auto}.overlay .card{width:min(560px,100%)}.overlay .card.wide{width:min(980px,100%)}.overlay .row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.overlay .keys{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;font-size:13px;color:#cdd6dc}.deb-head{display:grid;grid-template-columns:110px minmax(0,1fr);gap:18px;align-items:center}.grade{font:700 4.4rem/1 var(--f-display);text-align:center;background:var(--sign-y);color:#111;border-radius:12px;padding:12px 0}.grade.g-GAGAL{font-size:1.55rem;background:var(--bad);color:#fff;padding:30px 0}.grade.g-D,.grade.g-E{background:#ff8a3d}.deb-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--line);border-radius:10px;overflow:hidden;margin:16px 0}.deb-stats div{background:var(--bg2);padding:10px 12px}.deb-stats span{display:block;color:var(--muted);font-size:11.5px}.deb-stats b{font:700 1.35rem var(--f-display);font-variant-numeric:tabular-nums}.deb-cols{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px}.deb-cols>*{min-width:0}.deb-steps{padding-left:1.4em;margin:0;font-size:13px}.deb-steps li.ok::marker{color:var(--ok)}.deb-steps li.no{color:var(--bad)}.deb-pen{list-style:none;padding:0;margin:0;display:grid;gap:8px;max-height:300px;overflow:auto}.deb-pen li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;background:var(--bg2);border-radius:8px;padding:8px 10px;font-size:13px}.deb-pen .pts{font:700 1.2rem var(--f-display);color:var(--bad)}.deb-pen small{display:block;color:var(--muted)}@media (max-height: 820px){.comms{display:none}.status .srow{padding:0}}@media (max-width: 1100px){.hud-top{grid-template-columns:230px 1fr}}@media (max-width: 760px){.deb-cols{grid-template-columns:1fr}.hud-top{grid-template-columns:1fr;right:10px}.hud-left,.hud-right,.minimap{display:none}}@media (prefers-reduced-motion: reduce){*{transition:none!important;scroll-behavior:auto!important}}
