:root{--ink:#e6e9e3;--muted:#9faeb1;--mint:#a4f2cc;--gold:#e2b77b;--line:rgba(209,229,224,.2);--panel:rgba(5,18,27,.88);font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Hiragino Sans GB',sans-serif;color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#0a1720}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--mint);outline-offset:4px}button:disabled{opacity:.4;cursor:default}#world,#vignette,#app{position:fixed;inset:0;width:100%;height:100%}#world{display:block}#vignette{pointer-events:none;background:linear-gradient(90deg,rgba(3,13,22,.35),transparent 55%),linear-gradient(0deg,rgba(3,13,22,.4),transparent 20%)}#app{pointer-events:none}#app button,#app input,#app select,#app .interactive{pointer-events:auto}button{border:0;background:none}h1,h2,h3,p{margin:0}.eyebrow{font-size:10px;letter-spacing:.25em;font-weight:600;text-transform:uppercase;color:var(--gold)}.brand{display:flex;align-items:center;gap:13px;letter-spacing:.12em;font-size:13px}.brand-mark{width:34px;height:34px;border:1px solid var(--line);display:grid;place-items:center;transform:rotate(45deg);color:var(--gold)}.brand-mark span{transform:rotate(-45deg);font-size:19px}.brand small{font-size:9px;display:block;letter-spacing:.21em;margin-top:4px;color:var(--muted)}.topbar{position:absolute;top:30px;left:40px;right:40px;display:flex;justify-content:space-between;align-items:center}.topmeta{font:10px/1.8 ui-monospace,monospace;color:#c4c9c4;letter-spacing:.14em;text-align:right}.signal{display:inline-block;width:5px;height:5px;background:var(--mint);border-radius:50%;margin-right:8px}.menu{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,17,27,.94),rgba(5,17,27,.45) 47%,rgba(5,17,27,.04) 75%)}.menu-main{position:absolute;left:7.2%;top:20%;max-width:540px;width:40%}.menu h1{font-weight:300;font-size:clamp(43px,5.7vw,92px);letter-spacing:.13em;line-height:1.15;margin:18px 0 8px;white-space:nowrap}.english-title{font-size:12px;letter-spacing:.44em;color:#e3e7df;margin-bottom:28px}.intro{font-size:12px;line-height:1.9;color:var(--muted);letter-spacing:.06em;max-width:330px}.primary{margin-top:29px;display:flex;justify-content:space-between;align-items:center;padding:17px 22px;background:var(--gold);color:#15232a;width:290px;font-size:14px;font-weight:600;letter-spacing:.12em;transition:background .2s}.primary:hover{background:#f4c98c}.primary .arrow{font-size:23px;font-weight:300}.mode-list{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:1px;max-width:350px}.mode-button{display:flex;align-items:center;gap:10px;padding:10px 0;text-align:left;font-size:11px;color:var(--muted)}.mode-button.active{color:var(--mint)}.mode-button .number{font:9px ui-monospace,monospace;color:#829293}.mode-button.active:after{content:'';height:3px;width:3px;border-radius:50%;background:var(--mint)}.menu-actions{display:flex;gap:20px;margin-top:17px;font-size:11px;color:#a1adb0}.text-button{padding:5px 0;border-bottom:1px solid transparent}.text-button:hover{color:var(--gold);border-color:var(--gold)}.bottomline{position:absolute;left:40px;right:40px;bottom:25px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding-top:15px;font:9px ui-monospace,monospace;letter-spacing:.1em;color:#a4b1b4}.scene-caption{position:absolute;right:5%;bottom:15%;text-align:right}.scene-caption h3{font-size:15px;letter-spacing:.18em;font-weight:400;margin-top:10px}.scene-caption p{color:var(--muted);font-size:10px;letter-spacing:.1em;margin-top:8px}.menu-options{display:flex;gap:13px;margin-top:16px;font-size:11px;color:#cbd0cd;align-items:center}.menu-options select{background:rgba(8,24,34,.8);border:1px solid var(--line);padding:6px 9px;color:#d9ded7;font-size:11px}.mode-description{color:var(--muted);font-size:10px;line-height:1.7;margin-top:10px;min-height:34px;max-width:350px}
.hud{position:absolute;inset:0;color:var(--mint);font:11px ui-monospace,SFMono-Regular,monospace;text-shadow:0 1px 3px #00180d}.hud-top{position:absolute;top:24px;left:30px;right:30px;display:flex;align-items:flex-start;justify-content:space-between}.hud-brand{color:#e1e5da;letter-spacing:.13em;font-size:10px}.hud-brand small{display:block;font-size:8px;color:#a5b4b2;margin-top:6px;letter-spacing:.15em}.hud-heading{position:absolute;left:50%;top:30px;transform:translateX(-50%);width:310px;text-align:center}.heading-scale{border-bottom:1px solid #a4f2cc70;padding:0 0 7px;letter-spacing:12px;font-size:9px}.heading-val{display:inline-block;border:1px solid #a4f2cc70;padding:4px 12px;margin-top:4px;background:#08201c40}.hud-panel{position:absolute;top:41%;display:flex;gap:8px;align-items:center}.hud-panel.left{left:7%}.hud-panel.right{right:7%;text-align:right}.hud-big{font-size:clamp(22px,3vw,40px);font-weight:300;line-height:1}.hud-label{font-size:9px;letter-spacing:.12em;margin-top:9px;opacity:.8}.hud-tape{height:120px;width:12px;background:repeating-linear-gradient(0deg,transparent 0 11px,#a4f2cc80 11px 12px);border-right:1px solid #a4f2cc70}.right .hud-tape{border-left:1px solid #a4f2cc70;border-right:0}.crosshair{position:absolute;left:50%;top:49%;width:65px;height:25px;transform:translate(-50%,-50%);border-bottom:1px solid #b8f9d7}.crosshair:before{content:'';position:absolute;width:5px;height:5px;border:1px solid var(--mint);border-radius:50%;left:30px;top:13px}.crosshair:after{content:'';position:absolute;width:1px;height:10px;background:var(--mint);left:32px;top:25px}.attitude{position:absolute;left:50%;top:50%;width:240px;height:180px;transform:translate(-50%,-50%);overflow:hidden;opacity:.6}.pitch-lines{position:absolute;left:50%;top:50%;width:180px;margin-left:-90px;text-align:center}.pitch-line{border-top:1px solid #a4f2cc80;width:100%;height:42px;position:relative}.pitch-line span{position:absolute;right:-30px;top:-5px;font-size:9px}.hud-bottom{position:absolute;bottom:25px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:flex-end}.telemetry{display:grid;grid-template-columns:65px 65px;gap:13px 19px;padding-left:12px;border-left:1px solid #a4f2cc60}.telemetry strong{display:block;font-size:15px;margin-top:4px;font-weight:400}.telemetry small{font-size:8px;letter-spacing:.13em;opacity:.65}.bar{height:2px;background:#a4f2cc25;margin-top:5px}.bar span{height:2px;display:block;background:var(--mint)}.radar-wrap{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);width:150px;height:150px}.radar{width:100%;height:100%;opacity:.87}.radar-label{position:absolute;bottom:-15px;width:100%;text-align:center;font-size:8px;letter-spacing:.14em}.weapon{min-width:145px;text-align:right;border-right:1px solid #a4f2cc60;padding-right:12px}.weapon .name{font-size:9px;letter-spacing:.15em;opacity:.8}.weapon strong{display:block;font-size:24px;font-weight:300;margin:7px 0}.weapon p{font-size:9px;line-height:1.8}.mission-strip{position:absolute;top:100px;left:30px;max-width:300px}.mission-strip .mode{font-size:9px;color:var(--gold);letter-spacing:.16em;margin-bottom:8px}.mission-strip h3{font-size:12px;font-weight:400;color:#e8e8d9;line-height:1.7}.mission-strip p{color:#adc2bb;font-size:9px;margin-top:7px;line-height:1.8}.hud-controls{position:absolute;top:23px;right:25px;display:flex;gap:8px}.icon-button{border:1px solid #b9d5c530;color:#c2d9c8;padding:7px 10px;font-size:9px;letter-spacing:.08em;background:#03141450}.icon-button:hover{background:#b8f2cf20}.warning{position:absolute;left:50%;top:23%;transform:translateX(-50%);text-align:center;color:#ffba80;font-size:12px;letter-spacing:.14em;padding:8px 18px;border:1px solid #ffba8040;background:#40200f50}.toast{position:absolute;bottom:21%;left:50%;transform:translateX(-50%);font-size:11px;letter-spacing:.1em;padding:11px 18px;color:#dce9dc;background:#0b2429c9;border-left:2px solid var(--gold);max-width:75%;text-align:center}.target-box{position:absolute;border:1px solid #f5c17c;width:38px;height:38px;transform:translate(-50%,-50%)}.target-box.locked{border:2px solid #ff925e}.target-box span{position:absolute;top:43px;white-space:nowrap;font-size:9px;left:50%;transform:translateX(-50%);color:#ffcf97}.waypoint{position:absolute;transform:translate(-50%,-50%);color:var(--gold);text-align:center;max-width:230px}.waypoint .diamond{width:12px;height:12px;border:1px solid var(--gold);transform:rotate(45deg);margin:0 auto 10px}.waypoint span{font-size:9px;white-space:nowrap}.view-tag{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);color:#d2dbd1;font-size:8px;letter-spacing:.12em}.small-help{position:absolute;bottom:195px;left:28px;color:#c0d0c5;font-size:9px;line-height:2;letter-spacing:.04em;opacity:.9}
.overlay{position:absolute;inset:0;background:rgba(2,13,21,.8);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;pointer-events:auto}.dialog{width:min(680px,90vw);max-height:88vh;overflow:auto;background:linear-gradient(145deg,#12252e,#071820);border:1px solid var(--line);padding:34px 40px;box-shadow:0 40px 120px #0008}.dialog h2{font-size:28px;font-weight:300;letter-spacing:.13em;margin:12px 0 16px}.dialog p{font-size:12px;color:var(--muted);line-height:1.8}.dialog .primary{width:100%;margin-top:23px}.dialog-actions{display:flex;gap:18px;font-size:11px;margin-top:17px}.dialog-actions button{color:#bfc9c4;padding:9px 0}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #c2ded412;gap:20px;font-size:12px}.setting-row small{font-size:9px;color:var(--muted);display:block;margin-top:4px}.setting-row input[type=range]{accent-color:var(--gold);width:150px}.setting-row input[type=checkbox]{accent-color:var(--gold)}select{background:#0b1c26;border:1px solid #c1dbcd30;color:#e2e4dc;padding:7px 12px}.key-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-top:15px}.key-grid button{border:1px solid var(--line);padding:5px 9px;color:var(--gold);min-width:50px;font-size:10px}.key-grid .setting-row{font-size:10px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 26px;margin:22px 0}.help-grid div{font-size:11px;color:#b9c6bd;border-bottom:1px solid var(--line);padding-bottom:10px}.help-grid b{display:inline-block;min-width:80px;color:var(--gold);font-weight:400}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:22px 0;padding:20px 0;gap:20px}.score-grid small{color:var(--muted);font-size:9px;letter-spacing:.1em}.score-grid strong{font:27px ui-monospace,monospace;font-weight:300;display:block;margin-top:9px}.map-canvas{width:100%;height:330px;background:#081d26;border:1px solid var(--line);margin-top:15px}.map-legend{margin-top:10px!important;font-size:10px!important}#loading{position:fixed;inset:0;background:#091a24;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:20}#loading h1{font-size:28px;font-weight:300;letter-spacing:.12em;margin:18px}#loading p{font-size:11px;color:var(--muted)}.loading-bar{height:2px;width:200px;margin-top:30px;background:linear-gradient(90deg,var(--gold),transparent);animation:pulse 1.3s infinite}@keyframes pulse{50%{opacity:.25}}#fatal{position:fixed;inset:0;z-index:30;background:#0b1b24;padding:15vh 10vw;color:#e5c49a;line-height:2;white-space:pre-wrap}#fatal[hidden]{display:none}.performance{position:absolute;bottom:5px;right:8px;font:8px ui-monospace;color:#d1d9cf66}
@media(max-width:800px){.topbar{top:20px;left:24px;right:24px}.topmeta{display:none}.menu-main{left:7%;top:20%;width:85%;max-width:450px}.menu h1{font-size:54px}.intro{max-width:280px}.scene-caption{display:none}.bottomline{left:24px;right:24px;font-size:8px}.bottomline span:last-child{display:none}.menu{background:linear-gradient(90deg,#061621ed,#06162160)}.hud-panel.left{left:3%}.hud-panel.right{right:3%}.hud-heading{width:220px;top:55px}.mission-strip{top:105px;left:18px;max-width:200px}.hud-top{left:18px}.hud-controls{right:18px}.radar-wrap{width:110px;height:110px;bottom:40px}.dialog{padding:24px}.small-help{display:none}.hud-bottom{left:15px;right:15px}.telemetry{grid-template-columns:50px 50px;gap:10px}.weapon{min-width:110px}.hud-big{font-size:27px}.key-grid{grid-template-columns:1fr}.topbar .brand{font-size:11px}.mode-description{max-width:290px}.english-title{font-size:10px}}

.source-link{pointer-events:auto;color:inherit;text-decoration:none;font-size:10px}.osm-credit{position:absolute;bottom:5px;left:8px;color:#b8c9c3;font:10px ui-monospace,monospace}.bottomline .credits-footer{font:12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#d9e5df;letter-spacing:.04em;text-decoration:underline;text-underline-offset:3px;padding:4px 0;white-space:nowrap}.bottomline .credits-footer:hover{color:var(--gold)}.menu-actions{gap:16px}

.bindings-title{margin-top:24px}.fine-print{font-size:9px!important}

.menu-main{top:15%}.menu h1{font-size:clamp(43px,5.2vw,82px)}.hit-marker{position:absolute;left:50%;top:54%;transform:translateX(-50%);font:11px ui-monospace;color:#ffdc8c;border-top:1px solid #ffdc8c88;padding:6px 12px;text-shadow:0 1px 3px #000}.hit-marker:before{content:"×";display:block;font-size:27px;line-height:20px;text-align:center}
