:root{color-scheme:dark;--bg:#08131d;--panel:#101d27;--panel2:#14242e;--stroke:#263945;--stroke2:#354957;--ink:#e8ebe6;--muted:#91a1aa;--accent:#77d4c9;--accent-hi:#c2ece5;--gold:#d3b484;--radius:11px;font:14px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;min-height:100%;background:var(--bg);color:var(--ink)}body{overflow-x:hidden}button,input{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.35;cursor:not-allowed}button,[type=range]{touch-action:manipulation}button{transition:color .24s ease,background .24s ease,border-color .24s ease,transform .2s ease}button:hover:not(:disabled){border-color:#70978c;color:#ecfff8}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.muted{color:#566773}.slash{color:#556d72;padding:0 7px}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;z-index:500;background:var(--accent);color:#10171b;padding:8px}.topbar{height:59px;border-bottom:1px solid #273944;background:#0b1722;display:flex;align-items:center;justify-content:space-between;padding:0 30px;gap:12px}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap}.mark{width:33px;height:33px;border:1px solid #7aada8;color:#c3e9e4;border-radius:5px;display:grid;place-items:center;position:relative;font-weight:900;font-size:20px}.mark-trace{position:absolute;width:16px;bottom:4px;right:-4px;border-bottom:2px solid var(--accent)}.brand-title{font-size:13px;font-weight:780;letter-spacing:1.9px}.brand-title>span{font-weight:380;color:#9da9af}.brand-divider{height:17px;width:1px;background:#364651;margin:0 8px}.brand-caption{font-size:10px;color:#abb9bb;letter-spacing:1.6px}.museum-label{font-size:10px;letter-spacing:1.25px;color:#7f969a;white-space:nowrap}.museum-label i{display:inline-block;width:6px;height:6px;border:1px solid var(--accent);border-radius:50%;margin:0 8px 1px}main{display:grid;grid-template-columns:minmax(0,1fr) 355px;min-height:calc(100dvh - 59px);height:calc(100dvh - 59px)}.exhibit-area{padding:21px 25px 12px 29px;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 45% 45%,#122630 0%,#0c1a23 50%,#08141e 100%)}.eyebrow,.section-kicker{font-size:10px;font-weight:680;letter-spacing:1.65px;color:var(--accent);line-height:1.55}.hero-caption{padding-bottom:16px}.hero-caption h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(24px,2.47vw,38px);letter-spacing:-.6px;line-height:1.22;margin:7px 0 7px;color:#f5eee0}.hero-caption p{margin:0;color:#9faeb0;font-size:12.5px;max-width:840px}.live-dot{display:inline-block;height:6px;width:6px;border-radius:50%;background:var(--accent);margin-right:6px;box-shadow:0 0 15px #48dcb882}.stage-frame{display:flex;flex-direction:column;flex:1;min-height:220px;border:1px solid #3b5360;border-radius:12px;position:relative;background:#0e1d29;box-shadow:0 14px 40px #0005,0 0 0 3px #ffffff04;overflow:hidden}.scene-toolbar{height:44px;padding:0 10px 0 18px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#101f2bda;border-bottom:1px solid #36505c;z-index:2;flex:none}.view-caption{display:flex;gap:10px;align-items:center;font-size:9px;color:#aec3c3;letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap}.view-line{display:block;width:20px;height:1px;background:var(--accent)}.scene-actions{display:flex;align-items:center;gap:5px}.small-button,.icon-button{background:#122630;border:1px solid #324957;color:#c2d5d4;border-radius:5px;height:28px}.small-button{padding:0 10px;font-size:10px;letter-spacing:.3px}.icon-button{width:29px;display:grid;place-items:center;padding:0}.stage-wrap{position:relative;flex:1;min-height:0;touch-action:none;overflow:hidden;background:#091825}canvas#stage{width:100%;height:100%;display:block;touch-action:none;cursor:grab}canvas#stage:active{cursor:grabbing}.stage-watermark{position:absolute;right:17px;bottom:12px;pointer-events:none;color:#d2e0db96;font-size:8.7px;letter-spacing:1.1px}.stage-watermark span{color:var(--accent)}.labels{position:absolute;inset:0;pointer-events:none}.label-tag{position:absolute;transform:translate(10px,-50%);color:#e2f7f1;background:#071a23cc;border:1px solid #6f9a9a88;padding:4px 7px;border-radius:3px;white-space:nowrap;backdrop-filter:blur(5px);font-size:10px;letter-spacing:.25px;box-shadow:0 3px 11px #0004}.label-tag .point{position:absolute;height:6px;width:6px;left:-13px;top:calc(50% - 3px);background:var(--accent);border:1px solid #eafffb;border-radius:50%}.label-tag:before{content:"";position:absolute;left:-11px;top:50%;width:10px;border-top:1px solid #77d4c9}.scale{position:absolute;left:17px;bottom:11px;display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:1px;color:#d1dfd4a6;pointer-events:none}.scale strong{color:#e6d8b8;font-size:10px}.scale-bar{width:40px;height:7px;border:1px solid #e3e8dca0;border-top:0;display:inline-block}.operation-banner{position:absolute;left:17px;top:12px;color:#d2e4df;background:#15383f9c;padding:7px 9px;border:1px solid #44837a80;letter-spacing:1px;font-size:9px}.blip{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:6px;animation:pulse 1.6s infinite}@keyframes pulse{50%{opacity:.25}}.camera-dock{height:39px;background:#0d1b25;display:flex;align-items:center;gap:11px;padding:0 14px;border-top:1px solid #2b4755;flex:none}.dock-label{font-size:9px;color:#768f99;letter-spacing:1.35px}.camera-preset{display:flex;gap:3px}.camera-preset button{font-size:10px;background:transparent;border:1px solid transparent;border-radius:3px;color:#abbfc2;padding:4px 8px}.camera-preset button:hover,.camera-preset button.active{border-color:#375c61;background:#17343b;color:#e6f7ef}.mouse-tip{margin-left:auto;color:#728b8f;letter-spacing:1px;font-size:9px;white-space:nowrap}.mouse-tip span{color:var(--accent)}.mode-panel{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:13px 0 0;gap:8px}.mode-panel button{display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #324b55;background:#10232d;padding:9px 7px;border-radius:6px;font-size:11px;color:#9eb1b6}.mode-panel button.active{border-color:#5fa89e;background:#1b393d;color:#e6fbf2;box-shadow:inset 0 0 20px #78ecd006}.mode-icon{font-size:17px;line-height:1;color:var(--accent)}.footnote{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#81949b;font-size:10px;padding:3px 1px 0;letter-spacing:.3px}.sidebar{border-left:1px solid #2c414c;background:#111f29;display:flex;flex-direction:column;min-height:0;position:relative;z-index:10}.aside-heading{padding:24px 21px 17px;border-bottom:1px solid #2c3e49;flex:none}.aside-heading h2{font-family:Georgia,serif;font-weight:500;font-size:25px;margin:3px 0 2px;color:#e7e9dc}.micro{font-size:10px;color:#819ba3}.drawer-close{display:none}.tabs{height:45px;display:flex;align-items:stretch;padding:0 15px;gap:7px;border-bottom:1px solid #2c414b;flex:none}.tabs button{background:transparent;border:0;border-bottom:2px solid transparent;color:#9aadb0;font-size:10.5px;padding:0 4px;min-width:0;flex:1}.tabs button.active{color:#baf1e5;border-bottom-color:var(--accent)}.aside-scroll{padding:21px 18px 17px;overflow-y:auto;min-height:0;scrollbar-color:#42606a #152832;scrollbar-width:thin;flex:1}.panel-description,.aside-scroll p{font-size:12px;color:#afc0c0;line-height:1.7}.panel-description{margin:6px 0 16px}.assemblies{display:flex;flex-direction:column;gap:3px}.assembly-row{background:transparent;border:1px solid transparent;border-bottom:1px solid #263944;display:grid;grid-template-columns:29px 1fr 15px;gap:10px;text-align:left;align-items:center;padding:9px 8px 9px 4px;color:#b9c6c4}.assembly-row.active{background:#1a343b;border-color:#46736e;border-radius:5px}.assembly-index{font-family:Georgia,serif;font-size:18px;color:#638d8f}.assembly-row.active .assembly-index{color:var(--accent)}.assembly-row span:nth-child(2){font-size:12px}.assembly-row small{display:block;color:#83959a;font-size:10px;margin-top:1px}.assembly-arrow{font-size:18px;color:#739b9c}.selected-card{background:#0a1a25;border:1px solid #2b4650;border-radius:7px;padding:14px;margin-top:15px}.selected-card h3{margin:5px 0 1px;font-size:14px;font-weight:580;color:#e5e9dc}.selected-card p{margin:0;font-size:11px}.bottom-controls{padding:14px 17px 16px;border-top:1px solid #344a55;background:#0c1b26;flex:none}.sliders{margin-top:7px}.sliders label,.controls label{display:block;font-size:11px;color:#d1ded8}.sliders output,.controls output{float:right;color:var(--accent);font-variant-numeric:tabular-nums;font-weight:630}.sliders input,.controls input[type=range]{width:100%;height:4px;appearance:none;background:#304d57;border-radius:8px;accent-color:var(--accent);margin:12px 0 7px;cursor:pointer}.sliders input::-webkit-slider-thumb,.controls input[type=range]::-webkit-slider-thumb{appearance:none;border:2px solid #c8f1e9;width:13px;height:13px;border-radius:50%;background:#2e7772;box-shadow:0 0 0 4px #51c2b625}.assembly-control{border-top:1px solid #2a414d;margin-top:9px;padding-top:10px}.assembly-meta{display:flex;justify-content:space-between;color:#8ea5aa;font-size:9px;letter-spacing:1px}.assembly-meta strong{color:#e8ded0;font-weight:500}.assembly-control p{margin:5px 0 10px;font-size:11px;color:#96a9ad;max-height:28px;overflow:hidden}.buttons-row{display:flex;gap:7px}.buttons-row button{flex:1;min-width:0;padding:7px 6px;border-radius:5px;font-size:11px}.small-outline,.ghost{background:#122731;border:1px solid #3b5863}.small-solid{background:#2e6a68;border:1px solid #5e9d98;color:#f0f9f3}.buttons-row.extra{margin-top:9px}.buttons-row.extra .ghost{font-size:10px}.section-kicker.top-gap{margin-top:23px}.controls label{margin-top:15px}.reading-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.reading-grid>div{border:1px solid #35515b;background:#112b35;border-radius:6px;padding:10px 10px 9px}.reading-grid small{display:block;font-size:9px;letter-spacing:.8px;color:#9baeb3}.reading-grid strong{font-family:Georgia,serif;font-weight:400;color:#e6ebe0;font-size:19px;white-space:nowrap}.check{border:1px solid #35625d;background:#10262a;margin-top:15px;padding:13px;border-radius:7px}.check p{margin:6px 0 2px}.check p b{float:right;color:#e9eee3}.check p span{display:block}.check-match{color:#96e6cf;font-size:11px;letter-spacing:.3px;margin-top:7px}.ghost{padding:8px 11px;border-radius:5px;font-size:11px;margin-top:8px}.ghost.full{width:100%;margin-top:16px}.history-header{font:normal 20px Georgia,serif;color:#eae8da;margin:13px 0 4px}.timeline{border-left:1px solid #547b73;padding-left:14px;margin:22px 0}.timeline>div{position:relative;padding-bottom:7px}.timeline>div:before{content:"";height:7px;width:7px;border:2px solid #65a99f;position:absolute;left:-19px;top:4px;border-radius:50%;background:#14242e}.timeline span{color:#c5d3b8;font-size:11px;letter-spacing:.2px}.timeline p{margin:2px 0 9px}.notice{border-left:2px solid #6bafa2;padding:11px 12px;background:#193039;color:#bdcfc9;font-size:11px;line-height:1.55;margin-top:17px}.equation{background:#091b27;border:1px solid #3c5c62;border-radius:7px;padding:13px;margin-top:14px}.equation strong{font-size:12px}.equation code{display:block;white-space:pre-wrap;word-break:break-word;margin:9px 0;color:#9fe1d6;font-size:12px}.equation p{margin:0!important;font-size:11px!important}.quiz-question{padding:11px 0 15px;border:0;border-bottom:1px solid #334c56;margin:0 0 11px;min-width:0}.quiz-question legend{font-size:12px;font-weight:620;color:#ecede5;margin-bottom:8px}.quiz-question label{display:flex;align-items:flex-start;gap:8px;padding:7px 4px;font-size:11.5px;color:#bac7c5;cursor:pointer}.quiz-question input{margin-top:3px;accent-color:#77d4c9}.quiz-question label:has(input:checked){color:#a4eedc;background:#214044}.quiz-question .explanation{margin:7px 0;color:#99dccc}.quiz-result{background:#1c3c3a;color:#d1eee4;padding:13px;margin:10px 0 30px;font-size:12px;border-radius:6px}.science-modal{border:1px solid #537369;border-radius:12px;background:#10222c;color:#d8e5df;max-width:min(660px,calc(100% - 28px));max-height:85dvh;overflow:auto;padding:26px;box-shadow:0 15px 120px #000a}.science-modal::backdrop{background:#02080ed9;backdrop-filter:blur(4px)}.science-modal h2{font:normal 28px Georgia,serif;margin:5px 0 9px}.science-modal h3{font:normal 18px Georgia,serif;margin:20px 0 5px}.science-modal p{font-size:12px;line-height:1.8;color:#bfcac7}.modal-head{display:flex;justify-content:space-between;gap:15px}.modal-head button{width:33px;height:33px;background:#19343d;border:1px solid #47626a;border-radius:6px;font-size:24px}.error{position:absolute;background:#381d21;border:1px solid #965f5e;color:#ffe0d6;top:40%;left:10%;right:10%;padding:15px;border-radius:8px;z-index:10}.mobile-modes,.controls-toggle{display:none}
body.embed-mode{height:100vh;height:100dvh;overflow:hidden}body.embed-mode .topbar{display:none}body.embed-mode main{height:100dvh;min-height:100dvh}body.embed-mode .hero-caption{display:none}body.embed-mode .exhibit-area{padding:8px}body.embed-mode .mode-panel{padding-top:7px}body.embed-mode .footnote{min-height:21px}
@media(max-width:1160px){main{grid-template-columns:minmax(0,1fr) 328px}.exhibit-area{padding:18px 17px 10px}.hero-caption h1{font-size:26px}.mouse-tip{display:none}.aside-heading{padding:21px 15px 15px}.sidebar .aside-scroll{padding:18px 14px}.brand-caption{font-size:9px}}
@media(max-width:820px){.museum-label{display:none}.topbar{height:53px;padding:0 16px}main{display:flex;flex-direction:column;height:calc(100dvh - 53px);min-height:0}.exhibit-area{flex:1;padding:14px 12px 90px;min-height:0}.hero-caption{padding-bottom:11px}.hero-caption h1{font-size:clamp(23px,5.2vw,31px);max-width:600px}.hero-caption p{font-size:11px}.stage-frame{min-height:150px}.mode-panel{display:none}.footnote{font-size:9px;min-height:27px}.sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;height:min(82dvh,720px);z-index:45;transform:translateY(110%);transition:transform .32s ease;border:1px solid #49616b;border-radius:14px 14px 0 0;box-shadow:0 -20px 90px #000d}.controls-open .sidebar{transform:translateY(0)}.aside-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 16px 10px}.drawer-close{display:block;border:1px solid #42636a;border-radius:6px;background:#19313a;color:#d6e7e3;font-size:20px;padding:0 10px}.mobile-modes{height:57px;padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0;z-index:25;display:grid;grid-template-columns:repeat(5,1fr);background:#0a1925f5;border-top:1px solid #31515a}.mobile-modes button{border:0;border-top:2px solid transparent;background:transparent;color:#a4b5b8;font-size:10px}.mobile-modes button.active{border-top-color:var(--accent);color:#d7f9ed;background:#18353a}.controls-toggle{display:flex;align-items:center;gap:10px;position:fixed;z-index:30;right:18px;bottom:calc(67px + env(safe-area-inset-bottom));background:#1b4548;color:#f4f4e7;border:1px solid #6ea9a0;box-shadow:0 8px 20px #0008;border-radius:30px;padding:10px 16px;font-size:12px}.controls-toggle span{font-size:15px}body.embed-mode .exhibit-area{padding-bottom:65px}body.embed-mode .stage-frame{flex:1}.camera-dock{padding:0 9px}.dock-label{display:none}}
@media(max-width:470px){.brand-caption{max-width:105px;overflow:hidden;text-overflow:ellipsis}.brand-divider{margin:0 2px}.brand{gap:7px}.hero-caption h1{font-size:23px}.view-caption{font-size:8px;letter-spacing:.5px}.view-line{width:8px}.scene-toolbar{padding:0 7px;gap:5px}.small-button{font-size:9px;padding:0 6px}.scene-actions{gap:2px}.icon-button{height:27px;width:27px}.camera-preset{gap:0}.camera-preset button{font-size:10px;padding:5px 9px}.stage-watermark{right:8px;bottom:26px;font-size:7px}.scale{font-size:8px;left:8px;bottom:10px}.scale-bar{width:22px}.label-tag{font-size:9px;padding:3px 5px}.hero-caption p{font-size:10.5px}.stage-frame{border-radius:8px}.exhibit-area{padding:14px 9px 90px}.footnote{flex-wrap:wrap;gap:2px}.sidebar{height:85dvh}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
/* Exhibit legibility pass: minimum 12px for visible interface copy. */
.eyebrow,.section-kicker,.brand-caption,.museum-label,.view-caption,.small-button,.dock-label,.camera-preset button,.mouse-tip,.mode-panel button,.footnote,.micro,.tabs button,.assembly-row small,.assembly-row span:nth-child(2),.selected-card p,.controls label,.sliders label,.assembly-meta,.assembly-control p,.buttons-row button,.reading-grid small,.check-match,.timeline span,.notice,.ghost,.quiz-question label,.stage-watermark,.scale,.operation-banner{font-size:12px}
.view-caption{min-width:0;max-width:calc(100% - 168px);overflow:hidden;text-overflow:ellipsis}
#rendererType{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:470px){.view-caption{max-width:calc(100% - 172px)}.stage-watermark{display:none}.brand-caption{font-size:12px}.footnote{font-size:12px}.mode-panel button{font-size:12px}}

.label-tag,.mobile-modes button,.scale strong{font-size:12px!important}
.small-button{white-space:nowrap;min-width:44px}
