.surveyProgress{margin-top:12px;border-top:1px solid #647177;padding-top:10px}.deliveryWindow .surveyProgress label{display:grid;grid-template-columns:30px 1fr 85px;gap:6px;align-items:center;font-size:12px;margin:8px 0}.surveyProgress progress{width:100%;height:10px;accent-color:#b8d285}.deliveryWindow .surveyProgress output{text-align:right;white-space:nowrap;border:0;padding:0;line-height:inherit}.surveyProgress[hidden]{display:none}
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
:root{font-family:'Noto Sans JP',sans-serif;color:#d9e2e5;background:#10191e;font-size:12px;--muted:#819399;--line:#2c3a40;--orange:#ff9657;--cyan:#9fd5d4}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:#202c32;border:1px solid #36454c;border-radius:4px;padding:9px 12px;transition:.15s}button:hover{background:#34434a;border-color:#8ca1a7}button.active{color:var(--orange);background:#3c3029;border-color:#845b41}button:disabled{opacity:.35;cursor:default}input,select{background:#152127;color:#dbe5e8;border:1px solid #38494f;border-radius:3px;padding:7px;min-width:0}input:focus,select:focus{outline:1px solid var(--orange)}input[type=range]{accent-color:var(--orange);padding:0}input[type=checkbox]{accent-color:var(--orange)}.primary{background:var(--orange);border-color:var(--orange);color:#201a16;font-weight:700}.primary:hover{background:#ffb181}header{height:78px;display:flex;align-items:center;border-bottom:1px solid var(--line);padding:0 24px;gap:45px;background:#142026}.brand{display:flex;align-items:center;gap:12px;font:500 23px 'Barlow Condensed',sans-serif;letter-spacing:1.1px;white-space:nowrap}.brand b{color:#f0eee7;font-weight:600}.brand small{display:block;font:9px 'Noto Sans JP',sans-serif;color:var(--muted);letter-spacing:1.9px;margin-top:4px}.brandmark{color:var(--orange);font-size:42px}nav{display:flex;height:100%;gap:8px;align-items:center}nav button{border:0;background:transparent;font:600 19px 'Barlow Condensed',sans-serif;padding:12px 20px}nav button span{font:11px 'Noto Sans JP',sans-serif;margin-left:9px;color:var(--muted)}.headright{display:flex;align-items:center;gap:10px;margin-left:auto}.status{font:10px monospace;letter-spacing:1px;color:#8fa5a7;margin-right:14px}.status i,.libraryfoot i{display:inline-block;width:5px;height:5px;background:#9ed7b4;border-radius:50%;margin-right:6px}main{display:grid;grid-template-columns:258px minmax(200px,1fr) 268px;height:calc(100dvh - 78px)}aside{background:#172329;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#40525a transparent}#library{border-right:1px solid var(--line);display:flex;flex-direction:column}#inspector{border-left:1px solid var(--line);padding:0 18px}.panelhead{padding:23px 18px 12px}#inspector .panelhead{padding-left:0;padding-right:0}.panelhead small,.eyebrow,.sectionlabel{font:10px monospace;letter-spacing:1.6px;color:var(--muted)}h2{font-size:16px;font-weight:500;margin:8px 0 0}h2 span{font:12px monospace;color:var(--muted);float:right}.search{display:flex;align-items:center;gap:8px;margin:8px 16px;color:#819399;border:1px solid #35464c;border-radius:4px;padding:0 10px}.search input{border:0;width:100%;background:transparent;padding:10px 0;font-size:11px}#categories{display:flex;flex-wrap:wrap;gap:4px;padding:10px 16px 14px}#categories button{font-size:10px;padding:5px 8px;border:1px solid transparent;background:transparent;color:#98a8ae}#categories button.active{color:var(--orange);background:#3c3029;border-color:#6a4e3b}#parts{padding:0 12px;display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start;overflow-y:auto;min-height:0}.partcard{position:relative;text-align:left;padding:9px 9px 11px;background:#1e2c33;border-color:#304148;min-height:116px}.partcard img{width:100%;height:67px;object-fit:contain;display:block;filter:drop-shadow(0 4px 5px #0005)}.partcard .partcode{font:9px monospace;letter-spacing:1px;color:#8aa0a9}.partcard strong{display:block;font-size:10px;font-weight:500;margin-top:5px;white-space:nowrap}.partcard em{position:absolute;right:7px;top:6px;font:10px monospace;color:#6e8996}.libraryfoot{padding:18px 16px;margin-top:auto;font:8px monospace;letter-spacing:.6px;color:#91a2aa}.libraryfoot small{display:block;font:9px 'Noto Sans JP',sans-serif;letter-spacing:0;color:#6e858f;margin-top:7px}#viewport{position:relative;overflow:hidden;background:#26343e}#scene{width:100%;height:100%;display:block;outline:none}.viewtop{position:absolute;top:25px;left:28px;right:24px;display:flex;justify-content:space-between;pointer-events:none;z-index:2}.viewtop input{pointer-events:auto;background:transparent;border:0;font:500 31px 'Barlow Condensed',sans-serif;letter-spacing:.6px;padding:7px 0;width:230px;color:#ecf0ef}.eyebrow{color:#a6b7bf}.eyebrow span{color:var(--orange);margin-left:10px}.viewtop p{font-size:10px;color:#a1b3bc;margin:0}.viewactions{display:flex;gap:6px;align-items:start;pointer-events:auto}.viewactions button{background:#1d2b32d9;min-width:32px;padding:8px}.viewbottom{position:absolute;bottom:0;left:0;right:0;height:35px;background:#152127de;border-top:1px solid #46565c66;display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-size:9px;color:#a2b3bb}.dot{display:inline-block;width:5px;height:5px;background:var(--orange);margin-left:8px}#toolbar{position:absolute;bottom:55px;left:50%;transform:translateX(-50%);display:flex;gap:4px;background:#162127ed;border:1px solid #42555f;padding:7px;border-radius:6px;align-items:center;white-space:nowrap;box-shadow:0 8px 30px #0003}#toolbar button{font-size:14px;background:transparent;border-color:transparent;padding:7px}#toolbar button.active{color:var(--orange);background:#40352d}#toolbar button span{font-size:10px}#toolbar label,#toolbar select{font-size:10px}#toolbar select{padding:6px 3px}kbd{font:9px monospace;border:1px solid #59666b55;border-radius:3px;padding:2px 4px;opacity:.65;margin-left:4px}.separator{width:1px;height:25px;background:#42535b;margin:0 5px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px 10px;padding:15px 0 19px}.metrics div{display:grid;grid-template-columns:1fr auto;align-items:baseline}.metrics span{grid-column:1/3;color:#8ea3ad;font-size:10px;margin-bottom:6px}.metrics b{font:500 28px 'Barlow Condensed',sans-serif;color:#f1f1e8}.metrics small{font:9px monospace;color:#7e969f}.sectionlabel{border-top:1px solid var(--line);padding-top:17px;margin-top:6px;font-size:9px;margin-bottom:12px}.check{font-size:10px;margin:8px 0;color:#a9bac0}.check i{color:#9bd4b1;font-style:normal;margin-right:6px}.check.warn i{color:var(--orange)}.muted{color:#758d98;font-size:10px;line-height:1.9}.parttitle{display:flex;justify-content:space-between;align-items:center}.parttitle b{font-size:12px}.parttitle small{color:var(--orange);font:10px monospace}.desc{font-size:10px;line-height:1.8;color:#96aab3}.xyz{display:grid;grid-template-columns:18px 1fr 1fr 1fr;gap:4px;align-items:center;margin:7px 0;font:10px monospace}.xyz input{width:100%;padding:6px 4px;font-size:10px}.xyz span{color:var(--muted)}.field{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#91a6b0;margin:12px 0}.field select{max-width:148px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.actions button{font-size:10px}.danger{color:#efac95}.stageitem{display:flex;align-items:center;background:#1c2b33;border:1px solid #30444e;border-radius:4px;margin:5px 0;padding:8px;gap:10px}.stageitem b{font:18px 'Barlow Condensed';color:var(--orange)}.stageitem span{font-size:9px;color:#a4b7c0;line-height:1.7}.wide{width:100%;text-align:left;font-size:10px;margin-top:8px}.wide span{float:right}.footnote{font:8px/1.8 monospace;color:#6c858f;margin:18px 0}#loading{position:absolute;inset:0;background:#1d2a33;display:flex;flex-direction:column;gap:18px;align-items:center;justify-content:center;z-index:5}#loading[hidden]{display:none}#loading span{color:var(--muted);font-size:11px}.spinner{width:35px;height:35px;border:2px solid #485c66;border-top-color:var(--orange);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#placement{position:absolute;top:138px;left:50%;transform:translateX(-50%);padding:10px 18px;background:#38332aeb;border:1px solid #b38253;color:#f3c390;font-size:10px;white-space:nowrap;border-radius:4px}#toast{position:absolute;left:50%;top:115px;transform:translateX(-50%);background:#14262eeb;border:1px solid #68828b;padding:12px 20px;border-radius:4px;z-index:10;max-width:90%;font-size:11px;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1}dialog{color:#dce6e9;background:#19282f;border:1px solid #4b6068;border-radius:10px;padding:30px;max-width:min(620px,95vw);box-shadow:0 20px 100px #0009}dialog::backdrop{background:#071015ac;backdrop-filter:blur(5px)}dialog h2{font-size:23px;margin-bottom:12px}dialog p{color:#9eb1ba;line-height:1.9;font-size:12px}.close{position:absolute;right:12px;top:12px;border:0;background:transparent;font-size:20px}.examplegrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.examplegrid button{text-align:left;padding:18px}.examplegrid b{display:block;margin-bottom:8px;color:#f0e9de}.examplegrid span{font-size:10px;color:#9caeb7}.helpgrid{display:grid;grid-template-columns:130px 1fr;gap:12px;font-size:11px;color:#aabcc5;margin:20px 0}.helpgrid b{color:#ece9e1}.hudtop{position:absolute;top:24px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center}.hudtop span{font:14px monospace;color:#d7e7ec;text-shadow:0 2px 5px #000}.hudreadings{position:absolute;top:100px;left:26px;display:flex;gap:35px;text-shadow:0 2px 5px #0007}.hudreadings small{display:block;font:9px monospace;letter-spacing:2px;color:#b7d5df}.hudreadings strong{font:40px 'Barlow Condensed';margin-right:5px}.flightbottom{position:absolute;bottom:55px;left:22px;right:22px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:15px;background:#14232be8;border:1px solid #546b76;border-radius:6px}.flightbottom>span{font-size:9px;color:#94aeb9;line-height:1.8}.throttle{width:150px}.throttle label{display:block;font:9px monospace;color:#a7bfc8;margin-bottom:10px}.throttle b{float:right;color:var(--orange)}.throttle input{width:100%}#ballastControl{font-size:10px}#ballastControl input{display:block;width:90px}.flying .viewtop,.flying #toolbar,.flying #placement{display:none}.flying #library{opacity:.5;pointer-events:none}.flying #selection{pointer-events:none}#flightHud[hidden]{display:none}@media(min-width:1550px){main{grid-template-columns:280px minmax(200px,1fr) 285px}.partcard img{height:88px}.partcard{min-height:135px}}@media(max-width:1100px){header{gap:12px;padding:0 14px}.status{display:none}main{grid-template-columns:210px minmax(200px,1fr) 230px}#inspector{padding:0 12px}#toolbar{gap:1px}#toolbar kbd{display:none}#toolbar button span{display:none}.viewtop{left:18px}.brand{font-size:19px}.brand small{font-size:7px}nav button{padding:10px}nav button span{display:none}}@media(max-width:760px){header{height:65px}.brand small{display:none}.brandmark{font-size:30px}.brand{font-size:17px}header nav{display:none}.headright #help{display:none}main{height:calc(100dvh - 65px);grid-template-columns:145px 1fr}#inspector{display:none}.panelhead{padding:15px 12px}.panelhead small{font-size:7px}h2{font-size:12px}.search{margin:5px 8px}#parts{grid-template-columns:1fr;padding:0 8px}#categories{padding:8px}.libraryfoot{display:none}.viewtop input{font-size:24px;width:145px}.viewactions{display:none}#toolbar{max-width:95%;flex-wrap:wrap;justify-content:center}#toolbar label{font-size:9px}.viewbottom span:last-child{display:none}.viewbottom{font-size:8px}.hudreadings{gap:20px}.hudreadings strong{font-size:27px}.flightbottom{bottom:45px;left:10px;right:10px}.viewtop{left:16px}}

.flightbottom>label{font-size:10px;color:#a7bfc8}.flightbottom>label input{display:block;width:110px;margin-top:6px}#aeroFlight{font-size:9px;color:#a7bfc8}#aeroInfo{line-height:1.7}

#actuatorControls{display:flex;flex-wrap:wrap;gap:8px 14px;flex-basis:100%;font-size:10px;color:#b7cbd3}#actuatorControls label{display:flex;align-items:center;gap:4px}#actuatorControls label[hidden]{display:none}

.orbitpanel{position:absolute;left:26px;top:177px;display:flex;flex-direction:column;gap:7px;font-size:12px;color:#e5f3f5;text-shadow:0 1px 3px #000;pointer-events:auto}.orbitpanel small{font-size:10px}.orbitpanel select{padding:3px;color:white;background:#223543;border:1px solid #60747b}

#orbitMap{position:absolute;right:18px;top:167px;width:130px;height:130px;background:#0a1822bb;border-radius:50%;pointer-events:none}

.navpanel{position:absolute;right:160px;top:167px;width:130px;display:flex;flex-direction:column;align-items:center;gap:3px;background:#10212bd9;border-radius:7px;padding:5px;pointer-events:auto}.navpanel canvas{width:120px;height:120px}.navpanel small{font-size:9px;color:#c9dce3;white-space:nowrap}.navpanel label{font-size:10px;color:#dce7ec}.navpanel select{font-size:11px;padding:2px;background:#213744;color:#fff;border:1px solid #60747b}

#openOrbitMap{align-self:start;padding:4px 8px}#orbitOverlay{position:fixed;z-index:20;inset:90px max(20px,calc((100vw - 960px)/2)) 38px;background:#101d27f5;border:1px solid #587681;border-radius:8px;padding:16px;overflow:auto;box-shadow:0 20px 80px #000b}#orbitOverlay[hidden]{display:none}.mapHeader{display:flex;justify-content:space-between;align-items:center;gap:12px}.mapHeader h2{margin:0}.mapHeader h2 span{float:none;font:inherit;color:#ffa66d}.mapContent{display:grid;grid-template-columns:minmax(200px,1.5fr) minmax(230px,1fr);align-items:center;gap:22px}#largeOrbitMap{width:100%;max-height:calc(100dvh - 220px);object-fit:contain}.mapReadings p{line-height:1.8}.mapReadings #apoapsisPlan,.mapReadings #periapsisPlan{white-space:pre-line;border-left:2px solid #ff9657;padding-left:12px;font-size:13px}#orbitCaution{color:#ffba86}.mapReadings p:last-child{color:#9eafb7;font-size:10px}@media(max-width:650px){.mapContent{grid-template-columns:1fr}#largeOrbitMap{max-height:280px}}

#orbitOverlay{z-index:1000;background:#101d27}

.mapContent{align-items:start}.mapReadings{max-height:calc(100dvh - 220px);overflow:auto;padding-right:8px}.maneuverControls{border:1px solid #45616d;border-radius:4px;padding:12px;margin-top:16px}.maneuverControls legend{color:#7de6ef}.maneuverControls label{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:7px 0}.maneuverControls input[type=number]{width:110px}.maneuverControls small{display:block;color:#afc2cc;line-height:1.7}.maneuverControls p{white-space:pre-line;color:#7de6ef}#mapFlightState{margin-bottom:5px}@media(max-width:650px){.mapReadings{max-height:none}}

.maneuverControls label:has(input[type=checkbox]){justify-content:flex-start}.mapReadings{scrollbar-width:thin;scrollbar-color:#45616d #101d27}

#debrisPanel{display:none;margin:14px 0;border-top:1px solid #45616d;padding-top:10px}.flying #debrisPanel{display:block}#debrisList>div{display:flex;align-items:center;gap:6px;margin:10px 0}#debrisList small{line-height:1.8}#debrisList button,#trackPrimary{padding:4px 7px;font-size:10px}#debrisPanel>small{color:#9bacb6;font-size:9px}

#activeVessel{position:absolute;top:43px;left:0;font-size:10px;color:#9fd5d4}#debrisList>div{flex-wrap:wrap}#debrisList small{width:100%}#debrisList button{flex:1}

#dockingPanel small{display:block;line-height:1.6;margin:8px 0}#dockBonds button{margin:6px 0}#dockButton{display:block;margin:8px 0}

#portGuide label{display:block;margin:8px 0}#portGuide select{max-width:100%}#portCrosshair{width:100%;height:auto;border:1px solid #3a515a;margin-top:8px}

#thermalPanel{margin:12px 0;padding:10px;border:1px solid #43565f;border-radius:5px}#thermalPanel small{display:block;color:#91a9b5;font-size:11px;line-height:1.5}.thermalRow{font-size:11px;padding:3px 0;color:#b9cbd2}.thermalRow.hot{color:#f1bc62}.thermalRow.failed{color:#ff7569}

#spaceCenter{position:fixed;inset:0;display:grid;grid-template-columns:320px minmax(0,1fr);z-index:20;background:#102228}#spaceCenter[hidden]{display:none}.at-center>header,.at-center>main{visibility:hidden}.centerSidebar{padding:42px 26px;background:linear-gradient(155deg,#1f333b,#101d24);border-right:1px solid #567277;overflow:auto}.centerSidebar h1{font-size:32px;font-weight:500;margin:15px 0 5px;letter-spacing:.06em}.centerLead{color:#a1b8bc;margin:0 0 28px}.centerFacilities{display:grid;gap:12px;margin:20px 0 26px}.centerFacilities button{text-align:left;padding:18px;background:#263d45;border-color:#587079}.centerFacilities button:hover{background:#36515a;border-color:#ffc18a}.centerFacilities b{display:block;color:#f3b47f;font:12px monospace;letter-spacing:2px}.centerFacilities strong{display:block;font-size:18px;font-weight:500;margin:8px 0}.centerFacilities span,.centerSidebar small,.centerSoon{font-size:11px;line-height:1.8;color:#9bb3bb}.centerSession{border-top:1px solid #435b63;padding-top:20px}.centerSession button{width:100%;margin:8px 0}.centerSession p{font-size:12px;line-height:1.8}.centerSoon{border-top:1px solid #435b63;padding-top:18px;margin-top:22px}#centerNotice{color:#ffd2a3;line-height:1.8}#centerLoading{color:#b9d6db}.centerView{position:relative;min-width:0;overflow:hidden}#centerScene{width:100%;height:100%;display:block}.centerViewLabel{position:absolute;left:28px;bottom:28px;color:#102e37;pointer-events:none;text-shadow:0 1px 8px #ffffff80}.centerViewLabel span{display:block;font:500 25px 'Barlow Condensed';letter-spacing:4px}.centerViewLabel small{display:block;font-size:11px;margin-top:7px}body.at-center #modal{z-index:30}@media(max-width:760px){#spaceCenter{grid-template-columns:1fr;grid-template-rows:52vh 48vh}.centerSidebar{grid-row:2;padding:20px}.centerView{grid-row:1}.centerSidebar h1{font-size:24px}.centerFacilities{grid-template-columns:1fr 1fr}.centerFacilities strong{font-size:15px}.centerViewLabel{left:15px;bottom:15px}}

.centerOperations{display:grid;gap:7px;margin:0 0 22px}.centerOperations button{text-align:left;font-size:11px}.facilityRow{padding:15px 0;border-top:1px solid #405963}.facilityRow strong{font-size:14px;display:block}.facilityRow p{font-size:11px;margin:8px 0}.facilityRow button{margin:3px 8px 3px 0}

#modal.trackingDialog{width:min(960px,94vw);max-width:960px}.trackingMap{border:1px solid #405963;padding:12px;background:#14242b;border-radius:8px;margin:18px 0}.trackingMap canvas{display:block;width:100%;height:auto;cursor:pointer}.trackingMapControls{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:10px}.trackingMapControls label{display:flex;align-items:center;gap:8px;font-size:12px}.trackingMapControls input{width:130px}.trackingMap small{font-size:11px;color:#a3b9c1;line-height:1.7}.trackingMapLegend{color:#e5f1f3;font-size:13px}.trackingDialog .facilityRow{border-left:3px solid var(--vessel-color);padding:12px;margin:10px 0}.trackingDialog .facilityRow strong{color:var(--vessel-color)}.trackingDialog .selectedVessel{background:#2b414a;outline:1px solid var(--vessel-color)}
#modal.trackingDialog{width:min(1100px,94vw);max-width:1100px}.trackingDialog #modalBody{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);column-gap:20px}.trackingDialog #modalBody>.eyebrow,.trackingDialog #modalBody>h2,.trackingDialog #modalBody>p{grid-column:1/-1}.trackingDialog #trackingMapHost{grid-column:1;min-width:0}.trackingDialog #trackingRows{grid-column:2;max-height:58vh;overflow:auto;padding:4px}.trackingMapControls{gap:10px}.trackingMapControls input{width:90px}@media(max-width:800px){.trackingDialog #modalBody{display:block}.trackingDialog #trackingRows{max-height:none;overflow:visible}}

#assemblyTree{margin:16px 0;border-top:1px solid #405963;padding-top:12px}#assemblyTree small{display:block;color:#9bb2bb;font-size:10px;line-height:1.7;margin:8px 0}#assemblyTreeRows{list-style:none;padding:0;margin:0;max-height:230px;overflow:auto}#assemblyTreeRows li{margin:3px 0}#assemblyTreeRows button{width:100%;font-size:10px;text-align:left;padding:7px 5px;line-height:1.5}#assemblyTreeRows .branchMember{background:#384d50;border-color:#7a7961}#assemblyTreeRows [aria-pressed="true"]{border-color:#ffc18a;color:#ffd7af;background:#4d4d43}.flying #assemblyTree{display:none}

/* Facility names follow pointer and keyboard selection. */
.centerGuide{counter-reset:step;list-style:none;padding:0;margin:22px 0;display:grid;gap:12px}.centerGuide li{counter-increment:step;position:relative;padding-left:29px}.centerGuide li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:2px;color:#f3b47f;font:11px monospace}.centerGuide b{display:block;font-weight:500;font-size:13px}.centerGuide span{display:block;color:#b4c9cd;font-size:11px;line-height:1.7;margin-top:4px}.centerFacilityCard{position:absolute;top:24px;left:24px;max-width:370px;padding:18px 22px;background:#10282aeb;border:1px solid #8faeb0;border-radius:10px;pointer-events:none;color:#edf4ed;box-shadow:0 8px 32px #122b3633}.centerFacilityCard small{color:#f3b47f;font:10px monospace;letter-spacing:2px}.centerFacilityCard h2{font-size:21px;font-weight:500;margin:8px 0}.centerFacilityCard p{font-size:12px;line-height:1.8;margin:0;color:#c0d5d4}.centerFacilities button.facilityHighlighted,.centerOperations button.facilityHighlighted{background:#36515a;border-color:#ffc18a;box-shadow:inset 3px 0 #ffc18a}#spaceCenter button:focus-visible,#centerScene:focus-visible{outline:3px solid #ffc18a;outline-offset:-3px}.centerLead{margin-bottom:10px}.centerViewLabel small{max-width:550px;line-height:1.6}@media(max-width:760px){.centerFacilityCard{top:12px;left:12px;right:12px;max-width:280px;padding:10px 14px}.centerFacilityCard h2{font-size:17px}.centerFacilityCard p{font-size:11px}.centerViewLabel span{font-size:18px}.centerGuide{grid-column:1/-1}}

.centerFlow{color:#f3b47f;font-size:12px;line-height:1.8;margin:12px 0 20px}

#interferencePanel{border-top:1px solid #3a4a50;margin:15px 0;padding-top:12px}#interferencePanel summary{cursor:pointer;font-size:12px}#interferencePanel small{display:block;font-size:10px;color:#9fb0b6;line-height:1.7;margin-top:8px}#interferenceRows{max-height:250px;overflow:auto}.interferencePair{display:grid;gap:5px;padding:8px 2px;border-bottom:1px solid #35434a}.interferencePair button{text-align:left;font-size:11px;padding:8px;color:#ffbd8a}.interferencePair button+button{color:#8de7ef}.interferencePairActive{background:#354751}.flying #interferencePanel{display:none}

.stagingRow{display:grid;gap:6px;background:#1c2b33;border:1px solid #30444e;border-radius:4px;margin:8px 0;padding:9px}.stagingRow>b{color:var(--orange);font-size:12px}.stagingRow>small{color:var(--muted);font-size:10px}.stagingRow>button{font-size:10px;text-align:left;padding:6px;line-height:1.6}.stageMoves{display:flex;gap:6px}.stageMoves button{flex:1;padding:6px;font-size:10px}.stagingRow button:disabled{cursor:default;opacity:.55}

.stageReference{display:grid;gap:6px;font-size:10px;color:var(--muted);margin:10px 0}.stageReference select{width:100%;font-size:11px}.stageScope{display:block;color:var(--muted);font-size:9px;line-height:1.8}.stagingRow .stageDiagnostic{padding:6px;border-left:2px solid var(--orange);color:#edb58c;background:#332d25;line-height:1.8}.stagingRow .stageDiagnostic.switch{border-color:var(--cyan);color:var(--cyan);background:#20333a}

.universalClock{position:absolute;right:24px;top:116px;font:12px monospace;color:#e0ecef;text-shadow:0 2px 4px #000;background:#162831b8;padding:5px 8px;border-radius:4px;pointer-events:none}#centerTime{font:12px monospace;color:var(--cyan)}

.trajectoryPanel{grid-column:1/-1;border:1px solid #45616d;padding:10px;border-radius:5px;margin-top:12px}.trajectoryPanel summary{cursor:pointer;color:#7de6ef}.trajectoryControls{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0;align-items:center}.trajectoryControls label{display:flex;gap:6px;align-items:center}.trajectoryPanel canvas{display:block;width:100%;max-height:280px;object-fit:contain}.trajectoryPanel p{font-size:12px;line-height:1.7;white-space:pre-line}.trajectoryPanel small{display:block;color:#a6b9c4;font-size:11px;line-height:1.7}.trajectoryResults{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:15px}.trajectoryResults p{border-left:2px solid #ffb675;padding-left:10px}.trajectoryResults p+ p{border-color:#7de6ef}.trajectoryCursor{display:flex;align-items:center;gap:10px;margin-top:8px}.trajectoryCursor input{flex:1}

#transferPanel{border:1px solid #c38e55;border-radius:5px;padding:10px;margin:10px 0;background:#273036}#transferPanel[hidden]{display:none}#transferPanel strong{color:#ffc18a}#transferPanel p{font-size:12px;line-height:1.7}#transferPanel small{display:block;color:#b9c8d0;line-height:1.7;margin-top:8px}#transferPanel button{margin:4px 4px 4px 0}

#capturePanel{border:1px solid #689eac;background:#20343b;padding:12px;margin:12px 0;border-radius:8px}#capturePanel strong{color:#a5deee}#capturePanel p{line-height:1.6}#capturePanel button{margin:3px 0}#capturePanel small{display:block;line-height:1.6;margin-top:8px}

#descentPanel{border:1px solid #839b77;background:#2c352c;padding:12px;margin:12px 0;border-radius:8px}#descentPanel strong{color:#c5ddaf}#descentPanel p{line-height:1.6}#descentPanel button{margin:3px 2px}#descentPanel small{display:block;line-height:1.6;margin-top:8px}

/* Flight instruments occupy the edges; assembly tools return on leaving flight. */
#returnPanel{border:1px solid #9f8fb6;background:#302d3a;padding:12px;margin:12px 0;border-radius:8px}#returnPanel>summary{cursor:pointer;color:#d8c9f0;font-weight:600}#returnPanel p{font-size:12px;line-height:1.7}#returnPanel button{margin:3px 2px;font-size:11px}#returnPanel[hidden]{display:none}
#ascentPanel{border:1px solid #ac945f;background:#353128;padding:12px;margin:12px 0;border-radius:8px}#ascentPanel>summary{cursor:pointer;color:#f2d8a2;font-weight:600}#ascentPanel p{line-height:1.7;font-size:12px}#ascentPanel button{margin:3px 2px;font-size:11px}#ascentPanel[hidden]{display:none}
.flying main{grid-template-columns:minmax(0,1fr) 300px}
.flying #library,.flying header nav,.flying #launch,.flying header .status{display:none}
.flying #inspector{display:block;padding:0 16px}
.flying #selection,.flying .sectionlabel:has(+ #selection){display:none}
.flightNavigation{display:none}
.flying .flightNavigation{position:static;display:flex;gap:8px;margin:0 0 14px;padding:12px;background:#203039;border:1px solid #49606b;border-radius:8px;text-shadow:none;overflow-wrap:anywhere}
.flightNavigation b{font-weight:500;line-height:1.6}
.flightHelp summary,.flightExtra summary{cursor:pointer;color:#b5cdd2;font-size:11px;padding:7px 0}
.flightHelp small{display:block;line-height:1.7;color:#b0c3c9;margin:7px 0}
.flightExtra{flex-basis:100%;border-top:1px solid #41545e}
.flightExtraBody{display:flex;gap:12px;flex-wrap:wrap;padding:8px 0;font-size:10px;line-height:1.8}
.flightExtraBody>label input[type=range]{display:block;width:100px}
.flying .hudtop{top:12px;left:16px;right:16px;display:flex;gap:8px;justify-content:flex-start;flex-wrap:wrap;padding:10px;background:#14232bf2;border-radius:7px}
.flying .hudtop button{font-size:11px;padding:7px 10px}
.flying #activeVessel{position:static;flex-basis:100%;font-size:11px;order:2}
.flying #flightStatus{margin-left:auto;font-size:11px;text-shadow:none}
.flying .hudreadings{top:105px;left:16px;gap:24px;background:#14232bf2;border:1px solid #41545e;border-radius:7px;padding:10px 14px;text-shadow:none}
.flying .hudreadings strong{font-size:32px;font-variant-numeric:tabular-nums}
.flying .universalClock{top:178px;left:16px;right:auto;font-size:10px}
.flying .navpanel{top:auto;bottom:45px;left:16px;right:auto;width:155px;background:#14232bf2;border:1px solid #41545e;padding:8px}
.flying .navpanel canvas{width:135px;height:135px}
.flying .navpanel label,.flying .navpanel select{display:block;width:100%}
.flying #orbitMap{display:none}
.flying .flightbottom{left:185px;right:16px;bottom:45px;gap:8px;padding:12px;max-height:220px;overflow:auto;background:#14232bf2}
.flying .flightbottom button{padding:8px;font-size:11px}
.flying .throttle{width:140px;flex:1;min-width:100px}
.flying #viewport>button{top:178px!important;right:16px!important;font-size:10px}

@media(max-width:900px){
 body.flying{overflow:auto}
 .flying main{height:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:max(680px,calc(100dvh - 78px)) auto}
 .flying #inspector{overflow:visible;padding:18px;min-width:0}
 .flying header{gap:8px}
 .flying .brand small{display:none}
 .flying .hudtop{left:10px;right:10px}
 .flying .hudtop button{padding:6px;font-size:10px}
 .flying #flightStatus{flex-basis:100%;order:3;margin:0}
 .flying .hudreadings{top:125px;left:10px;right:10px;gap:12px;justify-content:space-between}
 .flying .hudreadings strong{font-size:27px}
 .flying .hudreadings small{font-size:8px;letter-spacing:1px}
 .flying .universalClock,.flying #viewport>button{top:200px!important}
 .flying .navpanel{left:10px;width:135px}
 .flying .navpanel canvas{width:115px;height:115px}
 .flying .flightbottom{left:155px;right:10px;max-height:245px}
 .flying .throttle{flex-basis:100%}

}
#departurePanel{padding:12px;border:1px solid #527477;border-radius:9px;background:#243336;margin-bottom:12px}#departurePanel summary{cursor:pointer;color:#bce7df}#departurePanel button{margin:4px 2px;padding:8px;font-size:11px}#departurePanel p,#departurePanel small{font-size:12px;line-height:1.6}#departurePanel small{display:block;margin:8px 0}
#designDiagnostics>label{display:flex;flex-direction:column;gap:5px;margin:10px 0}#designDiagnostics select{max-width:100%;width:100%}#designDiagnostics .stagingRow p{line-height:1.6;overflow-wrap:anywhere}#designDiagnostics .designEquipmentRows>div{border-top:1px solid var(--line,#34434b);padding:6px 0}#designDiagnostics .designEquipmentRows button{margin:2px;max-width:100%}
#designDiagnostics>label.thrustVisualToggle{flex-direction:row;align-items:center} #designDiagnostics .thrustVisual{width:auto;flex:0 0 auto}

#designDiagnostics .stageVisual{width:auto;flex:0 0 auto}

/* Compact assembly console: reserve the central view for the vehicle. */
header{height:48px;padding:0 12px;gap:12px;background:#292e31;border-bottom:1px solid #555b5f}
header nav{display:flex;gap:4px}header nav button{padding:7px 14px}
.headright{margin-left:auto;gap:6px}
main{height:calc(100dvh - 48px)}
body{--orange:#b7d783;--line:#454d51}
button,select,input{border-radius:3px}button.primary{background:#52673c;color:#f3f7eb;border-color:#8aab62}
#library,#inspector{background:#272d30}
.panelhead{padding:12px 14px}.panelhead h2{font-size:14px;margin:0}
#inspector .panelhead{padding-left:0;padding-right:0}
.viewtop{top:12px;left:14px;right:14px;align-items:center}
.viewtop input{font-size:18px;width:240px;background:#252c30e8;border:1px solid #60696e;padding:7px 10px;border-radius:3px}
.viewactions{gap:4px}.viewactions button{padding:7px 9px;background:#272e32ec}
#toolbar{bottom:38px;padding:5px;border-radius:3px;background:#292f33f2;box-shadow:0 2px 6px #0006}
.viewbottom{height:25px;padding:0 12px;background:#292f33e8}
.metrics{gap:8px;padding:10px 0}.metrics b{font-size:22px}.metrics span{margin-bottom:3px}
.sectionlabel{padding-top:10px;margin-bottom:8px;font-size:11px;letter-spacing:0;color:#c8d0d3}
#placement{top:65px}#toast{top:65px}
.centerSidebar .centerSession>small:last-child{font-size:11px}
@media(max-width:760px){header{height:48px;padding:0 6px;gap:4px}header nav{display:flex}header nav button{padding:6px 8px}.headright{gap:4px}.headright button{padding:6px;font-size:10px}main{height:calc(100dvh - 48px)}.viewtop input{width:150px;font-size:15px}}

header>#craftName{min-width:80px;max-width:240px;width:22vw;padding:7px 10px;font-size:14px;background:#202629;border:1px solid #555f64;color:#eef0ed}
.craftFiles{display:flex;gap:4px}.craftFiles button{width:auto;margin:0;white-space:nowrap;padding:7px 10px;font-size:11px}.craftFiles #examples span{display:none}
.viewtop{justify-content:flex-end;pointer-events:none}.viewactions{pointer-events:auto}
.flying .craftFiles,.flying header>#craftName{display:none}
@media(max-width:900px){.craftFiles #examples{display:none}header>#craftName{width:16vw}.craftFiles button{padding:6px}}
@media(max-width:600px){.craftFiles{display:none}header>#craftName{flex:1;width:80px}.headright #help{display:none}}

#worldHistory{margin-top:16px;font-size:12px;line-height:1.6}#worldHistory summary{cursor:pointer}#worldHistoryRows{padding-left:18px}#worldHistoryRows li{margin:8px 0}#worldHistoryRows p{color:#a9b8bf}

.centerGuide li.completed:before{content:"✓";color:#b5cc88}

/* The world fills the window. Tools are independent overlays. */
body,body.flying{overflow:hidden}
body>main,body.flying>main{position:fixed;inset:0;display:block;height:100dvh}
#viewport{position:absolute;inset:0}
body>header{position:fixed;inset:10px 12px auto;z-index:8;height:40px;border:0;background:transparent;padding:0;pointer-events:none}
body>header>*{pointer-events:auto}
#library,#inspector,body.flying #inspector{position:absolute;z-index:6;top:104px;bottom:96px;width:244px;border:1px solid #62707866;border-radius:8px;background:#20292deb;box-shadow:0 6px 24px #0004;overflow-y:auto}
#library{left:12px}#inspector,body.flying #inspector{right:12px;padding:0 14px}
body.library-closed #library,body.inspector-closed #inspector{display:none}
#panelDock{position:fixed;top:60px;left:12px;right:12px;display:flex;justify-content:space-between;pointer-events:none;z-index:8}
#panelDock button{pointer-events:auto;background:#20292deb;min-width:70px}
#panelDock button[aria-expanded=true]{border-color:#b7d783;color:#b7d783}
.at-center #panelDock,.flying #panelDock button:first-child{visibility:hidden}
.viewtop{top:60px;left:100px;right:100px}.viewbottom{display:none}
#toolbar{bottom:16px}#placement{top:108px}
.flying .hudtop{top:58px;right:100px;background:transparent;padding:0}
.flying .hudreadings{top:145px}.flying .universalClock{top:220px}
.flying .navpanel,.flying .flightbottom{bottom:16px}
#spaceCenter{display:block}
.centerView{position:absolute;inset:0}
.centerSidebar{position:absolute;z-index:2;left:18px;top:18px;bottom:24px;width:260px;padding:16px;background:#17262bdf;border:1px solid #82939b55;border-radius:10px;box-shadow:0 6px 24px #0003}
.centerSidebar h1{font-size:22px;margin:0 0 16px}.centerFacilities{margin:0 0 14px;gap:8px}.centerFacilities button{padding:10px 14px}.centerFacilities strong{font-size:15px;margin:4px 0}
.centerFacilityCard{left:auto;right:20px;top:20px;max-width:270px}.centerViewLabel{display:none}
@media(max-width:760px){
 #library,#inspector,body.flying #inspector{width:210px;top:100px;bottom:100px}
 .viewtop{left:90px;right:90px}.viewactions{display:flex;flex-wrap:wrap}
 .centerSidebar{left:10px;top:10px;bottom:auto;max-height:55dvh;width:210px;padding:12px}
 .centerFacilities{grid-template-columns:1fr}.centerFacilityCard{top:auto;bottom:16px;right:12px;left:auto;max-width:230px}
 .flying .hudtop{right:85px}.flying .hudreadings{top:165px}.flying .universalClock{top:245px}
}
.centerSidebar{bottom:auto;max-height:calc(100dvh - 42px)}
#centerRecords>summary{cursor:pointer;padding:10px 0;color:#c0d0d3}
#library #parts{grid-template-columns:repeat(2,minmax(0,1fr));overflow-x:hidden}.partcard{min-width:0}.partcard strong{white-space:normal}

#flightQuickNav{position:absolute;top:140px;right:16px;width:min(420px,45vw);display:grid;grid-template-columns:auto 1fr;gap:7px 12px;align-items:center;padding:10px 12px;background:#17252be8;border:1px solid #52646a88;border-radius:7px;font-size:10px}
#flightQuickNav>label{display:flex;align-items:center;justify-content:flex-end;gap:8px}
#flightQuickNav select{max-width:160px;font-size:10px}
#flightQuickNav>b,#flightQuickNav>small,#flightQuickNav>#warpStatus+button{grid-column:1/-1;font-size:10px;font-weight:400;line-height:1.6}
#flightQuickNav>small:empty{display:none}
#flightQuickNav button{padding:7px;font-size:10px}
@media(max-width:760px){#flightQuickNav{top:285px;right:10px;width:min(340px,calc(100vw - 20px));max-height:160px;overflow:auto}}

@media(min-width:761px) and (max-width:900px){
 .flying .hudreadings{right:auto;width:calc(50vw - 30px);gap:10px;padding:10px}
 .flying .universalClock{top:220px!important}
}
@media(max-width:760px){.flying .universalClock{top:245px!important}}
@media(max-width:480px){
 .flying .hudreadings{top:195px}
 .flying .universalClock{top:270px!important}
 #flightQuickNav{top:310px}
}
#fuelNetwork[aria-pressed=true]{border-color:#55dce8;color:#a9f3ed}
.unfedEngines{margin:8px 0;color:#ffbd8c;font-size:11px}.unfedEngines summary{cursor:pointer;padding:5px 0}.unfedEngines button{font-size:10px;padding:6px 9px;margin:3px}

/* KSP-style instrument hierarchy: world first, instruments at the edges. */
:root{--orange:#b7d783;--muted:#b1b6b7}
button,select,input{border-radius:2px}button{background:linear-gradient(#51565a,#303538);border-color:#697074 #202527 #202527 #697074;box-shadow:inset 0 1px #ffffff14}
button.active,button[aria-pressed=true]{background:linear-gradient(#68744a,#3b452c);color:#e1f5b2}
#library,#inspector,body.flying #inspector,.centerSidebar{border-radius:3px;background:linear-gradient(100deg,#3c4145f5,#272c2ff2);border:2px solid #60666a;box-shadow:inset 0 0 0 1px #1a1f21,0 3px 12px #0005}
#library{top:60px;bottom:58px;width:230px}#library .panelhead{padding:10px 12px 5px}#library h2{font-size:12px}#categories{padding:5px 8px;gap:2px}#categories button{padding:6px}.search{margin:4px 8px}.partcard{min-height:100px;padding:5px}.partcard .partcode,.partcard em{display:none}.partcard img{height:64px}.partcard strong{font-size:9px}
body:not(.flying) #panelDock{top:57px;left:250px;right:175px}
body:not(.flying) #inspector{right:175px;top:100px;bottom:65px}
body:not(.flying) .viewtop{top:57px;left:340px;right:260px}
body:not(.flying) #toolbar{left:246px;transform:none;bottom:12px;border-radius:2px;background:linear-gradient(#50565a,#303538);box-shadow:0 2px 6px #0008}
#stageDock{position:fixed;right:12px;bottom:12px;width:145px;z-index:7;padding:5px;background:linear-gradient(90deg,#484e51eb,#292e31eb);border:2px solid #697074;border-radius:3px;max-height:calc(100dvh - 115px);overflow:auto}
.at-center #stageDock{display:none}#stageStack{display:flex;flex-direction:column;gap:5px}#stageDock>#stage{display:none}
.stageStackRow{position:relative;border:1px solid #737c80;background:#242a2d;padding:4px;display:grid;grid-template-columns:24px 1fr;gap:4px}.stageStackRow>b{font:bold 18px monospace;color:#d2d8d8}.stageStackIcons{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.stageStackIcons button{padding:3px;min-width:0;height:29px}.stageStackIcons svg{width:20px;height:20px;stroke:#e7e9e2;fill:#bcc4b955;stroke-width:1.5}.stackMoves{grid-column:1/-1;display:flex;justify-content:flex-end;gap:3px}.stackMoves button{padding:0 7px;font-size:11px}.stageStackRow.next{border-color:#beea78;box-shadow:inset 3px 0 #b5d770}.stageStackRow.spent{opacity:.4}
.flying #stageDock{left:12px;right:auto;bottom:12px;width:125px;max-height:48dvh}.flying #stageDock>#stage{display:block;width:100%;margin-top:7px;font-size:11px;padding:9px 4px}.flying .stageStackIcons button:disabled{opacity:1}.flying .stageStackIcons{grid-template-columns:repeat(3,1fr)}
.flying .navpanel{left:50%;right:auto;bottom:7px;top:auto;transform:translateX(-50%);width:218px;padding:7px 14px 6px;background:linear-gradient(#575e62,#282e31);border:3px ridge #8b9293;border-radius:90px 90px 18px 18px;box-shadow:0 4px 16px #000a;overflow:visible}
.flying .navpanel canvas{display:block;width:180px;height:180px;margin:0 auto;border:5px ridge #737e83;border-radius:50%;box-sizing:content-box;background:#15222a}
.navSpeed{text-align:center;background:#171e20;border:2px inset #747d80;border-radius:5px;color:#c7ff8f;margin:0 10px 4px;padding:3px;font-family:monospace}.navSpeed small{display:block;font-size:10px}.navSpeed strong{font-size:22px}.navSpeed span{font-size:10px;margin-left:4px}
.flying #navPitch{display:block;text-align:center;font:10px monospace;color:#e4e5db;margin:3px}
.flying .navpanel>label{font-size:0;margin:0}.flying .navpanel select{font-size:10px;padding:4px;text-align:center;background:#252d31}
.flying .navpanel .throttle{position:absolute;left:-42px;top:75px;width:30px;min-width:0;height:155px;padding:4px;background:#363f43;border:2px ridge #838c8e;border-radius:8px}.navpanel .throttle label{font-size:0}.navpanel .throttle b{font:10px monospace;float:none}.navpanel .throttle input{writing-mode:vertical-lr;direction:rtl;width:18px;height:120px;margin:5px 0}
.navSwitches{position:absolute;right:-63px;top:90px;display:grid;gap:4px;width:60px}.navSwitches button,.navSwitches label{font-size:10px;padding:6px 3px;background:#354135;border:1px solid #788274;border-radius:3px}.navSwitches label{display:flex;align-items:center;gap:1px}.navSwitches input{margin:0}
.flying .hudreadings.altimeter{position:absolute;top:8px;left:50%;right:auto;transform:translateX(-50%);width:300px;gap:10px;padding:7px 12px;background:linear-gradient(#62696c,#373d40);border:3px ridge #9ba1a1;border-radius:5px 5px 25px 25px;justify-content:center;color:#d7ffc1}
.altimeter>div{background:#152022;border:2px inset #737e80;padding:2px 8px;text-align:center}.flying .altimeter strong{font:28px monospace;letter-spacing:1px}.flying .altimeter small{font:9px monospace;letter-spacing:1px}.altimeter>div:last-child strong{font-size:17px}
.flying .universalClock{left:12px;top:8px!important;font:10px monospace;background:#2c3539;color:#bbf58e}
#flightQuickNav{left:12px;right:auto;top:38px;width:260px;padding:7px;background:#2e363be8;border-radius:3px;gap:5px;font-size:10px}#flightQuickNav select{max-width:135px}#flightQuickNav>b{font-size:10px}
#flightMenu{position:absolute;top:58px;right:12px;width:70px;z-index:5}#flightMenu>summary,#flightSystems>summary{cursor:pointer;list-style:none;padding:8px;background:linear-gradient(#555d60,#30383c);border:1px solid #8b9597;text-align:center;border-radius:2px}
#flightMenu[open]{width:300px}#flightMenu .hudtop{position:static;display:flex;background:#293236f5;padding:8px;border:1px solid #748388;gap:5px}#flightMenu .hudtop #activeVessel,#flightMenu .hudtop #flightStatus{font:10px monospace;white-space:normal;flex-basis:100%}
.flying #panelDock{top:100px;right:12px;left:auto;display:block}.flying #panelDock button:first-child{display:none}.flying #panelDock button{min-width:70px}
.flying #inspector{top:145px;bottom:15px;width:260px}
#flightSystems{position:absolute;right:12px;bottom:12px;width:90px;z-index:5}#flightSystems[open]{width:300px}#flightSystems .flightbottom{position:static;display:flex;padding:8px;margin-top:4px;max-height:270px;overflow:auto;gap:7px;background:#293236f5;border-radius:2px}#flightSystems .flightbottom button{padding:7px;font-size:10px}.flightExtra{font-size:10px}
@media(max-width:900px){
 body:not(.flying) .viewtop{left:335px;right:155px}body:not(.flying) #panelDock{right:145px}body:not(.flying) #inspector{right:145px;width:225px}#stageDock{width:120px}.stageStackIcons{grid-template-columns:repeat(2,1fr)}
 .flying .hudreadings.altimeter{width:250px}.flying .altimeter strong{font-size:22px}#flightQuickNav{width:220px;top:90px}
}
@media(max-width:600px){
 #library{width:180px;bottom:75px}body:not(.flying) #panelDock{left:195px;right:10px;top:55px}body:not(.flying) .viewtop{left:195px;right:10px;top:100px}body:not(.flying) #inspector{right:10px;top:145px;bottom:80px;width:210px}body:not(.flying) #toolbar{left:8px;right:8px;max-width:none;bottom:8px;flex-wrap:wrap}body:not(.flying) #stageDock{width:90px;max-height:40dvh;bottom:85px;right:8px}.stageStackRow{grid-template-columns:20px 1fr}.stageStackIcons{grid-template-columns:repeat(2,1fr)}.stageStackIcons button{height:24px;padding:1px}.stageStackIcons svg{width:18px}
 .flying .hudreadings.altimeter{top:53px;width:250px}.flying .navpanel{width:176px;padding:5px 8px;bottom:4px}.flying .navpanel canvas{width:146px;height:146px}.navSpeed strong{font-size:18px}.navSpeed{margin:0 6px}.navSwitches{right:-49px;width:46px;top:80px}.navSwitches button,.navSwitches label{font-size:8px}.flying .navpanel .throttle{left:-31px;width:26px;top:70px;height:130px}.navpanel .throttle input{height:98px;width:15px}
 .flying #stageDock{left:8px;bottom:290px;width:100px;max-height:25dvh}.flying #stageDock .stageStackIcons{grid-template-columns:repeat(2,1fr)}#flightQuickNav{top:123px;left:8px;width:220px;max-height:125px;overflow:auto}#flightSystems{right:8px;bottom:290px;width:70px}#flightSystems[open]{width:min(270px,calc(100vw - 16px))}#flightMenu{top:8px;left:8px;right:auto}.flying .universalClock{top:110px!important;left:auto;right:8px;font-size:8px}.flying #panelDock{top:153px;right:8px}
}
#stageDock{display:flex;flex-direction:column;overflow:hidden}#stageStack{overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#727b7e #272e30}#stageDock>#stage{flex-shrink:0}.flying #stageDock{max-height:48dvh}.flying #stageDock>#stage{margin-bottom:0}
#flightQuickNav>label{white-space:nowrap;gap:4px}#flightQuickNav select{min-width:0;width:100%}
#practiceNotice{position:absolute;top:135px;left:12px;font:10px monospace;color:#d7e5a7;background:#29322bd9;padding:4px 7px;border-radius:2px}
@media(max-width:900px){#practiceNotice{top:215px}}
@media(max-width:600px){#practiceNotice{top:258px;font-size:9px}.flying #stageDock{max-height:25dvh}}
.flying .navpanel{transform:translateX(-50%) scale(.88);transform-origin:bottom center}
@media(max-width:600px){.flying .navpanel{transform:translateX(-50%)}.navSwitches{right:-63px;width:60px}}
.stageFuel{grid-column:1/-1;display:flex;align-items:center;gap:4px;min-width:0}.stageFuel meter{width:100%;min-width:0;height:12px;accent-color:#aace63}.stageFuel span{font:9px monospace;color:#c4e29a;min-width:27px;text-align:right}.stageFuel.empty span{color:#ffb18a}.stageStackRow.spent.engaged{opacity:1;border-color:#b8c793}

.flying .navpanel>label[hidden]{display:none}#sasDirections{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;width:100%;margin-top:3px}#sasDirections button{padding:4px 1px;font-size:10px;background:#303a3f;border:1px solid #7a8589;border-radius:3px}#sasDirections button[aria-pressed="true"]{background:#667c39;color:#f3ffd6;border-color:#d5ec9a}#sasDirections button:disabled{opacity:.35}

#orbitOverlay{inset:0;padding:0;border:0;border-radius:0;background:#03070e;overflow:hidden}#orbitOverlay .mapContent{display:block}#largeOrbitMap{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:fill;touch-action:none;cursor:grab}#largeOrbitMap:active{cursor:grabbing}#orbitOverlay .mapHeader{position:absolute;z-index:2;top:12px;left:12px;right:12px;pointer-events:none;align-items:flex-start}#orbitOverlay .mapHeader>*{pointer-events:auto}#orbitOverlay .mapHeader h2{font-size:12px;position:absolute;top:48px;left:4px;color:#a6bac8}#orbitOverlay .mapHeader h2 span{font-size:12px;color:#a6bac8}#closeOrbitMap{margin-left:auto;order:2}.mapToolbar{display:flex;gap:4px;align-items:center;padding:5px;background:#253039dc;border:1px solid #5d6e79;border-radius:4px}.mapToolbar button{font-size:12px;padding:6px 10px}.mapToolbar button[aria-pressed=true]{background:#536d82}#mapScale{font:11px monospace;color:#9fb2c3;padding:0 8px}#orbitOverlay .mapReadings{position:absolute;right:12px;top:72px;width:280px;max-height:calc(100% - 90px);overflow:auto;pointer-events:none}#orbitOverlay .mapReadings>*{pointer-events:auto}#orbitOverlay .mapReadings details{background:#202c35ed;border:1px solid #667480;border-radius:4px;margin-bottom:8px;padding:8px}#orbitOverlay summary{cursor:pointer;font-size:13px;padding:3px}#orbitOverlay .mapReadings p{font-size:11px;line-height:1.5}#orbitOverlay .maneuverControls{margin:10px 0;border-color:#506170}#mapFlightState{position:fixed;left:14px;bottom:38px}#mapCutoff{position:fixed;left:14px;bottom:12px}#orbitCaution{position:fixed;left:14px;bottom:76px;max-width:400px;background:#111b24b0;padding:5px}#mapOrbitPanel #orbitPlanNote{position:static}#mapPlanPanel small[hidden]{display:none}@media(max-width:650px){.mapToolbar{gap:2px;flex-wrap:wrap;max-width:75%}.mapToolbar button{padding:5px;font-size:10px}#orbitOverlay .mapReadings{top:110px;width:225px}.mapHeader h2{display:none}#orbitCaution{max-width:230px;font-size:10px!important}}

.mapTargets{position:absolute;z-index:2;left:12px;top:94px;display:flex;flex-direction:column;gap:5px;max-width:230px;background:#202c35df;padding:7px;border:1px solid #536574;border-radius:4px}.mapTargets select{max-width:215px;font-size:11px}.mapTargets small{color:#ee95e8}.mapTargets button{font-size:11px;padding:4px}@media(max-width:650px){.mapTargets{top:auto;bottom:125px;max-width:180px}.mapTargets select{max-width:160px}}

.mapTransfer select,.mapTransfer button,.mapTransfer small{display:block;width:100%;margin-top:5px}.mapTransfer summary{cursor:pointer}

/* Flight actions must remain clickable above the inspector. */
#flightMenu[open],#flightSystems[open]{z-index:9}
body.flying:has(#flightMenu[open]) #panelDock{visibility:hidden}
#mapThrottle{position:fixed;left:14px;bottom:12px;display:flex;gap:4px;pointer-events:auto}#mapThrottle #mapCutoff{position:static}#mapThrottle button{padding:6px 9px}#mapThrottle button[aria-pressed=true]{background:#536d82}
#mapFlightState{bottom:48px}#orbitCaution{bottom:86px}

/* Map instruments float over the orbital view; planning tools open on demand. */
.mapTargets:not([open]){display:block;min-width:130px}.mapTargets[open]{max-height:calc(100dvh - 230px);overflow:auto;scrollbar-width:thin}.mapTargets[open]>summary{margin-bottom:6px}.mapTargets[open]>:not(summary){margin-bottom:5px}.mapTargets[open]>button:not([hidden]),.mapTargets[open]>select,.mapTargets[open]>small{display:block;width:100%}#orbitOverlay .mapToolbar{background:#20252bdb;border-color:#626b72;box-shadow:0 2px 5px #0008}#orbitOverlay .mapReadings details,.mapTargets{background:#20252be8;border-color:#626b72}#orbitOverlay summary{color:#d5dcdf;font-weight:600}

#partWindows,#designPartWindows{position:fixed;inset:0;z-index:25;pointer-events:none}#partWindows[hidden],#designPartWindows[hidden]{display:none}.floatingWindow{position:absolute;width:240px;max-width:calc(100vw - 8px);max-height:calc(100dvh - 8px);overflow:auto;pointer-events:auto;background:#24292ff5;border:1px solid #778088;border-radius:4px;box-shadow:0 5px 20px #0009;color:#e2e7e9;font-size:12px}.floatingWindow header{display:flex;align-items:center;gap:5px;padding:5px 6px;background:linear-gradient(#626a70,#3b4147);cursor:move;touch-action:none;user-select:none}.floatingWindow header b{flex:1;font-size:12px}.floatingWindow header button{padding:2px 6px;font-size:14px}.floatingWindow header button[aria-pressed=true]{background:#899963;color:#fff}.floatingContent{padding:8px}.floatingContent label{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:7px 0}.floatingContent output{display:block;white-space:pre-line;line-height:1.8;color:#bdc8ce;border-top:1px solid #4e555d;padding-top:6px}.floatingContent .globalOff{color:#d9ac70}

.floatingContent label small{font-size:10px;margin-left:auto;color:#d9ac70}.floatingContent input{flex-shrink:0}

.floatingContent .partThrustLimit{display:grid;grid-template-columns:1fr auto;gap:3px}.partThrustLimit input{grid-column:1/-1;width:100%;margin:0;accent-color:#b4c584}.partThrustLimit span:last-of-type{font-variant-numeric:tabular-nums}

.floatingContent label[hidden]{display:none}.floatingContent label small:empty{display:none}

.fuelTransfer{border-top:1px solid #4e555d;margin-top:8px}.fuelTransfer select{max-width:145px}.fuelTransfer input[type="number"]{width:80px}.fuelTransfer>div{display:flex;gap:6px;margin:6px 0}.fuelTransfer button{flex:1;padding:5px}

/* Low flight console: keep the centre view clear and place controls beside attitude. */
.flying .navpanel{display:grid;grid-template-columns:142px 170px 180px;grid-template-rows:40px 124px 20px;gap:4px 10px;width:532px;padding:7px 10px;bottom:6px;border:2px ridge #8b9293;border-radius:12px;transform:translateX(-50%);align-items:center;box-sizing:border-box}
.flying .navpanel canvas{grid-column:2;grid-row:1 / 3;width:160px;height:160px;margin:0;border-width:5px}
.flying .navpanel .navSpeed{grid-column:1;grid-row:1;margin:0;width:100%;padding:2px;box-sizing:border-box}
.flying .navpanel .navSpeed strong{font-size:20px}
.flying #navPitch{grid-column:2;grid-row:3;margin:0;font-size:9px}
.flying .navpanel .navSwitches{position:static;grid-column:1;grid-row:2;display:grid;width:100%;height:100%;grid-template-rows:repeat(4,minmax(0,1fr));gap:3px}
.flying .navpanel .navSwitches button,.flying .navpanel .navSwitches label{font-size:11px;padding:4px 6px;margin:0;min-height:0;box-sizing:border-box;justify-content:center;text-align:center}
.flying .navpanel .throttle{position:static;grid-column:1;grid-row:3;display:flex;align-items:center;gap:4px;width:100%;height:20px;padding:0;border:0;background:none}
.flying .navpanel .throttle label{width:30px;flex-shrink:0;margin:0}
.flying .navpanel .throttle input{writing-mode:horizontal-tb;direction:ltr;width:100%;min-width:0;height:16px;margin:0}
.flying #sasDirections{grid-column:3;grid-row:1 / 4;align-self:center;grid-template-columns:repeat(3,1fr);width:100%;gap:5px;margin:0}
.flying #sasDirections button{min-height:32px;padding:4px 2px;font-size:10px}
@media(max-width:600px){
 .flying .navpanel{width:calc(100% - 16px);max-width:480px;grid-template-columns:minmax(0,1fr) 136px minmax(0,1.1fr);grid-template-rows:34px 96px 18px;gap:3px 4px;padding:5px;bottom:4px}
 .flying .navpanel canvas{width:126px;height:126px}
 .flying .navpanel .navSwitches button,.flying .navpanel .navSwitches label{font-size:9px;padding:4px 1px}
 .flying .navpanel .navSpeed strong{font-size:16px}
 .flying #sasDirections{grid-template-columns:repeat(2,1fr);gap:2px}
 .flying #sasDirections button{min-height:23px;font-size:8px;padding:2px 0}
 .flying #navPitch{font-size:8px}
}

.buoyancyPanel{padding:10px}.buoyancyPanel[hidden]{display:none}.buoyancyPanel label{display:block;margin-top:8px}.buoyancyPanel output{float:right;display:inline;border:0;padding:0;line-height:inherit}.buoyancyPanel input{width:100%;margin:7px 0}.buoyancyPanel dl{display:grid;grid-template-columns:1fr auto;gap:6px;margin:8px 0 0}.buoyancyPanel dd{margin:0;text-align:right;font-family:monospace}.buoyancyLegend{display:flex;justify-content:space-between;margin-top:8px}.buoyancyLegend span:first-child{color:#e7cf4c}.buoyancyLegend span:last-child{color:#bf8dff}
.exampleGroups{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0 18px}.exampleGroups button{flex:1;white-space:nowrap;padding:8px}.exampleGroups button[aria-pressed=true]{background:#667c39;color:#f3ffd6;border-color:#b2ca83}
.navSpeed #navigationFrame{display:block;width:100%;padding:0;border:0;border-radius:0;background:transparent;color:#c9dce3;font-size:10px;line-height:14px}.navSpeed #navigationFrame:hover{color:#fff;text-decoration:underline}

.stageStackRow.spent.chuteActive{opacity:1}.stageStackIcons button[data-chute="armed"]{border-color:#e3bc65;background:#51482d}.stageStackIcons button[data-chute="reefed"],.stageStackIcons button[data-chute="open"]{border-color:#a9d16b;background:#42572e}.stageStackIcons button[data-chute="cut"] svg{stroke:#e49079}

.stagePerformance{grid-column:1/-1;display:grid;gap:2px;font:10px monospace;color:#d6e5b8}.stagePerformance span{white-space:nowrap}

.stagePreview{align-self:start;padding:0;border:0;background:transparent;font:bold 18px monospace;color:#d2d8d8}.stagePreview[aria-pressed="true"]{color:#c6ef8b;outline:1px solid #9fbb6b;border-radius:2px}

#trackingFocus{position:absolute;top:78px;left:50%;transform:translateX(-50%);width:min(460px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;padding:7px 10px;border:1px solid #788588;border-radius:4px;background:#202c32e8;pointer-events:auto;color:#e5e8df;font-size:12px}
#trackingFocus[hidden]{display:none}#trackingName,#trackingControl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#trackingName{align-self:center;color:#c6df9d}#trackingControl{grid-column:1/-1;font-size:11px;color:#c1c9ca}#returnCamera{font-size:11px;padding:4px 8px}

#deliveryGuide{display:block;position:static;width:100%;margin-top:5px;padding:5px 7px;background:#253630e8;border:1px solid #9ba96b;color:#eef4d1;font-size:12px;text-align:left;pointer-events:auto}
#deliveryGuide[hidden]{display:none}.deliveryWindow{width:300px}.deliveryWindow h3{margin:0 0 8px}.deliveryWindow p{line-height:1.5}.deliveryWindow details{margin-top:12px}.deliveryResult{color:#d6ed9b}.at-center #deliveryGuide{display:none}

#deliverySiteMarker{position:absolute;transform:translate(-50%,-100%);padding:3px 6px;background:#182b28b8;color:#e5f6ad;border:1px solid #b8d285;border-radius:3px;font-size:11px;pointer-events:auto;text-shadow:0 1px 2px #000}#deliverySiteMarker[hidden]{display:none}

.surveyQuality table{width:100%;border-collapse:collapse;font-size:11px;margin-top:8px}.surveyQuality th,.surveyQuality td{padding:5px 2px;border-bottom:1px solid #4e555d;text-align:right;white-space:nowrap}.surveyQuality th:first-child{text-align:left}.surveyQuality p{font-size:11px;color:#bdc8ce}

.dockingWindow{position:fixed;width:280px}.dockingWindow[hidden]{display:none}.dockingWindow #dockingPanel{margin:0;padding:0;border:0}.dockingWindow #dockingPanel>summary{display:none}.dockingWindow #portCrosshair{display:block;width:100%;height:100px;object-fit:contain}.dockingWindow select{max-width:180px;min-width:0}.dockingWindow #alignDock,.dockingWindow #dockButton{width:100%;margin:4px 0}.dockingWindow small{display:block;line-height:1.5;margin:5px 0}.portAxes{width:100%;font-variant-numeric:tabular-nums;border-collapse:collapse;margin:5px 0}.portAxes th,.portAxes td{padding:3px;text-align:right}.portAxes th:first-child{text-align:left}.portAxes thead{color:#a9bdc5;font-size:10px}.portAxes tbody{border-top:1px solid #57636b}.portAxes[hidden]{display:none}

#openDocking{display:none}.flying #openDocking{display:block;position:fixed;right:12px;top:145px;width:70px;padding:9px 3px;z-index:20;font-size:10px}body.at-center #openDocking{display:none}

#openDocking[hidden]{display:none}

.mapTargets .mapLaunchPlane[hidden]{display:none}

/* Global sound control, outside the flight instrument cluster. */
#audioButton{position:fixed;right:12px;top:190px;width:36px;height:32px;padding:0;z-index:25;font-size:21px}
.audioWindow{width:248px}.audioWindow[hidden]{display:none}.audioWindow label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0}.audioWindow input[type=range]{width:150px}.audioWindow output{display:block;font-size:11px;color:#9daeb8}

.navSpeed #navigationAuto{font-size:10px;padding:1px 4px;margin-left:4px;min-height:0;line-height:1.2}.navSpeed #navigationAuto[aria-pressed=true]{color:#d8eea1;background:#526045}

.navFrameControls{display:flex;align-items:center;justify-content:center}.navSpeed .navFrameControls #navigationFrame{width:auto;flex:1}.navSpeed .navFrameControls #navigationAuto{flex:none}

.fuelTransfer .transferTarget{display:flex;flex-direction:column;align-items:stretch;gap:4px}.fuelTransfer .transferTarget select{width:100%;max-width:none}

.dockConditions{width:100%;border-top:1px solid #57636b;font-variant-numeric:tabular-nums;font-size:11px}.dockConditions th{text-align:left;font-weight:normal}.dockConditions td{text-align:right;padding:2px 0;color:#ffbd80}.dockConditions .satisfied td{color:#a9d596}.dockConditions[hidden]{display:none}

.finiteBurnControls{display:grid;grid-template-columns:1fr 1fr;gap:4px}.finiteBurnControls select{min-width:0;width:100%}.finiteBurnControls button,.finiteBurnControls p{grid-column:1/-1}#orbitOverlay .finiteBurnControls p{color:#9be888;white-space:pre-line;margin:3px 0;font-size:11px}

#mapThrottle button[data-planned=true]{border-color:#9be888;box-shadow:inset 0 0 0 1px #9be888}

.descentWindow{width:300px}.descentWindow #descentPanel{margin:0;padding:0;border:0;background:transparent}.descentWindow #descentPanel>strong{display:none}.descentWindow .floatingContent{padding:10px}.descentWindow #descentPanel>div{display:flex;flex-wrap:wrap;gap:4px}.descentWindow #descentPanel button{margin:0;font-size:11px}.descentWindow header{position:sticky;top:0;z-index:1}

#flightQuickNav>#openDescent{grid-column:auto}#flightQuickNav>#deliveryGuide{grid-column:1/-1;width:100%}

.runwayWindow{width:280px}.runwayWindow output{display:block;white-space:pre-line;line-height:1.8;font-variant-numeric:tabular-nums}.runwayWindow select{width:100%}

#failureLog{flex-basis:100%;font:11px monospace}#failureLog summary{cursor:pointer;padding:5px 0}#failureLog ol{margin:0;padding:0 0 0 18px;max-height:160px;overflow:auto}#failureLog li{padding:4px 0;overflow-wrap:anywhere}
