:root{font-family:ui-sans-serif,system-ui,sans-serif;color:#eee9dd;background:#091316;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}canvas{display:block}button{font:inherit;cursor:pointer;color:inherit}#hud{position:fixed;inset:0;pointer-events:none;padding:28px 34px;background:radial-gradient(ellipse,transparent 45%,#0008)}.top{display:flex;justify-content:space-between;align-items:start}.label{font-size:11px;letter-spacing:3px;color:#bbd7d4}.title{font-size:23px;margin-top:7px}.pill{padding:12px 17px;border:1px solid #bbd7d433;border-radius:50px;background:#06101699;font-size:13px}#cross{position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:#fff9;box-shadow:0 0 8px #fff5}#prompt{position:absolute;top:57%;width:calc(100% - 68px);text-align:center;color:#f2d991;font-size:16px}#hint{position:absolute;bottom:34px;left:34px;font-size:12px;color:#acc3c4;line-height:1.9}.overlay{position:fixed;inset:0;display:grid;place-items:center;background:linear-gradient(90deg,#041015e8,#04101580 65%,#04101533);padding:28px}.card{width:min(620px,100%);margin-right:25vw}.eyebrow{font-size:11px;letter-spacing:4px;color:#e3bc73}h1{font-size:clamp(45px,7vw,88px);line-height:1.02;font-weight:500;letter-spacing:-3px;margin:26px 0}p{max-width:420px;color:#c1d1d0;line-height:1.7;font-size:16px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}button{border:1px solid #adc8c433;background:#0d232acc;border-radius:9px;padding:14px 22px}button.primary{background:#eed6a4;color:#172025;border-color:transparent}button:hover{filter:brightness(1.15)}.foot{font-size:11px;margin-top:28px;color:#94aaa9;letter-spacing:1px}#sound{position:fixed;right:28px;bottom:28px;font-size:12px;z-index:3}#status{position:fixed;bottom:87px;left:34px;color:#f1d39a;font-size:14px;pointer-events:none}.hidden{display:none!important}@media(max-width:700px){.card{margin:0}#hud{padding:20px}h1{letter-spacing:-2px}#hint{left:20px;bottom:20px;max-width:65%}.title{font-size:18px}}#place{font-size:12px;color:#b5ccca;margin-top:9px}.pill{line-height:1.8}.pill small{color:#e5c895}#modes{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}#modes button{font-size:13px;padding:10px 15px}#modes button[aria-pressed=true]{background:#8aa5a0;color:#10282b;border-color:#b4ccc5}#mode-info{font-size:12px;color:#c9bc9d;margin-top:10px}.card{width:min(670px,100%)}h1{font-size:clamp(42px,6vw,76px);margin:20px 0}.overlay{overflow:auto}.foot{line-height:1.6}#status{bottom:130px;max-width:calc(100% - 80px);line-height:1.5}.atmosphere-settings{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.atmosphere-settings button{font-size:12px;padding:9px 13px}.volume{display:flex;gap:12px;align-items:center;margin-top:16px;font-size:12px;color:#c8d7d1}.volume input{accent-color:#e7ca92;width:150px}#director{max-width:440px;margin-top:16px;font-size:13px;color:#b9cdca}#director summary{cursor:pointer}#director label{display:flex;align-items:center;gap:10px;justify-content:space-between;margin:12px 0}select{background:#153038;color:#e4e4d8;padding:8px;border:1px solid #93b3ac66;border-radius:6px}#director button{padding:9px 14px;font-size:12px}#mobile-controls{display:none}body,canvas{touch-action:none;overscroll-behavior:none}.overlay{touch-action:pan-y}button{touch-action:manipulation}.touch #mobile-controls{display:block;position:fixed;inset:0;pointer-events:none;z-index:2}.touch:has(#menu:not(.hidden)) #mobile-controls{display:none}.touch #hint{display:none}.touch #sound{top:calc(env(safe-area-inset-top,0px) + 80px);bottom:auto;right:16px;padding:8px 12px}.touch #hud{padding:calc(env(safe-area-inset-top,0px) + 12px) 16px}.touch .label{font-size:9px;letter-spacing:1px}.touch .title{font-size:18px}.touch #place{max-width:55vw;font-size:10px}.touch .pill{font-size:11px;padding:8px 12px}.touch #prompt{top:auto;bottom:180px;left:15%;width:70%;font-size:14px}.touch #status{left:20px;bottom:155px;max-width:80vw;font-size:12px}#joystick{position:absolute;bottom:calc(env(safe-area-inset-bottom,0px) + 22px);left:calc(env(safe-area-inset-left,0px) + 25px);width:125px;height:125px;border-radius:50%;background:#17313899;border:1px solid #c3d2c555;pointer-events:auto;touch-action:none}#stick{position:absolute;top:50%;left:50%;width:50px;height:50px;transform:translate(-50%,-50%);border-radius:50%;background:#c4cdbc88;border:1px solid #e6e4c2aa}.touch-actions{position:absolute;right:calc(env(safe-area-inset-right,0px) + 16px);bottom:calc(env(safe-area-inset-bottom,0px) + 18px);display:grid;grid-template-columns:repeat(2,auto);gap:8px;pointer-events:auto}.touch-actions button{padding:14px 12px;min-height:48px;font-size:12px;background:#15323ce6;touch-action:none}#touch-pause{position:absolute;right:16px;top:calc(env(safe-area-inset-top,0px) + 125px);pointer-events:auto;font-size:12px;padding:8px 12px}.touch-look-hint{position:absolute;right:25px;bottom:135px;font-size:10px;color:#b4c4c2}.touch .card{margin:0 auto;max-width:550px}.touch .overlay{padding:24px;align-items:start}.touch h1{font-size:44px;margin:18px 0}.touch .card p{font-size:13px;line-height:1.5}.touch .actions,.touch .foot{margin-top:16px}.touch #mode-info{font-size:11px}@media(orientation:landscape)and (max-height:500px){.touch #prompt{bottom:150px}.touch #sound{top:80px}.touch #touch-pause{top:122px}.touch #status{bottom:145px}.touch #joystick{width:110px;height:110px;bottom:16px}.touch .overlay{padding:16px 8vw}.touch h1{font-size:36px}.touch .card{max-width:700px}.touch #modes{margin-top:12px}}#station-panel{position:fixed;inset:0;z-index:10;display:grid;place-items:end center;padding:24px;background:#06151988;touch-action:manipulation}.station-card{width:min(760px,100%);background:#0c2026ed;border:1px solid #bbceb855;padding:20px;border-radius:16px;color:#e8dfc9}#station-panel h2{font-weight:500;font-size:24px;margin:8px 0}#station-close{float:right;font-size:12px;padding:9px 13px}#piano-keys{display:flex;gap:4px;margin:22px 0 12px}#piano-keys button{background:#eee6d1;color:#203237;flex:1;min-width:0;padding:30px 0 16px;border-radius:0 0 7px 7px}#piano-keys button span{display:block;font-size:11px;margin-top:14px}#piano-keys button.pressed{background:#d1b47b;transform:translateY(5px)}#last-note{font-size:12px;color:#cabf9f}#feed-buttons{display:flex;gap:7px;flex-wrap:wrap}#station-panel.cctv{background:linear-gradient(transparent 50%,#081719dd);pointer-events:none}#station-panel.cctv .station-card{pointer-events:auto}#camera-message{font-size:15px;color:#e5ba8a;min-height:25px}.station:not(.camera-station) #mobile-controls,.station #sound,.station #prompt,.station #hint{display:none!important}.swimming #hud{box-shadow:inset 0 -45px 90px #2b9ab73b}@media(max-width:700px){#station-panel{padding:10px}.station-card{padding:14px}#piano-keys button{padding:24px 0 12px}#piano-keys{gap:2px}#station-close{font-size:10px}#station-panel p{font-size:12px}}@media(max-height:500px){#station-panel{padding:10px}.station-card{padding:12px}#piano-keys{margin:12px 0 8px}#piano-keys button{padding:15px 0 8px}#station-panel p{margin:8px 0;font-size:12px}}#feed-buttons{max-height:150px;overflow-y:auto}#feed-buttons button{padding:8px 10px;font-size:12px}#feed-buttons button[aria-pressed=true]{background:#adbd98;color:#10252a}@media(max-height:500px){#feed-buttons{max-height:88px}#cctv-panel h2{font-size:18px}#camera-message{min-height:18px;margin:6px 0}}#monitor-banner{position:absolute;top:18px;left:50%;transform:translate(-50%);padding:10px 18px;background:#07181ef2;border:1px solid #9cbdbb66;border-radius:9px;font-size:12px;text-align:center;max-width:90%;width:max-content}.camera-station #station-panel{box-shadow:inset 0 0 0 10px #03090d}.camera-station #station-close{background:#eed6a4;color:#172025;font-weight:600}.touch.camera-station .touch-actions,.touch.camera-station .touch-look-hint{display:none}.touch.camera-station .station-card{width:calc(100% - 150px);margin-left:150px}.touch.camera-station #monitor-banner{top:10px;font-size:10px;max-width:66%}@media(max-width:500px){.touch.camera-station .station-card{width:100%;margin:0}.touch.camera-station #station-panel{padding-bottom:160px}.touch.camera-station #feed-buttons{max-height:95px}}.touch #touch-use{grid-column:1 / -1;background:#eed6a4;color:#172025;border-color:transparent;font-size:15px;min-height:50px;max-width:220px}.touch button:disabled{opacity:.5;cursor:default}.touch #touch-use:disabled{background:#17313d;color:#bbccce;border:1px solid #adc8c455}.touch .touch-actions{width:220px;grid-template-columns:1fr 1fr}.touch .touch-actions button{min-height:44px;padding:11px 8px}.touch #prompt{bottom:200px}.touch .touch-look-hint{bottom:190px}.touch #status{bottom:215px}.station-toolbar{display:flex;gap:8px;justify-content:flex-end;position:sticky;top:0;z-index:1;background:#0c2026;padding-bottom:10px}#station-close{float:none;background:#eed6a4;color:#172025}#station-pause{font-size:12px;padding:10px 14px}.station-card{max-height:calc(100dvh - 60px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:auto;touch-action:pan-y;overscroll-behavior:contain}.touch #station-close,.touch #station-pause{min-height:44px;font-size:13px;padding:10px 14px}.touch #feed-buttons button{min-height:44px;font-size:12px}.touch #feed-buttons{max-height:140px;touch-action:pan-y;overscroll-behavior:contain}.touch.station #touch-pause{display:none}.touch #station-panel{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));padding-right:calc(10px + env(safe-area-inset-right,0px));padding-left:calc(10px + env(safe-area-inset-left,0px))}.touch .station-card p{font-size:12px;line-height:1.5}.touch #camera-message:empty{display:none}.touch #piano-keys button{min-width:44px;min-height:64px}.touch #piano-keys{overflow-x:auto;touch-action:pan-x;padding-bottom:6px}.touch #piano-keys button span{margin-top:8px}.touch.camera-station .station-card{max-height:calc(100dvh - 65px)}.touch.camera-station #station-panel{pointer-events:none}.touch.camera-station .station-card{pointer-events:auto}@media(orientation:portrait){.touch #piano-keys{display:grid;grid-template-columns:repeat(5,minmax(44px,1fr));overflow:visible}.touch.camera-station #station-panel{padding-bottom:165px}.touch.camera-station .station-card{max-height:calc(100dvh - 220px);width:100%;margin:0}.touch #station-panel:not(.cctv){padding-bottom:20px}.touch .touch-actions{width:190px}.touch #touch-use{font-size:14px}.touch #prompt{left:15px;width:calc(100% - 30px);bottom:205px}.touch .top .title{font-size:16px}}@media(orientation:landscape)and (max-height:450px){.touch #station-panel{padding-top:48px}.touch .station-card{padding:10px}.touch #station-panel h2{font-size:18px;margin:4px 0}.touch #station-panel p{margin:6px 0}.touch #feed-buttons{max-height:100px}.touch #monitor-banner{font-size:9px;padding:7px 12px}.touch #station-close,.touch #station-pause{min-height:44px}.touch .touch-actions{width:210px;bottom:calc(10px + env(safe-area-inset-bottom,0px))}.touch #prompt{bottom:180px}.touch .touch-look-hint{display:none}}#secret-home{pointer-events:auto;display:block;background:none;border:0;padding:0;text-align:left;color:inherit;font-weight:inherit;min-height:36px}.touch #secret-home{min-height:44px}#cheat-panel{z-index:40;background:#061015d9}#cheat-panel .card{margin:0;max-width:560px;background:#11272d;padding:24px;border:1px solid #8ca7a866;border-radius:14px;max-height:calc(100dvh - 30px);overflow:auto}#cheat-panel input{display:block;width:100%;font:inherit;padding:14px;background:#06171c;color:#f0e6cc;border:1px solid #b0c9c5;border-radius:8px;margin-top:8px}#cheat-panel button{min-height:44px}#cheat-message{font-size:13px;min-height:24px}#cheat-disable{margin-top:18px}.cheat-open #mobile-controls,.cheat-open #sound{display:none!important}.touch #cheat-panel{padding:12px;align-items:center}.touch #cheat-panel .card{padding:18px}.touch #cheat-panel h2{font-size:22px;margin:0 0 12px}.touch #cheat-panel p{font-size:13px}.touch #cheat-panel .actions{margin-top:14px}#secret-badge{font-size:10px;color:#edc294}#secret-menu{font-size:12px;padding:9px 13px;margin-top:12px}#cheat-panel .card{display:flex;flex-direction:column;width:min(680px,100%);overflow:hidden}#cheat-panel .cheat-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}#cheat-panel .actions{flex-shrink:0;margin-top:12px;gap:8px}#cheat-panel .actions button{padding:10px 16px}#cheat-panel .cheat-entry label{font-size:13px}#cheat-panel input{font-size:22px;letter-spacing:4px;margin:7px 0 10px;padding:10px 14px}#cheat-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}#cheat-keypad button{min-height:44px;padding:8px;font-size:18px}#cheat-keypad button[data-code-key=clear]{font-size:11px}#cheat-panel #cheat-message{font-size:12px;line-height:1.4;min-height:18px;margin:10px 0 0}#cheat-panel #cheat-disable{margin-top:0}#cheat-panel h2{margin:0 0 10px}.touch #cheat-panel .cheat-description{font-size:12px;line-height:1.5}.touch #cheat-panel .card{max-height:calc(100dvh - 24px)}@media(orientation:landscape)and (max-height:550px){#cheat-panel .cheat-body{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}#cheat-keypad{grid-template-columns:repeat(6,1fr);gap:5px}#cheat-panel .cheat-description{margin:0}#cheat-panel .card{padding:14px}#cheat-panel .actions{justify-content:flex-end}#cheat-panel input{margin-bottom:6px}#cheat-panel #cheat-message{margin-top:6px}}#storm-hud{position:fixed;top:110px;left:50%;transform:translate(-50%);z-index:5;display:flex;align-items:center;gap:12px;max-width:90vw;width:max-content;padding:10px 16px;border:1px solid #e7d09077;border-radius:12px;background:#182b2de8;color:#f6e1b5;font-size:14px;pointer-events:none}#shelter-arrow{display:block;font-size:30px;line-height:1;flex-shrink:0}#storm-message{max-width:330px}.touch #storm-hud{top:95px;font-size:12px;padding:8px 12px;max-width:85vw}.cheat-open #storm-hud,html:has(#menu:not(.hidden)) #storm-hud{display:none}
