:root{color-scheme:dark;--green:#bdf478;--muted:#9ca79a}*{box-sizing:border-box}body{margin:0;color:#eff2ec;background:#090b0b;font:14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select{font:inherit}button{color:inherit;background:#232824;border:1px solid #3d4739;border-radius:10px;padding:12px 16px;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button,input[type=checkbox]{touch-action:manipulation}button,button *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid #8bc7ff;outline-offset:3px}input,select{border:1px solid #414b3d;background:#171d16;color:#eff2ec;border-radius:8px;padding:12px;max-width:100%}input[type=range]{accent-color:var(--green);width:100%}.brand{font-weight:800;font-size:28px;letter-spacing:-2px}.brand em{color:var(--green);font-style:normal}.label{color:var(--muted);font-size:11px;letter-spacing:2px}.sub{color:var(--muted);font-size:12px}.error{color:#ffb7aa;line-height:1.6}.success{color:var(--green)}.gate{margin:10vh auto;max-width:420px;padding:25px}.gate h1{font-size:30px}.gate label{display:block;margin:20px 0 8px;color:var(--muted)}.gate input{width:100%}.primary{background:var(--green);color:#17220e;border-color:var(--green)}.gate .primary{width:100%;margin:25px 0 10px}.gate p{line-height:1.6;color:var(--muted)}a{color:#bdf478}.crew-head{gap:10px}.crew-status{line-height:1.6}.crew-channel:disabled{opacity:.35}.crew-demo{color:#bdf478}.crew-settings button{margin-top:15px}.admin-app{max-width:1200px;margin:auto;padding:30px 24px}.bar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.panel{border:1px solid #333e30;background:#151a14;border-radius:14px;padding:22px;margin:24px 0}.danger{background:#402621;border-color:#986052;color:#ffc2b4}.admin-channels{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.admin-channels button{min-height:75px}.member{padding:20px 0;border-top:1px solid #333e30}.member h3{margin:0}.access-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:18px 0}.access-grid label{display:block;margin:10px 0;color:var(--muted);font-size:12px}.access-grid select{width:100%}.mic-live{color:var(--green)}.toast{min-height:24px;line-height:1.6}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}[hidden]{display:none!important}@media(max-width:600px){.access-grid{grid-template-columns:1fr}.admin-channels{grid-template-columns:1fr}.admin-app{padding:22px 16px}.crew-app{gap:18px}.crew-talk{width:210px;height:210px}}

/* Compact routing matrix, with a fixed crew column while scrolling. */
.admin-app{max-width:1600px}.matrix-help{margin:4px 0 18px}.matrix-scroll{overflow:auto;border:1px solid #344032;border-radius:10px;max-height:68vh}.routing-matrix{border-collapse:separate;border-spacing:0;width:100%;font-size:12px;white-space:nowrap}.routing-matrix th,.routing-matrix td{padding:14px 11px;text-align:center;border-right:1px solid #30392f;border-bottom:1px solid #30392f}.routing-matrix thead th{position:sticky;top:0;background:#20291e;z-index:2;font-weight:600}.routing-matrix thead tr:nth-child(2) th{top:43px;font-size:11px}.routing-matrix .crew-column{position:sticky;left:0;text-align:left;min-width:155px;background:#1a2118;z-index:1}.routing-matrix thead .crew-column{z-index:4}.routing-matrix tbody tr:hover td{background:#20271e}.crew-row-name{display:block;font-size:14px;margin-bottom:5px}.routing-matrix input[type=checkbox]{appearance:none;-webkit-appearance:none;width:25px;height:25px;padding:0;margin:0;border:1px solid #53604e;border-radius:5px;display:inline-grid;place-content:center;cursor:pointer;background:#10150f;vertical-align:middle}.routing-matrix input[type=checkbox]:checked{background:#bdf478;border-color:#bdf478}.routing-matrix input[type=checkbox]:checked:after{content:'✓';color:#18230f;font-size:19px;font-weight:800;line-height:1}.routing-matrix .listen-cell input:checked{background:#8dc6ee;border-color:#8dc6ee}.routing-matrix .open-cell input:checked{background:#efd18a;border-color:#efd18a}.routing-matrix input:focus-visible{outline:2px solid white;outline-offset:3px}.routing-matrix input:disabled{opacity:.45;cursor:wait}.routing-matrix select{padding:9px;font-size:12px;max-width:145px}.routing-matrix .open-cell{border-right:2px solid #526049}.routing-matrix .listen-head{color:#8dc6ee}.routing-matrix .talk-head{color:#bdf478}.routing-matrix .open-head{color:#efd18a}.matrix-actions{display:flex;gap:6px}.matrix-actions button{padding:8px 10px;font-size:11px}.matrix-actions .remove-crew{background:transparent;color:#ffb7aa;border-color:transparent}.routing-matrix tbody tr:last-child>*{border-bottom:0}.routing-matrix .member{padding:0;border:0}

.presence-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px;vertical-align:middle;background:#70766c}.presence-dot.online{background:#f2645d;box-shadow:0 0 0 3px #f2645d20}.crew-presence{display:block;font-size:11px;margin-bottom:5px;color:#a1a79d}.crew-presence.online{color:#f58d86}.crew-column>.sub{display:block;margin-top:3px}

.brand{font-size:clamp(18px,3.5vw,30px);letter-spacing:-.6px;line-height:1.15}.brand .brand-credit{display:block;font-size:11px;letter-spacing:1.2px;font-weight:500;color:#9ca79a;margin-top:5px}.crew-head .brand{font-size:clamp(17px,4.5vw,24px)}
