:root{color-scheme:dark;--bg:#07111c;--panel:#0d1a28;--panel2:#112334;--line:#26384b;--muted:#9eafbe;--text:#e9f3f6;--accent:#61dacd;--accent2:#d9f7ed;--radius:13px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}html,body{min-width:0;max-width:100%;margin:0}body{background:#060f18;color:var(--text)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}button,select,input{touch-action:manipulation} .site-shell{max-width:1920px;margin:auto;min-height:100vh}.masthead{display:flex;align-items:center;gap:17px;padding:22px 28px 18px;background:linear-gradient(130deg,#091522,#0a1725);border-bottom:1px solid #203244}.symbol{color:var(--accent);display:flex;flex-shrink:0}.heading{min-width:0}.eyebrow{letter-spacing:.16em;font-size:10px;font-weight:800;color:#80bbb9}.dot{display:inline-block;width:4px;height:4px;margin:0 7px 2px;background:var(--accent);border-radius:50%}h1,h2,h3,p{margin:0}.heading h1{font-size:clamp(23px,2.05vw,34px);letter-spacing:-.05em;line-height:1.25;font-weight:760}.heading h1 em{font-style:normal;color:var(--accent)}.heading p{font-size:12px;margin-top:5px;color:#a2b6c4}.masthead-right{margin-left:auto;display:flex;align-items:flex-end;flex-direction:column;gap:7px;white-space:nowrap}.spec-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #315c60;border-radius:6px;font-size:10px;font-weight:800;letter-spacing:.09em;color:#a6ece2;background:#102c35}.status-pulse,.tiny-live{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 9px #6bf9e8}.lab-code{font-size:10px;color:#95a8ba;letter-spacing:.13em}.lab-code b{color:#eaf5f9}.layout{display:grid;grid-template-columns:minmax(0,1fr) 333px;min-height:480px;height:clamp(480px,calc(100vh - 160px),800px);max-height:900px}.visual-stage{position:relative;min-width:0;min-height:450px;overflow:hidden;background:radial-gradient(ellipse 78% 65% at 52% 38%,#1d3c4c 0%,#0c202d 56%,#071422 100%)}.visual-stage::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 48px,#9ac9d006 49px,#9ac9d006 50px),repeating-linear-gradient(90deg,transparent 0,transparent 48px,#9ac9d008 49px,#9ac9d008 50px)}#viewport{position:absolute;inset:0;width:100%;height:100%;z-index:1;cursor:grab;outline-offset:-4px;touch-action:none}#viewport:active{cursor:grabbing}.stage-top,.stage-bottom{pointer-events:none;position:absolute;left:24px;right:24px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:10px}.stage-top{top:20px}.stage-bottom{bottom:23px;align-items:flex-end}.scene-kicker{font-size:10px;font-weight:800;letter-spacing:.14em;color:#9bb9c6;text-shadow:0 2px 8px #000}.corner-icon{color:var(--accent);font-size:15px;margin-right:4px}.divider-mini{color:#456274;padding:0 6px}.stage-toolbar{display:flex;gap:6px;pointer-events:auto}.stage-toolbar button{display:flex;align-items:center;gap:7px;border:1px solid #46647387;border-radius:7px;background:#0b1d2bdb;color:#d9e7ee;padding:9px 10px;font-size:11px;font-weight:650;backdrop-filter:blur(7px)}.stage-toolbar button:hover{background:#16404a}.stage-toolbar svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.view-presets{display:flex;align-items:center;gap:6px;pointer-events:auto}.view-presets button{font-size:10px;font-weight:700;color:#8da5b5;background:#0a1c2bde;border:1px solid #325264ba;border-radius:5px;padding:9px 8px}.view-presets button span{color:#c2d7df}.view-presets button.active{color:var(--accent);background:#174349;border-color:#48a7a7}.stage-hint{font-size:9px;letter-spacing:.10em;font-weight:800;color:#93acb7;text-shadow:0 2px 4px #000;white-space:nowrap}.hint-sep{padding:0 5px;color:#4b7581}.mouse-outline{display:inline-block;border:1px solid #92b9bd;border-radius:6px;width:11px;height:15px;vertical-align:middle;margin-right:4px}.stage-status{position:absolute;left:24px;top:62px;z-index:3;font-size:10px;color:#89c6c7;letter-spacing:.1em;font-weight:700;pointer-events:none}.stage-status:empty{display:none}.scale-chip{position:absolute;right:25px;bottom:80px;color:#7b9eaa;letter-spacing:.10em;font-size:9px;font-weight:650;z-index:3}.scale-line{width:38px;display:inline-block;border-top:1px solid #aacdd2;vertical-align:middle;margin-right:8px}.labels-layer{position:absolute;inset:0;pointer-events:none;z-index:2}.landmark{position:absolute;display:flex;align-items:center;gap:7px;color:#e1f3f5;text-shadow:0 1px 5px #001;white-space:nowrap;font-weight:750;font-size:10px;letter-spacing:.03em;opacity:.86;transform:translate(-5px,-50%)}.landmark::before{content:"";width:6px;height:6px;box-shadow:0 0 0 4px #36cabc33;background:#76ecde;border:1px solid #dafff7;border-radius:50%}.landmark span{background:#061724d9;border:1px solid #3f6c75;padding:5px 8px;border-radius:5px}.inspector{display:flex;flex-direction:column;background:#0a1825;border-left:1px solid #2b4050;min-height:0}.inspector-heading{display:flex;justify-content:space-between;align-items:center;padding:20px 22px 18px;border-bottom:1px solid #293d50}.inspector-heading h2{font-size:21px;line-height:1.3;letter-spacing:-.025em;margin-top:5px}.control-icon{color:#648c94;font-size:22px}.inspector-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#34556a transparent;scrollbar-width:thin}.control-section{padding:19px 21px;border-bottom:1px solid #263b4d}.section-title{display:flex;justify-content:space-between;align-items:center;color:#80a2b2;font-size:10px;letter-spacing:.09em;font-weight:700;margin-bottom:16px}.section-title span b{color:#dcecf1;font-size:12px;letter-spacing:0;margin-left:7px}.section-title>span:last-child{font-size:9px}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:18px}.mode{background:#102333;border:1px solid #2c4759;border-radius:6px;color:#b5c8d1;padding:11px 1px;font-size:11px;font-weight:750}.mode.active,.mode:hover{background:#1b464d;color:#b7fff0;border-color:#49a9a6}.slider-caption{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:650;color:#c1d2dc;margin:0 0 8px}.slider-caption output,.input-block output{font-size:10px;font-weight:850;color:var(--accent);font-variant-numeric:tabular-nums}input[type=range]{width:100%;height:18px;margin:0 0 14px;accent-color:#6cddd1;cursor:pointer}.switch-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#bad0d7;margin-top:9px}.switch-row input{width:17px;height:17px;accent-color:#6cddd1}.part-card{display:flex;align-items:center;gap:12px;background:#112635;border:1px solid #285060;border-radius:8px;padding:12px;margin-top:2px}.part-glyph{color:var(--accent);font-size:28px}.part-name{font-size:12px;font-weight:780;line-height:1.3}.part-sub{font-size:10px;color:#98b4c0;margin-top:5px}.part-description{font-size:11px;line-height:1.6;color:#95adbb;margin-top:12px}.text-action,.plain-link{border:0;background:none;color:#8fe9df;font-size:11px;padding:10px 0 0;font-weight:750}.assembly-progress{height:6px;background:#203b49;border-radius:9px;overflow:hidden}.assembly-progress div{height:100%;width:0;background:linear-gradient(90deg,#2f9da3,#91f2df);transition:width .35s}.small-muted{color:#9eb2bf;line-height:1.55;font-size:10px}.control-section>.small-muted{margin-top:12px}.assembly-progress+.small-muted{margin:10px 0}.dual-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.dual-actions button,.quiz-check{background:#132a3b;border:1px solid #3a5666;border-radius:6px;color:#cce1e9;padding:10px 9px;font-weight:750;font-size:11px}.dual-actions button.filled,.quiz-check{background:#276f6c;border-color:#3eaaa1;color:#f0fffe}.input-block{margin-bottom:12px}.input-block label{display:flex;justify-content:space-between;font-size:10px;color:#cbdde3;font-weight:670;margin-bottom:5px}.input-block input{margin-bottom:1px}.readout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.readout-grid>div{border:1px solid #2b4b5c;background:#102735;border-radius:6px;padding:11px 10px}.readout-grid small{display:block;font-size:8px;letter-spacing:.10em;color:#8bacbc;font-weight:700}.readout-grid strong{display:block;font-size:19px;margin-top:5px;letter-spacing:-.04em;color:#effbf8;white-space:nowrap;font-variant-numeric:tabular-nums}.cross-check{display:flex;gap:10px;background:#14302e;border:1px solid #285b58;border-radius:7px;padding:10px;margin-top:11px}.check-mark{font-size:15px;color:#73e8c9}.cross-check b{font-size:11px;color:#a4ecdc}.cross-check p{font-size:10px;color:#c0dbdb;margin-top:5px;line-height:1.4}.light-tag{color:#7df4df!important}.system-list{display:grid;gap:9px}.system-list label{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#c0d0da;font-size:11px;cursor:pointer}.system-list label small{color:#7b9aaa;font-size:9px}.system-list input{width:15px;height:15px;accent-color:#68d8cb}.lighting-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.light-btn{font-size:10px;color:#b8d0d5;background:#102637;border:1px solid #325064;border-radius:5px;padding:10px 2px}.light-btn.active{color:#b8ffee;border-color:#62bab1;background:#184a49}.science{border:1px solid #2b5260;border-radius:8px;background:#102936;overflow:hidden}.science summary{list-style:none;padding:13px 12px;cursor:pointer;font-size:12px;font-weight:750;display:flex;justify-content:space-between}.science summary::-webkit-details-marker{display:none}.science summary span{color:var(--accent)}.science-text{padding:0 12px 10px;color:#a7bec8;line-height:1.6;font-size:11px}.science-text p{margin-bottom:10px}.quiz-area select{background:#102a39;border:1px solid #335568;color:#d0e4e8;border-radius:6px;padding:10px;width:100%;margin:9px 0;font-size:11px}.quiz-check{width:100%}#quizResult{min-height:12px;font-size:11px;line-height:1.45;margin-top:8px;color:#b7e8d9}.inspector-footer{padding:14px 20px;display:flex;align-items:center;gap:8px;color:#7298aa;font-size:9px;letter-spacing:.09em;font-weight:780;border-top:1px solid #263b4d}.inspector-footer #partsVisible{margin-left:auto;color:#aac6cf}.page-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 28px;color:#748d9e;font-size:9px;letter-spacing:.06em}.footer-sep{padding:0 8px}.is-embed body{height:100vh;height:100dvh;overflow:hidden}.is-embed .site-shell{height:100vh;height:100dvh;min-height:0}.is-embed .masthead,.is-embed .page-footer{display:none}.is-embed .layout{height:100%;min-height:0;max-height:none}
@media(max-width:1050px){.layout{grid-template-columns:minmax(0,1fr) 300px}.stage-hint{display:none}.stage-bottom{left:14px;right:14px}.stage-top{left:14px;right:14px}.mode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.control-section{padding:16px}.inspector-heading{padding:16px}.heading p{display:none}}
@media(max-width:720px){.masthead{padding:13px 14px 11px;gap:9px}.symbol svg{width:30px;height:30px}.heading h1{font-size:18px}.eyebrow{font-size:8px;letter-spacing:.1em}.masthead-right{display:none}.layout{display:flex;flex-direction:column;min-height:0;height:auto;max-height:none}.visual-stage{height:53dvh;min-height:340px;flex-shrink:0}.inspector{min-height:0;max-height:none;border-top:1px solid #314557;border-left:0}.inspector-heading{padding:13px 15px}.inspector-heading h2{font-size:17px;margin-top:2px}.inspector-scroll{overflow:visible}.inspector-footer{display:none}.stage-toolbar button span{display:none}.stage-toolbar button{width:37px;height:37px;justify-content:center}.stage-top{top:11px}.scene-kicker{font-size:8px;max-width:210px;line-height:1.6}.stage-bottom{bottom:11px}.view-presets{width:100%;gap:3px}.view-presets button{flex:1;padding:8px 2px;font-size:9px}.view-presets button span{font-size:9px}.scale-chip{right:13px;bottom:56px;font-size:8px}.landmark{font-size:8px}.landmark span{padding:3px 5px}.stage-status{left:14px;top:59px}.page-footer{padding:12px 15px;flex-wrap:wrap;font-size:8px}.control-section{padding:16px 17px}.mode-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.mode{font-size:10px;padding:10px 1px}}
@media(max-width:420px){.heading h1{font-size:16px}.scene-kicker{font-size:7px;max-width:180px}.view-presets button span{font-size:8px}.mode{font-size:9px}.visual-stage{min-height:330px}}
@media(max-height:650px) and (min-width:721px){.masthead{padding:9px 20px}.layout{height:calc(100vh - 116px);min-height:400px}.page-footer{padding:8px 20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

@media(max-width:720px){.is-embed .layout{height:100vh;height:100dvh;display:flex;flex-direction:column;min-height:0}.is-embed .visual-stage{height:54%;min-height:0;flex:0 0 54%}.is-embed .inspector{height:46%;flex:1 1 46%;min-height:0;overflow:hidden}.is-embed .inspector-scroll{overflow-y:auto;overscroll-behavior:contain}.is-embed .inspector-heading{flex-shrink:0}}

body.embed-mode{height:100vh;height:100dvh;overflow:hidden}
