@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{color:#e2ded4;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#10100f;font-family:IBM Plex Mono,monospace}*{box-sizing:border-box}body{margin:0}button,a,input,select{touch-action:manipulation}button,a{color:inherit}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline-offset:4px;outline:2px solid #ffbd62}button:disabled{opacity:.3;cursor:default}main{height:100svh;min-height:650px;position:relative;overflow:hidden}header{z-index:3;justify-content:space-between;align-items:center;gap:24px;display:flex;position:absolute;top:28px;left:32px;right:32px}header a{letter-spacing:1px;color:#bab6ac;font-size:12px;text-decoration:none}h1{letter-spacing:5px;margin:0;font-size:15px;font-weight:400}h1 span{letter-spacing:3px;color:#aaa89f;font-size:12px}header p{letter-spacing:2px;font-size:12px}i{background:#bcb280;border-radius:50%;width:5px;height:5px;margin-right:9px;display:inline-block}.intro{pointer-events:none;z-index:2;max-width:330px;position:absolute;top:28%;left:5%}.eyebrow{color:#bea16e;letter-spacing:1.6px;font-size:12px}h2{letter-spacing:-1.5px;margin:23px 0;font-family:Barlow Condensed,sans-serif;font-size:clamp(52px,5.8vw,90px);font-weight:500;line-height:.94}h2 em{color:#edbc70;font-style:normal}.intro p{color:#b6b3a9;font:14px/1.9 IBM Plex Mono}.modes{z-index:4;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#171715eb;border:1px solid #5a5549;border-radius:7px;padding:6px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 8px 35px #0008}.modes button{color:#b8b6ac;text-transform:uppercase;letter-spacing:1.2px;background:0 0;border:0;min-width:98px;padding:12px 14px;font-family:Barlow Condensed;font-size:18px}.modes small{color:#908d80;margin-right:9px;font:12px IBM Plex Mono}.modes button.active{color:#ffd28a;background:#3b3020;border-radius:3px}.modes button.active small{color:#c7a266}.scene{touch-action:none;position:absolute;inset:0}.vignette{pointer-events:none;z-index:1;background:linear-gradient(#090a09aa,#0000 20% 76%,#080909c9),linear-gradient(90deg,#0d0e0c80,#0000 35% 82%,#08090945);position:absolute;inset:0}.tour-start{pointer-events:auto;color:#d5b680;letter-spacing:.8px;background:0 0;border:0;border-top:1px solid #615744;align-items:center;gap:10px;margin-top:30px;padding:19px 0;font-size:12px;display:flex}.tour-start span{color:#9a9488;margin-left:12px;font-size:12px}.top-tools{z-index:4;flex-direction:column;align-items:flex-end;gap:14px;display:flex;position:absolute;top:96px;right:32px}.top-tools button{color:#c6bda9;letter-spacing:1px;background:0 0;border:0;align-items:center;gap:10px;padding:10px 0;font-size:12px;display:flex}.inspect{position:relative}.inspect select{color:#c1bbaa;appearance:none;background:#151611b8;border:1px solid #49483e;border-radius:3px;max-width:230px;padding:11px 32px 11px 13px;font:12px IBM Plex Mono}.inspect svg{pointer-events:none;position:absolute;top:13px;right:10px}.exhibit-details{z-index:2;text-align:right;color:#9e9a8e;position:absolute;bottom:143px;right:36px}.exhibit-details>span,.exhibit-details p{letter-spacing:2px;font-size:12px}.exhibit-details small{font-size:12px}.fine-line{background:#756b51;width:42px;height:1px;margin:14px 0 14px auto}.orbit-hint{color:#a5a194;z-index:3;align-items:center;gap:9px;font-size:12px;display:flex;position:absolute;bottom:107px;left:34px}.switches{z-index:4;gap:8px;display:flex;position:absolute;bottom:27px;left:27px}.switches button{color:#9e9b8e;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-width:45px;min-height:48px;display:flex}.switches button.on{color:#dbb981}.switches span{letter-spacing:1px;font-family:Barlow Condensed;font-size:12px}.utilities{z-index:4;align-items:center;gap:6px;display:flex;position:absolute;bottom:34px;right:25px}.utilities button,.card-top button,.tour-bar button,.drawer-top button,.notice button{color:inherit;background:0 0;border:0;place-items:center;min-width:36px;min-height:36px;display:grid}.speed{color:#bbb3a0;align-items:center;gap:9px;margin-right:12px;font-size:12px;display:flex}.speed input{width:65px}input[type=range]{accent-color:#d8ac67;height:20px}button:hover{color:#ffe0a5}.part-card{z-index:6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#171916ed;border:1px solid #514d40;border-radius:3px;width:304px;padding:20px;position:absolute;top:220px;right:32px;box-shadow:0 20px 80px #0006}.card-top{color:#d5b47c;letter-spacing:1px;justify-content:space-between;align-items:center;font-size:12px;display:flex}.part-card h3{margin:10px 0;font:500 34px Barlow Condensed}.part-card p{color:#c0beb4;font:14px/1.8 IBM Plex Mono}.signal-note{color:#b6aa90;border-left:2px solid #bd965b;padding:4px 0 4px 13px;font-size:12px;line-height:1.8}.signal-note i{display:none}.text-button{color:#d6b17a;background:0 0;border:0;align-items:center;gap:16px;padding:20px 0 0;font-size:12px;display:flex}.labels{pointer-events:none;z-index:3;position:absolute;inset:0}.labels button{pointer-events:auto;white-space:nowrap;color:#dfd9c8;will-change:transform;background:0 0;border:0;align-items:center;min-height:28px;padding:0;display:flex;position:absolute;top:0;left:0}.labels button b{background:#e6dac1;border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #b9a27b}.labels button b:after{content:"";background:#aa9c83;width:28px;height:1px;position:absolute;top:50%;left:6px}.labels button span{background:#10140ee8;border:1px solid #655a44;margin-left:32px;padding:6px 9px;font:12px IBM Plex Mono}.labels button.selected span{color:#ffcc82;border-color:#e4b875}.signal-select{z-index:4;color:#bfa777;align-items:center;gap:10px;font-size:12px;display:flex;position:absolute;bottom:153px;left:34px}.signal-select select{color:#dfd7c3;background:#181b17;border:1px solid #514c3f;border-radius:2px;padding:9px;font:13px IBM Plex Mono}.tour-bar{z-index:7;white-space:nowrap;background:#1c1d17f2;border:1px solid #62573f;align-items:center;gap:5px;padding:3px 8px 3px 16px;display:flex;position:absolute;bottom:109px;left:50%;transform:translate(-50%)}.tour-bar>span{color:#d2b983;margin-right:12px;font-size:12px}.loading{z-index:10;color:#bbcea4;text-align:center;background:#0d1110;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.loading>span{letter-spacing:5px;font-size:12px}.loading strong{letter-spacing:3px;margin:35px 0 5px;font-size:20px;font-weight:400}.loading p{color:#899982;font-size:12px}.loading button{color:#bec6ac;background:0 0;border:1px solid #475640;margin-top:28px;padding:12px;font-size:12px}.blink{animation:1s steps(2,end) infinite blink}@keyframes blink{50%{opacity:0}}.fallback{object-fit:cover;width:100%;height:100%}.fallback-note{z-index:4;background:#10110ee8;border:1px solid #6a5a3a;max-width:320px;padding:12px;font-size:12px;line-height:1.7;position:absolute;bottom:190px;left:32px}.scrim{z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0008;position:absolute;inset:0}.drawer{overscroll-behavior:contain;color:#d3d5c9;background:#1c1f1b;border-left:1px solid #555b46;width:min(480px,100%);padding:25px 34px 50px;position:absolute;top:0;bottom:0;right:0;overflow:auto}.drawer-top{letter-spacing:1px;justify-content:space-between;align-items:center;margin-bottom:50px;font-size:12px;display:flex}.drawer h2{margin:25px 0;font-size:65px}.drawer p,.drawer dd{font-size:16px;line-height:1.8}.drawer dt{color:#e5c993;margin-top:25px;font:500 25px Barlow Condensed}.drawer dd{margin:8px 0 20px}.drawer.paper{color:#292b26;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#dbd3bc;border-color:#b3a98b}.stamp{float:right;color:#9c4334;border:2px solid #9c4334;padding:9px;font-size:12px;line-height:1.6;transform:rotate(-8deg)}.manual-deck{border-bottom:1px solid #a29a83;padding-bottom:26px}.diagram{text-align:center;border:1px solid #91866e;padding:20px 30px}.diagram div{border:1px solid #4f5548;padding:10px;font-size:14px}.diagram b{color:#9c4334;margin:8px;font-size:12px;font-weight:400;display:block}.diagram small{margin-top:16px;font-size:12px;display:block}.drawer .manual-note{color:#56574a;font-size:13px;line-height:1.8}.manual-part{border-top:1px solid #a69d84;padding:24px 0}.manual-part>span{color:#995342;letter-spacing:1px;font-size:12px}.manual-part h3{margin:12px 0;font:600 30px Barlow Condensed}.manual-part .repair{border-left:2px solid #9d5140;padding-left:14px;font-size:14px}.repair b{color:#934331;font-size:12px}.manual-part button{color:#8d3b2d;background:0 0;border:0;align-items:center;gap:12px;padding:10px 0;font-size:12px;display:flex}.end-note{border-top:2px solid #8c876f;padding-top:20px;font-size:12px;line-height:2}.setting{border-top:1px solid #525744;justify-content:space-between;align-items:center;gap:15px;padding:20px 0;font-size:14px;display:flex}.setting select{color:#e1e5d7;background:#292f25;border:1px solid #626c53;padding:8px;font:14px IBM Plex Mono}.setting input[type=checkbox]{accent-color:#c4a36a;width:20px;height:20px}.setting input[type=range]{width:130px}.notice{z-index:30;background:#302e23;align-items:center;max-width:90%;padding:16px;font-size:14px;display:flex;position:absolute;top:90px;left:50%;transform:translate(-50%)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.play-area{z-index:5;width:min(860px,75vw,160svh - 416px);position:absolute;top:100px;left:50%;transform:translate(-50%)}.playing .scene{filter:blur(5px);opacity:.35}.playing .top-tools{display:none}.game-heading{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.game-heading h2{letter-spacing:3px;margin:8px 0;font-size:33px}.game-heading h2 span{letter-spacing:2px;color:#b2a98e;margin-left:20px;font:12px IBM Plex Mono}.game-heading .eyebrow{font-size:12px}.coin-button{color:#ffcd80;letter-spacing:1px;background:#392e1d;border:1px solid #bd9558;padding:13px 17px;font-size:12px}.coin-button span{margin-left:12px}.game-frame{border:12px solid #272a26;border-radius:32px;position:relative;overflow:hidden;box-shadow:0 0 0 2px #49483a,0 15px 70px #000,0 0 40px #6d978814}.game-canvas{aspect-ratio:1.6;touch-action:none;outline-offset:-4px;background:#080d12;width:100%}.game-canvas canvas{width:100%;height:100%;display:block}.game-instructions{color:#b5b7a8;justify-content:space-between;gap:10px;margin-top:14px;font-size:12px;line-height:1.8;display:flex}.game-instructions>span:last-child{text-align:right;max-width:300px}kbd{color:#e4d5b4;font-family:inherit}.game-status{text-align:center;color:#bea77a;letter-spacing:1px;font-size:12px}.touch-controls{justify-content:space-between;align-items:center;margin-top:14px;display:none}.touch-controls button{color:#e0c389;touch-action:none;-webkit-user-select:none;user-select:none;background:#272a22;border:1px solid #79745a;border-radius:6px;place-items:center;width:52px;height:44px;display:grid}.touch-controls>button{border-color:#b17c4a;border-radius:50%;width:82px;height:64px}.dpad{align-items:center;gap:4px;display:flex}.dpad>div{flex-direction:column;gap:4px;display:flex}.power-off{color:#a2987c;background:#080b08;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:absolute;inset:0}.power-off button{color:#e7bd6d;background:0 0;border:1px solid #b49b69;padding:12px}.reduced *{scroll-behavior:auto!important;animation:none!important}@media (width<=1200px){header p{display:none}.intro{max-width:270px;left:32px}.intro h2{font-size:68px}.intro p{font-size:13px}.tour-start{flex-wrap:wrap;max-width:225px}.tour-start span{margin-left:22px}.part-card{width:265px;right:24px}.modes button{min-width:82px;padding:11px 10px}.switches{gap:1px;left:17px}.utilities{right:15px}.speed{margin-right:3px}.speed input{width:48px}.exhibit-details{display:none}.game-instructions,.labels button span{font-size:12px}}@media (width<=950px){h1{letter-spacing:2px}h1 span{letter-spacing:1px}.intro{max-width:210px;top:23%}.intro h2{font-size:58px}.intro p{max-width:195px}.top-tools{right:24px}.modes{bottom:19px}.utilities{bottom:91px}.switches{bottom:19px}.switches span{display:none}.switches button{min-width:32px}.orbit-hint{flex-wrap:wrap;max-width:260px;font-size:12px;bottom:107px;left:24px}.orbit-hint span:last-child{display:none}.part-card{max-height:calc(100% - 360px);top:190px;overflow:auto}.play-area{width:min(800px,92vw,160svh - 448px);top:110px}.playing .utilities{bottom:22px}.playing .speed{display:none}}@media (width<=760px){main{min-height:720px}header{align-items:flex-start;gap:12px;top:18px;left:18px;right:18px}header a{font-size:12px}h1{text-align:right;letter-spacing:2px;font-size:14px}h1 span{letter-spacing:1px;margin-top:6px;font-size:10px;display:block}.top-tools{flex-direction:row;justify-content:space-between;align-items:center;gap:8px;top:65px;left:18px;right:18px}.top-tools button{gap:6px;font-size:12px}.inspect select{max-width:190px;padding-left:8px;font-size:12px}.intro{max-width:220px;top:126px;left:20px}.intro .eyebrow{letter-spacing:1px;font-size:10px}.intro h2{margin:12px 0;font-size:46px;line-height:.95}.intro p{display:none}.tour-start{gap:7px;max-width:195px;margin-top:18px;padding:10px 0;font-size:10px}.tour-start span,.exhibit-details{display:none}.vignette{background:linear-gradient(#0c0e0cb0,#0000 40% 70%,#090a09d9)}.modes{justify-content:space-between;width:calc(100% - 34px);padding:5px;bottom:76px}.modes button{flex:1;min-width:0;padding:12px 4px;font-size:17px}.modes small{margin-right:6px;font-size:10px}.switches{gap:0;bottom:16px;left:13px}.switches button{width:38px;min-height:43px}.utilities{gap:0;bottom:20px;right:12px}.utilities button{min-width:34px}.speed{gap:4px;margin-right:2px;font-size:12px}.speed input{width:36px}.orbit-hint{gap:7px;max-width:none;font-size:10px;bottom:145px;left:20px}.signal-select{font-size:10px;bottom:180px;left:20px}.signal-select select{padding:8px;font-size:12px}.part-card{width:min(310px,100% - 32px);max-height:280px;padding:15px;top:auto;bottom:232px;right:16px}.part-card h3{font-size:28px}.part-card p{font-size:13px;line-height:1.7}.signal-note{font-size:12px}.labels button span{display:none}.labels button{background:#151810b0;border:1px solid #b5a179;border-radius:50%;justify-content:center;width:24px;height:24px}.labels button b:after{display:none}.labels button.selected{background:#836230;border-color:#ffce7e}.tour-bar{justify-content:space-between;padding:4px 5px 4px 10px;bottom:185px;left:20px;right:20px;transform:none}.tour-bar>span{margin-right:0;font-size:10px}.tour-bar button{min-width:30px}.play-area{width:calc(100% - 30px);top:105px}.game-heading{gap:10px;margin-bottom:12px}.game-heading .eyebrow{letter-spacing:.5px;font-size:9px}.game-heading h2{margin:6px 0;font-size:28px}.game-heading h2 span{letter-spacing:2px;margin:3px 0 0;font-size:10px;display:block}.coin-button{white-space:nowrap;padding:12px 9px;font-size:10px}.coin-button span{margin-left:5px}.game-frame{border-width:7px;border-radius:20px}.game-instructions>span:first-child{display:none}.game-instructions>span:last-child{text-align:left;max-width:none;font-size:12px}.touch-controls{display:flex}.game-status{margin-top:10px;font-size:10px}.playing .utilities{bottom:20px}.playing .speed{display:flex}.drawer{padding:20px 24px 40px}.drawer-top{margin-bottom:35px}.drawer h2{font-size:60px}.drawer p,.drawer dd{font-size:15px}.fallback-note{max-width:calc(100% - 40px);bottom:210px;left:20px}.loading strong{letter-spacing:1px;font-size:16px}.loading p{font-size:10px}.loading>span{letter-spacing:2px}}@media (pointer:coarse){.touch-controls{display:flex}}@media (height<=720px) and (width>=761px){.intro{top:23%}.intro h2{font-size:60px}.tour-start{margin-top:16px}.part-card{max-height:290px;top:190px;overflow:auto}.play-area{top:90px}.game-heading{margin-bottom:6px}.game-heading h2{font-size:25px}.game-heading .eyebrow{display:none}.game-instructions{margin-top:7px}.game-status{margin:4px 0}.touch-controls{margin-top:5px}.touch-controls button{height:31px}.touch-controls>button{height:45px}}@media (width<=760px){.playing .game-status{pointer-events:none;width:90px;font-size:9px;line-height:1.7;position:absolute;bottom:6px;right:0;transform:translateY(100%)}.dpad button{height:37px}.touch-controls{margin-top:10px}.playing .game-instructions{margin-top:9px}}.intro{max-width:320px;top:100px;bottom:auto;left:32px}.intro .tour-start{margin-top:12px;padding-top:12px}.intro .tour-start span{display:none}@media (width<=760px){.intro{top:120px;left:20px}.intro .eyebrow{font-size:10px}.intro .tour-start{border-top:0;margin-top:4px}}.labels button b:after{width:var(--leader-length,32px);transform:rotate(var(--leader-angle,0deg));transform-origin:0}.labels button span{transform:translateY(var(--label-shift,0px));background:#10130ecf;border-color:#79725b;padding:5px 8px;font-size:12px}.hardware-test{border-top:1px solid #514d40;margin-top:16px;padding-top:12px}.hardware-test>span{color:#b8a889;font-size:10px}.hardware-test>div{gap:6px;margin-top:10px;display:flex}.hardware-test button{color:#e8c78d;touch-action:none;background:#29291e;border:1px solid #7b714e;place-items:center;min-width:37px;min-height:38px;display:grid}.coin-test{color:#e3b678;background:#34291b;border:1px solid #967346;min-height:40px;margin-top:15px;padding:8px;font-size:12px}.vignette{background:linear-gradient(#080907b0,#0000 22% 78%,#080807c0),radial-gradient(at 50% 45%,#0000 20%,#05070755 80%)}.exhibit-details[hidden]{display:none}@media (width<=760px){.part-card{width:calc(100% - 32px);max-height:220px;padding:12px 15px;bottom:149px}.part-card p{margin:8px 0;font-size:12px;line-height:1.6}.part-card .signal-note{display:none}.part-card h3{margin:5px 0;font-size:25px}.part-card .text-button{padding-top:10px}.labels button span{display:none}.tour-bar{bottom:184px}.hardware-test{margin-top:8px;padding-top:8px}.intro .eyebrow,.hardware-test>span{font-size:10px}.playing .game-status{width:auto;margin-top:16px;font-size:10px;position:static;transform:none}.touch-controls button{min-height:40px}}.chip-picker{margin:0 0 16px;display:block}.chip-picker select{color:#d6c6a7;background:#171b16;border:1px solid #615d45;width:100%;max-width:100%;padding:9px;font:11px monospace}.part-card:has(.chip-picker) h3{font-size:26px}.exhibit-caption{color:#d5c9b0;letter-spacing:.015em;margin:18px 0 8px;font-family:Georgia,serif;font-size:23px;line-height:1.35}.exhibit-caption small{letter-spacing:.1em;color:#9a9d95;margin-top:8px;font:10px monospace;display:block}.inspecting .intro{visibility:hidden}.mode-watch .tour-start:last-child{display:none}.modes{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 8px 35px #0005}.top-tools button,.inspect{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#10130e70}@media (width<=760px){main{height:100svh;min-height:0}.intro{max-width:220px;top:116px!important}.exhibit-caption{margin:12px 0 4px;font-size:18px}.exhibit-caption small{font-size:9px}.intro .tour-start{margin-top:7px;padding-top:8px;font-size:9px}.mode-watch .intro{top:115px!important}.orbit-hint{gap:6px;font-size:8px;bottom:142px}.switches{bottom:max(12px,env(safe-area-inset-bottom))}.utilities{bottom:max(18px,env(safe-area-inset-bottom))}.part-card{max-height:min(220px,32svh)!important}.tour-bar{max-width:calc(100% - 32px)}.modes button{min-height:48px}.top-tools{gap:8px}.top-tools button,.inspect select{font-size:9px}}@media (height<=650px) and (width<=760px){.exhibit-caption,.intro .tour-start:last-child,.orbit-hint{display:none}.intro{top:102px!important}.modes{bottom:65px}.part-card{bottom:125px!important}.signal-select{bottom:125px}}@media (width>=761px){.labels button span{left:var(--label-x,32px);transform:translateY(var(--label-shift,0px));letter-spacing:.025em;background:#10130eb0;border:0;border-bottom:1px solid #8c806655;margin-left:0;font-size:11px;position:absolute}.labels button b:after{opacity:.6}.intro .exhibit-caption{color:#d5c9b0;font:23px/1.35 Georgia,serif}}.workshop{z-index:12;background:#12150fee;border:1px solid #68624b;width:272px;max-height:calc(100svh - 310px);position:absolute;bottom:125px;left:32px;overflow:auto;box-shadow:0 10px 30px #0004}.workshop-toggle,.return-view{color:#d8c49e;text-align:left;letter-spacing:.06em;background:0 0;border:0;width:100%;min-height:42px;padding:12px 14px;font:10px monospace}.workshop-toggle span{float:right}.return-view{color:#f3d699;border-top:1px solid #68624b}.workshop-body{padding:0 14px 14px}.workshop-body p{color:#aeb29e;margin:4px 0 12px;font:11px/1.6 monospace}.workshop-body fieldset{border:0;border-top:1px solid #56523d;margin:12px 0;padding:10px 0 0}.workshop-body legend,.workshop-body label{color:#dccfb3;font:11px monospace}.workshop-panels{flex-wrap:wrap;gap:6px;display:flex}.workshop-panels button{color:#e0c898;background:#2c2d20;border:1px solid #716747;min-height:36px;padding:8px;font:10px monospace}.workshop-panels button[aria-pressed=true]{background:#605031}.workshop button:disabled,.workshop fieldset:disabled{opacity:.45}.workshop select{color:#e0d4b9;background:#20251b;border:1px solid #716747;width:100%;margin-top:8px;padding:9px;font:11px monospace;display:block}.workshop-body .mechanism-note{margin:12px 0 0;font-size:10px}.workshop:has(.workshop-body)~.intro{visibility:hidden}@media (width<=760px){.workshop{width:min(272px,100% - 32px);max-height:38svh;bottom:149px;left:16px}.workshop-toggle{min-height:40px}.workshop-body{padding:0 10px 10px}.workshop-body p{font-size:10px}.workshop.expanded{max-height:45svh}.workshop .workshop-panels button{min-height:40px}.workshop~.part-card{bottom:205px!important}.workshop.expanded~.part-card{display:none}}.mechanisms-open .intro{visibility:hidden}.workshop-toggle{z-index:2;background:#171b13;position:sticky;top:0}.return-view{z-index:2;background:#23291b;position:sticky;top:42px}.workshop-toggle:focus-visible,.return-view:focus-visible{outline-offset:-3px;outline:2px solid #d4b278}.machine-picker{z-index:12;gap:8px;display:flex;position:absolute;bottom:112px;left:32px}.machine-picker button{color:#c7c7b7;letter-spacing:.08em;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b100ed9;border:1px solid #5b665e;min-height:48px;padding:11px 16px;font:11px monospace}.machine-picker button[aria-pressed=true]{color:#f1cd88;border-color:#c7a565}.machine-picker small{letter-spacing:.09em;color:#999e91;margin-top:7px;font:8px monospace;display:block}.machine-picker button:focus-visible{outline-offset:3px;outline:2px solid #f6d795}@media (width>=761px){.machine-picker{bottom:125px;left:auto;right:32px}.signal-select{bottom:198px}}.controls{display:contents}.mobile-controls-toggle{display:none}@media (width<=760px),(height<=500px) and (width<=1000px){main{--dock:112px;height:100svh;min-height:0}main.controls-open{--dock:clamp(210px,40svh,360px)}header{gap:10px;height:48px;top:0;left:14px;right:14px}header a{font-size:9px}header h1{letter-spacing:2px;font-size:12px}header h1 span,header p{display:none}.scene,.vignette,.loading{top:48px;bottom:var(--dock)}.controls{height:var(--dock);overscroll-behavior:contain;z-index:12;padding:0 12px max(8px,env(safe-area-inset-bottom));background:#151910;border-top:1px solid #635c44;flex-direction:column;gap:10px;display:flex;position:absolute;inset:auto 0 0;overflow:auto}.mobile-controls-toggle{z-index:15;text-align:left;color:#dfc393;letter-spacing:.1em;background:#151910;border:0;flex-shrink:0;order:-10;width:100%;min-height:44px;padding:10px 4px;font:11px monospace;display:block;position:sticky;top:0}.mobile-controls-toggle span{float:right}.controls footer{display:contents}.controls .modes{width:100%;box-shadow:none;flex-shrink:0;order:-9;margin:0;padding:2px;display:flex;position:static;transform:none}.controls .modes button{letter-spacing:.5px;flex:1;min-width:0;min-height:44px;padding:8px 4px;font-size:16px}.controls .modes small{display:none}main:not(.controls-open) .controls>:not(.mobile-controls-toggle):not(footer),main:not(.controls-open) footer>:not(.modes){display:none!important}.controls .top-tools,.controls .intro,.controls .workshop,.controls .part-card,.controls .signal-select,.controls .tour-bar,.controls .switches,.controls .utilities,.controls .fallback-note,.controls .notice{visibility:visible;flex-shrink:0;width:100%;max-width:none;margin:0;transform:none;max-height:none!important;position:static!important;inset:auto!important}.controls .top-tools{flex-flow:wrap;order:-8;align-items:stretch;gap:8px}.controls .top-tools>button,.controls .inspect{flex:1}.controls .top-tools button{justify-content:center;min-height:44px;font-size:10px}.controls .inspect select{width:100%;max-width:none;min-height:44px;font-size:10px}.controls .part-card{order:-7;padding:12px;display:block;overflow:visible}.controls .workshop{order:-6;overflow:visible}.controls .workshop.expanded~.part-card{display:block}.controls .workshop-toggle,.controls .return-view{min-height:44px;position:static}.controls .signal-select{order:-5;min-height:44px}.controls .tour-bar{white-space:normal;order:-4}.controls .tour-bar>span{font-size:10px}.controls .switches,.controls .utilities{justify-content:center;min-height:48px}.controls .utilities .speed{display:flex}.controls .intro{pointer-events:auto}.controls .intro .exhibit-caption,.controls .intro .eyebrow{display:none}.controls .intro .tour-start{min-height:44px;margin:0;padding:8px;font-size:10px;display:flex}.controls .labels,.controls .orbit-hint{display:none}.controls .scrim{height:calc(var(--dock) - 54px);-webkit-backdrop-filter:none;backdrop-filter:none;background:#151910;flex-shrink:0;order:-8;position:sticky;inset:auto auto 0}.controls .drawer{border:1px solid #555b46;width:100%;padding:16px 20px 30px;inset:0}.controls .drawer-top{background:inherit;z-index:2;min-height:44px;margin-bottom:16px;position:sticky;top:-16px}.controls .drawer h2{font-size:36px}.controls .drawer p,.controls .drawer dd{font-size:13px;line-height:1.6}.controls:has(.scrim)>:not(.scrim):not(.mobile-controls-toggle){display:none!important}}@media (height<=500px) and (width>=600px) and (width<=1000px){main{--dock:160px}main.controls-open{--dock:clamp(270px,36vw,360px)}.scene,.vignette,.loading{top:48px;right:var(--dock);bottom:0}.controls{width:var(--dock);border-top:0;border-left:1px solid #635c44;height:calc(100svh - 48px);top:48px;left:auto}.controls .modes{flex-wrap:wrap}.controls .modes button{flex:1 0 45%}.controls .scrim{height:calc(100svh - 112px)}}@media (width<=760px),(height<=500px) and (width<=1000px){.controls .top-tools{align-items:flex-start}.controls .inspect{min-width:190px}.controls .inspect svg{display:none}.controls select[size]{max-width:100%;padding:4px!important;font-size:11px!important}.controls select[size] option{min-height:36px;padding:10px 8px}main{--dock:176px}.controls .machine-picker{flex-shrink:0;order:-8;gap:6px;margin:0;display:flex;position:static}.machine-picker button{flex:1;min-height:48px;padding:8px;font-size:10px}.machine-picker small{margin-top:4px;font-size:8px}main:not(.controls-open) #exhibit-controls>.machine-picker{display:flex!important}}
