*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#0b0c10}#c{display:block;width:100%;height:100%;cursor:pointer}#overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0b0c108c,#0b0c10e0);pointer-events:none}#overlay.hidden{display:none}.panel{pointer-events:none;color:#e8f6f4;font-family:Segoe UI,system-ui,sans-serif;text-align:center;padding:28px 36px;background:#0b0c10d1;border:1px solid #66FCF1;box-shadow:0 0 24px #66fcf12e,0 0 40px #ff2d951f;max-width:460px}.panel h1{font-weight:600;letter-spacing:.16em;text-transform:uppercase;font-size:22px;color:#66fcf1}.panel .sub{margin:8px 0 16px;color:#ff3cad;letter-spacing:.08em;font-size:13px}.panel p{line-height:1.5;color:#c5d0ce;font-size:14px}.panel ul{list-style:none;margin:16px 0;color:#e8f6f4;font-size:14px}.panel li{margin:6px 0}kbd{display:inline-block;min-width:1.4em;padding:1px 6px;border:1px solid #66FCF1;color:#66fcf1;border-radius:3px;font-size:12px}.cta{margin-top:8px;color:#66fcf1;letter-spacing:.12em;text-transform:uppercase;font-size:12px}#hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:5}#hud.hidden{display:none}#crosshair{position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border:1px solid rgba(102,252,241,.7);border-radius:50%}#place{position:absolute;top:18px;left:50%;transform:translate(-50%);color:#66fcf1;font-family:Segoe UI,system-ui,sans-serif;letter-spacing:.22em;text-transform:uppercase;font-size:12px;text-shadow:0 0 12px rgba(11,12,16,.9)}#hint{position:absolute;bottom:18px;left:50%;transform:translate(-50%);color:#c8dcdabf;font-family:Segoe UI,system-ui,sans-serif;font-size:12px;letter-spacing:.06em}#crew{position:absolute;top:14px;right:14px;display:flex;gap:6px}.mate{display:flex;flex-direction:column;align-items:center;opacity:.55;font:10px Segoe UI,sans-serif;color:#c5d0ce}.mate img{width:40px;height:40px;border-radius:50%;border:1px solid #66FCF1;object-fit:cover}.mate.here{opacity:1;color:#66fcf1}.mate.here img{box-shadow:0 0 10px #66fcf1}#tour{position:absolute;bottom:54px;left:50%;transform:translate(-50%);max-width:70%;text-align:center;color:#fff;font:16px Segoe UI,sans-serif;text-shadow:0 0 8px #000}html,body{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:fixed}.touch-help,.touch-only{display:none}body.touch .touch-help{display:block;margin-top:10px;color:#66fcf1;font-size:13px}body.touch .touch-only{display:block}body.touch .desk,body.touch .panel ul{display:none}body.touch #overlay{pointer-events:none}#touch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;touch-action:none}#t-look{position:absolute;top:0;right:0;width:55%;height:100%}#t-stick{position:absolute;left:calc(24px + env(safe-area-inset-left));bottom:calc(28px + env(safe-area-inset-bottom));width:130px;height:130px;border-radius:50%;border:2px solid rgba(102,252,241,.55);background:#0b0c1059}#t-knob{position:absolute;left:50%;top:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:#66fcf173;box-shadow:0 0 12px #66fcf180;pointer-events:none}#t-btns{position:absolute;right:calc(20px + env(safe-area-inset-right));bottom:calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px;align-items:flex-end}#t-btns button{width:66px;height:66px;border-radius:50%;border:2px solid #66FCF1;background:#0b0c108c;color:#66fcf1;font:600 14px Segoe UI,system-ui,sans-serif;letter-spacing:.06em;touch-action:none}#t-btns button.on{background:#ff3cad8c;border-color:#ff3cad;color:#fff}#t-use{width:78px!important;height:78px!important;font-size:20px!important}body.touch #hint{bottom:auto;top:44px;font-size:13px;text-align:center;width:90%}body.touch #tour{bottom:180px;font-size:14px;max-width:86%}body.touch #crosshair{width:10px;height:10px;margin:-5px 0 0 -5px}@media (max-width: 700px){#crew{top:50%;bottom:auto;transform:translateY(-60%);left:10px;right:auto;flex-direction:column;gap:4px}.mate img{width:28px;height:28px}.mate span{display:none}#place{top:14px;font-size:13px}.panel{padding:18px 20px;margin:0 14px}.panel h1{font-size:18px}}
