:root{font-family:Manrope,Segoe UI,Arial,sans-serif;color:#e5ede9;background:#081215;font-synthesis:none;font-weight:400;--mint:#a8f2cf;--line:#c7ebd521;--muted:#8caaa6;--panel:#102125f2}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.38;cursor:not-allowed}button{transition:background .18s,border-color .18s,transform .18s}button:hover:not(:disabled){filter:brightness(1.13)}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--mint);outline-offset:4px}button svg{flex-shrink:0}input,select{width:100%;background:#09181c;border:1px solid #627e724d;color:#e1eee8;padding:13px 12px;border-radius:4px;min-height:46px}input::placeholder{color:#6d8b86}label{display:block;font-size:12px;color:#a8bcb5;margin:20px 0}label input,label select{margin-top:8px}p{font-size:13px;line-height:1.75;color:#adc0b9}h1,h2,h3,p{margin-top:0}h2{font-size:29px;line-height:1.2;font-weight:500;letter-spacing:-1px;margin:14px 0 17px}h3{font-size:15px;font-weight:600;letter-spacing:-.25px}small{font-size:10px;line-height:1.6;color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.app{height:100dvh;min-height:560px;overflow:hidden;position:relative}.world,.vignette{position:absolute;inset:0}.world canvas{touch-action:none}.menu-world{left:18%;width:90%}.vignette{pointer-events:none;background:linear-gradient(0deg,#071215a8,transparent 24%,transparent 72%,#071215bd)}.app:has(.landing) .vignette{background:linear-gradient(90deg,#081518,#081518f0 24%,#08151800 65%),linear-gradient(0deg,#081518 0%,transparent 35%)}.topbar{height:94px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5;border-bottom:1px solid #bbdccc13}.brand{background:none;border:0;padding:0;display:flex;align-items:center;gap:12px;text-align:left;letter-spacing:5px;font-size:18px;font-weight:800}.brand-symbol{font-size:40px;font-weight:400;line-height:1;color:var(--mint)}.brand-small{display:block;font-size:7px;letter-spacing:1.5px;font-weight:500;margin-top:3px;color:#a6bab1}.top-actions{display:flex;align-items:center;gap:20px}.connection{font-size:9px;letter-spacing:1.6px;color:var(--muted);display:flex;align-items:center;gap:8px}.connection i{width:5px;height:5px;border-radius:50%;background:#d49b66;box-shadow:0 0 10px #d49b6670}.connection.online i{background:var(--mint);box-shadow:0 0 10px #a8f2cf80}.icon-button{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;color:#b5c6bf}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:700;line-height:1.7}.mint{color:var(--mint)}.muted{color:var(--muted)}.tiny-line{width:22px;height:1px;background:var(--mint);display:inline-block;vertical-align:middle;margin-right:12px}.landing{position:relative;height:calc(100% - 94px);pointer-events:none}.landing-copy{position:absolute;left:7%;top:8%;max-width:470px;pointer-events:auto}.landing h1{font-family:Barlow Condensed,Bahnschrift,Impact,sans-serif;font-size:clamp(88px,9.4vw,152px);letter-spacing:-2px;line-height:.85;font-weight:700;margin:27px 0 20px;color:#edf3e7}.landing h1>span:not(.title-dot){color:var(--mint)}.title-dot{color:var(--mint)}.subtitle{display:flex;gap:12px;align-items:center;font-size:11px;letter-spacing:5px;font-weight:500;color:#b4c7bc}.subtitle span{width:24px;height:1px;background:#9fb8a76e}.tagline{font-size:24px;line-height:1.35;letter-spacing:-.8px;margin:28px 0 12px;color:#e1eade}.tagline strong{font-weight:400;color:#9eb9ac}.intro{font-size:12px;max-width:300px;line-height:1.8;margin-bottom:23px;color:#8ea89e}.landing-buttons,.button-row{display:flex;gap:10px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;padding:13px 20px;font-size:11px;font-weight:700;border-radius:3px;letter-spacing:.2px}.primary{background:var(--mint);border:1px solid var(--mint);color:#14261f}.secondary{background:#11211f85;border:1px solid #a7c4b63d;color:#cfddd5}.text-button{background:transparent;border:0;padding:10px 0;display:flex;align-items:center;gap:10px;font-size:11px;color:#b1c7bc}.landing .text-button{margin-top:12px}.text-button>span{font-size:8px;color:#6f9384;margin-left:9px;letter-spacing:1px}.landing-specs{display:flex;gap:25px;border-top:1px solid var(--line);padding-top:18px;margin-top:24px;font-size:8px;letter-spacing:1px;color:#7e9c8f}.landing-specs b{font-size:12px;color:#c6d8cd;font-weight:500;margin-right:6px}.scene-caption{position:absolute;right:6%;bottom:13%;text-align:right;display:grid;gap:10px}.scene-caption .eyebrow{color:#a5bfb2}.scene-caption strong{font-size:20px;font-weight:400;letter-spacing:-.5px}.scene-caption>span:last-child{font-size:8px;letter-spacing:2px;color:#78978b}.build-label{position:absolute;bottom:24px;left:5%;font-size:8px;letter-spacing:2px;color:#6d8e81}.glass{background:var(--panel);border:1px solid #a2c6b430;box-shadow:0 18px 70px #0005;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.full{width:100%;margin-top:10px}.modal-backdrop{position:absolute;inset:0;z-index:20;background:#030b10b3;display:flex;align-items:center;justify-content:center;padding:25px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal,.panel{position:relative;width:min(520px,100%);padding:36px;max-height:calc(100dvh - 50px);overflow:auto;border-radius:7px}.close{position:absolute;right:12px;top:12px;border:0;background:transparent;color:#aac1b5;min-height:32px;min-width:32px;display:grid;place-items:center}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.mode-options button{padding:17px 10px;background:#0a191e;border:1px solid var(--line);text-align:left;border-radius:4px}.mode-options button[aria-pressed=true]{border-color:var(--mint);background:#b6f4cb12}.mode-options b{font-size:12px;display:block}.mode-options span{display:block;color:#8eaaa0;font-size:10px;margin-top:7px}.fineprint{text-align:center;font-size:10px;margin-top:17px}.lobby-layout{position:relative;padding:25px 7%;display:flex;justify-content:space-between;align-items:center;height:calc(100% - 94px);gap:40px}.lobby{width:420px;max-height:100%;overflow:auto;padding:30px;border-radius:7px}.lobby-note{max-width:340px;background:linear-gradient(90deg,transparent,#071c16aa);padding:30px}.lobby-note h2{font-size:38px;line-height:1.1;margin-top:20px}.note-rule{display:block;border-top:1px solid var(--line);padding-top:18px;font-size:10px;color:#a9c6b5}.room-code{border:1px solid #9ab9a743;background:#15322a66;width:100%;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;text-align:left;letter-spacing:5px;font-size:28px;color:var(--mint)}.room-code small{display:block;font-size:8px;letter-spacing:2px;margin-bottom:5px}.roster{margin:18px 0}.roster>div{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0}.roster b{font-size:11px;font-weight:600}.roster small{display:block;font-size:8px}.roster>div>span:last-child{font-size:8px;margin-left:auto}.avatar-badge{width:34px;height:38px;background:#8ee8c014;display:grid;place-items:center}.color-picker{display:flex;gap:9px;padding:8px 0 12px}.color-picker button{border:2px solid transparent;width:21px;height:21px;border-radius:50%;outline-offset:3px}.color-picker button[aria-pressed=true]{outline:1px solid #e6f6e6}.lobby-footer{display:flex;justify-content:space-between}.mission-heading{position:absolute;top:115px;left:4%;pointer-events:none}.mission-heading h2{font-size:23px;margin:5px 0 9px}.mission-role{font-size:8px;letter-spacing:1.5px;color:var(--mint)}.mission-role span{color:#91aaa1;margin-left:8px}.mission-clock{position:absolute;right:4%;top:115px;text-align:right;display:grid;gap:5px}.mission-clock>span{font-size:8px;letter-spacing:2px;color:#a1b8ad}.mission-clock strong{font-family:Barlow Condensed,monospace;font-size:44px;line-height:1;font-weight:500}.objectives{position:absolute;left:4%;top:235px;width:220px;background:linear-gradient(90deg,#08191deb,transparent);padding:14px 0}.objectives>div:not(.eyebrow){display:flex;gap:13px;margin-top:16px}.objectives>div>span{font-size:9px;color:#7baf94;padding-top:3px}.objectives p{font-size:11px;margin:0;color:#d5e2d7}.objectives small{display:block;font-size:9px;margin-top:5px}.bottom-nav{position:absolute;left:50%;bottom:22px;transform:translate(-50%);display:flex;gap:2px;border:1px solid var(--line);background:#0a1a1eee;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:5px;padding:5px;z-index:6}.bottom-nav button{background:transparent;border:0;display:flex;align-items:center;gap:12px;min-width:145px;padding:13px;color:#94b5a6;text-align:left}.bottom-nav button:hover,.bottom-nav button.active{background:#a8e8bf12;color:var(--mint)}.bottom-nav span{font-size:10px;color:#e3ece2}.bottom-nav small{display:block;font-size:7px;letter-spacing:1px;margin-top:5px}.controls-hint{position:absolute;bottom:106px;left:50%;transform:translate(-50%);font-size:7px;letter-spacing:1.4px;color:#aec4b5;white-space:nowrap}.controls-hint span{margin:0 10px;color:#5b8270}.station-panel{position:absolute;top:215px;right:4%;padding:24px;width:310px;max-height:calc(100dvh - 325px);overflow:auto;border-radius:6px}.station-panel h3{margin:12px 0}.station-panel p{font-size:11px}.station-panel .primary,.station-panel .secondary{font-size:10px}.station-panel select{font-size:11px}.sabotage{border-top:1px solid #c6826144;margin-top:20px;padding-top:15px}.sabotage button{display:block;width:100%;background:#b34d3522;border:1px solid #c9765944;padding:12px;margin-top:9px;font-size:11px;color:#f1ba9c}.danger-text,.danger{color:#ffb08e}.channel{position:absolute;bottom:115px;left:50%;transform:translate(-50%);display:flex;gap:16px;align-items:center;background:#173c30;border:1px solid #92d8aa55;padding:13px 18px;border-radius:4px;font-size:11px;z-index:21}.channel button{background:transparent;border:0;text-decoration:underline;font-size:10px}.emergency{position:absolute;top:197px;left:50%;transform:translate(-50%);background:#5e241bf5;border:1px solid #fd9a6f60;padding:14px 20px;display:flex;align-items:center;gap:15px;z-index:8;max-width:640px;width:90%;color:#ffb28e}.emergency span{font-size:10px;line-height:1.5}.emergency b{display:block;font-size:11px}.emergency button{font-size:10px;background:transparent;border:0;display:flex;gap:8px;align-items:center}.repair-visual{background:#071a1e;border:1px solid var(--line);padding:18px;text-align:center;color:var(--mint);margin:16px 0}.repair-stage{font-size:8px;letter-spacing:2px;color:#85a79a;margin-bottom:16px}.waveform{font-family:monospace;font-size:19px;letter-spacing:2px;line-height:2}.repair-visual strong{font-size:13px;display:block;margin-top:12px}.circuit{font-size:26px}.circuit span{color:#4a9e85;font-size:14px}.gauge{border:5px solid #e6ad72;border-bottom:0;border-radius:80px 80px 0 0;margin:auto;width:90px;height:48px;overflow:hidden}.gauge span{display:block;font-size:45px;transform-origin:bottom center;line-height:1.3}.repair-options{display:flex;gap:6px}.repair-options button{flex:1;border:1px solid #91b6a942;background:#8ee5ba13;min-height:46px;font-size:9px;padding:6px}.repair-uplink+.repair-options button{font-size:20px}.success{padding:22px 0;display:flex;gap:12px;align-items:center;color:var(--mint);font-size:10px}.role-reveal{position:absolute;inset:0;z-index:12;background:radial-gradient(ellipse at center,#153e32f5,#061015fc);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px;animation:reveal .8s ease-out}.role-seal{border:1px solid #a6e8bf60;border-radius:50%;width:135px;height:135px;display:grid;place-items:center;color:var(--mint);box-shadow:0 0 80px #81e8b310;margin-bottom:35px}.role-reveal h1{font-family:Barlow Condensed,Bahnschrift,Impact,sans-serif;font-weight:600;letter-spacing:1px;font-size:clamp(38px,6vw,80px);margin:20px 0 16px;color:var(--mint)}.role-reveal p{font-size:15px}.role-reveal>span{font-family:monospace;color:#9cc6ab;letter-spacing:3px;font-size:11px;margin-top:25px}.role-reveal small{margin-top:30px}.role-reveal.traitor{background:radial-gradient(ellipse at center,#51261ef7,#100b0bfc)}.traitor h1,.traitor .role-seal{color:#ffa882}.results{position:absolute;top:115px;left:50%;transform:translate(-50%);width:min(850px,92%);padding:35px;max-height:calc(100dvh - 140px);overflow:auto;border-radius:6px}.results h1{font-family:Barlow Condensed,Bahnschrift,Impact,sans-serif;font-size:48px;margin:14px 0;color:var(--mint);font-weight:600}.culprit{display:flex;align-items:center;gap:14px;padding:18px;background:#a8e8c311;border:1px solid var(--line);font-size:18px;margin:24px 0}.culprit small{display:block;font-size:8px;letter-spacing:2px;margin-bottom:5px}.result-columns{display:grid;grid-template-columns:1fr 1.5fr;gap:35px}.result-row{display:flex;justify-content:space-between;font-size:12px;padding:12px 0;border-bottom:1px solid var(--line)}.result-row small{display:block}.result-row b{font-size:10px;color:var(--mint)}.timeline{max-height:180px;overflow:auto}.timeline p{font-size:11px;margin-bottom:12px}.timeline span{color:#71998a;margin-right:12px;font-family:monospace;font-size:9px}.results .button-row{margin-top:25px}.game-overlay{padding:110px 25px 105px;background:#06121695;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.panel{max-height:100%;width:640px}.panel.wide{width:min(1160px,100%)}.game-overlay .panel{max-height:100%;padding:30px}.board-heading{display:flex;justify-content:space-between;align-items:center}.board-heading h2{margin:9px 0 12px}.board-count{font-family:Barlow Condensed,monospace;font-size:44px;color:var(--mint);display:flex;align-items:baseline;gap:8px}.board-count small{font-family:Manrope,sans-serif;font-size:8px;letter-spacing:1px}.board-intro{font-size:11px;margin-bottom:25px}.board-layout{display:grid;grid-template-columns:1fr 245px;gap:25px}.board-tools{border-left:1px solid var(--line);padding-left:24px}.board-tools h3{font-size:13px;margin-bottom:12px}.board-tools p{font-size:11px}.board-tools select,.board-tools input{font-size:10px;min-height:40px;padding:10px;margin-bottom:8px}.board-tools button{font-size:10px;min-height:40px;padding:10px;gap:9px}.board-tools small{display:block;margin-top:12px}.evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.evidence-card{background:#0a1b20;border:1px solid #86bca32f;text-align:left;padding:17px;border-radius:3px;position:relative}.evidence-card.selected{border-color:var(--mint);box-shadow:0 0 20px #74ebbc0d}.evidence-card .eyebrow{font-size:7px;letter-spacing:1px;display:flex;justify-content:space-between;gap:7px}.evidence-card .eyebrow span{letter-spacing:.3px;font-size:6px}.evidence-visual{display:flex;gap:15px;align-items:center;min-height:69px;margin:13px -4px;background:repeating-linear-gradient(0deg,#74b4a306 0px,#74b4a306 1px,transparent 1px,transparent 4px);padding:10px;color:#a3d7bd}.evidence-visual svg{width:31px;height:31px;flex-shrink:0}.evidence-visual strong{font-family:monospace;font-size:12px;font-weight:400}.clock-glyph{font-size:20px;font-family:Barlow Condensed,monospace}.evidence-card h3{font-size:12px;margin-bottom:8px}.evidence-card p{font-size:10px;line-height:1.7;margin-bottom:10px;color:#8faea1}.candidate-row{display:flex;flex-wrap:wrap;gap:5px}.candidate-row span{font-size:8px;padding:4px 6px;background:#b2e2bf12;border:1px solid #a6cfb621;color:#c8dfce}.discrepancy{font-size:9px;color:#f5b893;line-height:1.6;margin-top:12px;border-top:1px solid #bd80543f;padding-top:10px}.discrepancy svg{vertical-align:middle;margin-right:5px}.connections{margin-top:18px;border:1px solid #89d3ae3b;background:#8be6b709}.connections>div{display:flex;gap:13px;padding:14px;font-size:10px;color:#a7c9b8}.connections svg{flex-shrink:0;color:var(--mint)}.connections b{display:block;margin-bottom:5px;color:var(--mint);font-weight:500}.empty-state{padding:35px 25px;border:1px dashed #99c7af35;text-align:center;grid-column:1/-1;color:#6d9a85}.empty-state h3{margin-top:18px}.empty-state p{font-size:12px}.station-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.station-list button{background:#0b1b1e;border:1px solid var(--line);padding:13px 11px;display:flex;align-items:center;gap:10px;text-align:left}.station-list b{font-size:10px;font-weight:500}.station-list small{display:block;font-size:7px;letter-spacing:.5px;margin-top:4px}.station-list button>svg:last-child{margin-left:auto}.guide-steps>div{display:flex;gap:22px;margin:22px 0}.guide-steps b{font-family:Barlow Condensed,monospace;color:var(--mint);font-size:25px}.guide-steps p{font-size:12px;margin:0}.guide-steps strong{color:#e0eee2;display:block;margin-bottom:3px;font-weight:600}.panel details{border-top:1px solid var(--line);padding:14px 0;font-size:11px;color:#c1d8ca}.panel details p{font-size:11px;margin-top:14px}.toggle{display:flex;align-items:center;gap:10px}.toggle input{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--mint)}.chat{position:absolute;right:25px;bottom:110px;width:330px;z-index:30;padding:18px;border-radius:6px}.chat-heading{display:flex;justify-content:space-between;align-items:center}.chat-log{max-height:230px;min-height:100px;overflow:auto;margin:10px 0}.chat-log p{font-size:11px;overflow-wrap:anywhere}.chat-log b{display:block;color:var(--mint);font-size:9px;margin-bottom:3px}.chat form{display:flex;gap:6px;border-top:1px solid var(--line);padding-top:12px}.chat input{font-size:11px}.quick-chat{display:flex;gap:6px;margin-bottom:12px}.quick-chat button{font-size:9px;background:#93bb9c12;border:1px solid var(--line);padding:7px}.toast{position:absolute;bottom:113px;left:50%;transform:translate(-50%);max-width:90%;background:#3c211df5;border:1px solid #e99a6752;color:#f5c5a8;display:flex;gap:12px;align-items:center;padding:15px 18px;border-radius:4px;z-index:50;font-size:12px}.toast svg{flex-shrink:0}.toast button{background:none;border:0;display:grid;place-items:center}.loading{position:absolute;inset:0;background:#091718;z-index:60;display:flex;flex-direction:column;gap:30px;align-items:center;justify-content:center}.loading span{font-size:10px;letter-spacing:3px;color:#b6dcc5}.webgl-error{padding:30px;color:#f5c3a5}.touch-pad{display:none}.reduced *{animation:none!important;scroll-behavior:auto!important}@keyframes reveal{0%{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur(0)}}@media(min-width:1500px){.landing-copy{top:12%}.landing h1{font-size:160px}.tagline{margin-top:36px}.intro{margin-bottom:30px}.landing-specs{margin-top:36px}}@media(max-height:780px)and (min-width:701px){.topbar{height:76px}.landing{height:calc(100% - 76px)}.landing-copy{top:5%}.landing h1{font-size:104px;margin:20px 0 15px}.tagline{font-size:21px;margin-top:22px}.intro{margin-bottom:16px}.landing-specs{margin-top:15px;padding-top:13px}.lobby-layout{height:calc(100% - 76px)}.lobby{padding:22px}.mission-heading,.mission-clock{top:96px}.objectives{top:210px}.station-panel{top:190px;max-height:calc(100dvh - 300px)}}@media(max-width:1000px){.scene-caption{right:4%;max-width:230px}.scene-caption strong{font-size:16px}.objectives{display:none}.board-layout{grid-template-columns:1fr 210px;gap:17px}.board-tools{padding-left:17px}.board-heading h2{font-size:25px}.lobby-note{max-width:280px}.lobby-note h2{font-size:31px}}@media(max-width:700px){.app{min-height:480px}.topbar{height:70px;padding:0 20px}.brand-symbol{font-size:30px}.brand{font-size:14px;gap:8px;letter-spacing:3px}.brand-small{font-size:5px}.top-actions{gap:7px}.connection{font-size:0;gap:0;margin-right:7px}.connection i{width:6px;height:6px}.icon-button{min-width:34px;min-height:40px}.menu-world{left:0;width:140%;opacity:.7}.app:has(.landing) .vignette{background:linear-gradient(90deg,#071719e8,#07171940),linear-gradient(0deg,#081518,transparent 70%)}.landing{height:calc(100% - 70px)}.landing-copy{left:7%;top:6%;max-width:87%}.landing-copy>.eyebrow{font-size:7px;letter-spacing:1.4px}.landing h1{font-size:clamp(84px,21vw,120px);margin:24px 0 17px}.subtitle{font-size:8px;letter-spacing:3px;gap:10px}.tagline{font-size:22px;margin-top:27px}.intro{font-size:11px;max-width:270px;margin-bottom:22px}.primary,.secondary{min-height:48px;font-size:11px;padding:12px 17px}.landing-specs{font-size:7px;gap:17px;margin-top:22px}.landing-specs b{font-size:10px}.scene-caption{display:none}.build-label{left:7%;bottom:16px;font-size:6px;letter-spacing:1.4px}.modal-backdrop{padding:15px}.modal,.panel{padding:28px 22px;max-height:calc(100dvh - 30px)}.lobby-layout{padding:16px;height:calc(100% - 70px)}.lobby{width:100%;padding:24px}.lobby-note{display:none}.mission-heading{top:88px;left:20px}.mission-heading h2{font-size:17px;max-width:230px}.mission-heading .eyebrow{font-size:7px}.mission-role{font-size:6px;letter-spacing:1px}.mission-clock{top:88px;right:20px}.mission-clock strong{font-size:32px}.mission-clock>span{font-size:6px;letter-spacing:1px}.bottom-nav{bottom:12px;width:calc(100% - 24px);padding:3px;justify-content:space-around}.bottom-nav button{flex:1;min-width:0;flex-direction:column;gap:6px;padding:10px 4px;text-align:center;min-height:56px}.bottom-nav span{font-size:8px}.bottom-nav small{display:none}.bottom-nav svg{width:18px;height:18px}.controls-hint{display:none}.touch-pad{position:absolute;left:15px;bottom:100px;display:grid;grid-template-columns:repeat(3,38px);grid-template-rows:repeat(2,38px);gap:4px}.touch-pad button{background:#173c31c9;border:1px solid #a1c7b349;border-radius:5px;touch-action:none;color:#d6e9d9}.touch-pad button:first-child{grid-column:2}.touch-pad button:nth-child(2){grid-column:1;grid-row:2}.touch-pad button:nth-child(3){grid-column:2;grid-row:2}.touch-pad button:nth-child(4){grid-column:3;grid-row:2}.station-panel{top:auto;right:12px;bottom:95px;width:min(275px,calc(100% - 30px));max-height:calc(100dvh - 255px);padding:22px}.app:has(.station-panel) .touch-pad{display:none}.game-overlay{padding:160px 12px 90px}.game-overlay .panel{padding:24px 18px}.board-heading h2{font-size:23px;line-height:1.2}.board-heading .eyebrow{font-size:6px;letter-spacing:1px;max-width:220px}.board-count{display:none}.board-layout{display:flex;flex-direction:column;gap:22px}.board-tools{padding:18px 0 0;border-left:0;border-top:1px solid var(--line)}.evidence-grid{gap:8px}.evidence-card{padding:11px}.evidence-card .eyebrow{font-size:6px;display:block}.evidence-card .eyebrow span{display:block;font-size:5px;margin-top:3px}.evidence-visual{flex-direction:column;align-items:flex-start;gap:7px;margin:8px 0;min-height:65px}.evidence-visual strong{font-size:9px}.evidence-visual svg{width:22px;height:22px}.evidence-card h3{font-size:11px;line-height:1.4}.evidence-card p{font-size:9px}.candidate-row span{font-size:7px}.board-intro{font-size:10px}.station-list{grid-template-columns:1fr}.panel h2{font-size:26px}.emergency{top:153px;padding:12px;gap:8px}.emergency span{font-size:8px}.emergency b{font-size:9px}.emergency button{font-size:8px;max-width:70px}.emergency>svg{width:18px;flex-shrink:0}.channel{bottom:88px;min-width:260px;padding:12px;font-size:10px}.toast{bottom:90px;width:calc(100% - 26px);font-size:11px}.chat{right:12px;bottom:90px;width:calc(100% - 24px)}.chat-log{max-height:170px}.results{top:88px;padding:25px;max-height:calc(100dvh - 106px)}.results h1{font-size:36px}.result-columns{grid-template-columns:1fr;gap:25px}.results .button-row{flex-wrap:wrap}.role-reveal h1{font-size:42px}.role-reveal p{font-size:12px}.role-reveal small{font-size:9px;max-width:300px}.guide-steps>div{gap:15px}.guide-steps p{font-size:11px}}@media(max-height:690px)and (max-width:700px){.landing-copy{top:5%}.landing h1{font-size:82px;margin:18px 0 13px}.tagline{font-size:19px;margin-top:18px}.intro{margin-bottom:15px}.landing-specs{margin-top:10px;padding-top:10px}.landing .text-button{margin-top:5px}.build-label{display:none}}.audit{margin-top:24px;border-top:1px solid var(--line);padding-top:18px;font-size:12px;color:var(--mint)}.audit summary{cursor:pointer;min-height:40px}.audit .evidence-grid{margin-top:12px}.case-selector{margin:14px 0 20px}.case-selector small{display:block;margin-top:8px;line-height:1.5}.case-selector select{border-color:#82b8b354}.evidence-network{border:1px solid #70cfb238;border-radius:7px;background:linear-gradient(135deg,#092023,#0c1721);margin:0 0 22px;overflow:auto;box-shadow:inset 0 0 45px #6be7c309}.network-legend{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;gap:18px;border-bottom:1px solid #90d7c51a;min-width:460px}.network-legend>span{font:600 9px monospace;letter-spacing:1px;color:#a8f2cf}.network-legend i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#b6f9dd;box-shadow:0 0 10px #8affce;margin-right:7px}.network-legend small{font-size:9px}.evidence-network svg{display:block;width:100%;min-width:640px;height:220px}.network-link{stroke:#a8f2cf;stroke-width:2;fill:none;stroke-dasharray:6 4;animation:network-flow 5s linear infinite;filter:drop-shadow(0 0 3px #a8f2cf66)}.network-node{cursor:default;touch-action:none;outline:none}.network-node.discovered{cursor:grab}.network-node.discovered:active{cursor:grabbing}.network-node rect{fill:#10262c;stroke:#375459;transition:stroke .2s,fill .2s}.network-node.discovered rect{stroke:#78b9a9;fill:#143332}.network-node.chosen rect,.network-node:focus-visible rect{stroke:#dbffea;stroke-width:2}.network-node text{fill:#d3e8e1;font:10px Segoe UI,sans-serif;pointer-events:none}.network-node .node-type{font:8px monospace;letter-spacing:1px;fill:#92b7b0}.network-node .node-state{font:7px monospace;fill:#8ab3a8;letter-spacing:1px}.evidence-card{position:relative;overflow:hidden}.evidence-card.selected{box-shadow:0 0 0 1px #a8f2cf44,0 0 28px #81e6bf0c}.evidence-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#a4efcd66,transparent)}.evidence-visual{background:linear-gradient(90deg,#8cedca08,transparent);padding:10px 5px;border-bottom:1px solid #a8dcca13}.station-panel{border-top:2px solid #8ce8c3;box-shadow:0 20px 70px #0006}.repair-visual{background:radial-gradient(ellipse at center,#84e5cd12,transparent 70%)}.repair-options button{min-height:48px}.results{box-shadow:0 0 90px #6de1b719,0 24px 90px #0008;border-top:2px solid #a8f2cf}.role-reveal{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@keyframes network-flow{to{stroke-dashoffset:-40}}.reduced .network-link{animation:none}@media(prefers-reduced-motion:reduce){.network-link{animation:none}}@media(max-width:700px){.case-selector{margin:12px 0}.network-legend{padding:11px}.evidence-network{margin-bottom:15px}.evidence-network svg{height:190px}.evidence-card p{font-size:11px;line-height:1.6}.evidence-card h3{font-size:12px}.candidate-row span{font-size:9px}.board-intro,.station-panel p{font-size:12px}.board-tools select,.board-tools input{font-size:13px}.network-legend small{font-size:10px}.evidence-visual{padding:9px 2px}}.playtest-feedback{margin:18px 0}.playtest-feedback details{margin:14px 0}.playtest-feedback summary{color:var(--mint);cursor:pointer;min-height:44px;display:flex;align-items:center}.playtest-feedback textarea{font:inherit;width:100%;min-height:85px;margin-top:8px;background:#09181c;border:1px solid #627e724d;color:#e1eee8;padding:12px;border-radius:4px;resize:vertical}.playtest-feedback textarea:focus-visible{outline:2px solid var(--mint);outline-offset:3px}.loading{inset:auto 18px 18px auto;padding:12px 16px;background:#0b1e25e8;border:1px solid #83c6b43d;border-radius:5px;pointer-events:none;flex-direction:row;gap:10px;font-size:9px;max-width:calc(100% - 36px)}.loading .brand-symbol{font-size:18px}.app:has(.bottom-nav) .loading{bottom:90px}.quality-low .glass{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0b1b23f2}.quality-low .modal-backdrop,.quality-low .role-reveal{-webkit-backdrop-filter:none;backdrop-filter:none}.practice-entry{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}.practice-entry small{color:var(--muted);font-size:11px;max-width:160px}.callsign-editor{display:flex;align-items:end;gap:8px;margin:16px 0}.callsign-editor label{flex:1;min-width:0}.callsign-editor input{margin-bottom:0}.callsign-editor button{white-space:nowrap;padding:12px}.practice-help{margin-top:12px;border-top:1px solid #ffffff20;padding-top:8px}.practice-help p{font-size:11px;line-height:1.6;color:#a2bdb4}.lobby-footer{flex-wrap:wrap}.landing-copy>.text-button{margin-right:12px}@media(max-width:700px){.practice-entry{margin-top:10px}.callsign-editor{flex-wrap:wrap}.practice-help p{font-size:10px}.quality-low .landing-specs{margin-top:14px}}.landing{overflow-y:auto;overflow-x:hidden;pointer-events:auto}.landing-copy{padding-bottom:75px}.objectives>div.practice-help{display:block}.callsign-editor label{margin:0}.lobby-footer .text-button{font-size:10px}.landing-copy>.text-button{display:inline-flex;margin-right:16px}@media(max-height:850px){.landing .build-label{display:none}}.graphics-status{position:fixed;top:100px;right:20px;max-width:360px;padding:16px;background:#102229ed;border:1px solid #42695c;color:#baf8dc;z-index:75;font-size:12px;pointer-events:none}.graphics-failed{display:grid;gap:12px;pointer-events:auto}.graphics-failed span{line-height:1.6;color:#c8d6d3}.toast{z-index:110}.success-toast{border-color:#7dd8a5;color:#baf8dc}.toast[role=alert]{bottom:92px}.ballot-receipt{padding:12px;border:1px solid #42695c;margin:12px 0;line-height:1.6}.ballot-receipt ul{padding-left:18px;font-size:12px}.saved-draft{padding:12px;border:1px solid #314741;margin-bottom:18px}.saved-draft input{opacity:.75}@media(max-width:700px){.graphics-status{top:80px;left:16px;right:16px;max-width:none}.controls-hint{max-width:70vw}}.custody-comparison{border:1px solid #80e6c433;background:linear-gradient(120deg,#1d3e354a,#0a181ddd);padding:18px;margin:18px 0 22px;border-radius:8px}.custody-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}.custody-heading small{font-size:11px;color:#9bb7b0}.custody-row{display:flex;gap:24px;align-items:center;padding:12px 0}.custody-row+.custody-row{border-top:1px solid #ffffff10}.custody-label{min-width:130px;display:grid;grid-template-columns:20px 1fr;gap:6px;font-size:10px;letter-spacing:.08em}.custody-label small{grid-column:2;color:#8da7a0;font-size:8px}.custody-tokens{display:flex;flex-wrap:wrap;gap:10px}.custody-person{display:flex;align-items:center;gap:8px;border:1px solid #53746e;background:#14272d;padding:10px 14px;font-size:12px;border-radius:4px}.custody-person.common{border-color:#a1eccd;background:#24534166;color:#d5ffe5;box-shadow:0 0 20px #83ecd512}.custody-locked{display:flex;gap:8px;align-items:center;color:#7c9590;font-size:12px}@media(max-width:700px){.custody-heading{display:block}.custody-heading small{display:block;margin-top:8px}.custody-row{display:block}.custody-label{margin-bottom:10px}.custody-person{padding:8px;font-size:11px}.custody-comparison{padding:12px}}.tactical-fallback{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at center,#18353c,#071114 80%)}.tactical-fallback svg{width:100%;height:100%;max-height:100vh;touch-action:none}.tactical-station{cursor:pointer;outline:none}.tactical-station:focus circle{stroke:#fff;stroke-width:.25}.tactical-label{position:absolute;bottom:100px;right:30px;max-width:280px;font-size:9px;line-height:1.7;letter-spacing:.1em;color:#98b9b0;pointer-events:none}.menu-world .tactical-fallback svg{transform:translate(14%) scale(.9);opacity:.65}@media(max-width:700px){.tactical-label{display:none}}
