:root{color:#c8c2b8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#07080a;font-family:Yu Mincho,Hiragino Mincho ProN,Noto Serif JP,serif}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;min-width:0;height:100%;margin:0}body{overscroll-behavior:none}button,input{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;min-width:56px;min-height:56px;padding:12px 16px}button:disabled{opacity:.3;cursor:default}button:focus-visible,input:focus-visible{outline-offset:-3px;outline:1px solid #c8c2b8}button:active:not(:disabled){color:#eee8dc}input{min-width:0;max-width:100%;font-size:16px}img,canvas{max-width:100%;display:block}img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}h1,h2,p{margin:0}h2{letter-spacing:.14em;font-size:15px;font-weight:400}p{overflow-wrap:anywhere;line-height:1.9}.screen{isolation:isolate;width:100%;height:100dvh;min-height:0;position:relative}.scene-image{object-fit:cover;filter:blur(.3px);width:100%;height:100%;position:absolute;inset:0}.quiet{color:#8c877f;font-size:12px}@media (hover:hover){button:hover:not(:disabled){color:#eee8dc;background-color:#c8c2b808}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.room-layout{grid-template-rows:auto minmax(0,1fr) auto;height:100%;display:grid}.top-bar{min-width:0;min-height:44px;padding:calc(12px + env(safe-area-inset-top,0px)) max(20px, env(safe-area-inset-right,0px)) 12px max(20px, env(safe-area-inset-left,0px));text-align:center;letter-spacing:.25em;color:#aaa49a;background:#07080a;font-size:11px}.objective{color:#8f897f;letter-spacing:.04em;white-space:normal;overflow-wrap:anywhere;margin-top:4px;font-size:11px}.bottom-bar{padding:4px env(safe-area-inset-right,0px) calc(4px + env(safe-area-inset-bottom,0px)) env(safe-area-inset-left,0px);letter-spacing:.12em;background:#07080a;grid-template-columns:repeat(3,minmax(0,1fr));font-size:12px;display:grid;position:relative}.room-stage{isolation:isolate;min-width:0;min-height:0;position:relative}.room-canvas,.room-canvas canvas,.hotspots{width:100%;height:100%;position:absolute;inset:0}.room-canvas canvas{filter:blur(.3px);touch-action:none}.room-canvas canvas[hidden]{display:none}.room-canvas img{touch-action:none}.lights-off{opacity:.18}.mirror-tint:after{content:"";pointer-events:none;mix-blend-mode:color;opacity:.13;background:#7a2b2b;position:absolute;inset:0}.hotspots{pointer-events:none}.hotspot,.keyboard-target{opacity:0;pointer-events:auto;touch-action:none;background:radial-gradient(circle,#c8c2b818,#0000 70%);border:0;border-radius:50%;width:64px;min-width:56px;height:64px;min-height:56px;padding:0;position:absolute;transform:translate(-50%,-50%)}.hotspot{width:56px;height:56px}.hotspot.unvisited{opacity:1;background:radial-gradient(circle,#efe8d9b3 0%,#c8c2b845 42%,#0000 72%);animation:2.4s ease-in-out infinite hotspot-breathe;box-shadow:0 0 16px #c8c2b82e}@keyframes hotspot-breathe{0%,to{opacity:.45}50%{opacity:1}}.hotspot.glowing,.hotspot:focus-visible{opacity:1}.keyboard-target{pointer-events:none}.keyboard-target:focus-visible{opacity:1}@media (hover:hover) and (pointer:fine){.hotspot:hover{opacity:.45;cursor:pointer;background:radial-gradient(circle,#c8c2b81c,#0000 70%)}}.hold-ring{pointer-events:none;z-index:4;width:56px;height:56px;position:absolute;transform:translate(-50%,-50%)rotate(-90deg)}.hold-ring circle{fill:#07080a22;stroke:#c8c2b8aa;stroke-width:1.5px;stroke-dasharray:1;stroke-dashoffset:1px;animation:linear forwards hold-close;animation-duration:inherit}@keyframes hold-close{to{stroke-dashoffset:0}}.view-arrow{z-index:2;color:#c8c2b8a8;padding:4px;font-size:30px;position:absolute;top:0}.previous{left:env(safe-area-inset-left,0px)}.next{right:env(safe-area-inset-right,0px)}.room-caption{pointer-events:none;text-align:center;background:linear-gradient(#0000,#07080ac9);width:100%;padding:32px 24px 20px;font-size:13px;position:absolute;bottom:0;left:0}.room-caption p:empty{display:none}.ringing{color:#b9ada0;margin-bottom:8px}.selected-item{pointer-events:auto;padding:8px;font-size:12px}.hint-button{color:#8c877f}.hint-available{animation:3s ease-in-out infinite hint-breathe}@keyframes hint-breathe{50%{color:#c8c2b8;opacity:.55}}.glitching>button{color:#0000}.bar-glitch{pointer-events:none;letter-spacing:2em;place-items:center;display:grid;position:absolute;inset:0}.effects{pointer-events:none;z-index:50;position:fixed;inset:0}.grain,.vignette,.blackout{position:absolute;inset:0}.grain{opacity:var(--grain-opacity,.12);mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.94' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23grain)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");background-size:180px 180px;animation:.35s steps(2,end) infinite grain-shift}@keyframes grain-shift{50%{background-position:31px -17px,-11px 43px}}.vignette{background:radial-gradient(#0000 26%,#07080a4d 75%,#07080ab0)}.blackout{background:#07080a}.scanlines:after{content:"";z-index:2;pointer-events:none;opacity:.35;background:repeating-linear-gradient(0deg,#0007 0 1px,#0000 1px 4px);position:absolute;inset:0}.tv-feed{position:relative}.tv-feed.scanlines:after,.strong-scan:after{opacity:.85}.title-screen{padding:env(safe-area-inset-top,0px) 24px env(safe-area-inset-bottom,0px);place-items:center;display:grid}.title-image{opacity:.24}.title-screen:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(#07080a44,#0000 40%,#07080a);position:absolute;inset:0}.title-content{z-index:2;text-align:center;width:100%;max-width:400px;position:relative}.eyebrow{letter-spacing:.22em;color:#9b958c;margin-bottom:26px;font-size:10px}.title-content h1{letter-spacing:.1em;text-indent:.1em;font-size:clamp(72px,22vw,104px);font-weight:400;line-height:1}.title-content h1 span{letter-spacing:.6em;text-indent:.6em;margin-bottom:15px;font-size:19px;display:block}.title-caption{letter-spacing:.18em;margin-top:25px;font-size:12px}.title-actions{gap:3px;width:min(220px,100%);margin:35px auto 12px;font-size:14px;display:grid}.clear-record{letter-spacing:.16em;color:#8c7875;font:10px monospace}.title-message{color:#9b958c;margin-top:8px;font-size:11px}.title-footnote{bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:2;letter-spacing:.12em;font-size:10px;position:absolute}.ending{background:#07080a}.ending-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.monitor-text{color:#83a58b;text-shadow:0 0 8px #4e805c40;font-family:Courier New,monospace}.lock-message{letter-spacing:.05em;font-size:clamp(14px,4vw,20px)}.ending-result{color:#918e84;margin-top:24px;font-size:12px}.ending-scan,.ending-advance{width:100%;height:100%;position:absolute;inset:0}.ending-advance{z-index:3;padding:0}.ending-advance:hover:not(:disabled){background:0 0}.camera-label{right:max(20px, env(safe-area-inset-right,0px));top:calc(20px + env(safe-area-inset-top,0px));font:11px monospace;position:absolute}.monitor-overlay{padding:calc(60px + env(safe-area-inset-top,0px)) 20px;background:linear-gradient(#07080adb,#07080a33 70%);position:absolute;inset:0}.monitor-overlay p{white-space:pre-wrap;overflow-wrap:normal;font-size:clamp(11px,3.1vw,17px);line-height:2.4}.ending-2 .ending-image,.ending-3 .ending-image{object-fit:contain}.ending-3 .ending-image{opacity:.12}.city-lights{opacity:.5;filter:blur(2px);background:radial-gradient(at 10% 60%,#b4a278 0 1%,#0000 3%),radial-gradient(at 70% 65%,#cfb58b 0 1%,#0000 3%),radial-gradient(at 33% 70%,#baa882 0 1%,#0000 4%),radial-gradient(at 85% 45%,#d4bf8c 0 1%,#0000 3%),linear-gradient(#0000 65%,#8f816c1a 80%,#0000 95%);height:16%;position:absolute;top:38%;left:20%;right:20%}.ending-bottom{bottom:calc(60px + env(safe-area-inset-bottom,0px));text-align:center;width:100%;position:absolute}.incoming-phone{max-width:430px;padding:calc(20px + env(safe-area-inset-top,0px)) 28px calc(30px + env(safe-area-inset-bottom,0px));background:linear-gradient(155deg,#252a32,#10141c 55%,#090d13);flex-direction:column;align-items:center;margin:auto;font-family:sans-serif;display:flex;position:absolute;inset:0}.phone-status{justify-content:space-between;width:100%;font-size:12px;display:flex}.phone-clock{letter-spacing:-.04em;margin-top:32px;font-size:clamp(40px,14vw,62px);font-weight:200}.phone-owner{color:#9499a2;margin-top:22px;font-size:13px}.caller-symbol{background:#c8c2b80b;border-radius:50%;place-items:center;width:72px;height:72px;margin:22px 0;font-size:28px;display:grid}.caller-name{text-align:center;font-size:17px}.call-actions{justify-content:space-between;gap:40px;width:min(260px,100%);margin-top:auto;padding-top:32px;display:flex}.call-actions button{border-radius:50%;width:72px;height:72px;font-size:14px}.decline{background:#7a2b2b}.answer{background:#354d41}.final-voice{letter-spacing:.05em;font-size:15px}.final-title h1{letter-spacing:.14em;font-size:clamp(32px,10vw,56px);font-weight:400}.bad-end{color:#7a2b2b;letter-spacing:.4em;margin-top:24px;font:13px monospace}.checkout{letter-spacing:.3em;margin-top:12px;font:11px monospace}.final-title button{margin-top:60px;font-size:12px}@media (prefers-reduced-motion:reduce){.hotspot.unvisited{animation:none}.hold-ring circle{stroke-dashoffset:0}}@media (height<=540px){.title-content h1{font-size:60px}.eyebrow,.title-caption{margin:8px 0}.title-actions{gap:0;margin:12px auto}.title-footnote{display:none}.phone-clock{margin-top:10px;font-size:36px}.caller-symbol{width:56px;height:56px;margin:8px}.phone-owner{margin-top:8px}}.modal,.sheet-backdrop{z-index:10;min-width:0;position:absolute;inset:0}.modal{background:#07080a;grid-template-rows:auto minmax(0,1fr) auto;display:grid}.modal:focus,.sheet:focus{outline:none}.modal-header{padding:env(safe-area-inset-top,0px) max(12px, env(safe-area-inset-right,0px)) 0 max(24px, env(safe-area-inset-left,0px));justify-content:space-between;align-items:center;gap:12px;display:flex}.modal-header h2{overflow-wrap:anywhere;min-width:0}.modal-header button{color:#9b958c;flex-shrink:0;font-size:12px}.inspect-content{overscroll-behavior:contain;scrollbar-width:thin;min-width:0;min-height:0;overflow-y:auto}.inspect-body{width:100%;max-width:720px;margin:auto;padding-bottom:16px}.inspection-image{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;position:relative}.inspection-image img{object-fit:cover;filter:blur(.3px);width:100%;height:100%}.inspection-image.glowing:after{content:"";pointer-events:none;background:radial-gradient(#c8c2b809,#0000 70%);position:absolute;inset:0}.description{color:#b0aa9f;padding:20px 24px 8px;font-size:13px}.interaction-note{color:#837e76;padding:0 24px 12px;font-size:11px}.inspect-message{padding:12px max(24px, env(safe-area-inset-right,0px)) calc(18px + env(safe-area-inset-bottom,0px)) max(24px, env(safe-area-inset-left,0px));background:#101113;min-height:80px;font-size:13px}.actions{flex-wrap:wrap;gap:4px 12px;padding:8px 16px;font-size:13px;display:flex}.actions button{text-align:left;max-width:100%}.difference-found{pointer-events:none;background:#b9b09a7a;border-radius:50%;width:8px;height:8px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 12px #c8c2b840}.phone-rooms{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px 24px;display:grid}.phone-rooms button{background:#c8c2b805;justify-content:space-between;align-items:center;gap:10px;font:19px monospace;display:flex}.phone-rooms small{color:#817c74;font:10px serif}.keypad{isolation:isolate;width:100%;min-height:360px;padding:24px;position:relative}.keypad>img{opacity:.35;z-index:-1}.keypad-panel{background:#07080ac9;width:min(272px,100%);margin:auto;padding:16px}.keypad-panel label{text-align:center;margin-bottom:12px;font-size:11px;display:block}.keypad-panel input{text-align:center;letter-spacing:.5em;background:#c8c2b809;border:0;border-radius:0;width:100%;height:56px;margin-bottom:12px;font-family:monospace;display:block}.keypad-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.keypad-grid button{background:#c8c2b808;padding:8px;font-family:monospace}.sheet-backdrop{background:#07080aaa;align-items:flex-end;display:flex}.sheet{background:#101113;flex-direction:column;width:100%;min-width:0;max-width:680px;max-height:92%;margin:0 auto;display:flex}.inventory{animation:.25s ease-out slide-up}@keyframes slide-up{0%{opacity:.5;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}.sheet-content{overscroll-behavior:contain;min-height:0;padding:8px max(24px, env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(24px, env(safe-area-inset-left,0px));overflow-y:auto}.inventory-item{align-items:center;gap:8px;display:flex}.inventory-item .item-read{text-align:left;flex:1;min-width:0;padding-left:0;font-size:13px}.item-read small{color:#817c74;margin-top:6px;font-size:10px;display:block}.inventory-item>button:last-child{color:#9b958c;font-size:12px}.inventory .description,.pause-menu .description{padding:12px 0 0}.menu-actions{flex-direction:column;align-items:stretch;display:flex}.menu-actions>button{font-size:13px}.reset-confirm p{margin:12px 0;font-size:13px}.reset-confirm button{width:100%;display:block}.danger{color:#bd8983}@media (width>=760px){.inspect-content{align-items:safe center;display:flex}.inspect-body{max-width:min(720px,80%)}.inspect-message{text-align:center}.sheet-backdrop{align-items:center}.sheet{max-width:480px}}
