:root{--hud:rgba(7,16,30,.82)}body.flight-page{overflow:hidden}.flight-root{position:fixed;inset:66px 0 0;overflow:hidden;background:#070f18}.render-shell{position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,#28475d,#060b15)}#scene{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.vignette{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,7,18,.4) 0%,transparent 35%,rgba(0,5,12,.25) 64%,rgba(0,7,17,.8) 100%);pointer-events:none}.render-fallback{position:absolute;inset:20% 20%;z-index:8;text-align:center;background:#0a1729ee;padding:32px;border-radius:20px}.hud-top{position:absolute;top:20px;left:50%;transform:translateX(-50%);display:flex;gap:5px;max-width:calc(100vw - 370px);z-index:3}.hud-chip{background:rgba(5,14,26,.78);border:1px solid #ffffff17;border-radius:9px;min-width:102px;padding:10px 15px;text-align:center;backdrop-filter:blur(12px)}.hud-chip strong{display:block;font-family:'Arial Narrow',var(--font);font-size:27px;letter-spacing:.5px;line-height:1.15;font-variant-numeric:tabular-nums}.hud-chip small,.hud-chip .chip-label{display:block;color:#92a8bc;font-size:9px;letter-spacing:1.5px}.hud-chip small{color:var(--accent)}.left-overlay{position:absolute;top:19px;left:18px;z-index:3;width:238px;display:flex;flex-direction:column;gap:9px}.mission-panel,.weather-card,.vertical-panel{border:1px solid #ffffff19;border-radius:12px;background:var(--hud);backdrop-filter:blur(16px);padding:14px}.panel-cap{color:#8eacbe;font-size:10px;font-weight:700;letter-spacing:1.3px;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.tag{color:#e3d3ff;padding:3px 7px;border-radius:5px;border:1px solid #9a7bd844;background:#987aff19;font-size:8px;white-space:nowrap}.tag--blue{color:var(--accent);border-color:#65d9ff44}.mission-aircraft{font-size:17px;font-weight:800;letter-spacing:-.3px}.mission-route{font-size:11px;color:#a0b1c1;line-height:1.6;margin:6px 0}.mission-status{font-size:11px;color:#6effc6;min-height:16px}.mission-actions{display:flex;gap:8px;margin-top:12px}.small-btn,.weather-button{background:#193045cc;color:#d7e8f6;border:1px solid #78c5ea33;border-radius:7px;padding:9px 8px;font-size:11px;cursor:pointer}.small-btn:hover,.weather-button:hover{background:#294f6b}.weather-row{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:11px}.weather-button{padding:7px;font-size:10px}.weather-card small{display:block;font-size:9px;margin-top:9px;color:#89a4b5}.nav-display{background:#061629c7;border:1px solid #ffffff24;border-radius:50%;width:156px;height:156px;align-self:center;box-shadow:0 4px 22px #0005}.right-overlay{position:absolute;top:19px;right:15px;z-index:3;display:flex;flex-direction:column;gap:9px;align-items:flex-end}.vertical-panel{display:flex;flex-direction:column;gap:7px;width:83px;padding:10px}.vertical-panel .panel-cap{font-size:8px;text-align:center}.control-btn{display:flex;align-items:center;flex-direction:column;gap:3px;border:1px solid #ffffff15;border-radius:9px;background:#17304b88;color:#d9efff;font-size:20px;padding:8px 4px;cursor:pointer;min-height:50px}.control-btn span{font-size:9px;color:#94aac2}.control-btn.active{color:#67ebbd;background:#2e906630;border-color:#5bc9a566}.warnings{max-width:210px;display:flex;flex-direction:column;gap:6px}.warning{padding:9px;border:1px solid #ff95665d;border-radius:7px;background:#602f28de;color:#fff0e5;font-size:11px;text-align:right;font-weight:800;letter-spacing:.8px}.cockpit-bar{position:absolute;z-index:3;bottom:44px;left:50%;transform:translateX(-50%);max-width:calc(100% - 350px);width:880px;display:flex;align-items:stretch;justify-content:center;gap:8px;pointer-events:auto}.instrument,.throttle-box{min-width:83px;background:rgba(5,14,24,.91);border:1px solid #ffffff21;border-radius:10px;padding:12px 13px;backdrop-filter:blur(10px);display:flex;flex-direction:column;justify-content:center;gap:2px}.instrument>span,.throttle-box label{font-size:9px;letter-spacing:1.3px;color:#91aec3;white-space:nowrap}.instrument b{font-size:21px;letter-spacing:-.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.instrument small{font-size:9px;color:var(--accent);white-space:nowrap}.instrument:has(#i-coords){min-width:192px}.instrument:has(#i-coords) b{font-size:12px}.meter{width:100%;height:3px;border-radius:3px;background:#38475b;margin-top:5px}.meter i{height:3px;display:block;width:50%;background:var(--accent);border-radius:3px}.artificial-horizon{width:95px;min-width:95px;position:relative;overflow:hidden;border:3px solid #35455f;border-radius:50%;background:#68bce8;box-shadow:0 0 0 1px #7798b055}.horizon-sky{position:absolute;inset:0 0 50%;background:#4da9d7}.horizon-ground{position:absolute;inset:50% 0 0;background:#a16c4c}.horizon-mark{position:absolute;top:calc(50% - 10px);left:0;width:100%;text-align:center;font-weight:900;color:#ffe7b1;text-shadow:0 1px 4px black}.throttle-box{min-width:125px;gap:14px}.throttle-box input{width:100%;accent-color:var(--accent)}.throttle-box label{display:flex;justify-content:space-between;gap:8px}.throttle-box label b{color:#fff}.flight-footer{position:absolute;z-index:4;bottom:0;left:0;right:0;height:38px;padding:0 16px;background:#08111feb;border-top:1px solid #ffffff14;display:flex;align-items:center;justify-content:space-between;gap:10px}.flight-legal{font-size:9px;letter-spacing:1px;color:#7692a9}.flight-legal span{color:#4cbdd5;margin:0 6px}.foot-actions{display:flex;gap:10px}.foot-btn{font-size:10px;border:0;background:transparent;color:#a2bed2;cursor:pointer}.foot-btn:hover{color:#fff}.mobile-stick,.mobile-throttle{display:none}.render-shell canvas{outline:none}.setup-dialog{width:min(660px,94vw);max-height:91dvh;background:#071525;border:1px solid #2b5267;border-radius:20px;color:#f2f6ff;box-shadow:0 30px 100px #000d;overflow:auto;padding:30px}.setup-dialog::backdrop{background:#000c;backdrop-filter:blur(12px)}.setup-dialog h2{font-size:30px;letter-spacing:-1.3px;margin:8px 0}.setup-dialog p{font-size:12px;color:#b1c2d0;line-height:1.7}.dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.setup-grid label{display:flex;flex-direction:column;gap:8px;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#8cabc0}.setup-grid select,.setup-grid input[type=range]{width:100%}.setup-grid select{background:#13293c;color:#fff;border:1px solid #31556c;border-radius:7px;padding:13px;font-size:14px}.setup-grid label span{color:var(--accent);font-size:11px}.setup-grid+.primary-btn{margin-top:24px}.small-dialog{width:min(450px,93vw)}.key-grid{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin:25px 0;color:#b6cad9;font-size:12px}.key-grid kbd{background:#213750;border:1px solid #405976;border-radius:5px;padding:6px 9px;color:white;font-family:monospace}.mobile-stick{touch-action:none}
@media(max-width:1220px){.hud-top{max-width:none;top:18px;left:270px;right:115px;transform:none;justify-content:center}.hud-chip{min-width:0;flex:1;padding:9px 5px}.hud-chip strong{font-size:21px}.hud-chip--optional{display:none}.cockpit-bar{max-width:calc(100% - 330px)}.compact-hide{display:none}}
@media(max-width:720px){.flight-root{top:54px}.left-overlay{top:76px;left:10px;width:170px}.mission-panel{padding:10px}.mission-aircraft{font-size:12px}.mission-panel .panel-cap{font-size:8px}.mission-actions{gap:4px}.small-btn{font-size:10px;padding:8px 5px}.weather-card{padding:9px}.weather-card .panel-cap{font-size:8px}.weather-button{font-size:9px}.weather-row{display:block}.weather-row button{margin-top:7px}.nav-display{width:105px;height:105px}.right-overlay{top:76px;right:9px}.vertical-panel{width:52px;padding:5px}.vertical-panel .panel-cap{display:none}.control-btn{min-height:43px;padding:6px 1px;font-size:17px}.control-btn span{font-size:7px}.hud-top{top:9px;left:7px;right:7px;gap:3px}.hud-chip{padding:8px 3px;border-radius:5px}.hud-chip strong{font-size:18px}.hud-chip small,.hud-chip .chip-label{font-size:7px;letter-spacing:.5px}.cockpit-bar{bottom:40px;left:50%;max-width:calc(100% - 8px);width:auto;gap:4px;justify-content:center}.instrument{min-width:63px;padding:8px 5px}.instrument>span{font-size:7px}.instrument b{font-size:15px}.instrument small{font-size:8px}.artificial-horizon{width:66px;min-width:66px}.throttle-box{min-width:95px;padding:7px 8px;gap:8px}.throttle-box label{font-size:8px}.flight-legal{display:none}.flight-footer{justify-content:center}.mobile-stick{position:absolute;left:17px;bottom:138px;z-index:5;display:flex;width:118px;height:118px;border:1px solid #bde5ff38;background:#17324d6b;border-radius:50%;align-items:center;justify-content:center;touch-action:none}.stick-knob{width:48px;height:48px;border-radius:50%;background:#b9efff99;border:2px solid white;box-shadow:0 0 30px #42d4ff70;pointer-events:none;transform:translate(0,0)}.stick-tip{font-size:8px;color:#a6cbdf;position:absolute;top:-16px;white-space:nowrap}.mobile-throttle{position:absolute;right:15px;bottom:140px;z-index:5;display:flex;flex-direction:column;align-items:center;gap:4px;background:#15283ab5;border-radius:9px;padding:4px}.mobile-throttle button{background:#284c65;border:1px solid #7ccfe955;color:#fff;border-radius:6px;width:44px;height:40px;font-size:22px}.mobile-throttle div{font-size:9px;letter-spacing:2px}.warnings{max-width:130px}.warning{font-size:8px}.setup-dialog{padding:20px}.setup-grid{grid-template-columns:1fr}.setup-dialog h2{font-size:24px}}
@media(max-height:540px) and (orientation:landscape){.left-overlay{top:5px;width:160px}.weather-card,.nav-display{display:none}.hud-top{top:5px;left:175px;right:69px}.right-overlay{top:8px}.cockpit-bar{bottom:39px}.mobile-stick{bottom:117px;width:90px;height:90px}.mobile-throttle{bottom:116px}.mission-route{display:none}}
@media(prefers-reduced-motion:reduce){.render-shell *{transition:none!important}}
