:root{--brand:#5bb0ee;--brand-hover:#8cc8f2;--brand-soft:#5bb0ee24;--bg:#0a0f17;--panel:#111823;--panel-2:#161e2b;--elev:#1b2534;--text:#e6ecf3;--muted:#94a3b8;--soft:#64748b;--border:#e6ecf31a;--border-strong:#e6ecf32e;--success:#34d399;--warning:#fbbf24;--danger:#f87171;--info:#60a5fa;--purple:#a78bfa;--customer:#60a5fa;--engineer:#34d399;--admin:#a78bfa;--r-sm:6px;--r-md:9px;--r-lg:12px;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:13px;line-height:1.45}.app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.topbar{background:var(--panel);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:14px;height:52px;padding:0 16px;display:flex}.topbar .brand{letter-spacing:-.01em;align-items:center;gap:9px;font-weight:700;display:flex}.topbar .brand .dot{background:var(--brand);color:#06121e;border-radius:6px;place-items:center;width:22px;height:22px;font-weight:800;display:grid}.topbar .env{font-family:var(--mono);background:var(--warning);color:#241a02;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.topbar .env.staging{background:var(--warning)}.topbar .env.development{background:var(--success);color:#052018}.topbar .env.production{background:var(--danger);color:#2a0606}.topbar .api{font-family:var(--mono);color:var(--soft);margin-left:auto;font-size:11px}.columns{background:var(--border);flex:auto;grid-template-columns:1fr 1fr 1.1fr;gap:1px;min-height:0;display:grid}.col{background:var(--bg);flex-direction:column;min-height:0;display:flex}.col-head{border-bottom:1px solid var(--border);background:var(--panel);flex:none;align-items:center;gap:8px;padding:10px 14px;display:flex}.col-head .tag{border-radius:999px;width:8px;height:8px}.col-head h2{letter-spacing:.01em;margin:0;font-size:13px;font-weight:700}.col-head .who{color:var(--muted);font-size:11px;font-family:var(--mono);margin-left:auto}.col-body{flex:auto;padding:12px 14px;overflow-y:auto}.tag.customer{background:var(--customer)}.tag.engineer{background:var(--engineer)}.tag.admin{background:var(--admin)}.session-strip{align-items:center;gap:8px;display:flex}.session-chip{background:var(--panel-2);border:1px solid var(--border);font-size:11px;font-family:var(--mono);border-radius:999px;align-items:center;gap:7px;padding:4px 9px;display:flex}.session-chip .led{background:var(--soft);border-radius:999px;width:7px;height:7px}.session-chip.on .led{background:var(--success);box-shadow:0 0 6px var(--success)}.session-chip .role{text-transform:capitalize;color:var(--muted)}.session-chip .name{color:var(--text)}.session-chip button{color:var(--soft);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:12px}.session-chip button:hover{color:var(--danger)}.section{margin-bottom:16px}.section>h3{text-transform:uppercase;letter-spacing:.06em;color:var(--soft);margin:0 0 8px;font-size:11px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:9px;padding:11px 12px}.card.job{border-left:3px solid var(--border-strong)}.card .row{align-items:center;gap:8px;display:flex}.card .row+.row{margin-top:6px}.card .ref{font-family:var(--mono);color:var(--muted);font-size:11px}.card .title{font-weight:600}.card .meta{color:var(--muted);font-size:11px}.spacer{flex:1}.badge{font-family:var(--mono);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:700}.badge.CREATED,.badge.AWAITING_ACCEPTANCE{color:var(--info);background:#60a5fa29}.badge.MATCHED,.badge.ASSIGNED{color:var(--purple);background:#a78bfa29}.badge.ACCEPTED,.badge.EN_ROUTE,.badge.IN_PROGRESS{color:var(--warning);background:#fbbf2429}.badge.CERTIFIED{color:var(--success);background:#34d39929}.badge.CANCELLED,.badge.FAILED,.badge.ESCALATED{color:var(--danger);background:#f8717129}button.btn{font-family:var(--sans);cursor:pointer;border:1px solid var(--border-strong);background:var(--panel-2);color:var(--text);border-radius:var(--r-sm);padding:5px 10px;font-size:12px;font-weight:600;transition:background .12s,border-color .12s}button.btn:hover:not(:disabled){background:var(--elev);border-color:var(--brand)}button.btn:disabled{opacity:.4;cursor:not-allowed}button.btn.primary{background:var(--brand);border-color:var(--brand);color:#06121e}button.btn.primary:hover:not(:disabled){background:var(--brand-hover)}button.btn.danger{color:var(--danger);border-color:#f8717166}button.btn.danger:hover:not(:disabled){background:#f871711f}button.btn.sm{padding:3px 8px;font-size:11px}.btn-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}label.field{margin-bottom:8px;display:block}label.field>span{color:var(--muted);margin-bottom:3px;font-size:11px;display:block}input,select,textarea{width:100%;font-family:var(--sans);color:var(--text);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r-sm);outline:none;padding:6px 8px;font-size:12px}input:focus,select:focus,textarea:focus{border-color:var(--brand)}.field-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.login-card{max-width:340px}.login-card .presets{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.console-toolbar{border-bottom:1px solid var(--border);background:var(--panel);flex:none;align-items:center;gap:8px;padding:8px 14px;display:flex}.console-toolbar .count{font-family:var(--mono);color:var(--muted);font-size:11px}.stream-status{font-size:11px;font-family:var(--mono);color:var(--muted);align-items:center;gap:5px;display:flex}.stream-status .led{background:var(--soft);border-radius:999px;width:7px;height:7px}.stream-status.open .led{background:var(--success);box-shadow:0 0 6px var(--success)}.stream-status.retrying .led,.stream-status.reauth .led{background:var(--warning)}.stream-status.error .led,.stream-status.stopped .led{background:var(--danger)}.events{font-family:var(--mono);padding:6px 0;font-size:11.5px}.event{border-left:3px solid var(--border-strong);background:var(--panel);border-radius:0 var(--r-sm) var(--r-sm) 0;margin:0 10px 5px;padding:6px 10px}.event .ehead{cursor:pointer;align-items:center;gap:8px;display:flex}.event .src{text-transform:uppercase;border-radius:3px;padding:1px 5px;font-size:9px;font-weight:700}.event .src.customer{color:var(--customer);background:#60a5fa2e}.event .src.engineer{color:var(--engineer);background:#34d3992e}.event .name{color:var(--brand-hover);font-weight:700}.event .ts{color:var(--soft);margin-left:auto;font-size:10px}.event pre{white-space:pre-wrap;word-break:break-word;color:var(--muted);max-height:240px;margin:6px 0 0;overflow:auto}.event.offer-created{border-left-color:var(--success)}.event.offer-claimed,.event.offer-expired{border-left-color:var(--warning)}.event.schedule-proposal{border-left-color:var(--info)}.event.proposal-accepted{border-left-color:var(--success)}.event.proposal-rejected{border-left-color:var(--danger)}.empty{color:var(--soft);text-align:center;padding:24px 8px;font-size:12px}.toast-wrap{z-index:50;flex-direction:column;gap:8px;max-width:380px;display:flex;position:fixed;bottom:16px;right:16px}.toast{border-radius:var(--r-md);border:1px solid var(--border-strong);padding:9px 12px;font-size:12px;box-shadow:0 8px 24px #0006}.toast.success{color:var(--success);background:#0d2a20;border-color:#34d3994d}.toast.error{color:var(--danger);background:#2a1010;border-color:#f871714d}.toast.info{background:var(--panel-2);color:var(--text)}.inline-note{color:var(--soft);margin-top:4px;font-size:11px}.mono{font-family:var(--mono)}.hint{color:var(--soft);background:var(--panel-2);border:1px dashed var(--border-strong);border-radius:var(--r-sm);margin-bottom:10px;padding:8px 10px;font-size:11px}
