/* ── RESET & TOKENS ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --paper:       #f4f8f6;
  --surface:     #ffffff;
  --bg:          #f4f8f6;
  --bg-card:     #ffffff;
  --bg-hover:    #f0f7f4;
  --ink:         #173238;
  --muted:       #607278;
  --text-bright: #173238;
  --line:        #d7e5e1;
  --teal:        #117c76;
  --teal-dark:   #0c635f;
  --mint:        #9aeabd;
  --accent:      #117c76;
  --accent-light:#e8f7ef;
  --navy:        #f4f8f6;
  --navy-mid:    #ffffff;
  --navy-card:   #ffffff;
  --navy-input:  #ffffff;
  --blue:        #117c76;
  --blue-light:  #168d85;
  --blue-glow:   rgba(17,124,118,.14);
  --cyan:        #117c76;
  --green:       #22c55e;
  --amber:       #f59e0b;
  --red:         #ef4444;
  --hot:         #ef4444;
  --strong:      #f59e0b;
  --review:      #3b82f6;
  --text:        #173238;
  --text-muted:  #607278;
  --text-dim:    #7b8e91;
  --border:      #d7e5e1;
  --border-mid:  #c5d8d4;
  --r:           7px;
  --r-md:        10px;
  --r-lg:        12px;
  --shadow:      0 12px 30px rgba(23,50,56,.10);
  --tr:          .16s ease;
}

html { scroll-behavior: smooth; }
body {
  background: var(--paper);
  color: var(--ink);
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
  font-size: 13px;
  line-height: 1.55;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
body.auth-pending > .header,
body.auth-pending > .main,
body.auth-pending > .footer { display: none; }

/* Bounded four-agent product: keep scheduled and recovery operations out of view. */
#nightlyMorning,
#wf2Operations,
#wf2EvidenceRecoveryHead,
#wf2ArchiveHead,
#wf2RejectedQueueBtn,
#discoveryAuditPanel {
  display: none !important;
}

.wf2-outcome-intro {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px 4px;
}
.wf2-outcome-intro img {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #d7e5e1;
}
.wf2-outcome-intro div {
  display: grid;
  gap: 1px;
}
.wf2-outcome-intro strong {
  color: var(--ink);
  font-size: 13px;
}
.wf2-outcome-intro span {
  color: var(--text-dim);
  font-size: 11px;
}
a { color: var(--teal-dark); text-decoration: none; }
a:hover { text-decoration: underline; }
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* ── SECURE ACCESS ── */
.auth-gate {
  position: fixed;
  inset: 0;
  z-index: 5000;
  display: grid;
  place-items: center;
  overflow-y: auto;
  padding: 28px;
  background:
    radial-gradient(circle at 12% 12%, rgba(0,200,255,.14), transparent 32%),
    radial-gradient(circle at 88% 78%, rgba(109,93,252,.16), transparent 36%),
    linear-gradient(145deg, #040b15 0%, #071426 48%, #0a1021 100%);
}
.auth-gate::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .25;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, #000, transparent 85%);
}
.auth-shell {
  position: relative;
  width: min(980px, 100%);
  min-height: 590px;
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(360px, .94fr);
  overflow: hidden;
  border: 1px solid rgba(116,145,187,.24);
  border-radius: 24px;
  background: rgba(7,17,31,.94);
  box-shadow: 0 34px 110px rgba(0,0,0,.62);
  backdrop-filter: blur(20px);
}
.auth-intro {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 52px;
  overflow: hidden;
  border-right: 1px solid rgba(116,145,187,.18);
  background:
    linear-gradient(155deg, rgba(0,200,255,.08), transparent 38%),
    linear-gradient(335deg, rgba(109,93,252,.11), transparent 48%);
}
.auth-intro::after {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: -145px;
  bottom: -145px;
  border: 1px solid rgba(0,200,255,.15);
  border-radius: 50%;
  box-shadow: 0 0 0 48px rgba(109,93,252,.03), 0 0 0 96px rgba(0,200,255,.025);
}
.auth-brand {
  position: absolute;
  top: 34px;
  left: 42px;
  display: flex;
  align-items: center;
  gap: 11px;
}
.auth-brand img { width: 42px; height: 42px; object-fit: contain; }
.auth-brand div { display: flex; flex-direction: column; line-height: 1.2; }
.auth-brand strong { color: #fff; font-size: 17px; letter-spacing: -.3px; }
.auth-brand span { color: var(--muted); font-size: 10px; }
.auth-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  color: #90eaff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.3px;
  text-transform: uppercase;
}
.auth-kicker span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--cyan);
  box-shadow: 0 0 14px rgba(0,200,255,.8);
}
.auth-intro h1 {
  max-width: 420px;
  color: #f8fbff;
  font-size: clamp(34px, 4vw, 48px);
  line-height: 1.03;
  letter-spacing: -1.9px;
}
.auth-intro > p {
  max-width: 440px;
  margin-top: 18px;
  color: #9aacbf;
  font-size: 14px;
  line-height: 1.7;
}
.auth-trust-list {
  display: grid;
  gap: 14px;
  margin-top: 34px;
}
.auth-trust-list > div {
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 12px;
  align-items: start;
}
.auth-trust-list > div > span {
  padding-top: 2px;
  color: #536984;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 10px;
}
.auth-trust-list p { color: #71859e; font-size: 11px; line-height: 1.45; }
.auth-trust-list strong { display: block; color: #dce8f7; font-size: 12px; }
.auth-panel {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 40px 34px 58px;
  background: rgba(5,14,27,.76);
}
.auth-loading,
.auth-landing,
.auth-denied {
  width: 100%;
  text-align: center;
}
.auth-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  color: #dce8f7;
}
.auth-loading small,
.auth-landing p,
.auth-denied p { color: var(--muted); }
.auth-spinner {
  width: 30px;
  height: 30px;
  margin-bottom: 7px;
  border: 2px solid rgba(148,163,184,.2);
  border-top-color: var(--cyan);
  border-radius: 50%;
  animation: auth-spin .8s linear infinite;
}
@keyframes auth-spin { to { transform: rotate(360deg); } }
.auth-lock {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  margin: 0 auto 20px;
  border: 1px solid rgba(0,200,255,.35);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(0,200,255,.14), rgba(109,93,252,.16));
  color: #e9fbff;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: -.5px;
  box-shadow: 0 14px 34px rgba(0,0,0,.28);
}
.auth-landing h2,
.auth-denied h2 { color: #f8fbff; font-size: 25px; letter-spacing: -.7px; }
.auth-landing p,
.auth-denied p {
  max-width: 300px;
  margin: 8px auto 22px;
  line-height: 1.6;
}
.auth-landing > small {
  display: block;
  margin-top: 14px;
  color: #60738d;
  font-size: 9px;
  line-height: 1.5;
}
.auth-preview-help {
  max-width: 310px;
  margin: 12px auto 0;
  color: #9ab0c9;
  font-size: 10px;
  line-height: 1.5;
}
.auth-primary-btn,
.auth-secondary-btn {
  width: 100%;
  padding: 12px 16px;
  border-radius: 11px;
  font-weight: 750;
  cursor: pointer;
  transition: transform var(--tr), border-color var(--tr), background var(--tr);
}
.auth-primary-btn {
  border: 1px solid rgba(135,124,255,.75);
  background: linear-gradient(115deg, #5b5cf0, #7b52ee);
  color: #fff;
  box-shadow: 0 12px 30px rgba(88,76,214,.26);
}
.auth-primary-btn:hover { transform: translateY(-1px); }
.auth-secondary-btn {
  border: 1px solid var(--border-mid);
  background: rgba(255,255,255,.03);
  color: var(--ink);
}
.auth-secondary-btn:hover { border-color: #6d5dfc; }
.auth-denied-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin: 0 auto 18px;
  border: 1px solid rgba(239,68,68,.4);
  border-radius: 50%;
  background: rgba(239,68,68,.1);
  color: #fca5a5;
  font-size: 24px;
  font-weight: 900;
}
.auth-error {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid rgba(239,68,68,.35);
  border-radius: 10px;
  background: rgba(239,68,68,.08);
  color: #fca5a5;
  font-size: 11px;
  line-height: 1.5;
}
.auth-clerk {
  display: flex;
  width: 100%;
  min-width: 0;
  justify-content: center;
}
.auth-clerk .cl-rootBox,
.auth-clerk .cl-cardBox,
.auth-clerk .cl-card {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
.auth-security-note {
  position: absolute;
  bottom: 24px;
  display: flex;
  align-items: center;
  gap: 7px;
  color: #52677f;
  font-size: 9px;
  letter-spacing: .2px;
}
.auth-security-note span {
  color: var(--green);
  font-size: 7px;
  text-shadow: 0 0 8px rgba(34,197,94,.7);
}

/* ── HEADER ── */
.header {
  background: linear-gradient(135deg, #07111f 0%, #0c1c33 60%, #091828 100%);
  border-bottom: 1px solid var(--border);
  position: sticky; top: 0; z-index: 100;
  box-shadow: 0 2px 16px rgba(0,0,0,.5);
}
.header-inner {
  max-width: 1500px; margin: 0 auto;
  display: flex; align-items: center; gap: 20px;
  padding: 10px 20px;
}
.logo { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.logo-mark {
  width: 36px; height: 36px;
  display: block;
  object-fit: contain;
  flex-shrink: 0;
}
.logo-words { display: flex; flex-direction: column; line-height: 1.1; }
.logo-text { font-size: 17px; font-weight: 800; color: #fff; letter-spacing: -.4px; }
.logo-sub  { font-size: 10px; color: var(--muted); }

.tab-nav { display: flex; gap: 4px; flex: 1; justify-content: center; }
.tab-btn {
  background: transparent;
  border: 1px solid transparent;
  color: var(--muted);
  padding: 7px 16px;
  border-radius: var(--r);
  font-size: 13px; font-weight: 600;
  cursor: pointer;
  transition: all var(--tr);
  white-space: nowrap;
}
.tab-btn:hover { color: var(--ink); border-color: var(--border-mid); }
.tab-btn.active {
  background: var(--teal); color: #fff; border-color: var(--teal);
  box-shadow: 0 2px 12px rgba(28,106,244,.35);
}

.header-account {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.header-account > div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  min-width: 0;
  line-height: 1.25;
}
.header-account strong {
  max-width: 170px;
  overflow: hidden;
  color: var(--ink);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.header-account span {
  max-width: 190px;
  overflow: hidden;
  color: var(--muted);
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.header-account button {
  padding: 5px 8px;
  border: 1px solid var(--border-mid);
  border-radius: 6px;
  background: transparent;
  color: var(--muted);
  font-size: 9px;
  cursor: pointer;
}
.header-account button:hover { color: #fff; border-color: var(--teal-dark); }

@media (max-width: 800px) {
  html { scroll-behavior: auto; }
  body.auth-pending { display: block; overflow-x: hidden; }
  .auth-gate {
    position: relative;
    inset: auto;
    display: block;
    width: 100%;
    min-height: 100vh;
    overflow: visible;
    padding: 14px;
  }
  .auth-shell {
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
    margin: 8px 0;
  }
  .auth-shell > * { min-width: 0; }
  .auth-intro {
    min-height: 390px;
    padding: 105px 30px 34px;
    border-right: 0;
    border-bottom: 1px solid rgba(116,145,187,.18);
  }
  .auth-brand { top: 28px; left: 30px; }
  .auth-intro h1 { font-size: 35px; }
  .auth-intro > p { font-size: 12px; }
  .auth-trust-list { margin-top: 26px; }
  .auth-panel {
    min-height: 420px;
    overflow-x: hidden;
    padding: 40px 24px 58px;
  }
  .header-account span { display: none; }
}

/* ── MAIN & TABS ── */
.main { max-width: 1500px; margin: 0 auto; padding: 20px; flex: 1; width: 100%; }
.tab-panel { display: none; }
.tab-panel.active { display: block; }

/* (removed original panel styles, moved to end) */

/* ── STATS ROW ── */
.stats-row {
  display: flex; gap: 12px; flex-wrap: wrap;
  margin-bottom: 16px;
}
.stat-card {
  flex: 1; min-width: 100px;
  background: var(--navy-card);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 12px 16px; text-align: center;
}
.stat-num { font-size: 26px; font-weight: 800; line-height: 1; margin-bottom: 3px; }
.stat-label { font-size: 10px; color: var(--muted); text-transform: uppercase; letter-spacing: .5px; font-weight: 600; }
.stat-card--new    { border-color: rgba(0,200,255,.3); }
.stat-card--new    .stat-num { color: var(--cyan); }
.stat-card--hot    { border-color: rgba(239,68,68,.3); }
.stat-card--hot    .stat-num { color: var(--hot); }
.stat-card--strong { border-color: rgba(245,158,11,.3); }
.stat-card--strong .stat-num { color: var(--strong); }
.stat-card--contacted { border-color: rgba(34,197,94,.3); }
.stat-card--contacted .stat-num { color: var(--green); }

/* ── FILTER BAR ── */
.filter-bar {
  display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
  background: var(--navy-card);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 10px 14px;
  margin-bottom: 14px;
}
.filter-group { display: flex; align-items: center; }
.filter-input, .filter-select {
  background: #fbfdfc;
  border: 1px solid var(--border-mid);
  border-radius: var(--r);
  color: var(--ink);
  font-size: 12px;
  padding: 6px 10px;
  font-family: inherit;
  transition: border-color var(--tr);
}
.filter-input { width: 200px; }
.filter-input:focus, .filter-select:focus { outline: none; border-color: var(--teal); }
.filter-input::placeholder { color: var(--text-dim); }
.filter-checkbox { display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: 12px; cursor: pointer; }
.filter-checkbox input { accent-color: var(--teal); }
.filter-actions { display: flex; gap: 6px; margin-left: auto; }

/* ── BUTTONS ── */
.btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 18px;
  border-radius: var(--r);
  font-size: 13px; font-weight: 600;
  cursor: pointer; border: none;
  text-decoration: none; white-space: nowrap;
  transition: all var(--tr);
}
.btn--primary {
  background: linear-gradient(135deg, var(--teal), #155dda);
  color: #fff;
  box-shadow: 0 3px 12px rgba(28,106,244,.3);
}
.btn--primary:hover:not(:disabled) { box-shadow: 0 5px 20px rgba(28,106,244,.5); transform: translateY(-1px); }
.btn--primary:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.btn--danger {
  background: linear-gradient(135deg, #dc2626, #b91c1c);
  color: #fff;
  box-shadow: 0 3px 12px rgba(220,38,38,.3);
}
.btn--danger:hover:not(:disabled) { box-shadow: 0 5px 20px rgba(220,38,38,.5); transform: translateY(-1px); }
.btn--danger:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.btn--outline { background: transparent; border: 1px solid var(--border-mid); color: var(--muted); }
.btn--outline:hover { border-color: var(--teal-dark); color: var(--teal-dark); }
.btn--sm { padding: 5px 12px; font-size: 12px; }
.btn--lg { padding: 10px 24px; font-size: 14px; }

/* ── TABLE ── */
.table-wrap { overflow-x: auto; border-radius: var(--r); border: 1px solid var(--border); }
.results-table { width: 100%; border-collapse: collapse; font-size: 12px; }
.results-table thead { background: #fbfdfc; position: sticky; top: 0; z-index: 2; }
.results-table th {
  text-align: left; padding: 9px 10px;
  font-size: 10px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .5px;
  color: var(--muted); border-bottom: 1px solid var(--border);
  white-space: nowrap;
}
.results-table th.sortable { cursor: pointer; user-select: none; }
.results-table th.sortable:hover { color: var(--teal-dark); }
.results-table th.sort-asc::after  { content: ' ↑'; }
.results-table th.sort-desc::after { content: ' ↓'; }
.results-table td {
  padding: 9px 10px;
  border-bottom: 1px solid var(--border);
  vertical-align: top;
  color: var(--ink);
}
.results-table tbody tr:last-child td { border-bottom: none; }
.results-table tbody tr:hover td { background: rgba(28,106,244,.04); }

.row-hot td:first-child    { border-left: 3px solid var(--hot); }
.row-strong td:first-child { border-left: 3px solid var(--strong); }

.col-new     { width: 40px; }
.col-company { min-width: 150px; max-width: 200px; }
.col-contact { width: 70px; text-align: center; }
.col-role    { max-width: 130px; }
.col-evidence { max-width: 180px; color: var(--muted) !important; }
.col-angle   { max-width: 180px; color: var(--muted) !important; font-style: italic; }
.col-notes   { min-width: 120px; }
.col-date    { white-space: nowrap; color: var(--text-dim) !important; }

.company-url { font-size: 11px; color: var(--text-dim); margin-top: 2px; }
.company-url a { color: var(--teal-dark); }

.new-badge {
  display: inline-block;
  background: rgba(0,200,255,.15); color: var(--cyan);
  border: 1px solid rgba(0,200,255,.3);
  border-radius: 3px; font-size: 9px; font-weight: 700;
  padding: 1px 5px; letter-spacing: .5px;
}

/* BADGES */
.score-badge {
  display: inline-block; padding: 3px 7px; border-radius: 4px;
  font-weight: 700; font-size: 11px; white-space: nowrap;
}
/* 0-100 score colour bands */
.score-hot    { background: rgba(239,68,68,.14);  color: #f87171;  border: 1px solid rgba(239,68,68,.35); }
.score-strong { background: rgba(34,197,94,.14);  color: var(--green); border: 1px solid rgba(34,197,94,.3); }
.score-mid    { background: rgba(245,158,11,.14); color: var(--amber); border: 1px solid rgba(245,158,11,.3); }
.score-low    { background: rgba(148,163,184,.08); color: #94a3b8; border: 1px solid rgba(148,163,184,.15); }
/* legacy alias kept for safety */
.score-high   { background: rgba(34,197,94,.14); color: var(--green); border: 1px solid rgba(34,197,94,.3); }

/* HIRING TYPE BADGES */
.hiring-badge {
  display: inline-block; padding: 2px 7px; border-radius: 4px;
  font-size: 10px; font-weight: 700; white-space: nowrap;
}
.hiring-temp    { background: rgba(34,197,94,.14);   color: #22c55e; border: 1px solid rgba(34,197,94,.3); }
.hiring-perm    { background: rgba(245,158,11,.13);  color: #f59e0b; border: 1px solid rgba(245,158,11,.3); }
.hiring-unclear { background: rgba(100,116,139,.10); color: #64748b; border: 1px solid rgba(100,116,139,.2); }

/* AGENCY RISK DOTS (inline next to company name) */
.risk-dot { font-size: 9px; margin-right: 4px; }
.risk-high   { color: var(--red); }
.risk-medium { color: var(--amber); }

.priority-badge {
  display: inline-block; padding: 2px 8px;
  border-radius: 20px; font-size: 10px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .4px;
}
.priority-hot    { background: rgba(239,68,68,.14); color: var(--hot);    border: 1px solid rgba(239,68,68,.3); }
.priority-strong { background: rgba(245,158,11,.14); color: var(--strong); border: 1px solid rgba(245,158,11,.3); }
.priority-review { background: rgba(59,130,246,.14); color: var(--review); border: 1px solid rgba(59,130,246,.3); }
.priority-weak   { background: rgba(100,116,139,.08); color: #64748b;      border: 1px solid rgba(100,116,139,.15); }

.source-badge {
  display: inline-block;
  background: #fbfdfc; border: 1px solid var(--border-mid);
  border-radius: 4px; padding: 2px 6px;
  font-size: 10px; color: var(--muted); white-space: nowrap;
}

/* STATUS SELECT */
.status-select {
  background: #fbfdfc;
  border: 1px solid var(--border-mid);
  border-radius: var(--r); color: var(--ink);
  font-size: 11px; padding: 4px 6px;
  font-family: inherit; cursor: pointer; width: 120px;
}
.status-new           { border-color: rgba(0,200,255,.4); color: var(--cyan); }
.status-contacted     { border-color: rgba(245,158,11,.4); color: var(--amber); }
.status-qualified     { border-color: rgba(34,197,94,.4);  color: var(--green); }
.status-placed        { border-color: rgba(28,106,244,.4); color: var(--teal-dark); }
.status-not-interested { border-color: rgba(100,116,139,.3); color: #64748b; }

/* CONTACTS */
.contact-link {
  display: inline-flex; align-items: center; justify-content: center;
  width: 26px; height: 26px;
  background: #fbfdfc; border: 1px solid var(--border-mid);
  border-radius: 5px; font-size: 13px;
  transition: all var(--tr);
}
.contact-link:hover { border-color: var(--teal-dark); transform: scale(1.1); text-decoration: none; }
.contact-name { font-size: 10px; color: var(--text-dim); margin-top: 2px; }

/* NOTES */
.notes-btn {
  display: inline-flex; align-items: center; gap: 4px;
  background: #fbfdfc; border: 1px solid var(--border-mid);
  border-radius: var(--r); color: var(--muted);
  padding: 3px 8px; font-size: 11px; cursor: pointer;
  transition: all var(--tr); font-family: inherit;
}
.notes-btn:hover { border-color: var(--teal-dark); color: var(--teal-dark); }
.notes-btn.has-notes { border-color: rgba(245,158,11,.4); color: var(--amber); }
.notes-preview {
  font-size: 10px; color: var(--text-dim); margin-top: 3px;
  max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

/* DELETE BTN */
.del-btn {
  background: transparent; border: none;
  color: var(--text-dim); font-size: 12px; cursor: pointer;
  width: 22px; height: 22px; border-radius: 4px;
  transition: all var(--tr);
}
.del-btn:hover { background: rgba(239,68,68,.12); color: var(--red); }

/* EMPTY STATE */
.empty-row td { padding: 60px 20px !important; border: none !important; }
.empty-state { text-align: center; }
.empty-icon  { font-size: 42px; margin-bottom: 14px; }
.empty-text  { font-size: 15px; color: var(--muted); margin-bottom: 16px; }

/* PAGINATION */
.pagination { display: flex; gap: 4px; align-items: center; padding: 14px 0; justify-content: center; }
.pag-info   { font-size: 11px; color: var(--text-dim); margin-right: 8px; }
.pag-btn {
  background: var(--navy-card); border: 1px solid var(--border);
  color: var(--muted); padding: 5px 10px; border-radius: var(--r);
  font-size: 12px; cursor: pointer; transition: all var(--tr);
}
.pag-btn:hover { border-color: var(--teal-dark); color: var(--teal-dark); }
.pag-btn.active { background: var(--teal); border-color: var(--teal); color: #fff; }

/* ── SEARCH TAB ── */
.search-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.8fr); gap: 24px; }
.search-form-col, .search-log-col { }

.field-block { margin-bottom: 16px; }
.field-label {
  display: flex; align-items: center; gap: 6px;
  font-size: 11px; font-weight: 700;
  color: var(--muted); text-transform: uppercase; letter-spacing: .5px;
  margin-bottom: 7px;
}
.hint { font-size: 10px; color: var(--text-dim); font-weight: 400; text-transform: none; letter-spacing: 0; }
.req  { color: var(--teal-dark); }

.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.form-full { grid-column: 1 / -1; }
.form-group { display: flex; flex-direction: column; gap: 5px; }
.form-input, .form-textarea, .form-select {
  background: #fbfdfc;
  border: 1px solid var(--border);
  border-radius: var(--r);
  color: var(--ink); font-size: 13px;
  padding: 9px 12px;
  font-family: inherit; width: 100%;
  transition: border-color var(--tr), box-shadow var(--tr);
}
.form-input:focus, .form-textarea:focus {
  outline: none; border-color: var(--teal);
  box-shadow: 0 0 0 3px var(--blue-glow);
}
.form-input::placeholder, .form-textarea::placeholder { color: var(--text-dim); }
.form-textarea { resize: vertical; min-height: 80px; }

/* SECTOR BTNS */
.sector-btns { display: flex; flex-wrap: wrap; gap: 6px; }
.sector-btn {
  background: #fbfdfc; border: 1px solid #cbdad7;
  color: var(--muted); padding: 6px 12px;
  border-radius: 20px; font-size: 11px; font-weight: 600;
  cursor: pointer; transition: all var(--tr); white-space: nowrap;
}
.sector-btn:hover { border-color: var(--teal); color: var(--teal-dark); background: var(--mint); }
.sector-btn.active { background: var(--teal); border-color: var(--teal); color: #fff; }

/* SOURCES */
.source-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.source-check {
  display: flex; align-items: center; gap: 8px;
  background: #fbfdfc; border: 1px solid var(--border);
  border-radius: var(--r); padding: 8px 10px; cursor: pointer;
  transition: border-color var(--tr);
}
.source-check:has(input:checked) { border-color: var(--teal); background: var(--blue-glow); }
.source-check input { accent-color: var(--teal); cursor: pointer; }
.source-check input:disabled { opacity: .4; cursor: not-allowed; }
.source-info { display: flex; flex-direction: column; gap: 2px; }
.source-name { font-size: 12px; font-weight: 600; color: var(--ink); }
.source-tag {
  font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px;
  padding: 1px 5px; border-radius: 3px; display: inline-block;
}
.source-tag--free { background: rgba(34,197,94,.14); color: var(--green); border: 1px solid rgba(34,197,94,.3); }
.source-tag--api  { background: rgba(148,163,184,.08); color: #64748b; border: 1px solid rgba(148,163,184,.15); }

.form-actions { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 10px; }

/* STRICT MODE TOGGLE BLOCK */
.strict-mode-block {
  margin-top: 16px;
  background: #fbfdfc;
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: 12px 14px;
}
.strict-mode-inner { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.strict-mode-text { display: flex; flex-direction: column; gap: 3px; }
.strict-mode-title { font-size: 12px; font-weight: 800; color: var(--ink); }
.strict-mode-desc  { font-size: 11px; color: var(--muted); }

/* Custom toggle switch */
.strict-toggle-label {
  position: relative; display: inline-block;
  width: 42px; height: 24px; flex-shrink: 0; cursor: pointer;
}
.strict-toggle-label input { opacity: 0; width: 0; height: 0; }
.strict-slider {
  position: absolute; inset: 0;
  background: var(--border-mid); border-radius: 24px;
  transition: background .2s;
}
.strict-slider::before {
  content: '';
  position: absolute; left: 3px; top: 3px;
  width: 18px; height: 18px;
  background: #fff; border-radius: 50%;
  transition: transform .2s;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.strict-toggle-label input:checked + .strict-slider { background: var(--teal); }
.strict-toggle-label input:checked + .strict-slider::before { transform: translateX(18px); }

/* SEARCH LOG */
.log-output {
  background: #fbfdfc; border: 1px solid var(--line);
  border-radius: var(--r); padding: 14px;
  min-height: 140px; max-height: 380px; overflow-y: auto;
  font-family: monospace; font-size: 11px;
}
.log-line         { color: var(--muted); padding: 2px 0; }
.log-kept         { color: var(--green); }
.log-removed      { color: var(--red); }
.log-divider      { color: var(--border-mid); letter-spacing: 2px; }

.search-result { margin-top: 14px; }
.result-summary {
  font-size: 14px; color: var(--ink);
  padding: 12px 16px;
  background: #fbfdfc; border: 1px solid var(--line);
  border-radius: var(--r);
}
.result-num    { font-size: 22px; font-weight: 800; color: var(--teal-dark); }
.result-added  { font-weight: 700; color: var(--green); }

/* ── SETTINGS TAB ── */
.settings-layout { max-width: 720px; }
.settings-desc { font-size: 13px; color: var(--muted); margin-bottom: 20px; }
.api-key-block {
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 16px;
  margin-bottom: 14px;
  background: #fbfdfc;
}
.api-key-header { display: flex; align-items: center; gap: 10px; margin-bottom: 6px; }
.api-name { font-size: 14px; font-weight: 700; color: #fff; }
.api-badge {
  font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px;
  padding: 2px 8px; border-radius: 20px;
  background: rgba(100,116,139,.1); color: #64748b; border: 1px solid rgba(100,116,139,.2);
}
.api-badge--ok {
  background: rgba(34,197,94,.12); color: var(--green); border-color: rgba(34,197,94,.3);
}
.api-desc { font-size: 12px; color: var(--muted); margin-bottom: 10px; }
.api-desc a { color: var(--teal-dark); }
.settings-saved {
  margin-top: 10px; font-size: 13px; color: var(--green); font-weight: 600;
}
.settings-inline-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.settings-inline-actions .settings-saved {
  margin-top: 0;
}

/* ── MODAL ── */
.modal-overlay {
  position: fixed; inset: 0; z-index: 300;
  background: rgba(7,17,31,.75);
  display: flex; align-items: center; justify-content: center;
  backdrop-filter: blur(4px);
}
.modal {
  background: var(--navy-card); border: 1px solid var(--border-mid);
  border-radius: var(--r-lg); padding: 24px;
  width: 480px; max-width: 92vw;
  box-shadow: 0 20px 60px rgba(0,0,0,.6);
}
.modal-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.modal-title { font-size: 15px; font-weight: 700; color: #fff; }
.modal-close {
  background: none; border: none; color: var(--muted);
  font-size: 16px; cursor: pointer; line-height: 1;
  padding: 2px 6px; border-radius: 4px;
}
.modal-close:hover { color: #fff; background: rgba(255,255,255,.06); }
.modal-footer { display: flex; gap: 8px; margin-top: 14px; justify-content: flex-end; }

/* ── SALESFORCE REVIEW MODAL ── */
.sf-review-modal {
  width: 980px;
  max-height: 92vh;
  display: flex;
  flex-direction: column;
  background: #fff;
  color: #173238;
}
.sf-review-modal .modal-header { align-items: flex-start; }
.sf-review-modal .modal-title {
  color: #173238;
  font-size: 20px;
  line-height: 1.25;
}
.sf-review-subtitle {
  max-width: 680px;
  margin-top: 5px;
  color: #52696e;
  font-size: 13px;
  line-height: 1.45;
}
.sf-review-summary {
  display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px;
  margin-bottom: 14px;
}
.sf-review-stat {
  display: flex; align-items: baseline; gap: 7px; padding: 10px 12px;
  background: #f7faf9; border: 1px solid #cbd8d5;
  border-radius: var(--r-md); color: #435b60; font-size: 11px;
  font-weight: 650;
}
.sf-review-stat strong { color: #173238; font-size: 19px; }
.sf-review-stat--new { border-color: #9bd5ba; background: #edf9f3; }
.sf-review-stat--new strong { color: #087a4f; }
.sf-review-stat--hold { border-color: #efb4ae; background: #fff2f1; }
.sf-review-stat--hold strong { color: #b42318; }
.sf-review-stat--opp { border-color: #e7ca8d; background: #fff8e8; }
.sf-review-stat--opp strong { color: #8a5200; }
.sf-link-panel {
  margin: 8px 0 18px;
  padding: 22px;
  border: 1px solid rgba(109,93,252,.35);
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(109,93,252,.09), rgba(0,200,255,.04));
}
.sf-link-badge {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(109,93,252,.16);
  color: #c4bfff;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .5px;
  text-transform: uppercase;
}
.sf-link-panel h3 { color: #fff; font-size: 16px; }
.sf-link-panel p {
  max-width: 680px;
  margin: 7px 0 16px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.6;
}
.sf-link-panel label {
  display: block;
  margin-bottom: 5px;
  color: var(--ink);
  font-size: 10px;
  font-weight: 700;
}
.sf-link-panel .form-input { width: 100%; margin-bottom: 10px; }
.sf-link-error {
  margin-bottom: 10px;
  padding: 8px 10px;
  border: 1px solid rgba(239,68,68,.3);
  border-radius: 7px;
  background: rgba(239,68,68,.08);
  color: #fca5a5;
  font-size: 10px;
}
.sf-review-list {
  border: 1px solid #cbd8d5; border-radius: var(--r-md);
  overflow-y: auto; min-height: 120px; max-height: 52vh;
  background: #fff;
}
.sf-review-row {
  display: block;
  border-bottom: 1px solid #d8e2df;
  background: #fff;
}
.sf-review-row:last-child { border-bottom: 0; }
.sf-review-row:hover { background: #f8fbfa; }
.sf-review-row--locked { cursor: default; opacity: 1; }
.sf-review-row-main {
  display: grid;
  grid-template-columns: 34px minmax(190px,1fr) minmax(260px,1.2fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
}
.sf-review-select { text-align: center; }
.sf-review-check { width: 16px; height: 16px; accent-color: var(--teal); }
.sf-review-skip {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #edf3f1;
  color: #4a6267;
  font-weight: 800;
}
.sf-review-company, .sf-review-result { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.sf-review-company strong {
  color: #173238;
  font-size: 13px;
  line-height: 1.35;
}
.sf-review-company small,
.sf-review-result small {
  color: #52696e;
  font-size: 11px;
  line-height: 1.45;
  white-space: normal;
}
.sf-review-chip {
  align-self: flex-start; padding: 3px 7px; border-radius: 999px;
  font-size: 10px; font-weight: 800;
}
.sf-review-chip--new { color: #08663f; background: #ddf5e9; }
.sf-review-chip--existing { color: #174b85; background: #e6f1ff; }
.sf-review-chip--opportunity { color: #794700; background: #fff0c9; }
.sf-review-chip--hold { color: #9f1c15; background: #ffe5e2; }
.sf-review-expand {
  min-width: 124px;
  padding: 7px 10px;
  border: 1px solid #6aa997;
  border-radius: 8px;
  background: #fff;
  color: #0d6554;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}
.sf-review-expand:hover,
.sf-review-expand[aria-expanded="true"] {
  border-color: #0d8068;
  background: #eaf7f2;
}
.sf-ambiguity-panel {
  padding: 16px;
  border-top: 1px solid #cbd8d5;
  background: #f4f8f7;
}
.sf-ambiguity-panel[hidden] { display: none; }
.sf-ambiguity-intro {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-bottom: 12px;
}
.sf-ambiguity-intro strong { color: #173238; font-size: 13px; }
.sf-ambiguity-intro span { color: #52696e; font-size: 11px; line-height: 1.45; }
.sf-candidate-warning {
  margin-bottom: 10px;
  padding: 9px 11px;
  border: 1px solid #e7b6b1;
  border-radius: 8px;
  background: #fff1f0;
  color: #8c211a;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.45;
}
.sf-candidate-list { display: grid; gap: 10px; }
.sf-candidate {
  display: block;
  padding: 13px;
  border: 1px solid #c7d5d2;
  border-radius: 10px;
  background: #fff;
  color: #173238;
}
.sf-candidate--selectable { cursor: pointer; }
.sf-candidate--selectable:hover,
.sf-candidate--selectable:has(input:checked) {
  border-color: #17826b;
  box-shadow: 0 0 0 2px rgba(23,130,107,.12);
}
.sf-candidate--held { background: #fbfcfc; }
.sf-candidate-head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 11px;
}
.sf-candidate-head input { width: 17px; height: 17px; accent-color: #0d8068; }
.sf-candidate-head strong {
  min-width: 0;
  color: #173238;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.sf-candidate-context {
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e8eeec;
  color: #52696e;
  font-size: 11px;
  font-weight: 900;
}
.sf-candidate-type {
  flex: 0 0 auto;
  padding: 3px 7px;
  border-radius: 999px;
  background: #e6f1ff;
  color: #174b85;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.sf-candidate-type--account { background: #e7f6ef; color: #08663f; }
.sf-candidate-type--contact { background: #f1ecff; color: #5c3c9d; }
.sf-candidate-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px 12px;
}
.sf-candidate-fact { min-width: 0; }
.sf-candidate-fact span {
  display: block;
  margin-bottom: 2px;
  color: #60767a;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.sf-candidate-fact strong {
  display: block;
  color: #243f45;
  font-size: 10px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.sf-candidate-evidence {
  margin-top: 10px;
  padding-top: 9px;
  border-top: 1px solid #e0e8e6;
}
.sf-candidate-evidence > span {
  color: #425b60;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.sf-candidate-evidence ul {
  margin: 5px 0 0 17px;
  padding: 0;
  color: #52696e;
  font-size: 10px;
  line-height: 1.45;
}
.sf-candidate-action {
  margin-top: 9px;
  padding: 8px 9px;
  border-radius: 7px;
  background: #f1f4f3;
  color: #5d7074;
  font-size: 10px;
  font-weight: 750;
}
.sf-candidate-action--ready { background: #e8f7f1; color: #086348; }
.sf-approval-confirm {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid #68a995;
  border-radius: 10px;
  background: #eaf7f2;
  color: #17483f;
  cursor: pointer;
}
.sf-approval-confirm input {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  margin-top: 1px;
  accent-color: #0d8068;
}
.sf-approval-confirm span { font-size: 11px; font-weight: 750; line-height: 1.5; }
.sf-approval-confirm--disabled {
  border-color: #d3ddda;
  background: #f2f5f4;
  color: #6c7f82;
  cursor: default;
}
.sf-review-footer {
  align-items: center;
  padding-top: 4px;
}
.sf-review-selection-status {
  margin-right: auto;
  color: #52696e;
  font-size: 11px;
  font-weight: 650;
}
@media (max-width: 720px) {
  .sf-review-modal { width: 96vw; max-width: 96vw; padding: 16px; }
  .sf-review-summary { grid-template-columns: 1fr 1fr; }
  .sf-review-row-main { grid-template-columns: 28px 1fr; gap: 9px; }
  .sf-review-result,
  .sf-review-expand { grid-column: 2; }
  .sf-review-expand { width: 100%; }
  .sf-candidate-facts { grid-template-columns: 1fr 1fr; }
  .sf-review-footer { flex-wrap: wrap; }
  .sf-review-selection-status { width: 100%; margin: 0 0 4px; }
}
@media (max-width: 460px) {
  .sf-review-summary { grid-template-columns: 1fr; }
  .sf-candidate-facts { grid-template-columns: 1fr; }
}

/* ── FOOTER ── */
.footer {
  background: #fbfdfc; border-top: 1px solid var(--border);
  padding: 12px 20px; margin-top: auto;
}
.footer-inner {
  max-width: 1500px; margin: 0 auto;
  display: flex; align-items: center; gap: 8px;
  font-size: 11px; color: var(--text-dim);
}
.fsep { color: var(--border-mid); }

/* ── WATCHLIST TAB ── */
.wl-layout { display: grid; grid-template-columns: 340px 1fr; gap: 18px; align-items: start; }
.wl-add-col, .wl-list-col { min-width: 0; }
.wl-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 6px; }
.wl-hint { font-size: 11px; color: var(--muted); margin-top: 2px; }
.wl-actions { display: flex; gap: 8px; flex-shrink: 0; }
.wl-count { font-size: 13px; color: var(--muted); font-weight: 400; }

.wl-progress {
  margin: 8px 0; padding: 10px 14px;
  background: rgba(28,106,244,.08); border: 1px solid var(--border-mid);
  border-radius: var(--r);
}
.wl-progress-bar { height: 4px; background: var(--border); border-radius: 2px; overflow: hidden; margin-bottom: 8px; }
.wl-progress-fill {
  height: 100%; background: var(--teal); border-radius: 2px;
  transition: width .35s ease; width: 0%;
}
.wl-progress-text { font-size: 12px; color: var(--muted); }

.wl-status { display: inline-block; padding: 2px 7px; border-radius: 4px; font-size: 11px; font-weight: 600; }
.wl-status-hiring { background: rgba(34,197,94,.12); color: #22c55e; }
.wl-history-cell { background: rgba(255,255,255,.02); padding: 10px 16px !important; }
.wl-history-title { font-size: 12px; font-weight: 600; color: var(--text-dim, #94a3b8); margin-bottom: 6px; }
.wl-history-row { display: flex; align-items: center; gap: 12px; padding: 3px 0; font-size: 12px; }
.wl-history-date { color: var(--text-dim, #94a3b8); min-width: 130px; }
.wl-status-none   { background: rgba(123,143,170,.08); color: var(--muted); }
.wl-status-pending{ background: rgba(59,130,246,.10); color: var(--teal-dark); }

.wl-jobs-found { color: #22c55e; font-weight: 700; font-size: 12px; }
.link-listing { color: var(--muted); font-size: 11px; }
.link-listing:hover { color: var(--teal-dark); }
.no-site { color: var(--text-dim); }

.form-textarea {
  width: 100%; background: #fbfdfc; border: 1px solid var(--border-mid);
  border-radius: var(--r); padding: 9px 12px; color: var(--ink);
  font-size: 13px; font-family: inherit; resize: vertical;
  transition: border-color var(--tr);
}
.form-textarea:focus { outline: none; border-color: var(--teal); }

/* ── RESPONSIVE ── */
@media (max-width: 1100px) {
  .wl-layout { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .search-layout { grid-template-columns: 1fr; }
  .source-grid   { grid-template-columns: 1fr 1fr; }
  .form-grid     { grid-template-columns: 1fr; }
  .form-full     { grid-column: 1; }
  .mode-grid     { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .main  { padding: 12px; }
  .panel { padding: 14px; }
  .tab-nav .tab-btn { padding: 6px 10px; font-size: 11px; }
  .logo-sub, .header-agency { display: none; }
  .filter-bar { flex-direction: column; align-items: stretch; }
  .filter-input { width: 100%; }
  .source-grid { grid-template-columns: 1fr; }
  .mode-grid   { grid-template-columns: 1fr; }
}

/* ── V3 SEARCH MODE SELECTOR ──────────────────────────────────────────────── */
.mode-selector-panel {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 16px;
  margin-bottom: 14px;
}
.mode-selector-title {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 10px;
}
.mode-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
}
.mode-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 4px;
  padding: 10px 8px;
  border: 1.5px solid var(--border);
  border-radius: 8px;
  background: var(--bg);
  cursor: pointer;
  transition: border-color .15s, background .15s, box-shadow .15s;
  color: var(--ink);
  font-family: inherit;
  line-height: 1.2;
}
.mode-btn:hover {
  border-color: var(--accent);
  background: var(--bg-hover, #f0f4ff);
}
.mode-btn.active {
  border-color: var(--accent);
  background: var(--accent-light, #eef2ff);
  box-shadow: 0 0 0 2px rgba(79,70,229,.15);
}
.mode-icon  { font-size: 20px; line-height: 1; }
.mode-name  { font-size: 11px; font-weight: 600; color: var(--ink); }
.mode-desc  { font-size: 10px; color: var(--muted); }

/* ── V3 SIGNAL DETAILS (collapsible in pipeline rows) ─────────────────────── */
.signal-details {
  margin-top: 6px;
}
.signal-summary {
  font-size: 10px;
  font-weight: 600;
  color: var(--accent);
  cursor: pointer;
  user-select: none;
  display: flex;
  align-items: center;
  gap: 4px;
  list-style: none;
}
.signal-summary::-webkit-details-marker { display: none; }
.signal-summary::before { content: '▶'; font-size: 8px; transition: transform .15s; }
details[open] .signal-summary::before { transform: rotate(90deg); }
.signal-body {
  margin-top: 6px;
  padding: 8px 10px;
  background: var(--bg);
  border: 1px solid var(--border);
  border-radius: 6px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.sig-row   { font-size: 11px; display: flex; gap: 6px; flex-wrap: wrap; }
.sig-label { font-weight: 600; color: var(--muted); white-space: nowrap; }
.sig-val   { color: var(--ink); flex: 1; }
.sig-link  { color: var(--accent); word-break: break-all; }

/* signal badges */
.sig-badge {
  display: inline-flex;
  align-items: center;
  font-size: 9px;
  font-weight: 700;
  padding: 1px 5px;
  border-radius: 4px;
  letter-spacing: .04em;
  white-space: nowrap;
}
.sig-growth { background: #fef9c3; color: #854d0e; border: 1px solid #fde68a; }
.sig-disc   { background: #ede9fe; color: #5b21b6; border: 1px solid #ddd6fe; }
.sig-conf   { background: #f0fdf4; color: #166534; border: 1px solid #bbf7d0; }
.sig-conf--high   { background: #dcfce7; color: #15803d; border-color: #86efac; }
.sig-conf--medium { background: #fef9c3; color: #854d0e; border-color: #fde68a; }
.sig-conf--low    { background: #f1f5f9; color: #64748b; border-color: #cbd5e1; }

/* log indent / phase lines */
.log-phase  { color: #6366f1; font-weight: 700; }
.log-indent { color: var(--muted); padding-left: 12px; }

/* result-mode tag in search summary */
.result-mode { color: var(--muted); font-size: 12px; }

/* ── TIER TABS ─────────────────────────────────────────────────────────────── */
.tier-tab-bar {
  display: flex;
  gap: 4px;
  padding: 10px 20px 0;
  border-bottom: 2px solid var(--border);
  background: #fbfdfc;
}
.tier-tab {
  padding: 8px 16px;
  border: none;
  border-radius: 6px 6px 0 0;
  background: transparent;
  color: var(--muted);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: all var(--tr);
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.tier-tab:hover { color: var(--ink); background: var(--navy-card); }
.tier-tab.active {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
  background: var(--navy-card);
}
.tier-tab--rejected { color: #7b8faa; }
.tier-tab--rejected.active { color: var(--red); border-bottom-color: var(--red); }
.tier-count {
  background: var(--border-mid);
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: 8px;
  min-width: 18px;
  text-align: center;
}
.tier-tab.active .tier-count { background: var(--blue-glow); color: var(--teal-dark); }

/* ── TIER BADGES ────────────────────────────────────────────────────────────── */
.tier-badge {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  white-space: nowrap;
  letter-spacing: .03em;
}
.tier-verified    { background: #dcfce7; color: #15803d; border: 1px solid #86efac; }
.tier-good-target { background: #fef9c3; color: #854d0e; border: 1px solid #fcd34d; }
.tier-potential   { background: #dbeafe; color: #1d4ed8; border: 1px solid #93c5fd; }
.tier-rejected    { background: #fee2e2; color: #b91c1c; border: 1px solid #fca5a5; }

/* ── TIER ACTION BUTTONS ────────────────────────────────────────────────────── */
.tier-actions { display: flex; gap: 4px; margin-top: 5px; flex-wrap: wrap; }
.tier-action-btn {
  font-size: 10px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 4px;
  border: 1px solid transparent;
  cursor: pointer;
  transition: all var(--tr);
  white-space: nowrap;
}
.ta-verify       { background: #dcfce7; color: #15803d; border-color: #86efac; }
.ta-verify:hover { background: #bbf7d0; }
.ta-good-target  { background: #fef9c3; color: #854d0e; border-color: #fcd34d; }
.ta-good-target:hover { background: #fef08a; }
.ta-potential    { background: #e0f2fe; color: #0369a1; border-color: #7dd3fc; }
.ta-potential:hover { background: #bae6fd; }
.ta-reject       { background: #fee2e2; color: #b91c1c; border-color: #fca5a5; }
.ta-reject:hover { background: #fecaca; }
.col-tier { min-width: 100px; vertical-align: top; padding-top: 6px; }

/* ── STAT CARD TIER VARIANTS ────────────────────────────────────────────────── */
.stat-card--verified    { border-top: 3px solid #22c55e; }
.stat-card--good-target { border-top: 3px solid #eab308; }
.stat-card--potential { border-top: 3px solid #3b82f6; }
.stat-card--verified    .stat-num { color: #22c55e; }
.stat-card--good-target .stat-num { color: #eab308; }
.stat-card--potential .stat-num { color: #3b82f6; }

/* ── CONFIDENCE NOTES ───────────────────────────────────────────────────────── */
.confidence-notes {
  font-size: 10px;
  color: var(--amber);
  margin-top: 3px;
  opacity: 0.85;
}

/* ── BUSINESS IDENTITY BADGES ───────────────────────────────────────────────── */
.id-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 600;
  padding: 1px 6px;
  border-radius: 4px;
  margin-top: 3px;
  letter-spacing: 0.02em;
  cursor: default;
  white-space: nowrap;
}
.id-employer   { background: rgba(34,197,94,.15);  color: #4ade80; border: 1px solid rgba(34,197,94,.3); }
.id-competitor { background: rgba(239,68,68,.15);  color: #f87171; border: 1px solid rgba(239,68,68,.3); }
.id-platform   { background: rgba(99,102,241,.15); color: #a5b4fc; border: 1px solid rgba(99,102,241,.3); }
.id-research   { background: rgba(245,158,11,.12); color: #fbbf24; border: 1px solid rgba(245,158,11,.25); }
.id-enterprise { background: rgba(0,200,255,.12);  color: #67e8f9; border: 1px solid rgba(0,200,255,.25); }
.id-other      { background: rgba(123,143,170,.12); color: #94a3b8; border: 1px solid rgba(123,143,170,.25); }

/* ── REJECTED ROW STYLING ───────────────────────────────────────────────────── */
.row-rejected { opacity: 0.6; background: rgba(239,68,68,.04) !important; }
.row-rejected:hover { opacity: 0.85; }

/* ── SEARCH RESULT TIER BREAKDOWN ───────────────────────────────────────────── */
.result-tier-row {
  display: flex;
  gap: 10px;
  margin-top: 8px;
  flex-wrap: wrap;
}
.result-tier {
  font-size: 12px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 6px;
}
.result-tier--verified    { background: #dcfce7; color: #15803d; }
.result-tier--good-target { background: #fef9c3; color: #854d0e; }
.result-tier--potential { background: #dbeafe; color: #1d4ed8; }
.result-tier--rejected  { background: #fee2e2; color: #b91c1c; }

/* ── TARGET MODE TOGGLE ─────────────────────────────────────────────────────── */
.tmt-panel {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 14px 16px;
  margin-bottom: 14px;
}
.tmt-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--muted);
  margin-bottom: 10px;
}
.tmt-toggle-row {
  display: flex;
  gap: 10px;
}
.tmt-btn {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 10px 14px;
  border-radius: 8px;
  border: 2px solid var(--border);
  background: transparent;
  color: var(--ink);
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  transition: all var(--tr);
  text-align: left;
  gap: 3px;
}
.tmt-btn:hover { border-color: var(--accent); background: rgba(99,102,241,.05); }
.tmt-btn.active {
  border-color: var(--accent);
  background: rgba(99,102,241,.10);
  color: var(--accent);
}
.tmt-desc {
  font-size: 11px;
  font-weight: 400;
  color: var(--muted);
  line-height: 1.3;
}
.tmt-btn.active .tmt-desc { color: var(--accent); opacity: 0.8; }

/* ── RECRUITER PIPELINE STYLES ──────────────────────────────────────────────── */
.recruiter-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: 4px;
  background: #f3e8ff;
  color: #7c3aed;
  margin-right: 4px;
  vertical-align: middle;
}
.rec-sector {
  font-size: 11px;
  color: var(--muted);
  margin-top: 2px;
}
.temp-bias-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 4px;
}
.bias-high { background: #dcfce7; color: #15803d; }
.bias-med  { background: #fef9c3; color: #92400e; }
.bias-low  { background: #f1f5f9; color: #64748b; }
.recruiter-row { border-left: 3px solid #a855f7; }

/* ── MULTI-SELECT SECTOR PICKER ─────────────────────────────────────────────── */
.sector-label-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 8px;
}
.sector-label-row .field-label { margin-bottom: 0; }
.sector-clear-btn {
  font-size: 11px;
  font-weight: 600;
  color: var(--muted);
  background: none;
  border: none;
  cursor: pointer;
  padding: 2px 6px;
  border-radius: 4px;
  transition: all var(--tr);
}
.sector-clear-btn:hover { background: #fee2e2; color: #b91c1c; }
.sector-selected-hint {
  margin-top: 6px;
  font-size: 11px;
  color: var(--teal-dark);
  font-weight: 500;
}
.sector-btn.active {
  background: var(--teal);
  border-color: var(--teal);
  color: #fff;
  box-shadow: 0 0 0 2px rgba(59,130,246,.25);
}

/* ── Search Progress Bar ──────────────────────────────────────────────────── */
.log-progress {
  padding: 8px 12px;
  background: rgba(99,102,241,.08);
  border: 1px solid rgba(99,102,241,.2);
  border-radius: 8px;
  margin-bottom: 8px;
}
.log-progress-bar {
  height: 6px;
  background: rgba(99,102,241,.15);
  border-radius: 3px;
  margin-bottom: 6px;
  overflow: hidden;
}
.log-progress-fill {
  height: 100%;
  background: #6366f1;
  border-radius: 3px;
  transition: width 0.6s ease;
}
.log-progress-label {
  font-size: 11px;
  color: #a5b4fc;
  font-weight: 500;
  letter-spacing: .02em;
}

/* ── Conditional Verification Badge ─────────────────────────────────────────── */
.conditional-badge {
  display: inline-block;
  margin-left: 5px;
  padding: 1px 5px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .04em;
  color: #92400e;
  background: #fef3c7;
  border: 1px solid #f59e0b;
  border-radius: 4px;
  vertical-align: middle;
  text-transform: uppercase;
}
.tier-badge.tier-verified.tier-conditional {
  background: rgba(34,197,94,.12);
  border-color: rgba(245,158,11,.5);
}

/* ── Operational Temp Buyer Scoring ─────────────────────────────────────────── */
.tb-badge {
  display: inline-block;
  padding: 2px 7px;
  font-size: 10px;
  font-weight: 700;
  border-radius: 4px;
  vertical-align: middle;
  letter-spacing: .03em;
}
.tb-high    { background: #d1fae5; color: #065f46; border: 1px solid #6ee7b7; }
.tb-possible{ background: #dbeafe; color: #1e40af; border: 1px solid #93c5fd; }
.tb-weak    { background: #fef9c3; color: #78350f; border: 1px solid #fde68a; }
.tb-storage { background: #fee2e2; color: #991b1b; border: 1px solid #fca5a5; }
.tb-none    { background: #f3f4f6; color: #6b7280; border: 1px solid #d1d5db; }
.tb-score   { margin-left: 5px; font-size: 10px; color: #6b7280; }
.tb-pos     { color: #059669; font-size: 11px; }
.tb-neg     { color: #dc2626; font-size: 11px; }
.sig-row--tb { border-top: 1px solid rgba(0,0,0,.06); padding-top: 4px; margin-top: 4px; }
.sig-row--sf { border-top: 1px solid rgba(0,0,0,.06); padding-top: 4px; margin-top: 4px; }
.sector-fit-score { font-weight: 600; font-size: 11px; padding: 2px 7px; border-radius: 10px; }
.sector-fit--strong   { background: #d1fae5; color: #065f46; }
.sector-fit--good     { background: #dbeafe; color: #1e40af; }
.sector-fit--moderate { background: #fef9c3; color: #854d0e; }
.sector-fit--weak     { background: #fee2e2; color: #991b1b; }

/* ── Apollo Export Readiness buttons ────────────────────────────────────────── */
.btn--apollo {
  background: #0ea5e9;
  color: #fff;
  border: 1px solid #0284c7;
}
.btn--apollo:hover { background: #0284c7; }
.btn--review {
  background: #f59e0b;
  color: #fff;
  border: 1px solid #d97706;
}
.btn--review:hover { background: #d97706; }
.btn--danger-outline {
  background: transparent;
  color: var(--red);
  border: 1px solid var(--red);
}
.btn--danger-outline:hover { background: rgba(239,68,68,.12); }

/* ── CUSTOMER BAR ── */
.customer-bar {
  background: #fbfdfc;
  border-bottom: 1px solid var(--border);
  position: sticky; top: 57px; z-index: 90;
}
.customer-bar-inner {
  max-width: 1500px; margin: 0 auto;
  display: flex; align-items: center; gap: 10px;
  padding: 8px 20px;
}
.customer-bar-label {
  font-size: 12px; font-weight: 600;
  color: var(--muted); white-space: nowrap; flex-shrink: 0;
}
.customer-select {
  background: #fbfdfc;
  color: var(--ink);
  border: 1px solid var(--border-mid);
  border-radius: var(--r);
  padding: 5px 10px;
  font-size: 13px;
  min-width: 200px; max-width: 320px;
  cursor: pointer;
}
.customer-select:focus { outline: none; border-color: var(--teal); }
.customer-bar-hint {
  font-size: 12px;
  color: var(--muted);
  margin-left: 4px;
  transition: color var(--tr);
}

/* ── WORKFLOW / 3-AGENT SYSTEM ── */
.wf-header { padding: 20px 24px 8px; }
.wf-title  { font-size: 20px; font-weight: 700; color: var(--ink); margin-bottom: 4px; }
.wf-subtitle { color: var(--muted); font-size: 13px; }

.wf-pipeline {
  display: grid;
  grid-template-columns: 1fr 28px 1fr 28px 1fr 28px 1fr;
  gap: 0;
  padding: 16px 20px;
  align-items: start;
}
.wf-arrow {
  display: flex; align-items: flex-start; justify-content: center;
  padding-top: 32px; font-size: 20px; color: var(--muted);
}

.wf-stage {
  background: var(--navy-card);
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  padding: 16px;
  min-height: 200px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.wf-stage--green { border-color: rgba(34,197,94,.3); }
.wf-stage--crm   { border-color: rgba(0,200,255,.3); }

.wf-stage-head {
  display: flex; align-items: center; gap: 10px; margin-bottom: 4px;
}
.wf-stage-num {
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--teal); color: #fff;
  font-weight: 700; font-size: 13px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.wf-stage-num--verify   { background: #8b5cf6; }
.wf-stage-num--verified { background: var(--green); }
.wf-stage-num--crm      { background: var(--cyan); color: var(--paper); }

.wf-stage-info { flex: 1; min-width: 0; }
.wf-stage-title { font-weight: 700; font-size: 14px; color: var(--ink); }
.wf-stage-sub   { font-size: 11px; color: var(--muted); }
.wf-stage-desc  { font-size: 12px; color: var(--muted); line-height: 1.5; }

.wf-badge {
  background: #fbfdfc; border: 1px solid var(--border-mid);
  color: var(--ink); font-size: 13px; font-weight: 700;
  min-width: 28px; height: 24px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  padding: 0 8px; flex-shrink: 0;
}
.wf-badge--review   { background: rgba(139,92,246,.15); border-color: #8b5cf6; color: #c4b5fd; }
.wf-badge--verified { background: rgba(34,197,94,.15);  border-color: var(--green); color: var(--green); }
.wf-badge--crm      { background: rgba(0,200,255,.15);  border-color: var(--cyan); color: var(--cyan); }

.wf-inputs { display: flex; flex-direction: column; gap: 6px; }
.wf-input {
  background: #fbfdfc; border: 1px solid var(--border);
  border-radius: var(--r); color: var(--ink); padding: 6px 10px;
  font-size: 12px; width: 100%;
}
.wf-input:focus { outline: none; border-color: var(--teal); }
.wf-input::placeholder { color: var(--text-dim); }

.wf-sources-row {
  display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px;
  margin: 6px 0 2px; padding: 7px 8px;
  background: #fbfdfc; border-radius: var(--r);
  border: 1px solid var(--border);
}
.wf-sources-label {
  font-size: 11px; color: var(--text-dim); font-weight: 600;
  text-transform: uppercase; letter-spacing: .04em; margin-right: 2px; flex-shrink: 0;
}
.wf-src-cb {
  display: flex; align-items: center; gap: 4px;
  font-size: 12px; color: var(--ink); cursor: pointer; white-space: nowrap;
}
.wf-src-cb input[type="checkbox"] { accent-color: var(--teal); cursor: pointer; }
.wf-run-row {
  display: flex; align-items: center; gap: 8px; margin-top: 6px;
}
.wf-run-row .wf-run-btn { flex: 1; }
.wf-run-btn { width: 100%; font-size: 13px; }
.btn--success {
  background: var(--green); color: var(--paper);
  border: none; border-radius: var(--r);
  padding: 7px 14px; font-weight: 600; cursor: pointer;
}
.btn--success:hover:not(:disabled) { opacity: .88; }
.btn--success:disabled { opacity: .45; cursor: default; }

.wf-leads { display: flex; flex-direction: column; gap: 5px; flex: 1; }
.wf-empty { font-size: 12px; color: var(--text-dim); font-style: italic; padding: 4px 0; }

.wf-lead-row {
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
  background: #fbfdfc; border-radius: var(--r);
  padding: 5px 8px; font-size: 12px;
}
.wf-lead-name { font-weight: 600; color: var(--ink); flex: 1 1 auto;
  min-width: 130px; overflow-wrap: break-word; }
.wf-lead-main { flex-wrap: wrap; }
.wf-lead-link { color: var(--teal-dark); font-size: 11px; flex-shrink: 0; }
.wf-score { background: var(--navy-card); color: var(--cyan); border-radius: 4px;
  padding: 1px 5px; font-size: 11px; font-weight: 700; }

.wf-sig-high   { background: rgba(34,197,94,.18);  color: var(--green); border-radius: 4px; padding: 1px 5px; font-size: 10px; font-weight: 600; text-transform: uppercase; }
.wf-sig-medium { background: rgba(245,158,11,.18); color: var(--amber); border-radius: 4px; padding: 1px 5px; font-size: 10px; font-weight: 600; text-transform: uppercase; }
.wf-sig-low    { background: rgba(123,143,170,.15); color: var(--muted); border-radius: 4px; padding: 1px 5px; font-size: 10px; font-weight: 600; text-transform: uppercase; }

.wf-tier-badge { border-radius: 4px; padding: 1px 5px; font-size: 10px; font-weight: 600; flex-shrink: 0; }
.wf-tier-call-ready  { background: rgba(34,197,94,.18);  color: var(--green); }
.wf-tier-good-target { background: rgba(245,158,11,.18); color: var(--amber); }
.wf-tier-research    { background: rgba(59,130,246,.18); color: #93c5fd; }
.wf-tier-not-a-lead  { background: rgba(123,143,170,.15); color: var(--muted); }

.wf-summary-row {
  display: flex; gap: 20px; padding: 8px 24px 4px;
  font-size: 12px; color: var(--muted);
}
.wf-summary-item { display: flex; align-items: center; gap: 6px; }
.wf-dot {
  width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0;
}
.wf-dot--rejected { background: var(--red); }
.wf-dot--verifying { background: var(--amber); }

.wf-progress-area {
  margin: 12px 20px;
  background: var(--navy-card); border: 1px solid var(--border);
  border-radius: var(--r-lg); padding: 14px 16px;
}
.wf-progress-label { font-size: 13px; font-weight: 600; color: var(--ink); margin-bottom: 8px; }
.wf-progress-bar-wrap {
  background: #fbfdfc; border-radius: 4px;
  height: 6px; margin-bottom: 10px; overflow: hidden;
}
.wf-progress-bar-fill {
  height: 100%; background: var(--teal);
  border-radius: 4px; transition: width .4s ease;
}
.wf-log {
  font-family: 'Consolas', 'Menlo', monospace;
  font-size: 11px; color: var(--muted);
  white-space: pre-wrap; max-height: 140px; overflow-y: auto;
  margin: 0;
}

.wf-diag-panel {
  margin: 12px 20px; padding: 14px 16px;
  background: var(--navy-card); border: 1px solid var(--border);
  border-radius: var(--r-lg);
}
.diag-card {
  background: #fbfdfc; border: 1px solid var(--border);
  border-radius: var(--r-md); padding: 10px 12px;
  min-width: 180px; max-width: 240px; flex: 1 1 180px;
}
.diag-card__title {
  font-size: 12px; font-weight: 700; color: var(--ink);
  margin-bottom: 5px; white-space: nowrap; overflow: hidden;
  text-overflow: ellipsis;
}
.diag-card__row  { display: flex; align-items: center; gap: 6px; margin-bottom: 4px; font-size: 12px; }
.diag-card__stat { font-size: 12px; color: var(--muted); margin-bottom: 2px; }

.wf-apollo-section {
  margin: 16px 20px; padding: 16px;
  background: var(--navy-card); border: 1px solid var(--border);
  border-radius: var(--r-lg);
}
.wf-section-title { font-size: 14px; font-weight: 700; color: var(--ink); margin-bottom: 6px; }
.wf-section-desc  { font-size: 12px; color: var(--muted); margin-bottom: 10px; }
.wf-apollo-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

/* ── WORKFLOW STABILISATION ADDITIONS ── */

/* Batch size row (Stages 2 & 3) */
.wf-batch-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.wf-batch-label {
  font-size: .75rem;
  color: var(--muted);
  white-space: nowrap;
}
.wf-batch-select {
  background: #fbfdfc;
  color: var(--ink);
  border: 1px solid var(--border-mid);
  border-radius: var(--r);
  padding: 4px 8px;
  font-size: .8rem;
  cursor: pointer;
}

/* Stage 4 sub-labels (CRM Ready / Enriched) */
.wf-leads-section-label {
  font-size: .7rem;
  font-weight: 600;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .06em;
  padding: 6px 0 3px;
  border-top: 1px solid var(--border);
  margin-top: 6px;
}
.wf-leads-section-label:first-of-type { margin-top: 2px; border-top: none; }

/* Lead row restructure */
.wf-lead-main {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}

/* Per-lead action buttons */
.wf-lead-actions {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin-top: 5px;
}
.wf-act {
  font-size: .68rem;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 4px;
  border: 1px solid transparent;
  cursor: pointer;
  transition: opacity var(--tr);
  white-space: nowrap;
}
.wf-act:disabled { opacity: .5; cursor: default; }
.wf-act--verify  { background: rgba(28,106,244,.18); color: var(--teal-dark); border-color: rgba(28,106,244,.35); }
.wf-act--verify:hover  { background: rgba(28,106,244,.32); }
.wf-act--enrich  { background: rgba(0,200,255,.12); color: var(--cyan); border-color: rgba(0,200,255,.3); }
.wf-act--enrich:hover  { background: rgba(0,200,255,.22); }
.wf-act--promote { background: rgba(34,197,94,.14); color: var(--green); border-color: rgba(34,197,94,.3); }
.wf-act--promote:hover { background: rgba(34,197,94,.26); }
.wf-act--reject  { background: rgba(239,68,68,.12); color: var(--red); border-color: rgba(239,68,68,.3); }
.wf-act--reject:hover  { background: rgba(239,68,68,.22); }
.wf-act--restore { background: rgba(245,158,11,.12); color: var(--amber); border-color: rgba(245,158,11,.3); }
.wf-act--restore:hover { background: rgba(245,158,11,.22); }
.wf-act--sm { font-size: .62rem; padding: 1px 6px; }

/* Auto-status badges (replace manual action buttons) */
.wf-auto-badge {
  display: inline-block;
  font-size: .67rem;
  color: var(--text-dim);
  font-style: italic;
  padding: 2px 0;
}
.wf-auto-badge--done { color: var(--green); font-style: normal; font-weight: 600; }
.wf-lead-actions--overrides { align-items: center; opacity: .7; }
.wf-override-label {
  font-size: .62rem;
  color: var(--text-dim);
  font-style: italic;
  margin-right: 2px;
}

/* ── TARGET TYPE TOGGLE (Agent 1) ── */
.wf-target-toggle {
  display: flex;
  gap: 6px;
  margin-bottom: 8px;
}
.wf-tt-btn {
  flex: 1;
  padding: 6px 10px;
  border-radius: 6px;
  font-size: .8rem;
  font-weight: 600;
  cursor: pointer;
  border: 1.5px solid var(--border-mid);
  background: #fbfdfc;
  color: var(--muted);
  transition: background .15s, color .15s, border-color .15s;
}
.wf-tt-btn--employer.wf-tt-btn--active {
  background: rgba(28,106,244,.2);
  color: var(--teal-dark);
  border-color: rgba(28,106,244,.5);
}
.wf-tt-btn--employer:hover:not(.wf-tt-btn--active) {
  background: rgba(28,106,244,.08);
  color: var(--teal-dark);
  border-color: rgba(28,106,244,.3);
}
.wf-tt-btn--recruiter.wf-tt-btn--active {
  background: rgba(139,92,246,.22);
  color: #c084fc;
  border-color: rgba(139,92,246,.5);
}
.wf-tt-btn--recruiter:hover:not(.wf-tt-btn--active) {
  background: rgba(139,92,246,.08);
  color: #c084fc;
  border-color: rgba(139,92,246,.3);
}

/* Stage 1 accent — recruiter mode */
#wf-stage-1.wf-stage--recruiter-mode .wf-stage-num {
  background: rgba(139,92,246,.25);
  color: #c084fc;
  border-color: rgba(139,92,246,.4);
}
#wf-stage-1.wf-stage--recruiter-mode {
  border-color: rgba(139,92,246,.25);
}

/* Helper hint strip */
.wf-target-hint {
  font-size: .73rem;
  color: var(--muted);
  margin-bottom: 10px;
  padding: 4px 9px;
  background: rgba(255,255,255,.03);
  border-radius: 5px;
  border-left: 2px solid var(--teal);
  line-height: 1.45;
  transition: border-color .15s;
}
#wf-stage-1.wf-stage--recruiter-mode .wf-target-hint {
  border-left-color: #8b5cf6;
}

/* Mode indicator pill (Stages 2 & 4) */
.wf-mode-indicator {
  display: inline-block;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .03em;
  padding: 2px 9px;
  border-radius: 20px;
  margin-bottom: 8px;
}
.wf-mode-indicator:empty { display: none; }
.wf-mode-ind--employer {
  background: rgba(28,106,244,.15);
  color: var(--teal-dark);
}
.wf-mode-ind--recruiter {
  background: rgba(139,92,246,.18);
  color: #c084fc;
}

/* ── PIPELINE FLOW BAR (replaces stats-row) ── */
.pipeline-flow-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--navy-card);
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  padding: 14px 20px;
  margin-bottom: 14px;
  flex-wrap: wrap;
  box-shadow: var(--shadow);
}
.pf-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  min-width: 64px;
}
.pf-num {
  font-size: 22px;
  font-weight: 800;
  color: var(--ink);
  line-height: 1;
}
.pf-num--cr  { color: var(--green); }
.pf-num--gt  { color: var(--amber); }
.pf-num--rs  { color: #3b82f6; }
.pf-num--hot { color: var(--red); }
.pf-lbl {
  font-size: 10px;
  font-weight: 600;
  color: var(--muted);
  text-align: center;
  white-space: nowrap;
}
.pf-arrow {
  font-size: 18px;
  color: var(--text-dim);
  margin: 0 2px;
}
.pf-auto-note {
  margin-left: auto;
  font-size: 11px;
  color: var(--muted);
  background: rgba(34,197,94,.07);
  border: 1px solid rgba(34,197,94,.18);
  border-radius: 20px;
  padding: 4px 12px;
  white-space: nowrap;
}

/* ── LEADS CARD LIST ── */
.leads-list-wrap { }
.leads-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* ── LEAD CARD ── */
.lead-card {
  background: var(--navy-card);
  border: 1px solid var(--border);
  border-left: 4px solid var(--border-mid);
  border-radius: var(--r-lg);
  padding: 14px 18px;
  transition: border-color var(--tr), box-shadow var(--tr);
}
.lead-card:hover {
  box-shadow: 0 2px 20px rgba(0,0,0,.35);
  border-color: var(--border-mid);
}
.lead-card.lc--cr  { border-left-color: var(--green); }
.lead-card.lc--gt  { border-left-color: var(--amber); }
.lead-card.lc--rs  { border-left-color: #3b82f6; }
.lead-card.lc--nal { border-left-color: #374151; opacity: .75; }
.lead-card.lc-hot  { background: rgba(239,68,68,.04); }
.lead-card.lc-strong { background: rgba(245,158,11,.03); }

/* Card header */
.lc-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.lc-header-left  { display: flex; align-items: center; gap: 8px; flex: 1; flex-wrap: wrap; min-width: 0; }
.lc-header-right { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.lc-name {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Intelligence row (identity + pills) */
.lc-intel-row {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.lc-caution {
  font-size: 10px;
  color: var(--amber);
  background: rgba(245,158,11,.08);
  border: 1px solid rgba(245,158,11,.22);
  border-radius: 4px;
  padding: 1px 6px;
}

/* Sector fit pills */
.sf-pill {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 4px;
  white-space: nowrap;
}
.sf-pill--strong   { background: rgba(34,197,94,.14);  color: var(--green); border: 1px solid rgba(34,197,94,.3); }
.sf-pill--good     { background: rgba(34,197,94,.08);  color: #86efac;      border: 1px solid rgba(34,197,94,.2); }
.sf-pill--moderate { background: rgba(245,158,11,.12); color: var(--amber); border: 1px solid rgba(245,158,11,.25); }
.sf-pill--weak     { background: rgba(100,116,139,.08); color: #64748b;     border: 1px solid rgba(100,116,139,.2); }

/* Temp buyer pills */
.tb-pill {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 4px;
  white-space: nowrap;
}
.tb-high     { background: rgba(34,197,94,.14);  color: var(--green); border: 1px solid rgba(34,197,94,.3); }
.tb-possible { background: rgba(28,106,244,.12); color: var(--teal-dark); border: 1px solid rgba(28,106,244,.25); }
.tb-weak     { background: rgba(100,116,139,.08); color: #64748b;     border: 1px solid rgba(100,116,139,.2); }

/* Hiring type pills */
.ht-pill {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 4px;
  white-space: nowrap;
}
.ht-temp { background: rgba(34,197,94,.12); color: #22c55e; border: 1px solid rgba(34,197,94,.25); }
.ht-perm { background: rgba(245,158,11,.1); color: var(--amber); border: 1px solid rgba(245,158,11,.22); }

/* Recruiter extra row */
.lc-rec-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}

/* Evidence section — always visible */
.lc-evidence {
  background: rgba(0,0,0,.18);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 8px 12px;
  margin-bottom: 8px;
}
.lc-ev-line {
  font-size: 12px;
  color: var(--ink);
  line-height: 1.5;
}
.lc-ev-line + .lc-ev-line {
  margin-top: 3px;
  color: var(--muted);
}

/* Expandable extras */
.lc-extras {
  margin-bottom: 8px;
}
.lc-extras-toggle {
  font-size: 11px;
  color: var(--text-dim);
  cursor: pointer;
  list-style: none;
  display: inline-block;
  padding: 2px 0;
  user-select: none;
}
.lc-extras-toggle:hover { color: var(--teal-dark); }
.lc-extras-body {
  margin-top: 6px;
  padding: 8px 12px;
  background: rgba(0,0,0,.15);
  border-radius: var(--r);
  border: 1px solid var(--border);
}

/* Contacts */
.lc-contacts {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 8px;
  padding: 6px 10px;
  background: rgba(28,106,244,.05);
  border: 1px solid rgba(28,106,244,.15);
  border-radius: var(--r);
}
.lc-contacts .contact-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: auto;
  height: auto;
  font-size: 12px;
  padding: 2px 8px;
  border-radius: 4px;
  background: #fbfdfc;
  border: 1px solid var(--border-mid);
  color: var(--teal-dark);
}

/* Enriched contacts panel */
.lc-contacts-panel {
  margin-bottom: 8px;
}
.lc-contacts-summary {
  font-size: 12px;
  color: var(--teal-dark);
  cursor: pointer;
  padding: 5px 10px;
  background: rgba(28,106,244,.05);
  border: 1px solid rgba(28,106,244,.15);
  border-radius: var(--r);
  list-style: none;
  user-select: none;
}
.lc-contacts-summary::-webkit-details-marker { display: none; }
.lc-contacts-summary:hover { background: rgba(28,106,244,.1); }
.contacts-loading {
  font-size: 11px;
  color: var(--text-dim);
  margin-left: 4px;
}
.lc-contacts-body {
  padding: 6px 10px;
  background: rgba(28,106,244,.03);
  border: 1px solid rgba(28,106,244,.1);
  border-top: none;
  border-radius: 0 0 var(--r) var(--r);
}
.lc-contact-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 4px 0;
  border-bottom: 1px solid rgba(255,255,255,.04);
  flex-wrap: wrap;
}
.lc-contact-row:last-child { border-bottom: none; }
.lc-contact-row--held { opacity: .72; }
.lc-contact-person {
  font-size: 12px;
  font-weight: 600;
  color: var(--text-bright);
  min-width: 90px;
}
.lc-contact-title {
  font-size: 11px;
  color: var(--text-dim);
  flex: 1;
}
.lc-contact-email {
  font-size: 11px;
  color: var(--teal-dark);
  text-decoration: none;
}
.lc-contact-email:hover { text-decoration: underline; }
.contact-quality {
  display: inline-flex;
  width: fit-content;
  padding: 2px 6px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.3;
}
.contact-quality--ok { color: #86efac; background: rgba(34,197,94,.12); }
.contact-quality--held { color: #fecaca; background: rgba(239,68,68,.12); }
.lc-no-contacts {
  font-size: 11px;
  color: var(--text-dim);
  padding: 4px 0;
}

/* Card footer */
.lc-footer {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding-top: 8px;
  border-top: 1px solid var(--border);
  margin-top: 4px;
}
.lc-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  flex: 1;
  min-width: 0;
}
.lc-website { font-size: 12px; }
.lc-meta-item { font-size: 11px; color: var(--muted); }
.lc-date { color: var(--text-dim) !important; }
.lc-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  flex-shrink: 0;
}

/* Notes preview below card footer */
.lc-notes-preview {
  margin-top: 6px;
  font-size: 11px;
  color: var(--muted);
  padding: 4px 10px;
  background: rgba(245,158,11,.05);
  border-left: 2px solid rgba(245,158,11,.3);
  border-radius: 0 var(--r) var(--r) 0;
}

/* ── WORKFLOW AUTOMATION BANNER ── */
.wf-auto-banner {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: rgba(34,197,94,.06);
  border: 1px solid rgba(34,197,94,.2);
  border-radius: var(--r-lg);
  padding: 14px 18px;
  margin-bottom: 18px;
}
.wf-auto-icon { font-size: 22px; flex-shrink: 0; line-height: 1; margin-top: 1px; }
.wf-auto-text {
  font-size: 13px;
  color: var(--ink);
  line-height: 1.6;
}
.wf-auto-text strong { color: var(--green); }

/* ── Identity verdict / rejection reason badges ── */
.verdict-badge {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 11px; font-weight: 600; padding: 2px 8px;
  border-radius: 10px; margin-left: 6px; white-space: nowrap;
}
.verdict-rejected { background: rgba(239, 68, 68, .12); color: #f87171; border: 1px solid rgba(239, 68, 68, .3); }
.verdict-likely   { background: rgba(245, 158, 11, .12); color: #fbbf24; border: 1px solid rgba(245, 158, 11, .3); }

/* ── Workflow rejection explanations ─────────────────────────────────────── */
.wf2-rejection-reason {
  margin-top: 3px;
  color: #fca5a5;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.25;
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wf2-rejection-detail {
  margin: 14px 0 6px;
  padding: 13px 14px;
  border: 1px solid #f3b7bb;
  border-left: 4px solid #c2414d;
  border-radius: 9px;
  background: #fff3f4;
  box-shadow: 0 2px 6px rgba(127, 29, 29, .07);
}
.wf2-rejection-detail .wf2-detail-section-label {
  margin-bottom: 6px;
  color: #9f1239;
  font-weight: 800;
  letter-spacing: .085em;
}
.wf2-rejection-detail-reason {
  color: #4c0519;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.45;
}
.wf2-rejection-detail-note {
  margin-top: 9px;
  padding-top: 8px;
  border-top: 1px solid #f6c8cc;
  color: #881337;
  font-size: 12px;
  font-weight: 550;
  line-height: 1.5;
}
.wf2-restore-panel {
  margin: 10px 0 18px;
}
.wf2-risk-confirmation {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 10px;
  padding: 10px 11px;
  border: 1px solid #e0c6a2;
  border-radius: 9px;
  color: #76552b;
  background: #fff8eb;
  font-size: 10px;
  line-height: 1.45;
  cursor: pointer;
}
.wf2-risk-confirmation input[type="checkbox"] {
  appearance: auto;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin: 1px 0 0;
  accent-color: var(--teal);
}
.wf2-risk-confirmation span {
  display: grid;
  gap: 2px;
}
.wf2-risk-confirmation strong {
  color: #68461e;
  font-size: 11px;
}
.wf2-restore-protected {
  display: grid;
  gap: 4px;
  padding: 11px 12px;
  border: 1px solid #e0c6a2;
  border-radius: 9px;
  color: #76552b;
  background: #fff8eb;
  font-size: 10px;
  line-height: 1.45;
}
.wf2-restore-protected strong {
  color: #68461e;
  font-size: 11px;
}
.wf2-override-active {
  display: grid;
  gap: 4px;
  margin: 12px 0;
  padding: 11px 12px;
  border: 1px solid #a9dec3;
  border-radius: 9px;
  color: #315f50;
  background: #edf8f2;
  font-size: 10px;
  line-height: 1.45;
}
.wf2-override-active strong {
  color: #176b4f;
  font-size: 11px;
}
.wf2-review-decision {
  display: grid;
  gap: 10px;
  margin: 12px 0 18px;
  padding: 12px;
  border: 1px solid #cbd8e4;
  border-radius: 10px;
  background: #f5f9fc;
}
.wf2-review-decision-copy {
  display: grid;
  gap: 4px;
  color: #4a6275;
  font-size: 10px;
  line-height: 1.45;
}
.wf2-review-decision-copy strong {
  color: #294b66;
  font-size: 11px;
}
.wf2-contact-retry {
  display: grid;
  gap: 9px;
  margin: 12px 0 18px;
  padding: 12px;
  border: 1px solid #bae6fd;
  border-radius: 10px;
  background: #f0f9ff;
}
.wf2-contact-retry > div {
  display: grid;
  gap: 4px;
}
.wf2-contact-retry strong {
  color: #0e6075;
  font-size: 11px;
}
.wf2-contact-retry span,
.wf2-contact-retry small {
  color: #527681;
  font-size: 10px;
  line-height: 1.45;
}
.wf2-review-website {
  display: grid;
  gap: 6px;
  padding: 9px;
  border: 1px solid #d7e2eb;
  border-radius: 8px;
  background: #fff;
}
.wf2-review-website label {
  color: #526a7c;
  font-size: 9px;
  font-weight: 750;
}
.wf2-review-website > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
}
.wf2-detail-btn--reject {
  color: #a11d31;
  border-color: #e8b8c0;
  background: #fff7f8;
}
.wf2-detail-btn--reject:hover {
  color: #fff;
  border-color: #bd3144;
  background: #bd3144;
}

/* ── ICP fit badges ── */
.icp-high { background: rgba(34, 197, 94, .12);  color: #4ade80; border: 1px solid rgba(34, 197, 94, .3); }
.icp-med  { background: rgba(59, 130, 246, .12); color: #60a5fa; border: 1px solid rgba(59, 130, 246, .3); }
.icp-low  { background: rgba(148, 163, 184, .12); color: #94a3b8; border: 1px solid rgba(148, 163, 184, .3); }

/* ── Suppression list ── */
.suppression-form { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; }
.suppression-form .form-input { flex: 1 1 180px; }
.supp-list { margin-top: 8px; display: flex; flex-direction: column; gap: 6px; }
.supp-row { display: flex; align-items: center; gap: 10px; padding: 8px 10px;
  background: rgba(148,163,184,.06); border: 1px solid rgba(148,163,184,.15); border-radius: 8px; }
.supp-name { font-weight: 600; }
.supp-domain, .supp-reason { color: var(--text-dim); font-size: 12px; }
.supp-remove { margin-left: auto; padding: 2px 10px; font-size: 12px; }
.supp-empty { color: var(--text-dim); font-size: 13px; padding: 6px 2px; }

/* ══════════════════════════════════════════════════════════════════════════
   WF2 — Funnel + Table Workflow design
   ══════════════════════════════════════════════════════════════════════════ */

/* Top bar */
.wf2-header       { padding: 16px 20px 0; border-bottom: 1px solid var(--border); }
.wf2-title-row    { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.wf2-title        { font-size: 18px; font-weight: 700; color: var(--ink); margin-bottom: 2px; }
.wf2-chain-label  { font-size: 12px; color: var(--muted); }
.wf2-header-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.btn--ghost       { background: transparent; border: 1px solid var(--border-mid); color: var(--muted); font-size: 12px; padding: 6px 12px; cursor: pointer; border-radius: var(--r); }
.btn--ghost:hover { border-color: var(--muted); color: var(--ink); }

/* Imported CSV cleansing remains a small review surface, not a second CRM. */
.cleanse-card { margin-top: 14px; padding: 16px 18px; border: 1px solid rgba(59,130,246,.28); border-radius: var(--r-lg); background: linear-gradient(145deg, rgba(16,42,79,.68), rgba(7,20,38,.76)); }
.cleanse-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; flex-wrap:wrap; }
.cleanse-head h3 { font-size:16px; color:var(--ink); }
.cleanse-head p { max-width:700px; margin-top:4px; color:var(--muted); font-size:12px; }
.cleanse-actions, .cleanse-toolbar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.cleanse-file-label { cursor:pointer; }
.cleanse-file-status { max-width:220px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--text-dim); font-size:11px; }
.cleanse-actions .btn:disabled { cursor:not-allowed; opacity:.55; }
.cleanse-fields { display:flex; align-items:center; gap:10px; margin-top:12px; flex-wrap:wrap; }
.cleanse-fields .form-input { width:min(320px,100%); }
.cleanse-fields #cleanseResearchSector { width:min(360px,100%); }
.cleanse-fields small { color:var(--text-dim); font-size:11px; }
.cleanse-toolbar { margin-top:13px; padding-top:12px; border-top:1px solid rgba(148,163,184,.14); }
.cleanse-toolbar .form-input { width:230px; min-height:32px; }
.cleanse-toolbar .cleanse-filter { width:155px; }
.cleanse-note { min-height:20px; margin:10px 0 6px; color:var(--muted); font-size:12px; }
.cleanse-note--success { color:#86efac; } .cleanse-note--error { color:#fecaca; }
.cleanse-table-wrap { overflow:auto; max-height:360px; border:1px solid rgba(148,163,184,.15); border-radius:8px; }
.cleanse-table { width:100%; border-collapse:collapse; font-size:12px; min-width:740px; }
.cleanse-table th { padding:8px 10px; text-align:left; background:rgba(3,12,27,.52); color:var(--text-dim); font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
.cleanse-table td { padding:9px 10px; border-top:1px solid rgba(148,163,184,.1); vertical-align:top; color:var(--muted); }
.cleanse-table td:first-child { width:34px; text-align:center; }
.cleanse-table td strong, .cleanse-table td span { display:block; color:var(--ink); }
.cleanse-table td small { display:block; max-width:390px; margin-top:3px; color:var(--text-dim); line-height:1.35; }
.cleanse-check { width:15px; height:15px; accent-color:var(--teal); cursor:pointer; }
.cleanse-chip { display:inline-block !important; width:max-content; padding:2px 7px; border-radius:999px; font-size:10px; font-weight:700; }
.cleanse-chip--approved, .cleanse-chip--delivered, .cleanse-chip--temp_agency { color:#86efac !important; background:rgba(34,197,94,.12); }
.cleanse-chip--right_icp_contact_current { color:#86efac !important; background:rgba(34,197,94,.12); }
.cleanse-chip--right_icp_contact_refresh { color:#a7f3d0 !important; background:rgba(16,185,129,.12); }
.cleanse-chip--recently_contacted, .cleanse-chip--existing_account { color:#bfdbfe !important; background:rgba(59,130,246,.12); }
.cleanse-chip--open_opportunity, .cleanse-chip--qualification_held, .cleanse-chip--held, .cleanse-chip--needs_review { color:#fcd34d !important; background:rgba(245,158,11,.12); }
.cleanse-chip--rejected, .cleanse-chip--delivery_failed, .cleanse-chip--not_icp, .cleanse-chip--not_temp_agency, .cleanse-chip--failed { color:#fecaca !important; background:rgba(239,68,68,.12); }
.cleanse-chip--duplicate { color:#cbd5e1 !important; background:rgba(148,163,184,.13); }
.cleanse-chip--queued, .cleanse-chip--processing { color:#ddd6fe !important; background:rgba(139,92,246,.12); }
.cleanse-approved { color:#86efac !important; font-weight:700; }
.cleanse-research-btn { display:block; margin-top:7px; }

/* Scout config panel */
.wf2-search-panel { padding: 12px 0 14px; }
.wf2-search-inner { background: var(--navy-card); border: 1px solid var(--border); border-radius: var(--r-lg); padding: 14px; }
.wf2-search-grid  { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 10px; }
.wf2-max-label    { font-size: 12px; color: var(--muted); margin-left: 10px; }

/* AI research team */
.wf2-team {
  margin-top: 14px;
  padding: 13px 15px 14px;
  border: 1px solid rgba(116,145,187,.22);
  border-radius: var(--r-lg);
  background:
    radial-gradient(circle at 5% 0%, rgba(0,200,255,.1), transparent 31%),
    linear-gradient(135deg, rgba(15,38,70,.92), rgba(10,24,45,.95));
}
.wf2-team-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-end; margin-bottom:12px; }
.wf2-team-kicker { display:block; color:#9fdef2; font-size:10px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.wf2-team h3 { margin-top:2px; font-size:15px; color:#f4f8ff; }
.wf2-team-head p { max-width:440px; color:var(--muted); font-size:11px; line-height:1.45; text-align:right; }
.wf2-team-roster { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:8px; }
.wf2-team-member {
  display:flex; align-items:center; gap:8px; min-width:0; padding:8px;
  border:1px solid rgba(148,163,184,.15); border-radius:9px; background:rgba(4,13,27,.3);
}
.wf2-team-member img { width:38px; height:38px; border-radius:12px; flex:0 0 auto; }
.wf2-team-member > div { min-width:0; }
.wf2-team-member strong { display:block; overflow:hidden; color:var(--ink); font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.wf2-team-member strong span { color:var(--muted); font-size:10px; font-weight:600; }
.wf2-team-member small { display:block; overflow:hidden; margin-top:1px; color:var(--text-dim); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.wf2-team-member--scout { border-color:rgba(147,197,253,.24); }
.wf2-team-member--analyst { border-color:rgba(196,181,253,.24); }
.wf2-team-member--hunter { border-color:rgba(110,231,183,.24); }
.wf2-team-member--night { border-color:rgba(196,181,253,.2); }

/* Agent activity strip */
.wf2-agent-strip  { display: flex; align-items: center; gap: 10px; padding: 8px 0 10px; flex-wrap: wrap; }
.wf2-agent-badge  { display: flex; align-items: center; gap: 7px; border: 1px solid; border-radius: 20px; padding: 4px 12px; font-size: 12px; font-weight: 500; }
.wf2-agent-badge img { width:22px; height:22px; border-radius:7px; margin:-2px 0 -2px -7px; }
.wf2-agent-scout  { color: #93c5fd; border-color: rgba(147,197,253,.3); background: rgba(147,197,253,.06); }
.wf2-agent-analyst{ color: #c4b5fd; border-color: rgba(196,181,253,.3); background: rgba(196,181,253,.06); }
.wf2-agent-hunter { color: #6ee7b7; border-color: rgba(110,231,183,.3); background: rgba(110,231,183,.06); }
.wf2-pulse        { width: 7px; height: 7px; border-radius: 50%; display: inline-block; animation: wf2Pulse 1.4s ease-in-out infinite; flex-shrink: 0; }
.wf2-pulse--scout  { background: #93c5fd; }
.wf2-pulse--analyst{ background: #c4b5fd; }
.wf2-pulse--hunter { background: #6ee7b7; }
@keyframes wf2Pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(1.5)} }
.wf2-dots         { display: inline-block; width: 18px; text-align: left; }
.wf2-strip-hint   { margin-left: auto; font-size: 11px; color: var(--text-dim); }

/* Persistent live workflow status — visible in preview, full-screen and reloads */
.wf2-live-card {
  margin: 12px 0 2px; padding: 13px 15px;
  background: linear-gradient(135deg, rgba(15,38,70,.96), rgba(10,28,53,.96));
  border: 1px solid var(--border); border-radius: var(--r-lg);
}
.wf2-live-main { display: flex; align-items: center; gap: 10px; }
.wf2-live-avatar { position:relative; width:42px; height:42px; flex:0 0 auto; }
.wf2-live-avatar img { display:block; width:42px; height:42px; border-radius:13px; border:1px solid rgba(255,255,255,.16); }
.wf2-live-dot {
  position:absolute; right:-2px; bottom:-2px; width:10px; height:10px; border:2px solid #0d2040; border-radius:50%;
  background: #64748b; box-shadow: 0 0 0 4px rgba(100,116,139,.12);
}
.wf2-live-copy { min-width: 0; flex: 1; }
.wf2-live-title { font-size: 13px; font-weight: 700; color: var(--ink); }
.wf2-live-detail {
  margin-top: 2px; font-size: 12px; color: var(--muted);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.wf2-live-updated { font-size: 10px; color: var(--text-dim); white-space: nowrap; }
.wf2-live-counts {
  display: flex; flex-wrap: wrap; gap: 7px 18px; margin-top: 11px;
  padding-top: 10px; border-top: 1px solid rgba(148,163,184,.12);
  font-size: 11px; color: var(--muted);
}
.wf2-live-counts strong { color: var(--ink); font-size: 12px; margin-right: 3px; }
.wf2-live-recent {
  margin-top: 8px; font-size: 11px; line-height: 1.45; color: var(--text-dim);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.wf2-live-card--scout  { border-color: rgba(147,197,253,.35); }
.wf2-live-card--analyst{ border-color: rgba(196,181,253,.38); }
.wf2-live-card--hunter { border-color: rgba(110,231,183,.38); }
.wf2-live-card--scout .wf2-live-dot  { background:#93c5fd; box-shadow:0 0 0 4px rgba(147,197,253,.13); animation:wf2Pulse 1.4s ease-in-out infinite; }
.wf2-live-card--analyst .wf2-live-dot{ background:#c4b5fd; box-shadow:0 0 0 4px rgba(196,181,253,.13); animation:wf2Pulse 1.4s ease-in-out infinite; }
.wf2-live-card--hunter .wf2-live-dot { background:#6ee7b7; box-shadow:0 0 0 4px rgba(110,231,183,.13); animation:wf2Pulse 1.4s ease-in-out infinite; }
@media (max-width: 720px) {
  .wf2-live-updated { display:none; }
  .wf2-live-counts { gap:7px 12px; }
  .wf2-team-head { display:block; }
  .wf2-team-head p { margin-top:5px; text-align:left; }
  .wf2-team-roster { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

/* Funnel bar */
.wf2-funnel-bar   { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px 10px; flex-wrap: wrap; border-bottom: 1px solid var(--border); }
.wf2-funnel       { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.wf2-funnel-btn   { display: flex; align-items: center; gap: 8px; background: var(--navy-card); border: 1px solid var(--border); border-radius: 10px; padding: 8px 14px; cursor: pointer; transition: border-color .15s, background .15s; text-align: left; }
.wf2-funnel-btn:hover { border-color: var(--border-mid); background: #fbfdfc; }
.wf2-funnel-btn.wf2-active { background: rgba(59,130,246,.12); border-color: rgba(59,130,246,.5); }
.wf2-funnel-btn.wf2-active .wf2-funnel-label { color: var(--ink); }
.wf2-funnel-btn--review.wf2-active   { background: rgba(245,158,11,.1); border-color: rgba(245,158,11,.5); }
.wf2-funnel-btn--verified.wf2-active { background: rgba(139,92,246,.1); border-color: rgba(139,92,246,.5); }
.wf2-funnel-btn--contact-needed.wf2-active { background: rgba(14,116,144,.1); border-color: rgba(14,116,144,.45); }
.wf2-funnel-btn--ready.wf2-active    { background: rgba(34,197,94,.1);  border-color: rgba(34,197,94,.5); }
.wf2-funnel-count { font-size: 20px; font-weight: 700; color: var(--ink); line-height: 1; }
.wf2-funnel-label { font-size: 13px; font-weight: 600; color: var(--muted); display: block; line-height: 1.2; }
.wf2-funnel-hint  { font-size: 11px; color: var(--text-dim); display: block; }
.wf2-funnel-btn--review .wf2-funnel-label   { color: #fbbf24; }
.wf2-funnel-btn--verified .wf2-funnel-label { color: #a78bfa; }
.wf2-funnel-btn--contact-needed .wf2-funnel-label { color: #0e7490; }
.wf2-funnel-btn--ready .wf2-funnel-label    { color: var(--green); }
.wf2-funnel-arrow { font-size: 18px; color: var(--text-dim); padding: 0 2px; }
.wf2-funnel-spin  { font-size: 14px; color: var(--muted); animation: wf2Spin .8s linear infinite; }
@keyframes wf2Spin { to { transform: rotate(360deg); } }

/* Toolbar */
.wf2-toolbar      { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.wf2-search-input { background: #fbfdfc; border: 1px solid var(--border-mid); border-radius: var(--r); padding: 6px 12px; font-size: 13px; color: var(--ink); width: 240px; outline: none; }
.wf2-search-input:focus { border-color: var(--teal); }
.wf2-search-input::placeholder { color: var(--text-dim); }
.wf2-bulk         { display: flex; align-items: center; gap: 6px; background: var(--navy-card); border: 1px solid var(--border-mid); border-radius: var(--r); padding: 4px 10px; font-size: 12px; color: var(--muted); }
.wf2-bulk-btn     { border: none; background: none; cursor: pointer; font-size: 12px; font-weight: 600; padding: 2px 6px; border-radius: 4px; }
.wf2-bulk-approve { color: var(--green); } .wf2-bulk-approve:hover { background: rgba(34,197,94,.12); }
.wf2-bulk-reject  { color: var(--red); }   .wf2-bulk-reject:hover  { background: rgba(239,68,68,.12); }
.wf2-bulk-rerun   { color: #93c5fd; }      .wf2-bulk-rerun:hover   { background: rgba(147,197,253,.1); }
.wf2-row-count    { font-size: 11px; color: var(--text-dim); white-space: nowrap; }

/* Table + detail layout */
.wf2-content      { display: flex; gap: 0; min-height: 300px; border-bottom: 1px solid var(--border); }
.wf2-table-wrap   { flex: 1; overflow-x: auto; }
.wf2-table        { width: 100%; border-collapse: collapse; font-size: 13px; }
.wf2-table thead tr { background: var(--navy-card); border-bottom: 1px solid var(--border); }
.wf2-table th     { padding: 9px 10px; text-align: left; font-size: 11px; font-weight: 600; color: var(--muted); text-transform: uppercase; letter-spacing: .05em; white-space: nowrap; }
.wf2-col-check    { width: 36px; text-align: center !important; }
.wf2-col-actions  { text-align: right !important; }
.wf2-table tbody tr { border-bottom: 1px solid rgba(255,255,255,.04); cursor: pointer; transition: background .1s; }
.wf2-table tbody tr:hover { background: rgba(255,255,255,.03); }
.wf2-table tbody tr.wf2-row-active { background: rgba(59,130,246,.08) !important; }
.wf2-table tbody tr.wf2-row-updated { box-shadow: inset 3px 0 0 var(--teal); }
.wf2-table td     { padding: 8px 10px; color: var(--ink); vertical-align: middle; }
.wf2-td-name      { font-weight: 600; max-width: 200px; }
.wf2-td-website   { font-size: 12px; max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wf2-td-website a { color: var(--teal-dark); text-decoration: none; }
.wf2-td-website a:hover { text-decoration: underline; }
.wf2-website-missing  { color: #fbbf24; font-style: italic; font-size: 12px; }
.wf2-website-searching{ color: #a78bfa; font-size: 12px; }
.wf2-td-type      { font-size: 12px; color: var(--muted); max-width: 160px; }
.wf2-td-loc       { font-size: 12px; color: var(--muted); white-space: nowrap; }
.wf2-td-score     { font-weight: 700; color: var(--cyan); }
.wf2-td-contacts  { font-size: 12px; }
.wf2-contacts-found  { color: var(--green); }
.wf2-contacts-none   { color: var(--text-dim); }
.wf2-contacts-working{ color: #6ee7b7; font-size: 12px; }
.wf2-tier-pill    { display: inline-block; padding: 2px 7px; border-radius: 4px; font-size: 11px; font-weight: 600; white-space: nowrap; }
.wf2-tier-call-ready  { background: rgba(34,197,94,.15);  color: var(--green); }
.wf2-tier-good-target { background: rgba(245,158,11,.15); color: #fbbf24; }
.wf2-tier-research    { background: rgba(59,130,246,.15); color: #93c5fd; }
.wf2-tier-not-a-lead  { background: rgba(123,143,170,.12); color: var(--muted); }
.wf2-td-actions   { text-align: right; white-space: nowrap; }
.wf2-btn-icon     { background: none; border: none; cursor: pointer; padding: 4px 5px; border-radius: 4px; font-size: 13px; transition: background .1s; }
.wf2-btn-icon:hover { background: rgba(255,255,255,.07); }
.wf2-btn-export   { font-size: 11px; color: var(--green); border: 1px solid rgba(34,197,94,.3); border-radius: 4px; padding: 3px 8px; background: none; cursor: pointer; }
.wf2-btn-export:hover { background: rgba(34,197,94,.1); }
.wf2-agent-working{ display: inline-flex; align-items: center; gap: 5px; font-size: 11px; border: 1px solid; border-radius: 20px; padding: 2px 9px; }
.wf2-agent-working--analyst { color: #c4b5fd; border-color: rgba(196,181,253,.3); }
.wf2-agent-working--hunter  { color: #6ee7b7; border-color: rgba(110,231,183,.3); }
.wf2-empty-cell   { text-align: center; padding: 40px; color: var(--text-dim); font-style: italic; font-size: 13px; }

/* Detail panel */
.wf2-detail       { width: 280px; flex-shrink: 0; border-left: 1px solid var(--border); padding: 16px; overflow-y: auto; max-height: 600px; }
.wf2-detail-placeholder { font-size: 13px; color: var(--text-dim); font-style: italic; padding: 20px 0; text-align: center; }
.wf2-detail-name  { font-size: 15px; font-weight: 700; color: var(--ink); margin-bottom: 2px; }
.wf2-detail-website { font-size: 12px; color: var(--teal-dark); margin-bottom: 12px; word-break: break-all; }
.wf2-detail-grid  { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 12px; }
.wf2-detail-cell  { background: var(--navy-card); border-radius: 6px; padding: 7px 9px; }
.wf2-detail-label { font-size: 10px; color: var(--text-dim); text-transform: uppercase; letter-spacing: .05em; margin-bottom: 2px; }
.wf2-detail-val   { font-size: 13px; color: var(--ink); font-weight: 500; }
.wf2-detail-section-label { font-size: 10px; text-transform: uppercase; letter-spacing: .05em; color: var(--text-dim); margin: 10px 0 5px; }
.wf2-detail-contact { background: var(--navy-card); border-radius: 6px; padding: 9px; margin-bottom: 5px; }
.wf2-detail-contact--held { border: 1px solid rgba(239,68,68,.2); opacity: .78; }
.wf2-detail-contact-name  { font-size: 13px; font-weight: 600; color: var(--ink); }
.wf2-detail-contact-title { font-size: 11px; color: var(--muted); margin-bottom: 4px; }
.wf2-detail-contact-links { display: flex; gap: 10px; font-size: 11px; color: var(--teal-dark); }
.wf2-detail-contact-links a { color: var(--teal-dark); text-decoration: none; }
.wf2-detail-contact-links a:hover { text-decoration: underline; }
.wf2-detail-note  { font-size: 12px; color: var(--muted); line-height: 1.5; }
.wf2-detail-agent { display: flex; align-items: center; gap: 7px; border: 1px solid; border-radius: 7px; padding: 7px 10px; margin-bottom: 10px; font-size: 12px; font-weight: 500; }
.wf2-detail-agent img { width:24px; height:24px; border-radius:8px; }
.wf2-detail-agent--analyst { color: #c4b5fd; border-color: rgba(196,181,253,.3); background: rgba(196,181,253,.05); }
.wf2-detail-agent--hunter  { color: #6ee7b7; border-color: rgba(110,231,183,.3); background: rgba(110,231,183,.05); }
.wf2-detail-actions { margin-top: 12px; display: flex; flex-direction: column; gap: 5px; }
.wf2-detail-btn   { width: 100%; padding: 7px; border-radius: var(--r); font-size: 12px; font-weight: 600; cursor: pointer; border: 1px solid transparent; }
.wf2-detail-btn--approve { background: rgba(34,197,94,.15); color: var(--green); border-color: rgba(34,197,94,.25); }
.wf2-detail-btn--reject  { background: rgba(239,68,68,.1);  color: var(--red);   border-color: rgba(239,68,68,.2); }
.wf2-detail-btn--rerun   { background: rgba(147,197,253,.1);color: #93c5fd;border-color:rgba(147,197,253,.2); }

/* Footer */
.wf2-footer       { display: flex; align-items: center; gap: 16px; padding: 9px 20px; font-size: 12px; border-bottom: 1px solid var(--border); flex-wrap: wrap; }
.wf2-footer-agent { display: flex; align-items: center; gap: 6px; color: var(--muted); }
.wf2-fdot         { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
.wf2-fdot--scout  { background: #93c5fd; }
.wf2-fdot--analyst{ background: #c4b5fd; }
.wf2-fdot--hunter { background: #6ee7b7; }
.wf2-fdot--night { background: #a99ad9; }
.wf2-footer-right {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-left: auto;
  color: var(--muted);
}
.wf2-footer-rejected {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  padding: 5px 8px 5px 10px;
  border: 1px solid #efd7d2;
  border-radius: 8px;
  background: #fff8f6;
  color: #9e3f35;
  font: inherit;
  font-weight: 750;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, transform .16s ease;
}
.wf2-footer-rejected:hover {
  border-color: #d89c93;
  background: #fff0ed;
  transform: translateY(-1px);
}
.wf2-footer-rejected:focus-visible {
  outline: 3px solid rgba(216,156,147,.45);
  outline-offset: 2px;
}
.wf2-footer-rejected--active {
  border-color: #c77369;
  background: #fde9e5;
}
.wf2-footer-rejected-link {
  padding-left: 8px;
  border-left: 1px solid #ebc6c0;
  color: #a64b41;
  font-size: 11px;
  font-weight: 800;
}

.wf2-archive-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin: 14px 0;
  padding: 16px 18px;
  border: 1px solid rgba(245, 158, 11, .25);
  border-radius: 12px;
  background: rgba(245, 158, 11, .06);
}
.wf2-archive-head h3 { margin: 2px 0 4px; font-size: 17px; color: var(--ink); }
.wf2-archive-head p { margin: 0; color: var(--muted); font-size: 12px; }
.wf2-archive-head .wf2-search-shell { min-width: min(360px, 100%); }
.wf2-archive-more {
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px;
  color: var(--muted);
  font-size: 12px;
}
@media (max-width: 720px) {
  .wf2-archive-head { align-items: stretch; flex-direction: column; }
}
.wf2-footer-progress { white-space: nowrap; }

/* Durable nightly SDR sweeps */
.nightly-card,
.nightly-morning {
  margin: 14px 20px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(109,93,252,.08), rgba(8,18,35,.92));
  overflow: hidden;
}
.nightly-head,
.nightly-morning-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  padding: 14px 16px;
}
.nightly-agent-avatar { width:48px; height:48px; flex:0 0 auto; border:1px solid rgba(196,181,253,.32); border-radius:14px; }
.nightly-head > .nightly-agent-avatar + div,
.nightly-morning-head > .nightly-agent-avatar + div { flex:1; }
.nightly-head h3,
.nightly-morning-head h3 { margin: 2px 0 4px; font-size: 16px; }
.nightly-head p { margin: 0; color: var(--muted); font-size: 12px; }
.nightly-eyebrow {
  color: #a5b4fc;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.nightly-state,
.nightly-run-status,
.nightly-category {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 999px;
  border: 1px solid var(--border);
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
  text-transform: capitalize;
}
.nightly-state.ok,
.nightly-run-status.ok { color: var(--green); border-color: rgba(34,197,94,.3); background: rgba(34,197,94,.08); }
.nightly-state.warn,
.nightly-run-status.warn { color: #fbbf24; border-color: rgba(251,191,36,.3); background: rgba(251,191,36,.08); }
.nightly-run-status.bad { color: var(--red); border-color: rgba(239,68,68,.3); background: rgba(239,68,68,.08); }
.nightly-actions { display: flex; gap: 7px; flex-wrap: wrap; justify-content: flex-end; }
.nightly-safety {
  margin: 0 16px;
  padding: 9px 11px;
  border-left: 3px solid #818cf8;
  background: rgba(99,102,241,.08);
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.nightly-safety strong { color: #c7d2fe; }
.nightly-last { padding: 10px 16px 14px; color: var(--muted); font-size: 12px; }
.nightly-progress {
  margin: 0 16px 15px;
  padding: 10px 11px;
  border: 1px solid rgba(129,140,248,.2);
  border-radius: 8px;
  background: rgba(99,102,241,.06);
}
.nightly-progress-copy { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 7px; color: var(--muted); font-size: 10px; }
.nightly-progress-copy strong { color: var(--ink); }
.nightly-progress-track { height: 6px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.08); }
.nightly-progress-track span { display: block; height: 100%; width: 0; border-radius: inherit; background: #818cf8; transition: width .25s ease; }
.nightly-config {
  border-top: 1px solid var(--border);
  padding: 15px 16px;
  background: rgba(4,12,26,.45);
}
.nightly-config-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 10px;
}
.nightly-check-row { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 10px 0; }
.nightly-check-row label { color: var(--muted); font-size: 12px; }
.nightly-enrichment-option {
  display: inline-flex;
  align-items: flex-start;
  gap: 6px;
  max-width: 360px;
  color: var(--ink) !important;
}
.nightly-enrichment-option input { margin-top: 2px; }
.nightly-enrichment-option small {
  display: block;
  margin-top: 2px;
  color: var(--text-dim);
  font-size: 10px;
  line-height: 1.35;
}
.nightly-enrichment-option.is-locked { color: var(--muted) !important; }
.nightly-enrichment-option.is-locked small { color: #8f9d99; }
.nightly-source-unavailable { opacity: .42; }
.nightly-subhead {
  margin: 14px 0 7px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 700;
}
.nightly-hint { color: var(--text-dim); font-size: 11px; margin: -2px 0 9px; }
.nightly-quota-grid { display: grid; grid-template-columns: repeat(2, minmax(260px, 1fr)); gap: 6px 10px; }
.nightly-quota-row {
  display: grid;
  grid-template-columns: minmax(90px, 1fr) 1fr 1fr;
  gap: 8px;
  align-items: center;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 7px;
  padding: 7px 9px;
}
.nightly-quota-row strong { font-size: 11px; }
.nightly-quota-row label { display: flex; align-items: center; gap: 5px; font-size: 10px; color: var(--muted); }
.nightly-quota-row .form-input { min-width: 0; padding: 5px 6px; height: 28px; font-size: 11px; }
.nightly-config-footer { display: flex; justify-content: flex-end; align-items: center; gap: 12px; margin-top: 14px; font-size: 12px; }
.nightly-morning { background: var(--navy-card); }
.nightly-category-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(100px, 1fr));
  border-top: 1px solid var(--border);
}
.nightly-category-grid--action { grid-template-columns: 1.35fr repeat(4, minmax(100px, 1fr)); }
.nightly-category-grid .nightly-summary-primary { background: rgba(34,197,94,.08); }
.nightly-category-grid .nightly-summary-primary strong { color: var(--green); }
.nightly-morning-head p { margin: 4px 0 0; color: var(--muted); font-size: 10px; }
.nightly-category-grid > span {
  min-height: 58px;
  padding: 10px;
  border-right: 1px solid var(--border);
  color: var(--muted);
  font-size: 10px;
  line-height: 1.25;
}
.nightly-category-grid > span:last-child { border-right: 0; }
.nightly-category-grid strong { display: block; margin-bottom: 2px; color: var(--ink); font-size: 19px; }
.nightly-results { padding: 0 16px 16px; border-top: 1px solid var(--border); }
.nightly-result-block + .nightly-result-block { margin-top: 16px; }
.nightly-table-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: 8px; }
.nightly-table { width: 100%; border-collapse: collapse; font-size: 11px; }
.nightly-table th { padding: 7px 9px; text-align: left; color: var(--text-dim); text-transform: uppercase; letter-spacing: .04em; background: rgba(255,255,255,.025); }
.nightly-table td { padding: 8px 9px; border-top: 1px solid rgba(255,255,255,.05); color: var(--muted); vertical-align: top; }
.nightly-table td strong { color: var(--ink); }
.nightly-table td span { color: var(--text-dim); }
.nightly-category--net_new,
.nightly-category--eligible_reactivation { color: var(--green) !important; border-color: rgba(34,197,94,.3); }
.nightly-category--recently_contacted,
.nightly-category--size_held,
.nightly-category--qualification_held { color: #fbbf24 !important; border-color: rgba(251,191,36,.3); }
.nightly-category--existing_account,
.nightly-category--open_opportunity { color: #93c5fd !important; border-color: rgba(147,197,253,.3); }
.nightly-quota-usage { display: flex; gap: 7px; flex-wrap: wrap; margin-top: 9px; }
.nightly-quota-usage > span { padding: 4px 7px; border-radius: 5px; background: rgba(255,255,255,.04); color: var(--muted); font-size: 10px; }
.nightly-hold-summary {
  margin-top: 13px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: rgba(255,255,255,.025);
}
.nightly-hold-summary summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 11px;
  color: var(--muted);
  cursor: pointer;
  font-size: 10px;
}
.nightly-hold-summary summary strong { color: var(--ink); font-size: 11px; }
.nightly-hold-reasons { display: flex; flex-wrap: wrap; gap: 7px; padding: 0 11px 11px; color: var(--muted); font-size: 10px; }
.nightly-hold-reasons > span { display: inline-flex; gap: 5px; padding: 5px 8px; border-radius: 999px; background: rgba(251,191,36,.08); }
.nightly-hold-reasons strong { color: #fbbf24; }

@media (max-width: 980px) {
  .nightly-config-grid { grid-template-columns: repeat(2, minmax(130px, 1fr)); }
  .nightly-category-grid { grid-template-columns: repeat(4, 1fr); }
  .nightly-category-grid--action { grid-template-columns: repeat(3, 1fr); }
  .nightly-category-grid > span { border-bottom: 1px solid var(--border); }
}
@media (max-width: 680px) {
  .nightly-card, .nightly-morning { margin: 10px; }
  .nightly-head, .nightly-morning-head { flex-direction: column; }
  .nightly-actions { justify-content: flex-start; }
  .nightly-config-grid, .nightly-quota-grid { grid-template-columns: 1fr; }
  .nightly-category-grid { grid-template-columns: repeat(2, 1fr); }
  .nightly-category-grid--action { grid-template-columns: repeat(2, 1fr); }
  .nightly-progress-copy { align-items: flex-start; flex-direction: column; gap: 3px; }
}

/* ── APPROVED PRIVATE-WORKSPACE ACCESS ── */
body.auth-pending > .lf-top,
body.auth-pending > .main,
body.auth-pending > .footer { display: none; }

.ts-auth {
  position: fixed;
  inset: 0;
  z-index: 5000;
  overflow: auto;
  color: #f5fbfa;
  background:
    radial-gradient(circle at 8% 2%, rgba(154,234,189,.16), transparent 28%),
    radial-gradient(circle at 93% 94%, rgba(20,94,114,.38), transparent 36%),
    #173238;
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
}
.ts-auth::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .18;
  background-image: linear-gradient(rgba(255,255,255,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.18) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, #000, transparent 75%);
}
.ts-auth-top,
.ts-auth-main {
  position: relative;
  width: min(1120px, calc(100% - 48px));
  margin: 0 auto;
}
.ts-auth-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 104px;
}
.ts-auth-brand,
.ts-auth-top-note,
.ts-auth-secure,
.ts-auth-scope {
  display: flex;
  align-items: center;
}
.ts-auth-brand { gap: 12px; }
.ts-mark {
  width: 42px;
  height: 42px;
  overflow: hidden;
  flex: 0 0 auto;
  border-radius: 12px;
  box-shadow: 0 6px 20px rgba(0,0,0,.18);
}
.ts-mark img,
.lf-mark img { display: block; width: 100%; height: 100%; object-fit: contain; }
.ts-auth-brand strong { display: block; color: #fff; font-size: 15px; letter-spacing: -.03em; }
.ts-auth-brand span { display: block; margin-top: 2px; color: rgba(245,251,250,.66); font-size: 10px; font-weight: 600; }
.ts-auth-top-note { gap: 7px; color: rgba(245,251,250,.72); font-size: 11px; font-weight: 700; }
.ts-auth-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 430px;
  align-items: center;
  gap: clamp(50px, 11vw, 150px);
  min-height: calc(100vh - 104px);
  padding: 50px 0 82px;
}
.ts-auth-aside { padding-bottom: 30px; }
.ts-auth-eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #9aeabd;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.ts-auth-eyebrow i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #9aeabd;
  box-shadow: 0 0 0 5px rgba(154,234,189,.13);
}
.ts-auth-title {
  max-width: 560px;
  margin: 18px 0 16px;
  color: #fff;
  font-family: "DM Serif Display", Georgia, serif;
  font-size: clamp(42px, 5.2vw, 70px);
  font-weight: 400;
  letter-spacing: -.055em;
  line-height: .98;
}
.ts-auth-title em { color: #9aeabd; font-style: italic; }
.ts-auth-lede { max-width: 470px; color: rgba(245,251,250,.78); font-size: 15px; line-height: 1.7; }
.ts-auth-card {
  padding: 30px;
  color: #173238;
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 28px 65px rgba(4,26,30,.24);
}
.ts-auth-card h2 { margin: 0; color: #173238; font-size: 19px; letter-spacing: -.03em; }
.ts-auth-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.ts-auth-card-sub { margin: 7px 0 0; color: #607278; font-size: 12px; line-height: 1.5; }
.ts-auth-secure {
  gap: 5px;
  padding: 5px 8px;
  color: #0c6a66;
  border-radius: 999px;
  background: #e8f7ef;
  font-size: 10px;
  font-weight: 800;
}
.ts-auth-google,
.ts-auth-enter {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border: 1px solid #cad9d7;
  border-radius: 10px;
  color: #173238;
  background: #fff;
  font-family: inherit;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.ts-auth-google { min-height: 50px; gap: 11px; margin-top: 26px; }
.ts-auth-enter { min-height: 43px; margin-top: 22px; color: #fff; border-color: #145e72; background: #145e72; }
.ts-auth-google:hover,
.ts-auth-enter:hover { transform: translateY(-1px); border-color: #145e72; box-shadow: 0 10px 20px rgba(20,94,114,.15); text-decoration: none; }
.ts-auth-google:focus-visible,
.ts-auth-enter:focus-visible { outline: 3px solid rgba(154,234,189,.8); outline-offset: 3px; }
.ts-google-icon { width: 18px; height: 18px; flex: 0 0 auto; }
.ts-auth-divider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 23px 0 17px;
  color: #899a9d;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.ts-auth-divider::before,
.ts-auth-divider::after { content: ""; height: 1px; flex: 1; background: #e1eae8; }
.ts-auth-scope { align-items: flex-start; gap: 10px; color: #145e72; }
.ts-auth-scope > svg { flex: 0 0 auto; margin-top: 2px; }
.ts-auth-scope strong { color: #173238; font-size: 12px; }
.ts-auth-scope p { margin: 4px 0 0; color: #607278; font-size: 11px; line-height: 1.6; }
.ts-auth-footnote { margin: 18px 0 0; color: #899a9d; font-size: 10px; text-align: center; }
.ts-auth-success { color: #173238; text-align: center; }
.ts-auth-success h2 { margin: 14px 0 7px; }
.ts-auth-success p { margin: 0; color: #607278; font-size: 12px; line-height: 1.55; }
.ts-auth-success-icon {
  display: grid;
  width: 50px;
  height: 50px;
  margin: 0 auto;
  place-items: center;
  color: #0c6a66;
  border-radius: 16px;
  background: #e8f7ef;
}
.ts-auth-card .auth-clerk { width: 100%; margin-top: 0; }
.auth-clerk .cl-socialButtonsBlockButton,
.auth-clerk .cl-formFieldInput,
.auth-clerk .cl-formButtonPrimary,
.auth-clerk .cl-footerActionLink {
  transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.auth-clerk .cl-socialButtonsBlockButton:hover {
  border-color: #0c6a66;
  background: #f7fbf9;
  box-shadow: 0 8px 18px rgba(20,94,114,.10);
}
.auth-clerk .cl-formFieldInput:focus {
  border-color: #0c6a66;
  box-shadow: 0 0 0 3px rgba(12,106,102,.12);
}
.auth-clerk .cl-formFieldInput::placeholder {
  color: #91a09f;
  opacity: 1;
}
.auth-clerk .cl-formButtonPrimary:hover {
  transform: translateY(-1px);
  background: #095a57;
  box-shadow: 0 9px 18px rgba(12,106,102,.18);
}
.auth-clerk .cl-footerActionLink:hover { color: #095a57; }
.ts-auth-card .auth-error { margin-top: 16px; }

@media (max-width: 760px) {
  .ts-auth-top,
  .ts-auth-main { width: min(100% - 32px, 520px); }
  .ts-auth-top { min-height: 78px; }
  .ts-auth-top-note { display: none; }
  .ts-auth-main { display: block; min-height: 0; padding: 24px 0 34px; }
  .ts-auth-aside { padding: 0 0 30px; }
  .ts-auth-title { max-width: 360px; font-size: clamp(38px, 12vw, 54px); }
  .ts-auth-lede { font-size: 13px; }
  .ts-auth-card { padding: 23px 20px; border-radius: 18px; }
}

/* ── SIGNED-IN RESEARCH DESK ── */
.lf-top {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 68px;
  padding: 10px max(24px, calc((100vw - 1320px) / 2));
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.94);
  box-shadow: 0 3px 18px rgba(23,50,56,.05);
  backdrop-filter: blur(14px);
}
.lf-brand,
.lf-user { display: flex; align-items: center; }
.lf-brand { min-width: 250px; gap: 10px; }
.lf-mark {
  width: 34px;
  height: 34px;
  overflow: hidden;
  flex: 0 0 auto;
  border-radius: 10px;
}
.lf-brand strong { display: block; color: var(--ink); font-size: 14px; letter-spacing: -.025em; }
.lf-brand small { display: block; margin-top: 1px; color: var(--muted); font-size: 9px; font-weight: 600; }
.lf-nav {
  display: flex;
  align-items: center;
  gap: 3px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--paper);
}
.lf-nav .tab-btn {
  min-height: 30px;
  padding: 5px 11px;
  border: 0;
  border-radius: 7px;
  color: var(--muted);
  background: transparent;
  font-size: 11px;
  font-weight: 800;
}
.lf-nav .tab-btn:hover { color: var(--teal-dark); background: #fff; }
.lf-nav .tab-btn.active { color: var(--teal-dark); background: #fff; box-shadow: 0 1px 4px rgba(23,50,56,.09); }
.lf-user { min-width: 250px; justify-content: flex-end; gap: 11px; }
.lf-user > div { min-width: 0; text-align: right; }
.lf-user #headerAuthName { overflow: hidden; color: var(--ink); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.lf-user #headerAuthEmail { display: block; overflow: hidden; max-width: 160px; text-overflow: ellipsis; white-space: nowrap; }

.cleanse-card,
.nightly-card,
.nightly-morning,
.wf2-live-card,
.wf2-search-panel,
.wf2-detail,
.wf2-table-wrap,
.nightly-table-wrap {
  border-color: var(--line);
  background: var(--surface);
  box-shadow: 0 6px 20px rgba(23,50,56,.06);
}
.cleanse-card { background: linear-gradient(145deg, #ffffff, #f6fbf8); }
.cleanse-table th,
.nightly-table th { color: var(--muted); background: var(--paper); }
.cleanse-table td,
.nightly-table td { border-color: var(--line); color: var(--muted); }
.cleanse-table-wrap { border-color: var(--line); }
.nightly-config { border-color: var(--line); background: #f7fbf9; }
.nightly-quota-row { border-color: var(--line); background: #fff; }
.nightly-quota-usage > span { color: var(--muted); background: #edf6f2; }
.nightly-category-grid > span { border-color: var(--line); }
.nightly-results { border-color: var(--line); }
.wf2-funnel-btn,
.wf2-search-input { background: #fff; border-color: var(--line); }
.wf2-table th { color: var(--muted); background: var(--paper); }
.wf2-table td { border-color: var(--line); }

@media (max-width: 760px) {
  .lf-top { position: relative; align-items: flex-start; gap: 10px; min-height: 0; padding: 12px 16px; }
  .lf-brand { min-width: 0; }
  .lf-brand small { display: none; }
  .lf-nav { order: 3; width: 100%; justify-content: space-between; }
  .lf-nav .tab-btn { flex: 1; }
  .lf-user { min-width: 0; gap: 7px; }
  .lf-user > div { display: none; }
  .lf-user .btn { white-space: nowrap; }
}

/* Shared cards and review overlays keep Watchlist, Settings, and human
   approval actions readable in the light operational workspace. */
.panel {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--surface);
  box-shadow: 0 6px 20px rgba(23,50,56,.06);
}
.panel-title {
  margin: 0 0 7px;
  color: var(--ink);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -.025em;
}
.api-name,
.modal-title,
.sf-link-panel h3 { color: var(--ink); }
.modal {
  color: var(--ink);
  border-color: var(--line);
  box-shadow: 0 20px 60px rgba(23,50,56,.22);
}
.modal-close:hover { color: var(--ink); background: var(--accent-light); }
.sf-link-panel {
  border-color: var(--line);
  background: #f5fbf8;
}
.sf-link-panel p,
.sf-review-subtitle { color: var(--muted); }

.wf2-team {
  border-color: var(--line);
  background: linear-gradient(135deg, #edf8f3, #f9fcfa);
}
.wf2-team-kicker { color: var(--teal-dark); }
.wf2-team h3 { color: var(--ink); }
.wf2-team-head p { color: var(--muted); }
.wf2-team-member {
  border-color: var(--line);
  background: rgba(255,255,255,.88);
}
.wf2-team-member strong { color: var(--ink); }
.wf2-team-member strong span { color: var(--teal-dark); }
.wf2-team-member small { color: var(--muted); }

@media (max-width: 680px) {
  .panel { padding: 16px; border-radius: 12px; }
}

/* ── Approved research-desk composition ───────────────────────────────────
   These final overrides deliberately replace the former stacked dashboard
   hierarchy while retaining the established IDs and event bindings. */
.main {
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 28px 56px;
}
.customer-bar {
  margin: 18px 0 0;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fbfdfc;
}
.customer-bar-inner { min-height: 42px; padding: 6px 11px; }
.customer-bar-label { color: var(--teal-dark); font-size: 9px; letter-spacing: .09em; text-transform: uppercase; }
.customer-bar-hint { margin-left: auto; font-size: 10px; }

#tab-workflow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 370px;
  gap: 16px;
  margin-top: 21px;
}
.wf2-header,
.wf2-search-panel,
.wf2-funnel-bar,
.wf2-content,
.nightly-card,
.cleanse-card,
.wf2-agent-strip,
.wf-progress-area,
.nightly-morning,
.wf-diag-panel { min-width: 0; }
.wf2-header {
  grid-column: 1 / -1;
  grid-row: 1;
  padding: 0 0 4px;
  border: 0;
}
.wf2-crumb { margin: 0 0 15px; color: #8a9999; font-size: 10px; }
.wf2-crumb span,
.wf2-kicker span,
.wf2-trust-note span,
.settings-desk-trust span,
.nightly-eyebrow span { color: #b0bcba; padding: 0 3px; }
.wf2-crumb strong { color: var(--teal-dark); }
.wf2-title-row { align-items: flex-end; margin: 0; }
.wf2-title-row > div:first-child { max-width: 650px; }
.wf2-kicker {
  margin-bottom: 7px;
  color: var(--teal);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.wf2-title {
  margin: 0 0 9px;
  color: #173b40;
  font-family: "DM Serif Display", Georgia, serif;
  font-size: clamp(36px, 4.3vw, 52px);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: .94;
}
.wf2-intro-copy { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.wf2-trust-note {
  align-self: center;
  margin-left: auto;
  color: #6f8580;
  font-size: 10px;
  font-weight: 750;
  white-space: nowrap;
}
.wf2-header-actions { margin-left: 14px; }
.wf2-search-panel {
  grid-column: 1 / -1;
  grid-row: 2;
  padding: 0;
}
.wf2-search-inner {
  padding: 18px;
  border-color: #d8e7e1;
  border-radius: 13px;
  background: #f3faf6;
  box-shadow: none;
}
.wf2-search-grid { gap: 10px; }
.wf2-search-panel .wf-input,
.wf2-search-panel .wf-batch-select {
  color: var(--ink);
  border-color: #c8ddd5;
  background: #fff;
}
.wf2-funnel-bar {
  grid-column: 1 / -1;
  grid-row: 3;
  display: block;
  padding: 0;
  border: 0;
}
.wf2-funnel {
  display: grid;
  grid-template-columns: 1.25fr repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.wf2-funnel-arrow { display: none; }
.wf2-funnel-btn {
  display: block;
  min-height: 86px;
  padding: 14px 15px;
  border-color: var(--line);
  border-radius: 13px;
  background: #fff;
}
.wf2-funnel-btn:first-child { background: #edf8f2; border-color: #cce4d8; }
.wf2-funnel-btn.wf2-active { box-shadow: 0 0 0 2px rgba(17,124,118,.15); border-color: #8fc8be; }
.wf2-funnel-btn--review.wf2-active { background: #fff8ed; border-color: #edca8c; }
.wf2-funnel-btn--verified.wf2-active { background: #f6f2fc; border-color: #d8cbed; }
.wf2-funnel-btn--ready.wf2-active { background: #eff9f2; border-color: #b8ddc5; }
.wf2-funnel-count { display: block; color: var(--ink); font-size: 25px; letter-spacing: -.06em; }
.wf2-funnel-label { margin-top: 5px; color: var(--ink); font-size: 11px; font-weight: 800; }
.wf2-funnel-hint { margin-top: 3px; font-size: 9px; line-height: 1.35; }
.wf2-toolbar { margin-top: 13px; padding: 0; }
.wf2-search-input { min-height: 38px; width: min(290px, 100%); border-radius: 9px; }
.wf2-row-count { margin-left: auto; }
.wf2-content {
  grid-column: 1 / -1;
  grid-row: 4;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 368px;
  overflow: hidden;
  min-height: 390px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 25px rgba(23,50,56,.05);
}
.wf2-table-wrap { min-width: 0; border: 0; border-radius: 0; box-shadow: none; }
.wf2-table { min-width: 780px; }
.wf2-table thead tr { background: #f7faf8; border-color: var(--line); }
.wf2-table th { padding: 12px 13px; color: #829291; font-size: 9px; letter-spacing: .08em; }
.wf2-table tbody tr { border-color: #edf2f0; }
.wf2-table tbody tr:hover { background: #f7fbf8; }
.wf2-table tbody tr.wf2-row-active { background: #f1f9f5 !important; box-shadow: inset 3px 0 0 var(--teal); }
.wf2-table td { padding: 13px; }
.wf2-td-name { color: #17383c; font-size: 12px; font-weight: 800; }
.wf2-td-score { color: var(--teal-dark); font-size: 16px; }
.wf2-tier-pill { border-radius: 20px; padding: 4px 7px; font-size: 9px; }
.wf2-detail {
  width: auto;
  max-height: none;
  padding: 20px;
  border: 0;
  border-left: 1px solid var(--line);
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.wf2-detail-placeholder { padding: 45px 9px; color: #8a9b98; }
.wf2-detail-name { color: #17383c; font-size: 19px; letter-spacing: -.04em; }
.wf2-detail-grid { gap: 8px; }
.wf2-detail-cell,
.wf2-detail-contact { border: 1px solid #e0ece7; border-radius: 9px; background: #f7faf8; }
.wf2-detail-agent--analyst { color: #765aa7; border-color: #dccff0; background: #f5f1fc; }
.wf2-detail-agent--hunter { color: #257a58; border-color: #c8e5d3; background: #eff9f2; }
.wf2-detail-btn { border-radius: 8px; }
.wf2-detail-btn--approve { color: #fff; border-color: var(--teal); background: var(--teal); }
.wf2-detail-btn--reject { color: #a35b4d; border-color: #ecd3cd; background: #fff; }
.wf2-detail-btn--rerun { color: var(--teal-dark); border-color: #c8ddd6; background: #fff; }
#wf2WebsiteInput,
.wf2-table input[type="text"] { color: var(--ink) !important; border-color: #cbdcd7 !important; background: #fff !important; }
.wf2-empty-cell { padding: 0 !important; font-style: normal; }
.wf2-empty-queue {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  min-height: 190px;
  padding: 30px;
  text-align: left;
}
.wf2-empty-queue img { width: 40px; height: 40px; border-radius: 12px; }
.wf2-empty-queue strong { display: block; color: var(--ink); font-size: 13px; }
.wf2-empty-queue span { display: block; max-width: 520px; margin-top: 5px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.wf2-team {
  grid-column: 1;
  grid-row: 5;
  margin: 0;
  padding: 18px;
  border-color: var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(23,50,56,.05);
}
.wf2-team-head { align-items: flex-start; margin-bottom: 13px; }
.wf2-team h3 { font-size: 14px; }
.wf2-team-head p { display: none; }
.wf2-team-roster { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wf2-team-member { padding: 7px; }
.wf2-team-member img {
  width: 31px;
  height: 31px;
  border-radius: 9px;
  object-fit: cover;
  object-position: center 18%;
}
.wf2-team-member small { line-height: 1.25; white-space: normal; }
.wf2-live-card {
  grid-column: 2;
  grid-row: 5;
  margin: 0;
  padding: 17px;
  border-radius: 14px;
  background: #173b40;
  box-shadow: 0 6px 20px rgba(23,50,56,.14);
}
.wf2-live-title { color: #fff; }
.wf2-live-detail,
.wf2-live-counts,
.wf2-live-recent,
.wf2-live-updated { color: rgba(236,247,243,.72); }
.wf2-live-counts strong { color: #fff; }
.wf2-live-avatar img { border-color: rgba(255,255,255,.2); }
.wf2-live-avatar img,
.wf2-agent-badge img,
.wf2-detail-agent img,
.nightly-agent-avatar {
  object-fit: cover;
  object-position: center 18%;
}
.wf2-live-dot { border-color: #173b40; }
.wf2-footer { grid-column: 1 / -1; grid-row: 6; padding: 0 3px; border: 0; }
.nightly-card,
.cleanse-card,
.nightly-morning,
.wf2-agent-strip,
.wf-progress-area,
.wf-diag-panel { grid-column: 1 / -1; margin: 0; }
.nightly-card { grid-row: 7; }
.cleanse-card { grid-row: 8; }
.wf2-agent-strip { grid-row: 9; }
.wf-progress-area { grid-row: 10; }
.nightly-morning { grid-row: 11; }
.wf-diag-panel { grid-row: 12; }
.nightly-card {
  border-color: #d6e5de;
  border-radius: 15px;
  background: linear-gradient(135deg, #fffefd, #f4f8f5);
  box-shadow: 0 8px 26px rgba(23,50,56,.05);
}
.nightly-head { padding: 21px 22px 17px; }
.nightly-head h3 { color: var(--ink); font-size: 18px; }
.nightly-eyebrow { color: var(--teal); }
.nightly-safety {
  margin: 0 22px;
  border: 1px solid #d6e8df;
  border-left: 3px solid var(--teal);
  border-radius: 9px;
  background: #eff8f3;
  color: #59756f;
}
.nightly-safety strong { color: var(--teal-dark); }
.nightly-last { padding: 12px 22px 16px; }
.nightly-morning { border-radius: 14px; background: #fff; }
#tab-workflow > .nightly-morning {
  margin-top: 16px;
  border-color: #cfe3dc;
  box-shadow: 0 10px 30px rgba(23,50,56,.06);
}
.nightly-morning .nightly-results { border-color: #e3ece8; }
.nightly-category-grid .nightly-summary-primary { background: #eff9f3; }
.nightly-progress { margin-right: 22px; margin-left: 22px; border-color: #cfe3dc; background: #f1f8f5; }
.nightly-progress-track { background: #dce9e4; }
.nightly-progress-track span { background: var(--teal); }
.nightly-hold-summary { border-color: #e0eae6; background: #fbfdfc; }
.nightly-hold-reasons > span { color: #725b37; background: #fff7e8; }
.nightly-hold-reasons strong { color: #9a641f; }
.cleanse-card {
  padding: 22px;
  border-color: #d6e5de;
  border-radius: 15px;
  background: #fff;
}
.cleanse-head h3 { color: #173b40; font-size: 19px; letter-spacing: -.04em; }
.cleanse-fields { padding: 13px; border: 1px solid #deebe5; border-radius: 10px; background: #f8fbf9; }
.cleanse-toolbar { padding: 15px 0; }
.cleanse-note { padding: 10px 12px; border: 1px solid #e0ece7; border-radius: 8px; background: #f8fbf9; }
.cleanse-table-wrap { border-color: var(--line); border-radius: 10px; }
.cleanse-table th { background: #f6faf7; }
.cleanse-table td { background: #fff; }

#tab-watchlist,
#tab-settings { margin-top: 25px; }
.wl-layout { gap: 16px; }
.wl-purpose-note {
  display: grid;
  gap: 3px;
  margin: 14px 0 18px;
  padding: 12px 13px;
  border: 1px solid #cfe3dc;
  border-radius: 10px;
  color: #4f6f69;
  background: #f0f8f4;
  font-size: 10px;
  line-height: 1.5;
}
.wl-purpose-note strong { color: var(--teal-dark); font-size: 11px; }
.settings-desk-intro {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 24px;
}
.settings-desk-kicker,
.settings-policy-kicker {
  color: var(--teal);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.settings-desk-intro h2 {
  margin: 7px 0 8px;
  color: #173b40;
  font-family: "DM Serif Display", Georgia, serif;
  font-size: clamp(36px, 4vw, 48px);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: .95;
}
.settings-desk-intro p { max-width: 620px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.settings-desk-trust { color: #728884; font-size: 10px; font-weight: 750; white-space: nowrap; }
.settings-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(285px, .7fr);
  align-items: start;
  gap: 16px;
}
.settings-sources-panel { grid-row: span 2; }
.settings-data-panel,
.settings-policy-panel { min-width: 0; }
.settings-policy-panel { background: linear-gradient(145deg, #fff, #f7fbf8); }
.settings-policy-kicker { margin-bottom: 7px; }
.settings-layout .api-key-block {
  padding: 17px;
  border-color: #e4ece8;
}
.settings-layout .api-key-block:first-of-type { padding-top: 17px; }

@media (max-width: 980px) {
  .main { padding-right: 18px; padding-left: 18px; }
  #tab-workflow { grid-template-columns: 1fr; }
  .wf2-team { grid-column: 1; grid-row: 5; }
  .wf2-live-card { grid-column: 1; grid-row: 6; }
  .wf2-footer { grid-row: 7; }
  .nightly-card { grid-row: 8; }
  .cleanse-card { grid-row: 9; }
  .wf2-agent-strip { grid-row: 10; }
  .wf-progress-area { grid-row: 11; }
  .nightly-morning { grid-row: 12; }
  .wf-diag-panel { grid-row: 13; }
  .wf2-content { grid-template-columns: 1fr; }
  .wf2-detail { min-height: 0; border-top: 1px solid var(--line); border-left: 0; }
  .settings-layout { grid-template-columns: 1fr; }
  .settings-sources-panel { grid-row: auto; }
}
@media (max-width: 700px) {
  .main { padding: 0 14px 36px; }
  .customer-bar { margin-top: 12px; }
  .customer-bar-inner { align-items: center; }
  .customer-bar-hint { display: none; }
  #tab-workflow { gap: 13px; margin-top: 18px; }
  .wf2-title-row { display: block; }
  .wf2-title { font-size: 39px; }
  .wf2-trust-note { margin: 14px 0 0; }
  .wf2-header-actions { margin: 16px 0 0; }
  .wf2-header-actions .btn { flex: 1 1 42%; }
  .wf2-funnel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wf2-funnel-btn:first-child { grid-column: 1 / -1; }
  .wf2-funnel-btn { min-height: 74px; }
  .wf2-toolbar { align-items: stretch; }
  .wf2-search-input { width: 100%; }
  .wf2-row-count { margin: 0; }
  .wf2-content { display: block; overflow: hidden; }
  .wf2-table-wrap { overflow-x: auto; }
  .wf2-detail { padding: 17px; }
  .wf2-empty-queue { grid-template-columns: 40px 1fr; padding: 22px; }
  .wf2-empty-queue .btn { grid-column: 1 / -1; width: 100%; }
  .wf2-team-roster { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wf2-live-card { min-height: 0; }
  .cleanse-card { padding: 18px; }
  .cleanse-toolbar .form-input { width: 100%; }
  .settings-desk-intro { display: block; margin-bottom: 19px; }
  .settings-desk-trust { margin-top: 14px; }
}

/* ── Graduated Lead Funnel: evidence-led queue ─────────────────────────────
   Mirrors the approved LeadFunnel composition while retaining the live
   Flask data and existing workflow event handlers. */
.wf2-table {
  width: 100%;
  min-width: 780px;
  table-layout: fixed;
}
.wf2-table th:nth-child(1) { width: 28%; }
.wf2-table th:nth-child(2) { width: 24%; }
.wf2-table th:nth-child(3) { width: 70px; }
.wf2-table th:nth-child(4) { width: 82px; }
.wf2-table th:nth-child(5) { width: 98px; }
.wf2-table th:nth-child(6) { width: 105px; }
.wf2-table td { vertical-align: middle; }
.wf2-agency {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.wf2-agency > div { min-width: 0; }
.wf2-td-name { overflow-wrap: anywhere; }
.wf2-agency-avatar {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  border-radius: 9px;
  object-fit: cover;
  object-position: center 18%;
}
.wf2-domain {
  margin-top: 3px;
  color: var(--teal);
  font-size: 10px;
  font-weight: 650;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wf2-domain a {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: color-mix(in srgb, currentColor 45%, transparent);
  text-underline-offset: 2px;
}
.wf2-domain a:hover {
  text-decoration-color: currentColor;
}
.wf2-agency-meta {
  margin-top: 7px;
  color: #748684;
  font-size: 10px;
  line-height: 1.35;
}
.wf2-agency-meta strong {
  display: block;
  color: var(--ink);
  font-size: 10px;
}
.wf2-agency-meta span { display: block; }
.wf2-signal-cell { min-width: 0; color: #5f7472; }
.wf2-signal-main {
  color: #536b69;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.wf2-signal-source {
  margin-top: 5px;
  color: #97a5a3;
  font-size: 9px;
  line-height: 1.35;
}
.wf2-signal-source a { color: var(--teal); text-decoration: none; }
.wf2-td-score {
  color: var(--teal-dark);
  font-size: 17px;
  font-weight: 850;
  letter-spacing: -.04em;
}
.wf2-td-score small {
  display: block;
  margin-top: 2px;
  color: #93a09f;
  font-size: 8px;
  font-weight: 600;
  letter-spacing: 0;
}
.wf2-age-pill,
.wf2-owner-pill {
  display: inline-flex;
  align-items: center;
  border: 1px solid #d2e4df;
  border-radius: 20px;
  padding: 5px 8px;
  color: #53706c;
  background: #edf5f3;
  font-size: 9px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}
.wf2-age-pill::before {
  content: "";
  width: 5px;
  height: 5px;
  margin-right: 5px;
  border: 1.5px solid currentColor;
  border-radius: 50%;
}
.wf2-age-pill--fresh {
  color: #257a58;
  border-color: #c5e3cf;
  background: #e7f4eb;
}
.wf2-owner-pill--review {
  color: #a4671d;
  border-color: #efd3a1;
  background: #fff5e6;
}
.wf2-owner-pill--rowan {
  color: #6855a8;
  border-color: #d9d0f2;
  background: #f1edfb;
}
.wf2-owner-pill--contact-needed {
  color: #0e7490;
  border-color: #bae6fd;
  background: #f0f9ff;
}
.wf2-owner-pill--ready {
  color: #257a58;
  border-color: #c5e3cf;
  background: #e7f4eb;
}
.wf2-owner-pill--rejected {
  color: #9b5b50;
  border-color: #ead5d0;
  background: #fff6f3;
}
.wf2-row-open {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 30px;
  padding: 0 9px;
  border: 1px solid #d6e2df;
  border-radius: 8px;
  color: #657b77;
  background: #f8fbfa;
  font: inherit;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.1;
  white-space: nowrap;
  cursor: pointer;
}
.wf2-row-open:hover { color: var(--teal-dark); background: #edf5f2; }
.wf2-row-open--review {
  color: #8a5a1f;
  border-color: #e8ce9c;
  background: #fff8ec;
}
.wf2-row-open--review:hover {
  color: #704410;
  border-color: #d9b873;
  background: #fff2dc;
}

.wf2-detail { color: var(--ink); }
.wf2-detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}
.wf2-detail-kicker {
  margin-bottom: 5px;
  color: var(--teal);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.wf2-detail-website { margin-top: 4px; font-size: 10px; }
.wf2-detail-website a { color: var(--teal); text-decoration: none; }
.wf2-detail-website span { color: #97a4a2; }
.wf2-detail-close {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 8px;
  color: #81918f;
  background: #f2f6f4;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
}
.wf2-detail-agent {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 17px 0;
  padding: 10px;
  border: 1px solid #f1dfba;
  border-radius: 9px;
  color: #805b26;
  background: #fbf5e9;
  font-size: 10px;
  line-height: 1.45;
}
.wf2-detail-agent img {
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  border-radius: 9px;
}
.wf2-detail-agent span { display: block; }
.wf2-detail-agent b { display: block; color: currentColor; font-size: 10px; }
.wf2-detail-agent--rowan,
.wf2-detail-agent--ready {
  color: #5f4d9c;
  border-color: #ded5f2;
  background: #f5f2fb;
}
.wf2-detail-agent--found {
  color: #176c67;
  border-color: #cfe5df;
  background: #f0f8f5;
}
.wf2-detail-agent--rejected {
  color: #925d52;
  border-color: #ead5d0;
  background: #fff7f4;
}
.wf2-detail-section-label {
  margin: 18px 0 8px;
  color: #8a9a99;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.wf2-detail-why {
  margin: 0;
  color: #5d7271;
  font-size: 11px;
  line-height: 1.65;
}
.wf2-detail-evidence {
  display: flex;
  gap: 10px;
  padding: 10px 0;
  border-top: 1px solid #edf2f0;
}
.wf2-detail-evidence:first-of-type { border-top: 0; }
.wf2-evidence-icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 16px;
  height: 16px;
  margin-top: 1px;
  border: 1px solid #5fa18b;
  border-radius: 50%;
  color: #257a58;
  font-size: 9px;
  font-weight: 900;
}
.wf2-detail-evidence strong {
  display: block;
  color: var(--ink);
  font-size: 10px;
}
.wf2-detail-evidence div > span {
  display: block;
  margin-top: 3px;
  color: #879695;
  font-size: 9px;
  line-height: 1.45;
}
.wf2-detail-evidence a { color: var(--teal); text-decoration: none; }
.wf2-detail-metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 4px;
}
.wf2-detail-metric {
  padding: 10px;
  border: 1px solid #e4eeea;
  border-radius: 9px;
  background: #f7faf8;
}
.wf2-detail-metric label {
  display: block;
  color: #8a9a98;
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.wf2-detail-metric strong {
  display: block;
  margin-top: 5px;
  color: var(--ink);
  font-size: 11px;
}
.wf2-detail-metric em {
  display: block;
  margin-top: 3px;
  color: #a26d26;
  font-size: 9px;
  font-style: normal;
}
.wf2-detail-metric em.is-good { color: #257a58; }
.wf2-size-reason {
  margin: 8px 2px 0;
  color: #83918f;
  font-size: 9px;
  line-height: 1.45;
}
.wf2-detail-contact-summary {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  border: 1px solid #d9ebe1;
  border-radius: 9px;
  background: #f2faf5;
}
.wf2-detail-contact {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 10px;
  align-items: center;
  padding: 11px 12px;
  border: 1px solid #d9ebe1;
  border-radius: 9px;
  background: #f2faf5;
}
.wf2-detail-contact + .wf2-detail-contact { margin-top: 7px; }
.wf2-detail-contact--held { border-color: #eadfcd; background: #fff9ef; }
.wf2-contact-icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #257a58;
  background: #dcefe4;
  font-size: 13px;
  font-weight: 900;
}
.wf2-detail-contact-summary strong,
.wf2-detail-contact-name { display: block; color: var(--ink); font-size: 10px; }
.wf2-detail-contact-summary div > span,
.wf2-detail-contact-title { display: block; margin-top: 2px; color: #81918d; font-size: 9px; }
.wf2-detail-contact-main { min-width: 0; }
.wf2-detail-contact-name { font-size: 11px; font-weight: 750; }
.wf2-detail-contact-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 3px 8px;
  margin-top: 3px;
  color: #647773;
  font-size: 9px;
  line-height: 1.35;
}
.wf2-detail-contact-meta span + span::before {
  content: '·';
  margin-right: 8px;
  color: #9aaba6;
}
.wf2-detail-contact-links {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  margin-top: 1px;
  font-size: 9px;
}
.wf2-detail-contact-links a { color: var(--teal); }
.wf2-detail-contact .contact-quality {
  margin: 0;
  padding: 5px 7px;
  border-radius: 999px;
  font-size: 8px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .02em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
.wf2-detail-contact .contact-quality--ok {
  color: #176b4f;
  background: #d9f3e5;
  border: 1px solid #a9dec3;
}
.wf2-detail-contact .contact-quality--held {
  color: #9b2634;
  background: #fee5e7;
  border: 1px solid #f2b8bf;
  white-space: normal;
}
.wf2-detail-contact--held .contact-quality { grid-column: 1 / -1; justify-self: start; }
.wf2-detail-input {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 9px 10px;
  border: 1px solid #cbdcd7;
  border-radius: 8px;
  color: var(--ink);
  background: #fff;
  font: inherit;
  font-size: 11px;
}
.wf2-detail-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 18px;
}
.wf2-approval-effect {
  display: grid;
  gap: 3px;
  margin-top: 16px;
  padding: 11px 12px;
  border: 1px solid #cce2d9;
  border-radius: 9px;
  color: #607972;
  background: #f1f8f5;
  font-size: 9px;
  line-height: 1.5;
}
.wf2-approval-effect strong { color: var(--teal-dark); font-size: 10px; }
.wf2-detail-btn {
  min-height: 37px;
  padding: 8px 9px;
  font-size: 10px;
  font-weight: 800;
}
.wf2-detail-btn--primary {
  grid-column: 1 / -1;
  color: #fff;
  border-color: var(--teal);
  background: var(--teal);
}
.wf2-detail-btn--primary:hover { background: var(--teal-dark); }
.wf2-sf-review {
  width: 100%;
  margin-top: 12px;
  padding: 4px;
  border: 0;
  color: #849391;
  background: transparent;
  font: inherit;
  font-size: 9px;
  cursor: pointer;
}
.wf2-sf-review:hover { color: var(--teal-dark); }
.wf2-sf-review span { color: #a0aaa9; }
.wf2-nora-note {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 15px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
  color: #879594;
  font-size: 9px;
  line-height: 1.4;
}
.wf2-nora-note img {
  width: 25px;
  height: 25px;
  border-radius: 8px;
  object-fit: cover;
  object-position: center 18%;
}
.wf2-nora-note strong { display: block; color: #667976; font-size: 9px; }

@media (max-width: 700px) {
  .wf2-table-wrap { padding: 0; overflow: visible; background: transparent; }
  .wf2-table,
  .wf2-table tbody {
    display: block;
    width: 100%;
    min-width: 0;
  }
  .wf2-table thead { display: none; }
  .wf2-table tbody tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    margin: 0;
    padding: 16px;
    border-bottom: 1px solid #edf2f0;
    background: #fff;
  }
  .wf2-table tbody tr:last-child { border-bottom: 0; }
  .wf2-table tbody tr.wf2-row-active {
    background: #f2f9f5 !important;
    box-shadow: inset 3px 0 0 var(--teal);
  }
  .wf2-table td {
    display: block;
    width: auto;
    padding: 0;
    border: 0;
  }
  .wf2-table td.wf2-empty-cell {
    grid-column: 1 / -1;
    grid-row: 1;
  }
  .wf2-table td:nth-child(1) { grid-column: 1; grid-row: 1; }
  .wf2-table td:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
  .wf2-table td:nth-child(3) { grid-column: 2; grid-row: 1; text-align: right; }
  .wf2-table td:nth-child(4) { grid-column: 1; grid-row: 3; }
  .wf2-table td:nth-child(5) { grid-column: 1; grid-row: 4; }
  .wf2-table td:nth-child(6) { grid-column: 2; grid-row: 4; }
  .wf2-signal-main { margin-top: 2px; }
  .wf2-detail { border-radius: 0 0 13px 13px; }
  .wf2-detail-metrics { grid-template-columns: 1fr; }
}

/* ── Lead Funnel structural graduation v29 ────────────────────────────────
   The signed-in workspace now follows the approved mockup as a composition,
   rather than restyling the former dashboard container. */
#tab-workflow:not(.active) { display: none; }
#tab-pipeline { display: none !important; }

.lf-top {
  height: 68px;
  padding: 0 clamp(18px, 4vw, 52px);
}
.lf-nav {
  gap: 24px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.lf-nav button {
  appearance: none;
  padding: 8px 0;
  border: 0;
  color: #819093;
  background: transparent;
  font: inherit;
  font-size: 11px;
  font-weight: 650;
  cursor: pointer;
}
.lf-nav button:hover,
.lf-nav button.active,
.lf-nav-first[aria-expanded="true"] {
  color: var(--teal-dark);
}
.lf-user {
  gap: 8px;
}
.lf-user-sdr {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #849492;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.lf-user-sdr .customer-select {
  width: 126px;
  height: 32px;
  padding: 0 25px 0 9px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background-color: #fff;
  font-size: 10px;
  font-weight: 650;
}
.lf-user-identity {
  min-width: 86px;
  max-width: 150px;
  overflow: hidden;
  text-align: right;
}
.lf-user-identity span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.lf-user-avatar,
.lf-user-action {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 29px;
  height: 29px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: var(--teal-dark);
  background: #dceee7;
  font: inherit;
  font-size: 9px;
  font-weight: 850;
  cursor: pointer;
}
.lf-user-action {
  width: 24px;
  height: 24px;
  border: 1px solid var(--line);
  border-radius: 7px;
  color: #748785;
  background: #fff;
  font-size: 14px;
}
.lf-user-action--danger { color: #a35b4d; }
.lf-user-avatar:hover,
.lf-user-action:hover { box-shadow: 0 0 0 2px rgba(17,124,118,.12); }

.main {
  max-width: 1360px;
  padding: 38px clamp(18px, 4vw, 52px) 70px;
}
#tab-workflow {
  display: block;
  margin-top: 0;
}
.wf2-header {
  padding-bottom: 0;
}
.wf2-crumb {
  margin-bottom: 24px;
  font-size: 11px;
}
.wf2-title-row {
  gap: 30px;
}
.wf2-trust-note {
  display: flex;
  align-items: center;
  gap: 7px;
  align-self: flex-end;
  margin-bottom: 5px;
  color: #778a89;
  font-size: 11px;
  font-weight: 600;
}
.wf2-trust-note svg {
  flex: 0 0 auto;
  color: var(--teal);
}

.wf2-funnel {
  grid-template-columns: 1.25fr repeat(4, minmax(0, 1fr));
}
.wf2-funnel-bar { margin-top: 22px; }
.wf2-funnel-btn {
  position: relative;
  min-height: 86px;
  padding: 15px 16px;
  text-align: left;
  transition: transform .15s, border-color .15s, box-shadow .15s;
}
.wf2-funnel-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 5px 17px rgba(36,81,75,.06);
}
.wf2-funnel-btn--review .wf2-funnel-count,
.wf2-funnel-btn--review .wf2-funnel-label { color: #bf7b25; }
.wf2-funnel-btn--verified .wf2-funnel-count,
.wf2-funnel-btn--verified .wf2-funnel-label { color: #6855a8; }
.wf2-funnel-btn--contact-needed .wf2-funnel-count,
.wf2-funnel-btn--contact-needed .wf2-funnel-label { color: #0e7490; }
.wf2-funnel-btn--ready .wf2-funnel-count,
.wf2-funnel-btn--ready .wf2-funnel-label { color: #257a58; }
.wf2-funnel-spin {
  position: absolute;
  top: 13px;
  right: 13px;
}
.wf2-approval-guide {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  margin-top: 12px;
  padding: 14px 16px;
  border: 1px solid #e6c889;
  border-radius: 12px;
  background: linear-gradient(135deg, #fff9ed, #fffdf8);
}
.wf2-approval-guide[hidden] { display: none; }
.wf2-approval-guide-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: #fff;
  background: #bf7b25;
  font-size: 16px;
  font-weight: 900;
}
.wf2-approval-guide-copy > span {
  display: block;
  color: #a46c28;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.wf2-approval-guide-copy strong {
  display: block;
  margin-top: 3px;
  color: #5d4523;
  font-size: 12px;
}
.wf2-approval-guide-copy p {
  margin: 3px 0 0;
  color: #796343;
  font-size: 10px;
  line-height: 1.5;
}
.wf2-approval-guide-copy p b { color: #654b25; }
.wf2-approval-guide-steps {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  max-width: 350px;
}
.wf2-approval-guide-steps span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 7px;
  border: 1px solid #edd8ab;
  border-radius: 999px;
  color: #725b37;
  background: rgba(255,255,255,.72);
  font-size: 8px;
  font-weight: 750;
  white-space: nowrap;
}
.wf2-approval-guide-steps b {
  display: grid;
  place-items: center;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  color: #fff;
  background: #bf7b25;
  font-size: 8px;
}
.wf2-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 0 0;
}
.wf2-paused-card {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: 14px;
  padding: 12px 14px;
  border: 1px solid #d7e1df;
  border-radius: 12px;
  background: #f8fbfa;
}
.wf2-paused-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  border-radius: 10px;
  color: #55706d;
  background: #e8f0ee;
}
.wf2-paused-copy {
  min-width: 0;
  flex: 1;
}
.wf2-paused-copy strong,
.wf2-paused-copy span {
  display: block;
}
.wf2-paused-copy strong {
  color: var(--ink);
  font-size: 12px;
}
.wf2-paused-copy span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
}
.wf2-search-shell {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 280px;
  min-height: 38px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 9px;
  color: #98a7a6;
  background: #fff;
}
.wf2-search-input {
  width: 100%;
  min-height: 36px;
  padding: 0;
  border: 0;
  outline: 0;
  color: var(--ink);
  background: transparent;
  font: inherit;
  font-size: 11px;
}
.wf2-search-input:focus {
  border: 0;
  box-shadow: none;
}
.wf2-tool {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 38px;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 9px;
  color: #687b7b;
  background: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 650;
  cursor: pointer;
}
.wf2-tool:hover {
  color: var(--teal-dark);
  border-color: #9dcac1;
}
.wf2-tool--primary {
  color: #fff;
  border-color: var(--teal);
  background: var(--teal);
}
.wf2-tool--primary:hover {
  color: #fff;
  border-color: var(--teal-dark);
  background: var(--teal-dark);
}
.wf2-tool--salesforce {
  color: #176d9c;
  border-color: #b8dce9;
  background: #f2f9fc;
}
.wf2-tool--salesforce:hover {
  color: #0e577e;
  border-color: #83c2dc;
  background: #e5f4fa;
}
.wf2-row-count {
  color: #96a2a2;
  font-size: 10px;
}
.wf2-filter-panel {
  display: flex;
  grid-column: 1 / -1;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid #d6e8e1;
  border-radius: 10px;
  color: #70827f;
  background: #edf5f1;
  font-size: 10px;
}
.wf2-filter-panel select {
  min-height: 33px;
  padding: 0 30px 0 10px;
  border: 1px solid #cfe0da;
  border-radius: 7px;
  color: var(--ink);
  background-color: #fff;
  font: inherit;
  font-size: 11px;
}

.wf2-content {
  align-items: start;
  gap: 16px;
  overflow: visible;
  min-height: 390px;
  margin-top: 14px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.wf2-table-wrap {
  overflow-x: auto;
  overflow-y: hidden;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: none;
}
.wf2-detail {
  position: sticky;
  top: 88px;
  min-height: 390px;
  max-height: calc(100vh - 108px);
  overflow-y: auto;
  border: 1px solid #cfe1dc;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(32,77,71,.06);
}
.wf2-table thead tr {
  background: #f8fbf9;
}
.wf2-table tbody tr {
  cursor: pointer;
  transition: background .15s, transform .15s;
}
.wf2-table tbody tr.wf2-row-active {
  background: #f5faf7 !important;
}
@media (max-width: 1180px) {
  .wf2-content { grid-template-columns: 1fr; }
  .wf2-detail {
    position: static;
    max-height: none;
    border-top: 1px solid var(--line);
    border-left: 0;
  }
}
.wf2-team {
  display: block;
  grid-column: 1 / -1;
  grid-row: 5;
  margin: 0;
  padding: 13px 16px;
  border: 1px solid #d8e7e1;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(23,50,56,.04);
}
.wf2-team-head {
  align-items: center;
  margin-bottom: 10px;
}
.wf2-team-head p {
  max-width: 360px;
  font-size: 10px;
}
.wf2-team h3 {
  font-size: 14px;
}
.wf2-team-roster {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.wf2-team-member {
  min-height: 52px;
  padding: 7px;
  border-color: #e1ebe7;
  border-radius: 10px;
  transition: border-color .15s, background .15s, box-shadow .15s;
}
.wf2-team-member img {
  width: 32px;
  height: 32px;
  border-radius: 9px;
  object-fit: cover;
  object-position: center 18%;
}
.wf2-team-member--active {
  border-color: #8dc9bb;
  background: #f1faf6;
  box-shadow: inset 3px 0 0 var(--teal);
}
.wf2-team-member small {
  line-height: 1.25;
  white-space: normal;
}
.wf2-team--watchlist {
  margin: 0 0 16px;
}
.wf2-team--watchlist .wf2-team-head p {
  display: block;
}
.wf2-live-card {
  min-height: 0;
  margin: 13px 0 0;
  padding: 14px 17px;
}
.wf2-live-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}
.wf2-live-state {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 999px;
  color: rgba(255,255,255,.86);
  background: rgba(255,255,255,.08);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.wf2-live-state--working {
  border-color: rgba(154,234,189,.52);
  color: #c7f5d5;
  background: rgba(58,154,110,.2);
}
.wf2-live-state--recovering {
  border-color: rgba(137,208,226,.55);
  color: #d2f5f7;
  background: rgba(37,124,139,.22);
}
.wf2-live-state--ready {
  border-color: rgba(181,207,201,.38);
  color: #dcece8;
  background: rgba(255,255,255,.06);
}
.wf2-live-search {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid rgba(157,226,188,.58);
  border-radius: 8px;
  color: #fff;
  background: #236b68;
  font: inherit;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}
.wf2-live-search:hover,
.wf2-live-search[aria-expanded="true"] {
  border-color: #b8ecd0;
  background: #2b7d77;
}
.wf2-live-search:focus-visible {
  outline: 3px solid rgba(157,226,188,.42);
  outline-offset: 2px;
}
.wf2-search-panel { margin-top: 10px; }
.wf2-search-prompt { margin-bottom: 13px; }
.wf2-search-prompt span {
  display: block;
  color: var(--teal);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.wf2-search-prompt strong {
  display: block;
  margin-top: 3px;
  color: var(--ink);
  font-size: 15px;
}
.wf2-search-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 13px;
  padding-top: 13px;
  border-top: 1px solid #d8e8e2;
}
.wf2-search-actions > span {
  max-width: 620px;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.5;
}
.wf2-agent-strip,
.wf-progress-area { margin-top: 10px; }
.wf2-ops {
  margin-top: 16px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fbfdfb;
}
.wf2-ops-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  min-height: 48px;
  padding: 11px 15px;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
}
.wf2-ops-summary::-webkit-details-marker { display: none; }
.wf2-ops-summary strong { display: block; font-size: 11px; }
.wf2-ops-summary small {
  display: block;
  margin-top: 2px;
  color: #83918f;
  font-size: 9px;
  font-weight: 500;
}
.wf2-ops-summary svg {
  flex: 0 0 auto;
  color: var(--teal);
  transition: transform .18s ease;
}
.wf2-ops[open] .wf2-ops-summary svg { transform: rotate(180deg); }
.wf2-ops-body {
  display: grid;
  gap: 12px;
  padding: 12px;
  border-top: 1px solid var(--line);
}
.wf2-ops-body > * {
  grid-column: auto !important;
  grid-row: auto !important;
}
.wf2-ops-body > #sfAuditCard { order: 1; }
.wf2-ops-body > .cleanse-card:not(#sfAuditCard) { order: 2; }
.wf2-ops-body > #nightlyCard { order: 3; }
.wf2-ops-body > .wf-diag-panel { order: 4; }
.wf2-ops .nightly-card,
.wf2-ops .cleanse-card,
.wf2-ops .nightly-morning {
  margin: 0;
  box-shadow: none;
}
#sfAuditCard .sf-audit-form {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #cfe3dc;
  border-radius: 11px;
  background: #f4faf7;
}
#sfAuditCard .sf-audit-form h4 {
  margin: 0;
  color: var(--ink);
  font-size: 14px;
}
.sf-audit-form-intro {
  margin: 4px 0 14px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}
.sf-audit-history {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.sf-audit-history .field-label {
  margin: 0;
  white-space: nowrap;
}
.sf-audit-history .field-label span {
  color: var(--muted);
  font-weight: 500;
  text-transform: none;
}
.sf-audit-history .form-select { width: min(300px, 100%); }
.wf2-live-counts {
  flex-wrap: wrap;
}
.wf2-footer {
  margin-top: 10px;
}
.agents-desk-intro {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  max-width: 1100px;
  margin: 25px 0 28px;
}
.agents-desk-kicker {
  color: var(--teal);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.agents-desk-intro h2 {
  margin: 7px 0 9px;
  color: #173b40;
  font-family: "DM Serif Display", Georgia, serif;
  font-size: clamp(38px, 4vw, 53px);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: .95;
}
.agents-desk-intro p {
  max-width: 660px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}
.agents-desk-availability {
  display: flex;
  align-items: center;
  gap: 7px;
  padding-bottom: 3px;
  color: #6c827d;
  font-size: 10px;
  font-weight: 750;
  white-space: nowrap;
}
.agents-desk-availability i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #3a9a6e;
  box-shadow: 0 0 0 3px rgba(58,154,110,.12);
}
.agents-desk-section {
  max-width: 1100px;
  padding-top: 22px;
  border-top: 1px solid var(--line);
}
.agents-desk-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 14px;
}
.agents-desk-section-head h3 {
  margin: 0 0 4px;
  color: #173b40;
  font-size: 15px;
  letter-spacing: -.02em;
}
.agents-desk-section-head p,
.agents-desk-section-head > span {
  margin: 0;
  color: #7c8e8b;
  font-size: 10px;
}
.agents-desk-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.agent-intro-card {
  position: relative;
  overflow: hidden;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 14px;
  color: var(--ink);
  background: #fff;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.agent-intro-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(30,73,69,.09);
}
.agent-intro-card:focus-visible {
  outline: 3px solid rgba(17,124,118,.28);
  outline-offset: 2px;
}
.agent-intro-card--skye { --agent-accent: #2e9f9b; }
.agent-intro-card--ava { --agent-accent: #8d68ba; }
.agent-intro-card--rowan { --agent-accent: #3a9a6e; }
.agent-intro-card--nora { --agent-accent: #5668c5; }
.agent-intro-card.is-selected {
  border-color: var(--agent-accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--agent-accent) 15%, transparent);
}
.agent-intro-photo {
  position: relative;
  display: block;
  height: 178px;
  overflow: hidden;
  border-radius: 9px;
  background: #142b30;
}
.agent-intro-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.agent-intro-photo b {
  position: absolute;
  top: 8px;
  right: 8px;
  padding: 4px 6px;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 12px;
  color: #fff;
  background: color-mix(in srgb, var(--agent-accent) 84%, #142b30);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .06em;
}
.agent-intro-card-body {
  display: block;
  min-height: 76px;
  padding: 11px 2px 2px;
}
.agent-intro-card-body strong {
  display: block;
  color: #19383d;
  font-size: 14px;
  letter-spacing: -.02em;
}
.agent-intro-card-body em {
  display: block;
  margin: 3px 0 8px;
  color: var(--agent-accent);
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
}
.agent-intro-card-body small {
  display: block;
  color: #748486;
  font-size: 10px;
  line-height: 1.35;
}
.agent-intro-check {
  display: none;
  position: absolute;
  right: 18px;
  bottom: 17px;
  width: 19px;
  height: 19px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--agent-accent);
  font-size: 11px;
  font-weight: 900;
}
.agent-intro-card.is-selected .agent-intro-check { display: grid; }
.agent-intro-detail {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr) minmax(205px, .55fr);
  align-items: center;
  gap: 16px;
  margin-top: 17px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
}
.agent-intro-mini {
  width: 62px;
  height: 62px;
  overflow: hidden;
  border-radius: 12px;
  background: #163d41;
}
.agent-intro-mini img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.agent-intro-detail-copy h3 {
  margin: 0 0 4px;
  color: #173b40;
  font-size: 14px;
}
.agent-intro-detail-copy h3 span { color: #758684; font-size: 11px; font-weight: 600; }
.agent-intro-detail-copy p {
  max-width: 610px;
  margin: 0;
  color: #748486;
  font-size: 11px;
  line-height: 1.55;
}
.agent-intro-guardrail {
  padding-left: 17px;
  border-left: 1px solid var(--line);
  color: #56716f;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.5;
}
.agents-desk-note {
  display: flex;
  gap: 9px;
  max-width: 1100px;
  margin-top: 22px;
  padding: 13px 15px;
  border: 1px solid #d8e9e1;
  border-radius: 11px;
  color: #577571;
  background: #eef8f3;
  font-size: 10px;
  line-height: 1.55;
}
.agents-desk-note svg { flex: none; margin-top: 1px; color: #2e8e75; }
.agents-desk-note strong { color: #315d57; }
.settings-layout {
  max-width: 1180px;
  grid-template-columns: minmax(0, 1.25fr) minmax(360px, .95fr);
}
@media (min-width: 701px) and (max-width: 1120px) {
  .lf-top {
    gap: 18px;
    padding-right: 24px;
    padding-left: 24px;
  }
  .lf-brand {
    min-width: 180px;
    flex: 0 1 190px;
  }
  .lf-brand small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .lf-nav { gap: 16px; }
  .lf-user {
    min-width: 0;
    margin-left: auto;
  }
  .lf-user-sdr > span,
  .lf-user-identity,
  .lf-user-action,
  .customer-bar-hint { display: none !important; }
}

@media (max-width: 980px) {
  .lf-user-identity { display: none; }
  .lf-user-action { display: none; }
  .agents-desk-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .agent-intro-photo { height: 210px; }
  .agent-intro-detail {
    grid-template-columns: 58px minmax(0, 1fr);
  }
  .agent-intro-mini { width: 58px; height: 58px; }
  .agent-intro-guardrail {
    grid-column: 2;
    padding-top: 12px;
    padding-left: 0;
    border-top: 1px solid var(--line);
    border-left: 0;
  }
  .wf2-content { grid-template-columns: 1fr; }
  .wf2-detail {
    position: static;
    max-height: none;
    border: 1px solid #cfe1dc;
    border-radius: 14px;
  }
}

@media (min-width: 701px) and (max-width: 860px) {
  .lf-top {
    align-items: center;
    gap: 10px;
    padding-right: 16px;
    padding-left: 16px;
  }
  .lf-brand { min-width: 0; flex: 0 0 auto; }
  .lf-brand small { display: none; }
  .lf-nav {
    order: initial;
    width: auto;
    gap: 10px;
  }
  .lf-nav .tab-btn { flex: 0 0 auto; }
  .lf-nav button { font-size: 10px; }
  .lf-user-sdr .customer-select { width: 112px; }
}

@media (max-width: 700px) {
  .agents-desk-intro { display: block; margin: 22px 0 23px; }
  .agents-desk-availability { margin-top: 14px; }
  .agents-desk-section-head { display: block; }
  .agents-desk-section-head > span { display: none; }
  .agents-desk-grid { gap: 9px; }
  .agent-intro-card { padding: 8px; border-radius: 12px; }
  .agent-intro-photo { height: 145px; }
  .agent-intro-card-body { min-height: 71px; padding-top: 9px; }
  .agent-intro-card-body strong { font-size: 13px; }
  .agent-intro-card-body em { margin-bottom: 6px; }
  .agent-intro-check { right: 14px; bottom: 14px; }
  .agent-intro-detail { gap: 12px; padding: 14px; }
  .agent-intro-detail-copy h3 span { display: block; margin-top: 2px; }
  .agents-desk-note { margin-top: 16px; }
  .lf-top {
    align-items: center;
    flex-wrap: wrap;
    height: auto;
    min-height: 60px;
    padding: 9px 14px 8px;
  }
  .lf-brand small { display: none; }
  .lf-nav {
    order: 3;
    display: flex;
    justify-content: flex-start;
    width: 100%;
    gap: 6px;
    padding-top: 5px;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .lf-nav::-webkit-scrollbar { display: none; }
  .lf-nav .tab-btn {
    flex: 0 0 auto;
    min-height: 30px;
    padding: 6px 9px;
    font-size: 9px;
    white-space: nowrap;
  }
  .lf-user {
    display: flex;
    margin-left: auto;
  }
  .lf-user-sdr > span { display: none; }
  .lf-user-sdr .customer-select {
    width: 112px;
    height: 31px;
  }
  .main {
    padding: 25px 14px 45px;
  }
  .wf2-crumb { margin-bottom: 20px; }
  .wf2-title-row { display: block; }
  .wf2-trust-note {
    margin: 15px 0 0;
    white-space: normal;
  }
  .wf2-funnel {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wf2-funnel-btn:first-child {
    grid-column: 1 / -1;
  }
  .wf2-approval-guide {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
  }
  .wf2-approval-guide-steps {
    grid-column: 1 / -1;
    justify-content: flex-start;
    max-width: none;
  }
  .wf2-toolbar {
    align-items: stretch;
    padding-top: 13px;
  }
  .wf2-search-shell {
    flex: 1 0 100%;
    width: 100%;
  }
  .wf2-tool {
    flex: 1 1 auto;
  }
  .wf2-tool--primary {
    flex-basis: 100%;
  }
  .wf2-row-count {
    width: 100%;
    margin: 3px 0 0;
  }
  .wf2-filter-panel {
    flex-wrap: wrap;
  }
  .wf2-filter-panel select {
    flex: 1;
    min-width: 150px;
  }
  .wf2-content {
    display: grid;
    gap: 12px;
    overflow: visible;
  }
  .wf2-table-wrap {
    overflow-x: auto;
    border-radius: 14px;
  }
  .wf2-detail {
    padding: 17px;
    border-radius: 14px;
  }
  .wf2-live-card {
    display: block;
    padding: 14px;
  }
  .wf2-live-main { align-items: flex-start; flex-wrap: wrap; }
  .wf2-live-copy { min-width: 180px; }
  .wf2-live-actions {
    width: 100%;
    margin: 3px 0 0 52px;
  }
  .wf2-live-search { min-height: 34px; }
  .wf2-live-counts { gap: 7px 13px; }
  .wf2-live-recent { white-space: normal; }
  .wf2-search-grid { grid-template-columns: 1fr; }
  .wf2-search-actions { align-items: stretch; flex-direction: column; }
  .wf2-search-actions .wf2-tool { width: 100%; }
  .wf2-empty-queue {
    grid-template-columns: 40px minmax(0, 1fr);
    min-height: 150px;
    padding: 22px 18px;
  }
}
