.lobby-screen{position:relative;z-index:2;padding:70px 5%;display:grid;grid-template-columns:1fr 1fr;gap:10%;max-width:1450px;margin:auto}.lobby-intro h1{font-size:clamp(55px,6vw,86px)}.room-invite{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:34px 0 15px;display:flex;align-items:center;justify-content:space-between;gap:15px}.room-invite strong{display:block;font-size:33px;letter-spacing:5px;font-weight:500;margin-top:9px}.roster-panel .panel-top{margin-bottom:10px}.roster-panel h2{font-size:23px}.roster-row{display:flex;gap:13px;align-items:center;padding:12px 0;border-bottom:1px solid #ffffff12;min-height:51px;font-size:13px}.roster-row .avatar{width:28px;height:28px;display:grid;place-items:center;font:12px Consolas,monospace;border:1px solid currentColor;border-radius:50%;background:#ffffff06}.roster-row .row-tag{margin-left:auto;font:8px Consolas,monospace;letter-spacing:1px;color:#8e9f82}.roster-row.empty{color:#68765d}.lobby-hint{font-size:12px;line-height:1.6;color:#b8c4ac;margin:23px 0 16px}.hud-top,.hud-bottom{position:fixed;left:35px;right:35px;z-index:4;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.hud-top{top:25px;text-shadow:0 2px 8px #000}.hud-sector{display:flex;flex-direction:column;gap:8px;width:35%;font-size:11px;letter-spacing:1px}.hud-clock{text-align:center}.hud-clock strong{display:block;font-family:Consolas,monospace;font-size:35px;letter-spacing:2px;margin-top:5px}.hud-terminals{display:flex;gap:7px;justify-content:flex-end;width:35%}.terminal-badge{width:35px;height:35px;display:grid;place-items:center;border:1px solid #adba9380;background:#0a110cd9;color:#99a18d;font-family:Consolas,monospace}.terminal-badge.active{background:var(--accent);border-color:var(--accent);color:#1c2614}.hud-bottom{bottom:27px;align-items:flex-end}.identity{width:170px;text-shadow:0 1px 5px #000}.identity strong{display:block;font-size:18px;margin:4px 0 13px}.identity .tiny{font-size:8px}.stamina-track{height:3px;background:#cedaab30;margin-bottom:7px}.stamina-track>div{height:100%;width:100%;background:var(--accent)}.control-hints{display:flex;gap:19px;font-size:9px;color:#c8d0bf;text-shadow:0 1px 5px #000}.control-hints span{display:flex;align-items:center;gap:7px}kbd,.keycap{font-family:inherit;font-size:9px;padding:5px 7px;border:1px solid #dfe9c773;background:#0a100ade;border-radius:2px;color:#eff6de}.crosshair{position:fixed;top:50%;left:50%;width:5px;height:5px;margin:-2px;background:#eff4ddd9;border-radius:50%;box-shadow:0 0 5px #000;z-index:3}.interaction{position:fixed;z-index:4;bottom:20%;left:50%;transform:translate(-50%);background:#0e170edd;border:1px solid #74886180;padding:15px 20px;min-width:270px;text-align:center;color:#e6efd9;font-size:12px}.interaction .keycap{margin-right:12px;font-size:12px}.action-track{height:3px;background:#ffffff20;margin:15px -20px -15px}.action-track>div{height:100%;background:var(--accent);width:0}.game-banner{position:fixed;top:22%;left:50%;transform:translate(-50%);text-align:center;background:#111b11d9;border-top:1px solid #879a6c;border-bottom:1px solid #879a6c;padding:22px 35px;z-index:5;min-width:350px;font-size:15px;line-height:1.7}.game-banner.danger{border-color:#ff9d83;color:#ffb7a3;background:#271b17e0}.pause-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:7;display:grid;place-items:center;background:#091009b8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.pause-card{background:#162016ee;border:1px solid #6f825554;padding:38px;width:440px;max-width:92vw;text-align:center}.pause-card h2{font-size:32px;margin:17px 0}.pause-card>p:not(.eyebrow):not(.tiny){color:#b0bca3;font-size:13px;line-height:1.8}.pause-card .primary-button{margin:25px 0 10px}.pause-card .tiny{font-size:8px;line-height:1.8;margin-top:15px}.pause-card .text-button{text-align:center}.result-screen{position:relative;z-index:4;max-width:900px;margin:auto;padding:85px 30px;text-align:center}.result-screen h1{font-size:clamp(55px,7vw,100px);color:var(--accent);white-space:pre-line}.result-screen .hero-copy{font-size:18px}.result-actions{display:flex;gap:15px;max-width:470px;margin:35px auto 20px}.result-hunter{color:#d6a992;font-size:13px;padding:14px}.team-panel{position:fixed;right:30px;top:120px;max-width:210px;color:#d2dbbc;font-size:10px;line-height:2;z-index:4;text-shadow:0 1px 6px #000;pointer-events:none}.team-line{display:flex;gap:15px;justify-content:space-between}.team-line span:last-child{font-family:Consolas,monospace;color:#a2b28d;font-size:9px}@media(max-width:900px){.control-hints{gap:8px}.control-hints span:nth-child(3){display:none}.lobby-screen{gap:5%}.room-invite{display:block}.room-invite button{margin-top:15px}}.crosshair,.interaction,.game-banner{pointer-events:none}#game-ui{-webkit-user-select:none;user-select:none}#world{touch-action:none}:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#f1f1e8;background:#101513;font-synthesis:none;--accent: #d5ee9a;--muted: #a0a79e;--line: #ffffff24;--danger: #f5a08e}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.38}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button{transition:background .18s,transform .18s}button:hover:not(:disabled){filter:brightness(1.1)}a{color:inherit;text-decoration:none}[hidden]{display:none!important}#world{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.scene-shade{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0c1310ef,#0b120dc9 44%,#0a100bc4);pointer-events:none}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E");z-index:1}.topbar{position:relative;z-index:3;height:98px;margin:0 5%;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:800;letter-spacing:1.6px}.brand-mark{color:var(--accent);font-size:36px;line-height:1}.edition{color:#7d897b;font-size:10px;letter-spacing:1px;margin-left:12px}.top-actions{display:flex;align-items:center;gap:25px}.connection{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.4px;color:#aab4a3}.connection i,.live-dot{width:6px;height:6px;background:#cce78d;border-radius:50%;display:inline-block}.icon-button{border:1px solid var(--line);width:36px;height:36px;background:transparent;color:#e2e6db;border-radius:50%;font-size:20px}.home-screen{position:relative;z-index:2;max-width:1600px;margin:auto;padding:65px 5% 0;display:grid;grid-template-columns:1.2fr .8fr;gap:6%}.eyebrow,.tiny{font-family:Cascadia Code,Consolas,monospace;font-size:10px;letter-spacing:1.8px;font-weight:500}.eyebrow{color:var(--accent);line-height:1.6}.eyebrow .live-dot{margin-right:8px}.tiny{color:#929e90;font-size:9px}h1{font-size:clamp(56px,6.7vw,104px);line-height:.98;letter-spacing:-4px;font-weight:850;margin:28px 0}h1 span{color:var(--accent)}.hero-copy{color:#b7bdb0;font-size:15px;line-height:1.9}.text-button{background:transparent;border:0;padding:12px 0;color:#d7dfcd;text-align:left;font-size:12px}.text-button span{margin-left:18px;color:var(--accent)}.hero-stats{display:flex;gap:36px;margin:30px 0 10px}.hero-stats span{font-family:Consolas,monospace;display:flex;flex-direction:column;gap:9px;color:#9fa898;font-size:9px;letter-spacing:1px}.hero-stats b{font:500 23px Segoe UI,sans-serif;color:#e3e7d8;letter-spacing:-1px}.entry-panel,.roster-panel{background:#171e17d9;border:1px solid #9fba873b;border-radius:3px;padding:30px;align-self:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 20px 80px #0003}.panel-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.panel-top .eyebrow{font-size:9px}h2{font-size:29px;letter-spacing:-.9px;font-weight:600;margin:0 0 10px}.entry-panel>p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:30px}label{font-size:9px;letter-spacing:1.5px;display:block;color:#bec6b5;margin:0 0 10px}input,select{background:#0b110c73;color:#eee;border:1px solid #ffffff25;border-radius:2px;padding:15px 16px;width:100%;font-size:13px}input::placeholder{color:#828b7d}input:focus{border-color:var(--accent)}.primary-button{background:var(--accent);color:#1b2515;border:0;width:100%;padding:17px 20px;border-radius:2px;display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:650}.primary-button span{font-size:19px;line-height:15px}.entry-panel .primary-button{margin-top:15px}.secondary-button{border:1px solid #ffffff30;background:#ffffff07;color:#e6ecd9;border-radius:2px;padding:14px 18px;font-size:12px;white-space:nowrap}.divider{display:flex;align-items:center;gap:10px;font-size:8px;letter-spacing:1.2px;color:#87917f;margin:27px 0 20px}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.join-form{display:flex;gap:10px}.join-form input{width:0;min-width:0;flex:1;letter-spacing:3px;text-transform:uppercase}.panel-note{font-size:10px!important;color:#93a085!important;text-align:center;margin:23px 0 0!important}.panel-note span{margin-right:7px}.home-footer{grid-column:1/-1;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;margin-top:28px;min-height:68px;font-size:8px;letter-spacing:1.5px;color:#7d8a76}.footer-cross{font-size:20px;color:var(--accent);margin-left:30px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{background:#172018;color:#f1f1e8;border:1px solid #758166;border-radius:4px;width:min(570px,92vw);padding:35px;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#020603b8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.dialog-close{position:absolute;right:15px;top:10px;border:0;color:#cbd5bf;background:none;font-size:25px}dialog h2{margin:15px 0 25px}.instructions{padding-left:21px}.instructions li{padding-left:10px;margin-bottom:20px;color:var(--accent)}.instructions strong{font-size:14px;color:#e1e9d6}.instructions p,.dialog-note{color:#aebba3;font-size:12px;line-height:1.7}.dialog-note{border-top:1px solid var(--line);padding-top:20px}dialog select,dialog input[type=range]{margin-bottom:25px}.check-label{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:0;margin:15px 0 30px}.check-label input{width:auto}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%);background:#d5ee9a;color:#202a19;border:1px solid #efffc5;padding:14px 24px;z-index:30;font-size:13px;max-width:90vw;text-align:center;box-shadow:0 5px 40px #0008}.network-banner{position:fixed;top:0;left:0;right:0;background:#edbd73;color:#241d12;z-index:25;text-align:center;font-size:13px;padding:10px}.network-banner button{margin-left:20px;color:#241d12}.asset-status{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:min(480px,calc(100% - 32px));padding:16px;background:#18251e;border:1px solid #bdcf98;color:#e4efcf;z-index:29;text-align:center;font-size:14px}.asset-status button{display:block;margin:12px auto 0}@media(min-height:900px){.home-screen{padding-top:100px}.hero-stats{margin-top:45px}.home-footer{margin-top:60px}}@media(max-width:950px){.home-screen{gap:5%;padding-top:40px}h1{font-size:68px}.entry-panel{padding:24px}.edition{display:none}.hero-stats{gap:25px}.topbar{height:78px}.home-footer{font-size:7px}}@media(max-width:700px){.home-screen,.lobby-screen{display:block!important;padding-top:30px!important}.home-screen[hidden],.lobby-screen[hidden]{display:none!important}.entry-panel{margin:35px 0}.hero h1{font-size:64px}.hero-stats{margin-top:15px}.home-footer span:last-child{display:none}.connection{font-size:8px}.top-actions{gap:10px}.brand{font-size:11px}.edition{display:none}.topbar{margin:0 6%}.hero-copy{font-size:14px}}body.in-game{overflow:hidden;overscroll-behavior:none}.touch-controls{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;touch-action:none;-webkit-user-select:none;-webkit-touch-callout:none}.touch-look{position:absolute;top:0;right:0;bottom:0;left:42%;pointer-events:auto;touch-action:none}.touch-joystick{position:absolute;left:max(22px,env(safe-area-inset-left));bottom:max(22px,env(safe-area-inset-bottom));width:132px;height:132px;border:1px solid #d5ee9a70;border-radius:50%;background:radial-gradient(circle,#d5ee9a12 36%,#0c160c70 37%);pointer-events:auto;touch-action:none;display:grid;place-items:center}.touch-stick{width:48px;height:48px;border-radius:50%;border:1px solid #d5ee9ab3;background:#d5ee9a3b;pointer-events:none}.joystick-label,.look-hint{position:absolute;font:9px Consolas,monospace;letter-spacing:1.5px;color:#dce7cd;text-shadow:0 1px 5px #000;pointer-events:none}.joystick-label{bottom:10px}.look-hint{right:25%;bottom:max(24px,env(safe-area-inset-bottom))}.touch-actions{position:absolute;right:max(20px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px}.touch-button{min-height:46px;min-width:58px;padding:10px 14px;border:1px solid #b4c49b80;border-radius:6px;background:#101d12e3;color:#eaf0df;font-size:12px;font-weight:600;pointer-events:auto;touch-action:none}.touch-button small{display:block;font-size:8px;letter-spacing:1px;margin-top:5px;opacity:.8}.touch-act{min-height:70px;min-width:100px;border-color:var(--accent)}.touch-button[aria-pressed=true],.touch-button.pressed{color:#172110;background:var(--accent)}.touch-button[aria-disabled=true]{opacity:.45}.game-menu-buttons{position:fixed;right:max(20px,env(safe-area-inset-right));top:max(74px,env(safe-area-inset-top));z-index:6;display:flex;gap:8px}.touch-mode .game-menu-buttons{top:max(12px,env(safe-area-inset-top))}.touch-mode .control-hints{display:none}.touch-mode .hud-top{top:max(12px,env(safe-area-inset-top));left:max(20px,env(safe-area-inset-left));right:max(168px,calc(env(safe-area-inset-right) + 150px));align-items:center;gap:12px}.touch-mode .hud-sector{width:40%;font-size:9px;gap:3px}.touch-mode .hud-sector .eyebrow{font-size:9px}.touch-mode .hud-clock .tiny{display:none}.touch-mode .hud-clock strong{font-size:26px;margin:0}.touch-mode .hud-terminals{width:auto;gap:4px}.touch-mode .terminal-badge{width:27px;height:30px;font-size:11px}.touch-mode .hud-bottom{left:max(20px,env(safe-area-inset-left));top:max(75px,calc(env(safe-area-inset-top) + 60px));bottom:auto}.touch-mode .identity{width:132px}.touch-mode .identity .eyebrow{font-size:8px;letter-spacing:1px}.touch-mode .identity strong{font-size:12px;margin:4px 0 6px;max-width:140px;overflow:hidden;text-overflow:ellipsis}.touch-mode .identity .tiny{display:none}.touch-mode .team-panel{display:none;top:max(65px,calc(env(safe-area-inset-top) + 52px));right:max(20px,env(safe-area-inset-right));background:#101b10ed;border:1px solid var(--line);padding:8px 12px;max-height:calc(100dvh - 85px);overflow-y:auto;z-index:6;pointer-events:auto}.touch-mode .team-panel.expanded{display:block}.touch-mode .game-banner{top:max(72px,calc(env(safe-area-inset-top) + 56px));padding:8px 14px;min-width:0;width:min(340px,47vw);font-size:11px;line-height:1.5}.touch-mode .interaction{bottom:max(48px,calc(env(safe-area-inset-bottom) + 24px));min-width:0;width:min(280px,40vw);padding:12px;font-size:11px}.touch-mode .interaction .keycap{display:block;border:0;background:none;padding:0;margin:0 0 6px;font-size:8px}.touch-mode .action-track{margin:10px -12px -12px}.pause-overlay{overflow-y:auto;padding:12px}.pause-card{max-height:calc(100dvh - 24px);overflow-y:auto}.pause-card #game-settings{margin-right:24px}.pause-card .rotate-note{border:1px solid #d5ee9a60;padding:10px;color:var(--accent)!important}.touch-mode .grain{display:none}.touch-mode button{min-height:44px}.touch-mode input,.touch-mode select{font-size:16px}.touch-mode dialog{max-height:calc(100dvh - 24px);overflow-y:auto}.touch-mode .topbar{padding-top:env(safe-area-inset-top)}.touch-mode .home-screen,.touch-mode .lobby-screen{padding-left:max(5%,env(safe-area-inset-left));padding-right:max(5%,env(safe-area-inset-right))}.touch-mode .home-footer{padding-bottom:env(safe-area-inset-bottom)}@media(max-height:500px)and (orientation:landscape){.touch-mode .pause-card{width:560px;padding:16px 24px}.touch-mode .pause-card h2{font-size:24px;margin:8px 0}.touch-mode .pause-card>p{margin:8px 0}.touch-mode .pause-card .primary-button{margin-top:12px;padding:12px 20px}.touch-mode .pause-card .tiny{margin-top:4px}.touch-mode .home-screen,.touch-mode .lobby-screen{padding-top:24px}.touch-mode h1{font-size:52px}}@media(max-width:700px){.roster-panel{padding:20px;margin-top:24px}.roster-row{gap:8px}.roster-row>span:nth-child(2){min-width:0;overflow-wrap:anywhere}.roster-row .avatar{flex-shrink:0}.roster-row .row-tag{flex-shrink:0;font-size:7px}.result-actions{flex-direction:column}.result-screen{padding:40px 20px}}.voice-bar{position:fixed;z-index:9;right:max(18px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;flex-wrap:wrap;gap:8px;max-width:calc(100vw - 36px);padding:8px 10px;border:1px solid #64744c;background:#111a15f2;border-radius:6px;color:#dce9c8;font-size:12px}.voice-bar[hidden]{display:none}.voice-bar.speaking{border-color:#cce78d}.voice-bar button{min-height:38px;padding:8px 10px}.voice-bar #voice-talk{touch-action:none;-webkit-user-select:none;user-select:none}.voice-bar #voice-talk[aria-pressed=true]{background:#41552a}.in-game .voice-bar{bottom:max(95px,calc(env(safe-area-inset-bottom) + 85px))}.voice-settings{border-top:1px solid #46533b;margin-top:22px;padding-top:18px}.voice-settings h3{margin:0 0 12px}.voice-settings label{margin-top:14px}.voice-settings meter{display:block;width:100%;height:16px;margin:8px 0 14px}.voice-buttons{display:flex;gap:8px;flex-wrap:wrap}.voice-settings .dialog-note{margin:12px 0}.touch-mode.in-game .voice-bar{top:max(72px,calc(env(safe-area-inset-top) + 64px));bottom:auto;left:50%;right:auto;transform:translate(-50%);flex-wrap:nowrap;width:max-content;padding:4px 6px}.touch-mode.in-game #voice-status{display:none}@media(max-width:520px){.voice-bar{font-size:11px;right:12px;bottom:12px;gap:5px}}
