﻿/* === bundle-pages.css === */
/* Generated 2026-06-22 20:27 — DO NOT EDIT DIRECTLY */

/* --- pipeline.css --- */
/* pipeline.css â€” ATLAS Pipeline kanban (#view-pipeline). Token-only â†’ both themes
 * auto-valid. No-scroll safe: the outer frame never scrolls; .kb-board scrolls
 * internally (allowed per feedback_dashboard_scroll_rule). Loads after depts.css,
 * reuses .dept-head / .dept-kpis / .tc-empty. Scoped to #view-pipeline + .kb-*. */

#view-pipeline.view-off { display: none; }
#view-pipeline .dept-kpis { grid-template-columns: repeat(5, 1fr); }

/* board = vertical stack of the 3 domain groups; scrolls internally */
.kb-board {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-right: 4px;
}

.kb-group { display: flex; flex-direction: column; gap: 6px; }
.kb-group-head {
  display: flex; align-items: center; gap: 8px;
  padding-left: 2px;
  border-left: 3px solid var(--accent);
}
#view-pipeline .kb-group[data-group="listings"]     .kb-group-head { border-left-color: var(--good, #3affad); }
#view-pipeline .kb-group[data-group="transactions"] .kb-group-head { border-left-color: var(--accent, #00d2ff); }
#view-pipeline .kb-group[data-group="tasks"]        .kb-group-head { border-left-color: var(--warn, #ffb020); }
.kb-group-label {
  font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
  font-weight: 700; color: var(--text); opacity: .9; padding-left: 8px;
}
.kb-group-count {
  font-size: 11px; color: var(--text-dim); font-variant-numeric: tabular-nums;
}

/* columns = the ClickUp lists in that group; horizontal scroll if many */
.kb-cols {
  display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px;
  scrollbar-width: thin;
}
.kb-col {
  flex: 0 0 244px; max-width: 244px;
  display: flex; flex-direction: column;
  background: var(--panel2, var(--panel));
  border: 1px solid var(--border);
  border-radius: var(--rad, 10px);
  max-height: 340px;
}
.kb-col-head {
  display: flex; align-items: center; gap: 6px;
  padding: 8px 10px; border-bottom: 1px solid var(--border);
  position: sticky; top: 0;
}
.kb-col-name {
  flex: 1; font-size: 12px; font-weight: 600; color: var(--text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.kb-col-count {
  font-size: 11px; color: var(--text-dim); font-variant-numeric: tabular-nums;
}
.kb-cap {
  font-size: 9px; font-weight: 700; color: var(--warn, #ffb020);
  border: 1px solid var(--warn, #ffb020); border-radius: 6px; padding: 0 4px;
}
.kb-col-body {
  display: flex; flex-direction: column; gap: 6px;
  padding: 8px; overflow-y: auto; min-height: 0;
}
.kb-col-empty {
  font-size: 11px; color: var(--text-muted, var(--text-dim)); opacity: .6;
  padding: 6px 2px; font-style: italic;
}

/* cards = real ClickUp tasks */
.kb-card {
  display: block; text-decoration: none; color: inherit;
  background: var(--bg2, var(--panel));
  border: 1px solid var(--border);
  border-radius: 8px; padding: 8px 9px;
  transition: transform .12s ease, border-color .12s ease, box-shadow .12s ease;
}
a.kb-card:hover {
  transform: translateY(-1px);
  border-color: var(--accent);
  box-shadow: 0 4px 14px rgba(0, 0, 0, .18);
}
.kb-card-top { display: flex; align-items: flex-start; gap: 6px; }
.kb-card-name {
  font-size: 12px; line-height: 1.3; color: var(--text);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden;
}
.kb-card-status { margin-top: 6px; }
.kb-chip {
  display: inline-block; font-size: 9.5px; font-weight: 700;
  letter-spacing: .04em; text-transform: uppercase;
  padding: 2px 7px; border-radius: 20px;
  color: var(--chip, var(--accent));
  background: color-mix(in srgb, var(--chip, var(--accent)) 16%, transparent);
  border: 1px solid color-mix(in srgb, var(--chip, var(--accent)) 45%, transparent);
}
.kb-prio {
  flex: 0 0 auto; width: 7px; height: 7px; border-radius: 50%; margin-top: 4px;
  background: var(--text-dim);
}
.kb-prio.is-urgent { background: var(--bad, #ff4d4f); }
.kb-prio.is-high   { background: var(--warn, #ffb020); }
.kb-prio.is-low    { background: var(--text-dim); opacity: .6; }
.kb-card-meta {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  margin-top: 6px; font-size: 10.5px; color: var(--text-dim);
}
.kb-due { font-variant-numeric: tabular-nums; }
.kb-due.is-soon    { color: var(--warn, #ffb020); }
.kb-due.is-overdue { color: var(--bad, #ff4d4f); font-weight: 600; }
.kb-who {
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 130px;
  opacity: .85;
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   V5 Revenue / Deals pipeline  Â·  view-crm  Â·  token-only â†’ both themes
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* â”€â”€ Page header â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-page-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 24px 10px;
  flex-shrink: 0;
}
.v5-page-head-text { display: flex; flex-direction: column; gap: 3px; }
.v5-eyebrow {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--accent);
}
.v5-page-h1 {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--text);
  margin: 0;
}
.v5-page-sub {
  font-size: 11.5px;
  color: var(--text-dim);
  margin: 0;
  line-height: 1.45;
}
.v5-page-actions {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
  align-items: center;
  padding-top: 2px;
}
/* btn-gold â€” appended here in case not declared elsewhere */
.btn.btn-gold {
  background: color-mix(in srgb, var(--accent) 80%, var(--warn, #ffb020) 20%);
  color: var(--bg);
  border-color: transparent;
}
.btn.btn-gold:hover { filter: brightness(1.1); }

/* â”€â”€ Deals canvas: board + sidebar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#view-crm .v5-deals-canvas {
  display: flex;
  gap: 14px;
  flex: 1;
  min-height: 0;
  padding: 0 20px 18px;
  overflow: hidden;
}

/* â”€â”€ 4-lane Kanban board â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-pipeline-board {
  display: flex;
  gap: 10px;
  flex: 1;
  min-height: 0;
  overflow-x: auto;
  padding-bottom: 6px;
  scrollbar-width: thin;
  scrollbar-color: var(--border) transparent;
}
.v5-lane {
  flex: 0 0 210px;
  display: flex;
  flex-direction: column;
  background: var(--panel2, var(--panel));
  border: 1px solid var(--border);
  border-radius: var(--rad, 10px);
  min-height: 0;
  max-height: 100%;
  overflow: hidden;
}
.v5-lane-head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px 8px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.v5-lane-title {
  flex: 1;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text);
}
.v5-lane-body {
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 9px;
  overflow-y: auto;
  flex: 1;
  min-height: 0;
  scrollbar-width: thin;
  scrollbar-color: var(--border) transparent;
}

/* â”€â”€ Deal cards â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-deal-card {
  display: flex;
  flex-direction: column;
  gap: 4px;
  background: var(--bg2, var(--bg));
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 9px 10px;
  transition: border-color .12s ease, transform .12s ease, box-shadow .12s ease;
  cursor: default;
}
.v5-deal-card:hover {
  border-color: var(--accent);
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(0,0,0,.15);
}
.v5-deal-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.3;
}
.v5-deal-desc {
  font-size: 11px;
  color: var(--text-dim);
  line-height: 1.4;
}
.v5-deal-meta {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin-top: 3px;
}

/* â”€â”€ V5 chips (scoped, separate from .kb-chip) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-chip {
  display: inline-flex;
  align-items: center;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  padding: 2px 8px;
  border-radius: 20px;
  white-space: nowrap;
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 14%, transparent);
  border: 1px solid color-mix(in srgb, var(--accent) 38%, transparent);
}
.v5-chip-hot {
  color: var(--bad, #ff4d4f);
  background: color-mix(in srgb, var(--bad, #ff4d4f) 13%, transparent);
  border-color: color-mix(in srgb, var(--bad, #ff4d4f) 36%, transparent);
}
.v5-chip-warn {
  color: var(--warn, #ffb020);
  background: color-mix(in srgb, var(--warn, #ffb020) 13%, transparent);
  border-color: color-mix(in srgb, var(--warn, #ffb020) 36%, transparent);
}
.v5-chip-good {
  color: var(--good, #3affad);
  background: color-mix(in srgb, var(--good, #3affad) 13%, transparent);
  border-color: color-mix(in srgb, var(--good, #3affad) 36%, transparent);
}
.v5-chip-blue {
  color: var(--accent, #00d2ff);
  background: color-mix(in srgb, var(--accent, #00d2ff) 13%, transparent);
  border-color: color-mix(in srgb, var(--accent, #00d2ff) 36%, transparent);
}

/* â”€â”€ Deal Focus sidebar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-focus-panel {
  flex: 0 0 28%;
  max-width: 290px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 0;
  overflow-y: auto;
  scrollbar-width: thin;
}
.v5-focus-card {
  background: var(--panel2, var(--panel));
  border: 1px solid var(--border);
  border-radius: var(--rad, 10px);
  padding: 14px 15px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex-shrink: 0;
}
.v5-focus-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.v5-focus-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text);
}
.v5-insight {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 9px 11px;
  background: var(--bg2, var(--bg));
  border: 1px solid var(--border);
  border-radius: 8px;
}
.v5-insight strong {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.3;
}
.v5-insight span {
  font-size: 11px;
  color: var(--text-dim);
  line-height: 1.4;
}
.v5-source-badge {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 6px;
  border-top: 1px solid var(--border);
}
.v5-source-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--accent);
}
.v5-source-refresh {
  font-size: 10px;
  color: var(--text-dim);
  font-variant-numeric: tabular-nums;
}

/* â”€â”€ Pipeline trend chart card â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-trend-card {
  background: var(--panel2, var(--panel));
  border: 1px solid var(--border);
  border-radius: var(--rad, 10px);
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex-shrink: 0;
}
.v5-trend-head {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--text-dim);
}
.v5-trend-chart {
  width: 100%;
  height: 80px;
  display: block;
  border-radius: 4px;
  overflow: hidden;
}
.v5-trend-label {
  font-size: 10px;
  fill: var(--text-dim);
  font-family: var(--font-mono, 'JetBrains Mono', monospace);
}

/* â”€â”€ Light-theme refinements â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
[data-theme="light"] .v5-deal-card:hover,
:root[data-theme="light"] .v5-deal-card:hover {
  box-shadow: 0 3px 10px rgba(0,0,0,.08);
}
[data-theme="light"] .v5-focus-panel .v5-focus-card,
:root[data-theme="light"] .v5-focus-panel .v5-focus-card {
  border-color: var(--border);
}


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   Pipeline Kanban v2 â€” card interactions, lane counts, quick-add, volume stat
   Appended â€” token-only â†’ both themes auto-valid. No hardcoded colors.
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* â”€â”€ Card action row (hover-reveal, CSS-only) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-deal-card .card-actions {
  display: none;
  gap: 6px;
  padding-top: 8px;
  border-top: 1px solid var(--line, var(--border));
  margin-top: 8px;
}
.v5-deal-card:hover .card-actions { display: flex; }

.card-actions .btn-view,
.card-actions .btn-move {
  flex: 1;
  font-size: 11px;
  padding: 4px 0;
  border-radius: 6px;
  cursor: pointer;
  transition: background .15s, color .15s, border-color .15s;
  line-height: 1.4;
  text-align: center;
}
.card-actions .btn-view {
  color: var(--champagne, var(--accent));
  border: 1px solid var(--champagne, var(--accent));
  background: transparent;
}
.card-actions .btn-view:hover {
  background: color-mix(in srgb, var(--champagne, var(--accent)) 14%, transparent);
}
.card-actions .btn-move {
  color: var(--muted, var(--text-dim));
  border: 1px solid var(--line, var(--border));
  background: transparent;
}
.card-actions .btn-move:hover {
  color: var(--text);
  border-color: color-mix(in srgb, var(--text-dim) 60%, transparent);
}

/* â”€â”€ Lane count badge â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-lane-count {
  font-size: 11px;
  background: var(--surface-2, var(--bg2, var(--panel2, var(--panel))));
  border: 1px solid var(--line, var(--border));
  border-radius: 20px;
  padding: 1px 8px;
  color: var(--muted, var(--text-dim));
  margin-left: auto;
  font-variant-numeric: tabular-nums;
}

/* â”€â”€ Quick-add button (lane footer, outside scrollable body) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-lane-add {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 9px;
  margin: 0 9px 9px;
  font-size: 12px;
  color: var(--muted, var(--text-dim));
  border: 1px dashed var(--line, var(--border));
  border-radius: 6px;
  cursor: pointer;
  background: none;
  transition: color .15s, border-color .15s;
  flex-shrink: 0;
}
.v5-lane-add:hover {
  color: var(--champagne, var(--accent));
  border-color: var(--champagne, var(--accent));
}

/* â”€â”€ Pipeline volume stat (v5-page-head right slot) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-page-stat { text-align: right; flex-shrink: 0; }
.v5-page-stat-val {
  font-size: 24px;
  font-weight: 700;
  color: var(--champagne, var(--accent));
  display: block;
  line-height: 1.15;
}
.v5-page-stat-label {
  font-size: 11px;
  color: var(--muted, var(--text-dim));
}

/* â”€â”€ Light-theme: subtle shadow softening â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
[data-theme="light"] .card-actions .btn-view,
:root[data-theme="light"] .card-actions .btn-view {
  color: var(--champagne, var(--accent));
  border-color: var(--champagne, var(--accent));
}
[data-theme="light"] .v5-lane-add:hover,
:root[data-theme="light"] .v5-lane-add:hover {
  color: var(--champagne, var(--accent));
  border-color: var(--champagne, var(--accent));
}

/* --- brokerdiy.css --- */
/* ============================================================
   BrokerDIY panels â€” Tasks (:8098) + Listings (:8097) wiring
   Loaded LAST. Token-only (both light + dark themes auto-valid).
   All selectors scoped under .bd-* so nothing else is touched.
   No fixed heights that would break the 1920x1080 no-scroll frame.
   ============================================================ */

/* â”€â”€ Inline panel states (loading Â· empty Â· error) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.bd-state {
  display: flex; align-items: center; gap: 8px;
  padding: 10px 4px; font: 500 11px/1.35 var(--sans, system-ui);
  color: var(--text-muted, #8a93a6);
}
.bd-state .bd-state-ic { font-size: 13px; opacity: 0.8; }
.bd-state.err { color: var(--bad, #ff5b3a); }
.bd-state-msg { flex: 1; }
.bd-spinner {
  width: 12px; height: 12px; flex: 0 0 auto;
  border: 2px solid rgba(var(--accent-rgb, 0 210 255), 0.25);
  border-top-color: var(--accent, #00d2ff);
  border-radius: 50%;
  animation: bd-spin 0.7s linear infinite;
}
@keyframes bd-spin { to { transform: rotate(360deg); } }
.bd-retry {
  flex: 0 0 auto; cursor: pointer;
  font: 600 10px/1 var(--mono, ui-monospace, monospace);
  letter-spacing: 0.04em; text-transform: uppercase;
  color: var(--accent, #00d2ff);
  background: rgba(var(--accent-rgb, 0 210 255), 0.10);
  border: 1px solid rgba(var(--accent-rgb, 0 210 255), 0.35);
  border-radius: 6px; padding: 4px 8px;
  transition: background .15s ease, transform .1s ease;
}
.bd-retry:hover { background: rgba(var(--accent-rgb, 0 210 255), 0.20); }
.bd-retry:active { transform: scale(0.96); }
.bd-retry:focus-visible { outline: 2px solid var(--accent, #00d2ff); outline-offset: 2px; }

/* â”€â”€ Small source / scope tag in panel headers â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.bd-src {
  font: 600 9px/1 var(--mono, monospace); letter-spacing: 0.05em;
  text-transform: uppercase; color: var(--text-dim, #6b7484);
  padding: 2px 6px; border: 1px solid var(--border, rgba(255,255,255,0.08));
  border-radius: 5px;
}
.bd-src.live { color: var(--good, #3affad); border-color: rgba(var(--good-rgb, 58 255 173), 0.35); }

/* â”€â”€ Listings status summary chips (under panel header) â”€â”€â”€â”€â”€â”€ */
.bd-listing-summary { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 8px; }
.bd-chip {
  display: inline-flex; align-items: baseline; gap: 5px;
  font: 600 10px/1 var(--mono, monospace); letter-spacing: 0.03em;
  text-transform: uppercase; color: var(--text-muted, #8a93a6);
  padding: 4px 8px; border-radius: 6px;
  background: var(--panel2, rgba(255,255,255,0.04));
  border: 1px solid var(--border, rgba(255,255,255,0.08));
}
.bd-chip b { font-size: 12px; color: var(--text, #e8ecf3); }
.bd-chip.active b { color: var(--good, #3affad); }
.bd-chip.pending b { color: var(--warn, #ffb648); }
.bd-chip.uc b { color: var(--accent, #00d2ff); }

/* clickable listing cards (delegated handler in brokerdiy_panels.js) */
#body-listings .listing-card { cursor: pointer; transition: transform .1s ease, border-color .15s ease; }
#body-listings .listing-card:hover { transform: translateX(2px); border-color: rgba(var(--accent-rgb, 0 210 255), 0.4); }

/* â”€â”€ Modal (task manager + detail) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.bd-modal-overlay {
  position: fixed; inset: 0; z-index: 9000;
  display: none; align-items: center; justify-content: center;
  background: rgba(4, 8, 16, 0.62); backdrop-filter: blur(4px);
  padding: 32px;
}
.bd-modal-overlay.visible { display: flex; animation: bd-fade .18s ease; }
@keyframes bd-fade { from { opacity: 0; } to { opacity: 1; } }
.bd-modal {
  width: min(1040px, 94vw); max-height: 86vh; display: flex; flex-direction: column;
  background: var(--panel, #0d1320); color: var(--text, #e8ecf3);
  border: 1px solid var(--border2, rgba(255,255,255,0.14));
  border-radius: var(--rad, 14px);
  box-shadow: 0 24px 80px rgba(0,0,0,0.5);
  overflow: hidden;
}
.bd-modal-head {
  display: flex; align-items: center; gap: 12px;
  padding: 16px 20px; border-bottom: 1px solid var(--border, rgba(255,255,255,0.08));
}
.bd-modal-title { font: 700 15px/1.2 var(--display, var(--sans, system-ui)); letter-spacing: 0.01em; }
.bd-modal-sub { font: 500 11px/1 var(--mono, monospace); color: var(--text-muted, #8a93a6); }
.bd-modal-x {
  margin-left: auto; cursor: pointer; width: 28px; height: 28px;
  display: grid; place-items: center; border-radius: 8px;
  color: var(--text-muted, #8a93a6); background: transparent;
  border: 1px solid var(--border, rgba(255,255,255,0.08)); font-size: 15px;
}
.bd-modal-x:hover { color: var(--text, #fff); background: var(--panel2, rgba(255,255,255,0.05)); }
.bd-modal-x:focus-visible { outline: 2px solid var(--accent, #00d2ff); outline-offset: 2px; }

/* view tabs */
.bd-tabs { display: flex; gap: 4px; padding: 12px 20px 0; }
.bd-tab {
  cursor: pointer; font: 600 11px/1 var(--mono, monospace); letter-spacing: 0.05em;
  text-transform: uppercase; color: var(--text-muted, #8a93a6);
  padding: 8px 14px; border-radius: 8px 8px 0 0; background: transparent;
  border: 1px solid transparent; border-bottom: none;
}
.bd-tab.active {
  color: var(--text, #fff); background: var(--panel2, rgba(255,255,255,0.04));
  border-color: var(--border, rgba(255,255,255,0.08));
}
.bd-tab:focus-visible { outline: 2px solid var(--accent, #00d2ff); outline-offset: 2px; }

.bd-modal-body { padding: 16px 20px 20px; overflow: auto; }
.bd-view { display: none; }
.bd-view.active { display: block; }

/* list view */
.bd-list { display: flex; flex-direction: column; gap: 6px; }
.bd-list-row {
  display: grid; grid-template-columns: 10px 1fr auto auto; align-items: center; gap: 10px;
  padding: 9px 12px; border-radius: 8px; cursor: pointer;
  background: var(--panel2, rgba(255,255,255,0.03));
  border: 1px solid var(--border, rgba(255,255,255,0.07));
}
.bd-list-row:hover { border-color: rgba(var(--accent-rgb, 0 210 255), 0.4); }
.bd-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--text-dim, #6b7484); }
.bd-dot.todo { background: var(--warn, #ffb648); }
.bd-dot.in_progress { background: var(--accent, #00d2ff); }
.bd-dot.waiting { background: #9c5cff; }
.bd-dot.done { background: var(--good, #3affad); }
.bd-list-title { font: 500 13px/1.3 var(--sans, system-ui); }
.bd-list-meta { font: 500 10px/1 var(--mono, monospace); color: var(--text-muted, #8a93a6); text-transform: uppercase; letter-spacing: 0.04em; }
.bd-pri { font: 700 9px/1 var(--mono, monospace); padding: 3px 6px; border-radius: 5px; text-transform: uppercase; }
.bd-pri.high, .bd-pri.urgent { color: var(--bad, #ff5b3a); background: rgba(255,91,58,0.12); }
.bd-pri.normal, .bd-pri.med { color: var(--warn, #ffb648); background: rgba(255,182,72,0.12); }
.bd-pri.low { color: var(--text-muted, #8a93a6); background: var(--panel2, rgba(255,255,255,0.04)); }

/* kanban view */
.bd-kanban { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.bd-kcol {
  display: flex; flex-direction: column; gap: 8px; min-height: 120px;
  padding: 10px; border-radius: 10px;
  background: var(--bg2, rgba(255,255,255,0.02));
  border: 1px solid var(--border, rgba(255,255,255,0.07));
}
.bd-kcol.drag-over { border-color: var(--accent, #00d2ff); background: rgba(var(--accent-rgb, 0 210 255), 0.06); }
.bd-kcol-h {
  display: flex; align-items: center; gap: 6px;
  font: 700 10px/1 var(--mono, monospace); letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--text-muted, #8a93a6); padding-bottom: 4px;
}
.bd-kcol-h .bd-kcount { margin-left: auto; color: var(--text-dim, #6b7484); }
.bd-kcard {
  cursor: grab; padding: 9px 10px; border-radius: 8px;
  background: var(--panel, #0d1320);
  border: 1px solid var(--border2, rgba(255,255,255,0.12));
  border-left: 3px solid var(--text-dim, #6b7484);
}
.bd-kcard:hover { border-color: rgba(var(--accent-rgb, 0 210 255), 0.4); }
.bd-kcard.dragging { opacity: 0.5; cursor: grabbing; }
.bd-kcard.todo { border-left-color: var(--warn, #ffb648); }
.bd-kcard.in_progress { border-left-color: var(--accent, #00d2ff); }
.bd-kcard.waiting { border-left-color: #9c5cff; }
.bd-kcard.done { border-left-color: var(--good, #3affad); }
.bd-kcard-title { font: 500 12px/1.3 var(--sans, system-ui); margin-bottom: 4px; }
.bd-kcard-meta { font: 500 9px/1 var(--mono, monospace); color: var(--text-muted, #8a93a6); text-transform: uppercase; letter-spacing: 0.03em; }

/* calendar view */
.bd-cal-h { font: 600 12px/1 var(--mono, monospace); color: var(--text-muted, #8a93a6); margin-bottom: 10px; text-transform: uppercase; letter-spacing: 0.05em; }
.bd-cal { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
.bd-cal-dow { font: 700 9px/1 var(--mono, monospace); color: var(--text-dim, #6b7484); text-align: center; padding: 4px 0; text-transform: uppercase; }
.bd-cal-cell {
  min-height: 58px; padding: 4px; border-radius: 6px;
  background: var(--bg2, rgba(255,255,255,0.02));
  border: 1px solid var(--border, rgba(255,255,255,0.06));
}
.bd-cal-cell.muted { opacity: 0.4; }
.bd-cal-cell.today { border-color: var(--accent, #00d2ff); }
.bd-cal-date { font: 600 10px/1 var(--mono, monospace); color: var(--text-muted, #8a93a6); }
.bd-cal-task {
  margin-top: 3px; font: 500 9px/1.2 var(--sans, system-ui);
  padding: 2px 4px; border-radius: 4px; cursor: pointer;
  background: rgba(var(--accent-rgb, 0 210 255), 0.12); color: var(--text, #e8ecf3);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

/* detail view (task / listing) */
.bd-detail-grid { display: grid; grid-template-columns: 120px 1fr; gap: 8px 16px; }
.bd-detail-k { font: 600 10px/1.4 var(--mono, monospace); color: var(--text-muted, #8a93a6); text-transform: uppercase; letter-spacing: 0.04em; }
.bd-detail-v { font: 500 13px/1.4 var(--sans, system-ui); color: var(--text, #e8ecf3); }
.bd-detail-links { margin-top: 16px; display: flex; flex-wrap: wrap; gap: 8px; }
.bd-link-chip {
  font: 600 10px/1 var(--mono, monospace); text-transform: uppercase; letter-spacing: 0.03em;
  padding: 6px 10px; border-radius: 6px; color: var(--accent, #00d2ff);
  background: rgba(var(--accent-rgb, 0 210 255), 0.10);
  border: 1px solid rgba(var(--accent-rgb, 0 210 255), 0.3);
}

.bd-modal-empty { padding: 40px 20px; text-align: center; color: var(--text-muted, #8a93a6); font: 500 12px/1.5 var(--sans, system-ui); }

/* drag-drop persistence toast */
.bd-toast {
  position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%) translateY(20px);
  z-index: 9100; opacity: 0; pointer-events: none;
  font: 600 11px/1.3 var(--sans, system-ui);
  padding: 10px 16px; border-radius: 10px; max-width: 360px;
  background: var(--panel, #0d1320); color: var(--text, #e8ecf3);
  border: 1px solid var(--border2, rgba(255,255,255,0.14));
  box-shadow: 0 8px 30px rgba(0,0,0,0.4);
  transition: opacity .2s ease, transform .2s ease;
}
.bd-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }
.bd-toast.ok { border-left: 3px solid var(--good, #3affad); }
.bd-toast.err { border-left: 3px solid var(--bad, #ff5b3a); }

/* ============================================================
   W427 â€” Native Tasks PAGE (OPERATIONS â†’ Tasks, js/tasks-native.js)
   Token-only â†’ both themes auto-valid. Scoped .tn-*. Inner scroll only
   (the page body scrolls; the 1920x1080 outer frame stays locked).
   ============================================================ */
#tasksnative-root { display: flex; flex-direction: column; gap: 14px; height: 100%; min-height: 0; }

/* controls bar: quick-add (left) + new/view/filters (right) */
.tn-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.tn-quickadd { display: flex; flex: 1 1 320px; gap: 8px; }
.tn-qa-input {
  flex: 1; min-width: 0; padding: 9px 12px; border-radius: 9px;
  background: var(--panel2, rgba(255,255,255,0.04)); color: var(--text, #e8ecf3);
  border: 1px solid var(--border, rgba(255,255,255,0.10));
  font: 500 13px/1.3 var(--sans, system-ui);
}
.tn-qa-input::placeholder { color: var(--text-dim, #6b7484); }
.tn-qa-input:focus-visible { outline: none; border-color: rgba(var(--accent-rgb, 0 210 255), 0.6); }
.tn-qa-btn, .tn-newbtn {
  cursor: pointer; white-space: nowrap; padding: 9px 14px; border-radius: 9px;
  font: 700 11px/1 var(--mono, monospace); letter-spacing: 0.05em; text-transform: uppercase;
  color: var(--accent, #00d2ff); background: rgba(var(--accent-rgb, 0 210 255), 0.12);
  border: 1px solid rgba(var(--accent-rgb, 0 210 255), 0.4); transition: background .15s ease, transform .1s ease;
}
.tn-qa-btn:hover, .tn-newbtn:hover { background: rgba(var(--accent-rgb, 0 210 255), 0.22); }
.tn-qa-btn:active, .tn-newbtn:active { transform: scale(0.97); }
.tn-controls-right { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-left: auto; }

.tn-seg { display: inline-flex; border: 1px solid var(--border, rgba(255,255,255,0.10)); border-radius: 9px; overflow: hidden; }
.tn-seg-b {
  cursor: pointer; padding: 8px 12px; background: transparent; border: none;
  font: 600 10px/1 var(--mono, monospace); letter-spacing: 0.05em; text-transform: uppercase;
  color: var(--text-muted, #8a93a6);
}
.tn-seg-b.on { color: var(--text, #fff); background: var(--panel2, rgba(255,255,255,0.06)); }
.tn-seg-b:focus-visible { outline: 2px solid var(--accent, #00d2ff); outline-offset: -2px; }

.tn-filters { display: inline-flex; gap: 6px; }
.tn-filter {
  cursor: pointer; padding: 7px 8px; border-radius: 8px;
  font: 600 10px/1 var(--mono, monospace); letter-spacing: 0.03em; text-transform: capitalize;
  color: var(--text-muted, #8a93a6); background: var(--panel2, rgba(255,255,255,0.04));
  border: 1px solid var(--border, rgba(255,255,255,0.10));
}

/* body region (scrolls internally) */
.tn-body { flex: 1 1 auto; min-height: 0; overflow: auto; }
.tn-empty { padding: 40px 20px; text-align: center; color: var(--text-muted, #8a93a6); font: 500 13px/1.5 var(--sans, system-ui); }

/* board */
.tn-board { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; align-items: start; }
.tn-col {
  display: flex; flex-direction: column; gap: 8px; min-height: 120px; padding: 10px; border-radius: 10px;
  background: var(--bg2, rgba(255,255,255,0.02)); border: 1px solid var(--border, rgba(255,255,255,0.07));
}
.tn-col.tn-drag-over { border-color: var(--accent, #00d2ff); background: rgba(var(--accent-rgb, 0 210 255), 0.06); }
.tn-col-h { display: flex; align-items: center; gap: 6px; font: 700 10px/1 var(--mono, monospace); letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-muted, #8a93a6); padding-bottom: 4px; }
.tn-col-n { margin-left: auto; color: var(--text-dim, #6b7484); }
.tn-col-body { display: flex; flex-direction: column; gap: 8px; }
.tn-card {
  cursor: grab; padding: 9px 10px; border-radius: 8px;
  background: var(--panel, #0d1320); border: 1px solid var(--border2, rgba(255,255,255,0.12));
  border-left: 3px solid var(--text-dim, #6b7484); transition: border-color .15s ease;
}
.tn-card:hover { border-color: rgba(var(--accent-rgb, 0 210 255), 0.4); }
.tn-card.tn-dragging { opacity: 0.5; cursor: grabbing; }
.tn-card.pri-high, .tn-card.pri-urgent { border-left-color: var(--bad, #ff5b3a); }
.tn-card.pri-normal { border-left-color: var(--warn, #ffb648); }
.tn-card.pri-low { border-left-color: var(--text-dim, #6b7484); }
.tn-card-title { font: 500 12px/1.3 var(--sans, system-ui); margin-bottom: 5px; }
.tn-card-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.tn-due, .tn-who { font: 500 9px/1 var(--mono, monospace); color: var(--text-muted, #8a93a6); text-transform: uppercase; letter-spacing: 0.03em; }
.tn-card-link { margin-top: 5px; font: 500 9px/1 var(--mono, monospace); color: var(--accent, #00d2ff); }

/* priority pill (shared look with .bd-pri) */
.tn-pri { font: 700 9px/1 var(--mono, monospace); padding: 3px 6px; border-radius: 5px; text-transform: uppercase; }
.tn-pri.high, .tn-pri.urgent { color: var(--bad, #ff5b3a); background: rgba(255,91,58,0.12); }
.tn-pri.normal { color: var(--warn, #ffb648); background: rgba(255,182,72,0.12); }
.tn-pri.low { color: var(--text-muted, #8a93a6); background: var(--panel2, rgba(255,255,255,0.04)); }

/* list */
.tn-list { display: flex; flex-direction: column; gap: 6px; }
.tn-list-row {
  display: grid; grid-template-columns: 10px 1fr auto auto auto; align-items: center; gap: 10px;
  padding: 9px 12px; border-radius: 8px; cursor: pointer;
  background: var(--panel2, rgba(255,255,255,0.03)); border: 1px solid var(--border, rgba(255,255,255,0.07));
}
.tn-list-row:hover { border-color: rgba(var(--accent-rgb, 0 210 255), 0.4); }
.tn-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--text-dim, #6b7484); }
.tn-dot.todo { background: var(--warn, #ffb648); }
.tn-dot.in_progress { background: var(--accent, #00d2ff); }
.tn-dot.waiting { background: #9c5cff; }
.tn-dot.done { background: var(--good, #3affad); }
.tn-list-title { font: 500 13px/1.3 var(--sans, system-ui); }
.tn-list-meta { font: 500 10px/1 var(--mono, monospace); color: var(--text-muted, #8a93a6); text-transform: uppercase; letter-spacing: 0.04em; }

/* create / edit modal */
.tn-modal-ov {
  position: fixed; inset: 0; z-index: 9000; display: none; align-items: center; justify-content: center;
  background: rgba(4, 8, 16, 0.62); backdrop-filter: blur(4px); padding: 32px;
}
.tn-modal-ov.on { display: flex; animation: bd-fade .18s ease; }
.tn-modal {
  width: min(560px, 94vw); max-height: 88vh; display: flex; flex-direction: column;
  background: var(--panel, #0d1320); color: var(--text, #e8ecf3);
  border: 1px solid var(--border2, rgba(255,255,255,0.14)); border-radius: var(--rad, 14px);
  box-shadow: 0 24px 80px rgba(0,0,0,0.5); overflow: hidden;
}
.tn-modal-head { display: flex; align-items: center; gap: 12px; padding: 16px 20px; border-bottom: 1px solid var(--border, rgba(255,255,255,0.08)); }
.tn-modal-title { font: 700 15px/1.2 var(--display, var(--sans, system-ui)); }
.tn-modal-x {
  margin-left: auto; cursor: pointer; width: 28px; height: 28px; display: grid; place-items: center;
  border-radius: 8px; color: var(--text-muted, #8a93a6); background: transparent;
  border: 1px solid var(--border, rgba(255,255,255,0.08)); font-size: 15px;
}
.tn-modal-x:hover { color: var(--text, #fff); background: var(--panel2, rgba(255,255,255,0.05)); }
.tn-form { padding: 16px 20px 20px; overflow: auto; display: flex; flex-direction: column; gap: 12px; }
.tn-field { display: flex; flex-direction: column; gap: 5px; }
.tn-field-lab { font: 600 10px/1 var(--mono, monospace); letter-spacing: 0.05em; text-transform: uppercase; color: var(--text-muted, #8a93a6); }
.tn-in {
  width: 100%; padding: 9px 11px; border-radius: 8px; box-sizing: border-box;
  background: var(--panel2, rgba(255,255,255,0.04)); color: var(--text, #e8ecf3);
  border: 1px solid var(--border, rgba(255,255,255,0.10)); font: 500 13px/1.3 var(--sans, system-ui);
}
.tn-in:focus-visible { outline: none; border-color: rgba(var(--accent-rgb, 0 210 255), 0.6); }
.tn-ta { min-height: 64px; resize: vertical; }
.tn-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.tn-links { display: flex; flex-wrap: wrap; gap: 8px; }
.tn-link-chip {
  font: 600 10px/1 var(--mono, monospace); text-transform: uppercase; letter-spacing: 0.03em;
  padding: 6px 10px; border-radius: 6px; color: var(--accent, #00d2ff);
  background: rgba(var(--accent-rgb, 0 210 255), 0.10); border: 1px solid rgba(var(--accent-rgb, 0 210 255), 0.3);
}
.tn-form-foot { display: flex; align-items: center; gap: 10px; margin-top: 4px; }
.tn-save {
  margin-left: auto; cursor: pointer; padding: 9px 18px; border-radius: 9px;
  font: 700 11px/1 var(--mono, monospace); letter-spacing: 0.05em; text-transform: uppercase;
  color: #06121c; background: var(--accent, #00d2ff); border: 1px solid var(--accent, #00d2ff);
}
.tn-save:hover { filter: brightness(1.08); }
.tn-save:disabled { opacity: 0.5; cursor: default; }
.tn-del {
  cursor: pointer; padding: 9px 14px; border-radius: 9px;
  font: 700 11px/1 var(--mono, monospace); letter-spacing: 0.05em; text-transform: uppercase;
  color: var(--bad, #ff5b3a); background: rgba(255,91,58,0.10); border: 1px solid rgba(255,91,58,0.35);
}
.tn-del:hover { background: rgba(255,91,58,0.18); }

@media (max-width: 1180px) { .tn-board { grid-template-columns: repeat(2, 1fr); } }

/* --- crm.css --- */
/* crm.css â€” LEADS & PIPELINE CRM view (#view-crm). Atlas mirror of the
 * BrokerDIY CRM (:8096 leads + contacts), tenant-scoped to current_org.
 *
 * REUSE: panel / body / title / empty primitives (.tc-panel, .tc-body,
 * .tc-title, .tc-sub, .panel-hâ€¦) come from training.css so the look matches the
 * other dept views. This file adds ONLY what's unique to the CRM surface: the
 * view container, the kanban-lite pipeline, the contacts directory, the recent-
 * activity feed, and the lead-detail modal.
 *
 * THEME: every colour is a shared theme token (--bg/--panel/--text/--accent/
 * --good/--warn/--bad/--border/--rad/--displayâ€¦) from north_star_final.css with
 * a literal fallback, so BOTH light + dark themes work with zero extra rules.
 *
 * NO-SCROLL: the view is a flex child of .canvas that fills the locked 1080
 * frame; only the kanban columns, the contacts body, and the activity body
 * scroll internally â€” the outer frame never does. */

/* â”€â”€ View container (sibling of #view-home / the dept views) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#view-crm {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
#view-crm.view-off { display: none; }
#view-crm .dept-kpis { grid-template-columns: repeat(5, 1fr); }

/* â”€â”€ Stage accent tokens â€” semantic, both-theme-safe â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#view-crm {
  --cs-new:        var(--accent, #00d2ff);
  --cs-nurturing:  var(--warn, #ffcc55);
  --cs-hot:        #ff7a45;
  --cs-uc:         var(--good, #3affad);
  --cs-cold:       var(--text-muted, #8a93a6);
}

/* â”€â”€ Grid: tall pipeline on the left, contacts + activity stacked right â”€â”€â”€â”€â”€ */
.crm-grid {
  flex: 1;
  min-height: 0;
  display: grid;
  grid-template-columns: 2fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 6px;
}
.crm-pipeline { grid-column: 1; grid-row: 1 / span 2; min-height: 0; display: flex; flex-direction: column; }
.crm-contacts { grid-column: 2; grid-row: 1; min-height: 0; display: flex; flex-direction: column; }
.crm-activity { grid-column: 2; grid-row: 2; min-height: 0; display: flex; flex-direction: column; }

/* â”€â”€ State strip (loading / empty / error + retry) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.crm-state {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  font-size: 10px;
  color: var(--text-muted);
}
.crm-state.err { color: var(--bad, #ff6b6b); }
.crm-state-ic { font-size: 12px; }
.crm-retry {
  margin-left: auto;
  padding: 3px 10px;
  border: 1px solid var(--border);
  border-radius: var(--rad, 8px);
  background: var(--panel);
  color: var(--text);
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
}
.crm-retry:hover { border-color: var(--accent); color: var(--accent); }
.crm-spinner {
  width: 12px; height: 12px;
  border: 2px solid var(--border);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: crm-spin 0.8s linear infinite;
}
@keyframes crm-spin { to { transform: rotate(360deg); } }

/* â”€â”€ Kanban-lite â€” 5 stage columns, each scrolls â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.crm-kanban {
  flex: 1;
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 6px;
  padding-top: 6px;
}
.crm-col {
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--border);
  border-radius: var(--rad, 8px);
  background: color-mix(in srgb, var(--panel) 70%, transparent);
  border-top: 2px solid var(--col-accent, var(--border));
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.crm-col-head {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  padding: 7px 8px 6px;
}
.crm-col-name {
  font-size: 8px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-dim, #aeb6c4);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.crm-col-count {
  flex: 0 0 auto;
  min-width: 16px;
  padding: 1px 5px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--col-accent, var(--accent)) 22%, transparent);
  color: var(--col-accent, var(--accent));
  font-family: var(--display, inherit);
  font-size: 10px;
  font-weight: 700;
  text-align: center;
}
.crm-col-body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 0 6px 6px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.crm-col-empty {
  padding: 10px 4px;
  font-size: 8.5px;
  color: var(--text-muted);
  opacity: 0.6;
  text-align: center;
}

/* Lead card */
.crm-card {
  position: relative;
  padding: 7px 8px 7px 12px;
  border: 1px solid var(--border);
  border-radius: var(--rad, 6px);
  background: var(--panel);
  cursor: pointer;
  transition: transform 0.12s ease, border-color 0.12s ease, box-shadow 0.12s ease;
}
.crm-card::before {
  content: "";
  position: absolute;
  left: 0; top: 6px; bottom: 6px;
  width: 3px;
  border-radius: 3px;
  background: var(--col-accent, var(--accent));
}
.crm-card:hover {
  transform: translateY(-1px);
  border-color: var(--col-accent, var(--accent));
  box-shadow: 0 4px 14px -6px color-mix(in srgb, var(--col-accent, var(--accent)) 55%, transparent);
}
.crm-card-name {
  font-size: 11px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.crm-card-meta {
  margin-top: 3px;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 8.5px;
  color: var(--text-muted);
}
.crm-card-val { margin-left: auto; font-weight: 700; color: var(--text-dim, #aeb6c4); }

/* Highlight (voice intent "show my hot leads") */
.crm-col.is-hl {
  border-color: var(--col-accent, var(--accent));
  box-shadow: 0 0 0 1px var(--col-accent, var(--accent)),
              0 0 24px -4px color-mix(in srgb, var(--col-accent, var(--accent)) 70%, transparent);
  animation: crm-pulse 1.1s ease-in-out 3;
}
@keyframes crm-pulse {
  0%, 100% { box-shadow: 0 0 0 1px var(--col-accent), 0 0 18px -6px color-mix(in srgb, var(--col-accent) 55%, transparent); }
  50%      { box-shadow: 0 0 0 1px var(--col-accent), 0 0 30px 2px color-mix(in srgb, var(--col-accent) 75%, transparent); }
}

/* â”€â”€ Contacts directory â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.crm-search-wrap {
  flex: 0 0 auto;
  position: relative;
  margin: 6px 0;
}
.crm-search-ic {
  position: absolute;
  left: 9px; top: 50%;
  transform: translateY(-50%);
  width: 13px; height: 13px;
  color: var(--text-muted);
  pointer-events: none;
}
.crm-search {
  width: 100%;
  padding: 7px 10px 7px 28px;
  border: 1px solid var(--border);
  border-radius: var(--rad, 8px);
  background: color-mix(in srgb, var(--panel) 60%, transparent);
  color: var(--text);
  font-family: inherit;
  font-size: 10.5px;
  outline: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.crm-search::placeholder { color: var(--text-muted); }
.crm-search:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 25%, transparent);
}
.crm-contacts-body { flex: 1; min-height: 0; overflow-y: auto; }
.crm-contact-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 4px;
  border-bottom: 1px solid color-mix(in srgb, var(--border) 60%, transparent);
  cursor: pointer;
}
.crm-contact-row:hover { background: color-mix(in srgb, var(--accent) 8%, transparent); }
.crm-avatar {
  flex: 0 0 auto;
  width: 24px; height: 24px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: color-mix(in srgb, var(--accent) 18%, transparent);
  color: var(--accent);
  font-family: var(--display, inherit);
  font-size: 10px;
  font-weight: 700;
}
.crm-contact-main { min-width: 0; flex: 1; }
.crm-contact-name {
  font-size: 10.5px;
  font-weight: 600;
  color: var(--text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.crm-contact-sub {
  font-size: 8.5px;
  color: var(--text-muted);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.crm-contact-type {
  flex: 0 0 auto;
  font-size: 7.5px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--text-dim, #aeb6c4);
  padding: 2px 6px;
  border: 1px solid var(--border);
  border-radius: 999px;
}

/* â”€â”€ Recent activity feed â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.crm-activity-body { flex: 1; min-height: 0; overflow-y: auto; }
.crm-act-row {
  display: flex;
  gap: 8px;
  padding: 6px 4px;
  border-bottom: 1px solid color-mix(in srgb, var(--border) 60%, transparent);
}
.crm-act-ic {
  flex: 0 0 auto;
  width: 18px; height: 18px;
  display: grid; place-items: center;
  border-radius: 5px;
  background: color-mix(in srgb, var(--accent) 14%, transparent);
  color: var(--accent);
  font-size: 9px;
}
.crm-act-main { min-width: 0; flex: 1; }
.crm-act-text {
  font-size: 9.5px;
  color: var(--text);
  line-height: 1.3;
}
.crm-act-meta { font-size: 8px; color: var(--text-muted); margin-top: 1px; }

/* â”€â”€ Lead-detail modal (independent overlay) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.crm-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 9000;
  display: none;
  align-items: center;
  justify-content: center;
  background: color-mix(in srgb, #05070d 72%, transparent);
  backdrop-filter: blur(3px);
  padding: 24px;
}
.crm-modal-overlay.visible { display: flex; }
.crm-modal {
  width: min(520px, 94vw);
  max-height: 86vh;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--panel);
  box-shadow: 0 30px 80px -20px rgba(0,0,0,0.6);
  overflow: hidden;
}
.crm-modal-head {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--border);
}
.crm-modal-stage-dot { width: 10px; height: 10px; border-radius: 50%; flex: 0 0 auto; background: var(--col-accent, var(--accent)); }
.crm-modal-titles { min-width: 0; flex: 1; }
.crm-modal-title {
  font-family: var(--display, inherit);
  font-size: 16px;
  font-weight: 700;
  color: var(--text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.crm-modal-sub {
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-muted);
}
.crm-modal-x {
  flex: 0 0 auto;
  width: 28px; height: 28px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: transparent;
  color: var(--text-muted);
  font-size: 13px;
  cursor: pointer;
}
.crm-modal-x:hover { color: var(--text); border-color: var(--accent); }
.crm-modal-body { flex: 1; min-height: 0; overflow-y: auto; padding: 16px; }
.crm-detail-grid {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 7px 16px;
  margin-bottom: 16px;
}
.crm-detail-k {
  font-size: 8.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-muted);
  align-self: center;
}
.crm-detail-v { font-size: 12px; color: var(--text); word-break: break-word; }
.crm-detail-v a { color: var(--accent); text-decoration: none; }
.crm-detail-v a:hover { text-decoration: underline; }
.crm-sec-h {
  font-size: 9px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--text-dim, #aeb6c4);
  margin: 4px 0 8px;
  padding-bottom: 5px;
  border-bottom: 1px solid var(--border);
}
.crm-timeline { display: flex; flex-direction: column; gap: 9px; }
.crm-tl-row { display: flex; gap: 10px; }
.crm-tl-dot {
  flex: 0 0 auto;
  width: 8px; height: 8px;
  margin-top: 4px;
  border-radius: 50%;
  background: var(--accent);
}
.crm-tl-main { min-width: 0; }
.crm-tl-text { font-size: 11px; color: var(--text); line-height: 1.35; }
.crm-tl-meta { font-size: 8.5px; color: var(--text-muted); margin-top: 1px; }
.crm-modal-empty { font-size: 10.5px; color: var(--text-muted); padding: 8px 2px; }

/* --- vendor-coi.css --- */
/* ============================================================
   ATLAS â€” Vendor / COI tracker panel (Admin & Ops)  Â· Wave 11-W114
   Scoped to the #ad-vendors panel. Reuses the dept-view .tc-row rhythm; adds a
   COI status badge + an alert banner. Both light + dark themes (vars only).
   ============================================================ */

/* alert banner at the top of the vendor panel */
.vc-alert {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .02em;
  padding: 7px 10px;
  border-radius: 8px;
  margin-bottom: 8px;
  border: 1px solid transparent;
  line-height: 1.35;
}
.vc-alert.vc-ok {
  color: var(--text-dim, #8a93a6);
  background: color-mix(in srgb, var(--ok, #2e9e6b) 10%, transparent);
  border-color: color-mix(in srgb, var(--ok, #2e9e6b) 28%, transparent);
}
.vc-alert.vc-warn {
  color: var(--warn, #d6a02e);
  background: color-mix(in srgb, var(--warn, #d6a02e) 12%, transparent);
  border-color: color-mix(in srgb, var(--warn, #d6a02e) 34%, transparent);
}

.vc-list { display: flex; flex-direction: column; }

/* keep the COI badge + expiry stacked tight on the right of each row */
.vc-side { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; }

.vc-badge {
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .04em;
  padding: 2px 6px;
  border-radius: 5px;
  white-space: nowrap;
  border: 1px solid transparent;
}
.vc-badge.vc-good  { color: var(--ok,   #2e9e6b); background: color-mix(in srgb, var(--ok,   #2e9e6b) 14%, transparent); border-color: color-mix(in srgb, var(--ok,   #2e9e6b) 30%, transparent); }
.vc-badge.vc-warn  { color: var(--warn, #d6a02e); background: color-mix(in srgb, var(--warn, #d6a02e) 16%, transparent); border-color: color-mix(in srgb, var(--warn, #d6a02e) 34%, transparent); }
.vc-badge.vc-bad   { color: var(--bad,  #d2544a); background: color-mix(in srgb, var(--bad,  #d2544a) 16%, transparent); border-color: color-mix(in srgb, var(--bad,  #d2544a) 36%, transparent); }
.vc-badge.vc-muted { color: var(--text-dim, #8a93a6); background: color-mix(in srgb, var(--text-dim, #8a93a6) 10%, transparent); border-color: color-mix(in srgb, var(--text-dim, #8a93a6) 22%, transparent); }

.vc-expiry { font-size: 9px; color: var(--text-dim, #8a93a6); white-space: nowrap; }

.vc-empty { font-size: 11px; color: var(--text-dim, #8a93a6); line-height: 1.4; padding: 4px 2px; }

/* â”€â”€ Renewals layer (Wave 12-W140) â€” appended below the COI vendor list â”€â”€â”€â”€ */
.rn-section { margin-top: 10px; padding-top: 8px; border-top: 1px solid var(--border, rgba(140,150,170,.18)); }
.rn-head {
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--text-dim, #8a93a6);
  margin: 6px 2px 4px;
}
.rn-section .rn-head:first-child { margin-top: 0; }
/* rn-row reuses the .tc-row / .vc-badge rhythm; the badge carries the day count */
.rn-row .tc-row-side { display: flex; align-items: center; }

/* --- showings.css --- */
/* ============================================================
   ATLAS â€” Showings live panel (Listings dept) Â· Wave 13-W156
   Scoped to #ls-showings-live + #ls-feedback-live. Reuses the dept .tc-row
   rhythm; adds clickable rows, today/tomorrow sub-heads, a 7d stat strip,
   sentiment chips, and a detail modal (.atlas-modal). Both themes (vars only).
   ============================================================ */

/* clickable row â€” looks like a .tc-row but is a <button> */
.sh-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  text-align: left;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--border, rgba(140,150,170,.14));
  padding: 7px 4px;
  cursor: pointer;
  font: inherit;
  color: inherit;
  gap: 8px;
  transition: background .12s ease;
}
.sh-row:last-child { border-bottom: 0; }
.sh-row:hover,
.sh-row:focus-visible {
  background: color-mix(in srgb, var(--accent, #c79a3a) 9%, transparent);
  outline: none;
}
.sh-row:focus-visible { box-shadow: inset 2px 0 0 var(--accent, #c79a3a); }

/* sub-section heads (TODAY / TOMORROW) */
.sh-sub {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin: 2px 2px 4px;
}
.sh-sub-2 { margin-top: 10px; padding-top: 8px; border-top: 1px solid var(--border, rgba(140,150,170,.18)); }
.sh-sub-lab {
  font-size: 9.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
  color: var(--accent, #c79a3a);
}
.sh-sub-meta { font-size: 9.5px; color: var(--text-dim, #8a93a6); letter-spacing: .03em; }

/* status / sentiment badge */
.sh-badge {
  font-size: 9px; font-weight: 700; letter-spacing: .04em;
  padding: 2px 6px; border-radius: 5px; white-space: nowrap; border: 1px solid transparent;
}
.sh-good    { color: var(--ok,   #2e9e6b); background: color-mix(in srgb, var(--ok,   #2e9e6b) 14%, transparent); border-color: color-mix(in srgb, var(--ok,   #2e9e6b) 30%, transparent); }
.sh-neutral { color: var(--text-dim, #8a93a6); background: color-mix(in srgb, var(--text-dim, #8a93a6) 12%, transparent); border-color: color-mix(in srgb, var(--text-dim, #8a93a6) 24%, transparent); }
.sh-bad     { color: var(--bad,  #d2544a); background: color-mix(in srgb, var(--bad,  #d2544a) 16%, transparent); border-color: color-mix(in srgb, var(--bad,  #d2544a) 34%, transparent); }
.sh-await   { color: var(--warn, #d6a02e); background: color-mix(in srgb, var(--warn, #d6a02e) 13%, transparent); border-color: color-mix(in srgb, var(--warn, #d6a02e) 30%, transparent); }

.sh-empty { font-size: 11px; color: var(--text-dim, #8a93a6); line-height: 1.4; padding: 4px 2px; }

/* feedback panel â€” 7d stat strip */
.sh-stat { display: flex; gap: 6px; margin-bottom: 8px; }
.sh-stat-cell {
  flex: 1; display: flex; flex-direction: column; align-items: center;
  padding: 6px 4px; border-radius: 8px;
  background: color-mix(in srgb, var(--accent, #c79a3a) 6%, transparent);
  border: 1px solid var(--border, rgba(140,150,170,.16));
}
.sh-stat-val { font-size: 18px; font-weight: 700; line-height: 1; color: var(--text, #e8edf6); }
.sh-stat-lab { font-size: 8.5px; letter-spacing: .04em; text-transform: uppercase; color: var(--text-dim, #8a93a6); margin-top: 3px; }

.sh-chips { display: flex; gap: 5px; margin-bottom: 8px; flex-wrap: wrap; }
.sh-chip {
  font-size: 9.5px; font-weight: 600; padding: 2px 7px; border-radius: 999px; border: 1px solid transparent;
}

.sh-row-snippet {
  font-size: 10px; color: var(--text-dim, #8a93a6); line-height: 1.35; margin-top: 2px;
  overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical;
}

/* â”€â”€ detail modal (reuses .atlas-modal base from the page) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#showing-modal .atlas-modal-body { display: flex; flex-direction: column; gap: 8px; }
.sh-kv { display: flex; justify-content: space-between; gap: 12px; font-size: 12.5px; }
.sh-kv-lab { color: var(--text-dim, #8a93a6); white-space: nowrap; }
.sh-kv-val { color: var(--text, #e8edf6); text-align: right; font-weight: 500; }
.sh-kv-block { flex-direction: column; gap: 4px; }
.sh-feedback-text {
  font-size: 12.5px; line-height: 1.5; color: var(--text, #e8edf6);
  background: color-mix(in srgb, var(--accent, #c79a3a) 7%, transparent);
  border-left: 3px solid var(--accent, #c79a3a); border-radius: 0 6px 6px 0; padding: 8px 10px;
}
.sh-await-note {
  font-size: 11.5px; line-height: 1.45; color: var(--warn, #d6a02e);
  background: color-mix(in srgb, var(--warn, #d6a02e) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--warn, #d6a02e) 26%, transparent);
  border-radius: 8px; padding: 8px 10px;
}

/* --- agent-team.css --- */
/* agent-team.css â€” W429 Â· PEOPLE â†’ AI Agent Team page.
 * All classes prefixed .at- to avoid clashing with the W424 .ag- scaffold.
 * Themed entirely via existing CSS vars (works in light + dark). Overlays
 * (drawer / modal / toast) are position:fixed â†’ never affect the no-scroll
 * outer frame. All scrolling happens inside .w424-body. */

/* â”€â”€ tabs â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-tabs{ display:flex; gap:6px; flex-shrink:0; padding:0 2px 10px; border-bottom:1px solid var(--border); position:sticky; top:0; background:var(--bg,transparent); z-index:2; }
.at-tab{ font-family:var(--mono); font-size:10.5px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--text-muted); background:transparent; border:1px solid transparent; border-radius:8px 8px 0 0;
  padding:7px 14px; cursor:pointer; transition:color .15s, background .15s, border-color .15s; }
.at-tab:hover{ color:var(--text); background:var(--panel2); }
.at-tab.is-on{ color:var(--accent); border-color:var(--border); border-bottom-color:transparent;
  background:var(--panel); font-weight:700; }
.at-tabpanel{ padding:14px 2px 6px; }

/* â”€â”€ status atoms â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-dot{ width:8px; height:8px; border-radius:50%; flex-shrink:0; display:inline-block; box-shadow:0 0 0 3px rgba(0,0,0,.04); }
.at-dot.is-active{ background:var(--good); box-shadow:0 0 8px var(--good); }
.at-dot.is-prog{ background:var(--warn); }
.at-dot.is-pending{ background:var(--text-muted); opacity:.6; }
.at-dot.is-off{ background:var(--bad,#e5484d); }
.at-badge{ font-family:var(--mono); font-size:8px; font-weight:800; letter-spacing:.1em; padding:2px 7px;
  border-radius:999px; white-space:nowrap; border:1px solid transparent; }
.at-badge.is-active{ color:var(--good); background:color-mix(in srgb,var(--good) 14%,transparent); border-color:color-mix(in srgb,var(--good) 35%,transparent); }
.at-badge.is-prog{ color:var(--warn); background:color-mix(in srgb,var(--warn) 14%,transparent); border-color:color-mix(in srgb,var(--warn) 35%,transparent); }
.at-badge.is-pending{ color:var(--text-muted); background:var(--panel2); border-color:var(--border); }
.at-badge.is-off{ color:var(--bad,#e5484d); background:color-mix(in srgb,var(--bad,#e5484d) 12%,transparent); border-color:color-mix(in srgb,var(--bad,#e5484d) 35%,transparent); }

.at-clickable{ cursor:pointer; }

/* â”€â”€ brain banner â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-brain{ position:relative; display:flex; align-items:center; gap:16px; flex-wrap:wrap;
  background:linear-gradient(135deg, color-mix(in srgb,var(--accent) 12%,var(--panel)), var(--panel));
  border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border)); border-radius:14px; padding:14px 18px;
  box-shadow:0 6px 24px rgba(0,0,0,.10); transition:transform .15s, box-shadow .15s; }
.at-brain:hover{ transform:translateY(-1px); box-shadow:0 10px 30px rgba(0,0,0,.16); }
.at-brain-badge{ position:absolute; top:-9px; left:16px; font-family:var(--mono); font-size:8px; font-weight:800;
  letter-spacing:.14em; color:#0a0e14; background:var(--accent); padding:3px 9px; border-radius:999px; }
.at-brain-main{ flex:1; min-width:200px; }
.at-brain-name{ display:flex; align-items:center; gap:9px; font-family:var(--display,var(--mono)); font-size:19px; font-weight:800; color:var(--text); }
.at-brain-role{ font-family:var(--mono); font-size:10.5px; color:var(--text-dim); margin-top:3px; }
.at-brain-meta{ display:flex; flex-direction:column; gap:3px; font-family:var(--mono); font-size:9.5px; color:var(--text-muted); text-align:right; }
.at-trunk{ width:2px; height:16px; margin:6px auto 2px; background:linear-gradient(var(--accent),transparent); opacity:.5; }

.at-section-label{ font-family:var(--mono); font-size:9px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  color:var(--text-muted); margin:14px 2px 8px; }

/* â”€â”€ persona row â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-persona-row{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:12px; }
.at-persona{ position:relative; background:var(--panel); border:1px solid var(--border); border-left-width:3px;
  border-radius:12px; padding:13px 15px; transition:transform .15s, box-shadow .15s, border-color .15s; }
.at-persona:hover{ transform:translateY(-1px); box-shadow:0 8px 22px rgba(0,0,0,.12); }
.at-persona.persona-client{ border-left-color:var(--accent); }
.at-persona.persona-vendor{ border-left-color:var(--warn); }
.at-persona-top{ display:flex; align-items:center; gap:8px; }
.at-persona-name{ font-family:var(--display,var(--mono)); font-size:15px; font-weight:800; color:var(--text); }
.at-facing{ font-family:var(--mono); font-size:7.5px; font-weight:700; letter-spacing:.1em; color:var(--text-muted);
  border:1px solid var(--border); border-radius:999px; padding:2px 7px; margin-left:auto; }
.at-persona-role{ font-family:var(--mono); font-size:10px; color:var(--text-dim); margin:6px 0; }
.at-persona-meta{ display:flex; flex-wrap:wrap; gap:10px; font-family:var(--mono); font-size:9px; color:var(--text-muted); margin-bottom:8px; }

/* â”€â”€ department grid â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-dept-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(290px,1fr)); gap:12px; }
.at-dept{ background:var(--panel); border:1px solid var(--border); border-radius:12px; padding:13px; display:flex; flex-direction:column; gap:10px; }
.at-dept-top{ display:flex; align-items:baseline; justify-content:space-between; gap:8px; }
.at-dept-name{ font-family:var(--mono); font-size:12px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--text); }
.at-dept-count{ font-family:var(--mono); font-size:9px; color:var(--accent); font-weight:700; }
.at-dept-head{ display:flex; align-items:center; gap:9px; background:var(--panel2); border:1px solid var(--border2,var(--border));
  border-radius:9px; padding:9px 11px; }
.at-dept-head.is-tbd{ opacity:.78; border-style:dashed; }
.at-dh-titles{ min-width:0; }
.at-dh-name{ font-family:var(--mono); font-size:11px; font-weight:700; color:var(--text); }
.at-dh-role{ font-family:var(--mono); font-size:8.5px; color:var(--text-muted); }
.at-kpis{ display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.at-kpi{ background:var(--panel2); border:1px solid var(--border); border-radius:8px; padding:6px 4px; text-align:center; }
.at-kpi-v{ display:block; font-family:var(--display,var(--mono)); font-size:14px; font-weight:800; color:var(--text); line-height:1; }
.at-kpi-l{ display:block; font-family:var(--mono); font-size:7.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--text-muted); margin-top:3px; }
.at-subs{ display:flex; flex-direction:column; gap:5px; }
.at-chip{ display:flex; align-items:center; gap:8px; width:100%; text-align:left; background:transparent;
  border:1px solid var(--border); border-radius:8px; padding:7px 9px; cursor:pointer;
  transition:background .12s, border-color .12s, transform .12s; }
.at-chip:hover{ background:var(--panel2); border-color:var(--accent); transform:translateX(2px); }
.at-chip-name{ flex:1; min-width:0; font-family:var(--mono); font-size:10px; color:var(--text); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.at-chip-voice{ font-family:var(--mono); font-size:7.5px; color:var(--text-muted); border:1px solid var(--border); border-radius:999px; padding:1px 6px; }
.at-chip-badge{ flex-shrink:0; }
.at-empty{ font-family:var(--mono); font-size:9.5px; color:var(--text-muted); padding:6px 2px; }
.at-foot-note{ font-family:var(--mono); font-size:9px; color:var(--text-muted); margin-top:14px; padding:10px 2px 2px; border-top:1px solid var(--border); line-height:1.5; }

/* â”€â”€ roster table â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-roster{ display:flex; flex-direction:column; gap:3px; }
.at-row{ display:grid; grid-template-columns:18px 1.5fr 2.2fr 1.1fr .9fr 90px; align-items:center; gap:10px;
  width:100%; text-align:left; background:transparent; border:1px solid transparent; border-radius:8px;
  padding:8px 10px; cursor:pointer; transition:background .12s, border-color .12s; }
.at-row.at-clickable:hover{ background:var(--panel2); border-color:var(--border); }
.at-row-head{ cursor:default; border-bottom:1px solid var(--border); border-radius:0; }
.at-row-head span{ font-family:var(--mono); font-size:8px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--text-muted); }
.at-row-name{ font-family:var(--mono); font-size:10.5px; font-weight:700; color:var(--text); }
.at-row-role{ font-family:var(--mono); font-size:9.5px; color:var(--text-dim); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.at-row-dept,.at-row-voice{ font-family:var(--mono); font-size:9px; color:var(--text-muted); }
.at-row-flag{ font-family:var(--mono); font-size:7.5px; color:var(--warn); border:1px solid color-mix(in srgb,var(--warn) 40%,transparent); border-radius:999px; padding:0 5px; margin-left:5px; }
.at-row-badge{ text-align:right; }

/* â”€â”€ marketplace â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-market{ text-align:center; padding:18px 6px; }
.at-market-badge{ display:inline-block; font-family:var(--mono); font-size:8px; font-weight:800; letter-spacing:.16em;
  color:var(--accent); border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);
  background:color-mix(in srgb,var(--accent) 8%,transparent); border-radius:999px; padding:4px 12px; }
.at-market-title{ font-family:var(--display,var(--mono)); font-size:24px; font-weight:800; color:var(--text); margin:12px 0 6px; }
.at-market-sub{ font-family:var(--mono); font-size:11px; color:var(--text-dim); max-width:520px; margin:0 auto 20px; line-height:1.6; }
.at-market-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:12px; max-width:760px; margin:0 auto; }
.at-market-card{ position:relative; background:var(--panel); border:1px dashed var(--border); border-radius:12px; padding:18px 14px; opacity:.85; }
.at-mc-icon{ font-size:24px; margin-bottom:8px; }
.at-mc-title{ font-family:var(--mono); font-size:11px; font-weight:700; color:var(--text); }
.at-mc-sub{ font-family:var(--mono); font-size:9px; color:var(--text-muted); margin-top:5px; line-height:1.5; }
.at-mc-soon{ font-family:var(--mono); font-size:7.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  color:var(--text-muted); border:1px solid var(--border); border-radius:999px; padding:2px 8px; display:inline-block; margin-top:10px; }

/* â”€â”€ tenant empty state â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-empty-tenant{ text-align:center; padding:48px 16px; }
.at-empty-icon{ font-size:34px; margin-bottom:12px; }
.at-empty-title{ font-family:var(--display,var(--mono)); font-size:16px; font-weight:800; color:var(--text); }
.at-empty-sub{ font-family:var(--mono); font-size:10.5px; color:var(--text-muted); max-width:460px; margin:8px auto 0; line-height:1.6; }

/* â”€â”€ detail drawer â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-drawer{ position:fixed; inset:0; z-index:9000; pointer-events:none; }
.at-drawer.is-open{ pointer-events:auto; }
.at-dr-scrim{ position:absolute; inset:0; background:rgba(6,9,14,.5); opacity:0; transition:opacity .2s; }
.at-drawer.is-open .at-dr-scrim{ opacity:1; }
.at-dr-card{ position:absolute; top:0; right:0; height:100%; width:min(420px,92vw); background:var(--panel);
  border-left:1px solid var(--border); box-shadow:-12px 0 40px rgba(0,0,0,.3); transform:translateX(100%);
  transition:transform .24s cubic-bezier(.4,0,.2,1); overflow-y:auto; padding:18px; }
.at-drawer.is-open .at-dr-card{ transform:translateX(0); }
.at-dr-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:10px; padding-bottom:12px; border-bottom:1px solid var(--border); }
.at-dr-name{ display:flex; align-items:center; gap:9px; font-family:var(--display,var(--mono)); font-size:18px; font-weight:800; color:var(--text); }
.at-dr-type{ font-family:var(--mono); font-size:9px; letter-spacing:.08em; text-transform:uppercase; color:var(--text-muted); margin-top:4px; }
.at-dr-headright{ display:flex; align-items:center; gap:8px; }
.at-dr-close{ background:transparent; border:none; color:var(--text-muted); font-size:22px; line-height:1; cursor:pointer; padding:0 2px; }
.at-dr-close:hover{ color:var(--text); }
.at-dr-rows{ padding:12px 0; display:flex; flex-direction:column; gap:9px; }
.at-dr-row{ display:grid; grid-template-columns:108px 1fr; gap:10px; align-items:start; }
.at-dr-k{ font-family:var(--mono); font-size:8.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--text-muted); padding-top:1px; }
.at-dr-v{ font-family:var(--mono); font-size:10.5px; color:var(--text); line-height:1.5; }
.at-dr-section{ font-family:var(--mono); font-size:9px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:var(--text-muted); margin:14px 0 8px; padding-top:12px; border-top:1px solid var(--border); }
.at-timeline{ line-height:1.6; }
.at-dr-controls{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.at-toggle{ display:inline-flex; align-items:center; gap:8px; font-family:var(--mono); font-size:10px; font-weight:700;
  background:var(--panel2); border:1px solid var(--border); border-radius:999px; padding:5px 12px 5px 6px; cursor:pointer; color:var(--text); }
.at-toggle-knob{ width:30px; height:16px; border-radius:999px; background:var(--border); position:relative; transition:background .15s; }
.at-toggle-knob::after{ content:""; position:absolute; top:2px; left:2px; width:12px; height:12px; border-radius:50%; background:#fff; transition:transform .15s; }
.at-toggle.is-on .at-toggle-knob{ background:var(--good); }
.at-toggle.is-on .at-toggle-knob::after{ transform:translateX(14px); }
.at-dr-warn{ font-family:var(--mono); font-size:9px; color:var(--warn); margin-top:10px; line-height:1.5;
  background:color-mix(in srgb,var(--warn) 8%,transparent); border:1px solid color-mix(in srgb,var(--warn) 30%,transparent); border-radius:8px; padding:8px 10px; }
.at-dr-hint{ font-family:var(--mono); font-size:9px; color:var(--text-muted); margin-top:10px; line-height:1.5; }
.at-link{ background:none; border:none; color:var(--accent); font-family:var(--mono); font-size:9px; cursor:pointer; text-decoration:underline; margin-left:6px; padding:0; }

/* â”€â”€ buttons â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-btn{ font-family:var(--mono); font-size:10px; font-weight:700; color:var(--text); background:var(--panel2);
  border:1px solid var(--border); border-radius:8px; padding:7px 14px; cursor:pointer; transition:background .12s, border-color .12s; }
.at-btn:hover{ background:var(--panel); border-color:var(--accent); }
.at-btn-primary{ color:#0a0e14; background:var(--accent); border-color:var(--accent); }
.at-btn-primary:hover{ filter:brightness(1.08); background:var(--accent); }

/* â”€â”€ confirm modal â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-modal{ position:fixed; inset:0; z-index:9100; display:none; align-items:center; justify-content:center; background:rgba(6,9,14,.55); padding:20px; }
.at-modal.is-open{ display:flex; }
.at-modal-card{ background:var(--panel); border:1px solid var(--border); border-radius:14px; padding:20px 22px; width:min(420px,94vw); box-shadow:0 24px 60px rgba(0,0,0,.4); }
.at-modal-title{ font-family:var(--display,var(--mono)); font-size:15px; font-weight:800; color:var(--text); }
.at-modal-msg{ font-family:var(--mono); font-size:10.5px; color:var(--text-dim); line-height:1.6; margin:10px 0 18px; }
.at-modal-actions{ display:flex; justify-content:flex-end; gap:10px; }

/* â”€â”€ toast â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.at-toast{ position:fixed; left:50%; bottom:26px; transform:translateX(-50%) translateY(20px); z-index:9200;
  background:var(--text); color:var(--panel); font-family:var(--mono); font-size:10.5px; font-weight:700;
  padding:10px 18px; border-radius:999px; box-shadow:0 10px 30px rgba(0,0,0,.3); opacity:0; pointer-events:none;
  transition:opacity .2s, transform .2s; }
.at-toast.show{ opacity:1; transform:translateX(-50%) translateY(0); }


/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   V5 PEOPLE PAGE â€” Agent roster grid + Team Command sidebar
   Classes: .v5-people-*, .v5-ag-*, .v5-tc-*
   All values via CSS vars. No hardcoded colors. Both themes.
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* â”€â”€ page body layout (70% grid + 30% sidebar) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-people-body {
  display: grid;
  grid-template-columns: 1fr 30%;
  gap: 20px;
  padding: 20px 24px 32px;
  align-items: start;
}

/* â”€â”€ agent roster grid (3 columns Ã— 2 rows) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-ag-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

/* â”€â”€ agent card â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-ag-card {
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: transform .15s, box-shadow .15s;
}
.v5-ag-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(0,0,0,.14);
}

/* â”€â”€ avatar circle with teal/blue gradient â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-ag-avatar {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--mono);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .06em;
  color: #fff;
  flex-shrink: 0;
}
.v5-ag-avatar--at { background: linear-gradient(135deg, #0ea5b0, #2563eb); }
.v5-ag-avatar--an { background: linear-gradient(135deg, #7c3aed, #0ea5b0); }
.v5-ag-avatar--gr { background: linear-gradient(135deg, #059669, #0ea5b0); }
.v5-ag-avatar--ls { background: linear-gradient(135deg, #d97706, #059669); }
.v5-ag-avatar--tx { background: linear-gradient(135deg, #dc2626, #d97706); }
.v5-ag-avatar--mk { background: linear-gradient(135deg, #7c3aed, #2563eb); }

/* â”€â”€ role / title block â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-ag-info { display: flex; flex-direction: column; gap: 2px; }
.v5-ag-role {
  font-family: var(--mono);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--accent);
}
.v5-ag-title {
  font-family: var(--mono);
  font-size: 11px;
  color: var(--text-dim);
}

/* â”€â”€ 3-stat mini-strip â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-ag-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  background: var(--panel2);
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 8px 6px;
}
.v5-ag-stat { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.v5-ag-stat-v {
  font-family: var(--display, var(--mono));
  font-size: 14px;
  font-weight: 800;
  color: var(--text);
  line-height: 1;
}
.v5-ag-stat-l {
  font-family: var(--mono);
  font-size: 7.5px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--text-muted);
}

/* â”€â”€ one-line description â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-ag-desc {
  font-family: var(--mono);
  font-size: 9.5px;
  color: var(--text-muted);
  line-height: 1.5;
  margin: 0;
}

/* â”€â”€ Team Command sidebar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.v5-people-sidebar { display: flex; flex-direction: column; gap: 14px; }

.v5-tc-card {
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 16px;
}
.v5-tc-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}
.v5-tc-title {
  font-family: var(--mono);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--text);
}
.v5-tc-chip {
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--good);
  background: color-mix(in srgb, var(--good) 14%, transparent);
  border: 1px solid color-mix(in srgb, var(--good) 35%, transparent);
  border-radius: 999px;
  padding: 2px 8px;
}

.v5-tc-rows { display: flex; flex-direction: column; gap: 8px; }
.v5-tc-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 10px;
  background: var(--panel2);
  border: 1px solid var(--border);
  border-radius: 8px;
}
.v5-tc-label {
  font-family: var(--mono);
  font-size: 10px;
  color: var(--text-dim);
}

/* pill variants */
.v5-tc-pill {
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  border-radius: 999px;
  padding: 2px 9px;
  border: 1px solid transparent;
}
.v5-tc-pill--keep {
  color: var(--good);
  background: color-mix(in srgb, var(--good) 14%, transparent);
  border-color: color-mix(in srgb, var(--good) 35%, transparent);
}
.v5-tc-pill--fix {
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 14%, transparent);
  border-color: color-mix(in srgb, var(--accent) 35%, transparent);
}
.v5-tc-pill--model {
  color: var(--text-muted);
  background: var(--panel2);
  border-color: var(--border);
}

/* â”€â”€ responsive â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 900px) {
  .v5-people-body { grid-template-columns: 1fr; }
  .v5-ag-grid    { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .v5-ag-grid { grid-template-columns: 1fr; }
}
