/* Whole-vehicle structural teaching homepage. The university mark remains vector. */
:root{--ice:#b1e8fa;--muted:#7091aa;--gold:#f3c87d;--line:#46759055}
.screen{grid-template-rows:11.5% 1fr 17%;min-height:740px}.masthead{margin:0 2.5vw}.brand .university-mark{max-height:8vh;width:25vw}.mainstage{overflow:hidden}.stage-heading{top:2%;left:22%;right:23%;pointer-events:none}.eyebrow{font-size:clamp(8px,.58vw,20px);letter-spacing:.25em}h1{font-size:clamp(30px,3.05vw,104px);letter-spacing:.22em;margin:.13em 0 .12em}.stage-heading p{font-size:clamp(10px,.65vw,24px);letter-spacing:.2em;margin:.5em 0}.stage-watermark{font-size:6.5vw;top:42%;opacity:.025}.hero-stage{left:15%;right:17.5%;top:16%;bottom:23%;z-index:1}.hero-stage canvas{cursor:grab}.hero-stage canvas:active{cursor:grabbing}.side-left{left:2.8%;width:14%;top:14.5%;z-index:4}.side .section-kicker{font-size:clamp(11px,.85vw,29px);margin-bottom:.4em}.side .micro{font-size:clamp(8px,.49vw,18px);margin-bottom:1.25vw;letter-spacing:.08em}.focus-list{gap:.42vw}.focus-button{padding:.75vw .65vw;gap:.65vw;background:linear-gradient(110deg,#0a1a2b99,transparent);border-color:#27435a55;min-height:0}.focus-copy strong{font-size:clamp(11px,.85vw,31px);line-height:1.3}.focus-copy small{font-size:clamp(7px,.46vw,17px);margin-top:.3em;letter-spacing:.075em}.focus-no{font-size:clamp(9px,.56vw,20px)}.focus-arr{margin-left:auto;font-size:clamp(12px,.8vw,26px);color:#7399ae}.focus-button.active{border-color:#91d6ea88;background:linear-gradient(100deg,#2a5e7480,#172a3d44);box-shadow:inset 2px 0 #bceef6,0 0 24px #51bbee0a}.focus-button.active .focus-no{color:var(--gold)}.home-object-count{display:flex;align-items:baseline;gap:.5em;margin-top:1vw;font-size:clamp(8px,.6vw,20px);color:var(--muted)}.home-object-count strong{font-size:clamp(16px,1.3vw,42px);font-weight:400;color:#b1cada;font-variant-numeric:tabular-nums}.view-switch{position:absolute;top:18%;left:42%;transform:translateX(-30%);display:flex;gap:.3vw;z-index:5}.view-switch button{background:#09192855;border:0;color:#7c9db2;font:inherit;font-size:clamp(9px,.63vw,23px);padding:.4em .75em;cursor:pointer;border-bottom:1px solid transparent}.view-switch button.active{color:#daf5ff;border-color:#a0dff0;background:#31597222}.view-switch button:hover{color:#e1f6ff}
.inspector{position:absolute;right:2.8%;top:14.5%;bottom:8.5%;width:17%;z-index:5;display:flex;flex-direction:column;padding:.95vw;background:linear-gradient(145deg,#0d2236ba,#091525aa);border:1px solid #42698355;box-shadow:0 10px 60px #0002;backdrop-filter:blur(8px)}.inspector-heading{display:flex;align-items:center;justify-content:space-between}.inspector-heading .section-kicker{font-size:clamp(11px,.82vw,28px);margin:0;white-space:nowrap}.selection-state{font-size:clamp(8px,.54vw,20px);padding:.35em .65em;color:#809fae;background:#27435055;border:1px solid #45627444;border-radius:2px;white-space:nowrap}.selection-state.detached{color:#ffd991;border-color:#b1834966;background:#87613122}.selected-part{min-height:6.8vw;padding:.9vw 0 .7vw}.part-eyebrow{font:clamp(8px,.56vw,20px) ui-monospace,monospace;color:#6e9ba9;letter-spacing:.07em}.selected-part h2{font-size:clamp(12px,.95vw,34px);font-weight:500;line-height:1.5;margin:.35em 0;color:#d9eef7;overflow-wrap:anywhere}.selected-part p{font-size:clamp(9px,.61vw,21px);color:#8dafc4;margin:.2em 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#selected-material{font-size:clamp(8px,.53vw,19px);color:#6b90a6;display:block;margin-top:.4em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.part-actions{display:grid;grid-template-columns:1fr 1fr;gap:.35vw;padding-bottom:.8vw;border-bottom:1px solid var(--line)}.part-actions button{border:1px solid #3c637b;background:#152e4166;color:#a4c5d9;font:inherit;font-size:clamp(9px,.63vw,23px);padding:.6em .65em;text-align:left;display:flex;justify-content:space-between;gap:.4em;cursor:pointer;white-space:nowrap}.part-actions button.primary-action{color:#f2d6a1;border-color:#79633b;background:#72552922}.part-actions button[aria-pressed=true]{color:#a5efff;border-color:#8bcbd7;background:#2c687f55}.part-actions button:disabled{opacity:.35;cursor:default}.part-actions button:hover:enabled{background:#31567088}.part-browser{padding-top:.8vw;flex:1;min-height:0;display:flex;flex-direction:column;gap:.45vw}.search-label{font-size:clamp(9px,.62vw,22px);color:#9fbccf;display:flex;justify-content:space-between}.search-label span{color:#547c94;font:clamp(8px,.55vw,21px) ui-monospace,monospace}.search-box{border:1px solid #375b7355;display:flex;align-items:center;padding:0 .6vw;background:#06101f77}.search-box>span{font-size:clamp(15px,1.1vw,32px);color:#86c5d9}.search-box input{width:100%;min-width:0;border:0;background:none;padding:.7em .4em;color:#d9eef7;font:inherit;font-size:clamp(10px,.63vw,23px);outline:none}.search-box:focus-within{border-color:#8bcde4}.search-box input::placeholder{color:#66889e}#module-filter{width:100%;background:#0b1c2c;color:#9cb6c7;border:1px solid #375b7344;font:inherit;font-size:clamp(9px,.62vw,22px);padding:.45em;outline-offset:2px}.parts-results{flex:1;min-height:35px;overflow:auto;scrollbar-width:thin;scrollbar-color:#42647b #0b1829}.part-row{display:flex;gap:.4em;justify-content:space-between;align-items:center;width:100%;border:0;border-bottom:1px solid #3c5b7222;background:transparent;padding:.55em .3em;color:#87a9bc;font:inherit;font-size:clamp(9px,.64vw,23px);text-align:left;cursor:pointer;min-height:27px}.part-row:hover,.part-row[aria-pressed=true]{color:#d0f2ff;background:#254e6755}.part-row[aria-pressed=true]{border-left:2px solid #9de5f8}.part-row span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.part-row small{color:#6c8595;flex:none;font-size:.8em}.parts-empty{font-size:clamp(10px,.7vw,22px);line-height:1.7;color:#7898ad;padding:.5em}.part-pagination{display:flex;align-items:center;justify-content:space-between;font:clamp(8px,.55vw,20px) ui-monospace,monospace;color:#678ca3}.part-pagination button{font:inherit;font-size:clamp(13px,.9vw,29px);border:1px solid #284658;background:#0c2031;color:#9bc4db;padding:0 .8em;cursor:pointer;min-height:23px}.part-pagination button:disabled{opacity:.3;cursor:default}
.teaching-dock{position:absolute;bottom:9%;left:20%;right:23%;z-index:5;background:linear-gradient(105deg,#0a1c2eb0,#11293b80);backdrop-filter:blur(8px);border:1px solid #4a789044;padding:.75vw 1vw;box-shadow:0 0 30px #0002}.mode-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.mode-switch{display:flex;gap:.8vw}.mode-switch button{border:0;border-bottom:1px solid transparent;background:none;color:#6c91a8;font:inherit;font-size:clamp(10px,.78vw,28px);padding:.2em 0 .7em;cursor:pointer;white-space:nowrap}.mode-switch button span{font:clamp(8px,.51vw,18px) ui-monospace,monospace;margin-right:.6em;color:#486e87}.mode-switch button.active{color:#ddf6ff;border-color:#b1e7f5}.mode-switch button.active span{color:#f0c77b}.body-toggle{font-size:clamp(9px,.6vw,22px);color:#8eb4c6;display:flex;gap:.45em;align-items:center;white-space:nowrap}.body-toggle input{accent-color:#72cfeb;width:clamp(11px,.8vw,23px);height:clamp(11px,.8vw,23px)}.explode-row,.section-row{display:flex;align-items:center;gap:.7vw;font-size:clamp(9px,.64vw,22px);margin-top:.65vw;color:#88b0c6}.section-row[hidden]{display:none}.explode-row label,.section-row label{flex:none}.explode-row input,.section-row input{accent-color:#9cdef0;height:15px;flex:1;min-width:30px;cursor:ew-resize}.explode-row output,.section-row output{color:#dcecf7;font:clamp(10px,.67vw,24px) ui-monospace,monospace;min-width:3em;text-align:right}.explode-row button{font:inherit;font-size:clamp(9px,.62vw,22px);border:0;background:none;color:#a0c5d7;cursor:pointer;margin-left:.5vw;white-space:nowrap}.scene-toolbar{left:2.8%;max-width:15%;bottom:4.5%;gap:.35vw;z-index:5}.scene-toolbar .motion-button{font-size:clamp(8px,.56vw,20px);min-height:27px;padding:.5em .65em;background:#13283a44}.exhibit-caption{left:20%;right:23%;bottom:0;padding:.8vw 0 .5vw;border:0;background:none;box-shadow:none}.exhibit-copy h2{font-size:clamp(11px,.87vw,29px);margin:.25em 0 0}.exhibit-en{font-size:clamp(7px,.47vw,17px);letter-spacing:.15em}.exhibit-copy p{font-size:clamp(8px,.58vw,20px);margin:.4em 0 0;color:#7397ae}.exhibit-link{font-size:clamp(9px,.64vw,23px);padding:.7em 1em;color:#b1cbdc;border-color:#405f7477;white-space:nowrap}.live-status{right:2.8%;bottom:3%;font-size:clamp(8px,.52vw,20px);max-width:18%;flex-wrap:wrap;gap:.4em}.live-status #stage-live{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:75%}#detached-status{color:#d3b885;margin-left:.4em}.directions{margin:0 2.8vw;padding-top:.8vw}.directions-head{margin-bottom:.7vw;gap:1vw}.directions-head h2{font-size:clamp(12px,.95vw,34px)}.directions-head h2 span{font-size:clamp(7px,.48vw,16px);margin-left:.8vw}.library-summary{font-size:clamp(8px,.58vw,21px);color:#7190a5;margin-right:auto}.library-summary strong{font:clamp(10px,.73vw,26px) ui-monospace,monospace;color:#bad1df}.library-summary i{font-style:normal;margin:0 .6em;color:#345268}.direction-links{gap:.8vw}.new-batch,.directions-head a{font-size:clamp(8px,.58vw,21px)}.domain-card{padding:.6vw .8vw}.domain-top{margin-bottom:.35vw}.domain-icon{width:clamp(16px,1.3vw,44px);height:clamp(16px,1.3vw,44px)}.domain-card h3{font-size:clamp(10px,.85vw,31px);margin:0 0 .3em}.domain-code{font-size:clamp(6px,.45vw,16px)}.domain-bottom{font-size:clamp(7px,.55vw,20px)}.screen-footer{padding-top:.5vw;font-size:clamp(7px,.49vw,18px)}[data-scene-control]:disabled{opacity:.4;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #efc779;outline-offset:3px}
@media(min-width:1700px){.screen{min-height:840px}.parts-results .part-row{min-height:2vw}}
@media(min-aspect-ratio:2/1){.screen{min-height:700px;grid-template-rows:12% 1fr 18%}.hero-stage{top:11%;bottom:20%}.side-left,.inspector{top:12%}.focus-list{gap:.5vh}.focus-button{padding:.8vh .6vw}.focus-copy strong{font-size:1.6vh}.focus-copy small{font-size:.9vh}.side .micro{margin-bottom:1vh}.selected-part{min-height:0;padding:.7vh 0}.selected-part h2{font-size:1.8vh}.part-actions{padding-bottom:.7vh}.part-browser{padding-top:.8vh}.teaching-dock{padding:.7vh 1vw}.stage-heading h1{font-size:5vh}.stage-heading p{margin:.2em}.view-switch{top:14%}.exhibit-caption{padding:.5vh 0}.domain-card{padding:.55vh .8vw}}
@media(max-width:1100px){.screen{min-height:820px;grid-template-rows:10% 1fr 20%}.side-left{width:15%;left:2%}.inspector{width:20%;right:2%;padding:10px;top:15%;bottom:6%}.hero-stage{left:14%;right:20%;top:17%;bottom:27%}.side .micro{display:none}.focus-copy small{display:none}.focus-button{padding:11px 7px;gap:7px}.focus-no{font-size:8px}.focus-copy strong{font-size:11px}.focus-list{gap:7px}.focus-arr{display:none}.side-left{top:18%}.selected-part{min-height:88px;padding:12px 0}.part-actions{gap:5px;padding-bottom:10px}.part-actions button{font-size:9px;padding:7px 5px}.part-actions button span{display:none}.part-browser{gap:7px;padding-top:12px}.part-row{min-height:29px}.teaching-dock{left:20%;right:25%;bottom:13%;padding:10px}.mode-switch{gap:10px}.mode-switch button{font-size:10px}.mode-switch button span{display:none}.body-toggle{font-size:8px}.explode-row{gap:7px;margin-top:8px;font-size:9px}.explode-row button{font-size:8px}.exhibit-caption{left:20%;right:25%;bottom:2%}.exhibit-copy p{display:block}.exhibit-link{font-size:9px;padding:7px}.scene-toolbar{left:2%;max-width:15%;bottom:3%}.scene-toolbar .motion-button{font-size:9px}.live-status{display:none}.home-object-count{display:block;font-size:9px;margin-top:15px}.home-object-count strong{display:block;margin-bottom:4px}.view-switch{top:20%;left:40%}.domain-grid{grid-template-columns:repeat(5,1fr);gap:7px}.domain-card{padding:7px}.domain-card h3{font-size:10px}.domain-top{margin:0}.domain-bottom{font-size:8px}.domain-icon{width:16px;height:16px}.domain-card{grid-template-columns:17px 1fr;gap:6px}.domain-bottom{grid-column:2}.directions-head h2 span{display:none}.library-summary{font-size:8px}.new-batch{display:none}.brand .university-mark{width:30vw;max-height:65px}.directions{padding-top:10px}.directions-head{margin-bottom:10px}.screen-footer{padding-top:8px}}
@media(max-width:700px){.screen{height:auto;min-height:100svh;display:block}.masthead{height:80px}.brand .university-mark{width:225px;max-height:58px}.mainstage{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:85px 16px 15px;overflow:visible}.stage-heading{top:20px;left:0;right:0}.stage-heading h1{font-size:29px}.stage-heading p{font-size:9px}.stage-heading .eyebrow{font-size:7px}.hero-stage{position:relative;grid-column:1/-1;inset:auto;height:340px;width:100%;z-index:1;margin:20px 0 0}.view-switch{top:102px;left:50%;transform:translateX(-50%);white-space:nowrap}.side-left{position:relative;grid-column:1/-1;inset:auto;width:auto;order:1}.side-left .section-kicker,.home-object-count{display:none}.focus-list{display:flex;flex-wrap:wrap;gap:6px}.focus-button{padding:9px;flex:1 0 22%;justify-content:center}.focus-copy strong{font-size:10px}.focus-no{display:none}.teaching-dock{position:relative;grid-column:1/-1;inset:auto;order:2;padding:12px}.mode-switch{gap:16px}.mode-switch button{font-size:12px}.body-toggle{font-size:10px}.explode-row{font-size:11px;margin-top:12px;gap:8px}.explode-row button{font-size:10px}.section-row{margin-top:10px}.inspector{position:relative;grid-column:1/-1;inset:auto;width:auto;order:4;padding:15px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.inspector-heading{grid-column:1/-1}.selected-part{min-height:0;padding:0}.selected-part h2{font-size:14px}.selected-part p{font-size:10px}#selected-material{font-size:9px}.part-actions{align-self:center;border:0}.part-actions button{font-size:10px;min-height:36px}.part-browser{grid-column:1/-1;max-height:270px}.search-label{font-size:11px}.search-box input{font-size:12px}#module-filter{font-size:11px}.part-row{font-size:12px;min-height:34px}.part-pagination{font-size:10px}.part-pagination button{min-height:30px}.scene-toolbar{position:relative;inset:auto;order:3;grid-column:1/-1;max-width:none;justify-content:center}.scene-toolbar .motion-button{min-height:34px;font-size:10px}.exhibit-caption{position:relative;inset:auto;grid-column:1/-1;order:5;padding:4px 0}.exhibit-copy h2{font-size:12px}.exhibit-copy p{font-size:9px}.exhibit-link{font-size:10px}.exhibit-en{font-size:7px}.stage-watermark{display:none}.directions{padding:18px 0;border-top:1px solid #29465a;margin:0 16px}.directions-head{flex-wrap:wrap;gap:8px}.directions-head h2{font-size:13px}.library-summary{font-size:9px}.direction-links{margin-left:auto}.directions-head a{font-size:9px}.domain-grid{grid-template-columns:repeat(3,1fr);gap:8px}.domain-card{display:block;padding:10px}.domain-top{margin-bottom:8px}.domain-card h3{font-size:10px}.domain-bottom{font-size:9px;margin-top:7px}.screen-footer{font-size:7px;line-height:1.5;padding-top:15px}.screen-footer span:last-child{display:none}}
/* Keep the vehicle as the primary reading surface on a desktop display. */
@media(min-width:1101px){.screen{min-height:700px}.hero-stage{top:11%;bottom:19%;left:13.5%;right:17%}.side-left{top:14.5%}.side .micro{margin-bottom:.8vw}.focus-button{padding:.51vw .65vw}.home-object-count{margin-top:.65vw}.view-switch{left:43%;top:18%}.scene-toolbar{bottom:4%}.selected-part{min-height:6.4vw}}
@media(max-width:700px){.focus-list .focus-button{width:auto;min-width:0;flex:1 1 22%;min-height:36px}.focus-copy{min-width:0}.scene-toolbar .motion-button{font-size:10px}}
@media(min-width:701px){body[data-render-mode="section"] .hero-stage{bottom:27%}}
@media(min-width:701px){body[data-camera-view="top"] .hero-stage{top:24%;bottom:24%}body[data-camera-view="top"][data-render-mode="section"] .hero-stage{bottom:30%}}

.selected-part .disassembly-note{display:block;margin-top:5px;color:#dcb987;font-size:10px;line-height:1.45}.selected-part .disassembly-note[hidden]{display:none}

.selected-model-link{display:block;grid-column:1/-1;border:1px solid #456274;padding:.6em .7em;margin:.5em 0;color:#c7e8f4;font-size:clamp(10px,.65vw,22px);line-height:1.6;text-decoration:none}.selected-model-link:hover{border-color:#d8bd82;color:#ffe4ac}.selected-model-link[hidden]{display:none}
