:root{color-scheme:dark;--bg: #030506;--ink: #d8fbff;--muted: rgba(216, 251, 255, .46);--line: rgba(45, 230, 255, .2);--glow: #2de6ff;--mx: 50%;--my: 50%;--shift-x: 0px;--shift-y: 0px;--room-shift-x: 0px;--room-shift-y: 0px;--tilt-x: 0deg;--tilt-y: 0deg}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}#root{min-height:100vh}body{min-height:100vh;margin:0;overflow:hidden;background:var(--bg);color:var(--ink);cursor:none;font-family:Inter,Helvetica Neue,Arial,ui-sans-serif,system-ui,sans-serif;letter-spacing:0}button,input{font:inherit;letter-spacing:0}button,input,.room-link{cursor:none}.entry-screen{position:relative;display:grid;min-height:100vh;place-items:center;padding:20px;isolation:isolate;overflow:hidden;perspective:1200px;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0ms linear .9s}.intro-screen{position:fixed;inset:0;z-index:20;display:grid;grid-template-rows:1fr auto auto 1fr;place-items:center;padding:20px;overflow:hidden;isolation:isolate;background:var(--bg);opacity:1;visibility:visible;cursor:pointer;transition:opacity .9s ease,visibility 0ms linear}.intro-screen:before,.intro-screen:after{content:"";position:absolute;inset:0;pointer-events:none}.intro-screen:before{z-index:-1;background:linear-gradient(rgba(45,230,255,.03) 1px,transparent 1px) 0 0 / 56px 56px,linear-gradient(90deg,rgba(45,230,255,.024) 1px,transparent 1px) 0 0 / 56px 56px,linear-gradient(180deg,#03050624,#030506f5)}.intro-screen:after{z-index:0;background:radial-gradient(circle at 50% 50%,rgba(45,230,255,.16) 0,rgba(45,230,255,.07) 92px,transparent 270px);opacity:0;mix-blend-mode:screen;animation:introGlow 3.2s ease forwards}.intro-title{position:relative;z-index:1;grid-row:2;align-self:end;width:min(100%,360px);text-align:center;opacity:0;transform:translateY(8px);animation:introTitle 1.4s ease .26s forwards}.intro-enter{position:relative;z-index:1;grid-row:3;align-self:start;min-width:auto;min-height:auto;margin-top:22px;border:0;background:transparent;color:#d8fbff80;cursor:pointer;font-size:.74rem;font-weight:500;line-height:1;opacity:0;padding:8px 10px;text-transform:lowercase;transform:translateY(5px);visibility:hidden;transition:color .16s ease,text-shadow .16s ease;animation:introEnter .9s ease 1.7s forwards}.intro-enter:hover{background:transparent;color:var(--ink);text-shadow:0 0 18px rgba(45,230,255,.36)}body.intro-complete .intro-screen{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .9s ease,visibility 0ms linear .9s}body.intro-complete .entry-screen{opacity:1;visibility:visible;transition:opacity .9s ease .22s,visibility 0ms linear .22s}.entry-screen:before,.entry-screen:after{content:"";position:absolute;inset:0;pointer-events:none}.entry-screen:before{z-index:-1;background:linear-gradient(rgba(45,230,255,.03) 1px,transparent 1px) 0 0 / 56px 56px,linear-gradient(90deg,rgba(45,230,255,.024) 1px,transparent 1px) 0 0 / 56px 56px,linear-gradient(180deg,#03050624,#030506f5)}.entry-screen:after{z-index:0;background:radial-gradient(circle at var(--mx) var(--my),rgba(45,230,255,.14) 0,rgba(45,230,255,.06) 92px,transparent 270px);opacity:.88;mix-blend-mode:screen}.cursor-dot{position:fixed;left:var(--mx);top:var(--my);z-index:10;width:7px;height:7px;border:1px solid var(--glow);border-radius:999px;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 18px #2de6ffcc;transition:width .16s ease,height .16s ease,background .16s ease}body.is-touching-detail .cursor-dot{width:20px;height:20px;background:#2de6ff14}.coordinates{position:fixed;top:18px;right:18px;z-index:2;color:#d8fbff57;font-size:.68rem;font-weight:600;text-transform:lowercase}.neon-frame{position:absolute;inset:18px;z-index:1;pointer-events:none}.neon-frame:before,.neon-frame:after,.neon-frame span{content:"";position:absolute;background:#2de6ff94;border-radius:8px;box-shadow:0 0 16px #2de6ff59}.neon-frame:before,.neon-frame:after{width:min(16vw,180px);height:1px}.neon-frame:before{top:0;left:0}.neon-frame:after{right:0;bottom:0}.neon-frame span:first-child,.neon-frame span:last-child{width:1px;height:min(18vh,190px)}.neon-frame span:first-child{top:0;left:0}.neon-frame span:last-child{right:0;bottom:0}.room-map{position:absolute;inset:0;z-index:1;pointer-events:none}.room-link{position:absolute;display:inline-flex;min-height:26px;align-items:center;border:1px solid rgba(45,230,255,.12);border-radius:8px;padding:0 9px;background:#03050647;color:#d8fbff47;pointer-events:auto;font-size:.62rem;font-weight:600;text-transform:lowercase;transform:translate3d(var(--room-shift-x),var(--room-shift-y),0);transition:border-color .16s ease,color .16s ease,transform .16s ease,background .16s ease}.room-link:after{content:attr(data-room);position:absolute;top:calc(100% + 7px);left:50%;width:max-content;transform:translate(-50%);color:#d8fbff8a;opacity:0;pointer-events:none}.room-link:hover{border-color:#2de6ff80;background:#2de6ff0d;color:#d8fbffb8;transform:translate3d(var(--room-shift-x),var(--room-shift-y),0) translateY(-3px)}.room-link:hover:after{opacity:1}.room-link-a{top:18%;left:12%}.room-link-b{top:28%;right:15%}.room-link-c{bottom:22%;left:17%}.room-link-d{right:18%;bottom:17%}.room-link-e{top:53%;left:8%}.room-link-f{top:56%;right:8%}.entry,.inside{position:relative;z-index:2;width:min(100%,360px);text-align:center;transform:rotateX(var(--tilt-y)) rotateY(var(--tilt-x));transform-style:preserve-3d;transition:transform .11s linear}.tag{margin:0 0 16px;color:#d8fbffa3;font-size:.68rem;font-weight:600;line-height:1;text-transform:lowercase}h1,h2,p{overflow-wrap:anywhere}h1,h2{margin:0;font-weight:500;line-height:1.12;text-transform:lowercase;text-wrap:balance}h1{position:relative;font-size:1.45rem;text-shadow:0 0 18px rgba(45,230,255,.22)}h1:before,h1:after{display:none}h1::selection,h2::selection,p::selection,input::selection{background:var(--glow);color:var(--bg)}h2{font-size:1.45rem;text-shadow:0 0 18px rgba(45,230,255,.22)}.subline,.inside p:not(.tag){max-width:320px;margin:12px auto 0;color:var(--muted);font-size:.84rem;line-height:1.45}.password-form{width:min(100%,310px);margin:28px auto 0}.password-form label{display:block;margin-bottom:9px;color:#d8fbff61;font-size:.66rem;font-weight:500;text-transform:lowercase}.password-row{display:grid;grid-template-columns:1fr auto;min-height:44px;border:1px solid var(--line);border-radius:8px;background:#03050694;box-shadow:0 0 24px #2de6ff14;overflow:hidden;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.password-row:focus-within{border-color:#2de6ff8f;outline:1px solid rgba(45,230,255,.3);outline-offset:4px;box-shadow:0 0 28px #2de6ff29}input{width:100%;min-width:0;border:0;background:transparent;color:var(--ink);padding:0 13px;outline:0}input::placeholder{color:#d8fbff47}button{min-width:66px;min-height:42px;border:0;border-left:1px solid var(--line);background:#2de6ff21;color:var(--ink);font-size:.78rem;font-weight:500;text-transform:lowercase;transition:background .16s ease,color .16s ease}button:hover{background:#2de6ff42}button:disabled,input:disabled{opacity:.42}button:disabled{pointer-events:none}.note{min-height:1.5em;margin:12px 0 0;color:var(--muted);font-size:.76rem;line-height:1.45}.note.is-warning{color:#d8fbffb8;font-weight:500}.inside{display:none}.lock-button{min-width:76px;margin-top:24px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--ink)}.music-player{position:fixed;left:50%;bottom:16px;z-index:3;display:flex;width:min(82vw,220px);flex-direction:column;align-items:center;gap:6px;opacity:.42;transform:translate(-50%);transition:opacity .16s ease}.music-player:hover{opacity:.86}.music-title{width:100%;min-height:1.1em;margin:0;color:#d8fbff80;font-size:.62rem;font-weight:500;line-height:1.1;overflow:hidden;text-align:center;text-overflow:ellipsis;text-transform:lowercase;white-space:nowrap}.music-controls{display:flex;gap:6px}.music-button{width:34px;min-width:34px;min-height:24px;border:0;background:transparent;color:#d8fbff94;font-size:.62rem;font-weight:500;line-height:1;padding:6px;text-transform:lowercase}.music-button:hover{background:transparent;color:var(--ink)}.music-toggle{width:42px;min-width:42px}body.unlocked .entry,body.unlocked .room-map{display:none}body.unlocked .inside{display:block}@keyframes introTitle{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes introEnter{0%{opacity:0;transform:translateY(5px);visibility:hidden}1%{visibility:visible}to{opacity:1;transform:translateY(0);visibility:visible}}@keyframes introGlow{0%,to{opacity:0}35%,72%{opacity:.88}}@media(max-width:700px){html,body{min-height:100%;overflow:auto}#root{min-height:100dvh}.entry-screen{min-height:100dvh;padding:22px 18px max(78px,calc(env(safe-area-inset-bottom) + 70px))}.coordinates,.cursor-dot{display:none}body,button,input,.room-link{cursor:auto}h1,h2{font-size:1.2rem;line-height:1.16}.entry,.inside{width:min(100%,320px);transform:none}.tag{margin-bottom:12px;font-size:.62rem}.subline,.inside p:not(.tag){max-width:270px;margin-top:10px;font-size:.76rem;line-height:1.45}.password-form{width:min(100%,286px);margin-top:22px}.password-form label{max-width:230px;margin:0 auto 10px;font-size:.6rem;line-height:1.35}.password-row{grid-template-columns:1fr;min-height:0;background:#0305067a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}input{min-height:43px;text-align:center}button{min-height:40px;border-top:1px solid var(--line);border-left:0}.note{margin-top:10px;font-size:.7rem}.music-player{bottom:max(12px,env(safe-area-inset-bottom));gap:7px;opacity:.64}.music-title{font-size:.6rem}.music-controls{gap:8px}.music-button{width:42px;min-width:42px;min-height:32px;border-top:0;padding:7px 5px 8px;font-size:.6rem}.music-toggle{width:48px;min-width:48px}.room-map{opacity:.62}.room-link{top:var(--mobile-top);left:var(--mobile-left);right:auto;bottom:auto;min-height:20px;border-color:#2de6ff12;padding:0 6px;background:#0305061f;color:#d8fbff30;pointer-events:none;font-size:.5rem;transform:none}}@media(max-width:380px){.entry-screen{padding-right:16px;padding-left:16px}h1,h2{font-size:1.12rem}.password-form{width:min(100%,270px)}}@media(max-height:640px)and (max-width:700px){.entry-screen{padding-top:16px}.password-form{margin-top:18px}.room-map{opacity:.48}.room-link{min-height:18px;padding:0 5px;font-size:.48rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.entry,.inside,.room-link{transform:none!important}.intro-title,.intro-enter{animation:none!important;opacity:1;transform:none;visibility:visible}.entry-screen{transition:none}}
