:root{color-scheme:dark;font-family:DotFont,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-synthesis:none;text-rendering:optimizeLegibility;background:#050505}@font-face{font-family:DotFont;src:url(/fonts/dotFont.ttf) format("truetype");font-display:swap}@font-face{font-family:EnkaMincho;src:url(/fonts/enkaMincho.ttf) format("truetype");font-display:swap}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}html{scroll-behavior:smooth;scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}body{height:100%;overflow-x:hidden;overflow-y:hidden;color:#f2f2f2;background:#050505}body.is-entered{overflow:hidden}button{font:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#scene{position:fixed;inset:0;z-index:1;display:block;width:100%;height:100%;visibility:visible;cursor:default;opacity:0;transition:opacity 1.2s ease}body.is-entered #scene{opacity:1}#app:before,#app:after{content:"";position:fixed;inset:0;z-index:2;pointer-events:none}#app:before{display:none}#app:after{display:none}#loader{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:0;background:#050505;opacity:1;visibility:visible;transition:opacity 1.1s ease,visibility 1.1s ease}#loader.is-entering .terminal,#loader.is-exiting .terminal{opacity:0}#loader.is-exiting{opacity:0;visibility:hidden;pointer-events:none}#loader.is-hidden{display:none;opacity:0;visibility:hidden;pointer-events:none}.terminal{width:100%;max-width:520px;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(26px,5vw,54px) 24px;color:#fff;text-align:center;opacity:1;transition:opacity .52s ease}.terminal-kicker{margin:0 0 30px;color:#fff;font-family:EnkaMincho,Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(34px,7vw,64px);line-height:1}#boot-log{width:min(460px,100%);min-height:34px;max-height:34px;margin:0 0 5px;padding:0;color:#fff;font-size:clamp(14px,2.4vw,19px);line-height:1.45;text-align:center;white-space:pre-wrap;overflow:hidden}#boot-log span{display:block;opacity:0;animation:bootStatusFade 1.15s ease both}.progress-shell{width:min(360px,100%);height:1px;margin:0;background:#ffffff47;overflow:hidden}#progress-bar{width:0;height:100%;background:#fff;transition:width .18s ease}#progress-label{margin:12px 0 34px;color:#fff;font-size:16px;text-align:right}#enter-site{position:relative;display:none;place-items:center;width:78px;height:78px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;cursor:pointer;opacity:0;visibility:hidden;transform:scale(.9);transition:opacity .26s ease,transform .26s ease,visibility .26s ease}#enter-site:before,#enter-site:after,#enter-site span{content:"";position:absolute;inset:50%;border-radius:50%;transform:translate(-50%,-50%)}#enter-site:before,#enter-site:after{width:18px;height:18px;border:1px solid #ffffff;opacity:0}#enter-site:after{animation-delay:.9s}#enter-site span{width:18px;height:18px;background:#fff}#enter-site:disabled{cursor:wait}#enter-site:not(:disabled):hover,#enter-site:not(:disabled):focus-visible{outline:0}#enter-site.is-entering{pointer-events:none}#loader.is-ready #enter-site{display:grid;opacity:1;visibility:visible;transform:scale(1)}#loader.is-ready #enter-site:before,#loader.is-ready #enter-site:after{animation:enterRipple 1.8s ease-out infinite}#loader.is-ready #enter-site span{animation:enterHeartbeat 1.8s ease-in-out infinite}.enter-note{display:none;margin:18px 0 0;color:#fff;font-size:clamp(11px,2vw,15px);line-height:1.25;text-transform:uppercase;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .26s ease,transform .26s ease,visibility .26s ease}#loader.is-ready .enter-note{display:block;opacity:1;visibility:visible;transform:translateY(0)}@keyframes enterHeartbeat{0%,44%,to{transform:translate(-50%,-50%) scale(1)}14%{transform:translate(-50%,-50%) scale(1.3)}24%{transform:translate(-50%,-50%) scale(.86)}}@keyframes enterRipple{0%{width:18px;height:18px;opacity:.9}to{width:76px;height:76px;opacity:0}}@keyframes bootStatusFade{0%{opacity:0;transform:translateY(4px)}24%,76%{opacity:.88;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.site-topbar,.scene-label,.gallery-controls,.floor-back-cue,.scroll-cue{position:fixed;z-index:5;visibility:visible}.site-topbar{top:0;left:0;right:0;min-height:112px;display:flex;align-items:flex-start;justify-content:space-between;padding:18px clamp(18px,4vw,46px) 44px;font-family:EnkaMincho,Yu Mincho,Hiragino Mincho ProN,serif;opacity:0;pointer-events:none;background:linear-gradient(to bottom,#000000eb,#00000094 44%,#0000);transform:translateY(-10px);transition:opacity .76s ease,transform .76s ease}body.is-entered .site-topbar{opacity:1;pointer-events:auto;transform:translateY(0)}body.is-entered .site-topbar.is-dimmed{opacity:0;pointer-events:none;transform:translateY(-14px);transition-duration:.26s}.topbar-name{color:#fff;font-size:clamp(20px,3vw,34px);line-height:1;text-decoration:none;text-shadow:0 0 16px rgba(255,255,255,.18)}.topbar-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:7px}.topbar-block{position:relative;width:35px;min-height:35px;display:grid;place-items:center;padding:9px 7px;border:1px solid rgba(255,255,255,.18);background:#050505;color:#fff;overflow:hidden;text-decoration:none;transition:width .22s ease,min-height .22s ease,background .22s ease}.topbar-block>span{font-size:12px;line-height:1}.topbar-image-block>span{display:grid;place-items:center}.topbar-image-block img{display:block;width:15px;height:15px;object-fit:contain}.topbar-block>strong{position:absolute;top:50%;left:38px;color:#fff;font-size:12px;font-weight:400;line-height:1;letter-spacing:0;opacity:0;transform:translateY(-50%);transition:opacity .16s ease;white-space:nowrap}.topbar-block:hover,.topbar-block:focus-within,.topbar-block:focus-visible{width:104px;min-height:35px;background:#000;outline:0}.topbar-block:hover>span,.topbar-block:focus-within>span,.topbar-block:focus-visible>span{opacity:0}.topbar-block:hover>strong,.topbar-block:focus-within>strong,.topbar-block:focus-visible>strong{opacity:1}.topbar-control{border-radius:0;font:inherit;cursor:pointer}.topbar-control>strong{display:none}.topbar-control:hover,.topbar-control:focus-within,.topbar-control:focus-visible{width:35px;min-height:35px}.topbar-control:hover>span,.topbar-control:focus-within>span,.topbar-control:focus-visible>span{opacity:1}.material-symbols-rounded{font-family:Material Symbols Rounded;font-size:18px;font-weight:400;font-style:normal;line-height:1;letter-spacing:0;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;font-feature-settings:"liga";-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}#music-toggle:disabled,#mute-toggle:disabled{color:#ffffff6b;cursor:wait}#music-toggle:not(:disabled):hover,#music-toggle:not(:disabled):focus-visible,#mute-toggle:not(:disabled):hover,#mute-toggle:not(:disabled):focus-visible{color:#fff}.scene-label{display:none}.scene-label span{display:block;margin-bottom:6px;color:#ffffffad;font-size:12px;font-weight:700;letter-spacing:.08em}.scene-label strong{display:block;color:#f2f2f2;font-size:22px;line-height:1.12}.scene-label p{margin:8px 0 0;color:#ffffffb8;font-size:13px;line-height:1.4}.scroll-cue,.floor-back-cue{right:50%;bottom:22px;width:auto;min-width:158px;height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 18px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#0c0c0cad;box-shadow:0 16px 44px #00000047;color:#f2f2f2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;transform:translate(50%);transition:opacity .18s ease,transform .18s ease}.scroll-cue strong,.floor-back-cue strong{font-size:13px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.scroll-cue span,.floor-back-cue span{width:12px;height:12px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);animation:cuePulse 1.25s ease-in-out infinite}.floor-back-cue{top:18px;bottom:auto;opacity:0;pointer-events:none;transform:translate(50%,-12px)}.floor-back-cue span{transform:translateY(2px) rotate(225deg);animation-name:cuePulseUp}.scroll-cue.is-dimmed{opacity:0;transform:translate(50%,10px);pointer-events:none}.floor-back-cue.is-visible{opacity:1;pointer-events:auto;transform:translate(50%)}.floor-back-cue.is-hiding{opacity:0;pointer-events:none;transform:translate(50%,-12px);transition-duration:.12s}.gallery-controls{right:50%;bottom:22px;display:flex;align-items:center;gap:8px;opacity:0;pointer-events:none;transform:translate(50%,10px);transition:opacity .18s ease,transform .18s ease}.gallery-controls.is-visible{opacity:1;pointer-events:auto;transform:translate(50%)}.gallery-controls button{width:46px;height:46px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.14);border-radius:6px;background:#0c0c0cb8;color:#f2f2f2;line-height:1;cursor:pointer}.gallery-controls button .material-symbols-rounded{font-size:28px}.gallery-controls button:hover,.gallery-controls button:focus-visible{background:#f5f7fb;color:#050505;outline:2px solid rgba(159,183,215,.42);outline-offset:3px}.gallery-counter{min-width:min(320px,calc(100vw - 136px));height:46px;display:grid;grid-template-columns:1fr;align-items:center;justify-items:center;gap:2px;padding:5px 18px;border:1px solid rgba(255,255,255,.14);border-radius:6px;background:#0c0c0cb8;box-shadow:0 16px 44px #00000047;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.gallery-counter strong{max-width:100%;color:#f2f2f2;font-size:15px;line-height:1.12;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-counter small{color:#ffffff9e;font-size:11px;line-height:1}@keyframes cuePulse{0%,to{opacity:.45;transform:translateY(-4px) rotate(45deg)}50%{opacity:1;transform:translateY(2px) rotate(45deg)}}@keyframes cuePulseUp{0%,to{opacity:.45;transform:translateY(4px) rotate(225deg)}50%{opacity:1;transform:translateY(-2px) rotate(225deg)}}@media(max-width:720px){.site-topbar{min-height:100px;padding:14px 14px 38px}.topbar-actions{gap:5px}.topbar-block{width:32px}.topbar-block:hover,.topbar-block:focus-within,.topbar-block:focus-visible{width:92px;min-height:35px}.gallery-controls{right:50%;left:auto;bottom:18px;justify-content:center}.scroll-cue{bottom:18px}.floor-back-cue{top:14px}#boot-log{font-size:13px}}
