@font-face{font-family:Geist;src:url(/fonts/geist.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{color:#e7e7dd;font-synthesis:none;--mono:"Geist Mono", monospace;background:#090e12;font-family:Geist,sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer;background:0 0;border:0}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:6px;outline:2px solid #c7e8af}[hidden]{display:none!important}#workshop{background:#080d12;width:100%;height:100svh;min-height:300px;position:relative;overflow:clip}#scene,.scene-shade,.film-grain{position:absolute;inset:0}#scene canvas{touch-action:none;width:100%;height:100%;display:block}.scene-shade{pointer-events:none;z-index:1;background:linear-gradient(#050b1055,#0000 18% 78%,#050b1080)}.film-grain{pointer-events:none;opacity:.025;z-index:2;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.55' filter='url(%23n)'/%3E%3C/svg%3E")}.site-header{z-index:10;pointer-events:none;padding:27px 34px;position:absolute;top:0;left:0;right:0}.brand{pointer-events:auto;letter-spacing:-.8px;opacity:.75;align-items:center;gap:8px;font-size:17px;font-weight:570;text-decoration:none;transition:opacity .3s;display:inline-flex}.brand:hover{opacity:1}.brand-icon{width:30px;height:32px;font-family:var(--mono);letter-spacing:-5px;align-items:center;font-size:27px;font-weight:650;display:flex;transform:translateY(-3px)}.brand-icon span{color:#afdb9b;margin-left:2px;font-size:23px;animation:1.4s step-end infinite cursor-blink}.site-footer{z-index:12;pointer-events:none;padding:23px 34px;position:absolute;bottom:0;left:0;right:0}.footer-controls{justify-content:flex-end;align-items:center;display:flex}.footer-controls button{pointer-events:auto}#sound-toggle{align-items:center;padding:10px 0;display:flex}#sound-label{display:none}.sound-bars{align-items:center;gap:3px;height:14px;display:flex}.sound-bars i{background:#a2b5aa;width:2px;height:3px;transition:height .4s}.sound-bars i:nth-child(2){height:10px}.sound-bars i:nth-child(3){height:6px}.sound-bars i:nth-child(4){height:4px}#sound-toggle[aria-pressed=true] .sound-bars i{animation:1s ease-in-out infinite alternate sound-bar}#sound-toggle[aria-pressed=true] .sound-bars i:nth-child(2){animation-delay:-.3s}#sound-toggle[aria-pressed=true] .sound-bars i:nth-child(3){animation-delay:-.7s}#room-return{opacity:.6;font:11px var(--mono);padding:10px 0;position:absolute;bottom:23px;left:34px}#room-return:hover{opacity:1}#room-return span{color:#afdb9b;padding-right:8px}kbd{font:10px var(--mono);color:#b2c1b8}.room-ui{transition:opacity .5s}.terminal-mode .room-ui{opacity:0;pointer-events:none}.terminal-mode .site-header{visibility:hidden}#explore-controls{z-index:13;background:#0b1417da;border:1px solid #b9d0c021;border-radius:9px;align-items:center;padding:3px;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}#explore-controls button{color:#a1b3aa;border-radius:6px;place-items:center;width:44px;height:44px;transition:background .2s,color .2s;display:grid;position:relative}#explore-controls button:hover,#explore-controls button[aria-pressed=true]{color:#d1e5b5;background:#b5d19912}#explore-controls svg{fill:none;stroke:currentColor;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}#explore-controls button:after{content:attr(data-tip);color:#d0dfc5;font:10px var(--mono);white-space:nowrap;opacity:0;pointer-events:none;background:#101a18f2;border-radius:3px;padding:6px 9px;position:absolute;bottom:56px;left:50%;transform:translate(-50%)}#explore-controls button:hover:after,#explore-controls button:focus-visible:after{opacity:1}.control-divider{background:#b9d0c021;width:1px;height:18px;margin:0 3px}#hotspots{pointer-events:none;z-index:4;position:absolute;inset:0;overflow:clip}.hotspot{pointer-events:auto;opacity:0;align-items:center;padding:19px;transition:opacity .7s;display:flex;position:absolute;transform:translate(-50%,-50%)}.is-ready .hotspot{opacity:1}.hotspot-dot{opacity:.35;background:#d0e2b877;border:1px solid #d4e8bb;border-radius:50%;width:6px;height:6px;transition:opacity .2s;position:relative;box-shadow:0 0 12px #cbf4a933}.hotspot-dot:after{content:"";border:1px solid #d4e8bb33;border-radius:50%;transition:transform .25s;position:absolute;inset:-6px}.hotspot:hover .hotspot-dot,.hotspot:focus-visible .hotspot-dot{opacity:1}.hotspot:focus-visible{outline:none}.hotspot:focus-visible .hotspot-dot{box-shadow:0 0 0 4px #16251d,0 0 0 6px #d4e8bb}.hotspot:hover .hotspot-dot:after{transform:scale(1.3)}.hotspot-label{display:none}.hotspot[data-tip]:hover:before,.hotspot[data-tip]:focus-visible:before{content:attr(data-tip);color:#d0dfc5;font:10px var(--mono);white-space:nowrap;pointer-events:none;background:#101a18f2;border-radius:3px;padding:6px 9px;position:absolute;bottom:48px;left:50%;transform:translate(-50%)}.hotspot-main{padding:22px}.hotspot-main:not(:focus-visible) .hotspot-dot:after{animation:3s ease-out infinite hotspot-pulse}#terminal{clip-path:inset(50%);white-space:nowrap;pointer-events:none;width:1px;height:1px;position:fixed;top:0;left:0;overflow:hidden}#terminal input,#terminal textarea{font-size:16px}#toast{z-index:15;color:#d0dfc5;font:11px/1.5 var(--mono);opacity:0;pointer-events:none;text-align:center;background:#101a18eb;border:1px solid #acbe932b;border-radius:3px;max-width:90%;padding:12px 17px;transition:opacity .3s,transform .3s;position:absolute;bottom:75px;left:50%;transform:translate(-50%,8px)}#toast.show{opacity:1;transform:translate(-50%)}#loading{z-index:30;background:#0a1013;flex-direction:column;justify-content:center;align-items:center;transition:opacity .9s,visibility .9s;display:flex;position:absolute;inset:0}#loading.done{opacity:0;visibility:hidden;pointer-events:none}.loader-symbol{font:600 68px var(--mono);letter-spacing:-12px;color:#dce6d3;padding-right:12px}.loader-symbol span{color:#a3c88d;animation:1s step-end infinite cursor-blink}#loading>p{font:10px var(--mono);letter-spacing:4px;margin:25px 0 22px}.loading-track{background:#344339;width:180px;height:1px}.loading-track i{background:#b0ce96;width:0;height:100%;transition:width .3s;display:block}#loading>span{font:10px var(--mono);color:#7e9286;margin-top:17px}#load-error{z-index:35;text-align:center;background:#0a1013;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex;position:absolute;inset:0}#load-error p{font-size:24px}#load-error span{color:#aaa;max-width:450px;line-height:1.6}#load-error button{border:1px solid #78876a;margin-top:24px;padding:12px 20px}@keyframes cursor-blink{50%{opacity:0}}@keyframes hotspot-pulse{0%,to{opacity:.5;transform:scale(1)}65%{opacity:0;transform:scale(1.65)}}@keyframes sound-bar{0%{height:3px}to{height:13px}}@media (max-width:600px){.site-header,.site-footer{padding:22px}.brand{font-size:16px}#room-return{bottom:22px;left:22px}#toast{width:max-content;font-size:10px}.terminal-mode #sound-toggle{display:none}#explore-controls{bottom:15px}#explore-controls button{width:42px;height:44px}.site-footer{padding:0 22px;bottom:63px}.terminal-mode .site-footer{bottom:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}.film-grain{display:none}}
