/* Scoped flight-deck UI. Other rounds keep their existing layout. */
#viewNexusGame.crew-mode > :not(#crewConsole){display:none!important}
.crew-flight #mobileMothershipShieldHeader{display:none!important}
.crew-flight #app.screen-red-strobe{animation:none!important}
.crew-root{--accent:#63adff;--soft:#a9d5ff;--deep:#0c2343;--tint:#132944;position:relative;isolation:isolate;max-width:520px;margin:0 auto;padding:20px 18px 12px;background:linear-gradient(165deg,#101d32,#080f1c 70%);border:1px solid #7ba5d233;border-radius:24px;color:#e9f1ff;box-shadow:0 20px 70px #0006,0 0 40px #3299ff0b;font-family:var(--font-th,"Leelawadee UI",Tahoma,sans-serif);overflow:hidden}
.crew-root[hidden]{display:none}
.crew-root.role-nav,.crew-help.role-nav{--accent:#63adff;--soft:#a9d5ff;--deep:#0c2343;--tint:#132944}
.crew-root.role-power,.crew-help.role-power{--accent:#ffbd51;--soft:#ffe1a3;--deep:#2c2415;--tint:#312a1e}
.crew-root.role-maintenance,.crew-help.role-maintenance{--accent:#50ddb1;--soft:#aeffe0;--deep:#0d2c27;--tint:#113229}
.crew-root.role-comms,.crew-help.role-comms{--accent:#bc8dff;--soft:#e4ccff;--deep:#241b3b;--tint:#2a213f}
.crew-root *{box-sizing:border-box}.crew-root button{font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.crew-root button:disabled{cursor:default}.crew-root button:focus-visible,.crew-root input:focus-visible,.crew-help button:focus-visible{outline:3px solid var(--soft);outline-offset:3px}.crew-root button svg{pointer-events:none}.crew-root svg{display:block}.crew-stars{position:absolute;inset:0;z-index:-1;opacity:.2;background-image:radial-gradient(circle at 18% 7%,#b3ddff 0 1px,transparent 2px),radial-gradient(circle at 75% 23%,white 0 1px,transparent 2px),radial-gradient(circle at 86% 70%,white 0 1px,transparent 2px);background-size:113px 149px,193px 263px,143px 207px}
.crew-header{display:flex;justify-content:space-between;align-items:center;color:#aec1df;font:700 10px Consolas,monospace;letter-spacing:1px}.crew-header>span:first-child{display:flex;align-items:center;gap:6px}.crew-header svg{width:17px;height:17px;color:var(--accent)}.crew-link{font:8px Consolas,monospace;color:#6ba994;letter-spacing:.3px}
.crew-root .team-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:15px}.crew-root .team-top strong{font-size:13px}.crew-root .team-top>span{font:9px Consolas,monospace;color:#879bb9;border:1px solid #ffffff1a;border-radius:6px;padding:5px 7px;white-space:nowrap}
.crew-root .hud{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.crew-root .hud-item{background:#17243a95;border:1px solid #8ab4e023;border-radius:12px;padding:10px 12px}.crew-root .hud-item label{display:flex;align-items:center;gap:5px;color:#96a9c4;font-size:10px}.crew-root .hud-item svg{width:13px;height:13px}.crew-root .hud-item b{display:block;font:700 26px Consolas,monospace;margin-top:4px;letter-spacing:-1px}.crew-root .hud-item b small{font-size:12px;color:#8197b7;margin-left:4px}.crew-root .hud-item b[data-clock]{color:#ffd49d}.crew-root .hud-item b.urgent{color:#ff8594}.crew-root .health-track{height:3px;background:#ffffff15;border-radius:2px;margin-top:5px}.crew-root .health-track span{display:block;background:#52dcb2;height:100%;border-radius:2px;transition:width .4s}
.crew-root .role-banner{display:flex;align-items:center;gap:12px;margin:19px 0 16px}.crew-root .role-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:var(--tint);color:var(--accent);border-radius:13px;box-shadow:0 0 20px color-mix(in srgb,var(--accent) 12%,transparent)}.crew-root .role-icon svg{width:23px;height:23px}.crew-root .role-banner h1{font-size:21px;color:var(--accent);line-height:1.3;margin:0}.crew-root .role-banner small{font-size:9px;color:#93a5c2}.crew-root .role-banner .help-button{margin-left:auto}
.crew-root .help-button{width:29px;height:29px;flex:none;border:1px solid #9ab9e34d;background:#17263d;color:#bdcde4;border-radius:50%;font:700 13px Arial;display:inline-grid;place-items:center}.crew-root .mission-tabs{display:flex;gap:5px;padding:4px;background:#ffffff06;border:1px solid #ffffff12;border-radius:10px;margin-bottom:13px;flex-wrap:wrap}.crew-root .mission-tabs button{border:0;border-radius:7px;padding:8px;flex:1;font-size:10px;background:transparent;color:#8fa3c3}.crew-root .mission-tabs button.active{background:var(--accent);color:#101b2d;font-weight:800}
.crew-root .mission-panel,.crew-root .scan-panel{padding:14px;border:1px solid #8eafd329;background:#101c2df0;border-radius:17px}.crew-root .mission-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.crew-root .mission-head h2{font-size:15px;margin:0;line-height:1.5;color:#e5edfc}.crew-root .mission-head small{font-size:9px;color:#8195b3}.crew-root .board-fieldset{border:0;padding:0;margin:0;min-width:0}.crew-root .board-fieldset:disabled button{opacity:.7}.crew-root .board{position:relative;background:var(--deep);padding:15px;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);border-radius:12px;min-height:295px;overflow:hidden;box-shadow:inset 0 0 30px #0002}.crew-root .board-tag{display:flex;justify-content:space-between;color:#ffffff66;letter-spacing:1.4px;font:8px Consolas,monospace}.crew-root .board-tag span:last-child{color:var(--accent);letter-spacing:.8px}.crew-root .board-hint{font-size:10px;text-align:center;color:#b2c6df9c;margin-top:12px;min-height:15px}.crew-root .data-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:11px}.crew-root .data-chip{min-width:0;border:1px solid #ffffff1a;background:#18263b;border-radius:9px;padding:8px}.crew-root .data-chip span{display:block;font-size:9px;color:#8ea8c9}.crew-root .data-chip b{display:block;font:700 11px Consolas,"Leelawadee UI",monospace;color:#cadbf2;margin-top:4px;overflow-wrap:anywhere}.crew-root .data-chip.waiting{border-style:dashed}.crew-root .data-chip.waiting b{color:#dcb571;font-size:10px}
.crew-root .primary-action{width:100%;min-height:49px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:#111b2b;border:1px solid var(--accent);border-radius:11px;margin-top:12px;font-size:14px;font-weight:800;box-shadow:0 5px 20px color-mix(in srgb,var(--accent) 17%,transparent);transition:box-shadow .2s,transform .2s}.crew-root .primary-action:hover:not(:disabled){box-shadow:0 0 26px color-mix(in srgb,var(--accent) 35%,transparent)}.crew-root .primary-action:active:not(:disabled){transform:scale(.985)}.crew-root .primary-action svg{width:18px;height:18px}.crew-root .primary-action:disabled{background:#263247;color:#7e92b0;border-color:#ffffff0a;box-shadow:none}.crew-root .primary-action.success{background:#153d35;color:#81e9c3;border-color:#59b79940}
.crew-root .mission-feedback{min-height:20px;text-align:center;font-size:11px;color:#ffb6b7;margin:8px 0;overflow-wrap:anywhere}.crew-root .mission-feedback.good{color:#86e3c2}.crew-root .crew-panel{padding:3px 3px 14px}.crew-root .crew-top{display:flex;align-items:center;justify-content:space-between;color:#8ba0bd;font-size:11px}.crew-root .crew-top>span{display:flex;align-items:center;gap:5px}.crew-root .crew-top .help-button{width:20px;height:20px;font-size:10px}.crew-root .crew-top b{font:11px Consolas,monospace;color:#c1d2eb}.crew-root .crew-dots{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.crew-root .crew-dots span{height:5px;min-width:8px;flex:1;background:#26354d;border-radius:2px}.crew-root .crew-dots span.done{background:var(--accent)}.crew-root .screen-bottom{border-top:1px solid #ffffff10;display:flex;justify-content:space-between;padding-top:12px;color:#617898;font:8px Consolas,monospace;letter-spacing:.4px}.crew-root .screen-bottom span:last-child{color:var(--accent)}
.crew-root .scan-reference{font-size:25px;letter-spacing:8px;text-align:center;color:var(--accent);padding:30px 0 25px;border-bottom:1px solid #ffffff13;background:linear-gradient(180deg,#ffffff03,transparent);border-radius:10px}.crew-root .scan-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.crew-root .scan-grid button{min-height:64px;background:var(--deep);border:1px solid var(--accent);color:var(--soft);border-radius:11px;font-size:26px}
.crew-root .pipe-settings{display:flex;gap:5px;margin-top:10px}.crew-root .pipe-settings button{flex:1;min-height:38px;background:#ffffff08;border:1px solid #ffffff25;border-radius:7px;color:#a9cbbc;font:10px Consolas,monospace}.crew-root .pipe-settings button.selected{border-color:var(--accent);color:var(--soft);background:#53dca815}.crew-root .reactor-readings{display:flex;justify-content:space-around;gap:7px;color:#c4ac85;font:10px Consolas,monospace;margin-bottom:12px}.crew-root .reactor-readings b{color:var(--accent);font-size:20px}.crew-root .reactor-readings small{color:#a18e6d}
.crew-root .cipher-key{display:flex;justify-content:center;font:12px Consolas,monospace;color:var(--soft);margin:25px 0 28px;white-space:nowrap}.crew-root .cipher-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.crew-root .cipher-cell{min-height:110px;display:grid;place-items:center;gap:8px;padding:13px 0;background:#ffffff08;color:var(--soft);border:1px solid #ffffff30;border-radius:11px}.crew-root .cipher-cell span{font-size:18px}.crew-root .cipher-cell b{font:700 32px Consolas,monospace}.crew-root .cipher-cell small{font:9px Consolas,monospace;color:#7d99be}
.crew-root .radar{width:202px;height:202px;border:1px solid #78aaff55;border-radius:50%;position:relative;margin:14px auto 0;background:repeating-radial-gradient(circle,transparent 0 30px,#74aaff26 31px 32px),linear-gradient(0deg,transparent 49.5%,#76a9ff38 50%,transparent 50.5%),linear-gradient(90deg,transparent 49.5%,#76a9ff38 50%,transparent 50.5%)}.crew-root .radar:before{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(transparent 0deg,#70a8ff10 25deg,#70a8ff30 58deg,transparent 59deg);animation:crew-scan 12s linear infinite}.crew-root .radar-north{position:absolute;top:5px;left:48%;font:9px Consolas,monospace;color:#88baff}.crew-root .meteor-marker{position:absolute;width:7px;height:7px;background:#ffb566;top:32px;right:47px;box-shadow:0 0 9px #ffc986;border-radius:2px}.crew-root .radar-ship{position:absolute;inset:0;display:grid;place-items:center;transform:rotate(var(--angle));transition:transform .18s}.crew-root .radar-ship svg{width:24px;height:24px;color:#aad4ff;filter:drop-shadow(0 0 6px #82b4ff88)}.crew-root .angle-readout{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:12px}.crew-root .angle-readout b{font:700 28px Consolas,monospace;min-width:90px;text-align:center}.crew-root .board-button{width:40px;height:40px;background:#ffffff10;border:1px solid #ffffff28;border-radius:10px;color:var(--soft);font-size:23px}.crew-root .step-controls{display:flex;justify-content:center;gap:6px;margin-top:8px}.crew-root .step-controls button{min-width:44px;min-height:32px;background:transparent;border:1px solid #ffffff20;color:#a3b9d8;border-radius:6px;font:11px Consolas,monospace}.crew-root .step-controls button.selected{border-color:var(--accent);color:var(--accent)}
.crew-root .wire-meter{display:flex;justify-content:center;align-items:baseline;gap:5px;padding:17px 0 8px}.crew-root .wire-meter b{font:700 35px Consolas,monospace;color:var(--accent)}.crew-root .wire-meter span{font:12px Consolas,monospace;color:#ffffff60}.crew-root .wire-zone{height:168px;display:flex;justify-content:space-between;position:relative}.crew-root .port-column{display:flex;flex-direction:column;justify-content:space-around;z-index:2}.crew-root .port{min-height:44px;width:65px;border:1px solid #ffffff30;border-radius:8px;background:#3e3422;color:#e2cba4;font:700 11px Consolas,monospace}.crew-root .port.selected{border-color:var(--accent);background:#614923}.crew-root .port.connected{color:var(--soft);border-color:#ffce7088}.crew-root .wire-lines{position:absolute;width:100%;height:100%;inset:0;pointer-events:none}.crew-root .wire-lines path{fill:none;stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 4px #ffbc5f66)}
.crew-root .route-meter{text-align:center;font:700 25px Consolas,monospace;color:var(--accent);margin:20px 0}.crew-root .route-row{display:flex;align-items:center;gap:7px;padding:12px 0;border-top:1px solid #ffffff15}.crew-root .route-icon svg{width:19px;height:19px;color:var(--accent)}.crew-root .route-row b{font:700 18px Consolas,monospace;width:42px}.crew-root .route-progress{height:5px;background:#ffffff18;border-radius:3px;flex:1}.crew-root .route-progress span{display:block;background:var(--accent);height:100%;border-radius:3px}.crew-root .route-row .board-button{width:33px;height:36px;font-size:19px}
.crew-root .reactor-wave{width:100%;height:78px;margin:20px 0 10px}.crew-root .reactor-wave path{fill:none;stroke:var(--accent);stroke-width:2}.crew-root .reactor-gauges{display:grid;gap:15px}.crew-root .reactor-row{display:flex;gap:10px;align-items:center;color:var(--soft);font:12px Consolas,monospace;min-height:33px}.crew-root .reactor-row input{flex:1;min-width:0;accent-color:var(--accent)}.crew-root .reactor-row b{width:18px}
.crew-root .pipe-meta{display:flex;justify-content:space-between;color:var(--accent);font:9px Consolas,monospace;padding:13px 0 9px}.crew-root .pipe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;max-width:310px;margin:0 auto}.crew-root .pipe-tile{aspect-ratio:1;padding:0;background:#ffffff07;border:1px solid #ffffff16;border-radius:8px;color:#80baa8;position:relative}.crew-root .pipe-tile svg{width:100%;height:100%;transition:transform .18s}.crew-root .pipe-tile.path{background:#49d6a21b;color:#82f4c9;border-color:#53d5aa55;filter:drop-shadow(0 0 4px #66ffc825)}.crew-root .pipe-tile.source:after,.crew-root .pipe-tile.sink:after{content:'';position:absolute;width:6px;height:6px;background:#96ffda;border-radius:50%;box-shadow:0 0 6px #80ecc6;left:3px;top:50%;margin-top:-3px}.crew-root .pipe-tile.sink:after{left:auto;right:3px}
.crew-root .hull-visual{height:170px;position:relative;display:grid;place-items:center;margin-top:10px}.crew-root .hull-layer{position:absolute;height:107px;width:107px;border:2px solid #69d6b6;border-radius:19px 4px 24px 5px;transform:rotate(var(--rotation));transition:transform .2s}.crew-root .hull-layer:after{content:'';position:absolute;left:12px;right:12px;top:49%;height:2px;background:currentColor}.crew-root .hull-layer.layer-1{height:86px;width:86px;border-color:#aae4d1;opacity:.7}.crew-root .hull-layer.layer-2{height:61px;width:61px;border-color:#fff;opacity:.6}.crew-root .layer-controls{display:flex;gap:6px}.crew-root .layer-controls button{flex:1;min-height:44px;border:1px solid #ffffff28;background:#ffffff0b;border-radius:9px;color:var(--soft);font:11px Consolas,monospace}
.crew-root .shield-goal{display:grid;grid-template-columns:repeat(3,8px);justify-content:center;gap:3px;margin-top:14px}.crew-root .shield-goal span{width:8px;height:8px;background:#ffffff18;border-radius:2px}.crew-root .shield-goal span.on{background:var(--accent)}.crew-root .shield-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;width:184px;margin:16px auto 0}.crew-root .shield-cell{aspect-ratio:1;background:#ffffff08;border:1px solid #ffffff20;border-radius:10px;color:#648e80}.crew-root .shield-cell.on{background:#53dca830;border-color:#83f5cb;color:#b0ffe2;box-shadow:inset 0 0 18px #56deb515}.crew-root .shield-cell svg{height:21px;width:21px;margin:auto}
.crew-root .signal-wave{height:65px;margin:15px 0;display:flex;align-items:center;justify-content:center;gap:5px;border-bottom:1px solid #ffffff15;padding-bottom:10px}.crew-root .signal-wave span{width:4px;background:var(--accent);border-radius:3px;opacity:.6;animation:crew-signal 2.4s ease-in-out infinite alternate}.crew-root .signal-wave span:nth-child(3n){background:var(--soft);animation-delay:-1s}.crew-root .signal-bits{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.crew-root .signal-bit{min-height:48px;border:1px solid #ffffff25;background:#ffffff09;border-radius:9px;color:#9f8ebc;font:700 18px Consolas,monospace}.crew-root .signal-bit.on{background:#ab70fd2b;border-color:#b487f5;color:#e0caff}.crew-root .signal-groups{display:flex;gap:5px;margin-top:14px}.crew-root .signal-groups button{flex:1;min-height:44px;border:1px solid #ffffff25;background:transparent;color:#b4a4cb;border-radius:7px;font:10px Consolas,monospace}.crew-root .signal-groups button.selected{background:#b884ee25;color:#e3c9ff;border-color:#b884ee}
.crew-root .protocol-list{display:grid;gap:7px;margin-top:16px}.crew-root .protocol-card{display:flex;align-items:center;gap:7px;border:1px solid #ffffff25;background:#ffffff08;border-radius:8px;padding:7px;font-size:11px}.crew-root .protocol-n{font:9px Consolas,monospace;color:#9583b0}.crew-root .protocol-icon svg{height:16px;width:16px;color:var(--accent)}.crew-root .protocol-title{flex:1}.crew-root .protocol-card button{width:31px;height:34px;border:0;border-radius:5px;background:#ffffff10;color:#d2bfef;font-size:15px}.crew-root .protocol-card button:disabled{opacity:.3}
.crew-root .ready-panel,.crew-root .idle-panel{border:1px solid #ffffff1c;background:#111f32bb;border-radius:17px;padding:25px 15px;text-align:center;display:flex;flex-direction:column;align-items:center;min-height:435px}.crew-root .ready-label{font:9px Consolas,monospace;letter-spacing:2px;color:var(--accent)}.crew-root .ready-orbit{width:150px;height:150px;border:1px dashed color-mix(in srgb,var(--accent) 45%,transparent);border-radius:50%;display:grid;place-items:center;margin:25px 0;position:relative}.crew-root .ready-orbit:after{content:'';position:absolute;inset:14px;border:1px solid color-mix(in srgb,var(--accent) 15%,transparent);border-radius:50%}.crew-root .ready-core{width:95px;height:95px;background:var(--tint);border-radius:50%;display:grid;place-items:center;color:var(--accent);box-shadow:0 0 35px color-mix(in srgb,var(--accent) 15%,transparent)}.crew-root .ready-core svg{width:43px;height:43px}.crew-root .ready-panel h2,.crew-root .idle-panel h2{font-size:20px;margin:0 0 8px;color:#f0f6ff}.crew-root .ready-panel p,.crew-root .idle-panel p{font-size:11px;color:#9aaccc;margin:0 0 17px}.crew-root .ready-panel .primary-action{min-height:68px;font-size:20px}.crew-root .ready-counter{font:700 31px Consolas,monospace;color:var(--accent);margin-top:23px}.crew-root .ready-counter small{font-size:15px;color:#8b9ebb;font-weight:normal}.crew-root .ready-avatar-row{display:flex;justify-content:center;gap:5px;flex-wrap:wrap;margin-top:14px}.crew-root .ready-avatar{width:23px;height:23px;border-radius:50%;background:#29374b;color:#8b9dbc;display:grid;place-items:center;font:9px Consolas,monospace}.crew-root .ready-avatar.done{background:var(--accent);color:#0b182b}.crew-root .ready-note{font-size:10px;color:#7f96b8;margin-top:13px}.crew-root .launched .ready-orbit{animation:crew-arrive .6s ease-out}.crew-root .ship-scene{width:230px;height:180px;position:relative;display:grid;place-items:center;margin:20px auto 15px;background:radial-gradient(ellipse,#2875c029,transparent 65%)}.crew-root .ship-scene>svg{width:86px;height:86px;color:var(--soft);transform:rotate(90deg);filter:drop-shadow(0 0 20px #5cb6ff44)}.crew-root .ship-scene i{position:absolute;height:1px;width:38px;background:linear-gradient(90deg,transparent,var(--accent));left:20px;top:50%;animation:crew-travel 3s linear infinite}.crew-root .ship-scene i:nth-of-type(2){top:35%;left:40px;animation-delay:-1s}.crew-root .ship-scene i:nth-of-type(3){top:70%;left:30px;animation-delay:-2s}.crew-root .pause-note,.crew-root .personal-clue{padding:10px 12px;background:#253249;border:1px solid #ffffff20;border-radius:9px;font-size:11px;color:#b8cbe6;margin-bottom:12px}.crew-root .personal-clue b{color:var(--accent);margin-left:12px;font:700 20px Consolas,monospace}
.crew-help{max-width:420px;width:calc(100% - 28px);padding:25px;border:1px solid var(--accent);border-radius:22px;background:#101d31;color:#e6f0ff;box-shadow:0 20px 80px #0009;font-family:"Leelawadee UI",Tahoma,sans-serif}.crew-help::backdrop{background:#020913ba;backdrop-filter:blur(5px)}.crew-help>[data-close]:first-child{float:right;width:34px;height:34px;border-radius:50%;border:1px solid #ffffff20;background:#ffffff08;color:#a9bfdc;font-size:25px}.crew-help .help-symbol{display:grid;place-items:center;width:35px;height:35px;border-radius:12px;background:var(--tint);color:var(--accent);font:700 21px Arial}.crew-help h2{color:var(--soft);font-size:20px;margin:20px 0 13px}.crew-help .help-content{font-size:13px;line-height:1.9;color:#b1c4df}.crew-help .help-content p{margin-bottom:12px}.crew-help .help-data{background:var(--tint);border:1px solid #ffffff15;border-radius:10px;padding:11px;color:var(--soft);font-size:12px}.crew-help .help-confirm{width:100%;min-height:46px;background:var(--accent);color:#101b2d;border:0;border-radius:11px;font:700 13px "Leelawadee UI",Tahoma,sans-serif;margin-top:18px;cursor:pointer}
@keyframes crew-scan{to{transform:rotate(360deg)}}@keyframes crew-signal{to{opacity:.9;transform:scaleY(.6)}}@keyframes crew-travel{from{transform:translateX(25px);opacity:0}40%{opacity:.8}to{transform:translateX(-35px);opacity:0}}@keyframes crew-arrive{from{transform:scale(.8);opacity:.3}to{transform:scale(1);opacity:1}}
@media(max-width:420px){.crew-root{padding:16px 13px 12px;border-radius:18px}.crew-root .role-banner h1{font-size:20px}.crew-root .hud-item b{font-size:24px}.crew-root .board{padding:12px}.crew-root .cipher-key{font-size:11px}.crew-root .mission-panel,.crew-root .scan-panel{padding:12px}.crew-root .signal-wave{gap:4px}.crew-root .board-tag{font-size:7px;letter-spacing:.8px}.crew-root .crew-link{font-size:7px}.crew-help{margin:auto auto 14px}}
@media(prefers-reduced-motion:reduce){.crew-root *{animation:none!important;transition:none!important}}

/* Crew V2: edge-to-edge mobile flight deck and deliberate motion controls. */
.crew-flight .mobile-container{max-width:none;width:100%;border:0}
.crew-flight.meteor-clock-visible .mobile-container{padding-top:calc(var(--player-header-height,90px) + 58px)}
#crewMeteorClockHud{position:fixed;top:var(--player-header-height,90px);left:0;right:0;height:56px;z-index:95;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 16px;box-sizing:border-box;background:linear-gradient(90deg,#211324,#352034);border-bottom:2px solid #ff6b78;box-shadow:0 4px 16px #0006;color:#ffe5e8}
#crewMeteorClockHud[hidden]{display:none}
#crewMeteorClockHud>span{font-size:16px;line-height:1.25}
#crewMeteorPinnedClock{font:800 clamp(26px,6vw,34px) Consolas,monospace;font-variant-numeric:tabular-nums;white-space:nowrap;color:#ffd49d}
#crewMeteorClockHud.urgent #crewMeteorPinnedClock{color:#ff8594;text-shadow:0 0 14px #ff405566}
.crew-flight #viewNexusGame{padding:0}
.crew-flight #screenStrobeOverlay{display:none!important}
.crew-root{max-width:none;width:100%;min-height:100dvh;border-radius:0;border:0;padding:16px 12px}
.crew-root .team-top strong{font-size:clamp(24px,6vw,38px);line-height:1.2}
.crew-employee-id{display:block;font:800 clamp(25px,7vw,40px) Consolas,monospace;overflow-wrap:anywhere;color:var(--accent)}
.crew-nickname{display:block;font-size:19px;margin-top:6px;color:#e8f1ff}
.crew-stars{opacity:.35;animation:crew-space-travel 22s linear infinite}
@keyframes crew-space-travel{from{background-position:0 0,0 0,0 0}to{background-position:226px 447px,193px 526px,-143px 621px}}
.crew-root.meteor-alert::after{content:'';position:fixed;inset:0;z-index:5000;pointer-events:none;border:5px solid #ff344c;box-shadow:inset 0 0 80px #fa163860;background:#cf12370c;animation:crew-red-alert 1.6s ease-in-out infinite}
@keyframes crew-red-alert{0%,100%{opacity:.15}50%{opacity:.7}}
.crew-root .hud-item{padding:14px}.crew-root .health-track{height:12px}
.crew-root .handoff-hint{color:#b7d9ff;font-size:13px;line-height:1.6}
.revealed-hint{padding:12px;background:#5c3624;color:#ffe2a0;border-radius:8px;overflow-wrap:anywhere}
.crew-root .pressure-slider{width:100%;grid-column:1/-1;accent-color:var(--accent);height:35px;opacity:1}
.crew-root .port-column{justify-content:space-around}.crew-root .port{min-height:44px}
.crew-root .layer-controls{display:grid;grid-template-columns:1fr;gap:10px}
.crew-root .layer-controls button{min-height:48px}
.launch-popup{border:2px solid #ffbd51;box-shadow:0 0 80px #ffbd5150;text-align:center}
.launcher-identity{font:800 30px Consolas,monospace;color:#ffdc90;overflow-wrap:anywhere}.launcher-identity small{display:block;font:700 21px var(--font-th)}
.waiting-launch{padding:18px;background:#293b56;border-radius:12px}.clue-number{font:900 72px Consolas,monospace;text-align:center;color:#ffdc90}
.personal-clue button{display:block;margin-top:10px;padding:10px;width:100%}
@media(min-width:800px){.crew-root{padding:24px 5vw}.crew-root .mission-panel,.crew-root .scan-panel,.crew-root .ready-panel{max-width:950px;margin:0 auto}.crew-root .radar{width:350px;height:350px;margin-left:auto;margin-right:auto}}
@media(prefers-reduced-motion:reduce){.crew-stars{animation:none}.crew-root.meteor-alert::after{animation:none;opacity:.2}}

.player-identity-banner{padding:14px 18px;background:#10233c;color:#eaf5ff;display:grid;gap:5px;border-bottom:1px solid #63adff50}.player-identity-banner strong{font-size:clamp(26px,7vw,38px);overflow-wrap:anywhere}.player-identity-banner span{font-size:20px;color:#bcd2ef}.crew-flight .player-identity-banner{display:none}
.player-identity-cards{--identity-accent:var(--accent,#63adff);display:grid;grid-template-columns:clamp(86px,25vw,132px) minmax(0,1fr);gap:12px;margin:16px 0 0;align-items:stretch}
.identity-group-card,.identity-person-card{min-width:0;display:flex;flex-direction:column;justify-content:center;border-radius:16px;border:1px solid #adc9ec26;box-shadow:0 6px 20px #0002;position:relative;overflow:hidden}
.identity-group-card{align-items:center;text-align:center;padding:14px 8px;background:linear-gradient(145deg,color-mix(in srgb,var(--identity-accent) 25%,#0c1d32),#101d30);border-color:color-mix(in srgb,var(--identity-accent) 40%,transparent)}
.identity-person-card{padding:16px 18px;background:linear-gradient(135deg,#192b45,#102037);gap:6px}
.player-identity-cards .identity-label{font-size:12px!important;line-height:1.4;color:#b0c5df;letter-spacing:.5px}
.player-identity-cards .identity-group-number{font:900 clamp(44px,13vw,68px)/1.08 var(--font-en,Consolas,monospace);color:var(--identity-accent);text-shadow:0 0 24px color-mix(in srgb,var(--identity-accent) 22%,transparent);margin:4px 0}
.player-identity-cards .identity-group-caption{font-size:9px!important;letter-spacing:1.1px;color:#89a5c5;line-height:1.5}
.player-identity-cards .identity-employee{font:800 clamp(22px,6vw,34px)/1.25 Consolas,monospace;color:#edf5ff;overflow-wrap:anywhere}
.player-identity-cards .identity-nickname{font-size:18px!important;line-height:1.5;color:#c2d6ee;overflow-wrap:anywhere}
.crew-wave-label{margin:10px 2px 0;text-align:right;font:10px Consolas,monospace;letter-spacing:1px;color:#8ca3c2}
.player-identity-banner .player-identity-cards{margin:0}
@media(max-width:360px){.player-identity-cards{grid-template-columns:82px minmax(0,1fr);gap:9px}.identity-person-card{padding:14px 12px}.player-identity-cards .identity-employee{font-size:21px}}
.game-show .show-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
.game-show .show-tile{aspect-ratio:1;min-height:58px;border:1px solid var(--accent,#70d9ff);border-radius:14px;background:linear-gradient(145deg,#172e45,#0b162a);color:#dff6ff;font-size:clamp(25px,7vw,42px);font-weight:800;touch-action:manipulation;box-shadow:inset 0 1px 0 #ffffff18}
.game-show .show-tile.open{background:#e0f5ff;color:#102337;transform:translateY(-2px)}
.game-show .show-tile.matched{background:#153d36;color:#88eed1;border-color:#62cdb2;opacity:.65}
.game-show .color-tile{color:#ffffff18;font-size:27px;border:2px solid #ffffff24}
.game-show .admin-target{outline:4px solid #fff;outline-offset:-6px}
.show-progress,.show-goal{text-align:center;font-size:28px;font-weight:800;color:#edf8ff;margin:12px 0}
.show-goal{font-size:21px;color:#a7c0df}.show-tools{display:flex;justify-content:flex-end;margin-top:14px}
.show-secondary{background:#13243b;color:#d5eaff;border:1px solid #597695;border-radius:10px;padding:11px 16px;font-size:15px;min-height:44px;cursor:pointer}
.relay-card{border:1px solid #5cbda9;background:#0e272d;padding:20px;border-radius:16px;margin-top:18px;text-align:center}.relay-card>b{display:block;color:#98efd7;font-size:22px;margin-bottom:16px}.relay-card small{display:block;color:#bed4e6;line-height:1.7;overflow-wrap:anywhere}.relay-card p{line-height:1.7}
.relay-readout{font-size:40px;font-weight:900;letter-spacing:12px;margin:18px 0;color:#fff;font-variant-numeric:tabular-nums}.relay-keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border:0;padding:0;margin:16px 0}.relay-keypad button{background:#1b3547;color:#fff;border:1px solid #698ba5;border-radius:10px;min-height:54px;font-size:23px;font-weight:700}.waiting-data{background:#2b293c;color:#e8d6ab;border-radius:8px;padding:12px;line-height:1.6;margin-top:12px}
@media(min-width:700px){.game-show .show-grid{max-width:620px;margin:20px auto}.game-show .show-tile{font-size:45px}.relay-keypad{max-width:440px;margin:16px auto}}
.game-show .three-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.game-show .two-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.show-hole{aspect-ratio:1;min-height:58px;visibility:hidden}.game-show [data-picked],.game-show [data-current]{background:var(--accent);color:#102337;box-shadow:0 0 20px color-mix(in srgb,var(--accent) 35%,transparent)}.game-show [data-admin-target]{outline:4px solid #fff;outline-offset:-6px}.memory-dismiss{text-align:center;padding:14px;color:var(--soft);background:var(--deep);border-radius:10px}.sequence-values{display:flex;align-items:center;justify-content:center;gap:9px;margin:28px 0;font-size:clamp(20px,5vw,32px)}.sequence-values b,.code-guess b{background:var(--deep);border:1px solid var(--accent);border-radius:10px;padding:10px}.show-equation{text-align:center;font-size:clamp(24px,6vw,40px);margin:28px 0}.show-equation b{color:var(--accent)}.switch-target,.switch-board{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:18px auto}.switch-target{width:90px}.switch-target span{height:24px;border-radius:4px;background:#273349}.switch-target .on,.switch-board .on{background:var(--accent);color:#102337}.switch-board{max-width:360px}.switch-board span{aspect-ratio:1;display:grid;place-items:center;background:#182337;color:#697b93;border:1px solid #61738a;border-radius:10px;font-size:30px}.switch-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.switch-controls button{padding:14px 4px;min-height:48px;background:var(--deep);color:var(--soft);border:1px solid var(--accent);border-radius:8px}.cargo-token{display:flex;flex-direction:column;align-items:center;gap:12px;margin:26px 0}.cargo-token b{font-size:76px;color:var(--accent)}.cargo-token span{font-size:30px}.cargo-rules{text-align:center;line-height:1.8;color:var(--soft)}.code-guess{display:flex;gap:12px;justify-content:center;font-size:36px;margin:26px 0}.code-history{display:grid;gap:8px;margin-top:20px}.code-history>div{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px;background:#102033;border-radius:8px}.code-history b{font-size:22px;white-space:nowrap}.code-history span{font-size:12px;line-height:1.5}

/* Keep the cipher acknowledgement reachable in Chrome's native dialog. */
.crew-help{box-sizing:border-box;max-height:calc(100dvh - 32px);overflow-y:auto}.crew-help .help-confirm{display:block;flex-shrink:0;position:sticky;bottom:0;z-index:2;min-height:52px;width:100%;background:#25456b;color:#fff;border:1px solid #9acaff;border-radius:12px;padding:14px;font-size:16px;cursor:pointer}.clue-popup p{line-height:1.65}.clue-popup .clue-number{font-size:clamp(48px,15vw,90px)}
.sequence-values{flex-wrap:wrap;gap:6px}.sequence-values b{font-size:clamp(15px,4vw,25px);padding:7px}.balance-pairs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.balance-pairs span{padding:10px;background:#152a40;border-radius:10px;font-size:24px}.balance-pairs b{font-size:13px;color:#abc6df}.maze-cell{aspect-ratio:1;display:grid;place-items:center;font-size:clamp(16px,5vw,30px);background:#192b40;border-radius:4px}.maze-cell.wall{background:#020916;border:1px solid #35516a}.game-show .maze-grid{gap:4px}.reverse-joystick{display:grid;grid-template-columns:repeat(3,64px);grid-template-rows:repeat(3,54px);gap:8px;justify-content:center;margin:18px auto}.direction{background:#18354f;color:#fff;border:2px solid var(--accent);border-radius:12px;font-size:32px;touch-action:manipulation}.direction-0{grid-area:1/2}.direction-1{grid-area:2/3}.direction-2{grid-area:3/2}.direction-3{grid-area:2/1}

.sequence-error{display:flex;align-items:center;justify-content:center;gap:12px;background:#47172a;border:2px solid #ff6685;color:#ffe3eb;padding:14px;border-radius:12px;margin:12px 0;font-weight:700}.sequence-error b{font-size:32px}.cell-quotas{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.cell-quotas span{padding:10px 12px;border:1px solid currentColor;border-radius:10px;font-weight:700}.cell-quotas .blue{color:#85c6ff}.cell-quotas .amber{color:#ffc769}.game-show [data-cell-color="0"]{border:2px solid #79baff}.game-show [data-cell-color="1"]{border:2px solid #ffbd56}.game-show [data-cell-color] small{display:block;font-size:15px;line-height:1.2;color:#9bcfff}.game-show [data-cell-color="1"] small{color:#ffc769}.signal-target{text-align:center;padding:18px;background:#0e293f;border:1px solid var(--accent);border-radius:14px}.signal-target small{display:block;color:#b9d5ec;margin-bottom:10px}.signal-target b{font:700 clamp(25px,7vw,40px)/1.3 Arial,sans-serif;letter-spacing:4px}.game-show .signal-grid .show-tile{font:700 clamp(14px,4vw,24px)/1.4 Arial,sans-serif;letter-spacing:0;min-height:70px;overflow-wrap:anywhere}

/* Cruise state and scattered collision-sensitive navigation. */
.crew-root .idle-panel h2{font-size:clamp(26px,7vw,36px);line-height:1.35}.crew-root .idle-panel p{font-size:16px;line-height:1.65;max-width:32em}.crew-root .normal-status{display:inline-flex;align-items:center;justify-content:center;font-size:clamp(16px,4vw,18px);line-height:1.5;font-weight:600;color:#50ddb1;padding:5px 12px;margin:8px 0 14px;border:1px solid #50ddb133;border-radius:999px;background:#16b7850d}
.crew-root .ship-scene>svg{width:132px;height:132px;transform:none;animation:crew-ship-float 3.6s ease-in-out infinite}.maze-safety{font-size:16px;font-weight:800;color:#ffc479;background:#66371855;border:1px solid #ffa44888;border-radius:10px;padding:12px;margin:8px 0 12px;text-align:center}.reverse-joystick.scattered{grid-template-columns:repeat(3,minmax(0,70px));grid-template-rows:repeat(3,58px);width:100%;max-width:240px;gap:10px}.collision-popup{border:2px solid #ff7f83;text-align:center}.crew-root .maze-grid{gap:3px}
@keyframes crew-ship-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-13px) rotate(3deg)}}
@media(prefers-reduced-motion:reduce){.crew-root .ship-scene>svg{animation:none}}
/* Keep the current signal reference visible below the pinned meteor clock. */
.crew-root:has(.signal-target),.game-show:has(.signal-target),.game-show:has(.signal-target) .board-fieldset{overflow:visible;min-width:0}
.game-show .signal-target{position:sticky;top:calc(82px + env(safe-area-inset-top,0px));z-index:8;background:#10283e;border:2px solid #77dadd;box-shadow:0 8px 24px #0008;padding:12px;border-radius:12px}
.game-show .signal-target small{display:block;color:#ccefff;font-size:14px}
.game-show .signal-target b{color:#fff}
.crew-root .role-banner h1{font-size:clamp(28px,7vw,38px)!important;font-weight:900;text-shadow:0 0 18px var(--tint)}
.crew-root .role-banner small{font-size:14px!important;line-height:1.5}
.crew-root .crew-idle h2{font-size:18px!important;font-weight:500;color:#a8bbd0}
.crew-retry{position:sticky;top:80px;z-index:12;margin:10px 0;padding:12px;text-align:center;color:#ffe6af;background:#492b16;border:1px solid #ffbc68;border-radius:10px}
.crew-wave-result{text-align:center}.crew-wave-result h1{font-size:clamp(28px,7vw,44px)!important}.crew-wave-result .won{color:#7effbc}.crew-wave-result .lost{color:#ff9393}.crew-wave-result strong{display:block;font-size:28px;margin:16px 0}
