:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f4f6f5;background:#111316;font-synthesis:none;--stage-ratio: .5625}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0;overflow:hidden;background:#111316}body{display:grid;place-items:center;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}button{font:inherit}.experience{position:relative;width:min(100vw,calc(100dvh * var(--stage-ratio)));height:min(100dvh,calc(100vw / var(--stage-ratio)));overflow:hidden;isolation:isolate;cursor:crosshair;touch-action:none;background:#000;box-shadow:0 0 80px #00000073;-webkit-user-select:none;user-select:none}#scene,.white-out{position:absolute;inset:0;width:100%;height:100%}#scene{display:block}.filter-defs{position:absolute;width:0;height:0;overflow:hidden}.loader{position:absolute;inset:0;z-index:3;display:grid;grid-template-rows:1fr auto 8.8dvh;align-items:end;justify-items:center;padding:max(28px,env(safe-area-inset-top)) 24px max(26px,env(safe-area-inset-bottom));transition:opacity .6s cubic-bezier(.22,1,.36,1),visibility .6s;pointer-events:none}.loader.is-hidden{opacity:0;visibility:hidden}.loader-spacer{width:100%}.timer,.loading-percent,.lite-entry,.sound-enable,.gesture-hint{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;letter-spacing:.16em}.loading-progress{display:grid;gap:8px;width:min(48vw,184px)}.loading-percent{justify-self:end;color:#cce1f294;font-size:clamp(8px,1.8vw,11px);line-height:1}.loading-track{position:relative;display:block;width:100%;height:1px;overflow:hidden;background:#b4d4eb21;box-shadow:0 0 8px #469bdc14}.loading-fill{position:absolute;inset:0;width:100%;background:linear-gradient(90deg,#7db1da57,#d3edffe0);box-shadow:0 0 9px #62b6f275;transform:scaleX(0);transform-origin:left center;transition:transform .12s linear}.timer{margin:3px 0 0;text-align:center;color:#eef4facc;font-size:clamp(10px,2.25vw,14px);text-shadow:0 0 14px rgb(158 216 255 / 16%)}.sound-enable{position:absolute;top:50%;left:50%;display:inline-flex;justify-content:center;align-items:center;gap:11px;width:min(68vw,220px);margin:0;border:1px solid rgb(166 211 242 / 20%);border-radius:999px;padding:10px 16px 10px 11px;color:#dceefa9e;background:#22435c1a;box-shadow:0 0 18px #4ca0da12;font-size:clamp(11px,2.5vw,14px);line-height:1;cursor:pointer;pointer-events:auto;transform:translate(-50%,-50%);transition:color .24s ease,border-color .24s ease,background .24s ease,opacity .24s ease}.sound-enable:hover,.sound-enable:focus-visible{color:#f2f9ffeb;border-color:#b4e0fc75;outline:none}.sound-enable-dot{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgb(169 219 252 / 45%);border-radius:50%;background:#5ba9e114;box-shadow:0 0 #69bef63d;animation:sound-enable-pulse 1.8s ease-out infinite}.sound-enable-dot svg{width:17px;height:17px;overflow:visible}.sound-enable-dot path:first-child{fill:currentColor;stroke:none}.sound-enable-dot path:last-child{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.sound-enable.is-enabled{color:#bedef373;border-color:#99ccef21;background:transparent;cursor:default}.sound-enable.is-enabled .sound-enable-dot{background:#5ba9e129;animation:none}.lite-entry{align-self:center;border:0;padding:14px;color:#dce6ee59;background:transparent;font-size:clamp(8px,1.75vw,11px);opacity:0;transform:translateY(4px);transition:opacity .5s ease,transform .5s ease,color .25s ease;pointer-events:auto;cursor:pointer}.lite-entry.is-visible{opacity:1;transform:none}.lite-entry:disabled{pointer-events:none}.lite-entry:focus-visible,.lite-entry:hover{color:#e1eef8bf;outline:none}.title-state{position:absolute;inset:0;z-index:4;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s;pointer-events:none}.title-state.is-visible{opacity:1;visibility:visible}.title-state.is-leaving{opacity:0;transition-duration:.9s}.gesture-hint{position:absolute;top:60%;left:50%;display:grid;gap:18px;min-width:min(76vw,340px);border:0;padding:20px 12px;color:#e4eff8c7;background:transparent;font-size:clamp(11px,2.7vw,16px);line-height:1.45;text-align:center;text-shadow:0 0 16px rgb(125 190 238 / 32%);opacity:0;transform:translate(-50%,5px);transition:opacity .65s ease,transform .65s ease,color .25s ease;pointer-events:none;cursor:grab}.gesture-hint.is-visible{opacity:1;transform:translate(-50%);pointer-events:auto}.gesture-hint:hover,.gesture-hint:focus-visible{color:#f4fafff5;outline:none}.gesture-track{position:relative;display:block;width:1px;height:72px;margin:0 auto;background:linear-gradient(180deg,transparent,rgb(189 218 238 / 18%) 12%,rgb(204 232 250 / 58%) 50%,rgb(189 218 238 / 18%) 88%,transparent)}.gesture-pulse{position:absolute;top:50%;left:50%;width:34px;height:34px;border:1px solid rgb(170 221 255 / 46%);box-shadow:0 0 16px #5aaee829;border-radius:50%;transform:translate(-50%,-50%);animation:gesture-pulse 2.4s ease-in-out infinite}.gesture-arrow{position:absolute;left:50%;width:9px;height:9px;border-top:1px solid rgb(225 242 253 / 72%);border-right:1px solid rgb(225 242 253 / 72%)}.gesture-arrow-up{top:2px;transform:translate(-50%) rotate(-45deg)}.gesture-arrow-down{bottom:2px;transform:translate(-50%) rotate(135deg)}.gesture-hand{position:absolute;top:8px;left:24px;width:31px;height:47px;color:#e1f2fdb8;filter:drop-shadow(0 0 8px rgb(95 176 232 / 28%));pointer-events:none;animation:gesture-hand-swipe 2.6s cubic-bezier(.45,0,.3,1) infinite}.gesture-hand svg{display:block;width:100%;height:100%;overflow:visible}.gesture-hand path{fill:#d2e7f721;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.gesture-hand circle{fill:none;stroke:#bce2fc94;stroke-width:1.5;transform-origin:27px 7px;animation:gesture-hand-touch 2.6s ease-out infinite}.white-out{z-index:8;background:#fff;opacity:0;pointer-events:none;will-change:opacity}.light-text-ui{position:absolute;inset:0;z-index:10;opacity:0;visibility:hidden;color:#2b2f35;pointer-events:none;transition:opacity .22s ease,visibility .22s}.light-text-ui.is-visible{opacity:1;visibility:visible}.light-quote-hint{position:absolute;left:50%;bottom:max(11%,env(safe-area-inset-bottom));display:grid;justify-items:center;gap:12px;width:min(82%,360px);border:0;padding:16px 12px;color:#2b2f35b8;background:transparent;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(10px,2.45vw,14px);letter-spacing:.09em;line-height:1.45;opacity:0;transform:translate(-50%,8px);transition:opacity .32s ease,transform .32s ease,color .18s ease;pointer-events:none}.light-quote-hint i{position:relative;display:block;width:1px;height:44px;background:linear-gradient(180deg,transparent,rgb(73 96 122 / 58%))}.light-quote-hint i:after{position:absolute;right:-4px;bottom:0;width:8px;height:8px;border-right:1px solid rgb(73 96 122 / 72%);border-bottom:1px solid rgb(73 96 122 / 72%);content:"";transform:rotate(45deg)}.light-quote-hint.is-visible{opacity:1;transform:translate(-50%);pointer-events:auto}.light-quote-hint:hover,.light-quote-hint:focus-visible{color:#2b2f35;outline:none}.no-webgl .experience{background:radial-gradient(circle at 12% 25%,rgb(158 216 255 / 18%) 0 1px,transparent 2px),radial-gradient(circle at 80% 18%,rgb(255 255 255 / 15%) 0 1px,transparent 2px),radial-gradient(circle at 68% 78%,rgb(71 135 198 / 16%) 0 1px,transparent 2px),#000;background-size:51px 71px,73px 57px,97px 83px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes gesture-pulse{0%,to{opacity:.18;transform:translate(-50%,-50%) scale(.62)}50%{opacity:.7;transform:translate(-50%,-50%) scale(1)}}@keyframes sound-enable-pulse{0%{box-shadow:0 0 #69bef647}70%,to{box-shadow:0 0 0 10px #69bef600}}@keyframes gesture-hand-swipe{0%,12%,to{opacity:.2;transform:translateY(18px)}22%{opacity:.72}52%{opacity:.78;transform:translateY(-18px)}72%{opacity:.32;transform:translateY(18px)}}@keyframes gesture-hand-touch{0%,16%,to{opacity:0;transform:scale(.45)}24%{opacity:.75;transform:scale(1)}44%{opacity:0;transform:scale(1.9)}}@media(max-aspect-ratio:9 / 16){.experience{width:100vw;height:100dvh}}@media(prefers-reduced-motion:reduce){.gesture-pulse,.sound-enable-dot,.gesture-hand,.gesture-hand circle{animation:none}.light-text-ui,.light-quote-hint{transition:none}}
