/* Color is carried by the rendered scroll scene and echoed in the interface. */
:root{--isg-paper:#efefef;--isg-ink:#1f1f1f;--isg-accent:#e6e6e6;--signal:#e6e6e6;--isg-muted:#646464}
body{background:#efefef;color:#1f1f1f}
.terminal-nav{max-width:1180px;top:24px;background:#212121d9;border:1px solid #ffffff25;border-radius:2px;color:#f6f6f6;box-shadow:0 12px 40px #21212112;backdrop-filter:blur(24px)}
.terminal-nav .brand,.terminal-nav nav a{color:#f6f6f6}
.terminal-nav .brand img{filter:brightness(0) invert(1)}
.terminal-nav nav a:hover{color:#e6e6e6}
.terminal-nav .white-button{background:#ff6600;color:#151515;border:1px solid #ff6600;border-radius:0;font:600 11px/1.25 monospace;padding:12px 18px;transition:background .2s,transform .2s}
.terminal-nav .white-button:hover{background:#ff8533;transform:translateY(-1px)}.terminal-nav .white-button:focus-visible{outline:2px solid #fff;outline-offset:4px}
.flight-stage{--studio-background:#d3d3d3;--studio-ink:#262626;--scene-accent:#414141}
.flight-stage[data-scene="0"]:not([data-focus]) .flight-heading h1{font-family:NeueDisplay,Neue,Arial,sans-serif;font-size:clamp(82px,9.2vw,148px);letter-spacing:-.075em;line-height:.88}
.flight-heading .edition-label{color:inherit;opacity:.58}
.flight-heading .chapter-kicker:before{content:'';display:inline-block;width:6px;height:6px;margin-right:9px;background:var(--scene-accent);border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--scene-accent) 12%,transparent)}
.flight-stage .inspection-toggle{background:#e6e6e6;color:#1f1f1f;border-color:#b9b9b9;border-radius:5px;box-shadow:0 8px 26px #20202016;transition:transform .2s,background .2s}
.flight-stage .inspection-toggle:hover{transform:translateY(-3px);background:#efefef}
.flight-stage .scene-nav button{border-top-color:color-mix(in srgb,var(--studio-ink) 25%,transparent);transition:background .25s,color .25s,padding .25s}
.flight-stage .scene-nav button[aria-current="step"]{background:#e6e6e6;color:#1f1f1f!important;border-color:#e6e6e6;border-radius:3px;padding-inline:12px}
.flight-stage .chapter-progress{background:color-mix(in srgb,var(--studio-ink) 18%,transparent)}
.flight-stage .chapter-progress i{background:var(--scene-accent)}
.flight-stage .return-tour{background:#e6e6e6;color:#1f1f1f;border:1px solid #b9b9b9;border-radius:4px}
.flight-stage #flight-scrub{accent-color:var(--scene-accent)}
.flight-stage .scroll-fact>strong{letter-spacing:-.055em}
.aircraft-studio{border-radius:8px;box-shadow:0 24px 80px #21212130}
.inspector-tabs button[aria-selected=true]{box-shadow:inset 0 -3px #c4c4c4}
.aircraft-studio .wide-control:hover,.aircraft-studio .focus-list button:hover{background:#f0f0f0}
.systems-story{background:#282828;color:#f4f4f4;padding-block:115px}
.systems-heading .label{color:#e6e6e6}
.systems-heading>p:last-child{color:#c6c6c6}
.systems-grid{gap:20px}
.system-feature{background:#343434;border-color:#6a6a6a;border-radius:6px;color:#f4f4f4;transition:transform .35s,background .35s,border-color .35s}
.system-feature .feature-number{color:#e6e6e6}
.system-feature>p{color:#cecece}
.system-feature .feature-link{color:#ededed;border-top-color:#6c6c6c}
.system-feature:hover{background:#404040;border-color:#e6e6e6;transform:translateY(-7px)}
.system-feature .model-study{background:#ececec;margin-top:25px}
.landing-intro{background:#d0d0d0;color:#272727}
.landing-intro .label,.landing-intro .section-description{color:#464646}
.attribute-grid strong{color:#343434}
.attribute-grid>div{border-color:#3434343b}
.spec-section{background:#f0f0f0;color:#262626}
.spec-drawing{background:#e6e6e6;border-radius:5px}
.spec-section .planform-media,.spec-section .planform-outline{background:#e6e6e6}
.program-data{background:#282828;color:#f2f2f2}
.program-data .label{color:#e6e6e6}
.program-data strong{color:#e6e6e6}
.landing-film video{filter:saturate(.55) contrast(1.08);opacity:.8}
.landing-film>div{background:linear-gradient(90deg,#282828bb,#28282810)}
.design-note{background:#e3e3e3;color:#383838}
.design-note>span,.design-note p{color:#575757}
.landing-cta{background:#e6e6e6;color:#262626}
.landing-cta .lime-button{background:#262626;color:#f4f4f4;border-color:#262626;border-radius:4px}
.landing-cta .quiet-link{color:#3f3f3f}
.landing-footer{background:#222222;color:#f0f0f0}
@media(max-width:700px){
 .terminal-nav{top:12px;border-radius:2px}
 .terminal-nav .white-button{padding:8px 10px}
 .flight-stage[data-scene="0"]:not([data-focus]) .flight-heading h1{font-size:19vw;max-width:100%}
 .flight-stage .scene-nav button[aria-current="step"]{padding-inline:4px}
 .systems-story{padding-block:70px}
 .system-feature:hover{transform:none}
}
@media(max-height:560px){.terminal-nav{top:10px}.flight-stage[data-scene="0"]:not([data-focus]) .flight-heading h1{font-size:62px}}
@media(prefers-reduced-motion:reduce){html:not([data-motion=full]) .system-feature{transform:none}}
.flight-stage #inspection-toggle{background:#e6e6e6;color:#1f1f1f;border-color:#b9b9b9}
.flight-stage #inspection-toggle:hover{background:#efefef}
.flight-stage[data-tone] #inspection-toggle{background:#e6e6e6;color:#1f1f1f;border-color:#b9b9b9}
.flight-stage[data-tone=dark] #inspection-toggle{background:#282828;color:#f2f2ef;border-color:#8b8b89}
.flight-stage[data-tone=dark] #inspection-toggle:hover{background:#454545}
.flight-stage .scene-nav button[aria-current="step"] *{color:#1f1f1f!important;opacity:1}

.flight-stage[data-tone] .scene-nav button[aria-current="step"]{color:#1f1f1f!important}

#flight.flight-stage[data-tone] .scene-nav button[aria-current="step"]{color:#1f1f1f!important}

/* A quiet caption connects the particle transformation with the scroll gesture. */
#particle-caption{position:absolute;right:6vw;top:47%;z-index:8;color:var(--studio-ink);font:9px/1.4 Neue,Arial,sans-serif;letter-spacing:.13em;writing-mode:vertical-rl;pointer-events:none}
.flight-stage[data-particle-phase=field] .scroll-fact,.flight-stage[data-particle-phase=forming] .scroll-fact{opacity:0;pointer-events:none}
@media(max-width:700px){#particle-caption{right:24px;top:40%;font-size:8px}}
@media(max-height:560px){#particle-caption{display:none}}

#payload-story-caption{position:absolute;bottom:145px;right:6vw;z-index:9;padding:10px 14px;background:#171819e8;border:1px solid #ffffff35;color:#f2f2f0;font:11px Neue,Arial,sans-serif;pointer-events:none}
@media(max-width:700px){#payload-story-caption{left:24px;right:auto;bottom:290px;font-size:9px;max-width:calc(100% - 48px)}}
@media(max-height:560px){#payload-story-caption{left:24px;right:auto;bottom:122px;font-size:9px;max-width:calc(100% - 150px)}}

/* Keep inspection controls legible in every story lighting state. */
#flight #aircraft-inspector{background:#ededebf5;color:#272829;border-color:#b9bab7}
#flight #aircraft-inspector :is(button,select,summary,label,output){color:#272829!important;border-color:#b8b9b6}
#flight #aircraft-inspector :is(p,span){color:#535553}
#flight #aircraft-inspector :is(select,input:not([type=range])){background:#f6f6f3;color:#272829}
#flight #aircraft-inspector input[type=range]{accent-color:#525452}
#flight #aircraft-inspector button[aria-pressed=true]{background:#d4d5d2;color:#222423!important;border-color:#777a77}
#flight #aircraft-inspector [role=tab][aria-selected=true]{color:#222423;border-bottom-color:#555855;box-shadow:inset 0 -2px #555855}
#flight #aircraft-inspector button:focus-visible,#flight #aircraft-inspector select:focus-visible,#flight #aircraft-inspector input:focus-visible{outline:2px solid #555855;outline-offset:3px}

#flight :is(.component-marker,.pylon-hotspot){background:#eeeeebf2;color:#262827;border-color:#999d99;font-size:11px;min-height:36px;box-sizing:border-box}
#flight :is(.component-marker,.pylon-hotspot):before{color:inherit}
#flight[data-tone=dark] :is(.component-marker,.pylon-hotspot){background:#282a29f2;color:#f3f3ef;border-color:#8b8e8b}
#flight :is(.component-marker,.pylon-hotspot):hover{background:#d8dad6;color:#222423}
#flight :is(.component-marker,.pylon-hotspot):focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:700px){#flight :is(.component-marker,.pylon-hotspot){min-height:44px;padding:10px 12px}}

/* Close-up navigation shares the neutral inspection palette. */
#flight .engine-study-nav{background:#eeeeebf2;border-color:#999d99;color:#262827}
#flight .engine-study-nav button:hover{background:#d8dad6;color:#222423}
#flight[data-tone=dark] .engine-study-nav{background:#282a29f2;border-color:#8b8e8b;color:#f3f3ef}
#flight[data-tone=dark] .engine-study-nav button:hover{background:#454845;color:#f3f3ef}
#flight .engine-study-nav button:focus-visible{outline:2px solid currentColor;outline-offset:-4px}

/* Presentation controls remain neutral against both studio and night lighting. */
#flight :is(.presentation-actions button,.presentation-tools button,.presentation-tools p){background:#eeeeebed;color:#292929;border-color:#a7a7a5}
#flight[data-tone=dark] :is(.presentation-actions button,.presentation-tools button,.presentation-tools p){background:#282828ed;color:#f2f2ef;border-color:#8b8b89}
#flight :is(.presentation-actions button,.presentation-tools button):hover{background:#d8d8d6;color:#222}
#flight[data-tone=dark] :is(.presentation-actions button,.presentation-tools button):hover{background:#454545;color:#f2f2ef}
#flight :is(.presentation-actions button,.presentation-tools button):focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* Detail titles need readable word spaces at both desktop and phone sizes. */
#flight[data-focus] .flight-heading h1{letter-spacing:-.035em}
#flight .inspector-heading h2{letter-spacing:-.025em}

#flight .configuration-preview{background:#eeeeebf2;color:#292929;border-color:#a7a7a5;gap:12px}
#flight .configuration-preview button{background:#d8d8d6;color:#292929}
#flight .configuration-preview:after{background:#717171}
#flight[data-tone=dark] .configuration-preview{background:#282828f2;color:#f2f2ef;border-color:#8b8b89}
#flight[data-tone=dark] .configuration-preview button{background:#454545;color:#f2f2ef}
#flight[data-tone=dark] .configuration-preview:after{background:#d8d8d6}
#flight .configuration-preview button:focus-visible{outline:2px solid currentColor;outline-offset:2px}
#flight:has(.configuration-preview:not([hidden])) .return-tour{display:none}
@media(max-width:700px){#flight .configuration-preview{flex-wrap:wrap;gap:6px;padding:10px}#flight .configuration-preview span{flex-basis:100%;margin-bottom:4px}#flight .configuration-preview button{flex:1}}

/* Carry the monochrome palette through the published specification tools. */
#specifications .units button{color:#595959}
#specifications .units button[aria-pressed=true]{color:#222;border-bottom-color:#222}
#specifications :is(#download-specifications,#print-specifications,.planform-toggle){color:#292929;border-color:#a8a8a6}
#specifications .planform-toggle{background:#eeeeebed}
#specifications .planform-toggle[aria-pressed=true],#specifications :is(#download-specifications,#print-specifications,.planform-toggle):hover{background:#d8d8d6}
#specifications :is(button,a):focus-visible{outline:2px solid #555;outline-offset:3px}
#specifications .spec-table th{color:#595959}
#specifications .spec-table :is(th,td){border-color:#b9b9b7}
#specifications .planform-outline img{filter:grayscale(1)}
#specifications .planform-scan{background:#777;box-shadow:0 0 12px 2px #9993}
#specifications .dimension{border-color:#aaa}
#specifications .dimension small{color:#595959}

/* Loading and graphics recovery retain the neutral presentation palette. */
.model-status{color:#383838;background:#f3f3f0ed;border-color:#bcbcb8}
.model-retry{color:#292929;background:#eeeeeb;border-color:#999995}
.model-retry:hover{background:#d8d8d6}
.model-retry:focus-visible{outline:2px solid #555;outline-offset:3px}

/* A quiet opening invitation, directly beneath the aircraft title. */
#flight[data-scene="0"]:not([data-focus]) .flight-description{display:flex;align-items:center;gap:18px;font-size:13px;line-height:1.5}
#flight[data-scene="0"]:not([data-focus]) .flight-description::after{content:"↓";display:inline-block;font-size:22px;font-weight:400;animation:explore-arrow 2.6s ease-in-out infinite}
@keyframes explore-arrow{0%,100%{transform:translateY(-3px);opacity:.55}50%{transform:translateY(4px);opacity:1}}
.low-motion #flight .flight-description::after{animation:none!important}
@media(prefers-reduced-motion:reduce){#flight .flight-description::after{animation:none!important}}

#flight[data-scene="0"]:not([data-focus]) .flight-heading h1{font-size:clamp(52px,6.4vw,100px);line-height:.96;letter-spacing:-.055em;max-width:850px}
@media(max-width:700px){#flight[data-scene="0"]:not([data-focus]) .flight-heading h1{font-size:clamp(36px,10vw,64px);max-width:100%}}
@media(max-height:560px){#flight[data-scene="0"]:not([data-focus]) .flight-heading h1{font-size:40px}}

#flight .scroll-word{background:linear-gradient(90deg,#ff6600 0%,#ff6600 var(--word-fill,0%),currentColor var(--word-fill,0%),currentColor 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}

.swarm-brain{height:220svh;background:#070c0e;color:#f4f5ef;position:relative}.swarm-sticky{height:100svh;position:sticky;top:0;overflow:hidden}.swarm-sticky canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.swarm-label{position:absolute;top:135px;left:6vw;font:11px monospace;color:#aeb8b7}.swarm-copy{position:absolute;bottom:13vh;left:12%;right:12%;text-align:center}.swarm-copy>p{font:11px monospace;color:#9faeaa}.swarm-copy h2{font:400 clamp(34px,5.2vw,78px)/1.04 Neue,Arial,sans-serif;letter-spacing:-.045em;margin:22px 0}.swarm-copy h2 span{background:linear-gradient(90deg,#ff6600 var(--brain-reveal,0%),#f4f5ef var(--brain-reveal,0%));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.swarm-copy .swarm-caption{font:13px Neue,Arial,sans-serif;margin-top:22px}.swarm-scroll{position:absolute;bottom:30px;left:6vw;font:10px monospace;color:#9faeaa}@media(max-width:700px){.swarm-copy{left:6%;right:6%;bottom:14vh}.swarm-label{top:112px;font-size:9px}.swarm-copy h2{font-size:38px}}

/* Editorial split panels for the swarm visual study. */
.swarm-brain{height:300svh}.swarm-sticky canvas{left:50%;width:50%}.swarm-label{left:54%;top:140px;font-size:10px}.swarm-copy{left:0;right:auto;top:0;bottom:0;width:50%;text-align:left;background:#fafbf7;color:#102526;padding:19vh 7vw 7vh 6vw;border-radius:0;display:flex;flex-direction:column;justify-content:center}.swarm-copy::after{content:"";position:absolute;right:-22px;top:62%;width:44px;height:72px;background:#fafbf7;clip-path:polygon(0 0,100% 0,0 100%)}.swarm-copy>p{color:#102526}.swarm-copy h2{font:500 clamp(28px,3vw,48px)/1.08 Neue,Arial,sans-serif;letter-spacing:-.035em;margin:28px 0}.swarm-copy .swarm-description{font:400 clamp(24px,2.55vw,42px)/1.21 Neue,Arial,sans-serif;letter-spacing:-.025em;margin:0 0 38px}.swarm-copy .swarm-caption{font:9px monospace;color:#6e7975;margin-top:35px}.swarm-stage-buttons{display:flex;gap:16px;flex-wrap:wrap}.swarm-stage-buttons button{border:0;border-bottom:1px solid #b7bfbb;background:none;color:#66736d;padding:12px 0;cursor:pointer;font:11px monospace}.swarm-stage-buttons button[aria-pressed="true"]{color:#102526;border-color:#102526}.swarm-stage-buttons button:focus-visible{outline:2px solid #ff6600;outline-offset:4px}.swarm-scroll{left:54%}@media(max-width:700px){.swarm-sticky canvas{left:0;top:47%;width:100%;height:53%}.swarm-copy{width:100%;height:47%;padding:105px 24px 20px;border-radius:0;justify-content:flex-start}.swarm-copy::after{display:none}.swarm-copy .swarm-step{font-size:9px;margin:0}.swarm-copy h2{font-size:26px;margin:12px 0}.swarm-copy .swarm-description{font-size:19px;line-height:1.2;margin:0 0 8px}.swarm-copy .swarm-caption{display:none}.swarm-stage-buttons{gap:20px}.swarm-stage-buttons button{font-size:10px;padding:10px 0}.swarm-label{top:51%;left:6%;font-size:8px}.swarm-scroll{left:6%;bottom:18px}}

.swarm-reveal-word{display:inline-block;white-space:nowrap}.swarm-reveal-letter{color:#d6d9d6}.swarm-reveal-letter[data-read="done"]{color:#102526}.swarm-reveal-letter[data-read="active"]{color:#ff6600}

/* Cinematic opening: regular editorial type, with room above for the scene. */
#flight[data-scene="0"]:not([data-focus]) .flight-heading{top:auto!important;bottom:205px;max-width:760px}
#flight[data-scene="0"]:not([data-focus]) .flight-heading h1{font-family:NeueDisplay,Neue,Arial,sans-serif;font-weight:700;font-size:clamp(44px,5.2vw,76px);letter-spacing:-.045em;line-height:1.02;text-transform:uppercase}
#flight[data-scene="0"]:not([data-focus]) .flight-heading .eyebrow{margin-bottom:20px}
@media(max-width:700px){#flight[data-scene="0"]:not([data-focus]) .flight-heading{top:112px!important;bottom:auto;max-width:calc(100% - 48px)}#flight[data-scene="0"]:not([data-focus]) .flight-heading h1{font-size:clamp(34px,9.2vw,58px)}}
@media(max-height:560px) and (min-width:701px){#flight[data-scene="0"]:not([data-focus]) .flight-heading{top:110px!important;bottom:auto;max-width:48%}#flight[data-scene="0"]:not([data-focus]) .flight-heading h1{font-size:38px}}

#replay-arrival{display:none;position:absolute;left:6vw;bottom:230px;z-index:7;background:#f4f1e9;color:#28221d;border:1px solid #9d8b76;border-radius:4px;padding:14px 20px;font:13px Neue,Arial,sans-serif;cursor:pointer}#flight[data-scene="5"]:not([data-focus]) #replay-arrival{display:block}#replay-arrival:disabled{opacity:.45;cursor:default}@media(max-width:700px){#replay-arrival{left:24px;bottom:225px;padding:12px 16px}}

#flight[data-scene="5"] .scroll-fact{display:none!important}
/* Keep chapter controls usable on compact phones without covering the artwork. */
@media(max-width:700px){
 .swarm-stage-buttons button{min-height:44px;display:inline-flex;align-items:center;padding:10px 0}
 .swarm-copy{padding-bottom:12px}
}
@media(max-width:700px) and (max-height:740px){
 .swarm-copy{height:52%;padding:88px 20px 10px}
 .swarm-sticky canvas{top:52%;height:48%}
 .swarm-copy h2{font-size:23px;margin:8px 0}
 .swarm-copy .swarm-description{font-size:16px;line-height:1.2;margin-bottom:4px}
 .swarm-stage-buttons{gap:16px}
 .swarm-label{top:55%}
}
@media(max-width:700px) and (max-height:580px){
 .swarm-copy{padding-top:72px;overflow-y:auto;overscroll-behavior:contain}
 .swarm-copy h2{font-size:20px}
 .swarm-copy .swarm-description{font-size:14px}
}

/* Isengard brand cues: crisp controls and orange active-state rules. */
.flight-stage .inspection-toggle,.flight-stage .return-tour,#replay-arrival,.flight-stage .scene-nav button[aria-current="step"]{border-radius:0}
.swarm-stage-buttons button[aria-pressed="true"]{border-bottom:2px solid #ff6600}
.platform-status{display:inline-block;margin-top:14px;padding:6px 9px;border:1px solid #888;font:11px monospace;text-transform:uppercase}

/* Short landscape screens retain readable chapter copy below the navigation. */
@media (min-width:701px) and (max-height:560px){
 .swarm-copy{padding:100px 4vw 12px;justify-content:flex-start;overflow-y:auto;overscroll-behavior:contain}
 .swarm-copy .swarm-step{font-size:9px;margin:0}
 .swarm-copy h2{font-size:24px;line-height:1.08;margin:10px 0}
 .swarm-copy .swarm-description{font-size:18px;line-height:1.2;margin:0 0 12px}
 .swarm-stage-buttons{gap:16px;margin-top:auto;flex-shrink:0}
 .swarm-stage-buttons button{min-height:44px;font-size:10px;padding:8px 0}
 .swarm-copy .swarm-caption,.swarm-label,.swarm-scroll{display:none}
}

/* The gear chapter already names the detail; retain only its inspection action. */
#flight[data-scene="4"] .scroll-fact>span,#flight[data-scene="4"] .scroll-fact>strong,#flight[data-scene="4"] .scroll-fact>small{display:none}
#flight[data-scene="4"] .scroll-fact{gap:0}
#flight[data-scene="4"] .scroll-fact>.inspect-current-detail{margin-top:50px}

/* Keep more tools visible on short phones without shrinking touch targets. */
#flight .inspector-panel{scrollbar-color:#939797 transparent}
@media(max-width:700px) and (max-height:740px){
 #flight .inspector-heading{padding:8px 16px}
 #flight .inspector-heading span{display:none}
 #flight .inspector-heading h2{font-size:20px;margin:0}
 #flight .inspector-tabs button{min-height:44px;padding-block:8px}
}

/* Leave the embedded landscape title below the page's aircraft controls. */
@media(max-height:560px) and (min-width:701px){
 .curated-story #flight[data-scene="0"]:not([data-focus]) .flight-heading{top:184px!important;bottom:auto;max-width:48%}
 .curated-story #flight[data-scene="0"]:not([data-focus]) .flight-heading h1{font-size:30px}
 .curated-story #flight[data-scene="0"]:not([data-focus]) .flight-heading .eyebrow{display:none}
}


/* Six concept presets remain visible without horizontal drawer scrolling. */
.preset-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.preset-list button{min-width:0;min-height:44px;overflow-wrap:normal;line-height:1.3}.inspector-panel select{max-width:100%}

#payload-story-caption button{pointer-events:auto;display:block;min-height:44px;margin-top:8px;padding:8px 12px;background:#f3f3ef;color:#172020;border:1px solid #9fa8a8;font:12px Neue,Arial,sans-serif;cursor:pointer}
#payload-story-caption button[hidden]{display:none}#payload-story-caption button:focus-visible{outline:2px solid #ff6600;outline-offset:3px}
#inspection-motion-note{margin:8px 0;padding:8px 12px;background:#ffffff08;flex:none}#inspection-motion-note[hidden]{display:none}

/* Internal payload choices share the existing inspection control surface. */
.internal-payload-control{display:flex;flex-direction:column;gap:7px;font:11px Neue,Arial,sans-serif;color:inherit;margin:12px 0}
.internal-payload-control[hidden]{display:none}
.internal-payload-control select{width:100%;min-height:44px;padding:10px;border:1px solid #999d99;border-radius:0;background:#f4f4f0;color:#262827;font:12px Neue,Arial,sans-serif}
.internal-payload-control select:focus-visible{outline:2px solid currentColor;outline-offset:2px}
#airframe-study-nav{flex-wrap:wrap}
#airframe-study-nav .internal-payload-control{flex:0 0 100%;box-sizing:border-box;margin:0;padding:0 12px 12px}
@media(max-height:560px){#airframe-study-nav .internal-payload-control{gap:4px;padding:0 8px 8px}}

/* Payload choices use compact vector previews and native radio navigation. */
.payload-choices{border:0;padding:0;margin:0 0 12px;min-width:0}
.payload-choices legend{padding:0;margin-bottom:10px;font:13px/1.4 Neue,Arial,sans-serif}
.payload-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.payload-card{position:relative;display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:92px;margin:0!important;padding:5px!important;border:1px solid #999d9970;background:#ffffff08;cursor:pointer;box-sizing:border-box}
.payload-card input{position:absolute;inset:0;opacity:0;margin:0;width:100%;height:100%;cursor:pointer}
.payload-card svg{width:100%;max-width:95px;height:55px;pointer-events:none}
.payload-card span{font:11px/1.4 Neue,Arial,sans-serif!important;pointer-events:none}
.payload-card i{display:none;position:absolute;right:6px;top:3px;font:12px Neue;pointer-events:none}
.payload-card:has(input:checked){border-color:currentColor;background:#858c881c;box-shadow:inset 0 0 0 1px currentColor}
.payload-card:has(input:checked) i{display:block}
.payload-card:has(input:focus-visible){outline:2px solid currentColor;outline-offset:3px}
.payload-card:has(input:disabled){opacity:.5;cursor:wait}
.payload-card:hover{background:#858c8829}
.payload-summary{margin:0;padding:0 0 10px;border-bottom:1px solid #999d9955;font:11px/1.5 Neue,Arial,sans-serif}
.payload-summary>div{display:flex;justify-content:space-between;gap:12px;margin-top:3px}
.payload-summary dt{opacity:.7}.payload-summary dd{margin:0;text-align:right}
.payload-actions{display:flex;gap:8px;margin-top:8px}
.payload-actions button,.payload-closeup{min-height:44px;border:1px solid #999d9970;background:transparent;color:inherit;font:11px/1.3 Neue,Arial,sans-serif;padding:8px 11px;cursor:pointer}
.payload-actions button:first-child{flex:1;text-align:left}.payload-closeup{width:100%;text-align:left;margin-top:8px}
.payload-actions button:hover,.payload-closeup:hover{background:#858c8829}
.payload-actions button:focus-visible,.payload-closeup:focus-visible{outline:2px solid currentColor;outline-offset:2px}
#payload-configurator{position:absolute;left:6vw;bottom:90px;z-index:10;width:338px;max-width:calc(100% - 32px);box-sizing:border-box;padding:14px;background:#eeeef0f5;border:1px solid #999d9970;color:#262827}
#flight[data-tone=dark] #payload-configurator{background:#222527f5;color:#eeeef0}
#payload-configurator[hidden],.inspector-open #payload-configurator,.presentation-mode #payload-configurator,.recording-tour #payload-configurator{display:none!important}
#flight:is(.graphics-paused,.model-unavailable) #payload-configurator{visibility:hidden}
#flight.payload-config-active .scroll-fact{display:none!important}
#flight.payload-config-active #return-tour{left:auto;right:6vw;bottom:90px}
#flight.payload-closeup-active #airframe-study-nav{bottom:409px;width:338px;box-sizing:border-box}
#flight.payload-closeup-active .payload-closeup{display:none}
#flight.payload-closeup-active #payload-configurator{bottom:150px}
@media(max-width:700px){
 #payload-configurator,#flight.payload-closeup-active #payload-configurator{left:16px;right:16px;bottom:65px;width:auto;padding:10px}
 .payload-card{min-height:74px}.payload-card svg{height:40px}
 #payload-configurator .payload-summary{display:flex;justify-content:space-between;gap:12px;padding-bottom:6px;font-size:10px}
 #payload-configurator .payload-summary>div{display:block;margin:0}.payload-summary dd{text-align:left}
 #payload-configurator .payload-summary>div:last-child{text-align:right}#payload-configurator .payload-summary>div:last-child dd{text-align:right}
 #flight.payload-closeup-active #airframe-study-nav{bottom:291px;left:16px;right:16px;width:auto;max-width:none}
 #flight.payload-config-active #return-tour{left:16px;right:auto;bottom:12px;min-height:44px}
 .curated-story #flight.payload-closeup-active #aircraft-3d{transform:none;mask-image:none}
 #flight.payload-config-active .flight-heading .flight-description{display:none}
}
@media(max-height:560px) and (orientation:landscape){
 #payload-configurator,#flight.payload-closeup-active #payload-configurator{left:16px;right:auto;bottom:12px;width:290px;padding:9px}
 #payload-configurator .payload-choices{margin-bottom:6px}#payload-configurator legend{font-size:11px;margin-bottom:5px}
 #payload-configurator .payload-card{min-height:58px}#payload-configurator .payload-card svg{height:30px}
 #payload-configurator .payload-summary{display:block;font-size:10px;padding-bottom:5px}
 #payload-configurator .payload-summary>div{display:flex}
 #payload-configurator .payload-actions{margin-top:5px;gap:5px}#payload-configurator .payload-closeup{margin-top:5px}
 #flight.payload-config-active .flight-heading,#flight.payload-closeup-active #airframe-study-nav{display:none!important}
 #flight.payload-config-active #return-tour{left:auto;right:16px;bottom:12px}
}
@media(min-width:701px) and (min-height:561px){
 #flight.payload-closeup-active #payload-configurator{bottom:75px}
 #flight.payload-closeup-active #airframe-study-nav{bottom:334px}
 #flight.payload-config-active .flight-description{display:none}
 .curated-story #flight.payload-config-active .flight-heading h1{font-size:40px!important;max-width:320px}
 #flight.payload-config-active #return-tour{bottom:75px}
}
@media(max-height:560px) and (orientation:landscape){
 #payload-configurator,#flight.payload-closeup-active #payload-configurator{padding:6px}
 #payload-configurator .payload-choices{margin-bottom:4px}
 #payload-configurator legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 #payload-configurator .payload-summary{display:flex;gap:8px;font-size:9px;padding-bottom:3px;line-height:1.3}
 #payload-configurator .payload-summary>div{display:block;margin:0}
 #payload-configurator .payload-summary>div:last-child,#payload-configurator .payload-summary>div:last-child dd{text-align:right}
 #payload-configurator .payload-actions,#payload-configurator .payload-closeup{margin-top:4px}
}
@media(max-height:560px) and (orientation:landscape){
 #flight.payload-config-active:not(.inspector-open) #return-tour:not([hidden]){display:block}
 #payload-configurator .payload-summary{justify-content:space-between;width:100%;box-sizing:border-box}
}
