@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap";.gamepad-settings{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:2000;color:#edf4ff;background:#101827;border:1px solid #667085;border-radius:8px;max-width:min(360px,100vw - 24px);max-height:85dvh;padding:10px;font:14px/1.5 system-ui,sans-serif;position:fixed;overflow:auto;box-shadow:0 4px 20px #0008}.gamepad-settings[hidden]{display:none!important}.gamepad-settings summary{cursor:pointer;min-height:24px}.gamepad-settings p{margin:10px 0}.gamepad-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.gamepad-fields label{flex-direction:column;font:12px/1.5 system-ui,sans-serif;display:flex}.gamepad-settings input{color:#fff;background:#202d42;border:1px solid #718098;width:100%;padding:6px;font:16px system-ui,sans-serif}.gamepad-settings button,.gamepad-keyboard button{color:#fff;touch-action:manipulation;cursor:pointer;background:#202d42;border:1px solid #718098;min-width:44px;min-height:44px;padding:8px;font:14px system-ui,sans-serif}.gamepad-settings button{margin:8px 4px 0 0}.gamepad-settings :focus-visible,.gamepad-keyboard :focus{outline-offset:2px;outline:3px solid #fed002}.gamepad-keyboard{z-index:2100;color:#fff;background:#101827;border:2px solid #718098;border-radius:8px;max-height:90dvh;padding:12px;font:16px system-ui,sans-serif;position:fixed;inset:auto 12px 12px;overflow:auto}.gamepad-keyboard p{overflow-wrap:anywhere;min-height:24px}.gamepad-keys{grid-template-columns:repeat(10,minmax(44px,1fr));gap:4px;display:grid}.gamepad-keyboard>button{margin:8px 4px 0 0}@media (width<=560px){.gamepad-keys{grid-template-columns:repeat(5,minmax(44px,1fr))}}.gamepad-cursor{pointer-events:none;z-index:2001;border:2px solid #fed002;border-radius:50%;width:22px;height:22px;position:fixed;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #000}.gamepad-cursor:after{content:"+";text-align:center;color:#fed002;font:20px/18px monospace;position:absolute;inset:0}.gamepad-cursor[hidden]{display:none!important}:root{--bg:#090d18;--ink:#edf4ff;--muted:#8894ac;--green:#c7f66b;--red:#ff5b70;--line:#b7cef224}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:DM Sans,system-ui,sans-serif;overflow:hidden}button,input{font:inherit}button{cursor:pointer;color:inherit;border:0}button:focus-visible,input:focus-visible{outline:3px solid var(--green);outline-offset:4px}button:disabled{cursor:default}#space,#game{width:100%;height:100%;position:fixed;inset:0}#game{touch-action:none;display:none}.hidden{display:none!important}.screen{min-height:100dvh;padding:35px 5.5vw 25px;position:relative;overflow:hidden}.brand{letter-spacing:5px;align-items:center;gap:12px;font-size:23px;font-weight:800;display:flex}.brand-mark{letter-spacing:0;text-align:center;color:#0000;border:3px solid #dae8ff;border-radius:14px 14px 8px 8px;width:32px;height:40px;font-size:35px;line-height:40px;position:relative;transform:rotate(-8deg)}.brand-mark:after{content:"";background:#b5dff3;border:3px solid #090d18;border-radius:9px;width:22px;height:12px;position:absolute;top:5px;right:-8px}.edition{letter-spacing:2px;color:var(--muted);border-left:1px solid var(--line);margin-left:6px;padding-left:18px;font-size:12px;font-weight:500}.menu-content{z-index:2;width:440px;max-width:48vw;margin-top:7vh;position:relative}.eyebrow{letter-spacing:2px;color:#adbbd1;align-items:center;gap:9px;font-size:13px;font-weight:700;display:flex}.status-dot{background:var(--green);border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 10px #c7f66555}h1{letter-spacing:-2px;margin:24px 0 22px;font-family:Barlow Condensed,Impact,sans-serif;font-size:clamp(60px,6.8vw,104px);font-weight:700;line-height:.97}h1 span{color:var(--green)}.lead{color:#97a5bf;margin:0 0 28px;font-size:17px;line-height:1.8}.setup-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#192031cc,#111623dd);border-radius:15px;padding:22px;box-shadow:0 20px 70px #0003}.setup-card label{letter-spacing:1.4px;color:#9eaac0;margin-bottom:10px;font-size:12px;font-weight:600;display:block}.setup-card input{border:1px solid var(--line);width:100%;color:var(--ink);background:#090e1aaa;border-radius:7px;padding:11px 13px;font-size:16px}.colors{gap:10px;margin:15px 0 20px;display:flex}.color-choice{border-radius:50%;width:24px;height:24px;position:relative;box-shadow:inset 0 -5px #0004}.color-choice.selected:after{content:"";border:1px solid #fff;border-radius:50%;position:absolute;inset:-4px}.role-selector{gap:9px;margin-bottom:17px;display:flex}.role-option{text-align:left;border:1px solid var(--line);background:#0b101c;border-radius:7px;flex:1;padding:12px;font-size:15px}.role-option>span{color:var(--muted);margin-right:5px;font-size:17px}.role-option small{color:var(--muted);padding:5px 0 0 23px;font-size:13px;display:block}.role-option.selected{background:#c7f6670c;border-color:#c7f66788}.role-option.selected>span{color:var(--green)}.role-option[data-role=impostor].selected{background:#ff5b7010;border-color:#ff5b7088}.role-option[data-role=impostor].selected>span{color:var(--red)}.primary{background:var(--green);color:#172018;letter-spacing:1.5px;border-radius:7px;justify-content:space-between;align-items:center;width:100%;padding:17px 19px;font-size:15px;font-weight:800;transition:transform .2s,filter .2s;display:flex}.primary:hover{filter:brightness(1.1);transform:translateY(-2px)}.primary span{font-size:21px;line-height:15px}.mission-details{color:#8290a6;justify-content:space-between;margin-top:13px;font-size:12px;display:flex}.mission-details span:first-child{color:#a2b19d}.text-button{color:#95a3b9;background:0 0;padding:16px 0;font-size:14px}.text-button span{margin-left:6px}.hero-art{pointer-events:none;width:64vw;height:78vh;position:absolute;top:10vh;right:-2vw}#hero{object-fit:contain;filter:drop-shadow(0 30px 45px #0008);width:100%;height:100%}.orbit-tag{letter-spacing:2px;color:#b3c5dd;border-left:2px solid var(--green);padding:4px 12px;font-size:12px;position:absolute;bottom:3%;right:21%}.orbit-tag span{color:#53637e;letter-spacing:1.3px;margin-top:7px;font-size:11px;display:block}footer{letter-spacing:1.6px;color:#53627c;justify-content:space-between;font-size:11px;display:flex;position:absolute;bottom:22px;left:5.5vw;right:5.5vw}footer i{color:var(--green);padding:0 8px;font-style:normal}.topbar{pointer-events:none;justify-content:space-between;align-items:center;gap:18px;display:flex;position:fixed;top:22px;left:24px;right:24px}.progress-wrap{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b111ce6;border-radius:9px;width:260px;padding:12px 16px}.progress-wrap>span{letter-spacing:1.5px;color:#98a9bc;font-size:11px}.progress-track{background:#29333a;border-radius:3px;height:9px;margin-top:8px;overflow:hidden}.progress-track>div{background:var(--green);width:0;height:100%;transition:width .6s;box-shadow:0 0 16px #c7f66980}.location{border:1px solid var(--line);white-space:nowrap;background:#0b111cda;border-radius:30px;align-items:center;gap:9px;padding:11px 18px;font-size:14px;font-weight:600;display:flex;position:absolute;left:50%;transform:translate(-50%)}.top-actions{pointer-events:auto;gap:8px;display:flex}.top-actions button{border:1px solid var(--line);background:#101824df;border-radius:50%;width:42px;height:42px;font-size:21px}.task-panel{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b111cdb;border-radius:9px;width:260px;padding:15px 16px;position:fixed;top:109px;left:24px}#taskToggle{letter-spacing:1.7px;color:#9daec3;background:0 0;justify-content:space-between;width:100%;padding:0;font-size:12px;display:flex}#taskList{margin-top:14px}.task-row{color:#d4dfed;gap:9px;margin:11px 0;font-size:13px;line-height:1.6;display:flex}.task-row:before{content:"◇";color:#d8b875;font-size:17px}.task-row.done{color:#90b85b}.task-row.done:before{content:"✓";color:var(--green)}.task-row small{color:#73859b;font-size:12px;display:block}.task-row.done small{color:#52694c}#roleHint{border-top:1px solid var(--line);color:#7e90a9;margin-top:12px;padding-top:12px;font-size:12px;line-height:1.7}.bottom-meta{letter-spacing:1px;color:#95aac2;align-items:center;gap:20px;font-size:12px;display:flex;position:fixed;bottom:23px;left:24px}.bottom-meta span:first-child{border:1px solid var(--line);color:#c4d3e5;background:#0b111ccc;border-radius:5px;padding:8px 10px}.actions{gap:12px;display:flex;position:fixed;bottom:27px;right:26px}.action{background:linear-gradient(#253448e8,#101b2cea);border:1px solid #71849b55;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:88px;height:90px;transition:filter .2s,transform .2s;display:flex;position:relative;box-shadow:0 6px #02071088,0 10px 30px #0003}.action:hover{transform:translateY(-2px)}.action-icon{font-size:32px;line-height:32px}.action strong{letter-spacing:1px;font-size:12px}.action kbd{color:#c0d0e188;font-size:12px;position:absolute;top:6px;right:8px}.action.use{color:var(--green);background:linear-gradient(#344830ef,#17221aef);border-color:#c7f66870}.action.danger{color:#ff8593;background:linear-gradient(#5c2738ef,#2a1523ef);border-color:#ff5b7070}.action:disabled{opacity:.32;filter:saturate(.3)}#cooldown{background:#110b12bb;border-radius:17px;justify-content:center;align-items:center;font-size:29px;font-weight:700;display:flex;position:absolute;inset:0}#cooldown:empty{display:none}.toast{z-index:8;text-align:center;pointer-events:none;background:#141f30ed;border:1px solid #7c99b644;border-radius:8px;max-width:500px;padding:13px 22px;font-size:15px;position:fixed;top:100px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #0005}.sabotage-alert{color:#ffd5dc;white-space:nowrap;background:#711a2eec;border:1px solid #ff5b7070;border-radius:7px;padding:10px 20px;font-size:15px;animation:1s infinite alternate pulse;position:fixed;top:80px;left:50%;transform:translate(-50%)}.joystick{touch-action:none;background:#31425944;border:1px solid #d2e6ff40;border-radius:50%;width:115px;height:115px;display:none;position:fixed;bottom:65px;left:28px}.joystick>div{pointer-events:none;background:#c6d9e677;border:1px solid #e0eaff80;border-radius:50%;width:45px;height:45px;position:absolute;top:34px;left:34px}.overlay{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);z-index:20;background:#050913bd;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dialog{background:linear-gradient(145deg,#1c2739,#0e1624);border:1px solid #667b9840;border-radius:20px;width:600px;max-width:100%;max-height:92dvh;padding:32px;position:relative;overflow:auto;box-shadow:0 30px 100px #0007}.dialog h2{letter-spacing:.4px;margin:5px 0 13px;font-family:Barlow Condensed,Impact,sans-serif;font-size:42px}.dialog p{color:#9fadc1;font-size:16px;line-height:1.8}.dialog .eyebrow{color:var(--green)}.close{color:#9badc3;background:#ffffff09;border-radius:50%;width:30px;height:30px;font-size:20px;position:absolute;top:17px;right:19px}.secondary{border:1px solid var(--line);background:#26344a;border-radius:7px;padding:13px 20px;font-size:15px}.dialog-actions{gap:12px;margin-top:25px;display:flex}.dialog-actions .primary{justify-content:center}.controls{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0;display:grid}.controls div{border:1px solid var(--line);color:#9cacc3;background:#070e1a77;border-radius:8px;padding:12px;font-size:14px}.controls kbd{color:var(--green);margin-bottom:6px;font-weight:700;display:block}.role-reveal{text-align:center}.role-reveal h2{color:var(--green);margin:12px 0;font-size:70px}.role-reveal.impostor h2{color:var(--red)}.role-reveal canvas{width:170px;height:175px}.meeting-grid{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0;display:grid}.vote-card{border:1px solid var(--line);text-align:left;background:#101a29;border-radius:9px;align-items:center;gap:10px;padding:9px 12px;display:flex}.vote-card canvas{width:40px;height:49px}.vote-card strong{font-size:15px;display:block}.vote-card small{color:#8093ab;margin-top:5px;font-size:12px;display:block}.vote-card.selected{border-color:var(--green);background:#c7f66610}.vote-card.dead{opacity:.35}.meeting-timer{color:var(--green);font-size:14px}.chat-log{color:#9bacbf;background:#080f1a88;border-radius:8px;max-height:110px;padding:12px;font-size:14px;line-height:1.8;overflow:auto}.chat-log b{color:#d4dfef}.task-area{background:#07101b;border:1px solid #556b8940;border-radius:12px;min-height:230px;margin:22px 0;padding:22px;position:relative}.wire-board{touch-action:none;justify-content:space-between;height:260px;display:flex;position:relative}.wire-column{z-index:2;flex-direction:column;justify-content:space-around;display:flex}.wire-terminal{color:#fff;text-shadow:0 1px 3px #000;border:2px solid #fff5;border-radius:5px;width:62px;height:38px;font-weight:700}.wire-terminal.active{outline-offset:4px;outline:3px solid #fff}.wire-board svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.task-footer{color:#91a1b8;justify-content:space-between;font-size:13px;display:flex}.sequence-grid{grid-template-columns:repeat(3,1fr);gap:12px;max-width:290px;margin:0 auto;display:grid}.sequence-pad{background:#22364d;border:1px solid #5f81964d;border-radius:8px;height:63px;transition:background .12s}.sequence-pad.lit{background:#c7f66b;box-shadow:0 0 25px #c7f66b66}.download-visual{color:#b5d9ef;justify-content:space-around;align-items:center;margin:10px 0 24px;font-size:50px;display:flex}.download-bar{background:#22314a;border-radius:4px;height:15px;margin:20px 0;overflow:hidden}.download-bar>div{background:var(--green);width:0;height:100%;transition:width .1s linear}.calibrate-track{background:#23344a;border-radius:5px;height:28px;margin:40px 0 32px;position:relative;overflow:hidden}.calibrate-target{border:1px solid var(--green);background:#c7f66b55;width:14%;height:100%;position:absolute;left:62%}.calibrate-needle{background:#fff;width:4px;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 10px #fff}.big-count{text-align:center;color:var(--green);font-size:28px}.asteroid-field{cursor:crosshair;touch-action:none;background:#050b14;border-radius:8px;width:100%;height:270px;display:block}.map-canvas{background:#080e1b;border-radius:12px;width:100%;height:auto;display:block}.map-key{color:#a1b1c7;gap:20px;margin:17px 0;font-size:13px;display:flex}.end-title{color:var(--green);font-size:70px!important}.end-title.loss{color:var(--red)}@keyframes pulse{to{box-shadow:0 0 30px #ff234b35}}@media (height<=800px) and (width>=800px){.menu-content{margin-top:4vh}h1{margin:18px 0;font-size:74px}.lead{margin-bottom:18px}.setup-card{padding:18px}.colors{margin:12px 0 15px}.role-option{padding:10px}.screen{padding-top:25px}}@media (width<=760px){.screen{padding:22px 24px}.brand{font-size:18px}.edition{font-size:11px}.menu-content{width:100%;max-width:100%;margin-top:45px}h1{font-size:75px}.lead{font-size:15px}.hero-art{opacity:.36;width:80vw;height:50vh;top:3vh;right:-28vw}.orbit-tag{display:none}.setup-card{max-width:420px}.eyebrow{letter-spacing:1.2px;font-size:11px}footer{letter-spacing:.7px;font-size:10px;left:24px;right:24px}.topbar{top:12px;left:12px;right:12px}.progress-wrap{width:185px;padding:9px 12px}.location{padding:8px 13px;font-size:13px;top:60px}.top-actions button{width:35px;height:35px;font-size:18px}.task-panel{width:185px;padding:12px;top:82px;left:12px}.task-row{font-size:12px}.task-row small{font-size:11px}.actions{gap:7px;bottom:40px;right:14px}.action{border-radius:13px;width:63px;height:72px}.action-icon{font-size:26px}.action strong{letter-spacing:.3px;font-size:11px}.bottom-meta{gap:10px;font-size:11px;bottom:12px;left:12px}#contextHint{display:none}.joystick{display:block}.dialog{padding:25px 20px}.dialog h2{font-size:34px}.toast{width:80%;font-size:14px;top:150px}.sabotage-alert{font-size:13px;top:125px}.meeting-grid{gap:7px}.vote-card{padding:6px}.vote-card strong{font-size:13px}.controls{gap:7px}.role-reveal h2{font-size:54px}.task-area{padding:15px}.wire-terminal{width:48px}.end-title{font-size:56px!important}}@media (height<=660px){.screen{height:100dvh;overflow:hidden auto}.menu-content{margin-top:25px}h1{font-size:60px}.lead{margin-bottom:15px}.setup-card{padding:15px}footer{margin-top:18px;position:relative;bottom:0;left:0;right:0}.task-panel{max-height:48vh;overflow:auto}.dialog{max-height:94dvh}.hero-art{height:85vh}}html{overflow:hidden}.dialog,.screen{scrollbar-width:thin;scrollbar-color:#455a75 transparent}@media (width<=760px){.screen{height:100dvh;min-height:0;overflow:hidden auto}.menu-content{margin-top:36px}h1{letter-spacing:-1.5px;font-size:60px}footer{margin-top:18px;padding-bottom:8px;position:relative;bottom:0;left:0;right:0}.hero-art{top:3vh}.setup-card{padding:18px}.location{top:51px;left:auto;right:0;transform:none}.impostor-hud .actions{grid-template-columns:repeat(2,63px);gap:7px;display:grid}}.screen{height:100dvh;overflow:hidden auto}.task-panel,.progress-wrap{width:300px}.task-panel{max-height:calc(100dvh - 250px);overflow:auto}.dialog{width:660px}.dialog-actions .secondary{flex-shrink:0}.action{width:100px;height:100px}.action strong{letter-spacing:.5px}.top-actions svg{vertical-align:middle;width:24px;height:24px}.meeting-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.meeting-heading h2{margin-bottom:10px}.meeting-chat-button{white-space:nowrap;background:#344e68;border:2px solid #8ca8bd;border-radius:10px;padding:10px 14px;font-size:14px;font-weight:700}.meeting-chat-preview{text-align:left;border:1px solid var(--line);color:#b4c4d7;background:#080f1a88;border-radius:9px;width:100%;padding:13px;font-size:14px;line-height:1.65;display:block}.meeting-chat-preview b{color:#e3edf5}.meeting-chat-preview small{color:var(--green);margin-top:7px;font-size:12px;display:block}.dialog.chat-mode{color:#152637;background:#adbccc;border:4px solid #263b50;border-radius:16px;flex-direction:column;width:760px;height:min(680px,90dvh);padding:18px;display:flex;overflow:hidden;box-shadow:0 0 0 3px #7591a9,0 25px 80px #0008}.chat-header{flex-shrink:0;align-items:center;gap:12px;padding:4px 4px 14px;display:flex}.chat-header h2{letter-spacing:1px;flex:1;margin:0;font-family:Barlow Condensed,Impact,sans-serif;font-size:32px}.chat-header .meeting-timer{color:#344f64;font-size:13px;font-weight:700}.chat-back{color:#263b50;background:#edf4f8;border:2px solid #263b50;border-radius:8px;width:38px;height:38px;font-size:24px}.chat-simulation{letter-spacing:1px;color:#476177;font-size:11px}.chat-messages{scrollbar-width:thin;scrollbar-color:#4f687f transparent;background:#8da1b6;border:3px solid #4f687f;border-radius:9px;flex:1;min-height:0;padding:15px 12px;overflow-y:auto}.chat-message{align-items:flex-start;gap:12px;margin:0 0 14px;display:flex}.chat-message.mine{flex-direction:row-reverse}.chat-avatar{background:#c0d0dd;border:3px solid #263e52;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:62px;height:67px;display:flex;box-shadow:inset 0 -5px #657d8e33}.chat-avatar canvas{width:48px;height:59px}.chat-bubble{overflow-wrap:anywhere;background:#f6f8fb;border:3px solid #263e52;border-radius:12px;min-width:120px;max-width:82%;padding:10px 15px;position:relative;box-shadow:0 3px #65778b66}.mine .chat-bubble{background:#e6f2ff}.chat-bubble strong{margin-bottom:4px;font-size:16px;line-height:1.3;display:block}.chat-bubble p{color:#1b3043;margin:0;font-size:16px;line-height:1.5}.chat-bubble small{color:#64778b;margin-left:6px;font-size:11px;font-weight:500}.chat-typing{color:#344f64;height:25px;padding:5px 4px;font-size:12px}.chat-composer{background:#d5e0e9;border:3px solid #4f687f;border-radius:9px;flex-shrink:0;align-items:center;gap:10px;padding:8px;display:flex}.chat-composer input{color:#1b3043;background:#f8fbff;border:0;border-radius:5px;outline:0;width:100%;min-width:0;padding:12px;font-size:16px}.chat-send{color:#213b50;background:#9bbcd1;border:3px solid #263e52;border-radius:8px;flex-shrink:0;width:50px;height:46px;font-size:24px;font-weight:700}.chat-send:disabled{opacity:.4}.chat-character-count{color:#526d84;white-space:nowrap;font-size:11px}.chat-note{text-align:center;color:#476177;margin-top:8px;font-size:11px}.task-row small,#roleHint{color:#98abc2}@media (width<=760px){.task-panel{width:210px;max-height:38dvh}.progress-wrap>span{letter-spacing:1px;font-size:10px}.top-actions{gap:5px}.top-actions button{width:32px;height:32px}.top-actions svg{width:20px;height:20px}.task-row{font-size:12px}.task-row small,#roleHint{font-size:11px}.action{width:70px;height:78px}.action strong,.action kbd{font-size:11px}.impostor-hud .actions{grid-template-columns:repeat(2,70px)}.dialog.chat-mode{height:90dvh;padding:10px}.chat-header{flex-wrap:wrap;gap:8px}.chat-header h2{font-size:27px}.chat-header .meeting-timer{width:100%;padding-left:46px}.chat-simulation{font-size:10px}.chat-messages{padding:10px 7px}.chat-message{gap:7px}.chat-avatar{border-width:2px;width:44px;height:53px}.chat-avatar canvas{width:36px;height:46px}.chat-bubble{border-width:2px;max-width:calc(100% - 51px);padding:8px 10px}.chat-bubble strong,.chat-bubble p{font-size:14px}.chat-composer{gap:5px;padding:5px}.chat-composer input{padding:10px 7px}.chat-character-count{display:none}.chat-send{width:42px;height:43px}.meeting-heading{align-items:flex-start}.meeting-chat-button{padding:10px;font-size:12px}.meeting-chat-preview{font-size:13px}.mission-details{gap:10px;font-size:11px}.role-option small{padding-left:0;font-size:12px}.eyebrow{letter-spacing:1px}footer{flex-wrap:wrap;gap:8px}.map-key{flex-wrap:wrap;gap:10px}.progress-wrap{width:min(195px,100vw - 190px)}.progress-wrap>span{letter-spacing:.5px}}.character-selection{margin:20px 0}.character-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.character-heading label{margin:0;font-size:11px}.character-heading>span{color:var(--green);text-align:right;font-size:12px}.character-grid{scrollbar-width:thin;scrollbar-color:#526582 transparent;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:260px;padding:4px;display:grid;overflow:auto}.character-card{background:#0c1422;border:1px solid #60779440;border-radius:9px;flex-direction:column;align-items:center;gap:1px;min-width:0;padding:3px 5px 8px;transition:background .15s,border-color .15s;display:flex;position:relative}.character-card:hover{background:#203048}.character-card.selected{border-color:var(--green);background:#c7f66b12;box-shadow:0 0 0 1px #c7f66b44}.character-card canvas{width:64px;height:80px}.character-card span{text-align:center;justify-content:center;align-items:center;min-height:28px;font-size:11px;line-height:1.3;display:flex}.audio-slider{color:#d3e0ee;margin:24px 0;font-size:16px;display:block}.audio-slider output{float:right;color:var(--green)}.audio-slider input{width:100%;accent-color:var(--green);cursor:pointer;margin-top:14px;display:block}.menu-content{padding-bottom:40px}.screen footer{margin-top:25px;padding-bottom:20px;position:relative;bottom:0;left:0;right:0}#audioMenuButton{margin-right:18px}.vote-card strong,.chat-bubble strong{overflow-wrap:anywhere}@media (width<=760px){.character-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:235px}.character-card canvas{width:60px;height:75px}.character-heading{align-items:flex-start}.character-heading>span{max-width:45%}.character-card span{font-size:12px}.character-heading label{font-size:10px}}.audio-meter{background:#293950;border-radius:6px;height:10px;margin-top:22px;overflow:hidden}.audio-meter>div{background:linear-gradient(90deg,#82c976,#c7f66b);width:0;height:100%;transition:width .1s linear}.audio-signal{color:#a5bed0;margin-top:9px;font-size:12px;display:block}.character-search{align-items:center;gap:10px;margin-bottom:10px;display:flex}.character-search input{padding:9px 11px;font-size:13px}.character-search>span{color:#9cacbf;white-space:nowrap;font-size:11px}.character-card small{color:#93a5bd;text-align:center;min-height:12px;font-size:9px;line-height:1.25}.character-grid{max-height:280px}.meeting-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.vote-card,.vote-card>div{min-width:0}.vote-card canvas{flex-shrink:0}.vote-card strong{font-size:13px}.vote-card small{font-size:11px}@media (width<=760px){.meeting-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.character-grid{max-height:255px}.character-card small{font-size:9px}.vote-card strong{font-size:12px}.character-search input{min-width:0;font-size:12px}.character-search>span{font-size:10px}}.dialog.meeting-mode{flex-direction:column;width:840px;height:min(780px,92dvh);display:flex;overflow:hidden}.meeting-mode>.eyebrow,.meeting-mode>.meeting-heading,.meeting-mode>.meeting-timer,.meeting-mode>.meeting-chat-preview,.meeting-mode>.dialog-actions{flex-shrink:0}.meeting-mode .meeting-grid{scrollbar-width:thin;scrollbar-color:#526582 transparent;flex:1;grid-auto-rows:70px;align-content:start;min-height:0;padding-right:5px;overflow-y:auto}.meeting-mode .meeting-chat-preview{max-height:90px;overflow:auto}.meeting-mode .dialog-actions{margin-top:16px}.meeting-mode .vote-card{height:70px}.meeting-mode .vote-card canvas{width:36px;height:46px}@media (width<=760px){.dialog.meeting-mode{height:92dvh;padding:20px 15px}.meeting-mode .meeting-heading h2{font-size:28px}.meeting-mode .meeting-grid{grid-auto-rows:65px}.meeting-mode .vote-card{height:65px}.meeting-mode .meeting-chat-preview{max-height:76px;font-size:12px}.meeting-mode .vote-card canvas{width:30px;height:39px}.meeting-mode .vote-card{gap:6px}.meeting-mode .vote-card strong{font-size:11px}.meeting-mode .vote-card small{font-size:10px}}.task-panel{scrollbar-width:thin;scrollbar-color:#465d7a transparent}.roster-tools{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.roster-tools span{color:var(--green);font-size:14px}.roster-tools button{padding:9px 14px;font-size:14px}select{color:#edf4ff;width:100%;font:inherit;cursor:pointer;background:#111b2b;border:1px solid #526582;border-radius:8px;margin:8px 0 15px;padding:12px}.character-card.selected:after{content:"✓";color:var(--green);font-weight:700;position:absolute;top:4px;right:5px}.character-card small{font-size:10px}.dialog.meeting-mode{color:#eff4f7;background:#494f53;border:24px solid #591c2c;border-radius:55px;gap:12px;width:min(1220px,96vw);max-width:none;height:min(790px,94dvh);padding:24px 34px 22px 46px;position:relative;box-shadow:0 0 0 5px #090c10,inset 0 0 0 7px #34383a,0 16px 70px #0009}.dialog.meeting-mode:before{content:"";background:linear-gradient(90deg,#843348,#571c2b);border:3px solid #17191c;border-radius:20px;width:13px;height:105px;position:absolute;top:42%;left:-19px}.meeting-mode .meeting-heading{flex-shrink:0;justify-content:space-between;align-items:center;gap:14px;margin:0;display:flex}.meeting-mode .meeting-heading h2{letter-spacing:-1px;color:#edf3f6;-webkit-text-stroke:1.4px #182028;text-shadow:2px 3px #172027;margin:0;font-family:DM Sans,sans-serif;font-size:clamp(25px,3.8vw,48px);font-weight:800;line-height:1.2}.meeting-signal{color:#849a9d;letter-spacing:-6px;font-size:35px}.meeting-mode .meeting-chat-button{color:#30383d;background:#f3f3e9;border:3px solid #222b31;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:3px 12px;font-size:32px;line-height:1;display:flex;box-shadow:2px 3px #30383d}.meeting-chat-button small{margin-top:3px;font-size:10px;font-weight:800}.meeting-status{color:#d1dce0;letter-spacing:1px;flex-shrink:0;font-size:12px}.meeting-mode .meeting-grid{flex:1;grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(64px,auto);align-content:stretch;gap:14px 20px;min-height:0;margin:0;padding:5px 4px 5px 0;display:grid;overflow-y:auto}.meeting-mode .vote-card{color:#edf3f5;text-align:center;background:linear-gradient(120deg,#ffffffd9,#f0f5f9 55%,#e5edf4);border:3px solid #c8d0d4;border-radius:8px;align-items:center;gap:8px;height:auto;min-height:64px;padding:0 12px 0 0;display:flex;position:relative;overflow:hidden;box-shadow:3px 3px #30383b}.meeting-mode .vote-card:before{content:"";background:linear-gradient(120deg, var(--crew-color), transparent 45%);opacity:.2;pointer-events:none;position:absolute;inset:0}.meeting-mode .vote-card canvas{object-fit:contain;flex-shrink:0;align-self:flex-end;width:66px;height:83px;margin-bottom:-5px;position:relative}.meeting-mode .vote-card strong{-webkit-text-stroke:.8px #263038;text-shadow:1px 2px #263038;overflow-wrap:anywhere;flex:1;font-size:clamp(13px,1.55vw,21px);font-weight:800;line-height:1.15;position:relative}.meeting-mode .vote-card.selected{background:#d1f2d7;border-color:#80e998;box-shadow:0 0 0 2px #22382d,0 0 15px #80e99870}.meeting-mode .vote-card.dead{opacity:.5;filter:grayscale()}.voted-badge{color:#bc333d;background:#fff2ed;border:3px solid #ac323b;border-radius:50%;place-items:center;width:27px;height:27px;font-size:21px;font-weight:900;display:grid;position:absolute;top:3px;left:49px;transform:rotate(-12deg)}.reporter-icon{font-size:24px;position:absolute;bottom:3px;right:7px}.dead-cross{color:#bf263a;font-size:43px;position:absolute;top:15px;left:18px}.meeting-footer{flex-shrink:0;justify-content:space-between;align-items:center;gap:14px;display:flex}.meeting-mode .dialog-actions{gap:10px;margin:0;display:flex}.meeting-mode .dialog-actions button{border:2px solid #1e292e;border-radius:7px;width:auto;padding:11px 17px;font-size:15px}.meeting-mode .dialog-actions .secondary{color:#242e35;background:#e8eef1}.meeting-mode .dialog-actions .primary{color:#142d1d;background:#8ce29c}.meeting-mode .meeting-timer{color:#f3f8fb;-webkit-text-stroke:.6px #232b32;text-shadow:1px 2px #232b32;text-align:right;margin:0;font-size:clamp(15px,1.9vw,24px);font-weight:800}@media (width<=760px){.dialog.meeting-mode{border-width:13px;border-radius:29px;gap:9px;width:96vw;height:94dvh;padding:18px 12px 16px 19px}.dialog.meeting-mode:before{width:7px;height:72px;left:-12px}.meeting-signal{display:none}.meeting-mode .meeting-heading h2{-webkit-text-stroke:.7px #182028;font-size:26px}.meeting-mode .meeting-chat-button{padding:4px 8px;font-size:24px}.meeting-mode .meeting-grid{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(64px,1fr);gap:8px}.meeting-mode .vote-card{gap:3px;height:auto;min-height:64px;padding-right:4px}.meeting-mode .vote-card canvas{width:41px;height:60px;margin-bottom:0}.meeting-mode .vote-card strong{-webkit-text-stroke:.4px #263038;font-size:13px}.voted-badge{border-width:2px;width:20px;height:20px;font-size:15px;left:29px}.reporter-icon{font-size:18px}.meeting-footer{flex-wrap:wrap;gap:8px}.meeting-mode .dialog-actions{width:100%}.meeting-mode .dialog-actions button{flex:1;padding:10px 5px;font-size:13px}.meeting-mode .meeting-timer{width:100%;font-size:16px}.meeting-status{font-size:10px}}@media (height<=550px) and (width>=600px){.dialog.meeting-mode{border-width:15px;gap:5px;padding:12px 22px}.meeting-mode .meeting-heading h2{font-size:27px}.meeting-mode .meeting-grid{grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 12px}.meeting-mode .vote-card{min-height:36px}.meeting-mode .vote-card canvas{width:34px;height:45px}.meeting-mode .vote-card strong{font-size:13px}.meeting-mode .dialog-actions button{padding:6px 12px}.meeting-mode .meeting-timer{width:auto;font-size:16px}.meeting-footer{flex-wrap:nowrap}.meeting-mode .dialog-actions{width:auto}.meeting-status{font-size:9px}}.roster-notice{line-height:1.4;color:#dce8b8!important;margin:4px 0 14px!important;font-size:13px!important}select:focus-visible{outline:3px solid var(--green);outline-offset:3px}#menu{padding:28px clamp(16px,3vw,48px) 20px;padding-left:max(clamp(16px, 3vw, 48px), env(safe-area-inset-left));padding-right:max(clamp(16px, 3vw, 48px), env(safe-area-inset-right));overscroll-behavior-y:contain}#menu .menu-content{width:100%;max-width:none;margin-top:22px;padding-bottom:0}.menu-intro{justify-content:space-between;align-items:center;gap:24px;min-height:185px;margin-bottom:22px;display:flex}.menu-copy{flex:1;min-width:0}#menu h1{margin:15px 0 12px;font-size:clamp(42px,5vw,76px)}#menu .lead{max-width:760px;margin:0;font-size:17px;line-height:1.6}#menu .hero-art{opacity:1;flex-shrink:0;width:230px;height:185px;position:relative;inset:auto}#menu #hero{filter:drop-shadow(0 10px 20px #0005)}#menu .setup-card{background:linear-gradient(130deg,#192031ee,#111623ee);border-radius:20px;width:100%;max-width:none;padding:clamp(16px,2.2vw,32px)}.player-setup{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(280px,.8fr);align-items:start;gap:24px;display:grid}#menu .setup-card label{font-size:12px;line-height:1.4}#menu .player-setup select{margin:0}#menu .player-setup input,#menu select{min-height:48px;font-size:16px}#menu .colors{flex-wrap:wrap;gap:12px;margin:8px 4px}#menu .color-choice{width:28px;min-width:28px;height:28px}#menu .color-choice:before{content:"";border-radius:50%;position:absolute;inset:-8px}#menu .character-selection{border-top:1px solid var(--line);margin:28px 0;padding-top:22px}#menu .character-heading{margin-bottom:16px}#menu .character-heading label{color:#e4ecf7;letter-spacing:1.5px;font-size:15px}#menu .character-heading>span{font-size:15px}.roster-toolbar{justify-content:space-between;align-items:center;gap:24px;display:flex}#menu .character-search{flex:1;max-width:720px;margin:0}#menu .character-search input{min-height:48px;font-size:15px}#menu .character-search>span{font-size:13px}#menu .roster-tools{flex-shrink:0;gap:18px;margin:0}#menu .roster-tools button{min-height:48px;padding:12px 20px;font-size:15px}#menu .roster-tools span{font-size:15px}#menu .roster-notice{min-height:20px;margin:12px 0 16px!important}#menu .character-grid{scrollbar-gutter:stable;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));align-content:start;gap:14px;height:clamp(460px,62dvh,760px);max-height:none;padding:6px 10px 6px 4px;scroll-padding:8px;overflow:hidden auto}#menu .character-card{border-radius:12px;gap:5px;min-height:174px;padding:8px 10px 12px}#menu .character-card canvas{width:80px;height:100px}#menu .character-card span{min-height:38px;font-size:14px;line-height:1.35}#menu .character-card small{min-height:15px;font-size:11px}#menu .character-card.selected:after{font-size:20px;top:8px;right:10px}.mission-setup{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.1fr) minmax(150px,.55fr) minmax(250px,1fr);align-items:center;gap:24px;padding-top:22px;display:grid}#menu .role-selector{margin:0}#menu .role-option{min-height:78px;padding:15px;font-size:16px}#menu .mission-setup select{margin:0}#menu .mission-launch .primary{min-height:54px}#menu .mission-details{gap:12px;font-size:12px}#menu footer{padding-bottom:max(12px, env(safe-area-inset-bottom))}@media (width<=1050px){.player-setup{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.player-setup>div:last-child{grid-column:1/-1}#menu .colors{margin-bottom:0}.mission-setup{grid-template-columns:minmax(0,1fr) minmax(150px,.5fr)}.mission-launch{grid-column:1/-1}.roster-toolbar{gap:16px}#menu .roster-tools{gap:12px}}@media (width<=760px){#menu{padding-top:20px}#menu .brand{letter-spacing:3px;font-size:20px}#menu .edition{letter-spacing:1px;margin-left:0;padding-left:10px;font-size:10px}#menu .menu-content{margin-top:24px}.menu-intro{gap:12px;min-height:0;margin-bottom:24px}#menu .hero-art{display:none}#menu h1{letter-spacing:-1px;font-size:48px;line-height:1.05}#menu .lead{font-size:15px}.player-setup{grid-template-columns:1fr;gap:18px}.player-setup>div:last-child{grid-column:auto}#menu .character-selection{margin:24px 0}.roster-toolbar{flex-direction:column;align-items:stretch;gap:12px}#menu .character-search{max-width:none}#menu .roster-tools{justify-content:space-between}#menu .character-heading{align-items:center}#menu .character-heading label{font-size:12px}#menu .character-heading>span{max-width:48%;font-size:13px}#menu .character-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;height:clamp(430px,65dvh,680px);padding:4px 6px 4px 2px}#menu .character-card{gap:3px;min-height:150px;padding:6px 4px 9px}#menu .character-card canvas{width:66px;height:83px}#menu .character-card span{overflow-wrap:anywhere;min-height:34px;font-size:12px}#menu .character-card small{min-height:23px;font-size:9px}#menu .character-card.selected:after{font-size:16px;top:5px;right:5px}.mission-setup{grid-template-columns:1fr;gap:18px}.mission-launch{grid-column:auto}#menu .role-option{padding:12px;font-size:15px}#menu .mission-details{font-size:11px}#menu .setup-card{border-radius:16px}#menu .character-search input{font-size:14px}}@media (width<=360px){#menu{padding-left:12px;padding-right:12px}#menu .setup-card{padding:12px}#menu .character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#menu .roster-tools span{font-size:13px}#menu .roster-tools button{padding:10px 12px}#menu .edition{display:none}}@media (height<=550px) and (width>=600px){#menu .menu-intro{min-height:0}#menu .hero-art{width:150px;height:120px}#menu h1{font-size:42px}#menu .character-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));height:420px}}body.play-mode{overscroll-behavior:none;overflow:hidden}body.play-mode #space,body.play-mode #game{height:100dvh}body.play-mode #hud{pointer-events:none;position:fixed;inset:0}body.play-mode #hud button,body.play-mode #joystick{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body.play-mode #joystick,body.play-mode .action{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body.play-mode .topbar{top:max(12px, env(safe-area-inset-top));left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right))}body.play-mode .task-panel{left:max(12px, env(safe-area-inset-left))}body.play-mode .bottom-meta{bottom:max(12px, env(safe-area-inset-bottom));left:max(12px, env(safe-area-inset-left))}body.play-mode .actions{right:max(14px, env(safe-area-inset-right));bottom:max(22px, env(safe-area-inset-bottom))}body.play-mode .joystick{left:max(20px, env(safe-area-inset-left));bottom:max(42px, env(safe-area-inset-bottom))}body.play-mode .overlay{padding-top:max(20px, env(safe-area-inset-top));padding-right:max(20px, env(safe-area-inset-right));padding-bottom:max(20px, env(safe-area-inset-bottom));padding-left:max(20px, env(safe-area-inset-left))}@media (pointer:coarse){input,textarea,select{font-size:16px!important}body.play-mode .joystick{display:block}body.play-mode .top-actions button{width:44px;height:44px}body.play-mode .action{min-width:44px;min-height:44px}}@media (orientation:landscape) and (pointer:coarse){body.play-mode .topbar{top:max(8px, env(safe-area-inset-top))}body.play-mode .task-panel{top:max(64px, calc(env(safe-area-inset-top) + 52px));max-height:calc(100dvh - 150px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto}body.play-mode .joystick{bottom:max(16px, env(safe-area-inset-bottom))}body.play-mode .actions{bottom:max(14px, env(safe-area-inset-bottom))}body.play-mode .bottom-meta{display:none}}.map-selection{margin:22px 0}.map-selection select{width:100%;max-width:420px}.map-selection p{color:#98a9bd;margin-top:8px;font-size:13px}#menu.title-mode{height:100dvh;padding:0;overflow:hidden}.title-screen{color:#fff;height:100dvh;min-height:360px;position:relative}.title-edition{top:max(14px, env(safe-area-inset-top));left:max(18px, env(safe-area-inset-left));letter-spacing:1px;font-size:12px;position:absolute}#menu .space-title{width:min(64vw,680px);margin:0;position:absolute;top:5%;left:50%;transform:translate(-50%)}.space-title svg{width:100%;height:auto;display:block}.title-navigation{width:min(420px,70vw);position:absolute;bottom:5%;left:50%;transform:translate(-50%)}.title-buttons{grid-template-columns:1fr 1fr;gap:12px 16px;display:grid}.space-button{color:#fff;letter-spacing:1px;touch-action:manipulation;background:#000b;border:3px solid #fff;border-radius:9px;justify-content:center;align-items:center;min-height:62px;padding:8px 12px;font-family:Barlow Condensed,sans-serif;font-size:38px;font-weight:500;line-height:1;text-decoration:none;display:flex;position:relative}.space-button:hover{background:#152e16;border-color:#87ef77}.space-button:focus-visible,.round-tool:focus-visible{outline-offset:5px;outline:3px solid #87ef77}.space-button.compact{min-height:48px;font-size:27px}#onlinePlay small{letter-spacing:2px;font:9px DM Sans,sans-serif;position:absolute;bottom:3px}#onlinePlay{color:#b9b9b9;border-color:#bbb;padding-bottom:17px}.title-tools{justify-content:space-between;gap:12px;margin:18px 0 0;padding:0 8px;display:flex}.round-tool,body.play-mode .top-actions button{background:#e0e3e2;border:3px solid #6b7172;border-radius:50%;place-items:center;width:55px;height:55px;padding:9px;display:grid;box-shadow:inset 0 0 0 2px #fff,0 2px 2px #000a}.round-tool svg,.top-actions button svg{width:100%;height:100%}.round-tool:hover{background:#bdf6b4;transform:translateY(-2px)}.settings-tool{background:#38e430;border-color:#1a7430}.title-mode-note{color:#aaa;text-align:center;letter-spacing:2px;margin:13px 0 0;font-size:10px}.title-exit{left:max(15px, env(safe-area-inset-left));bottom:max(15px, env(safe-area-inset-bottom));min-width:90px;min-height:42px;font-size:23px;position:absolute}#menu .back-title{width:fit-content;min-height:42px;margin-bottom:22px;font-size:21px}body.play-mode .topbar{align-items:start}body.play-mode .top-actions{top:max(12px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));flex-direction:column;gap:10px;position:fixed}body.play-mode #pauseButton{order:-2}body.play-mode #mapButton{order:-1}body.play-mode .progress-wrap{background:#29482dd9;border:3px solid #161a18;border-radius:0;width:min(46vw,530px);padding:7px 12px;box-shadow:inset 0 0 0 2px #eee}body.play-mode .progress-wrap>span{color:#fff;letter-spacing:.4px;font-size:14px}body.play-mode .progress-track{background:#16291c;border-radius:0;height:8px}body.play-mode #progress{background:#55db5b;border-radius:0}body.play-mode .location{color:#fff;background:#0009;margin-right:80px}body.play-mode .task-panel{background:#0009;border:0;border-radius:0;top:90px}body.play-mode .action{box-shadow:none;color:#fff;background:0 0;border:0;border-radius:0;gap:0;width:86px;height:102px}body.play-mode .action-icon{filter:drop-shadow(0 2px #000);width:64px;height:64px}body.play-mode .action-icon svg{width:100%;height:100%}body.play-mode .action strong{letter-spacing:-.3px;-webkit-text-stroke:.4px #111;text-shadow:2px 2px #000,-1px -1px #000;font-family:Barlow Condensed,sans-serif;font-size:21px;font-weight:800}body.play-mode .action kbd{color:#fff;background:#000a;border-radius:3px;padding:2px 4px;top:0;right:1px}body.play-mode .action:disabled{opacity:.38;filter:grayscale()}body.play-mode .joystick{background:#d9ddda7a;border:3px solid #222;box-shadow:inset 0 0 0 2px #fff6}body.play-mode .joystick>div{box-shadow:none;background:#d9ddda;border:2px solid #363a38}@media (width<=600px){#menu .space-title{width:88vw;top:13%}.title-navigation{width:84vw;max-width:380px;bottom:13%}.title-tools{gap:8px;padding:0}.round-tool{width:48px;height:48px;padding:7px}.title-edition{font-size:10px}body.play-mode .top-actions button{width:42px;height:42px;padding:7px}body.play-mode .top-actions{gap:7px}body.play-mode .action{width:58px;height:80px}body.play-mode .action-icon{width:45px;height:45px}body.play-mode .action strong{font-size:15px}body.play-mode .actions{gap:3px}body.play-mode .progress-wrap{width:65vw}body.play-mode .progress-wrap>span{font-size:10px}body.play-mode .location{display:none}}@media (height<=500px) and (width>=601px){#menu .space-title{width:43vw;max-width:430px;top:3%}.title-navigation{width:340px;bottom:4%}.space-button{min-height:48px;font-size:31px}.space-button.compact{min-height:38px;font-size:24px}.title-tools{margin-top:10px}.round-tool{width:44px;height:44px;padding:6px}.title-mode-note{margin-top:8px}body.play-mode .top-actions{flex-direction:row}body.play-mode .progress-wrap{width:40vw}body.play-mode .location{display:none}body.play-mode .task-panel{max-width:210px;top:73px}body.play-mode .action{width:65px;height:82px}body.play-mode .action-icon{width:47px;height:47px}body.play-mode .action strong{font-size:17px}}@media (prefers-reduced-motion:reduce){.round-tool:hover,body.play-mode .action:hover{transform:none}}.overlay:has(.map-mode){-webkit-backdrop-filter:none;backdrop-filter:none;background:#0005}.dialog.map-mode{width:min(1100px,94vw);max-width:1100px;box-shadow:none;background:0 0;border:0;padding:30px 14px 14px}.dialog.map-mode h2,.dialog.map-mode>p{display:none}.dialog.map-mode .eyebrow{color:#fff;text-shadow:1px 1px 2px #000}.dialog.map-mode .map-canvas{object-fit:contain;background:0 0;border:0;max-height:75dvh}.dialog.map-mode .map-key{color:#fff;text-shadow:1px 1px 2px #000}.dialog.map-mode .close{color:#222;background:#e6e6e6;border:3px solid #777;border-radius:50%;width:44px;height:44px}@media (pointer:coarse){body.play-mode .top-actions button{min-width:44px;min-height:44px}}body.play-mode #space{display:none}.overlay:has(.announcement-mode){-webkit-backdrop-filter:none;backdrop-filter:none;background:#0003;padding:0;overflow:hidden}.dialog.announcement-mode{width:100vw;max-width:none;height:100dvh;max-height:none;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;overflow:hidden}.meeting-announcement{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.report-announcement{animation:1.9s both report-sweep}.report-slash{filter:drop-shadow(0 3px #8d1608);width:110%;height:min(75dvh,550px);position:absolute}.report-content{text-align:center;margin-top:-35px;position:relative}.dialog .report-content h2{color:#ec3216;-webkit-text-stroke:2px #fff3dd;text-shadow:3px 4px #8c180d;margin:0;font-size:clamp(48px,8vw,108px);font-weight:600;line-height:.88;transform:rotate(-3deg)}#reportedBody{width:min(250px,35vw);height:auto;margin:-3px auto 0;display:block}.death-bubble{color:#37474d;background:#ccd9dc;border:4px solid #50616a;border-radius:50%;width:80px;margin:auto;font-size:38px;line-height:56px;position:relative}.death-bubble:after{content:"";border:9px solid #0000;border-top-color:#ccd9dc;position:absolute;bottom:-15px;left:30px}.discussion-announcement{background:#a9bed45c}.discussion-disc{aspect-ratio:1;background:repeating-conic-gradient(from -25deg at 50% 110%,#aad157 0deg 12deg,#cbe5b3 12deg 25deg);border:5px solid #456c16;border-radius:50%;width:min(600px,85vw,85dvh);animation:1.7s both discussion-pop;position:relative;overflow:hidden}.dialog .discussion-disc h2{z-index:1;color:#fff;-webkit-text-stroke:2px #263326;text-align:center;width:100%;margin:0;font-size:clamp(38px,9vw,100px);font-weight:500;position:absolute;top:5%;left:0;transform:rotate(-4deg)}#discussionCrew{width:100%;height:auto;position:absolute;bottom:0}@keyframes report-sweep{0%{transform:translate(-110%)}12%,85%{transform:translate(0)}to{transform:translate(110%)}}@keyframes discussion-pop{0%{opacity:0;transform:scale(.15)rotate(-12deg)}18%,85%{opacity:1;transform:scale(1)rotate(0)}to{opacity:0;transform:scale(1.07)}}@media (prefers-reduced-motion:reduce){.report-announcement,.discussion-disc{animation:none}}body.play-mode .overlay:has(.announcement-mode){padding:0}body.play-mode .overlay:has(.ejection-mode){-webkit-backdrop-filter:none;backdrop-filter:none;background:#050505;padding:0}.dialog.ejection-mode{width:100vw;max-width:none;height:100dvh;max-height:none;box-shadow:none;background:#050505;border:0;border-radius:0;margin:0;padding:0;overflow:hidden}.ejection-screen{place-items:center;width:100%;height:100%;display:grid;position:relative}#ejectionStars{position:absolute;inset:0;overflow:hidden}#ejectionStars i{width:var(--star-size);height:var(--star-size);opacity:.8;animation:ejection-stars var(--star-speed) linear infinite;background:#fff;border-radius:50%;position:absolute;box-shadow:0 0 2px #fff9}#ejectedCrew{width:180px;height:auto;animation:4.2s linear both crew-ejected;position:absolute;top:calc(50% - 120px);left:-220px}.ejection-message{z-index:1;text-align:center;color:#fff;pointer-events:none;max-width:88vw;font-size:clamp(18px,2.5vw,32px)}#ejectionText{overflow-wrap:anywhere;animation:ejection-text 1.4s steps(var(--letters), end) 1.1s both;display:inline-block}#ejectionRemaining{color:#ddd;margin-top:20px;font-size:.65em;animation:.4s 2.8s both ejection-remaining;display:block}.ejection-continue{bottom:max(30px, env(safe-area-inset-bottom));min-height:44px;font-size:22px;position:absolute;left:50%;transform:translate(-50%)}@keyframes crew-ejected{0%{transform:translate(0)rotate(-30deg)}to{transform:translate(calc(100vw + 440px))rotate(650deg)}}@keyframes ejection-stars{0%{transform:translate(0)}to{transform:translate(-100vw)}}@keyframes ejection-text{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes ejection-remaining{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){#ejectionStars i,#ejectedCrew,#ejectionText,#ejectionRemaining{animation:none}#ejectedCrew{width:100px;top:12%;left:calc(50% - 90px)}}
