/* V48 flight deck: compact perimeter, quiet glass, readable native keycaps.
 * No universe, object material, camera or physics style is changed here. */
:root{--edge:22px;--line:rgba(var(--accent-rgb),.17)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.campaign-view-switch{position:fixed;z-index:40;left:var(--edge);top:108px;display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:7px;background:#061018e8;backdrop-filter:blur(10px)}.campaign-view-switch[hidden]{display:none}.campaign-view-switch button{display:flex;align-items:center;gap:6px;border:0;border-radius:4px;background:transparent;color:#829ea9;font:500 9px inherit;padding:6px 9px}.campaign-view-switch .icon{width:12px;height:12px}.campaign-view-switch button[aria-pressed=true]{color:var(--accent);background:#1d424a65}.campaign-view-switch button:focus-visible{outline:1px solid var(--accent);outline-offset:2px}body[data-mode=campaign][data-campaign-view=route] .chapter-stamp{top:159px}body[data-mode=campaign][data-campaign-view=film] .campaign-view-switch{top:24px;left:50%;transform:translateX(-50%)}
.identity{top:18px;gap:9px}.identity img{width:31px;height:31px}.identity strong{font-size:14px;letter-spacing:-.02em}.identity span{font-size:8px;letter-spacing:.045em}
.modes{top:66px;gap:3px;border:1px solid var(--line);padding:3px;border-radius:8px;background:#0610187a;backdrop-filter:blur(12px)}
.modes button{min-height:29px;padding:7px 10px;font-size:9px;border:0;border-radius:5px;gap:7px}.modes .icon{width:13px;height:13px}
.modes button[aria-pressed=true]{background:rgba(var(--accent-rgb),.105);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.12)}
.top-actions{top:18px;gap:5px}.top-actions .chip,.top-actions .icon-button{height:33px;border-radius:7px;background:#07121b91;border-color:#c9e8f01b}.top-actions .icon-button{width:33px}.top-actions .icon{width:15px;height:15px}.top-actions .chip{font-size:10px;padding:0 10px;gap:8px}.top-actions .chip[data-action=route]{width:33px;padding:0;position:relative}.top-actions .chip[data-action=route]>span{display:none}
.icon{stroke-width:1.5}.icon-button,.chip,.key-button,.small-action,.primary,.secondary{transition:background .18s,border-color .18s,color .18s;box-shadow:inset 0 1px #ffffff05}
.icon-button:hover,.chip:hover,.key-button:hover,.small-action:hover{border-color:rgba(var(--accent-rgb),.45);background:#152d389e}
.top-actions kbd,.target-actions kbd{font-size:7px;min-width:14px;height:15px;line-height:13px;box-shadow:0 1px 0 #0008}
.target-area{top:66px;width:232px}.target-chip{min-height:31px;font-size:10px;padding:6px 9px}.target-chip small{font-size:6px;letter-spacing:.06em}.target-chip b{font-size:11px}.target-chip>.icon{width:11px;height:11px}
.target-card{height:96px;margin-top:5px;border-radius:8px;border-color:#b7dfef16;background:linear-gradient(120deg,#18313b55,#06101c4a)}.target-card canvas{width:91px;height:91px}.target-card h1{font-size:21px;letter-spacing:-.035em;line-height:1.12;margin:4px 0}.target-card small{font-size:7px;letter-spacing:.1em}.target-card p{font-size:9px;margin:5px 0;line-height:1.4}.target-card .text-link{font-size:9px}
.target-actions{gap:6px;margin-top:7px}.target-actions .primary{height:34px;min-height:34px;font-size:10px;border-radius:7px}.target-actions .icon-button{width:34px;height:34px;border-radius:7px}.target-actions .icon{width:14px;height:14px}
.target-lock{font-size:8px;padding:6px 0 2px;min-height:25px}.target-lock .icon{width:12px;height:12px}
.bottom-controls,body[data-mode=campaign] .bottom-controls{bottom:29px;width:335px}.bottom-controls{padding:11px 15px 9px;border:1px solid #b7dfef18;border-radius:11px;background:linear-gradient(160deg,#091721b5,#030b1299);backdrop-filter:blur(12px)}
.view-switch{gap:3px;margin-bottom:11px}.view-switch button{height:26px;min-height:26px;padding:0 8px;font-size:9px;gap:5px}.view-switch .icon{width:12px;height:12px}.view-switch>kbd{height:15px;font-size:7px;margin-left:4px}
.speed-heading{margin-bottom:9px}.speed-heading small{font-size:6px;letter-spacing:.12em;margin-bottom:4px}.speed-heading strong{font-size:18px}.limit-value b{font-size:10px}.speed-track{height:12px;background-size:auto}.speed-unit{padding:0 2px 17px}.speed-labels{margin-top:7px;font-size:6px}.speed-labels span{font-size:6px!important}.speed-labels #speed-tip{display:none}.speed-drag-hint{bottom:-10px;font-size:6px!important}.speed-labels span:last-child{margin-left:auto}
.flight-keys{gap:6px}.key-button{position:relative;display:flex;align-items:center;justify-content:center;min-width:46px;width:46px;height:42px;padding:3px 3px 9px;border-radius:7px;background:#0b1721a1}.key-button .icon{width:18px;height:18px;margin:0 8px 0 0}.key-button kbd{position:absolute;right:4px;bottom:4px;min-width:15px;height:15px;line-height:13px;padding:0 2px;font-size:9px;border:1px solid #b8dbe144;border-radius:3px;background:#07121c;box-shadow:0 1px 0 #0009;color:#cbdfe4}.key-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.key-button.held{background:rgba(var(--accent-rgb),.23);border-color:var(--accent)}.key-button.held kbd{color:#061217;background:var(--accent);box-shadow:none;transform:translateY(1px)}
.stop-key{height:42px;min-width:49px;border-radius:7px;gap:4px}.stop-key kbd{font-size:6px;height:13px;line-height:11px;min-width:32px}.stop-key .icon{width:12px;height:12px}
.manual-pro{margin-top:7px;font-size:7px}.manual-pro kbd{font-size:7px;height:13px}.manual-pro button{font-size:8px;padding:5px 7px}.flight-status{font-size:6px;line-height:1.5;margin-top:8px;letter-spacing:.06em;color:#8ba7b0}
.onboarding,body[data-mode=free] .onboarding{bottom:228px;max-width:310px;font-size:9px;padding:7px 10px;line-height:1.5;border-radius:7px}.onboarding .icon{width:14px;height:14px}
.radar-unit{width:182px;bottom:29px;border-color:#b8d6e21c;border-radius:10px;background:linear-gradient(150deg,#0a1b25a3,#030c1690);backdrop-filter:blur(10px);overflow:visible}.radar-heading{height:31px;padding:0 10px;font-size:7px;letter-spacing:.1em}.radar-heading button{width:34px;height:24px;gap:4px}.radar-heading .icon{width:12px;height:12px}.radar-heading kbd{font-size:6px;height:13px;padding:0 3px}.radar-unit canvas{display:block;width:100%;height:auto;aspect-ratio:1;outline-offset:-3px}.radar-unit canvas:focus-visible{outline:1px solid var(--accent);border-radius:5px}
.radar-footer{padding:3px 10px 8px;gap:4px}.radar-footer strong{font-size:6px}.radar-footer span{font-size:7px}.radar-legend{padding:0 7px 9px;gap:6px;align-items:center;font-size:6px;display:flex;flex-wrap:nowrap}.radar-key{white-space:nowrap}.radar-tools{display:flex;gap:2px;margin-left:auto;align-items:center}.radar-tools button{display:grid;place-items:center;border:1px solid #b1d5dd17;background:#0e243179;color:#b8d0d8;border-radius:4px;width:18px;height:21px;padding:0;font-size:12px}.radar-tools #radar-auto{width:30px;font-size:6px}.radar-tools #radar-auto[aria-pressed=true]{color:var(--accent);border-color:rgba(var(--accent-rgb),.35)}.radar-tools #radar-help{font-size:9px;width:17px}.radar-explanation{position:absolute;left:-1px;bottom:100%;width:calc(100% + 2px);box-sizing:border-box;padding:12px;margin:0 0 7px;border:1px solid var(--line);border-radius:8px;background:#081722f7;font-size:9px;line-height:1.6;color:#b5cbd2;box-shadow:0 8px 25px #0008;z-index:60}
.context-actions,body[data-mode=campaign] .context-actions{bottom:65px;width:174px;gap:6px}.small-action{min-height:30px;border-radius:6px;font-size:9px;padding:0 9px;gap:7px}.small-action .icon{width:12px;height:12px}.earth-telemetry{padding-top:7px}.earth-telemetry b{font-size:11px}.earth-telemetry small,.earth-telemetry span{font-size:6px}
.radio{width:250px;gap:9px;padding:10px 0 10px 10px;border-left-width:1px;border-radius:0 8px 8px 0}.radio-device{width:26px}.radio-device>.icon{width:20px;height:20px}.radio-device small,.radio-device .wave{display:none}.radio p{font-size:11px;line-height:1.65;margin:6px 0 9px}.radio header{font-size:7px;letter-spacing:.08em}.radio-copy{padding-right:9px}
.research-tracker{top:117px;width:187px;padding:8px 10px;border-left-width:1px;border-radius:0 7px 7px 0}.research-tracker small{font-size:6px!important}.research-tracker strong{font-size:11px!important}.research-tracker span{font-size:8px!important;line-height:1.4!important}.field-event{top:222px;max-width:187px;padding:8px 10px;font-size:8px}.field-event strong{font-size:10px}.field-event p{font-size:8px}
.chapter-stamp{top:119px;max-width:200px}.chapter-stamp small{font-size:7px}.chapter-stamp div{font-size:20px}.chapter-stamp p{font-size:9px;line-height:1.5}.campaign-row .primary{font-size:10px;min-width:145px;height:34px}.campaign-row .icon-button{width:27px;height:29px}.campaign-row .rate{min-width:45px}.rate b{font-size:11px}.rate span{font-size:6px}.journey-meta{font-size:7px;margin-bottom:7px}.journey-track{margin-bottom:11px}.campaign-controls>p{font-size:8px}.campaign-timing{font-size:7px}.campaign-preview-actions{gap:5px}.campaign-preview-actions button{font-size:8px;padding:7px}
.copyright{bottom:11px}.copyright span{font-size:6px;letter-spacing:.075em}.copyright small{font-size:7px}
.drawer{border-radius:11px;width:min(425px,calc(100vw - 24px));background:#07111bf5}.drawer-head{height:79px;padding:0 21px}.drawer-head h2{font-size:23px}#drawer-body{height:calc(100% - 79px);padding:18px 21px 27px}.drawer-head small{font-size:7px}.drawer .setting-tabs button{font-size:9px;min-height:32px}.drawer .target-row{min-height:52px}.drawer .target-row b{font-size:11px}.drawer .target-row small{font-size:8px}
@media(max-width:900px){:root{--edge:14px}.target-area{width:212px}.identity strong{font-size:12px}.identity span{font-size:7px}.top-actions .chip{padding:0 8px}.bottom-controls,body[data-mode=campaign] .bottom-controls{width:305px}.radar-unit{width:160px}.radio{width:218px}.context-actions,body[data-mode=campaign] .context-actions{width:152px}.target-card canvas{width:80px;height:80px}.target-card{height:87px}.target-card h1{font-size:18px}.target-card p{font-size:8px}.key-button{min-width:42px;width:42px}.flight-keys{gap:5px}}
@media(max-width:640px){:root{--edge:12px}.identity{top:14px;gap:6px}.identity img{width:25px;height:25px}.identity strong{font-size:11px}.identity span{font-size:6px}.identity span i{display:none}.top-actions{top:12px;right:12px;gap:3px}.top-actions .chip,.top-actions .icon-button,.top-actions .chip[data-action=route]{width:28px;height:29px;min-height:29px;padding:0}.top-actions .chip span,.top-actions .chip kbd{display:none}.top-actions .icon{width:13px;height:13px}.modes{top:57px;left:12px}.modes button{font-size:8px;min-height:26px;padding:6px 8px}.modes .icon{display:block;width:11px;height:11px}.target-area{top:99px;right:12px;width:181px;max-width:calc(100vw - 170px)}.target-chip small{font-size:5px}.target-chip b{font-size:9px}.target-card{height:78px}.target-card canvas{width:66px;height:66px}.target-card h1{font-size:16px}.target-card small{font-size:6px}.target-card p{font-size:7px}.target-card .text-link{font-size:8px}.target-actions .primary{height:31px;min-height:31px;font-size:9px}.target-actions .icon-button{height:31px;width:31px}.target-lock{min-height:23px;font-size:7px}.target-lock .icon{width:10px;height:10px}.bottom-controls,body[data-mode=campaign] .bottom-controls{bottom:31px;width:calc(100vw - 26px);max-width:350px;padding:9px 12px 7px}.view-switch{margin-bottom:9px}.speed-heading strong{font-size:16px}.speed-heading small{font-size:6px}.speed-heading .limit-value b{font-size:9px}.speed-unit{padding-bottom:17px}.key-button{width:44px;min-width:44px;height:38px}.flight-keys{gap:7px}.stop-key{height:38px;min-width:48px}.flight-status{margin-top:6px;font-size:5.8px}.radar-unit,body[data-mode=campaign] .radar-unit{width:139px;bottom:222px;left:12px}.radar-heading{height:28px;padding:0 7px;font-size:6px}.radar-footer{padding:2px 6px 5px}.radar-footer strong{font-size:5px}.radar-footer span{font-size:6px}.radar-legend{padding:0 5px 7px;gap:3px}.radar-key{font-size:5px}.radar-key:first-child{display:none}.radar-tools button{height:20px;width:17px}.radar-tools #radar-auto{width:27px}.radar-tools #radar-help{width:15px}.radar-explanation{font-size:8px;padding:9px}.context-actions,body[data-mode=campaign] .context-actions{bottom:224px;right:12px;width:145px;gap:5px}.context-actions .small-action{min-height:27px;font-size:8px;padding:0 7px}.earth-telemetry b{font-size:10px}.earth-telemetry small,.earth-telemetry span{font-size:6px}.radio{width:199px;padding-left:8px;gap:7px}.radio-device{width:20px}.radio-device>.icon{width:17px;height:17px}.radio #radio-text{font-size:9px;line-height:1.5}.radio-copy header{font-size:6px}.onboarding,body[data-mode=free] .onboarding{bottom:226px;left:50%;font-size:8px;max-width:calc(100vw - 34px);padding:7px 9px;z-index:20}.research-tracker{top:106px;left:12px;width:140px;padding:7px 8px}.research-tracker strong{font-size:10px!important}.research-tracker span{font-size:7px!important}.field-event{top:198px;max-width:140px;font-size:7px}.chapter-stamp{top:111px;max-width:141px}.chapter-stamp div{font-size:16px}.chapter-stamp p{font-size:8px}.chapter-stamp small{font-size:6px}.copyright{bottom:9px;right:12px}.copyright span{font-size:5px}.copyright small{font-size:6px}.drawer{right:6px;top:6px;bottom:6px;width:calc(100vw - 12px);height:calc(100dvh - 12px)}#drawer-body{padding:15px 17px 24px}.drawer-head{padding:0 17px}.drawer-head h2{font-size:21px}.observation-invitation strong{font-size:8px}.observation-invitation small{font-size:6px}}
@media(max-height:560px) and (min-width:641px){.identity{top:11px}.modes{top:48px}.top-actions{top:11px}.target-area{top:52px;width:194px}.target-card{height:73px}.target-card canvas{width:69px;height:69px}.target-card h1{font-size:16px}.target-actions{margin-top:5px}.target-actions .primary{height:29px;min-height:29px}.target-actions .icon-button{width:29px;height:29px}.radar-unit{width:127px;bottom:24px}.radar-heading{font-size:6px;height:25px}.radar-key:first-child{display:none}.radar-tools button{height:18px;width:16px}.radar-tools #radar-auto{width:26px}.radar-footer strong{font-size:5px}.radar-footer span{font-size:5px}.bottom-controls,body[data-mode=campaign] .bottom-controls{bottom:20px;width:290px;padding:8px 11px 6px}.view-switch{margin-bottom:7px}.view-switch button{height:23px;min-height:23px;font-size:8px}.speed-heading strong{font-size:16px}.key-button{height:34px;min-width:40px;width:40px}.stop-key{height:34px;min-width:46px}.flight-status{font-size:5px;margin-top:5px}.context-actions,body[data-mode=campaign] .context-actions{width:174px;bottom:34px;gap:4px}.context-actions .small-action{font-size:7px;min-height:24px}.radio{width:195px}.onboarding,body[data-mode=free] .onboarding{bottom:203px;max-width:260px;font-size:8px}.chapter-stamp{top:100px;max-width:140px}.chapter-stamp div{font-size:16px}.research-tracker{top:94px;width:140px}.field-event{top:166px;max-width:140px}.copyright{bottom:8px}.copyright span{font-size:5px}.copyright small{font-size:5px}}
@media(max-width:700px){.campaign-view-switch{top:96px}.campaign-view-switch button{font-size:8px;padding:6px}.campaign-view-switch .icon{width:10px}body[data-mode=campaign][data-campaign-view=film] .campaign-view-switch{top:98px}body[data-mode=campaign][data-campaign-view=route] .chapter-stamp{top:143px}.cinema-header{padding-bottom:60px}.cinema-header-actions{max-width:130px;flex-wrap:wrap;justify-content:flex-end}}
@media(max-height:560px) and (min-width:701px){.campaign-view-switch{top:86px}.campaign-view-switch button{font-size:8px}body[data-mode=campaign][data-campaign-view=route] .chapter-stamp{top:128px}}
/* Compact never means illegible: navigation and telemetry keep a clear floor. */
.campaign-view-switch button{font-family:inherit;font-size:9px;font-weight:500}
.radar-heading{font-size:8px}.radar-footer strong,.radar-footer span,.radar-key{font-size:8px}.radar-tools #radar-auto{font-size:7px}.speed-heading small,.speed-labels span,.flight-status{font-size:8px!important}.speed-labels #speed-tip{display:none}.speed-drag-hint{font-size:8px!important}.earth-telemetry small,.earth-telemetry span{font-size:8px}.target-chip small{font-size:7px}.target-lock{font-size:9px}.target-card p{font-size:10px}
@media(max-width:640px){.radar-footer{flex-direction:column;align-items:flex-start;gap:1px}.radar-footer strong,.radar-footer span,.radar-key{font-size:7px}.radar-heading{font-size:7px}.speed-heading small,.speed-labels span,.flight-status,.speed-drag-hint{font-size:7px!important}.earth-telemetry small,.earth-telemetry span{font-size:7px}.target-lock{font-size:8px}.target-chip small{font-size:6px}.context-actions .small-action{font-size:9px}.target-card p{font-size:9px}.target-card .text-link{font-size:9px}}
.modes button,.view-switch button,.target-actions .primary,.small-action,.target-lock,.campaign-view-switch button{font-size:11px}.target-chip small{display:none}.target-chip b{font-size:12px}.target-card p,.target-card .text-link{font-size:11px}.target-card small{font-size:9px}.key-button kbd{font-size:11px;width:17px;height:18px;line-height:16px}.stop-key kbd{font-size:10px;min-width:39px;height:16px;line-height:14px}.top-actions kbd,.target-actions kbd{font-size:10px;min-width:17px;height:18px;line-height:16px}.speed-heading small{font-size:10px!important;letter-spacing:.02em}.speed-heading .limit-value b{font-size:11px}.speed-labels>span:not(.speed-drag-hint){display:none}.speed-labels .speed-drag-hint{font-size:10px!important;margin-left:0;left:0;bottom:-12px}.speed-unit{padding-bottom:21px}.flight-status{font-size:10px!important;letter-spacing:0}.earth-telemetry small{display:none}.earth-telemetry b{font-size:12px}.earth-telemetry span{font-size:10px}.radar-heading{font-size:10px;letter-spacing:.02em}.radar-footer strong{display:none}.radar-footer span{font-size:10px}.radar-legend>.radar-key{display:none}.radar-tools{width:100%;justify-content:space-between}.radar-tools button{width:27px;height:25px;font-size:14px}.radar-tools #radar-auto{font-size:10px;width:46px}.radar-tools #radar-help{font-size:12px;width:25px}.radar-explanation{font-size:11px}.radar-heading kbd{font-size:10px;height:16px}.view-switch>kbd{font-size:10px;height:16px}.manual-pro,.manual-pro button,.manual-pro kbd{font-size:10px}.campaign-preview-actions button,.campaign-row .primary,.campaign-controls>p,.journey-meta,.campaign-timing{font-size:10px}.rate span{font-size:9px}.drawer .setting-tabs button{font-size:11px}.drawer .target-row small{font-size:10px}
#paused-label{left:50%;top:35%;bottom:auto;transform:translate(-50%,-50%);width:max-content;max-width:calc(100vw - 30px);font-size:11px;letter-spacing:.16em;padding:8px 13px;border-radius:6px}#paused-label small{display:none}#toast{left:50%;top:24px;bottom:auto;font-size:11px;max-width:min(330px,calc(100vw - 28px));width:max-content;padding:8px 11px}#toast.show{transform:translate(-50%,0)}
@media(max-width:640px){.modes button{font-size:11px;padding:7px 8px}.modes .icon{display:none}.target-actions .primary,.target-lock,.small-action,.view-switch button,.campaign-view-switch button{font-size:11px}.target-chip b{font-size:12px}.target-card p,.target-card .text-link{font-size:11px}.key-button kbd{font-size:12px;width:18px;height:18px;line-height:16px}.stop-key kbd{font-size:10px}.bottom-controls{padding-bottom:8px}.radar-unit,body[data-mode=campaign] .radar-unit{bottom:255px;width:145px}.context-actions,body[data-mode=campaign] .context-actions{bottom:258px;width:167px}.context-actions .small-action{font-size:11px;min-height:30px}.radar-footer span{font-size:10px}.radar-tools button{height:25px;width:26px}.radar-tools #radar-auto{font-size:10px;width:43px}.radar-tools #radar-help{width:24px}.radar-heading{font-size:9px}.radar-heading button{width:36px}.earth-telemetry span{font-size:10px}.earth-telemetry b{font-size:12px}.flight-status{font-size:10px!important}.speed-heading small{font-size:10px!important}.speed-drag-hint{font-size:10px!important}.target-lock{min-height:29px;line-height:1.35}.onboarding,body[data-mode=free] .onboarding{bottom:265px;font-size:11px}.copyright span{display:none}.copyright small{font-size:7px}.identity span{display:none}.campaign-view-switch button{font-size:10px}.campaign-view-switch{top:98px}.campaign-view-switch .icon{display:none}}
@media(max-height:560px) and (min-width:641px){.modes button,.target-lock,.small-action,.view-switch button{font-size:10px}.flight-status{font-size:9px!important}.speed-heading small{font-size:9px!important}.bottom-controls{width:300px}.radar-tools button{width:22px;height:23px}.radar-tools #radar-auto{width:39px;font-size:9px}.radar-tools #radar-help{width:21px}.radar-footer span{font-size:9px}.radar-heading{font-size:9px}.key-button kbd{font-size:11px}.context-actions{max-width:167px}.campaign-row .primary{min-width:120px;font-size:10px}}

/* The flight keys read like a compact keyboard: key above, action below. */
.bottom-controls,body[data-mode=campaign] .bottom-controls{width:min(306px,calc(100vw - 26px));padding:8px 11px 7px}
.view-switch{margin-bottom:7px;gap:2px}.view-switch button{height:24px;min-height:24px;padding:0 6px}
#zoom-factor{margin-left:auto;display:flex;align-items:center;gap:5px;min-width:57px;padding:4px 6px;border:1px solid transparent;border-radius:5px;font:11px ui-monospace,monospace;color:#77888e;white-space:nowrap;transition:color .18s,background .18s,box-shadow .18s}
#zoom-factor svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
#zoom-factor.is-zoomed{color:var(--accent);border-color:var(--line)}
#zoom-factor.is-adjusting{color:var(--accent);background:rgba(var(--accent-rgb),.17);box-shadow:0 0 12px rgba(var(--accent-rgb),.24)}
.speed-heading{margin-bottom:6px}.speed-heading strong{font-size:16px}.speed-track{height:10px}.speed-unit{padding:0 1px 16px}.speed-labels{margin-top:5px}
.flight-keys{gap:4px}.key-button,.stop-key{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:45px;min-width:45px;height:49px;padding:3px;border-radius:6px}
.key-button .icon,.stop-key .icon{display:none}
.key-button kbd,.stop-key kbd{position:static;display:block;box-sizing:border-box;width:auto;min-width:25px;height:25px;line-height:23px;padding:0 4px;text-align:center;border:1px solid #9cbac154;border-bottom-color:#5d828b;border-radius:4px;background:#0c202b;box-shadow:0 2px 0 #02080d;color:#e8f6f5;font:600 13px/23px ui-monospace,monospace}
.key-button span,.stop-key span{position:static;display:block;width:auto;height:auto;overflow:visible;clip:auto;white-space:nowrap;font-size:9px;line-height:1.1;color:#b5cbce}
.stop-key{width:55px;min-width:55px}.stop-key kbd{min-width:47px;height:23px;font-size:9px;line-height:21px}.stop-key span{font-size:9px}
.key-button.held kbd{transform:translateY(2px);box-shadow:none}
.flight-status{margin-top:6px}
.drawer::backdrop{background:#01040a55;backdrop-filter:none}
@media(max-width:640px){.bottom-controls,body[data-mode=campaign] .bottom-controls{width:calc(100vw - 26px);max-width:306px;padding:8px 10px 7px}.key-button,.stop-key{height:47px}.key-button span,.stop-key span{font-size:9px}.view-switch button{font-size:10px}.view-switch .icon{display:none}#zoom-factor{font-size:10px}}
@media(max-height:560px) and (min-width:641px){.bottom-controls,body[data-mode=campaign] .bottom-controls{width:294px;padding:7px 9px 6px}.view-switch{margin-bottom:5px}.key-button,.stop-key{height:43px}.key-button kbd{height:21px;line-height:19px}.stop-key kbd{height:20px;line-height:18px}.key-button span,.stop-key span{font-size:8px}.speed-unit{padding-bottom:14px}.flight-status{margin-top:4px}}

/* The public release identifier stays legible at the lower-right edge, including on mobile. */
.copyright .release-version{display:block;color:#e3f3f4;font:600 11px/1.3 ui-monospace,monospace;letter-spacing:.06em;text-shadow:0 1px 5px #000;background:#06131cbb;border:1px solid #8dbfc244;border-radius:4px;padding:4px 7px}
@media(max-width:640px){.copyright .release-version{display:block;font-size:11px}.copyright small{display:none}}
