*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --bg: #061426;
  --bg2: #0b1d33;
  --bg3: #102944;
  --bg4: #153755;
  --border: #1c3c5e;
  --border2: #28557d;
  --text: #f4f9ff;
  --text2: #a9bfd4;
  --text3: #718ba5;
  --accent: #22b8f0;
  --accent2: #087fce;
  --green: #4caf7d;
  --green-bg: #1a2e22;
  --amber: #e8a030;
  --amber-bg: #2a2010;
  --red: #e05555;
  --red-bg: #2a1515;
  --blue: #22b8f0;
  --blue-bg: #0b2b46;
  --theme-accent-1: #22b8f0;
  --theme-accent-2: #4caf7d;
  --theme-accent-3: #e8a030;
  --theme-accent-4: #e05555;
  --theme-accent-strength-1: 50%;
  --theme-accent-strength-2: 50%;
  --theme-accent-strength-3: 50%;
  --theme-accent-strength-4: 50%;
  --border-subtle: var(--border);
  --text-primary: var(--text);
  --text-secondary: var(--text2);
  --surface-2: var(--bg3);
  --surface-raised: var(--bg2);

  --font: 'Manrope', system-ui, sans-serif;
  --mono: 'IBM Plex Mono', monospace;
  /* BB-065 — Typography Standard v1. These are the only application text
     sizes. Component styles consume semantic tokens; instrument artwork is
     explicitly carved out at the end of this file. */
  --text-hero: 3rem;
  --text-heading: 1.75rem;
  --text-card: 1.1875rem;
  --text-body: 1rem;
  --text-small: 0.875rem;
  --text-label: 0.75rem;
  /* One radius source of truth — these carry the values the cockpit layer
     used to re-declare in its own :root. */
  --radius: 11px;
  --radius-lg: 17px;

  /* ── Shared DailyFlo system tokens ──
     Theme-ready surface for the future Gauge Garage: accents, glow, type
     scale and control spacing live here, not per page. */
  --magenta: #c95df0;
  --magenta-bg: #26102e;
  --glow-electric: rgba(0, 139, 255, .22);
  --glow-teal: rgba(28, 225, 207, .35);
  --glow-red: rgba(255, 81, 78, .35);
  --glow-amber: rgba(255, 196, 71, .3);
  --gap-controls: 12px;
  --gap-cards: 14px;
  --fs-page-title: 24px;
  --fs-section-title: 17px;
  --fs-card-title: 15px;
  --fs-body: 15px;
  --fs-body-2: 14px;
  --fs-helper: 12.5px;
  --fs-meta: 11.5px;

  /* THESE TWO WERE NEVER DEFINED, AND EVERY USE SILENTLY FELL BACK TO LIGHT MODE.
   *
   * 26 rules across Staged Candidates, the setter playbook and the call panel ask
   * for var(--card-bg) and var(--muted). With the variables absent,
   * the browser took the fallbacks: WHITE cards inside a #0f0f0f app, carrying text
   * that inherits --text (#f0ede8, nearly white). Business name, phone, email,
   * screening status, owner and next action were all near-white on white.
   *
   * That is why the cards read as "too light". It was never a colour choice — the
   * variables simply did not exist. Defining them here repairs every one of those
   * rules at once and keeps the cards in the same family as .lead-card (--bg3). */
  --card-bg: #102944;
  --muted: #9bb3ca;
  /* --text-muted is the SAME undefined-variable bug: used across the entire
     setter card (.setter-sub, .setter-attempt-due, .setter-window, .setter-k,
     .setter-facts, .setter-reason) and it was never in :root either, so those
     rules were all falling back to their light-mode literal (#6b7280) on this
     dark card. Aliased to --muted rather than re-hardcoded, so the two stay in
     sync — they are the same concept under two names left by different rules. */
  --text-muted: var(--muted);

  /* Same class of bug as --card-bg / --muted / --text-muted: three tokens used in
     style.css without :root definitions. --gold already appears as the literal
     fallback #e8b84b (and matching rgba(232,184,75,...)) on package badges and
     matches package.html / playbook.html / checklist.html. --text1 and --bg1 are
     naming leftovers for primary text and elevated input fill; alias to the
     established dark-theme tokens so handoff / HQ inputs keep their intended look. */
  --gold: #e8b84b;
  --text1: var(--text);
  --bg1: var(--bg3);
}

html, body { height: 100%; background: var(--bg); color: var(--text); font-family: var(--font); font-size: var(--text-body); }
body { background-image: radial-gradient(circle at 12% -10%, rgba(34,184,240,.14), transparent 32%), linear-gradient(180deg, #071a2e 0%, #061426 48%, #05101f 100%); }
#app { height: 100vh; display: flex; flex-direction: column; overflow: hidden; }

/* ── Topbar ── */
.topbar {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 20px; height: 52px; border-bottom: 1px solid var(--border);
  background: rgba(6,20,38,.92); flex-shrink: 0;
  box-shadow: 0 8px 30px rgba(0,0,0,.2); backdrop-filter: blur(18px);
}
.topbar-brand { display:flex; align-items:center; gap:10px; min-width:max-content; }
.dailyflo-wordmark { font-size:18px; font-weight:700; letter-spacing:-.035em; color:#f8fbff; }
.dailyflo-wordmark span { color:#57aede; font-size:.72em; letter-spacing:-.02em; }
.dailyflo-mark { position:relative; width:29px; height:23px; display:inline-block; transform:skewX(-14deg); filter:drop-shadow(0 0 9px rgba(34,184,240,.28)); }
.dailyflo-mark i { position:absolute; left:0; height:5px; border-radius:2px 5px 5px 2px; transform:rotate(-13deg); transform-origin:right center; }
.dailyflo-mark i:nth-child(1) { width:28px; top:1px; background:linear-gradient(90deg,#143f7d,#26ced4); }
.dailyflo-mark i:nth-child(2) { width:23px; top:9px; background:linear-gradient(90deg,#1754a2,#169bd8); }
.dailyflo-mark i:nth-child(3) { width:18px; top:17px; background:linear-gradient(90deg,#24457d,#2f78b8); }
.topbar-brand .ver-badge { font-family:var(--mono); font-size:9px; font-weight:700; color:var(--text3); letter-spacing:.02em; background:rgba(255,255,255,.04); border:1px solid var(--border); border-radius:20px; padding:2px 6px; }
/* Version badge — reliable CSS hover tooltip (native title was flaky) + click-to-toast fallback in JS. */
.ver-badge { position: relative; cursor: help; }
.topbar-preview-identity{display:grid!important;gap:1px;max-width:390px;padding:4px 9px;border:1px solid rgba(240,185,90,.45);border-radius:8px;background:rgba(240,185,90,.08);line-height:1.15}.topbar-preview-identity b{color:#ffd17d;font-size:10px!important;letter-spacing:.12em!important}.topbar-preview-identity small{overflow:hidden;color:#d6b979!important;font:700 9px var(--mono)!important;letter-spacing:0!important;text-overflow:ellipsis;text-transform:none!important;white-space:nowrap}
.ver-badge:hover::after {
  content: attr(data-full);
  position: absolute; top: 150%; left: 0;
  background: var(--bg2, #1b2338); color: var(--text, #e6ebf5);
  border: 1px solid var(--border, #2a3350);
  padding: 5px 9px; border-radius: 6px; font-size: 11px; font-weight: 600;
  letter-spacing: 0.02em; white-space: nowrap; z-index: 200;
  box-shadow: 0 6px 18px rgba(0,0,0,.28);
}
.topbar-right { display: flex; gap: 8px; align-items: center; }
.topbar-account { display: flex; align-items: center; gap: 8px; padding-right: 10px; margin-right: 2px; border-right: 1px solid var(--border); }

/* ── Owner-presence indicator (2026-07-27) ── */
/* Deliberately calm: --blue, not --red/--gold — a status note, not a warning. */
.owner-presence-pill { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 600; color: var(--blue); background: var(--blue-bg); border: 1px solid rgba(91,155,213,0.35); border-radius: 20px; padding: 3px 10px 3px 8px; white-space: nowrap; }
.owner-presence-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--blue); flex: none; animation: owner-presence-pulse 2.2s ease-in-out infinite; }
@keyframes owner-presence-pulse {
  0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(91,155,213,0.45); }
  50%      { opacity: 0.55; box-shadow: 0 0 0 4px rgba(91,155,213,0); }
}
@media (prefers-reduced-motion: reduce) {
  .owner-presence-dot { animation: none; }
}

/* ── Global Lead Search / Caller Lookup ── */
.gsearch { position: relative; display: flex; align-items: center; gap: 8px; background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius-lg); padding: 0 10px; height: 34px; min-width: 200px; }
.topbar .gsearch { flex: 1 1 auto; max-width: 460px; margin: 0 20px; }
.gsearch:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(232,213,163,0.14); }
.gsearch-ico { font-size: 13px; opacity: 0.6; flex: none; }
.gsearch-input { flex: 1 1 auto; min-width: 0; border: none; outline: none; background: transparent; color: var(--text); font-size: 13px; font-family: var(--font); }
.gsearch-input::placeholder { color: var(--text3); }
.gsearch-clear { flex: none; border: none; background: transparent; color: var(--text3); cursor: pointer; font-size: 13px; line-height: 1; padding: 3px 5px; border-radius: 5px; }
.gsearch-clear:hover { background: var(--bg3); color: var(--text); }
.gsearch-results { position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius-lg); box-shadow: 0 14px 38px rgba(0,0,0,0.5); max-height: 62vh; overflow-y: auto; z-index: 1200; padding: 6px; }
.gsearch-big { height: 44px; min-width: 260px; max-width: 620px; }
.gsearch-big .gsearch-input { font-size: 14.5px; }
.gsearch-big .gsearch-ico { font-size: 15px; }
.pipeline-topbar { margin: 0 0 14px; }
.gsearch-row { padding: 9px 11px; border-radius: 8px; cursor: pointer; display: grid; grid-template-columns: 1fr auto; grid-template-areas: "top owner" "sub owner"; gap: 2px 12px; align-items: center; }
.gsearch-row:hover, .gsearch-row.active { background: var(--bg3); }
.gsearch-row-top { grid-area: top; display: flex; align-items: center; gap: 8px; min-width: 0; }
.gsearch-biz { font-weight: 600; font-size: 13.5px; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gsearch-stage { flex: none; font-size: 10.5px; font-weight: 600; color: var(--accent); background: var(--bg4); border-radius: 20px; padding: 2px 9px; white-space: nowrap; }
.gsearch-row-sub { grid-area: sub; font-size: 12px; color: var(--text2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gsearch-row-owner { grid-area: owner; font-size: 11px; color: var(--text3); white-space: nowrap; align-self: center; }
.gsearch-dot { opacity: 0.5; margin: 0 3px; }
.gsearch-dim { color: var(--text3); }
.gsearch-empty { padding: 15px 13px; color: var(--text2); font-size: 13px; display: flex; flex-direction: column; gap: 4px; }
.gsearch-empty-hint { font-size: 11.5px; color: var(--text3); }
.gsearch-count { padding: 7px 11px 4px; font-size: 10.5px; color: var(--text3); border-top: 1px solid var(--border); margin-top: 4px; }
@media (max-width: 720px) {
  .topbar { flex-wrap: wrap; height: auto; padding: 8px 14px; }
  .topbar .gsearch { order: 3; flex-basis: 100%; max-width: none; margin: 8px 0 2px; }
  .gsearch-results { max-height: 55vh; }
}
.topbar-email { font-family: var(--mono); font-size: 11.5px; color: var(--text2); max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.topbar-user { font-size: 12.5px; font-weight: 600; color: var(--text); white-space: nowrap; }

/* ── Nav tabs ── */
.nav-tabs { display: flex; gap: 5px; padding: 0 20px; border-bottom: 1px solid var(--border); background: rgba(6,20,38,.76); flex-shrink: 0; overflow-x: auto; scrollbar-width: thin; }
.nav-tab { padding: 10px 12px; cursor: pointer; font-size: 12.5px; color: var(--text2); background: none; border: none; border-bottom: 2px solid transparent; margin-bottom: -1px; font-family: var(--font); transition: color 0.15s; white-space: nowrap; }
.nav-tab:hover { color: var(--text); }
.nav-tab.active { color: #fff; border-bottom-color: var(--accent); text-shadow:0 0 18px rgba(34,184,240,.45); }
.nav-tabs--primary { gap: 6px; padding-top: 3px; }
.nav-tabs--primary .nav-tab { font-size: 13px; font-weight: 700; padding: 11px 14px; }
.nav-tabs--secondary { background: color-mix(in srgb, var(--bg) 88%, var(--surface)); border-bottom-color: var(--border); }
.nav-tabs--secondary .nav-tab { padding-top: 8px; padding-bottom: 8px; font-size: 12px; }

/* ── Buttons ── */
.btn { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border: 1px solid var(--border2); border-radius: var(--radius); background: transparent; color: var(--text); cursor: pointer; font-size: 13px; font-family: var(--font); transition: background 0.15s, border-color 0.15s; white-space: nowrap; }
.btn:hover { background: var(--bg3); border-color: var(--border2); }
.btn:active { transform: scale(0.98); }
.btn:disabled { opacity: 0.35; cursor: not-allowed; pointer-events: none; }
.btn-accent { background: var(--accent2); color: #0f0f0f; border-color: var(--accent2); font-weight: 500; }
.btn-accent:hover { background: var(--accent); border-color: var(--accent); color: #0f0f0f; }
.btn-danger { color: var(--red); border-color: #3a2020; }
.btn-danger:hover { background: var(--red-bg); }
.btn-sm { padding: 4px 10px; font-size: 12px; }
.btn-xs { padding: 2px 7px; font-size: 10px; line-height: 1.4; }
.btn-icon { padding: 6px; border-radius: var(--radius); }

/* ── Pipeline ── */
.pipeline-wrap { display: flex; gap: 10px; padding: 16px; overflow-x: auto; flex: 1; align-items: flex-start; }
.pipeline-col { flex-shrink: 0; width: 200px; background: var(--bg2); border-radius: var(--radius-lg); border: 1px solid var(--border); display: flex; flex-direction: column; max-height: calc(100vh - 130px); }
.col-header { padding: 10px 12px; border-bottom: 1px solid var(--border); display: flex; align-items: center; justify-content: space-between; flex-shrink: 0; }
.col-label { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text2); }
.col-count { font-family: var(--mono); font-size: 11px; color: var(--text3); background: var(--bg3); padding: 1px 7px; border-radius: 10px; }
.col-cards { overflow-y: auto; padding: 8px; display: flex; flex-direction: column; gap: 6px; flex: 1; }

/* ── Lead Card ── */
.lead-card { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px; cursor: pointer; transition: border-color 0.15s, background 0.15s; }
.lead-card:hover { border-color: var(--border2); background: var(--bg4); }
.lead-card.overdue { border-left: 3px solid var(--red); }
.card-name { font-size: 13px; font-weight: 500; margin-bottom: 3px; line-height: 1.3; }
.card-meta { font-size: 11px; color: var(--text2); margin-bottom: 6px; }
.card-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 4px; }
.score-badge { font-family: var(--mono); font-size: 11px; font-weight: 500; padding: 2px 7px; border-radius: 4px; }
.score-high { background: var(--green-bg); color: var(--green); }
.score-med { background: var(--amber-bg); color: var(--amber); }
.score-low { background: var(--red-bg); color: var(--red); }
.no-website-tag { font-size: 10px; background: var(--blue-bg); color: var(--blue); padding: 2px 6px; border-radius: 3px; font-weight: 500; }
.followup-flag { font-size: 10px; color: var(--red); display: flex; align-items: center; gap: 3px; }
.task-indicator { font-size: 10px; color: var(--text3); display: flex; align-items: center; gap: 3px; }

/* ── Tasks View ── */
/* THE APP'S ONE VERTICAL SCROLL SURFACE.
 *
 * #app is height:100vh + overflow:hidden, so the window never scrolls — this
 * flex child is what actually moves. `min-height: 0` is not decoration: a flex
 * item defaults to min-height:auto, which refuses to shrink below its content
 * and can leave overflow-y:auto with nothing to scroll. Without it the surface
 * is one browser quirk away from clipping instead of scrolling. */
.view-wrap { flex: 1 1 auto; min-height: 0; overflow-y: auto; overflow-x: hidden;
  padding: 20px; -webkit-overflow-scrolling: touch; overscroll-behavior-y: contain; }
/* The setter desk supplies its own max-width and padding, so the wrapper adds
   only the scrolling. Doubling the padding would just push the last card
   further out of reach. */
.view-wrap.setter-view { padding: 0; }
.view-wrap h2 { font-size: 16px; font-weight: 500; margin-bottom: 16px; color: var(--text); }

/* ── Lead Engine V1.2 — Filter bar, sorting, result counter ── */
.opp-filter-bar { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; margin-bottom: 12px; padding: 12px; background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius-lg); }
.opp-filter-group { display: flex; flex-direction: column; gap: 4px; min-width: 150px; flex: 1; }
.opp-filter-group label { font-size: 11px; font-weight: 600; color: var(--text3); text-transform: uppercase; letter-spacing: 0.05em; }
.opp-filter-group select { width: 100%; padding: 7px 10px; font-size: 13px; }
.opp-filter-reset-group { flex: 0 0 auto; min-width: 0; }
.opp-filter-reset-group button { white-space: nowrap; }
.opp-filter-reset-group button:disabled { opacity: 0.4; cursor: default; }
.opp-result-count { font-size: 12px; color: var(--text3); font-family: var(--mono); margin-bottom: 12px; }
.opp-empty-state { text-align: center; padding: 32px 20px; color: var(--text3); background: var(--bg2); border: 1px dashed var(--border); border-radius: var(--radius-lg); margin-bottom: 12px; }
.opp-empty-state p { margin-bottom: 12px; font-size: 13px; }

@media (max-width: 720px) {
  .opp-filter-bar { flex-direction: column; align-items: stretch; }
  .opp-filter-group { min-width: 0; }
  .opp-filter-reset-group { flex: 1 1 auto; }
  .opp-filter-reset-group label { display: none; }
  .opp-filter-reset-group button { width: 100%; justify-content: center; }
}
.task-row { display: flex; align-items: flex-start; gap: 10px; padding: 12px; background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: 6px; }
.task-row.done { opacity: 0.45; }
.task-row input[type=checkbox] { margin-top: 2px; flex-shrink: 0; accent-color: var(--accent2); width: 15px; height: 15px; cursor: pointer; }
.task-title { font-size: 13px; font-weight: 500; }
.task-due { font-size: 11px; color: var(--text2); margin-top: 2px; }
.task-due.overdue { color: var(--red); }
.task-lead-link { font-size: 11px; color: var(--blue); cursor: pointer; margin-top: 2px; }
.task-lead-link:hover { text-decoration: underline; }
.task-assigned-to { font-size: 11px; color: var(--text3); margin-top: 3px; }

/* ── Ownership visibility ── */
.owner-pill {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 10px; font-weight: 600; color: var(--text3);
  background: var(--bg3); border: 1px solid var(--border);
  border-radius: 20px; padding: 2px 8px;
  margin-top: 4px; margin-bottom: 2px;
}
.owner-pill--today { margin-top: 5px; margin-bottom: 0; }
.owner-pill--modal {
  font-size: 11px; background: var(--bg2);
  border-color: var(--border2); color: var(--text2);
  margin-top: 5px;
}
.modal-owner-row { margin-top: 4px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

/* ── Modal ── */
.overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.65); display: flex; align-items: flex-start; justify-content: center; padding: 32px 16px; z-index: 100; overflow-y: auto; }
.modal { background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius-lg); width: 100%; max-width: 660px; padding: 24px; max-height: calc(100vh - 64px); overflow-y: auto; }
/* v6-75: sticky, compact modal header so identity + contact stay visible on scroll */
.modal-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; margin: -24px -24px 12px; padding: 16px 24px 10px; position: sticky; top: -24px; z-index: 6; background: var(--bg2); border-bottom: 1px solid var(--border2, rgba(255,255,255,0.08)); }
.modal-title { font-size: 19px; font-weight: 600; line-height: 1.2; }
.modal-subtitle { font-size: 13px; color: var(--text2); margin-top: 3px; }
/* v6-75 compact contact strip in the sticky header */
.modal-head-contact { display: flex; flex-wrap: wrap; gap: 5px 12px; margin-top: 7px; font-size: 12.5px; }
.mhc-item { display: inline-flex; align-items: center; gap: 5px; color: var(--text2); text-decoration: none; }
.mhc-item:hover { color: var(--text); }
.mhc-copy { border: 1px solid var(--border); background: var(--bg3); color: var(--text3); border-radius: 4px; font-size: 10px; padding: 1px 6px; cursor: pointer; }
.mhc-copy:hover { color: var(--text); border-color: var(--accent2, #e8b84b); }
/* v6-75: compress modal textareas by default; expand on focus (no data lost) */
.modal textarea { min-height: 40px; }
.modal textarea:focus { min-height: 88px; }
.modal-advanced-research > summary { list-style: none; }
.modal-advanced-research > summary::-webkit-details-marker { display: none; }
/* v6-76: compact collapsible workflow sections in the lead modal */
.modal-collapse { border: 1px solid var(--border2, rgba(255,255,255,0.08)); border-radius: 8px; margin: 8px 0; background: var(--bg3, rgba(255,255,255,0.02)); }
.modal-collapse > summary { cursor: pointer; list-style: none; padding: 9px 12px; font-size: 12.5px; font-weight: 600; color: var(--text2); display: flex; align-items: center; gap: 8px; }
.modal-collapse > summary::-webkit-details-marker { display: none; }
.modal-collapse > summary::before { content: '▸'; color: var(--text3); font-size: 10px; }
.modal-collapse[open] > summary::before { content: '▾'; }
.modal-collapse[open] > summary { border-bottom: 1px solid var(--border2, rgba(255,255,255,0.06)); margin-bottom: 8px; }
.modal-collapse > *:not(summary) { margin-left: 12px; margin-right: 12px; }
.modal-collapse > summary { margin-left: 0; margin-right: 0; }

/* Universal work queue: keep finished history out of the operator's normal
   lane while preserving it one click away. */
.work-filter-bar{display:flex;gap:7px;margin:0 0 12px;padding:6px;overflow-x:auto;border:1px solid #214d6c;border-radius:13px;background:#061a2b}.work-filter{display:flex;align-items:center;gap:8px;min-width:max-content;padding:8px 11px;border:1px solid transparent;border-radius:9px;color:#82a2b8;background:transparent;font:700 9px var(--font);letter-spacing:.04em;cursor:pointer}.work-filter:hover,.work-filter.active{color:#ecfbff;border-color:#287098;background:#0d3352;box-shadow:inset 0 -2px #20d5ef}.work-filter b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:11px;color:#bcecff;background:#133d5b;font-size:8px}.work-filter.active b{color:#001727;background:#28d9ef}

.lead-workbench-drawer{margin:14px 0;border:1px solid #28688d;border-radius:14px;background:linear-gradient(135deg,#0b2b46,#071a2d);overflow:hidden;box-shadow:inset 0 1px rgba(255,255,255,.05),0 12px 25px rgba(0,0,0,.2)}.lead-workbench-drawer>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;cursor:pointer;list-style:none}.lead-workbench-drawer>summary::-webkit-details-marker{display:none}.lead-workbench-drawer>summary span{display:grid;gap:3px}.lead-workbench-drawer>summary b{color:#e8f8ff;font-size:12px}.lead-workbench-drawer>summary small{color:#7899af;font-size:9px}.lead-workbench-drawer>summary i{padding:7px 10px;border:1px solid #2e759c;border-radius:8px;color:#45d8ff;background:#0b3453;font:800 8px var(--font);font-style:normal;text-transform:uppercase;letter-spacing:.06em}.lead-workbench-drawer[open]>summary{border-bottom:1px solid #28688d;box-shadow:inset 3px 0 #1ce1cf}.lead-workbench-drawer[open]>summary i{font-size:0}.lead-workbench-drawer[open]>summary i::after{content:'Close';font-size:8px}.lead-workbench-body{padding:15px 16px 5px}

/* ── Form elements ── */
label { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); margin-bottom: 5px; font-weight: 500; }
input, select, textarea {
  width: 100%; padding: 8px 10px; background: var(--bg3); border: 1px solid var(--border);
  border-radius: var(--radius); color: var(--text); font-size: 13px; font-family: var(--font);
  transition: border-color 0.15s;
}
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--accent2); }
textarea { resize: vertical; min-height: 80px; line-height: 1.5; }
select option { background: var(--bg3); }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
.field-grid.full { grid-template-columns: 1fr; }
.field-grid.three { grid-template-columns: 1fr 1fr 1fr; }

/* ── Follow-up panel ── */
.followup-panel { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 12px; background: var(--bg3); border-radius: var(--radius); border: 1px solid var(--border); margin-bottom: 16px; }
.followup-item label { margin-bottom: 4px; }
.overdue-banner { background: var(--red-bg); border: 1px solid #4a2020; border-radius: var(--radius); padding: 8px 12px; font-size: 12px; color: var(--red); margin-bottom: 12px; display: flex; align-items: center; gap: 6px; }

/* ── Stage control ── */
.stage-control { display: flex; align-items: center; gap: 8px; margin-bottom: 16px; flex-wrap: wrap; }
.stage-badge { padding: 4px 12px; border-radius: 4px; font-size: 12px; font-weight: 600; background: var(--bg4); color: var(--accent); border: 1px solid var(--border2); font-family: var(--mono); }
.stage-select-wrap { flex: 1; min-width: 140px; }
.stage-select-wrap select { font-family: var(--mono); font-size: 12px; }

/* ── Tasks section ── */
.tasks-section { margin-top: 4px; }
.section-header { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text3); margin-bottom: 10px; display: flex; align-items: center; gap: 8px; }
.task-item-modal { display: flex; align-items: flex-start; gap: 8px; padding: 9px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: 5px; }
.task-item-modal.done { opacity: 0.4; }
.task-item-modal input[type=checkbox] { margin-top: 2px; flex-shrink: 0; accent-color: var(--accent2); width: 15px; height: 15px; cursor: pointer; }
.task-item-modal .task-info { flex: 1; }
.task-item-title { font-size: 13px; font-weight: 500; }
.task-item-due { font-size: 11px; color: var(--text2); margin-top: 1px; }
.task-item-due.overdue { color: var(--red); }
.add-task-row { display: flex; gap: 8px; margin-top: 8px; }
.add-task-row input { flex: 2; }
.add-task-row input[type=date] { flex: 1; }

/* ── Mockup placeholder ── */
.mockup-placeholder { border: 1px dashed var(--border2); border-radius: var(--radius); padding: 20px; text-align: center; color: var(--text3); font-size: 13px; margin-bottom: 16px; }
.mockup-placeholder p { margin-bottom: 10px; }

/* ── Modal footer ── */
.modal-footer { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--border); flex-wrap: wrap; gap: 8px; }
.modal-footer-right { display: flex; gap: 8px; }
hr.divider { border: none; border-top: 1px solid var(--border); margin: 18px 0; }

/* ── Modal phase grouping (Sales / Mockup / Onboarding) ── */
.modal-phase { display: flex; align-items: center; gap: 10px; margin: 20px 0 14px; }
.modal-phase-line { flex: 1; height: 1px; background: var(--border2); }
.modal-phase-label { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; color: var(--text3); white-space: nowrap; }
.onboarding-section { border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; margin-bottom: 4px; }
.onboarding-summary { list-style: none; display: flex; align-items: center; justify-content: space-between; padding: 10px 16px; cursor: pointer; user-select: none; background: var(--bg3); }
.onboarding-summary::-webkit-details-marker { display: none; }
.onboarding-body { padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.onboarding-note { font-size: 12px; color: var(--text3); line-height: 1.6; font-style: italic; }
.onboarding-active-badge { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; color: var(--green); background: var(--green-bg); border-radius: 4px; padding: 4px 10px; }
.onboarding-chevron { font-size: 14px; color: var(--text3); transition: transform 0.2s; }
.onboarding-section[open] .onboarding-chevron { transform: rotate(180deg); }

/* Call Coaching drawer — hide the native disclosure triangle and swap the right-side
   Open/Close button via the [open] state (no JS). The button is the obvious opener. */
.call-coaching-drawer > summary { list-style: none; }
.call-coaching-drawer > summary::-webkit-details-marker { display: none; }
.call-coaching-drawer .cc-when-open { display: none; }
.call-coaching-drawer[open] .cc-when-closed { display: none; }
.call-coaching-drawer[open] .cc-when-open { display: inline-flex; }

/* ── Loading / empty states ── */
.loading { display: flex; align-items: center; justify-content: center; padding: 40px; color: var(--text3); font-family: var(--mono); font-size: 13px; }
.empty-col { text-align: center; padding: 20px 10px; font-size: 11px; color: var(--text3); }
.toast { position: fixed; bottom: 20px; right: 20px; background: var(--bg4); border: 1px solid var(--border2); border-radius: var(--radius); padding: 10px 16px; font-size: 13px; z-index: 200; transition: opacity 0.3s; }
.checkbox-label { display: flex; align-items: center; gap: 8px; cursor: pointer; font-size: 13px; color: var(--text); text-transform: none; letter-spacing: 0; font-weight: 400; }
.checkbox-label input[type=checkbox] { width: 15px; height: 15px; accent-color: var(--accent2); }
/* ── Lead Finder ── */
.lf-wrap { padding: 24px; max-width: 700px; }
.lf-header { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 24px; }
.lf-title { font-size: 20px; font-weight: 600; margin-bottom: 3px; }
.lf-subtitle { font-size: 13px; color: var(--text2); }
.lf-session-badge { font-family: var(--mono); font-size: 12px; color: var(--green); background: var(--green-bg); padding: 4px 12px; border-radius: 4px; white-space: nowrap; }

.lf-form { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 20px; margin-bottom: 16px; }
.lf-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
.lf-field-row-three { grid-template-columns: 1fr 1fr 1fr; }
.lf-field-row.full { grid-template-columns: 1fr; }
.lf-field label { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); margin-bottom: 5px; font-weight: 500; }

.lf-website-row { display: flex; align-items: center; gap: 16px; margin-bottom: 18px; flex-wrap: wrap; }
.lf-toggle-label { font-size: 13px; color: var(--text2); }
.lf-toggle-group { display: flex; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.lf-toggle-btn { padding: 7px 18px; background: transparent; border: none; color: var(--text2); cursor: pointer; font-size: 13px; font-family: var(--font); transition: background 0.15s, color 0.15s; }
.lf-toggle-btn:hover { background: var(--bg3); }
.lf-toggle-btn.active-no { background: var(--blue-bg); color: var(--blue); font-weight: 500; }
.lf-toggle-btn.active-yes { background: var(--bg4); color: var(--text); font-weight: 500; }
.lf-actions-top { display: flex; justify-content: flex-end; }
.lf-eval-btn { padding: 9px 24px; font-size: 14px; }

/* Result panel */
.lf-result { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 20px; }
.lf-result-score-row { display: flex; align-items: center; gap: 16px; margin-bottom: 18px; }
.lf-score-number { font-family: var(--mono); font-size: 48px; font-weight: 600; line-height: 1; min-width: 72px; }
.lf-score-number.priority-high { color: var(--green); }
.lf-score-number.priority-med { color: var(--amber); }
.lf-score-number.priority-low { color: var(--red); }
.lf-score-detail { flex: 1; }
.lf-priority-label { font-size: 12px; font-weight: 600; letter-spacing: 0.1em; margin-bottom: 8px; }
.lf-priority-label.priority-high { color: var(--green); }
.lf-priority-label.priority-med { color: var(--amber); }
.lf-priority-label.priority-low { color: var(--red); }
.lf-score-bar-wrap { height: 6px; background: var(--bg4); border-radius: 3px; overflow: hidden; }
.lf-score-bar { height: 100%; border-radius: 3px; transition: width 0.4s ease; }
.lf-score-bar.priority-high { background: var(--green); }
.lf-score-bar.priority-med { background: var(--amber); }
.lf-score-bar.priority-low { background: var(--red); }

.lf-signals { display: flex; flex-direction: column; gap: 7px; margin-bottom: 20px; padding: 14px; background: var(--bg3); border-radius: var(--radius); }
.lf-signal { display: flex; align-items: baseline; gap: 8px; font-size: 13px; }
.lf-signal-icon { font-family: var(--mono); font-size: 12px; font-weight: 600; min-width: 14px; }
.sig-ok { color: var(--green); }
.sig-no { color: var(--red); }
.sig-neutral { color: var(--text3); }
.lf-signal-text { color: var(--text2); line-height: 1.4; }

.lf-result-actions { display: flex; gap: 8px; }
.lf-result-actions .btn-accent { padding: 9px 20px; font-size: 14px; }

/* ── Website Grade Tags ── */
.wg-tag { font-size: 10px; padding: 2px 7px; border-radius: 3px; font-weight: 500; font-family: var(--mono); }
.wg-none    { background: var(--blue-bg);   color: var(--blue); }
.wg-social  { background: var(--blue-bg);   color: var(--blue); }
.wg-poor    { background: var(--red-bg);    color: var(--red); }
.wg-average { background: var(--amber-bg);  color: var(--amber); }
.wg-good    { background: var(--green-bg);  color: var(--green); }

/* ── Website Intelligence + Sales Intelligence ── */
.wi-section { margin: 4px 0 12px; }
.wi-block { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px 16px; }
.wi-section .wi-block { border-radius: var(--radius) var(--radius) 0 0; border-bottom: none; }
.wi-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.wi-title { font-size: 11px; font-weight: 600; color: var(--text2); text-transform: uppercase; letter-spacing: 0.06em; font-family: var(--mono); }
.wi-grade { font-size: 11px; font-weight: 600; padding: 3px 8px; border-radius: 4px; font-family: var(--mono); letter-spacing: 0.04em; }
.wi-grade--none { background: rgba(100,160,255,0.1); border: 1px solid rgba(100,160,255,0.2); color: #7aacff; }
.wi-grade--weak { background: rgba(255,100,100,0.1); border: 1px solid rgba(255,100,100,0.2); color: #ff7070; }
.wi-grade--avg  { background: rgba(232,184,75,0.1);  border: 1px solid rgba(232,184,75,0.2);  color: var(--gold); }
.wi-grade--good { background: rgba(80,200,120,0.1);  border: 1px solid rgba(80,200,120,0.2);  color: #60c878; }
.wi-findings { display: flex; flex-direction: column; gap: 8px; }
.wi-finding-label { font-size: 12px; font-weight: 600; color: var(--text); margin-bottom: 2px; }
.wi-finding-tip { font-size: 12px; color: var(--text3); font-style: italic; line-height: 1.45; }
.wi-no-findings { font-size: 12px; color: var(--text3); }
.si-block { background: var(--bg3); border: 1px solid var(--border); border-top: 1px solid var(--border2); border-radius: 0 0 var(--radius) var(--radius); padding: 14px 16px; }
.si-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.si-title { font-size: 11px; font-weight: 600; color: var(--text2); text-transform: uppercase; letter-spacing: 0.06em; font-family: var(--mono); }
.si-focus { font-size: 10px; font-weight: 600; padding: 2px 7px; border-radius: 3px; font-family: var(--mono); letter-spacing: 0.04em; background: rgba(232,184,75,0.1); border: 1px solid rgba(232,184,75,0.2); color: var(--gold); }
.si-opening { font-size: 13px; color: var(--text); line-height: 1.5; font-style: italic; margin-bottom: 10px; padding: 10px 12px; background: rgba(255,255,255,0.03); border-left: 2px solid var(--accent2); border-radius: 0 4px 4px 0; }
.si-points-label { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text3); margin-bottom: 6px; font-family: var(--mono); }
.si-points { display: flex; flex-direction: column; gap: 4px; }
.si-point { font-size: 12px; color: var(--text2); display: flex; align-items: flex-start; gap: 6px; }
.si-point::before { content: '·'; color: var(--accent2); flex-shrink: 0; font-weight: 700; }

/* ── Next Action Banner ── */
.next-action-banner { display: flex; align-items: center; gap: 10px; padding: 10px 14px; background: var(--bg3); border: 1px solid var(--border); border-left: 3px solid var(--accent2); border-radius: var(--radius); margin-bottom: 14px; }
.next-action-label { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text3); white-space: nowrap; }
.next-action-text { font-size: 13px; font-weight: 500; color: var(--accent); flex: 1; }
.next-action-custom { font-size: 10px; color: var(--accent2); background: var(--bg4); padding: 2px 6px; border-radius: 3px; font-family: var(--mono); }

/* ── Card additions ── */
.card-status-row { margin-top: 5px; }
.card-next-action { font-size: 10px; color: var(--text3); margin-top: 4px; font-style: italic; }

/* ── Channel Status Badges ── */
.ch-status { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 10px; font-weight: 600; letter-spacing: 0.03em; font-family: var(--mono); }
.cs-email    { background: rgba(74,222,128,0.12); color: var(--green);  border: 1px solid rgba(74,222,128,0.22); }
.cs-sms      { background: rgba(74,222,128,0.08); color: var(--green);  border: 1px solid rgba(74,222,128,0.18); }
.cs-social   { background: rgba(96,165,250,0.12); color: var(--blue);   border: 1px solid rgba(96,165,250,0.22); }
.cs-call     { background: rgba(245,158,11,0.10); color: var(--amber);  border: 1px solid rgba(245,158,11,0.22); }
.cs-research { background: rgba(248,113,113,0.10); color: var(--red);   border: 1px solid rgba(248,113,113,0.22); }
.channel-status-row { margin: -4px 0 12px; }

/* ── Outreach Queue ── */
.oq-wrap { padding: 20px 24px; max-width: 1100px; }
.oq-header { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.oq-stats { display: flex; gap: 12px; margin-left: auto; }
.oq-stat { font-size: 12px; color: var(--text2); }
.oq-stat-action strong { color: var(--green); }
.oq-group { margin-bottom: 28px; }
.oq-group-header { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.oq-group-count { font-size: 11px; color: var(--text3); font-family: var(--mono); }
.oq-table-head { display: grid; grid-template-columns: 2fr 2fr 110px 80px 80px 130px; gap: 8px; padding: 4px 10px; font-size: 10px; color: var(--text3); font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; border-bottom: 1px solid var(--border); }
.oq-row { display: grid; grid-template-columns: 2fr 2fr 110px 80px 80px 130px; gap: 8px; align-items: center; padding: 8px 10px; border-bottom: 1px solid rgba(255,255,255,0.04); cursor: pointer; border-radius: 4px; transition: background 0.1s; }
.oq-row:hover { background: var(--bg2); }
.oq-name { font-weight: 600; font-size: 13px; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.oq-meta { font-size: 12px; color: var(--text2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.oq-contact { font-size: 12px; }
.oq-phone { color: var(--text2); font-family: var(--mono); font-size: 11px; }
.oq-email-val { color: var(--accent2); font-size: 11px; font-family: var(--mono); word-break: break-all; }
.oq-na { color: var(--text3); }
.oq-open-btn { font-size: 11px; padding: 3px 10px; }
.oq-action-btn { font-size: 11px; padding: 3px 10px; }
.oq-action-done { font-size: 11px; color: var(--green); font-weight: 600; font-family: var(--mono); }
.oq-badge { display: inline-block; padding: 1px 7px; border-radius: 3px; font-size: 10px; font-weight: 600; font-family: var(--mono); }
.oq-snap-yes { background: rgba(96,165,250,0.12); color: var(--blue); border: 1px solid rgba(96,165,250,0.22); }
.oq-snap-no  { background: transparent; color: var(--text3); border: 1px solid transparent; }
.oq-sent-yes { background: rgba(74,222,128,0.12); color: var(--green); border: 1px solid rgba(74,222,128,0.22); }
.oq-sent-no  { background: transparent; color: var(--text3); border: 1px solid transparent; }

/* ── Contact Status Tags ── */
.cs-tag { font-size: 10px; padding: 2px 7px; border-radius: 3px; font-weight: 500; font-family: var(--mono); display: inline-block; }
.cs-none         { background: var(--bg4);        color: var(--text3); }
.cs-voicemail    { background: var(--bg4);        color: var(--text2); }
.cs-gatekeeper   { background: var(--amber-bg);   color: var(--amber); }
.cs-dm           { background: var(--blue-bg);    color: var(--blue); }
.cs-interested   { background: var(--green-bg);   color: var(--green); }
.cs-notinterested{ background: var(--red-bg);     color: var(--red); }
.cs-callback     { background: var(--amber-bg);   color: var(--amber); }
.cs-appointment  { background: var(--green-bg);   color: var(--green); }
.cs-proposal     { background: var(--blue-bg);    color: var(--blue); }
.cs-client       { background: #1a2e1a;           color: #6fcf6f; }

/* ── Mockup Panel ── */
.mockup-panel { display: flex; flex-direction: column; gap: 12px; padding: 14px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); }
.mockup-status-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.mockup-status-left { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.mockup-status-badge { font-family: var(--mono); font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 4px; }
.mockup-requested-date { font-size: 11px; color: var(--text3); }
.mockup-status-select { width: auto; padding: 5px 8px; font-size: 12px; font-family: var(--mono); }
.mockup-url-row { display: flex; align-items: center; gap: 8px; padding: 8px 10px; background: var(--bg4); border-radius: var(--radius); font-size: 12px; }
.mockup-url-label { color: var(--text3); white-space: nowrap; }
.mockup-url-link { color: var(--blue); text-decoration: underline; word-break: break-all; }
.mockup-url-link:hover { color: var(--accent); }
.mockup-not-deployed { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: var(--text3); background: var(--bg3); border: 1px dashed var(--border); border-radius: var(--radius); padding: 3px 8px; cursor: default; text-decoration: none; font-style: italic; }

/* ── Deployment Status Badges (V2 Fix #1) ── */
.deploy-badge { display: inline-flex; align-items: center; font-size: 11px; font-weight: 600; letter-spacing: 0.05em; padding: 2px 8px; border-radius: 4px; font-family: var(--mono); white-space: nowrap; }
.deploy-draft     { background: var(--bg4);      color: var(--text3); border: 1px solid var(--border); }
.deploy-building  { background: var(--amber-bg); color: var(--amber); }
.deploy-deploying { background: var(--blue-bg);  color: var(--blue);  }
.deploy-live      { background: var(--green-bg); color: var(--green); }
.deploy-failed    { background: var(--red-bg);   color: var(--red);   }
.deploy-guard-msg { font-size: 11px; color: var(--text3); font-style: italic; margin: 4px 0; }
.deploy-guard-actions { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; margin-top: 4px; }
.deploy-verify-btn { color: var(--blue); border-color: var(--blue-bg); }
.deploy-verify-btn:hover { background: var(--blue-bg); }
.deploy-open-guarded { opacity: 0.45; }
.deploy-open-guarded:hover { opacity: 0.65; }
.prospect-tracking-block { margin-top: 10px; padding: 10px 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); }
.prospect-tracking-title { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); margin-bottom: 8px; }
.prospect-tracking-row { display: flex; justify-content: space-between; align-items: baseline; padding: 3px 0; }
.prospect-tracking-label { font-size: 12px; color: var(--text3); }
.prospect-tracking-value { font-size: 12px; color: var(--text2); font-family: var(--mono); }
.prospect-tracking-active { color: var(--green) !important; font-weight: 700; }
.industry-badge { display: inline-block; font-size: 10px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; border-radius: 4px; padding: 2px 8px; white-space: nowrap; }
.industry-badge-supported { color: var(--green); background: var(--green-bg); }
.industry-badge-fallback  { color: var(--amber); background: var(--amber-bg); }
.industry-badge-mapped    { color: var(--amber); background: var(--amber-bg); }
.industry-badge-blocked   { color: var(--red);   background: var(--red-bg);   }
.industry-fallback-warning { display: flex; align-items: flex-start; gap: 8px; flex-wrap: wrap; padding: 8px 10px; background: var(--amber-bg); border: 1px solid var(--amber); border-radius: var(--radius); margin-top: 6px; }
.industry-fallback-warning:has(.industry-badge-blocked) { background: var(--red-bg); border-color: var(--red); }
.industry-fallback-msg { font-size: 12px; color: var(--text2); line-height: 1.5; }

.mockup-url-edit label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); font-weight: 500; margin-bottom: 5px; display: block; }
.mockup-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.mockup-hint { font-size: 11px; color: var(--text3); font-style: italic; }

/* ── Mockup Timeline ── */
.mockup-timeline { display: flex; flex-direction: column; gap: 4px; padding: 10px 12px; background: var(--bg4); border-radius: var(--radius); }
.mockup-timeline-row { display: flex; align-items: baseline; gap: 10px; font-size: 12px; }
.tl-label { font-family: var(--mono); font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); min-width: 72px; }
.tl-done .tl-label { color: var(--accent2); }
.tl-done .tl-value { color: var(--text); }
.tl-empty .tl-value { color: var(--text3); }

/* ── Follow-Up Indicators ── */
.fu-indicator { font-size: 10px; font-weight: 600; padding: 2px 7px; border-radius: 3px; margin-top: 5px; display: inline-flex; align-items: center; gap: 4px; font-family: var(--mono); }
.fu-indicator-modal { font-size: 12px; font-weight: 600; padding: 6px 12px; border-radius: var(--radius); display: inline-flex; align-items: center; gap: 6px; }
.fu-overdue { background: var(--red-bg);   color: var(--red); }
.fu-today   { background: var(--amber-bg); color: var(--amber); }
.fu-future  { background: var(--green-bg); color: var(--green); }
.fu-none    { background: var(--red-bg);   color: var(--red); font-weight: 600; }

/* ── Lost Reason Dialog ── */
.lost-dialog { margin-top: 16px; padding: 16px; background: var(--red-bg); border: 1px solid #4a2020; border-radius: var(--radius); }
.lost-dialog-title { font-size: 13px; font-weight: 500; color: var(--red); margin-bottom: 10px; }
.lost-dialog select, .lost-dialog textarea { background: var(--bg3); border-color: #4a2020; color: var(--text); }
.lost-dialog-actions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 10px; }

/* ── HOT LEAD ── */
.hot-lead-card { border-left: 3px solid var(--red) !important; background: #1a1410 !important; }
.hot-lead-badge { font-size: 11px; font-weight: 700; color: var(--red); letter-spacing: 0.05em; margin-bottom: 4px; }
.hot-lead-panel-badge { background: var(--red-bg); border: 1px solid #4a2020; border-radius: var(--radius); padding: 8px 12px; font-size: 13px; font-weight: 600; color: var(--red); margin-bottom: 12px; text-align: center; }

/* ── Mockup Status Tags (on cards) ── */
.mockup-status-tag { font-size: 10px; padding: 2px 6px; border-radius: 3px; font-weight: 500; font-family: var(--mono); }
.ms-requested   { background: var(--amber-bg); color: var(--amber); }
.ms-in-progress { background: var(--blue-bg);  color: var(--blue);  }
.ms-ready       { background: var(--blue-bg);  color: var(--blue);  }
.ms-approved    { background: var(--green-bg); color: var(--green); }
.ms-sent        { background: var(--green-bg); color: var(--green); }

/* ── Mockup Panel Updates ── */
.mockup-top-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; flex-wrap: wrap; }
.mockup-candidate-label { display: flex; align-items: center; gap: 7px; font-size: 13px; color: var(--text); cursor: pointer; }
.mockup-candidate-label input[type=checkbox] { width: 15px; height: 15px; accent-color: var(--accent2); }
.mockup-grade-row { margin-bottom: 12px; }
.grade-btn { padding: 5px 12px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--bg4); color: var(--text2); cursor: pointer; font-size: 13px; font-weight: 500; font-family: var(--mono); transition: all 0.15s; }
.grade-btn:hover { border-color: var(--border2); color: var(--text); }
.grade-btn.grade-active { border-width: 2px; color: #0f0f0f; }
.grade-btn.grade-active.wg-good    { background: var(--green); border-color: var(--green); }
.grade-btn.grade-active.wg-average { background: var(--amber); border-color: var(--amber); }
.grade-btn.grade-active.wg-poor    { background: var(--red);   border-color: var(--red);   }
.grade-btn.grade-active.wg-none    { background: var(--text3); border-color: var(--text3); }
.grade-evidence { margin-top: 10px; padding: 10px 12px; border-radius: var(--radius); border-left: 3px solid var(--border2); }
.grade-evidence[data-wg="wg-none"]    { background: var(--blue-bg);  border-left-color: var(--blue); }
.grade-evidence[data-wg="wg-poor"]    { background: var(--red-bg);   border-left-color: var(--red); }
.grade-evidence[data-wg="wg-average"] { background: var(--amber-bg); border-left-color: var(--amber); }
.grade-evidence[data-wg="wg-good"]    { background: var(--green-bg); border-left-color: var(--green); }
.grade-evidence-hd { font-size: 10px; text-transform: uppercase; letter-spacing: 0.07em; font-weight: 700; color: var(--text3); margin-bottom: 6px; }
.grade-evidence-item { font-size: 12px; color: var(--text2); padding: 2px 0; line-height: 1.5; }
.grade-evidence-item::before { content: '•'; margin-right: 6px; }
.grade-evidence[data-wg="wg-none"]    .grade-evidence-item::before { color: var(--blue); }
.grade-evidence[data-wg="wg-poor"]    .grade-evidence-item::before { color: var(--red); }
.grade-evidence[data-wg="wg-average"] .grade-evidence-item::before { color: var(--amber); }
.grade-evidence[data-wg="wg-good"]    .grade-evidence-item::before { color: var(--green); }

/* ── Website Sales Intelligence Panel ── */
.grade-intel-panel { margin-top: 12px; padding: 12px 14px; border-radius: var(--radius); border-left: 3px solid var(--border2); }
.grade-intel-panel[data-wg="wg-none"]    { background: var(--blue-bg);  border-left-color: var(--blue); }
.grade-intel-panel[data-wg="wg-social"]  { background: var(--blue-bg);  border-left-color: var(--blue); }
.grade-intel-panel[data-wg="wg-poor"]    { background: var(--red-bg);   border-left-color: var(--red); }
.grade-intel-panel[data-wg="wg-average"] { background: var(--amber-bg); border-left-color: var(--amber); }
.grade-intel-panel[data-wg="wg-good"]    { background: var(--green-bg); border-left-color: var(--green); }
.grade-intel-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.grade-intel-label { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: var(--text3); }
.grade-intel-opportunity { font-size: 13px; font-weight: 600; color: var(--text); margin-bottom: 10px; line-height: 1.4; }
.grade-intel-section-hd { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); margin: 9px 0 4px; }
.grade-intel-bullets { margin-bottom: 2px; }
.grade-intel-bullet { font-size: 12px; color: var(--text2); padding: 2px 0; line-height: 1.5; }
.grade-intel-bullet::before { content: '•'; margin-right: 6px; }
.grade-intel-panel[data-wg="wg-none"]    .grade-intel-bullet::before,
.grade-intel-panel[data-wg="wg-social"]  .grade-intel-bullet::before { color: var(--blue); }
.grade-intel-panel[data-wg="wg-poor"]    .grade-intel-bullet::before { color: var(--red); }
.grade-intel-panel[data-wg="wg-average"] .grade-intel-bullet::before { color: var(--amber); }
.grade-intel-panel[data-wg="wg-good"]    .grade-intel-bullet::before { color: var(--green); }
.grade-intel-opener { font-size: 12px; color: var(--text2); font-style: italic; line-height: 1.6; background: var(--bg3); border-radius: var(--radius); padding: 8px 10px; margin-bottom: 2px; }
.grade-intel-strategy { font-size: 12px; color: var(--text2); line-height: 1.6; }
/* Sales Coaching (V2.3) — diagnosis→say tracks inside the blue grade-intel card */
.sales-coaching { margin: 4px 0 12px; }
.sc-tracks { display: flex; flex-direction: column; gap: 8px; margin-bottom: 2px; }
.sc-track { background: var(--bg3); border-radius: var(--radius); padding: 8px 10px; }
.sc-dx { font-size: 11px; font-weight: 700; color: var(--text2); margin-bottom: 4px; }
.sc-say { font-size: 12px; color: var(--text); font-style: italic; line-height: 1.55; }
.sc-grade-row { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 2px; }
.grade-btn.grade-active.wg-social { background: var(--blue); border-color: var(--blue); }

/* ── Email status badge (Contact Intelligence Engine V1) ── */
.email-status-badge { display: inline-block; font-size: 9.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; padding: 1px 6px; border-radius: 20px; margin-left: 4px; vertical-align: middle; }
.email-status--verified_email { color: var(--green); background: var(--green-bg); }
.email-status--possible_email_needs_review { color: var(--amber); background: var(--amber-bg); }
.email-status--no_email_found { color: var(--text3); background: var(--bg4); }
.email-status--do_not_send { color: var(--red); background: var(--red-bg); }

/* ── Find Social & Owner V1 ── */
.fs-panel { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 14px; margin: 2px 0 14px; }
.fs-head { font-size: 12px; font-weight: 700; color: var(--text); margin-bottom: 10px; }
.fs-head .fs-sub { font-weight: 400; text-transform: none; letter-spacing: 0; color: var(--text3); font-size: 11px; margin-left: 6px; }
.fs-links { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.fs-link { font-size: 11.5px; font-weight: 600; color: var(--accent); background: var(--bg4); border: 1px solid var(--border); border-radius: 20px; padding: 4px 10px; text-decoration: none; white-space: nowrap; }
.fs-link:hover { border-color: var(--border2); background: var(--bg2); }
.fs-badges { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.fs-badge { font-size: 10.5px; font-weight: 600; color: var(--text3); background: var(--bg4); border: 1px solid var(--border); border-radius: 20px; padding: 2px 9px; }
.fs-badge--on { color: var(--green); background: var(--green-bg); border-color: transparent; }
.fs-badge--opp { color: var(--accent); background: var(--bg2); border-color: var(--border2); }
.fs-copy-btn { background: var(--bg4); flex-shrink: 0; }
.fs-dnc { font-size: 12px; color: var(--red); font-weight: 600; }
.fs-warn { font-size: 12px; color: var(--amber); background: var(--amber-bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 8px 10px; line-height: 1.5; }
.fs-msg-label { font-size: 11px; font-weight: 700; color: var(--text2); margin-bottom: 8px; }
.fs-msg-sub { font-weight: 400; color: var(--text3); }
.fs-msgs { display: flex; flex-direction: column; gap: 8px; }
.fs-msg { background: var(--bg4); border: 1px solid var(--border); border-radius: var(--radius); padding: 9px 11px; }
.fs-msg-head { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; }
.fs-msg-name { font-size: 11px; font-weight: 700; color: var(--text); }
.fs-msg-tag { font-size: 10px; font-weight: 600; color: var(--green); background: var(--green-bg); border-radius: 20px; padding: 1px 7px; }
.fs-msg-head .fs-copy-btn { margin-left: auto; }
.fs-msg-body { font-size: 12px; color: var(--text2); line-height: 1.55; white-space: pre-wrap; }
.fs-sent-row { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.fs-sent-label { font-size: 11px; color: var(--text3); font-weight: 600; }
.fs-sent-btn { background: var(--bg4); color: var(--green); }
.fs-sent-done { font-size: 12px; font-weight: 600; color: var(--green); margin-top: 8px; }
/* Contact-channel summary strip */
.fs-channels { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.fs-chan { display: inline-flex; align-items: center; gap: 5px; background: var(--bg4); border: 1px solid var(--border); border-radius: 20px; padding: 2px 9px; }
.fs-chan-k { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); }
.fs-chan-v { font-size: 11px; font-weight: 600; color: var(--text2); }
.fs-chan--ok { color: var(--green); }
.fs-chan--warn { color: var(--amber); }
.fs-chan--bad { color: var(--red); }
.fs-chan--info { color: var(--accent); }
.fs-chan--muted { color: var(--text3); }
.fs-note-row { display: flex; gap: 8px; margin-top: 10px; }
.fs-note-input { flex: 1; padding: 7px 10px; background: var(--bg4); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); font-size: 12px; }
.fs-note-input:focus { outline: none; border-color: var(--border2); }

/* ── Lost Lead Archive (Lost Column Cleanup Patch) ── */
.col-archive-controls { display: flex; flex-wrap: wrap; gap: 5px; padding: 0 0 8px; }
.archived-badge { display: inline-block; font-size: 10px; font-weight: 600; color: var(--text3); background: var(--bg4); border: 1px solid var(--border); border-radius: 4px; padding: 1px 6px; margin-bottom: 5px; }

/* ── Contact Actions (Outreach Stabilization #8) ── */
.fs-act-label { font-size: 11px; font-weight: 700; color: var(--text2); margin: 12px 0 8px; text-transform: uppercase; letter-spacing: 0.04em; }
.fs-acts { display: flex; flex-wrap: wrap; gap: 6px; }
.fs-act-btn { background: var(--bg4); }
.fs-act-btn:disabled { opacity: 0.45; cursor: not-allowed; }
.fs-act-danger { color: var(--red); border-color: #3a2020; }
.fs-act-danger:hover { background: var(--red-bg); }
.fs-act-hint { font-size: 12px; color: var(--text3); }
.fs-act-note { font-size: 11px; color: var(--amber); margin-top: 7px; line-height: 1.5; }

/* ── Email Verified popup + Initial Email preview (Outreach Stabilization #4/#5) ── */
.email-overlay { z-index: 200; align-items: center; }
.email-pop { background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius-lg); width: 100%; max-width: 420px; padding: 26px 24px; text-align: center; }
.email-pop-icon { width: 46px; height: 46px; margin: 0 auto 12px; border-radius: 50%; background: var(--green-bg); color: var(--green); font-size: 24px; line-height: 46px; font-weight: 700; }
.email-pop-title { font-size: 18px; font-weight: 700; color: var(--text); margin-bottom: 6px; }
.email-pop-msg { font-size: 13px; color: var(--text2); line-height: 1.55; margin-bottom: 18px; }
.email-pop-actions { display: flex; flex-direction: column; gap: 8px; }
.email-pop-gate { font-size: 11px; color: var(--amber); margin-top: 12px; line-height: 1.5; }
.email-preview { background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius-lg); width: 100%; max-width: 640px; max-height: calc(100vh - 64px); overflow-y: auto; padding: 20px 22px; }

/* ── In-App Lead Email composer ── */
.lec { background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius-lg); width: 100%; max-width: 560px; max-height: calc(100vh - 60px); overflow-y: auto; padding: 20px 22px; display: flex; flex-direction: column; gap: 12px; }
.lec-head { display: flex; justify-content: space-between; align-items: center; font-size: 16px; font-weight: 600; color: var(--text); }
.lec-meta { display: flex; flex-direction: column; gap: 6px; }
.lec-from { font-size: 12px; color: var(--text2); }
.lec-from strong { color: var(--text); }
.lec-field { display: flex; flex-direction: column; gap: 4px; }
.lec-k { font-size: 11px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: var(--text3); }
.lec-to, .lec-subject, .lec-tpl, .lec-body { background: var(--bg); border: 1px solid var(--border2); border-radius: var(--radius); color: var(--text); font-family: var(--font); font-size: 14px; padding: 9px 11px; width: 100%; }
.lec-to:focus, .lec-subject:focus, .lec-tpl:focus, .lec-body:focus { outline: none; border-color: var(--accent); }
.lec-to[readonly] { color: var(--text2); }
.lec-body { resize: vertical; min-height: 160px; line-height: 1.55; }
.lec-noemail { background: var(--red-bg); color: var(--red); border-radius: var(--radius); padding: 8px 11px; font-size: 12.5px; }
.lec-note { font-size: 11.5px; color: var(--text3); }
.lec-status { font-size: 13px; padding: 8px 11px; border-radius: var(--radius); }
.lec-status.lec-sending { background: var(--bg3); color: var(--text2); }
.lec-status.lec-ok { background: var(--green-bg); color: var(--green); }
.lec-status.lec-err { background: var(--red-bg); color: var(--red); }
.lec-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 2px; }
.email-preview-head { display: flex; justify-content: space-between; align-items: center; font-size: 16px; font-weight: 700; color: var(--text); margin-bottom: 14px; }
.email-preview-meta { background: var(--bg4); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; margin-bottom: 14px; }
.ep-row { display: flex; gap: 10px; font-size: 12px; padding: 3px 0; }
.ep-k { flex-shrink: 0; width: 84px; color: var(--text3); font-weight: 600; text-transform: uppercase; font-size: 10px; letter-spacing: 0.04em; padding-top: 2px; }
.ep-v { color: var(--text2); word-break: break-word; }
.email-preview-body { border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; margin-bottom: 14px; background: #f4f6f9; }
.email-preview-actions { display: flex; gap: 8px; justify-content: flex-end; }

/* ── Fulfillment Board ── */
.fulfill-board-wrap { flex: 1; overflow: hidden; display: flex; flex-direction: column; }
.fulfill-board-header { padding: 20px 24px 14px; border-bottom: 1px solid var(--border); flex-shrink: 0; }
.fulfill-board-title { font-size: 17px; font-weight: 700; color: var(--text); }
.fulfill-board-sub { font-size: 12px; color: var(--text3); margin-top: 2px; }
.fulfill-board { display: flex; gap: 10px; padding: 16px 20px 20px; overflow-x: auto; flex: 1; align-items: flex-start; }
.fulfill-col { min-width: 195px; max-width: 220px; flex-shrink: 0; }
.fulfill-col-header { display: flex; align-items: center; justify-content: space-between; padding: 7px 10px; border-radius: var(--radius) var(--radius) 0 0; background: var(--bg3); border: 1px solid var(--border); border-bottom: none; }
.fulfill-col-label { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text2); }
.fulfill-col-count { font-size: 10px; font-weight: 700; color: var(--text3); background: var(--bg4); border-radius: 10px; padding: 1px 6px; }
.fulfill-col-cards { background: var(--bg3); border: 1px solid var(--border); border-radius: 0 0 var(--radius) var(--radius); padding: 8px; display: flex; flex-direction: column; gap: 7px; min-height: 56px; }
.fulfill-empty { font-size: 12px; color: var(--text3); text-align: center; padding: 14px 0; }
.fulfill-card { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 11px 12px; cursor: pointer; transition: border-color 0.15s, box-shadow 0.15s; }
.fulfill-card:hover { border-color: var(--border2); box-shadow: 0 2px 8px rgba(0,0,0,0.12); }
.fulfill-card-name { font-size: 13px; font-weight: 700; color: var(--text); margin-bottom: 2px; line-height: 1.3; }
.fulfill-card-meta { font-size: 11px; color: var(--text3); margin-bottom: 6px; }
.fulfill-card-footer { display: flex; align-items: center; gap: 7px; margin-top: 7px; flex-wrap: wrap; }
.fulfill-tasks { font-size: 10px; color: var(--text3); }
.fulfill-live-link { font-size: 10px; color: var(--green); font-weight: 600; }
.fulfill-launched-badge { font-size: 11px; font-weight: 700; color: var(--green); margin-top: 6px; }
.fulfill-advance-btn { margin-top: 8px; width: 100%; font-size: 11px; padding: 5px 8px; }

/* Builder pill (parallels owner-pill) */
.builder-pill { display: inline-flex; align-items: center; gap: 4px; font-size: 10px; font-weight: 600; color: var(--text3); background: var(--bg3); border: 1px solid var(--border); border-radius: 20px; padding: 2px 8px; margin-top: 3px; }
.builder-pill--empty { font-style: italic; opacity: 0.7; }
.build-days-badge { font-size: 10px; font-weight: 700; color: var(--text3); background: var(--bg4); border-radius: 10px; padding: 2px 7px; font-family: var(--mono, monospace); }

/* Build status badges */
.bs-badge { display: inline-block; padding: 2px 9px; border-radius: 12px; font-size: 11px; font-weight: 600; white-space: nowrap; }
.bs-kickoff        { background: rgba(59,130,246,0.12);  color: var(--accent2); border: 1px solid rgba(59,130,246,0.2); }
.bs-accepted       { background: rgba(56,189,248,0.14);  color: #38bdf8;        border: 1px solid rgba(56,189,248,0.28); }
.bs-building       { background: rgba(99,102,241,0.12);  color: #818cf8;        border: 1px solid rgba(99,102,241,0.2); }
.bs-review         { background: rgba(234,179,8,0.12);   color: #c9a500;        border: 1px solid rgba(234,179,8,0.2);  }
.bs-client         { background: rgba(234,179,8,0.12);   color: #c9a500;        border: 1px solid rgba(234,179,8,0.2);  }
.bs-revisions      { background: rgba(239,68,68,0.12);   color: var(--red);     border: 1px solid rgba(239,68,68,0.2);  }
.bs-prelaunch      { background: rgba(20,184,166,0.12);  color: #14b8a6;        border: 1px solid rgba(20,184,166,0.2); }
.bs-launched       { background: rgba(34,197,94,0.12);   color: var(--green);   border: 1px solid rgba(34,197,94,0.2);  }

/* Production section in lead modal */
.prod-section { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 14px; margin-top: 10px; }
.prod-section-hd { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: var(--text3); margin-bottom: 10px; }

/* ── Production Workspace Overlay ── */
.prod-workspace { max-width: 780px; width: 100%; max-height: 90vh; overflow-y: auto; }
/* Workspace header (v6-57 hotfix): a calm 3-tier hierarchy instead of two
   crammed flex columns. Row 1 = breadcrumb + close. Row 2 = title + status meta.
   Row 3 = grouped action buttons. Scoped to the workspace only. */
.pw-header { display: block; margin-bottom: 18px; }
.pw-header-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.pw-header-main { margin: 8px 0 12px; }
.pw-header-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pw-header-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding-top: 12px; border-top: 1px solid var(--border); }
.pw-header-actions .pw-readiness-badge { margin-right: auto; }
.pw-section { padding: 16px 0; border-bottom: 1px solid var(--border); }
.pw-section:last-child { border-bottom: none; padding-bottom: 8px; }
.pw-section-hd { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: var(--text3); margin-bottom: 12px; }
.pw-section-hd-row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.pw-row-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 10px; }
.pw-row-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; margin-bottom: 10px; }
.pw-input { width: 100%; padding: 8px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); font-size: 13px; }
.pw-input:focus { outline: none; border-color: var(--border2); }
.pw-readonly { padding: 8px 10px; background: var(--bg4); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text2); font-size: 13px; }
/* Production Checklist */
.pw-check-progress { font-size: 12px; font-weight: 700; color: var(--text3); font-family: var(--mono, monospace); }
.pw-check-bar-wrap { height: 4px; background: var(--bg4); border-radius: 2px; margin-bottom: 12px; overflow: hidden; }
.pw-check-bar { height: 100%; background: var(--green); border-radius: 2px; transition: width 0.3s; }
.pw-checklist { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; }
.pw-check-item { display: flex; align-items: center; gap: 8px; cursor: pointer; padding: 4px 0; }
.pw-check-item input[type="checkbox"] { width: 15px; height: 15px; flex-shrink: 0; accent-color: var(--green); cursor: pointer; }
.pw-check-label { font-size: 13px; color: var(--text2); transition: color 0.15s; }
.pw-check-done { color: var(--text3); text-decoration: line-through; }
/* Production Workspace header shortcuts (Open Mockup / Open Snapshot) */
.pw-shortcut { font-size: 11px; font-weight: 600; color: var(--accent); background: var(--bg3); border: 1px solid var(--border); border-radius: 20px; padding: 3px 10px; white-space: nowrap; text-decoration: none; }
.pw-shortcut:hover { border-color: var(--border2); background: var(--bg4); }
/* Customer Change Requests (Production Customer Change Log V1) */
.cr-add { display: flex; gap: 8px; align-items: flex-start; margin-bottom: 12px; }
.cr-add-input { flex: 1; min-height: 38px; padding: 8px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); font-size: 13px; resize: vertical; }
.cr-add-input:focus { outline: none; border-color: var(--border2); }
.cr-add-btn { flex-shrink: 0; }
.cr-empty { font-size: 12px; color: var(--text3); font-style: italic; padding: 6px 0; }
.cr-list { display: flex; flex-direction: column; gap: 10px; }
.cr-item { border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; background: var(--bg2); }
.cr-item--closed { opacity: 0.62; }
.cr-item--closed .cr-text { text-decoration: line-through; color: var(--text3); }
.cr-item-head { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.cr-badge { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; padding: 2px 8px; border-radius: 20px; white-space: nowrap; }
.cr-status--requested { color: var(--amber); background: var(--amber-bg); }
.cr-status--progress  { color: var(--accent); background: var(--bg4); }
.cr-status--completed { color: var(--green); background: var(--green-bg); }
.cr-status--deferred  { color: var(--text3); background: var(--bg4); }
.cr-status-select { width: auto; flex: 1; max-width: 150px; font-size: 12px; padding: 5px 8px; }
.cr-del { margin-left: auto; flex-shrink: 0; }
.cr-text { font-size: 13px; color: var(--text); line-height: 1.5; margin-bottom: 8px; white-space: pre-wrap; word-break: break-word; }
.cr-note { font-size: 12px; margin-bottom: 8px; }
.cr-meta { font-size: 10px; color: var(--text3); letter-spacing: 0.02em; }
/* Blueprint section */
.pw-blueprint-hint { font-size: 11px; color: var(--text3); margin-bottom: 10px; line-height: 1.5; }
.pw-mono-area { width: 100%; min-height: 160px; padding: 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--mono,'IBM Plex Mono',monospace); font-size: 12px; resize: vertical; line-height: 1.7; }
@media (max-width: 600px) {
  .pw-row-2, .pw-row-3 { grid-template-columns: 1fr; }
  .pw-checklist { grid-template-columns: 1fr; }
}

/* ── Sold Celebration ── */
.sold-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.75); z-index: 300; display: flex; align-items: center; justify-content: center; padding: 20px; }
.sold-box { background: var(--bg2); border: 1px solid var(--accent2); border-radius: var(--radius-lg); padding: 36px 40px; text-align: center; max-width: 380px; width: 100%; position: relative; z-index: 301; animation: sold-pop 0.4s cubic-bezier(0.175,0.885,0.32,1.275); }
@keyframes sold-pop { from { transform: scale(0.6); opacity: 0; } to { transform: scale(1); opacity: 1; } }
.sold-emoji { font-size: 56px; margin-bottom: 12px; }
.sold-title { font-size: 28px; font-weight: 700; color: var(--accent); margin-bottom: 6px; font-family: var(--mono); }
.sold-name { font-size: 16px; font-weight: 500; color: var(--text); margin-bottom: 6px; }
.sold-sub { font-size: 13px; color: var(--text2); margin-bottom: 24px; }

/* ── Mockup Panel V2 ── */
.mockup-header-row { display: flex; gap: 16px; flex-wrap: wrap; margin-bottom: 14px; padding: 12px; background: var(--bg4); border-radius: var(--radius); }
.mockup-indicator { display: flex; flex-direction: column; gap: 4px; min-width: 100px; }
.mockup-ind-label { font-size: 10px; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); font-weight: 600; }
.mockup-ind-value { font-size: 13px; font-weight: 600; font-family: var(--mono); }
.mockup-ind-select { font-size: 11px; padding: 2px 4px; margin-top: 2px; width: auto; }
.ind-yes  { color: var(--green); }
.ind-no   { color: var(--red); }
.ind-undecided { color: var(--text3); }

/* Re-request overdue button */
.mockup-request-btn  { background: var(--accent2) !important; color: #0f0f0f !important; border-color: var(--accent2) !important; }
.mockup-rerequest-btn { border-color: var(--amber) !important; color: var(--amber) !important; }
.mockup-overdue-btn { background: var(--red-bg) !important; border-color: var(--red) !important; color: var(--red) !important; animation: overdue-pulse 1.6s ease-in-out infinite; }
@keyframes overdue-pulse { 0%,100% { opacity: 1; box-shadow: 0 0 0 0 rgba(224,85,85,0); } 50% { opacity: 0.85; box-shadow: 0 0 0 4px rgba(224,85,85,0.25); } }

/* ── Mockup Panel Steps ── */
.mockup-step { margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--border); }
.mockup-step:last-of-type { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
.mockup-step-label { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: var(--text3); margin-bottom: 2px; }

/* ── Mockup Board Cards ── */
.mockup-board-card { cursor: pointer; }
/* Prospect-requested mockup = hot buyer signal → urgent red treatment. */
.mockup-board-card.prospect-requested {
  border-color: var(--red);
  box-shadow: 0 0 0 1px var(--red), 0 0 14px rgba(224,85,85,0.30);
}
.prospect-mockup-alert {
  display: flex; flex-direction: column; gap: 2px;
  background: var(--red-bg); border: 1px solid var(--red); color: #ff8a8a;
  font-weight: 700; font-size: 12px; line-height: 1.25;
  border-radius: 6px; padding: 7px 9px; margin-bottom: 8px;
}
.prospect-mockup-alert-sub { font-weight: 600; font-size: 10px; letter-spacing: 0.02em; color: #ffb0b0; }
/* SLA timestamp + live countdown on prospect-requested cards. */
.prospect-mockup-sla { font-weight: 600; font-size: 10px; color: #ffc4c4; margin-top: 3px; }
.mockup-sla-countdown { font-variant-numeric: tabular-nums; font-weight: 700; }
/* Overdue: stronger red + a SUBTLE slow pulse (no flashing/sirens). */
.prospect-mockup-alert.sla-overdue { background: #3a1414; border-color: #ff5a5a; }
.prospect-mockup-alert.sla-overdue .mockup-sla-countdown,
.mockup-sla-countdown.sla-overdue { color: #ff8a8a; }
.mockup-board-card.sla-overdue { border-color: var(--red); animation: slaPulse 2.4s ease-in-out infinite; }
@keyframes slaPulse {
  0%, 100% { box-shadow: 0 0 0 1px var(--red), 0 0 8px rgba(224,85,85,0.20); }
  50%      { box-shadow: 0 0 0 1px var(--red), 0 0 18px rgba(224,85,85,0.55); }
}
@media (prefers-reduced-motion: reduce) { .mockup-board-card.sla-overdue { animation: none; } }

/* DailyFlo Runway owner control — operational polish before the full UX pass. */
.runway-control {
  --rw-blue: #148cff;
  --rw-cyan: #25d3e5;
  --rw-teal: #35d8b1;
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 22px;
  color: #f5f9ff;
  background:
    radial-gradient(circle at 91% -20%, rgba(37,211,229,.22), transparent 38%),
    linear-gradient(145deg, #071426 0%, #0c2240 54%, #0a3151 100%);
  border: 1px solid rgba(62,179,255,.46);
  border-radius: 16px;
  box-shadow: 0 18px 42px rgba(0,13,31,.28), inset 0 1px 0 rgba(255,255,255,.08);
}
.runway-control::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 54px rgba(39,177,255,.06);
}
.runway-control__searchlight {
  position: absolute;
  z-index: 0;
  top: -150%;
  left: -22%;
  width: 22%;
  height: 390%;
  opacity: .48;
  transform: rotate(21deg);
  background: linear-gradient(90deg, transparent, rgba(98,222,255,.22), transparent);
  animation: runway-searchlight 7s ease-in-out infinite;
  pointer-events: none;
}
@keyframes runway-searchlight {
  0%, 16% { left: -24%; opacity: 0; }
  31% { opacity: .5; }
  70% { left: 112%; opacity: .32; }
  100% { left: 112%; opacity: 0; }
}
.runway-control__header,
.runway-control__body,
.runway-control__footer,
.runway-control__error { position: relative; z-index: 1; }
.runway-control__header,
.runway-control__footer,
.runway-control__identity,
.runway-control__progress-copy,
.runway-control__batch,
.runway-control__safety,
.runway-control__actions { display: flex; align-items: center; }
.runway-control__header { justify-content: space-between; gap: 18px; flex-wrap: wrap; }
.runway-control__identity { gap: 14px; }
.runway-control__mark {
  position: relative;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  filter: drop-shadow(0 6px 14px rgba(17,166,255,.25));
}
.runway-control__mark i {
  position: absolute;
  left: 5px;
  width: 34px;
  height: 8px;
  border-radius: 2px 12px 2px 12px;
  transform: skewX(-28deg) rotate(-18deg);
  background: linear-gradient(90deg, #126cdb, var(--rw-cyan));
}
.runway-control__mark i:nth-child(1) { top: 8px; width: 25px; }
.runway-control__mark i:nth-child(2) { top: 19px; width: 32px; }
.runway-control__mark i:nth-child(3) { top: 30px; width: 39px; }
.runway-control__eyebrow { color: #74cfff; font-size: 11px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.runway-control h3 { margin: 4px 0 0; color: #fff; font-size: 21px; line-height: 1.15; }
.runway-control__identity p { margin: 5px 0 0; color: #a8bdd7; font-size: 12px; }
.runway-control__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 11px;
  color: #9db6d2;
  background: rgba(3,13,28,.55);
  border: 1px solid rgba(117,166,218,.2);
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
}
.runway-control__status-dot { width: 7px; height: 7px; border-radius: 50%; background: #67839e; box-shadow: 0 0 0 4px rgba(103,131,158,.1); }
.runway-control__status.is-ready { color: #7ff0d1; border-color: rgba(53,216,177,.32); }
.runway-control__status.is-ready .runway-control__status-dot { background: var(--rw-teal); box-shadow: 0 0 13px rgba(53,216,177,.8); }
.runway-control__body { display: grid; grid-template-columns: minmax(250px,.9fr) minmax(390px,1.35fr); gap: 13px; margin-top: 18px; }
.runway-control__progress-card,
.runway-control__steps {
  background: linear-gradient(150deg, rgba(4,15,32,.72), rgba(15,48,81,.5));
  border: 1px solid rgba(107,180,248,.16);
  border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.runway-control__progress-card { padding: 15px 16px; }
.runway-control__progress-copy { justify-content: space-between; gap: 15px; }
.runway-control__progress-copy span { display: block; color: #8fa9c5; font-size: 11px; }
.runway-control__progress-copy strong { display: block; margin-top: 3px; color: #fff; font-size: 24px; }
.runway-control__progress-copy strong small { color: #6f8eab; font-size: 13px; }
.runway-control__progress-copy > b { color: #6bdcff; font-size: 18px; }
.runway-control__track { height: 9px; margin: 11px 0 12px; overflow: hidden; background: #03101f; border: 1px solid rgba(255,255,255,.07); border-radius: 999px; }
.runway-control__track span { display: block; height: 100%; min-width: 0; border-radius: inherit; background: linear-gradient(90deg, #137df4, var(--rw-cyan), var(--rw-teal)); box-shadow: 0 0 16px rgba(37,211,229,.45); transition: width .35s ease; }
.runway-control__batch { justify-content: space-between; gap: 10px; color: #7895b3; font-size: 10px; }
.runway-control__batch b { max-width: 65%; overflow: hidden; color: #b9cae0; font: 10px var(--mono,'IBM Plex Mono',monospace); text-overflow: ellipsis; white-space: nowrap; }
.runway-control__steps { display: grid; grid-template-columns: repeat(4,1fr); padding: 12px; gap: 6px; }
.runway-control__steps > div { position: relative; min-width: 0; padding: 8px 7px 7px 37px; border-radius: 8px; }
.runway-control__steps > div::after { content: ''; position: absolute; top: 20px; left: calc(100% - 2px); width: 10px; height: 1px; background: rgba(112,151,190,.28); }
.runway-control__steps > div:last-child::after { display: none; }
.runway-control__steps span { position: absolute; top: 6px; left: 7px; display: grid; width: 25px; height: 25px; place-items: center; color: #66839f; background: #07172a; border: 1px solid rgba(112,151,190,.25); border-radius: 8px; font-size: 10px; font-weight: 800; }
.runway-control__steps b,
.runway-control__steps small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.runway-control__steps b { color: #91a8c0; font-size: 11px; }
.runway-control__steps small { margin-top: 3px; color: #607c98; font-size: 9px; }
.runway-control__steps .is-active { background: rgba(24,132,238,.08); }
.runway-control__steps .is-active span { color: #eaffff; background: linear-gradient(145deg,#147be6,#21becf); border-color: rgba(103,221,255,.7); box-shadow: 0 0 14px rgba(31,173,231,.25); }
.runway-control__steps .is-active b { color: #eaf7ff; }
.runway-control__steps .is-active small { color: #68cce9; }
.runway-control__footer { justify-content: space-between; gap: 14px; margin-top: 13px; padding-top: 13px; border-top: 1px solid rgba(114,174,231,.14); flex-wrap: wrap; }
.runway-control__safety { gap: 10px; min-width: 250px; }
.runway-control__lock { display: grid; width: 27px; height: 27px; flex: 0 0 27px; place-items: center; color: #49d7bd; background: rgba(53,216,177,.09); border: 1px solid rgba(53,216,177,.24); border-radius: 8px; font-size: 9px; }
.runway-control__safety b,
.runway-control__safety small { display: block; }
.runway-control__safety b { color: #cfe2f4; font-size: 11px; }
.runway-control__safety small { margin-top: 3px; color: #7894b0; font-size: 10px; }
.runway-control__actions { gap: 8px; flex-wrap: wrap; }
.runway-control__refresh { color: #c8dcf1 !important; background: rgba(4,17,35,.58) !important; border-color: rgba(126,179,231,.25) !important; }
.runway-control__preview { color: #effcff !important; background: linear-gradient(135deg,#126fd7,#169ec4) !important; border-color: #29bce0 !important; box-shadow: 0 7px 18px rgba(12,116,195,.22); }
.runway-control__fire { color: #91a5ba !important; background: rgba(76,103,130,.18) !important; border-color: rgba(133,163,190,.2) !important; }
.runway-control__fire:not(:disabled) { color: #03181a !important; background: linear-gradient(135deg,#39dfb6,#55e6d0) !important; border-color: #75f0dc !important; box-shadow: 0 0 22px rgba(53,216,177,.3); }
.owner-fire-button {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 4px 12px 4px 5px !important;
  color: #fff !important;
  background: linear-gradient(180deg,#a70e16,#71040a) !important;
  border: 1px solid #e54349 !important;
  border-radius: 999px !important;
  box-shadow: 0 7px 18px rgba(126,4,12,.28), inset 0 1px 0 rgba(255,255,255,.2) !important;
  font-weight: 800 !important;
  letter-spacing: .035em;
}
.owner-fire-button__cap {
  display: grid;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  place-items: center;
  background: radial-gradient(circle at 38% 28%,#ff7474 0,#e21922 34%,#98040b 72%);
  border: 1px solid #ff7378;
  border-radius: 50%;
  box-shadow: inset 0 2px 3px rgba(255,255,255,.34), inset 0 -4px 6px rgba(72,0,4,.55), 0 2px 5px rgba(0,0,0,.38);
  font-size: 13px;
  line-height: 1;
  text-shadow: 0 1px 2px rgba(0,0,0,.45);
}
.owner-fire-button:not(:disabled):hover .owner-fire-button__cap { transform: translateY(-1px); filter: brightness(1.12); }
.owner-fire-button:not(:disabled):active .owner-fire-button__cap { transform: translateY(1px) scale(.96); box-shadow: inset 0 3px 6px rgba(65,0,4,.65); }
.owner-fire-button:disabled { opacity: .48 !important; color: #d9b2b5 !important; background: linear-gradient(180deg,#5e2529,#401619) !important; border-color: rgba(220,78,84,.45) !important; box-shadow: none !important; }
.owner-fire-button:disabled .owner-fire-button__cap { filter: grayscale(.35); }
.runway-control__error { margin-top: 12px; padding: 10px 12px; color: #ffd0d0; background: rgba(214,67,67,.16); border: 1px solid rgba(255,98,98,.3); border-radius: 8px; font-size: 12px; line-height: 1.45; }
@media (max-width: 960px) {
  .runway-control__body { grid-template-columns: 1fr; }
}
@media (max-width: 650px) {
  .runway-control { padding: 17px; }
  .runway-control__body { grid-template-columns: minmax(0,1fr); }
  .runway-control__steps { grid-template-columns: repeat(2,1fr); }
  .runway-control__steps > div:nth-child(2)::after { display: none; }
  .runway-control__footer, .runway-control__actions { align-items: stretch; }
  .runway-control__actions, .runway-control__actions .btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .runway-control__searchlight { animation: none; display: none; }
  .runway-control__track span { transition: none; }
}
.mockup-card-actions { display: flex; gap: 6px; margin-top: 8px; flex-wrap: wrap; }
.revision-form { background: var(--bg4); border-radius: var(--radius); padding: 8px; }

/* ── Mockup Work Modal ── */
.mwm-modal { max-width: 480px; }
.mwm-status-badge { display: inline-block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; padding: 3px 10px; border-radius: 4px; font-family: var(--mono); }
.mwm-status-requested   { background: var(--amber-bg); color: var(--amber); }
.mwm-status-in-progress { background: var(--blue-bg);  color: var(--blue);  }
.mwm-status-ready       { background: var(--green-bg); color: var(--green); }
.mwm-status-approved    { background: var(--green-bg); color: var(--green); }
.mwm-status-sent        { background: var(--green-bg); color: var(--green); }
.mwm-fields { display: flex; flex-direction: column; gap: 10px; margin: 16px 0; padding: 14px; background: var(--bg3); border-radius: var(--radius); }
.mwm-field { display: flex; align-items: baseline; gap: 10px; }
.mwm-field-full { flex-direction: column; gap: 4px; }
.mwm-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); font-weight: 600; white-space: nowrap; min-width: 90px; }
.mwm-value { font-size: 13px; color: var(--text); font-family: var(--mono); }
.mwm-link  { font-size: 13px; color: var(--blue); text-decoration: underline; }
.mwm-notes { font-size: 13px; color: var(--text2); line-height: 1.5; padding: 6px 8px; background: var(--bg4); border-radius: var(--radius); }
.mwm-revision-note { border: 1px solid var(--red) !important; }

/* ── Revision History (V2 Fix #3) ── */
.revision-history { margin-top: 8px; border-top: 1px solid var(--border); padding-top: 10px; display: flex; flex-direction: column; gap: 8px; }
.revision-history-title { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text3); margin-bottom: 2px; }
.revision-entry { background: var(--bg4); border: 1px solid var(--border); border-radius: var(--radius); padding: 8px 10px; }
.revision-entry-meta { display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; margin-bottom: 4px; }
.revision-entry-num { font-size: 11px; font-weight: 700; color: var(--amber); font-family: var(--mono); }
.revision-entry-who { font-size: 11px; color: var(--text2); }
.revision-entry-date { font-size: 11px; color: var(--text3); }
.revision-entry-note { font-size: 12px; color: var(--text2); line-height: 1.5; font-style: italic; }
.revision-card-badge { font-size: 10px; color: var(--amber); background: var(--amber-bg); border-radius: 3px; padding: 2px 6px; margin-top: 4px; line-height: 1.5; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mockup-board-card.has-revision { border-left: 3px solid var(--amber) !important; }
.revision-banner { background: var(--amber-bg); border: 1px solid var(--amber); border-radius: var(--radius); padding: 8px 10px; margin-bottom: 8px; }
.revision-banner-title { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--amber); margin-bottom: 4px; }
.revision-banner-note { font-size: 12px; color: var(--text); line-height: 1.4; margin-bottom: 4px; }
.revision-banner-meta { font-size: 11px; color: var(--text3); }
.revision-banner-count { font-size: 10px; font-weight: 700; color: var(--amber); font-family: var(--mono); margin-top: 3px; }
.revision-callout { background: var(--amber-bg); border: 1px solid var(--amber); border-left: 4px solid var(--amber); border-radius: var(--radius); padding: 12px 14px; margin-bottom: 12px; }
.revision-callout-title { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--amber); margin-bottom: 8px; }
.revision-callout-note { font-size: 13px; color: var(--text); line-height: 1.5; margin-bottom: 8px; font-style: italic; }
.revision-callout-meta { font-size: 11px; color: var(--text3); display: flex; gap: 12px; flex-wrap: wrap; }
.revision-notice { background: var(--amber-bg); border: 1px solid var(--amber); border-radius: var(--radius); padding: 10px 12px; margin-bottom: 10px; }
.revision-notice-title { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.07em; color: var(--amber); margin-bottom: 5px; }
.revision-notice-note { font-size: 12px; color: var(--text); line-height: 1.4; margin-bottom: 4px; }
.revision-notice-meta { font-size: 11px; color: var(--text3); }

.mwm-hot-lead { background: var(--red-bg); border: 1px solid #4a2020; border-radius: var(--radius); padding: 10px 14px; font-size: 13px; font-weight: 600; color: var(--red); text-align: center; margin-top: 4px; }
.mwm-client-banner { background: var(--green-bg); border: 1px solid #1a4a2a; border-radius: var(--radius); padding: 10px 14px; font-size: 13px; font-weight: 600; color: var(--green); text-align: center; margin-top: 4px; }
.mwm-actions { display: flex; flex-direction: column; gap: 8px; }
.mwm-action-row { display: flex; gap: 8px; flex-wrap: wrap; }
.mwm-primary-btn { width: 100%; justify-content: center; padding: 10px; font-size: 14px; font-weight: 500; }
.mwm-url-row { display: flex; gap: 8px; align-items: center; margin-bottom: 8px; }
.mwm-url-input { flex: 1; padding: 7px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-size: 13px; font-family: var(--font); }
.mwm-footer { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--border); display: flex; justify-content: flex-start; }
.mwm-full-lead-btn { color: var(--text3); font-size: 12px; }

/* ── Mockup Intake Section ── */
.mwm-intake { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--border); display: flex; flex-direction: column; gap: 12px; }
.mwm-intake-title { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: var(--accent2); margin-bottom: 2px; }
.mwm-intake-row { display: flex; flex-direction: column; gap: 5px; }
.mwm-intake-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); font-weight: 600; }
.mwm-intake-row input, .mwm-intake-row select, .mwm-intake-row textarea { width: 100%; padding: 7px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-size: 13px; font-family: var(--font); }
.mwm-intake-row input:focus, .mwm-intake-row select:focus, .mwm-intake-row textarea:focus { outline: none; border-color: var(--accent2); }
.mwm-intake-row textarea { min-height: 72px; resize: vertical; line-height: 1.5; }
.mwm-intake-production { background: var(--bg4); padding: 10px; border-radius: var(--radius); border: 1px solid var(--border); }
.mwm-intake-production .mwm-intake-label { color: var(--amber); }
.mwm-intake-sublabel { text-transform: none; letter-spacing: normal; font-weight: 500; color: var(--text3); opacity: .75; }

.mwm-design-brief { border: 1px solid var(--border); border-radius: var(--radius); background: var(--bg4); overflow: hidden; }
.mwm-design-brief summary { cursor: pointer; padding: 10px 12px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--accent2); list-style: none; display: flex; align-items: center; gap: 8px; user-select: none; }
.mwm-design-brief summary::-webkit-details-marker { display: none; }
.mwm-design-brief summary::before { content: '▸'; font-size: 10px; transition: transform .15s ease; display: inline-block; }
.mwm-design-brief[open] summary::before { transform: rotate(90deg); }
.mwm-design-brief-tag { text-transform: none; letter-spacing: normal; font-weight: 500; color: var(--text3); font-size: 10.5px; }
.mwm-design-brief-body { display: flex; flex-direction: column; gap: 12px; padding: 2px 12px 14px; }
.mwm-design-brief-hint { font-size: 11px; color: var(--text3); line-height: 1.5; margin: 0; }

/* ===== Production Checklist — card-style readiness panel ===== */
.mwm-checklist { margin-top: 16px; padding: 14px 16px 6px; background: var(--bg4); border: 1px solid var(--border); border-radius: var(--radius-lg); display: flex; flex-direction: column; gap: 14px; }
.mwm-checklist-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.mwm-checklist-progress { display: flex; align-items: center; gap: 9px; }
.mwm-checklist-progress-count { font-size: 11.5px; font-weight: 700; color: var(--text2); letter-spacing: 0.03em; white-space: nowrap; }
.mwm-checklist-progress-track { width: 72px; height: 6px; border-radius: 99px; background: var(--bg2); border: 1px solid var(--border); overflow: hidden; flex-shrink: 0; }
.mwm-checklist-progress-fill { display: block; height: 100%; border-radius: 99px; background: linear-gradient(90deg, var(--accent2), var(--green)); transition: width .25s ease; }

.mwm-checklist-group { display: flex; flex-direction: column; gap: 2px; padding-bottom: 12px; border-bottom: 1px solid var(--border); }
.mwm-checklist-group:last-child { border-bottom: none; padding-bottom: 4px; }
.mwm-checklist-group-label { font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: var(--accent2); margin-bottom: 6px; }

.mwm-checklist-item { display: flex; align-items: flex-start; gap: 11px; padding: 7px 6px; border-radius: var(--radius); cursor: pointer; transition: background .15s ease; }
.mwm-checklist-item:hover { background: var(--bg3); }
.mwm-checklist-checkbox { width: 17px; height: 17px; margin: 1px 0 0; flex-shrink: 0; accent-color: var(--accent2); cursor: pointer; }
.mwm-checklist-label { flex: 1; font-size: 13.5px; line-height: 1.5; color: var(--text); padding-top: 1px; }

.mwm-checklist-item.is-done { background: var(--green-bg); }
.mwm-checklist-item.is-done:hover { background: var(--green-bg); filter: brightness(1.12); }
.mwm-checklist-item.is-done .mwm-checklist-label { color: var(--text2); }
.mwm-checklist-item.is-done .mwm-checklist-label::after { content: ' ✓'; color: var(--green); font-weight: 700; }

@media (max-width: 560px) {
  .mwm-checklist-item { padding: 9px 6px; }
  .mwm-checklist-progress-track { width: 56px; }
}

.mwm-modal { max-width: 520px; }

/* ── Today View ── */
.today-wrap { padding: 28px 28px 56px; max-width: 720px; margin: 0 auto; flex: 1; overflow-y: auto; }
.today-header { position:relative; margin-bottom:28px; padding:23px 25px; overflow:hidden; border:1px solid rgba(54,157,217,.34); border-radius:18px; background:linear-gradient(125deg,rgba(18,59,94,.88),rgba(8,30,53,.94)); box-shadow:0 18px 50px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.06); }
.today-header::after { content:''; position:absolute; width:260px; height:260px; border-radius:50%; right:-80px; top:-180px; background:radial-gradient(circle,rgba(34,184,240,.32),transparent 68%); pointer-events:none; }
.today-title { font-size:28px; font-weight:700; color:var(--text); letter-spacing:-.04em; }
.today-date { font-size:12px; color:var(--text2); margin-top:5px; letter-spacing:.02em; }
.today-badge { display: inline-block; background: var(--red); color: #fff; font-size: 10px; font-weight: 700; padding: 1px 5px; border-radius: 8px; margin-left: 4px; vertical-align: middle; font-family: var(--mono); }

.today-card-name { font-size: 15px; font-weight: 600; color: var(--text); line-height: 1.2; }
.today-card-meta { font-size: 12px; color: var(--text3); margin-top: 2px; }
.today-card-stage { font-size: 11px; font-weight: 600; font-family: var(--mono); background: var(--bg4); color: var(--text2); padding: 3px 8px; border-radius: 4px; white-space: nowrap; }
.today-surface-count { font-family: var(--mono); font-size: 12px; color: var(--text3); background: var(--bg3); padding: 1px 8px; border-radius: 10px; }
.fu-overdue-text { color: var(--red); font-weight: 500; }
.fu-today-text { color: var(--amber); font-weight: 500; }

/* ── Mission Dashboard (V1.1 — "Today" tab) ──────────────────
   Five scannable sections answering "what should I do next?"
   Same view for Admin and Sales — full visibility, no gating. */
.mission-wrap { max-width: 1180px; }

.mission-section { margin-bottom: 28px; }
.mission-section-header { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; padding-bottom:9px; border-bottom:1px solid rgba(60,121,169,.34); }
.mission-section-label { font-size:14px; font-weight:700; color:var(--text); letter-spacing:.01em; }
.mission-empty { font-size:13px; color:var(--text3); background:rgba(11,29,51,.72); border:1px dashed var(--border2); border-radius:var(--radius-lg); padding:18px; text-align:center; }

.mission-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:13px; }
.mission-card { position:relative; background:linear-gradient(145deg,rgba(16,41,68,.96),rgba(9,28,49,.98)); border:1px solid rgba(42,91,132,.72); border-radius:var(--radius-lg); padding:16px 17px; display:flex; flex-direction:column; gap:10px; box-shadow:0 12px 32px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.035); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.mission-card:hover { transform:translateY(-2px); border-color:rgba(34,184,240,.58); box-shadow:0 18px 38px rgba(0,0,0,.28),0 0 24px rgba(34,184,240,.07); }
.mission-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.mission-card-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: auto; }

.scoreboard-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:12px; }
.scoreboard-card { position:relative; overflow:hidden; background:linear-gradient(155deg,#123657,#0a2038); border:1px solid rgba(44,103,149,.72); border-radius:var(--radius-lg); padding:18px 14px; text-align:center; box-shadow:0 12px 30px rgba(0,0,0,.2); }
.scoreboard-card::before { content:''; position:absolute; inset:0 auto 0 0; width:3px; background:linear-gradient(180deg,#21c8d1,#168bea); box-shadow:0 0 14px rgba(34,184,240,.55); }
.scoreboard-count { font-family:var(--mono); font-size:28px; font-weight:700; color:#fff; line-height:1; margin-bottom:7px; text-shadow:0 0 20px rgba(34,184,240,.2); }
.scoreboard-label { font-size:11.5px; color:var(--text2); }

@media (max-width: 640px) {
  .today-wrap { padding:18px 14px 40px; }
  .today-header { padding:20px; }
  .mission-grid { grid-template-columns: 1fr; }
  .scoreboard-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ── Login Screen (V1 — basic session, no roles/permissions yet) ── */
.login-screen {
  min-height: 100vh; display: flex; align-items: center; justify-content: center;
  background: var(--bg); padding: 24px;
}
.login-card {
  width: 100%; max-width: 380px; background: var(--bg2); border: 1px solid var(--border);
  border-radius: var(--radius-lg); padding: 38px 34px; box-shadow: 0 30px 80px rgba(0,0,0,.45);
}
.login-brand {
  font-family: var(--mono); font-size: 23px; font-weight: 600; letter-spacing: 0.06em;
  color: var(--accent); text-align: center; margin-bottom: 8px;
}
.login-brand span { color: var(--text3); }
.login-sub { text-align: center; font-size: 13px; color: var(--text2); margin-bottom: 30px; }
.login-form { display: flex; flex-direction: column; gap: 16px; }
.login-label { display: flex; flex-direction: column; gap: 7px; font-size: 12.5px; font-weight: 500; color: var(--text2); }
.login-input {
  padding: 11px 13px; background: var(--bg3); border: 1px solid var(--border2); border-radius: var(--radius);
  color: var(--text); font-family: var(--font); font-size: 14px; transition: border-color 0.15s;
}
.login-input:focus { outline: none; border-color: var(--accent2); }
.login-input::placeholder { color: var(--text3); }
.login-error {
  background: var(--red-bg); border: 1px solid #3a2020; color: var(--red);
  border-radius: var(--radius); padding: 10px 13px; font-size: 12.5px; line-height: 1.5;
}
.login-submit { width: 100%; justify-content: center; padding: 12px 16px; font-size: 14px; font-weight: 600; margin-top: 4px; }
.login-submit:disabled { opacity: 0.6; cursor: default; }

/* ── Client Success Department ──────────────────────────── */
.nav-dept-divider { width: 1px; background: var(--border2); margin: 6px 8px; flex-shrink: 0; }
.nav-tab-doc { color: var(--text3); text-decoration: none; }
.nav-dept-label { font-size: 10px; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--text3); padding: 0 4px; white-space: nowrap; display: flex; align-items: center; }

.cs-workspace { flex: 1; overflow-y: auto; display: flex; flex-direction: column; }
.cs-workspace-header { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px 16px; border-bottom: 1px solid var(--border); flex-shrink: 0; gap: 16px; }
.cs-workspace-title { font-size: 17px; font-weight: 700; color: var(--text); }
.cs-workspace-sub { font-size: 12.5px; color: var(--text2); margin-top: 2px; }
.cs-status-legend { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }

.cs-table-wrap { flex: 1; overflow-x: auto; padding: 0 24px 24px; }
.cs-table { width: 100%; border-collapse: collapse; margin-top: 16px; font-size: 13px; }
.cs-table thead tr { border-bottom: 1px solid var(--border2); }
.cs-table th { padding: 8px 12px; text-align: left; font-size: 11px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; color: var(--text3); white-space: nowrap; }
.cs-row { border-bottom: 1px solid var(--border); cursor: pointer; transition: background 0.12s; }
.cs-row:hover { background: var(--bg2); }
.cs-row:last-child { border-bottom: none; }
.cs-cell, .cs-cell-name { padding: 12px 12px; color: var(--text2); vertical-align: middle; }
.cs-cell-name { color: var(--text); font-weight: 600; }
.cs-date { color: var(--text3); font-size: 12px; }
.cs-phone { color: var(--accent2); text-decoration: none; }
.cs-phone:hover { text-decoration: underline; }
.cs-site-link { color: var(--accent2); text-decoration: none; font-size: 12px; }
.cs-site-link:hover { text-decoration: underline; }
.cs-unassigned { color: var(--text3); font-style: italic; }

.cs-empty-state { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 60px 24px; }
.cs-empty-icon { font-size: 36px; color: var(--text3); }
.cs-empty-title { font-size: 15px; font-weight: 600; color: var(--text2); }
.cs-empty-sub { font-size: 13px; color: var(--text3); text-align: center; max-width: 340px; line-height: 1.55; }

/* Onboarding status badges */
.ob-badge { display: inline-block; padding: 3px 9px; border-radius: 12px; font-size: 11.5px; font-weight: 600; white-space: nowrap; }
.ob-new     { background: rgba(100,120,160,0.15); color: #8899bb; border: 1px solid rgba(100,120,160,0.2); }
.ob-active  { background: rgba(59,130,246,0.15);  color: var(--accent2); border: 1px solid rgba(59,130,246,0.2); }
.ob-waiting { background: rgba(234,179,8,0.12);   color: #c9a500; border: 1px solid rgba(234,179,8,0.2); }
.ob-ready   { background: rgba(168,85,247,0.12);  color: #b06ef0; border: 1px solid rgba(168,85,247,0.2); }
.ob-done    { background: var(--green-bg); color: var(--green); border: 1px solid #1a4a2a; }

/* ── Website Fulfillment Intake ─────────────────────────── */
.intake-overall {
  background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 11px 14px; margin-bottom: 12px;
}
.intake-overall-label {
  display: flex; justify-content: space-between; align-items: center;
  font-size: 12px; font-weight: 600; color: var(--text2); margin-bottom: 7px;
}
.intake-overall-frac { color: var(--text3); font-weight: 400; font-size: 11.5px; }
.intake-overall-bar-wrap { height: 5px; background: var(--border2); border-radius: 3px; overflow: hidden; }
.intake-overall-bar { height: 100%; background: var(--accent2); border-radius: 3px; transition: width 0.25s; min-width: 2px; }

.intake-sections { display: flex; flex-direction: column; gap: 5px; }
.intake-section { border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; background: var(--bg2); }
.intake-section[open] { border-color: var(--border2); }
.intake-section-summary {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 9px 13px; cursor: pointer; user-select: none; list-style: none;
}
.intake-section-summary::-webkit-details-marker { display: none; }
.intake-section-summary:hover { background: var(--bg3); }
.intake-section-title { font-size: 12.5px; font-weight: 600; color: var(--text); display: flex; align-items: center; gap: 5px; }
.intake-done-check { color: var(--green); font-size: 11px; }
.intake-section-prog { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.intake-prog-frac { font-size: 11px; color: var(--text3); white-space: nowrap; min-width: 32px; text-align: right; }
.intake-prog-bar-wrap { width: 56px; height: 4px; background: var(--border); border-radius: 2px; overflow: hidden; flex-shrink: 0; }
.intake-prog-bar { height: 100%; background: var(--accent2); border-radius: 2px; transition: width 0.25s; min-width: 2px; }

.intake-section-body {
  padding: 12px 13px 14px; display: flex; flex-direction: column; gap: 10px;
  border-top: 1px solid var(--border);
}
.intake-field-group { display: flex; flex-direction: column; gap: 4px; }
.intake-label { font-size: 10.5px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.055em; color: var(--text3); }
.intake-input, .intake-select, .intake-textarea {
  padding: 7px 10px; background: var(--bg3); border: 1px solid var(--border);
  border-radius: var(--radius); color: var(--text); font-family: var(--font);
  font-size: 13px; transition: border-color 0.15s; width: 100%;
}
.intake-input:focus, .intake-select:focus, .intake-textarea:focus { outline: none; border-color: var(--accent2); }
.intake-input::placeholder, .intake-textarea::placeholder { color: var(--text3); }
.intake-textarea { resize: vertical; min-height: 62px; }
.intake-checkbox-group { display: flex; flex-direction: column; gap: 9px; }
.intake-checkbox-row { display: flex; align-items: center; gap: 8px; }
.intake-checkbox { width: 15px; height: 15px; accent-color: var(--accent2); cursor: pointer; flex-shrink: 0; }
.intake-checkbox-label { font-size: 13px; color: var(--text2); cursor: pointer; }

/* Onboarding status select in modal */
.ob-modal-row { display: flex; flex-direction: column; gap: 6px; }
.ob-modal-label { font-size: 12px; font-weight: 600; color: var(--text2); text-transform: uppercase; letter-spacing: 0.05em; }
.ob-status-select {
  padding: 8px 10px; background: var(--bg3); border: 1px solid var(--border2);
  border-radius: var(--radius); color: var(--text); font-family: var(--font);
  font-size: 13px; cursor: pointer; transition: border-color 0.15s;
}
.ob-status-select:focus { outline: none; border-color: var(--accent2); }

/* ── Lead Engine V2 ──────────────────────────────────────── */
.le-header { margin-bottom: 4px; }
.le-flow-hint { font-size: 12px; color: var(--text3); margin: 0 0 10px; line-height: 1.5; }
/* v6-81 Staging Review segmented control */
.sr-segbar { display: inline-flex; flex-wrap: wrap; gap: 0; border: 1px solid var(--border); border-radius: 8px; overflow: hidden; margin: 0 0 14px; }
.sr-seg { background: var(--bg2); color: var(--text2); border: none; border-right: 1px solid var(--border); font-size: 12.5px; font-weight: 600; padding: 7px 14px; cursor: pointer; }
.sr-seg:last-child { border-right: none; }
.sr-seg.active { background: var(--accent2, #e8b84b); color: #0f0f0f; }
.sr-seg:not(.active):hover { color: var(--text); background: var(--bg3); }
.sr-section-title { font-size: 12px; font-weight: 600; color: var(--text2); text-transform: uppercase; letter-spacing: 0.05em; margin: 6px 0 8px; }
/* v6-82 Add One Manually (Manual Search folded into Search) */
.sr-manual-add { border: 1px solid var(--border); border-radius: 8px; background: var(--bg3, rgba(255,255,255,0.02)); }
.sr-manual-add > summary { cursor: pointer; padding: 9px 12px; font-size: 12.5px; font-weight: 600; color: var(--text2); }
.sr-manual-add > div { padding: 0 12px 12px; }
.le-flow-hint strong { color: var(--text2); }
.le-subnav { display: flex; gap: 0; border-bottom: 1px solid var(--border); margin-bottom: 18px; flex-wrap: wrap; }
.le-subnav-tab { padding: 9px 16px; background: none; border: none; border-bottom: 2px solid transparent; margin-bottom: -1px; font-size: 13px; color: var(--text2); cursor: pointer; font-family: var(--font); transition: color 0.15s; white-space: nowrap; }
.le-subnav-tab:hover { color: var(--text); }
.le-subnav-tab.active { color: var(--accent); border-bottom-color: var(--accent); }

/* Dashboard stats */
.le-stat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; margin-bottom: 22px; }
.le-stat-card { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px 16px; }
.le-stat-value { font-size: 24px; font-weight: 600; line-height: 1.2; margin-bottom: 3px; font-family: var(--mono); color: var(--text); }
.le-stat-label { font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text2); }
.le-stat-sub { font-size: 10.5px; color: var(--text3); margin-top: 3px; }
.le-stat-released .le-stat-value { color: var(--green); }
/* Review Queue clarity hint (Lead Modal Sales Cockpit Cleanup V1) */
.le-queue-hint { font-size: 12px; color: var(--text2); background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 9px 12px; margin-bottom: 12px; line-height: 1.45; }
.le-queue-hint strong { color: var(--text); }

/* Lead-modal field hint + follow-up purpose (Sales Cockpit Cleanup V1) */
.field-hint { font-size: 11px; color: var(--text3); margin-top: 4px; line-height: 1.4; }
.field-hint strong { color: var(--text2); }
.saa-fu-purpose { color: var(--text3); font-weight: 400; }

/* Production Engine — Audit/Research and Blueprint tabs render primary
   content (not secondary hints) in these divs; .field-hint's 11px/text3 was
   too small/low-contrast for body copy. Same layout, larger and darker text only. */
.pe-body-text { font-size: 13px; color: var(--text2); margin-top: 4px; line-height: 1.55; }
.pe-body-text strong { color: var(--text); }

/* Tier chips (dashboard) */
.le-section-label { font-size: 10.5px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); margin-bottom: 10px; }
.le-tier-row { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.le-tier-chip { padding: 10px 16px; border-radius: var(--radius); border: 1px solid var(--border); text-align: center; min-width: 84px; }
.le-tier-chip-label { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 3px; }
.le-tier-chip-count { font-size: 22px; font-weight: 600; font-family: var(--mono); line-height: 1.2; }
.le-tier-chip-range { font-size: 10px; color: var(--text3); margin-top: 2px; }

/* Tier colors — chips */
.lc-tier-a { background: #192a14; border-color: #28401d; }
.lc-tier-a .le-tier-chip-label, .lc-tier-a .le-tier-chip-count { color: var(--green); }
.lc-tier-b { background: #1b2710; border-color: #2b3b18; }
.lc-tier-b .le-tier-chip-label, .lc-tier-b .le-tier-chip-count { color: #8dc040; }
.lc-tier-c { background: var(--amber-bg); border-color: #3a2d10; }
.lc-tier-c .le-tier-chip-label, .lc-tier-c .le-tier-chip-count { color: var(--amber); }
.lc-tier-d { background: var(--bg2); border-color: var(--border); }
.lc-tier-d .le-tier-chip-label, .lc-tier-d .le-tier-chip-count { color: var(--text3); }

/* Tier badges (inline on cards) */
.lc-tier-badge { font-size: 10px; font-weight: 600; padding: 2px 6px; border-radius: 3px; text-transform: uppercase; letter-spacing: 0.05em; flex-shrink: 0; }
.lc-tier-a.lc-tier-badge { background: #192a14; color: var(--green); border: 1px solid #28401d; }
.lc-tier-b.lc-tier-badge { background: #1b2710; color: #8dc040; border: 1px solid #2b3b18; }
.lc-tier-c.lc-tier-badge { background: var(--amber-bg); color: var(--amber); border: 1px solid #3a2d10; }
.lc-tier-d.lc-tier-badge { background: var(--bg3); color: var(--text3); border: 1px solid var(--border); }

/* Candidate cards */
.le-top-candidates, .le-queue { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 10px; }
.le-candidate-card { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 14px; }
.le-cand-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; margin-bottom: 4px; }
.le-cand-name { font-size: 13.5px; font-weight: 500; line-height: 1.3; flex: 1; }
.le-cand-badges { display: flex; gap: 4px; align-items: center; flex-shrink: 0; }
.le-cand-meta { font-size: 11px; color: var(--text2); margin-bottom: 6px; }
.le-cand-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 8px; }
.le-cand-phone { font-size: 11.5px; color: var(--text2); margin-bottom: 6px; }
.le-cand-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.le-cand-staged-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 8px; }
.le-cand-staged-note { font-size: 11px; color: var(--text3); font-style: italic; }
.le-staging-check-label { display: flex; align-items: center; gap: 5px; font-size: 11px; color: var(--text3); cursor: pointer; white-space: nowrap; user-select: none; }
.le-staging-check-label input { width: 14px; height: 14px; cursor: pointer; accent-color: var(--accent2); flex-shrink: 0; }
.le-staging-action-bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 12px; background: rgba(255,184,0,0.06); border: 1px solid rgba(255,184,0,0.2); border-radius: var(--radius); margin-bottom: 8px; }
.le-staging-sel-label { font-size: 12px; color: var(--text2); }
.le-tier-help { margin-left: 8px; font-size: 10.5px; font-weight: 500; color: var(--text3); border: 1px solid var(--border); border-radius: 10px; padding: 1px 7px; cursor: help; white-space: nowrap; }
/* Research Evidence panel (v6-73) */
.ev-panel { border: 1px solid var(--border2, rgba(255,255,255,0.08)); border-radius: 8px; background: var(--bg3, rgba(255,255,255,0.03)); margin: 8px 0 12px; }
.ev-summary { cursor: pointer; list-style: none; padding: 9px 12px; font-size: 12px; font-weight: 600; color: var(--text2); display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.ev-summary::-webkit-details-marker { display: none; }
.ev-summary::before { content: '▸'; color: var(--text3); font-size: 10px; }
.ev-panel[open] .ev-summary::before { content: '▾'; }
.ev-chips { display: inline-flex; flex-wrap: wrap; gap: 5px; }
.ev-chip { font-size: 10px; font-weight: 600; padding: 1px 7px; border-radius: 9px; border: 1px solid var(--border); color: var(--text2); background: var(--bg2); }
.ev-chip.ev-ok { color: var(--green, #1a7f37); border-color: rgba(26,127,55,0.3); background: rgba(26,127,55,0.08); }
.ev-chip.ev-warn { color: var(--amber, #9a6a00); border-color: rgba(154,106,0,0.3); background: rgba(154,106,0,0.08); }
.ev-chip.ev-info { color: #1B3A6B; border-color: rgba(27,58,107,0.3); background: rgba(27,58,107,0.08); }
.ev-chip.ev-muted { color: var(--text3); }
.ev-body { padding: 4px 12px 12px; }
.ev-row { display: flex; gap: 10px; font-size: 12.5px; padding: 4px 0; border-top: 1px solid var(--border2, rgba(255,255,255,0.05)); }
.ev-row:first-child { border-top: none; }
.ev-k { flex: 0 0 88px; color: var(--text3); font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; padding-top: 1px; }
.ev-v { flex: 1; min-width: 0; color: var(--text2); word-break: break-word; }
.ev-v a { color: var(--blue); text-decoration: none; }
.ev-v a:hover { text-decoration: underline; }
.ev-empty { color: var(--text3); font-style: italic; }
.ev-tag { font-size: 10px; padding: 1px 6px; border-radius: 4px; border: 1px solid var(--border); color: var(--text2); }
.ev-src { font-size: 11px; color: var(--text3); }
/* v6-85 prospect mockup-request banner (top of lead modal) */
.mockup-request-banner { background: rgba(192,50,43,0.10); border: 1px solid rgba(192,50,43,0.35); color: #c0322b; font-size: 13px; font-weight: 600; border-radius: 8px; padding: 10px 12px; margin: 0 0 12px; line-height: 1.45; }
.ev-phone-first { font-size: 11px; color: var(--text3); margin-top: 8px; line-height: 1.4; }
.ev-links { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.ev-link { font-size: 11.5px; padding: 3px 9px; border: 1px solid var(--border); border-radius: 6px; color: var(--text2); text-decoration: none; background: var(--bg2); }
.ev-link:hover { border-color: var(--accent2, #e8b84b); color: var(--text); }
/* Evidence quick-capture (v6-74) */
.ev-capture { margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--border2, rgba(255,255,255,0.1)); }
.ev-cap-title { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); margin-bottom: 6px; }
.ev-cap-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 6px; }
.ev-cap-input { width: 100%; padding: 6px 9px; background: var(--bg2); border: 1px solid var(--border); border-radius: 6px; color: var(--text); font-size: 12.5px; }
.ev-cap-note { display: flex; gap: 6px; margin-top: 6px; }
.ev-cap-note .ev-cap-input { flex: 1; }
.ev-phonefirst { margin-top: 8px; font-size: 12px; }
.ev-phonefirst summary { cursor: pointer; color: var(--text2); font-weight: 600; }
.ev-phonefirst ul { margin: 6px 0 4px; padding-left: 18px; color: var(--text2); }
.ev-phonefirst li { margin: 3px 0; line-height: 1.4; }
.ev-phonefirst-note { font-size: 11px; color: var(--text3); font-style: italic; }
/* Auto-release eligibility explanation (v6-72) */
.le-release-elig { font-size: 12px; border-radius: 8px; padding: 8px 12px; margin-top: 8px; line-height: 1.5; }
.le-release-elig--ok { background: rgba(26,127,55,0.08); border: 1px solid rgba(26,127,55,0.25); color: var(--green, #1a7f37); }
.le-release-elig--blocked { background: rgba(154,106,0,0.07); border: 1px solid rgba(154,106,0,0.22); color: var(--text2); }
.le-release-elig-title { font-weight: 600; color: var(--amber, #9a6a00); }
.le-release-elig ul { margin: 4px 0 4px 0; padding-left: 18px; }
.le-release-elig li { margin: 2px 0; }
.le-release-elig-note { font-size: 11px; color: var(--text3); font-style: italic; }
.lc-path-hint { font-size: 11px; color: var(--text3); margin: 4px 0 2px; line-height: 1.4; }
/* Review Queue bulk bar (v6-64) */
.le-review-bulk-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 8px 12px; background: rgba(255,184,0,0.05); border: 1px solid rgba(255,184,0,0.18); border-radius: var(--radius); margin-bottom: 10px; }
.le-review-bulk-sep { flex: 1; min-width: 8px; }
.le-review-check-label { display: flex; align-items: center; gap: 5px; font-size: 11px; color: var(--text3); cursor: pointer; white-space: nowrap; user-select: none; }
.le-review-check-label input { width: 14px; height: 14px; cursor: pointer; accent-color: var(--accent2); flex-shrink: 0; }
.le-rating-tag { font-size: 10px; background: var(--bg4); color: var(--text2); padding: 2px 6px; border-radius: 3px; border: 1px solid var(--border); }
.le-cand-maps { margin-bottom: 6px; }
.le-maps-link { font-size: 11.5px; color: var(--blue); text-decoration: none; }
.le-maps-link:hover { text-decoration: underline; }

/* Assignment / Cold-Caller MVP (v6-71) */
.seg-badge { display: inline-block; font-size: 10.5px; font-weight: 600; padding: 2px 8px; border-radius: 10px; border: 1px solid var(--border); color: var(--text2); background: var(--bg3); white-space: nowrap; }
.seg-assigned  { color: #1B3A6B; border-color: rgba(27,58,107,0.35); background: rgba(27,58,107,0.08); }
.seg-emailcall { color: #9a6a00; border-color: rgba(154,106,0,0.35); background: rgba(154,106,0,0.08); }
.seg-callneeded{ color: #7a3ea8; border-color: rgba(122,62,168,0.35); background: rgba(122,62,168,0.08); }
.seg-hot       { color: #c0322b; border-color: rgba(192,50,43,0.35); background: rgba(192,50,43,0.08); }
.assign-current { font-size: 12.5px; color: var(--text2); background: var(--bg3); border: 1px solid var(--border); border-radius: 6px; padding: 6px 10px; margin-bottom: 8px; }

.cq-segbar { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.cq-list { display: flex; flex-direction: column; gap: 10px; }
.cq-card { background: var(--bg2, #1a2337); border: 1px solid var(--border2, rgba(255,255,255,0.08)); border-radius: var(--radius); padding: 12px 14px; }
.cq-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 4px; }
.cq-name { font-size: 15px; font-weight: 600; color: var(--text); cursor: pointer; }
.cq-name:hover { text-decoration: underline; }
.cq-badges { display: flex; flex-wrap: wrap; gap: 5px; flex-shrink: 0; }
.cq-meta { font-size: 12.5px; color: var(--text3); margin-bottom: 6px; }
.cq-facts { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 12px; color: var(--text2); margin-bottom: 5px; }
.cq-note { font-size: 12px; color: var(--text2); background: var(--bg3); border-left: 3px solid var(--accent2, #e8b84b); border-radius: 4px; padding: 6px 10px; margin: 4px 0 6px; }
.cq-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 6px; }
.cq-disp { padding: 4px 8px; background: var(--bg3); border: 1px solid var(--border); border-radius: 4px; color: var(--text); font-size: 12px; }
.le-cand-ws-row { display: flex; align-items: center; gap: 8px; margin-top: 8px; margin-bottom: 6px; }
.le-cand-ws-label { font-size: 10.5px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); white-space: nowrap; }
.le-cand-email-row { margin-bottom: 6px; }
.le-email-input { width: 100%; box-sizing: border-box; padding: 5px 8px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); font-size: 12px; }
.le-email-input:focus { outline: none; border-color: var(--accent2); }
.le-email-input::placeholder { color: var(--text3); }
.le-ws-select { font-size: 12px; padding: 4px 8px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); flex: 1; cursor: pointer; }
.le-ws-select:focus { outline: none; border-color: var(--accent2); }

/* Inline rejection panel */
.le-rej-panel { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--border); display: flex; flex-direction: column; gap: 8px; }
.le-rej-select { width: 100%; padding: 7px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); font-size: 13px; }
.le-rej-note { min-height: 68px; resize: vertical; width: 100%; padding: 7px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); font-size: 12.5px; box-sizing: border-box; }
.le-rej-note:focus, .le-rej-select:focus { outline: none; border-color: var(--accent2); }
.le-rej-actions { display: flex; gap: 6px; justify-content: flex-end; }

/* Queue containers */
.le-queue-wrap { }
.le-queue-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; flex-wrap: wrap; gap: 10px; }
.le-queue-count { font-size: 12px; color: var(--text2); }
.le-queue-filters { display: flex; gap: 8px; flex-wrap: wrap; }
.le-queue-filters select { font-size: 12px; padding: 5px 8px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); }
.le-staging-header { margin-bottom: 14px; }
.le-staging-header-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.le-staging-count { font-size: 14px; font-weight: 500; }
.le-staging-sub { font-size: 12px; color: var(--text2); margin-top: 4px; }

/* Search Tab */
.le-search-wrap { max-width: 720px; }
.le-search-sub { font-size: 12.5px; color: var(--text2); margin: 4px 0 16px; }
.le-search-form { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; align-items: center; }
.le-search-input { font-size: 13px; padding: 7px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); }
.le-search-input:focus { outline: none; border-color: var(--accent2); }
.le-search-input--query { flex: 2; min-width: 140px; }
.le-search-input--loc { flex: 1.5; min-width: 120px; }
.le-search-industry-select { font-size: 13px; padding: 7px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); min-width: 130px; cursor: pointer; }
.le-search-industry-select:focus { outline: none; border-color: var(--accent2); }
.le-search-go-btn { white-space: nowrap; }
/* City = custom dark combobox (replaces the native <datalist> white panel). The wrap is
   the flex item + positioning context; the dropdown anchors directly below the input,
   caps its height, and scrolls internally so it never stretches down the page. */
.le-city-wrap { position: relative; display: inline-flex; min-width: 160px; }
.le-city-wrap #le-search-city { width: 100%; min-width: 0; cursor: text; padding-right: 26px; }
/* Dropdown caret so the field reads as a selectable list (not a plain text box). */
.le-city-wrap::after { content: "▾"; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); pointer-events: none; font-size: 11px; color: var(--text3); }
.le-city-wrap[data-disabled="1"]::after { opacity: 0.35; }
.le-city-opt-empty { padding: 9px 12px; font-size: 12px; color: var(--text3); }
.le-city-dd {
  position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 60;
  max-height: 300px; overflow-y: auto; overflow-x: hidden;
  background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45);
}
.le-city-dd[hidden] { display: none; }
.le-city-opt { padding: 8px 12px; font-size: 13px; color: var(--text); cursor: pointer; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.le-city-opt:hover, .le-city-opt.active { background: var(--bg3); }
.le-city-opt--custom { color: var(--accent2); border-top: 1px solid var(--border); font-weight: 500; }
/* Pre-search summary: Industry / City / State. */
.le-search-summary { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 13px; color: var(--text3); margin: -8px 0 14px; padding: 7px 12px; background: var(--bg3); border: 1px dashed var(--border); border-radius: var(--radius); }
.le-search-summary--ready { border-style: solid; border-color: var(--accent2); }
.le-search-summary .le-ss-part { font-weight: 600; color: var(--text2); }
.le-search-summary--ready .le-ss-part { color: var(--text); }
.le-search-summary .le-ss-sep { color: var(--text3); font-weight: 400; }
.le-search-summary .le-ss-hint { margin-left: auto; font-size: 11px; color: var(--text3); font-weight: 400; }
.le-search-msg { font-size: 13px; padding: 10px 14px; border-radius: var(--radius); margin-bottom: 16px; border: 1px solid var(--border); }
.le-search-msg--error { background: var(--bg3); color: var(--red); }
.le-search-results-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; flex-wrap: wrap; }
.le-search-results-count { font-size: 13px; color: var(--text2); }
.le-search-results-actions { display: flex; gap: 8px; }
.le-search-results { display: flex; flex-direction: column; gap: 8px; }
.le-search-card { display: flex; gap: 12px; padding: 12px 14px; background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); align-items: flex-start; }
.le-search-card--queued { opacity: 0.6; pointer-events: none; }
/* Blocked cards have no checkbox (can't be selected), but their explicit links/buttons
   — "Open Existing Lead" and "Open in Maps" — must stay clickable. */
.le-search-card--queued a,
.le-search-card--queued button { pointer-events: auto; }
.le-search-card-check { padding-top: 2px; min-width: 20px; display: flex; align-items: flex-start; justify-content: center; }
.le-search-checkbox { width: 16px; height: 16px; cursor: pointer; accent-color: var(--accent2); }
.le-search-queued-label { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); white-space: nowrap; }
.le-search-card-body { flex: 1; min-width: 0; }
.le-search-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 4px; flex-wrap: wrap; }
.le-search-biz-name { font-size: 14px; font-weight: 500; }
.le-search-card-meta { font-size: 12px; color: var(--text2); margin-bottom: 4px; }
.le-search-address { font-size: 11.5px; color: var(--text3); margin-bottom: 4px; }
.le-cand-address { font-size: 11.5px; color: var(--text3); margin-bottom: 4px; }

/* Website Status Opportunity Badges (Search Results) */
.le-ws-badge { display: inline-flex; align-items: center; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.07em; padding: 3px 7px; border-radius: 4px; white-space: nowrap; }
.le-ws-badge--none   { background: var(--amber-bg); color: var(--amber); border: 1px solid rgba(232,160,48,0.35); }
.le-ws-badge--social { background: var(--blue-bg);  color: var(--blue);  border: 1px solid rgba(91,155,213,0.35); }

/* No Website Only / Has Phone filter toggles */
.le-nw-toggle { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--text2); cursor: pointer; user-select: none; white-space: nowrap; }
.le-nw-toggle input[type="checkbox"] { width: 14px; height: 14px; cursor: pointer; accent-color: var(--accent2); margin: 0; }

/* Search Quality Summary */
.le-search-quality { display: flex; gap: 0; background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: 12px; overflow: hidden; }
.le-sq-stat { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 10px 16px; flex: 1; min-width: 60px; }
.le-sq-divider { border-left: 1px solid var(--border); }
.le-sq-label { font-size: 10px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); white-space: nowrap; }
.le-sq-val { font-size: 18px; font-weight: 700; color: var(--text); line-height: 1; }
.le-sq-val--amber { color: var(--amber); }
.le-sq-val--blue  { color: var(--blue); }
.le-sq-val--green { color: var(--green); }
.le-sq-val--muted { color: var(--text2); }

/* Search Filter Row */
.le-search-filter-row { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 12px; }
/* v6-91: pre-search best-fit prospect filters (Has Phone / No Website), always visible */
.le-search-prefilter-row { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; margin: 0 0 14px; padding: 8px 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); }
.le-search-prefilter-label { font-size: 12px; font-weight: 600; color: var(--text2); letter-spacing: .02em; }
.le-search-prefilter-note { font-size: 11px; color: var(--text3); }
.le-search-filter-select { font-size: 12.5px; padding: 5px 9px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-family: var(--font); cursor: pointer; }
.le-search-filter-select:focus { outline: none; border-color: var(--accent2); }

/* Source Badge (Staging / Review Queue cards) */
.le-source-badge { display: inline-flex; align-items: center; font-size: 9.5px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; padding: 2px 6px; border-radius: 3px; white-space: nowrap; }
.le-source-badge--maps   { background: var(--green-bg);  color: var(--green); }
.le-source-badge--import { background: var(--bg3); color: var(--text3); border: 1px solid var(--border); }

/* Phase 4A — Prospect Package section (inside lead modal) */
.pkg-section { display: flex; flex-direction: column; gap: 10px; }
.pkg-empty { font-size: 12px; color: var(--text3); padding: 2px 0 4px; }
.pkg-list { display: flex; flex-direction: column; gap: 6px; margin-bottom: 4px; }
.pkg-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 10px 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); font-size: 12px; }
.pkg-row-left { display: flex; align-items: center; gap: 8px; flex: 1 1 auto; min-width: 0; }
.pkg-type-badge { display: inline-block; padding: 2px 7px; background: var(--blue-bg); color: var(--blue); border-radius: 3px; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; white-space: nowrap; }
.pkg-row-date { color: var(--text3); font-size: 11px; white-space: nowrap; }
.pkg-row-stats { display: flex; align-items: center; gap: 4px; color: var(--text3); font-size: 11px; white-space: nowrap; }
.pkg-stat { color: var(--text2); }
.pkg-row-actions { display: flex; gap: 6px; flex-shrink: 0; }
.pkg-builder { background: var(--bg3); border: 1px solid var(--border2); border-radius: var(--radius); padding: 14px 16px; }
.pkg-builder-title { font-size: 12px; font-weight: 600; color: var(--text2); margin-bottom: 12px; text-transform: uppercase; letter-spacing: 0.05em; }
.pkg-engagement-badge { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; background: rgba(232,184,75,0.12); border: 1px solid rgba(232,184,75,0.3); border-radius: 6px; font-size: 11px; font-weight: 600; color: var(--gold,#e8b84b); letter-spacing: 0.02em; }
.pkg-no-mockup-warning { display: flex; align-items: flex-start; gap: 8px; padding: 10px 12px; background: rgba(232,184,75,0.07); border: 1px solid rgba(232,184,75,0.2); border-radius: var(--radius); }
.pkg-no-mockup-icon { font-size: 14px; color: var(--gold,#e8b84b); flex-shrink: 0; line-height: 1.4; }
.pkg-no-mockup-title { font-size: 12px; font-weight: 600; color: var(--text2); margin-bottom: 2px; }
.pkg-no-mockup-sub { font-size: 11px; color: var(--text3); }
.pkg-no-email-warn { width: 100%; font-size: 11px; color: var(--gold,#e8b84b); padding: 2px 0 0; }

/* Intelligence Tab (Phase 3E.2) */
.le-intel-wrap { max-width: 720px; }
.le-intel-section { margin-bottom: 24px; }
.le-intel-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 24px; }
@media (max-width: 600px) { .le-intel-two-col { grid-template-columns: 1fr; } }
.le-intel-empty { text-align: center; padding: 40px 20px; }
.le-intel-list { display: flex; flex-direction: column; gap: 2px; }
.le-intel-row { display: flex; align-items: center; justify-content: space-between; padding: 7px 10px; border-radius: var(--radius); cursor: pointer; transition: background 0.12s; }
.le-intel-row:hover { background: var(--bg3); }
.le-intel-name { font-size: 13px; color: var(--text); }
.le-rec-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
.le-rec-card { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; cursor: pointer; transition: border-color 0.12s; }
.le-rec-card:hover { border-color: var(--accent2); }
.le-rec-name { font-size: 13px; font-weight: 500; color: var(--text); margin-bottom: 6px; }
.le-rec-stats { display: flex; align-items: center; gap: 8px; }
.le-rec-sub { font-size: 11px; color: var(--text3); }
.le-recent-list { display: flex; flex-direction: column; gap: 2px; }
.le-recent-row { display: flex; align-items: center; justify-content: space-between; padding: 8px 10px; border-radius: var(--radius); cursor: pointer; transition: background 0.12s; }
.le-recent-row:hover { background: var(--bg3); }
.le-recent-label { font-size: 13px; color: var(--text); }
.le-recent-meta { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }

/* Import */
.le-import-wrap { max-width: 640px; }
.le-import-sub { font-size: 12.5px; color: var(--text2); margin: 4px 0 14px; }
.le-import-format { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 14px; margin-bottom: 14px; }
.le-import-format-label { font-size: 10px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); margin-bottom: 6px; }
.le-import-textarea { width: 100%; min-height: 200px; font-family: var(--mono); font-size: 13px; resize: vertical; padding: 10px 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); box-sizing: border-box; }
.le-import-textarea:focus { outline: none; border-color: var(--accent2); }
.le-import-textarea::placeholder { color: var(--text3); }
.le-import-footer { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-top: 12px; flex-wrap: wrap; }
.le-import-note { font-size: 11.5px; color: var(--text3); max-width: 400px; line-height: 1.55; }

/* Empty states */
.le-empty-state, .le-empty-dashboard { text-align: center; padding: 44px 20px; }
.le-empty-icon { font-size: 28px; margin-bottom: 10px; }
.le-empty-title { font-size: 14px; font-weight: 500; margin-bottom: 6px; }
.le-empty-sub { font-size: 12.5px; color: var(--text2); max-width: 360px; margin: 0 auto 14px; }
.le-db-note { font-size: 11px; color: var(--text3); margin-top: 24px; padding-top: 14px; border-top: 1px solid var(--border); }

/* ── User Management V1 ──────────────────────────────────── */
.um-section { margin-bottom: 20px; }
.um-section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.um-section-title { font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text3); }

.um-card { background: var(--bg2, #1a2337); border: 1px solid var(--border2, rgba(255,255,255,0.08)); border-radius: var(--radius); padding: 16px 20px; margin-bottom: 10px; }
.um-card-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.um-card-info { flex: 1; min-width: 0; }
.um-name { font-size: 14px; font-weight: 600; color: var(--text); margin-bottom: 2px; }
.um-email { font-size: 12px; color: var(--text3); font-family: var(--mono); }
.um-badges { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
.um-role, .um-status { font-size: 10px; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; padding: 3px 7px; border-radius: 4px; }
.um-role--admin { background: rgba(232,184,75,0.15); color: var(--accent, #e8b84b); border: 1px solid rgba(232,184,75,0.25); }
.um-role--sales { background: rgba(255,255,255,0.06); color: var(--text2); border: 1px solid var(--border2); }
.um-perm-icons { font-size: 13px; letter-spacing: 2px; }
.um-perm-checks { display: flex; gap: 12px; padding: 6px 0; flex-wrap: wrap; }
.um-perm-check { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--text2); cursor: pointer; }
.um-perm-check input[type="checkbox"] { accent-color: var(--accent2); width: 14px; height: 14px; cursor: pointer; }
.um-status--active { background: rgba(74,197,130,0.12); color: #4ac582; border: 1px solid rgba(74,197,130,0.2); }
.um-status--pending { background: rgba(232,184,75,0.1); color: var(--accent, #e8b84b); border: 1px solid rgba(232,184,75,0.18); }
.um-status--inactive { background: rgba(255,255,255,0.04); color: var(--text3); border: 1px solid var(--border); }

/* Readiness block (v6-60): compact bordered group, checklist in a clean
   left-aligned 2-up grid so labels line up with their checkboxes. */
.um-ready-block { background: var(--bg3, rgba(255,255,255,0.03)); border: 1px solid var(--border2, rgba(255,255,255,0.07)); border-radius: 8px; padding: 10px 12px; margin-bottom: 12px; }
.um-readiness { display: flex; align-items: center; gap: 10px; margin-bottom: 9px; }
.um-ready-heading { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); flex-shrink: 0; }
.um-readiness-bar-wrap { flex: 1; height: 3px; background: var(--border2, rgba(255,255,255,0.08)); border-radius: 2px; overflow: hidden; }
.um-readiness-bar { height: 100%; background: var(--accent, #e8b84b); border-radius: 2px; transition: width 0.25s ease; }
.um-readiness-label { font-size: 10px; font-family: var(--mono); color: var(--text3); flex-shrink: 0; }

.um-ready-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 5px 16px; margin-bottom: 0; }
.um-ready-item { display: flex; align-items: center; gap: 8px; cursor: pointer; line-height: 1.25; min-height: 20px; }
.um-ready-item--ro { cursor: default; }
.um-ready-check { width: 14px; height: 14px; margin: 0; flex-shrink: 0; accent-color: var(--accent, #e8b84b); cursor: pointer; }
.um-ready-label { font-size: 12.5px; color: var(--text2); }
.um-ready-dot { width: 8px; height: 8px; border-radius: 50%; border: 1.5px solid var(--border2); flex-shrink: 0; }
.um-ready-dot--done { background: var(--accent, #e8b84b); border-color: var(--accent, #e8b84b); }

.um-card-actions { border-top: 1px solid var(--border); padding-top: 10px; margin-top: 4px; }
.um-empty { font-size: 13px; color: var(--text3); padding: 16px 0; text-align: center; }

.um-add-form { background: var(--bg3, #1c2f4a); border: 1px solid var(--border2); border-radius: var(--radius); padding: 16px 20px; margin-bottom: 12px; }

/* ── User Management V1.1 ────────────────────────────────── */

/* Pending panel */
.um-pending-panel { background: rgba(232,184,75,0.06); border: 1px solid rgba(232,184,75,0.18); border-radius: var(--radius); padding: 12px 16px; margin-bottom: 12px; }
.um-pending-panel--clear { background: rgba(74,197,130,0.06); border-color: rgba(74,197,130,0.18); display: flex; align-items: center; gap: 8px; }
.um-pending-title { font-size: 10px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--accent, #e8b84b); margin-bottom: 8px; }
.um-pending-row { display: flex; align-items: baseline; gap: 8px; padding: 4px 0; border-bottom: 1px solid rgba(232,184,75,0.1); }
.um-pending-row:last-child { border-bottom: none; }
.um-pending-warn { font-size: 12px; color: var(--accent, #e8b84b); flex-shrink: 0; }
.um-pending-name { font-size: 13px; font-weight: 600; color: var(--text); flex-shrink: 0; }
.um-pending-detail { font-size: 12px; color: var(--text3); }
.um-pending-icon { font-size: 13px; color: #4ac582; }
.um-pending-all-clear { font-size: 13px; color: #4ac582; font-weight: 500; }

/* Missing block inside card */
.um-missing-block { background: rgba(232,184,75,0.06); border: 1px solid rgba(232,184,75,0.15); border-radius: 6px; padding: 8px 12px; margin-bottom: 10px; }
.um-missing-label { font-size: 10px; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--accent, #e8b84b); display: block; margin-bottom: 4px; }
.um-missing-list { list-style: none; margin: 0; padding: 0; }
.um-missing-list li { font-size: 12.5px; color: var(--text2); padding: 2px 0; }
.um-missing-list li::before { content: '·'; margin-right: 6px; color: var(--accent, #e8b84b); }

/* Incomplete card highlight */
.um-card--incomplete { border-color: rgba(232,184,75,0.22); }

/* Missing label text */
.um-ready-label--missing { color: var(--text3); }

/* Nav badge */
.nav-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 16px; height: 16px; padding: 0 4px; background: var(--accent, #e8b84b); color: #0d1b2e; font-size: 10px; font-weight: 700; border-radius: 8px; line-height: 1; margin-left: 3px; }

/* ── Lead Acquisition Settings ───────────────────────────── */
.acq-card { background: var(--bg2, #1a2337); border: 1px solid var(--border2, rgba(255,255,255,0.08)); border-radius: var(--radius); padding: 20px 24px; margin-bottom: 20px; }
.acq-card-title { font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text3); margin-bottom: 16px; }
.acq-card-title--sub { margin-top: 0; margin-bottom: 12px; }
.acq-divider { border: none; border-top: 1px solid var(--border); margin: 18px 0; }

.acq-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.acq-row--col { align-items: flex-start; flex-direction: column; gap: 8px; }
.acq-label { font-size: 13px; color: var(--text2); flex: 1; }
.acq-hint { display: block; font-size: 11px; color: var(--text3); margin-top: 2px; }

/* Toggle switch */
.acq-toggle-wrap { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.acq-toggle { position: relative; display: inline-block; width: 36px; height: 20px; cursor: pointer; }
.acq-toggle input { opacity: 0; width: 0; height: 0; position: absolute; }
.acq-toggle-track { position: absolute; inset: 0; background: var(--border2); border-radius: 20px; transition: background 0.2s; }
.acq-toggle input:checked + .acq-toggle-track { background: var(--accent, #e8b84b); }
.acq-toggle-thumb { position: absolute; left: 2px; top: 2px; width: 16px; height: 16px; background: #fff; border-radius: 50%; transition: transform 0.2s; }
.acq-toggle input:checked + .acq-toggle-track .acq-toggle-thumb { transform: translateX(16px); }
.acq-toggle-state { font-size: 12px; font-weight: 600; font-family: var(--mono); letter-spacing: 0.06em; min-width: 28px; }
.acq-state--on   { color: #4ac582; }
.acq-state--off  { color: var(--text3); }
.acq-state--warn { color: var(--amber, #e8a838); }
/* Capacity table */
.acq-capacity-table { margin-top: 4px; }
.acq-cap-header { display: grid; grid-template-columns: 2fr 1.2fr 2fr 0.8fr 0.8fr; gap: 8px; padding: 4px 6px; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); border-bottom: 1px solid var(--border); margin-bottom: 4px; }
.acq-cap-row { display: grid; grid-template-columns: 2fr 1.2fr 2fr 0.8fr 0.8fr; gap: 8px; align-items: center; padding: 6px 6px; border-bottom: 1px solid var(--border); font-size: 12px; }
.acq-cap-row:last-child { border-bottom: none; }
.acq-cap-name { font-weight: 600; color: var(--text); }
.acq-cap-mode { font-size: 11px; color: var(--text3); font-family: var(--mono); }
.acq-cap-occ  { display: flex; align-items: center; gap: 7px; color: var(--text2); }
.acq-cap-avail { font-weight: 700; text-align: center; }
.acq-cap-toggle { display: flex; justify-content: center; }
/* Capacity progress bar */
.acq-bar-wrap { width: 60px; height: 5px; background: var(--bg4); border-radius: 3px; overflow: hidden; flex-shrink: 0; }
.acq-bar { height: 100%; border-radius: 3px; transition: width 0.3s; }
.acq-bar--green { background: #4ac582; }
.acq-bar--amber { background: var(--amber, #e8a838); }
.acq-bar--red   { background: var(--red, #e85555); }
/* Small toggle for capacity table */
.acq-toggle--sm { width: 28px; height: 16px; }
.acq-toggle--sm .acq-toggle-thumb { width: 12px; height: 12px; }
.acq-toggle--sm input:checked + .acq-toggle-track .acq-toggle-thumb { transform: translateX(12px); }
/* User card acq row */
.um-acq-row { display: flex; align-items: center; gap: 6px; padding: 8px 0 4px; flex-wrap: wrap; font-size: 12px; }
.um-acq-label { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.07em; color: var(--text3); }
.um-acq-toggle-inline { display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; color: var(--text2); cursor: pointer; }
.um-acq-toggle-inline input { cursor: pointer; }

/* Operator Industries / Territories chip fields (v6-61). Label sits at the
   top-left, chips + add control wrap beside it and stay compact in-card. */
.um-acq-field { display: flex; align-items: flex-start; gap: 8px; padding: 8px 0 4px; font-size: 12px; }
.um-acq-field .um-acq-label { padding-top: 5px; flex-shrink: 0; }
.um-chip-wrap { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; flex: 1; min-width: 0; }
.um-chip { display: inline-flex; align-items: center; gap: 3px; background: var(--bg3); border: 1px solid var(--border); border-radius: 12px; padding: 2px 5px 2px 9px; font-size: 11.5px; color: var(--text2); line-height: 1.4; }
.um-chip-x { border: none; background: none; color: var(--text3); cursor: pointer; font-size: 14px; line-height: 1; padding: 0 2px; }
.um-chip-x:hover { color: #c0322b; }
.um-chip-empty { font-size: 11.5px; color: var(--text3); font-style: italic; }
.um-acq-industry-add, .um-acq-territory-input { padding: 3px 6px; background: var(--bg3); border: 1px solid var(--border); border-radius: 4px; color: var(--text); font-size: 11.5px; }
.um-acq-territory-input { width: 118px; }
.um-acq-territory-add { padding: 3px 9px; font-size: 11px; }
/* Custom territory suggestion popover (v6-61 hotfix2) — replaces native datalist */
.um-terr-add { position: relative; display: inline-flex; }
.um-terr-suggest { position: absolute; top: 100%; left: 0; z-index: 30; margin-top: 3px; min-width: 170px; max-height: 190px; overflow-y: auto; background: var(--bg2, #1a2337); border: 1px solid var(--border); border-radius: 6px; box-shadow: 0 6px 18px rgba(0,0,0,0.3); padding: 3px; }
.um-terr-opt { display: block; width: 100%; text-align: left; background: none; border: none; color: var(--text2); font-size: 11.5px; padding: 4px 8px; border-radius: 4px; cursor: pointer; }
.um-terr-opt:hover { background: var(--bg3); color: var(--text); }

/* Day checkboxes */
.acq-days { display: flex; gap: 6px; flex-wrap: wrap; }
.acq-day-label { display: flex; align-items: center; gap: 5px; cursor: pointer; padding: 5px 10px; background: var(--bg3, #1c2f4a); border: 1px solid var(--border); border-radius: 6px; font-size: 12px; color: var(--text2); transition: border-color 0.15s, color 0.15s; }
.acq-day-label:has(input:checked) { border-color: var(--accent, #e8b84b); color: var(--accent, #e8b84b); background: rgba(232,184,75,0.08); }
.acq-day-label input { display: none; }

/* Number inputs */
.acq-number-input { width: 90px; text-align: right; font-family: var(--mono); font-size: 13px; flex-shrink: 0; }

/* Status grid */
.acq-status-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.acq-stat { background: var(--bg3, #1c2f4a); border: 1px solid var(--border); border-radius: 8px; padding: 10px 14px; }
.acq-stat--wide { grid-column: span 2; }
.acq-stat-label { font-size: 10px; font-weight: 500; letter-spacing: 0.07em; text-transform: uppercase; color: var(--text3); margin-bottom: 4px; }
.acq-stat-value { font-size: 15px; font-weight: 600; color: var(--text); font-family: var(--mono); }

/* ── Contact Discovery Engine V1 — enrichment badges ── */
.contact-badge {
  display: inline-block;
  margin-left: 6px;
  padding: 1px 6px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  vertical-align: middle;
}
.badge-sms          { background: rgba(74,222,128,0.12); color: var(--green);  border: 1px solid rgba(74,222,128,0.22); }
.badge-landline     { background: rgba(245,158,11,0.10); color: var(--amber);  border: 1px solid rgba(245,158,11,0.22); }
.badge-conf-high    { background: rgba(74,222,128,0.12); color: var(--green);  border: 1px solid rgba(74,222,128,0.22); }
.badge-conf-medium  { background: rgba(245,158,11,0.10); color: var(--amber);  border: 1px solid rgba(245,158,11,0.22); }
.badge-conf-low     { background: rgba(248,113,113,0.10); color: var(--red);   border: 1px solid rgba(248,113,113,0.18); }
.badge-conf-pattern { background: rgba(255,255,255,0.05); color: var(--text3); border: 1px solid var(--border); }

/* ── Sales Action Area (lead modal top strip) ── */
.saa {
  background: var(--bg3);
  border-bottom: 1px solid var(--border2);
  padding: 10px 20px 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.saa-top-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}
.saa-snap-group {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.saa-badge {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.03em;
  font-family: var(--mono);
}
.saa-badge--ready { background: rgba(74,222,128,0.12); color: var(--green);  border: 1px solid rgba(74,222,128,0.22); }
.saa-badge--sent  { background: rgba(74,222,128,0.08); color: var(--green);  border: 1px solid rgba(74,222,128,0.18); }
.saa-badge--none  { background: rgba(100,116,139,0.10); color: var(--text3); border: 1px solid rgba(100,116,139,0.18); }
.saa-btn { font-size: 11px; padding: 3px 10px; }
.saa-contact-row {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.saa-contact-pill {
  font-size: 11px;
  font-family: var(--mono);
  color: var(--text);
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 2px 8px;
  white-space: nowrap;
  max-width: 280px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.saa-social-pill { color: var(--blue); border-color: rgba(96,165,250,0.22); }
.saa-no-contact { font-size: 11px; color: var(--text3); }
.saa-actions {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}
.saa-action-btn { font-size: 11px; padding: 3px 10px; }
.saa-fu-strip {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  padding-top: 8px;
  border-top: 1px solid var(--border);
}
.saa-fu-item {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 90px;
}
.saa-fu-label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--text3);
}
.saa-fu-value {
  font-size: 12px;
  font-family: var(--mono);
  color: var(--text);
}
.saa-fu-value.fu-overdue { color: var(--red); }
.saa-fu-value.fu-today   { color: var(--amber); }
.saa-fu-value.fu-future  { color: var(--green); }
.saa-fu-value.saa-fu-none { color: var(--text3); }
.saa-fu-bumps {
  display: flex;
  gap: 4px;
  margin-left: auto;
}
.saa-bump-btn { font-size: 11px; padding: 3px 8px; }

/* ── Contact Tracking Engine V1 — Communication History ── */
.comm-history {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 6px;
}
.comm-empty {
  font-size: 12px;
  color: var(--text3);
  padding: 4px 0;
}
.comm-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 6px 10px;
  background: var(--bg3);
  border: 1px solid var(--border);
  border-radius: 6px;
}
.comm-icon {
  font-size: 13px;
  flex-shrink: 0;
  width: 18px;
  text-align: center;
  margin-top: 1px;
}
.comm-body {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}
.comm-summary {
  font-size: 12px;
  color: var(--text);
  font-weight: 500;
}
.comm-meta {
  font-size: 10px;
  color: var(--text3);
  font-family: var(--mono);
  letter-spacing: 0.02em;
}
.comm-contact-dot {
  color: var(--green);
  margin-left: 5px;
  font-size: 8px;
  vertical-align: middle;
}

/* ── Schedule Lead Collection V1 — admin note ── */
.le-collect-note {
  margin-top: 8px;
  font-size: 11px;
  color: var(--text3);
  font-style: italic;
}

/* ── Client Onboarding / Production Handoff Panel ── */
.handoff-panel {
  background: var(--card2, var(--bg2));
  border: 1px solid var(--border2);
  border-radius: 10px;
  padding: 14px 16px 12px;
  margin-bottom: 4px;
}
.handoff-panel-hd {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.handoff-panel-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--text1);
  margin-bottom: 2px;
}
.handoff-panel-sub {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.4;
}
.handoff-score {
  font-size: 12px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 20px;
  white-space: nowrap;
  flex-shrink: 0;
}
.handoff-score--full  { background: var(--green-bg, #e6f4ea); color: var(--green, #2e7d32); }
.handoff-score--mid   { background: var(--yellow-bg, #fff8e1); color: var(--yellow, #b45309); }
.handoff-score--low   { background: var(--red-bg, #fdecea);   color: var(--red, #c62828); }
.handoff-bar-wrap {
  height: 4px;
  background: var(--border2);
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 12px;
}
.handoff-bar {
  height: 100%;
  background: var(--accent2, var(--accent));
  border-radius: 3px;
  transition: width 0.25s;
  min-width: 2px;
}
.handoff-checks {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 12px;
}
.handoff-check {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12px;
}
.handoff-check-icon {
  font-size: 11px;
  width: 14px;
  text-align: center;
  flex-shrink: 0;
  margin-top: 3px;
}
.handoff-check-content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.handoff-check--done .handoff-check-icon  { color: var(--green, #2e7d32); }
.handoff-check--open .handoff-check-icon  { color: var(--text3); }
.handoff-check--done .handoff-check-label { color: var(--text2); font-weight: 500; }
.handoff-check--open .handoff-check-label { color: var(--text3); font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; }
.handoff-check-value {
  font-size: 11px;
  color: var(--text3);
  font-family: var(--mono);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
/* Quick-entry inputs inside the handoff panel */
.hq-input {
  width: 100%;
  font-size: 12px;
  padding: 5px 8px;
  border: 1px solid var(--border2);
  border-radius: 6px;
  background: var(--bg1);
  color: var(--text1);
  box-sizing: border-box;
}
.hq-input:focus {
  outline: none;
  border-color: var(--accent);
}
.hq-logo-wrap { display: flex; flex-direction: column; gap: 4px; }
.handoff-cta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 4px;
}
.handoff-cta-hint {
  font-size: 11px;
  color: var(--text3);
  font-style: italic;
}

/* ── Sales Production Status Card ── */
.sps-card {
  background: var(--card2, var(--bg2));
  border: 1px solid var(--border2);
  border-radius: 10px;
  padding: 12px 16px 12px;
  margin: 10px 0 4px;
}
.sps-card-hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
.sps-card-title {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text3);
}
.sps-timing {
  font-size: 10.5px;
  color: var(--text3);
  font-family: var(--mono);
}
.sps-status {
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 8px;
}
.sps-status--waiting  { color: var(--text3); }
.sps-status--ready    { color: var(--blue, #1565c0); }
.sps-status--building { color: var(--accent, #e65100); }
.sps-status--active   { color: var(--text1); }
.sps-status--launched { color: var(--green, #2e7d32); }
.sps-chips {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px;
  margin-bottom: 8px;
}
.sps-chip {
  font-size: 10px;
  padding: 2px 7px;
  border-radius: 10px;
  white-space: nowrap;
}
.sps-chip--done    { background: var(--green-bg, #e6f4ea); color: var(--green, #2e7d32); }
.sps-chip--current { background: var(--accent-bg, #fff3e0); color: var(--accent, #e65100); font-weight: 700; }
.sps-chip--future  { background: var(--border2); color: var(--text3); }
.sps-chip-sep { font-size: 9px; color: var(--text3); padding: 0 1px; }
.sps-next {
  font-size: 11.5px;
  color: var(--text2);
  margin-bottom: 10px;
  line-height: 1.4;
}
.sps-cta { display: flex; justify-content: flex-end; }

/* ── v6-95 operator offboarding modal + release-limit note ───────────── */
.um-offboard-modal .modal-footer { display: flex; justify-content: flex-end; gap: 8px; }
.um-offboard-body { padding: 4px 20px 16px; }
.um-offboard-note { font-size: 13px; color: var(--text2); line-height: 1.5; margin: 0 0 14px; }
.um-offboard-work { display: grid; gap: 8px; background: var(--bg3); border: 1px solid var(--border); border-radius: 8px; padding: 12px 14px; margin-bottom: 14px; }
.um-offboard-stat { font-size: 13px; color: var(--text); }
.um-offboard-num { font-weight: 700; font-size: 15px; color: var(--text); margin-right: 4px; }
.um-offboard-warn { color: #e5484d; font-weight: 600; }
.um-offboard-reassign-label { display: block; font-size: 12px; font-weight: 600; color: var(--text2); margin: 0 0 6px; }
.um-offboard-select { padding: 8px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: 6px; color: var(--text); font-size: 13px; }
.um-offboard-hint { font-size: 11px; color: var(--text3); margin-top: 6px; }
.le-release-limit { margin-top: 8px; font-size: 12px; line-height: 1.5; color: var(--text2); background: rgba(245,166,35,.10); border-left: 3px solid #f5a623; padding: 8px 10px; border-radius: 4px; }

/* ── v6-96 offboarded-user archive toggle ────────────────────────────── */
.um-toggle-inactive { display: block; width: 100%; margin: 14px 0 8px; text-align: left; color: var(--text2); background: transparent; border: 1px dashed var(--border); }
.um-toggle-inactive:hover { color: var(--text); border-color: var(--text3); }
.um-inactive-list { opacity: .82; }

/* ── v6-97 reactivation state cleanup — Admin Approval + pending clarity ──── */
.um-approve-row { margin-top: 8px; }
.um-approve { display: inline-flex; align-items: center; gap: 8px; width: 100%; padding: 7px 12px; border-radius: 8px; border: 1px dashed var(--border); background: var(--bg3); font-size: 12.5px; font-weight: 600; color: var(--text2); cursor: pointer; }
.um-approve input { margin: 0; }
.um-approve--on { border-style: solid; border-color: #12a29b; background: rgba(18,162,155,.10); color: var(--text); }
.um-approve--ro { cursor: default; }
.um-pending-sub { font-size: 11.5px; color: var(--text3); margin: 2px 0 8px; line-height: 1.45; }
.um-pending-status { font-size: 10px; padding: 1px 7px; margin-left: 2px; }
.um-promote:disabled { opacity: .5; cursor: not-allowed; }

/* ═══ Article Engine V1 ═══════════════════════════════════ */

/* Engine view header */
.ae-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 18px; flex-wrap: wrap; }
.ae-title { font-size: 22px; font-weight: 600; }
.ae-sub { font-size: 13px; color: var(--text2); margin-top: 3px; }
.ae-header-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* Summary count cards */
.ae-counts { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-bottom: 16px; }
.ae-count-card { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 14px; text-align: center; }
.ae-count-num { font-family: var(--mono); font-size: 22px; font-weight: 500; color: var(--accent); }
.ae-count-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text3); margin-top: 2px; }

/* Filters row */
.aj-filters { display: flex; gap: 8px; align-items: center; margin-bottom: 14px; flex-wrap: wrap; }
.aj-filters input[type="text"] { max-width: 280px; }
.aj-filters select { width: auto; }
.aj-filter-count { font-size: 12px; color: var(--text3); margin-left: auto; }

/* Job list rows */
.aj-list { display: flex; flex-direction: column; gap: 8px; }
.aj-row { display: flex; justify-content: space-between; align-items: center; gap: 14px; background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 16px; cursor: pointer; transition: border-color 0.15s; }
.aj-row:hover { border-color: var(--accent2); }
.aj-row-main { min-width: 0; }
.aj-row-business { font-weight: 600; font-size: 14px; }
.aj-row-topic { font-size: 12.5px; color: var(--text2); margin-top: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 480px; }
.aj-row-meta { display: flex; align-items: center; gap: 8px; flex-shrink: 0; flex-wrap: wrap; justify-content: flex-end; }
.aj-row-type { font-size: 11px; color: var(--text2); border: 1px solid var(--border2); border-radius: 4px; padding: 2px 7px; white-space: nowrap; }
.aj-row-owner { font-size: 12px; color: var(--text2); }
.aj-row-updated { font-size: 11px; color: var(--text3); font-family: var(--mono); }

/* Status badges — same pill anatomy as .bs-badge */
.aj-badge { display: inline-block; padding: 2px 9px; border-radius: 12px; font-size: 11px; font-weight: 600; white-space: nowrap; }
.aj-requested { background: rgba(91,155,213,0.14); color: var(--blue);   border: 1px solid rgba(91,155,213,0.30); }
.aj-research  { background: rgba(148,113,229,0.14); color: #a78bfa;      border: 1px solid rgba(148,113,229,0.30); }
.aj-building  { background: rgba(99,102,241,0.14);  color: #818cf8;      border: 1px solid rgba(99,102,241,0.30); }
.aj-staging   { background: rgba(56,189,248,0.14);  color: #38bdf8;      border: 1px solid rgba(56,189,248,0.30); }
.aj-review    { background: rgba(232,160,48,0.16);  color: var(--amber); border: 1px solid rgba(232,160,48,0.34); }
.aj-revision  { background: rgba(232,160,48,0.10);  color: #d98a2b;      border: 1px dashed rgba(232,160,48,0.44); }
.aj-approved  { background: rgba(76,175,125,0.12);  color: var(--green); border: 1px solid rgba(76,175,125,0.28); }
.aj-published { background: rgba(76,175,125,0.18);  color: var(--green); border: 1px solid rgba(76,175,125,0.40); }
.aj-verified  { background: var(--green-bg);        color: var(--green); border: 1px solid var(--green); }
.aj-failed    { background: var(--red-bg);          color: var(--red);   border: 1px solid rgba(224,85,85,0.40); }

/* Priority + smoke chips */
.aj-pri { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text3); padding: 2px 6px; border-radius: 4px; }
.aj-pri-high { background: var(--amber-bg); color: var(--amber); }
.aj-pri-urgent { background: var(--red-bg); color: var(--red); font-weight: 600; }
.aj-smoke { font-family: var(--mono); font-size: 10.5px; font-weight: 600; padding: 2px 7px; border-radius: 4px; }
.aj-smoke-pass { background: var(--green-bg); color: var(--green); }
.aj-smoke-warn { background: var(--amber-bg); color: var(--amber); }
.aj-smoke-fail { background: var(--red-bg); color: var(--red); }

/* Empty / error states */
.ae-empty { text-align: center; padding: 48px 20px; color: var(--text2); font-size: 14px; line-height: 1.9; background: var(--bg2); border: 1px dashed var(--border2); border-radius: var(--radius-lg); }
.ae-empty small { color: var(--text3); }
.ae-error { background: var(--red-bg); color: var(--red); border: 1px solid rgba(224,85,85,0.35); border-radius: var(--radius); padding: 10px 14px; font-size: 13px; margin-bottom: 12px; }

/* Job detail modal */
.aj-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 14px; }
.aj-detail-hd { font-size: 11px; text-transform: uppercase; letter-spacing: 0.07em; color: var(--accent2); font-weight: 600; margin: 10px 0 8px; }
.aj-detail-row { display: flex; gap: 10px; padding: 4px 0; font-size: 13px; border-bottom: 1px solid var(--border); }
.aj-detail-label { flex: 0 0 120px; color: var(--text3); font-size: 11.5px; text-transform: uppercase; letter-spacing: 0.04em; padding-top: 1px; }
.aj-detail-value { min-width: 0; overflow-wrap: anywhere; }
.aj-links { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0; }
.aj-ul { margin: 4px 0 10px; padding-left: 18px; font-size: 12.5px; color: var(--text2); }
.aj-ul li { margin-bottom: 4px; overflow-wrap: anywhere; }
.aj-packet { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px; font-family: var(--mono); font-size: 11px; overflow-x: auto; max-height: 320px; color: var(--text2); }
.aj-open-revision { background: var(--amber-bg); color: var(--amber); border: 1px solid rgba(232,160,48,0.35); border-radius: var(--radius); padding: 10px 14px; font-size: 13px; margin-bottom: 12px; }

/* Inline action panels (revision / publish / verify) */
.aj-panel { background: var(--bg3); border: 1px solid var(--border2); border-radius: var(--radius); padding: 14px; margin-top: 14px; }
.aj-panel-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 10px; }

/* Dashboard engine card */
.ae-dash-card { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 16px 18px; display: flex; flex-direction: column; gap: 12px; }
.ae-dash-title { font-size: 14px; font-weight: 600; }
.ae-dash-sub { font-size: 12.5px; color: var(--text2); margin-top: 2px; }
.ae-dash-counts { display: flex; gap: 14px; flex-wrap: wrap; font-size: 12px; color: var(--text2); }
.ae-dash-count b { color: var(--accent); font-family: var(--mono); font-weight: 500; margin-right: 3px; }
.ae-dash-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* Responsive */
@media (max-width: 720px) {
  .ae-counts { grid-template-columns: repeat(2, 1fr); }
  .aj-row { flex-direction: column; align-items: flex-start; gap: 8px; }
  .aj-row-meta { justify-content: flex-start; }
  .aj-row-topic { white-space: normal; max-width: none; }
  .aj-detail-grid { grid-template-columns: 1fr; }
  .aj-filters input[type="text"] { max-width: none; width: 100%; }
  .aj-filter-count { margin-left: 0; }
}

/* Article Engine — locked asset-type chip (Create Job modal) */
.aj-type-locked { display: flex; align-items: center; gap: 8px; }
.aj-type-chip { display: inline-flex; align-items: center; padding: 8px 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); font-size: 13px; font-weight: 500; }

/* Article Engine — temporary diagnostic panel (job-visibility investigation) */
.ae-diagnostic { margin-top: 14px; background: var(--blue-bg); border: 1px solid rgba(91,155,213,0.35); border-radius: var(--radius); padding: 14px 16px; font-size: 12.5px; color: var(--text2); line-height: 1.8; }
.ae-diagnostic-hd { font-weight: 600; color: var(--blue); margin-bottom: 6px; }
.ae-diagnostic b { color: var(--text); font-family: var(--mono); font-weight: 500; }

/* Article Engine website-first studio */
.article-studio{background:radial-gradient(circle at 72% -8%,rgba(30,155,255,.11),transparent 34%),#030c18}
.article-studio-grid{display:grid;grid-template-columns:250px minmax(390px,.9fr) minmax(410px,1.1fr);gap:14px;padding:0 22px 26px;align-items:stretch}
.article-property-rail,.article-library,.article-whiteboard{min-height:620px;border:1px solid #214e70;border-radius:18px;background:linear-gradient(155deg,rgba(13,40,64,.98),rgba(4,17,30,.99));box-shadow:inset 0 1px rgba(255,255,255,.055),0 18px 38px rgba(0,0,0,.28)}
.article-property-rail{display:flex;flex-direction:column;padding:15px}.article-rail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:2px 2px 13px}.article-rail-head h2{margin:4px 0 0;font-size:17px}.article-rail-head>b{min-width:28px;height:28px;display:grid;place-items:center;border:1px solid #276a93;border-radius:50%;color:#58d6ff;background:#08233a}
.article-site-list{display:grid;gap:8px;max-height:500px;overflow:auto;padding-right:3px}.article-site-card{width:100%;display:grid;gap:4px;padding:12px;border:1px solid #1d4867;border-radius:12px;color:#dbeefa;text-align:left;background:linear-gradient(145deg,#0d2a45,#071a2d);cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}.article-site-card:hover{transform:translateX(2px);border-color:#2796d1}.article-site-card.active{border-color:#20c9ff;box-shadow:inset 3px 0 #20c9ff,0 0 18px rgba(32,201,255,.1);background:linear-gradient(145deg,#123a5d,#082039)}.article-site-card>b{font-size:13px}.article-site-card>small{overflow:hidden;color:#7196b0;text-overflow:ellipsis;white-space:nowrap}.article-site-kind{width:max-content;padding:3px 7px;border:1px solid #266082;border-radius:999px;color:#63d9ff;font-size:8px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.article-site-stats{display:flex;gap:7px;flex-wrap:wrap;margin-top:4px;color:#7898ae;font-size:9px}.article-site-stats i{font-style:normal}.article-site-stats .attention{color:#ffc447}.article-create-stack{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:auto;padding-top:14px}.article-rail-empty{padding:18px 12px;border:1px dashed #25516f;border-radius:12px;color:#7f9caf;font-size:12px;line-height:1.5}
.article-library{padding:17px}.article-property-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:15px;border-bottom:1px solid #214662}.article-property-head h2{margin:7px 0 2px;font-size:25px;letter-spacing:-.035em}.article-property-head a{color:#64cfff;font-size:11px}.article-property-head p{color:#89a5ba}.article-property-facts{display:flex;gap:8px}.article-property-facts>span{min-width:68px;padding:9px;border:1px solid #214d6d;border-radius:10px;color:#7191a8;font-size:9px;text-align:center;background:#071b2d}.article-property-facts b{display:block;margin-bottom:2px;color:#e4f2fc;font-size:13px}.article-library-tools{display:grid;gap:10px;padding:15px 0 10px}.article-tabs{display:flex;gap:5px}.article-tabs button{padding:7px 11px;border:1px solid #214d6c;border-radius:9px;color:#89a9c0;background:#071b2d;cursor:pointer}.article-tabs button.active{border-color:#20c9ff;color:#ecf9ff;background:#0b3150;box-shadow:0 0 13px rgba(32,201,255,.1)}.article-tabs b{margin-left:5px;color:#53d8ff}.article-search-row{display:grid;grid-template-columns:1fr 145px;gap:8px}.article-search-row input,.article-search-row select{width:100%}.article-topic-guard{display:flex;align-items:center;gap:9px;margin-bottom:10px;padding:10px 12px;border:1px solid #175b68;border-radius:11px;background:linear-gradient(90deg,rgba(8,64,67,.45),rgba(5,28,42,.7))}.article-topic-guard>i{width:9px;height:9px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 10px #1ce1cf}.article-topic-guard>span{display:grid}.article-topic-guard b{font-size:11px}.article-topic-guard small{margin-top:2px;color:#7fa2b5;font-size:9px}.article-content-list{display:grid;gap:7px;max-height:390px;overflow:auto;padding-right:3px}.article-content-row{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto 12px;gap:9px;align-items:center;padding:10px;border:1px solid #1e4866;border-radius:11px;color:#dbeefa;text-align:left;background:linear-gradient(90deg,#0b2740,#071b2d);cursor:pointer;transition:transform .16s,border-color .16s}.article-content-row:hover{transform:translateX(2px);border-color:#2b88bb}.article-content-row.active{border-color:#20c9ff;background:linear-gradient(90deg,#0f3554,#082137);box-shadow:inset 3px 0 #20c9ff}.article-content-icon{width:30px;height:30px;display:grid;place-items:center;border:1px solid #2b6f98;border-radius:8px;color:#5dd8ff;font-weight:800;background:#08213a}.article-content-copy{min-width:0;display:grid;gap:3px}.article-content-copy>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.article-content-copy>small{color:#7192a9;font-size:9px}.article-row-arrow{color:#54d6ff;font-size:20px}.article-content-empty{display:grid;place-items:center;align-content:center;gap:4px;min-height:180px;border:1px dashed #214e6c;border-radius:12px;color:#7898ae}.article-content-empty>b{color:#d5eafb}
.article-whiteboard{display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(155deg,#102d49,#061626 46%,#020a13)}.article-preview-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:15px;border-bottom:1px solid #214d6d}.article-preview-toolbar>div:first-child{min-width:0;display:grid;gap:5px}.article-preview-toolbar b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.article-preview-toolbar>div:last-child{display:flex;gap:6px;flex-shrink:0}.article-preview-meta{display:flex;align-items:center;gap:9px;padding:9px 15px;color:#7898ae;font-size:9px;border-bottom:1px solid #183b55}.article-preview-frame{width:100%;min-height:475px;flex:1;border:0;background:#fff}.article-preview-empty{min-height:475px;display:grid;place-items:center;flex:1;padding:24px;background:radial-gradient(circle at 50% 20%,rgba(31,139,217,.13),transparent 44%)}.article-paper{width:min(330px,90%);min-height:370px;padding:34px;border-radius:4px;color:#223044;background:#f8fafc;box-shadow:0 22px 55px rgba(0,0,0,.5);transform:perspective(900px) rotateY(-2deg)}.article-paper>span{color:#5c7890;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.article-paper h3{margin:20px 0 10px;font-size:27px;line-height:1.12}.article-paper p{color:#607286;font-size:12px;line-height:1.55}.article-paper>div{height:7px;margin-top:13px;border-radius:999px;background:#d9e4ec}.article-paper>div.short{width:62%}.article-paper.blank{min-height:280px}.article-preview-footer{display:flex;justify-content:space-between;gap:12px;padding:10px 15px;border-top:1px solid #183b55;color:#708fa5;font-size:9px}.article-preview-footer a{color:#5bd5ff}
.article-paper>span{color:#415f77}
@media(max-width:1500px){.article-studio-grid{grid-template-columns:220px minmax(360px,1fr) minmax(360px,1fr)}}
@media(max-width:1250px){.article-studio-grid{grid-template-columns:220px 1fr}.article-whiteboard{grid-column:1/-1;min-height:560px}.article-preview-frame,.article-preview-empty{min-height:460px}}
@media(max-width:800px){.article-studio-grid{grid-template-columns:1fr;padding:0 12px 20px}.article-property-rail,.article-library,.article-whiteboard{min-height:0}.article-site-list{max-height:250px}.article-property-head{flex-direction:column}.article-property-facts{width:100%}.article-property-facts>span{flex:1}.article-search-row{grid-template-columns:1fr}.article-content-list{max-height:none}.article-whiteboard{grid-column:auto}.article-preview-toolbar,.article-preview-footer{flex-direction:column}.article-preview-frame,.article-preview-empty{min-height:420px}}

/* Password recovery / forgot-password (2026-07-10) */
.login-forgot-link { background: none; border: none; color: var(--text2); font-size: 12px; text-decoration: underline; cursor: pointer; padding: 2px 0; text-align: center; }
.login-forgot-link:hover { color: var(--accent2); }
.login-forgot-box { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--border); display: flex; flex-direction: column; gap: 12px; }
/* ── New-user onboarding (v6-153) ── */
.login-onboard-hint { font-size: 13px; color: var(--text2); line-height: 1.55; margin: 4px 0 14px; }
.login-req { font-size: 11.5px; color: var(--text3); line-height: 1.5; margin: 2px 0 4px; }
.login-pw-wrap { position: relative; display: block; }
.login-pw-wrap .login-input { width: 100%; padding-right: 40px; box-sizing: border-box; }
.login-pw-toggle { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); background: none; border: none; cursor: pointer; font-size: 14px; opacity: 0.65; padding: 4px 6px; }
.login-pw-toggle:hover { opacity: 1; }
.login-forgot-sent { font-size: 13px; color: var(--green); background: var(--green-bg); border: 1px solid rgba(76,175,125,0.3); border-radius: var(--radius); padding: 10px 12px; line-height: 1.5; text-align: center; }
.login-forgot-actions { display: flex; gap: 8px; justify-content: flex-end; }

/* User invitation note (2026-07-10 — secure invite flow) */
.um-invite-note { font-size: 12px; color: var(--text2); background: var(--blue-bg); border: 1px solid rgba(91,155,213,0.3); border-radius: var(--radius); padding: 10px 12px; margin-bottom: 12px; line-height: 1.5; }

/* ══════════════════════════════════════════════════════════════════════════
   SOCIAL CONTENT ENGINE V1 (v6-120) — self-contained, reuses :root tokens
   ══════════════════════════════════════════════════════════════════════════ */
.soc-engine { padding: 4px 0; }
.soc-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 16px; }
.soc-head-title { font-size: 20px; font-weight: 700; color: var(--text); letter-spacing: -0.01em; }
.soc-ver { font-size: 11px; font-weight: 600; color: var(--accent2); background: var(--bg3); border: 1px solid var(--border); border-radius: 999px; padding: 1px 8px; margin-left: 6px; vertical-align: middle; }
.soc-head-sub { font-size: 13px; color: var(--text2); margin-top: 4px; max-width: 62ch; line-height: 1.5; }
.soc-subnav { display: flex; gap: 4px; border-bottom: 1px solid var(--border); margin-bottom: 16px; }
.soc-subtab { background: none; border: none; border-bottom: 2px solid transparent; color: var(--text2); font-size: 13px; font-weight: 600; padding: 8px 14px; cursor: pointer; font-family: inherit; }
.soc-subtab:hover { color: var(--text); }
.soc-subtab.active { color: var(--accent); border-bottom-color: var(--accent2); }
.soc-count { font-size: 11px; background: var(--bg3); color: var(--text2); border-radius: 999px; padding: 1px 7px; margin-left: 4px; }
.soc-muted { color: var(--text3); }

.soc-badge { display: inline-flex; align-items: center; font-size: 11px; font-weight: 600; padding: 2px 9px; border-radius: 999px; white-space: nowrap; border: 1px solid transparent; }
.soc-b-draft { background: var(--bg3); color: var(--text2); border-color: var(--border2); }
.soc-b-build { background: var(--blue-bg); color: var(--blue); border-color: rgba(91,155,213,0.4); }
.soc-b-review { background: var(--amber-bg); color: var(--amber); border-color: rgba(232,160,48,0.4); }
.soc-b-rev { background: var(--red-bg); color: var(--red); border-color: rgba(224,85,85,0.4); }
.soc-b-ready { background: var(--green-bg); color: var(--green); border-color: rgba(76,175,125,0.4); }
.soc-b-approved { background: var(--green-bg); color: var(--green); border-color: rgba(76,175,125,0.4); }
.soc-b-active { background: rgba(76,175,125,0.18); color: var(--green); border-color: var(--green); }
.soc-b-paused { background: var(--amber-bg); color: var(--amber); border-color: rgba(232,160,48,0.4); }
.soc-b-complete { background: var(--bg3); color: var(--accent); border-color: var(--accent2); }
.soc-b-arch { background: var(--bg2); color: var(--text3); border-color: var(--border); }

.soc-filter { flex-wrap: wrap; gap: 6px; margin-bottom: 14px; }
.soc-chip { background: var(--bg3); border: 1px solid var(--border); color: var(--text2); font-size: 12px; font-weight: 600; padding: 4px 11px; border-radius: 999px; cursor: pointer; font-family: inherit; }
.soc-chip:hover { color: var(--text); border-color: var(--border2); }
.soc-chip.active { background: var(--accent2); color: #1a1400; border-color: var(--accent2); }

.soc-list { display: flex; flex-direction: column; gap: 2px; }
.soc-list-head, .soc-row { display: grid; grid-template-columns: 2.4fr 1fr 0.7fr 1.6fr 1.1fr 1fr; gap: 12px; align-items: center; padding: 10px 12px; }
.soc-list-head { font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text3); font-weight: 600; border-bottom: 1px solid var(--border); }
.soc-row { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); cursor: pointer; transition: border-color 0.12s, background 0.12s; }
.soc-row:hover { border-color: var(--accent2); background: var(--bg4); }
.soc-row-main { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.soc-row-name { font-size: 14px; font-weight: 600; color: var(--text); }
.soc-row-offer { font-size: 12px; color: var(--text2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.soc-row-date, .soc-row-prog, .soc-row-funnel, .soc-row-owner { font-size: 12.5px; color: var(--text2); }
.soc-flag { color: var(--amber); font-weight: 600; }

.soc-empty { text-align: center; padding: 60px 20px; }
.soc-empty-emoji { font-size: 40px; margin-bottom: 12px; }
.soc-empty-title { font-size: 17px; font-weight: 700; color: var(--text); margin-bottom: 6px; }
.soc-empty-sub { font-size: 13px; color: var(--text2); max-width: 46ch; margin: 0 auto 18px; line-height: 1.55; }
.soc-empty-items { text-align: center; padding: 28px 20px; color: var(--text2); font-size: 13px; background: var(--bg3); border: 1px dashed var(--border2); border-radius: var(--radius); line-height: 1.6; }

.soc-cal { display: flex; flex-direction: column; gap: 14px; }
.soc-cal-day { border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.soc-cal-unsched { border-style: dashed; }
.soc-cal-date { background: var(--bg3); padding: 8px 14px; font-size: 12px; font-weight: 700; color: var(--accent); border-bottom: 1px solid var(--border); }
.soc-cal-items { display: flex; flex-direction: column; }
.soc-cal-item { display: grid; grid-template-columns: 1.6fr 2fr auto; gap: 12px; align-items: center; padding: 10px 14px; border-bottom: 1px solid var(--border); cursor: pointer; }
.soc-cal-item:last-child { border-bottom: none; }
.soc-cal-item:hover { background: var(--bg3); }
.soc-cal-title { font-size: 13px; font-weight: 600; color: var(--text); }
.soc-cal-meta { font-size: 12px; color: var(--text2); }
.soc-cal-tags { display: flex; gap: 8px; align-items: center; justify-content: flex-end; }
.soc-asset-chip { font-size: 11px; color: var(--text3); background: var(--bg3); border: 1px solid var(--border); border-radius: 999px; padding: 1px 8px; }
.soc-asset-chip.ok { color: var(--green); border-color: rgba(76,175,125,0.4); }

.soc-brand { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: 16px; }
.soc-brand summary { cursor: pointer; padding: 12px 16px; font-size: 13px; font-weight: 600; color: var(--accent); }
.soc-brand-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; padding: 6px 18px 18px; }
.soc-brand-grid h5 { font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text3); margin: 0 0 6px; font-weight: 700; }
.soc-brand-grid p, .soc-brand-grid ul { font-size: 12.5px; color: var(--text2); margin: 0; line-height: 1.55; }
.soc-brand-grid ul { padding-left: 16px; }
.soc-lib-filters { display: flex; gap: 16px; flex-wrap: wrap; margin-bottom: 14px; }
.soc-lib-filters label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); font-weight: 600; display: flex; flex-direction: column; gap: 4px; }
.soc-lib-filters select { min-width: 150px; }
.soc-lib-list { display: flex; flex-direction: column; gap: 2px; }
.soc-lib-item { display: grid; grid-template-columns: auto 2fr 1.6fr auto; gap: 12px; align-items: center; padding: 9px 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); cursor: pointer; }
.soc-lib-item:hover { border-color: var(--accent2); }
.soc-lib-main { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.soc-lib-title { font-size: 13px; font-weight: 600; color: var(--text); }
.soc-lib-camp { font-size: 11.5px; color: var(--text3); }
.soc-lib-plats, .soc-item-plats { display: flex; gap: 4px; flex-wrap: wrap; align-items: center; }
.soc-plat-chip { font-size: 10.5px; color: var(--text2); background: var(--bg4); border: 1px solid var(--border); border-radius: 999px; padding: 1px 7px; }
.soc-plat-chip.ok { color: var(--green); border-color: rgba(76,175,125,0.4); }

.soc-lib-pillar, .soc-item-pillar { font-size: 10.5px; font-weight: 700; padding: 2px 8px; border-radius: 999px; white-space: nowrap; text-transform: uppercase; letter-spacing: 0.03em; }
.soc-pill-problem { background: var(--red-bg); color: var(--red); }
.soc-pill-education { background: var(--blue-bg); color: var(--blue); }
.soc-pill-authority { background: rgba(196,169,107,0.15); color: var(--accent2); }
.soc-pill-proof { background: var(--green-bg); color: var(--green); }
.soc-pill-offer { background: var(--amber-bg); color: var(--amber); }
.soc-pill-objection { background: var(--red-bg); color: var(--red); }
.soc-pill-outcome { background: var(--green-bg); color: var(--green); }
.soc-pill-behind { background: var(--bg4); color: var(--text2); }
.soc-pill-faq { background: var(--blue-bg); color: var(--blue); }
.soc-pill-local { background: rgba(196,169,107,0.15); color: var(--accent2); }

.soc-wizard { max-width: 640px; }
.soc-wizard-steps { display: flex; gap: 8px; padding: 0 24px 4px; }
.soc-wstep { width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 700; background: var(--bg3); color: var(--text3); border: 1px solid var(--border2); }
.soc-wstep.active { background: var(--accent2); color: #1a1400; border-color: var(--accent2); }
.soc-wstep.done { background: var(--green-bg); color: var(--green); border-color: rgba(76,175,125,0.4); }
.soc-wizard-body { display: flex; flex-direction: column; gap: 14px; }
.soc-w-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text3); font-weight: 700; margin-top: 4px; }
.soc-w-checks { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 16px; }
.soc-wizard-foot { display: flex; justify-content: space-between; }

.soc-brief-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 20px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px 16px; }
.soc-brief-full { grid-column: 1 / -1; }
.soc-brief-grid > div, .soc-brief-grid > .soc-brief-full { font-size: 13px; color: var(--text); line-height: 1.5; }
.soc-bk, .soc-vk, .soc-fk { display: block; font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); font-weight: 700; margin-bottom: 2px; }
.soc-brief-grid code, .soc-prog-track code { font-family: var(--mono); font-size: 12px; color: var(--accent); background: var(--bg); padding: 1px 6px; border-radius: 4px; }

.soc-ov { display: flex; flex-direction: column; gap: 16px; }
.soc-ov-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.soc-ov-progress { display: flex; gap: 22px; align-items: center; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 18px; flex-wrap: wrap; }
.soc-prog-stat { display: flex; flex-direction: column; align-items: center; min-width: 46px; }
.soc-prog-stat b { font-size: 20px; color: var(--text); font-weight: 700; }
.soc-prog-stat span { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); }
.soc-prog-stat.flag b { color: var(--amber); }
.soc-prog-track { margin-left: auto; font-size: 12px; color: var(--text2); }
.soc-items-head { font-size: 12px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text3); font-weight: 700; }
.soc-items { display: flex; flex-direction: column; gap: 2px; }
.soc-item-row { display: grid; grid-template-columns: auto 2.2fr 1.6fr 0.8fr auto auto; gap: 12px; align-items: center; padding: 9px 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); cursor: pointer; }
.soc-item-row:hover { border-color: var(--accent2); background: var(--bg4); }
.soc-item-main { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.soc-item-title { font-size: 13px; font-weight: 600; color: var(--text); }
.soc-item-msg { font-size: 11.5px; color: var(--text3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.soc-item-approved { font-size: 10.5px; color: var(--text3); margin-left: 4px; }
.soc-item-sched { font-size: 12px; color: var(--text2); }
.soc-item-review { font-size: 12px; color: var(--accent2); font-weight: 600; white-space: nowrap; }

.soc-edit { display: flex; flex-direction: column; gap: 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; }
.soc-edit-foot { display: flex; gap: 8px; }
.soc-plan-paste, .soc-revise { display: flex; flex-direction: column; gap: 10px; }
.soc-plan-btns { display: flex; gap: 8px; }
.soc-plan-paste textarea, .soc-revise textarea { width: 100%; font-family: var(--mono); font-size: 12px; }

.soc-review { display: flex; flex-direction: column; gap: 16px; }
.soc-rev-top { border-bottom: 1px solid var(--border); padding-bottom: 12px; }
.soc-rev-meta { display: flex; gap: 8px; align-items: center; margin-bottom: 8px; flex-wrap: wrap; }
.soc-rev-type { font-size: 12px; color: var(--text2); }
.soc-rev-track { font-size: 11px; font-family: var(--mono); color: var(--text3); }
.soc-rev-title { font-size: 16px; font-weight: 700; color: var(--text); margin-bottom: 4px; }
.soc-rev-msg { font-size: 13px; color: var(--text2); line-height: 1.5; margin-bottom: 8px; }
.soc-needs { font-size: 12px; color: var(--amber); background: var(--amber-bg); border: 1px solid rgba(232,160,48,0.35); border-radius: var(--radius); padding: 8px 12px; margin-top: 8px; line-height: 1.5; }
.soc-rev-schedule { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; }
.soc-rev-schedule label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); font-weight: 600; display: flex; flex-direction: column; gap: 4px; }
.soc-rev-schedule input[type=date] { max-width: 180px; }
.soc-rev-item-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.soc-item-edit { display: flex; flex-direction: column; gap: 10px; }

.soc-var-tabs { display: flex; gap: 4px; border-bottom: 1px solid var(--border); flex-wrap: wrap; }
.soc-var-tab { background: none; border: none; border-bottom: 2px solid transparent; color: var(--text2); font-size: 12.5px; font-weight: 600; padding: 7px 12px; cursor: pointer; font-family: inherit; }
.soc-var-tab:hover { color: var(--text); }
.soc-var-tab.active { color: var(--accent); border-bottom-color: var(--accent2); }
.soc-var-ok { color: var(--green); }
.soc-var-pub { color: var(--blue); }
.soc-var-panel { display: flex; flex-direction: column; gap: 14px; }
.soc-var-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.soc-var-headbtns { display: flex; gap: 6px; flex-wrap: wrap; }
.soc-var-origin { font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; padding: 2px 9px; border-radius: 999px; }
.soc-origin-ai-draft { background: var(--bg3); color: var(--text2); border: 1px solid var(--border2); }
.soc-origin-human-edited { background: var(--blue-bg); color: var(--blue); }
.soc-origin-approved { background: var(--green-bg); color: var(--green); }
.soc-origin-published { background: rgba(76,175,125,0.18); color: var(--green); }
.soc-var-read { display: flex; flex-direction: column; gap: 12px; }
.soc-field { display: flex; flex-direction: column; gap: 3px; }
.soc-fv { font-size: 13.5px; color: var(--text); line-height: 1.55; }
.soc-hook { font-weight: 600; }
.soc-caption { white-space: pre-wrap; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; }
.soc-tags { display: flex; gap: 6px; flex-wrap: wrap; }
.soc-tag { font-size: 12px; color: var(--blue); }
.soc-link { font-family: var(--mono); font-size: 11.5px; color: var(--accent2); word-break: break-all; }
.soc-var-editor { display: flex; flex-direction: column; gap: 10px; }
.soc-var-editor label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); font-weight: 600; display: flex; flex-direction: column; gap: 4px; }
.soc-e-visual-head { font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--accent2); font-weight: 700; margin-top: 6px; border-top: 1px solid var(--border); padding-top: 10px; }

.soc-visual { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px 16px; }
.soc-visual-head { font-size: 12px; font-weight: 700; color: var(--text); margin-bottom: 10px; display: flex; align-items: center; gap: 8px; }
.soc-asset-status { font-size: 10px; font-weight: 700; text-transform: uppercase; padding: 1px 7px; border-radius: 999px; }
.soc-as-brief { background: var(--bg4); color: var(--text3); }
.soc-as-uploaded { background: var(--green-bg); color: var(--green); }
.soc-visual-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 18px; }
.soc-visual-grid > div { font-size: 12.5px; color: var(--text); line-height: 1.45; }
.soc-visual-full { grid-column: 1 / -1; }
.soc-visual-upload { display: flex; align-items: center; gap: 10px; margin-top: 12px; flex-wrap: wrap; }
.soc-asset-preview { max-width: 120px; max-height: 120px; border-radius: var(--radius); border: 1px solid var(--border2); }
.soc-upload-btn { cursor: pointer; }
.soc-var-foot { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; padding-top: 4px; border-top: 1px solid var(--border); }
.soc-pub { display: flex; gap: 6px; align-items: center; }
.soc-pub input { max-width: 220px; }
.soc-pub-done { font-size: 12px; color: var(--green); }
.soc-crumb { color: var(--accent2); cursor: pointer; text-decoration: underline; }

/* v6-122 UX patch — JSON handoff clarity + visual-asset workflow */
.soc-handoff-steps { margin: 0 0 8px; padding-left: 18px; font-size: 12.5px; color: var(--text2); line-height: 1.7; }
.soc-handoff-steps b { color: var(--text); }
.soc-handoff-hint { font-size: 12px; color: var(--accent); background: var(--bg); border: 1px solid var(--border2); border-radius: var(--radius); padding: 8px 12px; margin-bottom: 4px; }
.soc-plan-msg { font-size: 12.5px; border-radius: var(--radius); padding: 8px 12px; line-height: 1.5; }
.soc-plan-msg--ok { color: var(--green); background: var(--green-bg); border: 1px solid rgba(76,175,125,0.35); }
.soc-plan-msg--err { color: var(--red); background: var(--red-bg); border: 1px solid rgba(224,85,85,0.35); }
.soc-visual-note { font-size: 12px; color: var(--text2); margin-bottom: 10px; line-height: 1.5; }
.soc-asset-state { font-size: 11px; font-weight: 700; letter-spacing: 0.03em; color: var(--amber); }
.soc-visual-actions { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 10px; }
.soc-asset-attached { display: flex; gap: 14px; align-items: flex-start; background: var(--bg4); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; }
.soc-asset-meta { display: flex; flex-direction: column; gap: 6px; font-size: 12px; color: var(--text); }
.soc-asset-empty { font-size: 12px; color: var(--text3); font-style: italic; }
.soc-as-ready { background: rgba(76,175,125,0.18); color: var(--green); }
/* v6-123 clarity micro-patch — "nothing is published here" reassurance text */
.soc-import-note { font-size: 11.5px; color: var(--text3); margin-top: 6px; line-height: 1.4; }
.soc-pub-hint { flex-basis: 100%; font-size: 11.5px; color: var(--text3); margin-top: 2px; line-height: 1.4; }

/* ══ Social Publisher V1 (v6-124) — preview + publish state + board ══ */
/* Publish-state badges */
.soc-pb { display: inline-flex; align-items: center; font-size: 11px; font-weight: 600; padding: 2px 9px; border-radius: 999px; white-space: nowrap; border: 1px solid transparent; }
.soc-pb-draft { background: var(--bg3); color: var(--text2); border-color: var(--border2); }
.soc-pb-approved { background: var(--green-bg); color: var(--green); border-color: rgba(76,175,125,0.4); }
.soc-pb-scheduled { background: var(--blue-bg); color: var(--blue); border-color: rgba(91,155,213,0.4); }
.soc-pb-publishing { background: var(--amber-bg); color: var(--amber); border-color: rgba(232,160,48,0.4); }
.soc-pb-published { background: rgba(76,175,125,0.18); color: var(--green); border-color: var(--green); }
.soc-pb-retrying { background: var(--amber-bg); color: var(--amber); border-color: rgba(232,160,48,0.5); }
.soc-pb-attn { background: var(--red-bg); color: var(--red); border-color: rgba(224,85,85,0.5); }

/* Publisher section in the variant panel */
.soc-publish { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 14px; margin-top: 4px; }
.soc-publish-head { display: flex; align-items: center; gap: 10px; font-size: 12px; font-weight: 700; color: var(--text); margin-bottom: 8px; }
.soc-preview-btn { margin-left: auto; }
.soc-publish-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-bottom: 8px; }
.soc-publish-sched { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); font-weight: 600; display: flex; flex-direction: column; gap: 4px; }
.soc-publish-sched input { max-width: 170px; }
.soc-publish-fail { font-size: 12px; color: var(--red); }
.soc-publish-retry { font-size: 12px; color: var(--amber); }
.soc-publish-live { font-size: 12px; color: var(--green); }
.soc-mock-tag { font-size: 9.5px; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; color: var(--amber); background: var(--amber-bg); border: 1px solid rgba(232,160,48,0.4); border-radius: 4px; padding: 1px 5px; }
.soc-publish-actions { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 8px; }
.soc-publish-note { font-size: 11px; color: var(--text3); line-height: 1.45; }

/* Platform preview cards (approximate) */
.soc-pv { margin: 6px 0 12px; }
.soc-pv-disc { font-size: 10.5px; color: var(--text3); font-style: italic; margin-bottom: 4px; }
.soc-pv-card { max-width: 380px; background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius-lg); overflow: hidden; }
.soc-pv-head { display: flex; align-items: center; gap: 8px; padding: 10px 12px; }
.soc-pv-avatar { width: 30px; height: 30px; border-radius: 50%; background: var(--accent2); color: #1a1400; font-weight: 800; display: flex; align-items: center; justify-content: center; font-size: 14px; }
.soc-pv-id { flex: 1; min-width: 0; }
.soc-pv-name { font-size: 13px; font-weight: 700; color: var(--text); }
.soc-pv-sub { font-size: 11px; color: var(--text3); }
.soc-pv-chan { font-size: 10px; font-weight: 700; text-transform: uppercase; color: var(--text2); background: var(--bg3); border: 1px solid var(--border); border-radius: 999px; padding: 1px 8px; }
.soc-pv-text { padding: 4px 12px 10px; font-size: 13px; color: var(--text); line-height: 1.5; white-space: pre-wrap; }
.soc-pv-final { margin: 0; font-family: var(--font); word-break: break-word; }
.soc-pv-missing { color: var(--red); font-style: italic; }
/* "Exact text that will post" preview in the shared publish block */
/* "Exact text that will post" — prominent + sits directly above the publish actions. */
.studio-finaltext { margin: 8px 0 10px; border: 1px solid var(--border2); border-radius: var(--radius); background: var(--bg3); overflow: hidden; }
.studio-finaltext summary { cursor: pointer; font-size: 12px; font-weight: 600; color: var(--text2); padding: 8px 11px; list-style: none; user-select: none; }
.studio-finaltext summary::-webkit-details-marker { display: none; }
.studio-finaltext summary::before { content: "▸ "; color: var(--text3); }
.studio-finaltext[open] summary::before { content: "▾ "; }
.studio-finaltext[open] summary { border-bottom: 1px solid var(--border); }
.studio-finaltext-pre { white-space: pre-wrap; word-break: break-word; font-family: var(--font); font-size: 13px; line-height: 1.55; color: var(--text); background: var(--bg2); padding: 10px 12px; margin: 0; }
/* Full "Preview Post" — the complete platform-style post shown above the publish actions. */
.soc-preview-btn { margin-left: auto; }
.studio-preview-wrap { margin: 8px 0 12px; max-width: 640px; }
/* Overdue / Needs-Attention banner in the publish block. */
.studio-pub-attn { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 12.5px; line-height: 1.5; color: var(--amber); background: var(--amber-bg); border: 1px solid var(--amber); border-radius: var(--radius); padding: 8px 11px; margin-bottom: 10px; }
.studio-pub-attn b { color: var(--amber); }
/* Read-only per-platform schedule summary in the review panel (replaces the blank date input). */
.soc-rev-sched-summary { font-size: 12px; color: var(--text3); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.soc-sched-chip { font-size: 11.5px; color: var(--text2); background: var(--bg3); border: 1px solid var(--border); border-radius: 999px; padding: 2px 10px; }
.soc-pv-media { position: relative; background: var(--bg4); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); min-height: 120px; display: flex; align-items: center; justify-content: center; }
.soc-pv-media img { width: 100%; display: block; max-height: 320px; object-fit: cover; }
.soc-pv-noimg { flex-direction: column; gap: 6px; color: var(--text3); font-size: 12px; padding: 22px; }
.soc-pv-onimg { position: absolute; bottom: 8px; left: 10px; right: 10px; font-size: 15px; font-weight: 800; color: #fff; text-shadow: 0 1px 6px rgba(0,0,0,0.7); }
.soc-pv-noimg .soc-pv-onimg { position: static; color: var(--text); text-shadow: none; }
.soc-pv-ar { font-size: 10px; color: var(--text3); border: 1px dashed var(--border2); border-radius: 4px; padding: 1px 6px; }
.soc-pv-cta { margin: 10px 12px 2px; text-align: center; font-size: 12px; font-weight: 700; color: var(--accent); background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 7px; }
.soc-pv-linkrow { padding: 8px 12px 2px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.soc-pv-link { font-family: var(--mono); font-size: 10.5px; color: var(--accent2); word-break: break-all; }
.soc-pv-dest-clean { font-size: 12px; color: var(--accent2); font-weight: 600; }
.soc-track-toggle { margin-left: auto; }
.soc-track { margin: 4px 12px 2px; background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 8px 10px; display: flex; flex-direction: column; gap: 4px; }
.soc-track-row { display: flex; gap: 10px; font-size: 11px; }
.soc-track-k { min-width: 96px; color: var(--text3); text-transform: uppercase; letter-spacing: 0.03em; font-weight: 600; }
.soc-track-v { color: var(--text); font-family: var(--mono); word-break: break-all; }
.soc-track-full { border-top: 1px solid var(--border); padding-top: 4px; margin-top: 2px; }
.soc-track-url { color: var(--accent2); }
.soc-pv-dest { padding: 2px 12px 12px; font-size: 11px; color: var(--text2); }
.soc-pv-facebook .soc-pv-avatar { background: #1877f2; color: #fff; }
.soc-pv-instagram .soc-pv-avatar { background: linear-gradient(45deg,#f09433,#dc2743,#bc1888); color: #fff; }
.soc-pv-linkedin .soc-pv-avatar { background: #0a66c2; color: #fff; }
.soc-pv-gbp .soc-pv-avatar { background: #4285f4; color: #fff; }
.soc-pv-warn { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 6px; }
.soc-pv-w { font-size: 11px; padding: 2px 8px; border-radius: 999px; background: var(--amber-bg); color: var(--amber); border: 1px solid rgba(232,160,48,0.35); }
.soc-pv-w-caption, .soc-pv-w-asset { background: var(--red-bg); color: var(--red); border-color: rgba(224,85,85,0.35); }
.soc-pv-ok { font-size: 11.5px; color: var(--green); margin-top: 6px; }

/* Bulk publishing ops in campaign overview */
.soc-pub-ops { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 16px; }
.soc-pub-ops-h { font-size: 12px; font-weight: 700; color: var(--text); margin-bottom: 8px; }
.soc-pub-ops-row { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.soc-pub-ops-stats { display: flex; gap: 16px; flex-wrap: wrap; font-size: 12px; color: var(--text2); }
.soc-pub-ops-stats b { color: var(--text); }
.soc-pub-ops-stats .pub b { color: var(--green); }
.soc-pub-ops-stats .attn b { color: var(--red); }

/* Publishing board */
.soc-pub-board { display: flex; flex-direction: column; gap: 14px; }
.soc-pub-summary { display: flex; gap: 22px; align-items: center; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 18px; flex-wrap: wrap; }
.soc-pubstat { display: flex; flex-direction: column; align-items: center; min-width: 54px; }
.soc-pubstat b { font-size: 20px; font-weight: 700; color: var(--text); }
.soc-pubstat span { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); }
.soc-pubstat.sched b { color: var(--blue); }
.soc-pubstat.pub b { color: var(--green); }
.soc-pubstat.attn b { color: var(--red); }
.soc-pub-note { font-size: 12px; color: var(--text2); background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 14px; line-height: 1.5; }
.soc-pub-note code { font-family: var(--mono); font-size: 11px; color: var(--accent); }
.soc-pub-cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.soc-pubcol { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.soc-pubcol-h { font-size: 12px; font-weight: 700; padding: 8px 12px; border-bottom: 1px solid var(--border); color: var(--text); display: flex; justify-content: space-between; align-items: center; }
.soc-pubcol-h.attn { color: var(--red); }
.soc-pubcol-h.sched { color: var(--blue); }
.soc-pubcol-h.pub { color: var(--green); }
.soc-pubcol-h.run { color: var(--amber); }
.soc-pubcard { display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-bottom: 1px solid var(--border); cursor: pointer; font-size: 12px; flex-wrap: wrap; }
.soc-pubcard:hover { background: var(--bg4); }
.soc-pubcard-main { display: flex; flex-direction: column; min-width: 0; flex: 1; }
.soc-pubcard-title { font-weight: 600; color: var(--text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.soc-pubcard-sub { font-size: 10.5px; color: var(--text3); }
.soc-pubcard-err { flex-basis: 100%; font-size: 11px; color: var(--red); }
.soc-pubcard-url { font-size: 11px; color: var(--accent2); }
.soc-pubcol-empty { padding: 12px; color: var(--text3); font-size: 12px; text-align: center; }
@media (max-width: 900px) { .soc-pub-cols { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .soc-pub-cols { grid-template-columns: 1fr; } }

/* Platform connections (Meta) */
.soc-conn { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 16px; }
.soc-conn-h { font-size: 12px; font-weight: 700; color: var(--text); margin-bottom: 10px; }
.soc-conn-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.soc-conn-card { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; }
.soc-conn-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 4px; }
.soc-conn-name { font-size: 13px; font-weight: 600; color: var(--text); }
.soc-conn-badge { font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; padding: 2px 8px; border-radius: 999px; border: 1px solid transparent; }
.soc-conn-none { background: var(--bg3); color: var(--text3); border-color: var(--border2); }
.soc-conn-ok { background: var(--green-bg); color: var(--green); border-color: rgba(76,175,125,0.4); }
.soc-conn-exp { background: var(--amber-bg); color: var(--amber); border-color: rgba(232,160,48,0.4); }
.soc-conn-attn { background: var(--red-bg); color: var(--red); border-color: rgba(224,85,85,0.4); }
.soc-conn-acct { font-size: 12px; color: var(--text2); }
.soc-conn-check { font-size: 11px; color: var(--text3); margin-bottom: 8px; }
.soc-conn-actions { display: flex; gap: 6px; flex-wrap: wrap; }
.soc-conn-gate { font-size: 10.5px; color: var(--text3); margin-top: 4px; }
.soc-conn-grid { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1000px) { .soc-conn-grid { grid-template-columns: 1fr 1fr; } }
.soc-conn-note { font-size: 11px; color: var(--text3); margin-top: 10px; line-height: 1.5; }
/* QA inventory */
.soc-qa { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 16px; }
.soc-qa-h { font-size: 12px; font-weight: 700; color: var(--text); margin-bottom: 10px; }
.soc-qa-list { display: flex; flex-direction: column; gap: 4px; }
.soc-qa-row { display: grid; grid-template-columns: 1.6fr 2fr auto auto; gap: 12px; align-items: center; background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 8px 12px; }
.soc-qa-name { font-size: 13px; font-weight: 600; color: var(--text); display: flex; gap: 8px; align-items: center; }
.soc-qa-meta { font-size: 11.5px; color: var(--text2); }
.soc-qa-id code { font-family: var(--mono); font-size: 10.5px; color: var(--text3); }
.soc-qa-actions { display: flex; gap: 6px; }
.soc-qa-empty { font-size: 12px; color: var(--text3); font-style: italic; line-height: 1.5; }
.soc-qa-note { font-size: 11px; color: var(--text3); margin-top: 10px; line-height: 1.5; }
.soc-qa-note code, .soc-qa-empty code { font-family: var(--mono); font-size: 10.5px; color: var(--accent2); }
@media (max-width: 720px) { .soc-qa-row { grid-template-columns: 1fr; gap: 4px; } }
.soc-conn-note code { font-family: var(--mono); font-size: 10.5px; color: var(--accent2); }

/* Controlled live-test gate */
.soc-lt { background: var(--red-bg); border: 1px solid rgba(224,85,85,0.35); border-radius: var(--radius); padding: 14px 16px; }
.soc-lt-title { font-size: 13px; font-weight: 700; color: var(--red); margin-bottom: 4px; }
.soc-lt-note { font-size: 12px; color: var(--text2); line-height: 1.5; margin-bottom: 12px; }
.soc-lt-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 12px; }
.soc-lt-card { background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius); padding: 12px; }
.soc-lt-warn { color: var(--red); font-weight: 600; }
.soc-lt-ok { color: var(--green); font-weight: 600; }
.soc-lt-empty { font-size: 12px; color: var(--text3); padding: 8px 0; }
.soc-lt-caption { white-space: pre-wrap; color: var(--text); }
.soc-lt-img { margin-top: 6px; }
.soc-lt-thumb { max-width: 240px; max-height: 240px; width: auto; height: auto; display: block; border: 1px solid var(--border2); border-radius: var(--radius); background: var(--bg4); }
.soc-lt-imgmeta { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font-size: 11px; color: var(--text3); margin-top: 5px; }
.soc-lt-imgmeta a { color: var(--accent); text-decoration: none; }
.soc-lt-imgmeta a:hover { text-decoration: underline; }
.soc-lt-fmt { font-family: var(--mono); text-transform: uppercase; letter-spacing: 0.03em; }
.soc-lt-track { font-family: var(--mono); font-size: 11px; color: var(--text2); word-break: break-all; }

/* ── Smart Content Studio ── */
.studio-intro { font-size: 12.5px; color: var(--text2); line-height: 1.55; margin: 4px 0 16px; max-width: 900px; }
.studio-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 20px; margin-bottom: 14px; }
.studio-field { display: flex; flex-direction: column; gap: 6px; }
.studio-field.full { grid-column: 1 / -1; }
.studio-field > label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text3); font-weight: 600; }
.studio-field input, .studio-field textarea { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); padding: 8px 10px; font-size: 13px; font-family: inherit; }
.studio-field textarea { resize: vertical; }
.soc-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.studio-actions { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin: 6px 0 18px; }
.studio-dest { font-size: 11.5px; color: var(--text3); }
.studio-panel, .studio-results { background: var(--bg2); border: 1px solid var(--border2); border-radius: var(--radius-lg); padding: 16px; margin-bottom: 16px; }
.studio-panel-h, .studio-results-h { font-size: 13px; font-weight: 700; color: var(--text); margin-bottom: 10px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.studio-steps { margin: 0 0 10px 18px; font-size: 12px; color: var(--text2); line-height: 1.7; }
.studio-btns { display: flex; gap: 8px; flex-wrap: wrap; margin: 8px 0; }
.studio-panel textarea { width: 100%; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); padding: 10px; font-size: 12px; font-family: var(--mono); }
.studio-note { font-size: 12px; padding: 6px 10px; border-radius: var(--radius); margin: 6px 0; }
.studio-note.ok { background: var(--green-bg); color: var(--green); }
.studio-note.err { background: rgba(255,80,80,0.10); color: var(--red); }
.studio-post { border: 1px solid var(--border); border-radius: var(--radius); padding: 14px; margin-bottom: 12px; background: var(--bg3); }
.studio-post-h { font-size: 14px; font-weight: 700; color: var(--text); margin-bottom: 6px; }
.studio-post-meta, .studio-rationale { font-size: 12px; color: var(--text2); margin-bottom: 6px; line-height: 1.5; }
.soc-bk { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); font-weight: 700; }
/* Each platform = one complete, readable review CARD (was a full-width border-top row
   that stretched captions/hooks across the whole monitor). Capped to a readable width. */
.studio-var { border: 1px solid var(--border); border-radius: var(--radius); background: var(--bg2); padding: 14px 16px; margin-top: 12px; max-width: 760px; }
.studio-var-h { font-size: 13px; font-weight: 700; color: var(--text); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; }
.studio-var-plat { font-size: 13.5px; }
.studio-q { font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 999px; }
.studio-q.ok { color: var(--green); background: var(--green-bg); }
.studio-q.warn { color: var(--amber); background: var(--amber-bg); cursor: help; }
/* Hook picker — each choice is ONE connected clickable row: (radio) text together.
   The radio was being stretched full-width by inherited input sizing, shoving the
   label to the far right; pin it to natural size and give the label its own flex cell. */
.studio-hooks { display: flex; flex-direction: column; gap: 6px; margin-bottom: 10px; }
.studio-hooks .soc-bk { margin-bottom: 2px; }
.studio-hook { font-size: 12.5px; color: var(--text); display: flex; gap: 10px; align-items: center; cursor: pointer; padding: 8px 11px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--bg3); }
.studio-hook:hover { border-color: var(--border2); }
.studio-hook input[type="radio"] { flex: 0 0 auto; width: 15px; height: 15px; margin: 0; cursor: pointer; }
.studio-hook-t { flex: 1 1 auto; min-width: 0; line-height: 1.4; }
.studio-hook:has(input:checked) { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); }
.studio-line { font-size: 12.5px; color: var(--text); margin-bottom: 5px; line-height: 1.5; }
.studio-line.full { display: block; }
/* Creative-family diversity selector + repeat warning. */
.studio-family { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.studio-fam-select { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-size: 12px; padding: 5px 8px; font-family: inherit; max-width: 300px; cursor: pointer; }
.studio-fam-rec { flex: 0 0 auto; }
.studio-fam-ok { font-size: 11px; color: var(--green); font-weight: 600; }
.studio-fam-warn { font-size: 12px; color: var(--amber); background: var(--amber-bg); border: 1px solid var(--amber); border-radius: var(--radius); padding: 6px 10px; margin: 6px 0; max-width: 640px; line-height: 1.45; }
.studio-cap { white-space: pre-wrap; }
.studio-track { font-family: var(--mono); font-size: 11px; color: var(--text2); word-break: break-all; }
.studio-concept-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 6px; align-items: stretch; }
.studio-concept { width: 172px; border: 2px solid var(--border); border-radius: var(--radius); padding: 6px; background: var(--bg2); cursor: pointer; display: flex; flex-direction: column; gap: 5px; }
.studio-concept.sel { border-color: var(--accent); box-shadow: 0 0 0 2px rgba(47,128,255,0.20); }
.studio-concept-img { width: 100%; border-radius: 6px; display: block; }
.studio-concept-name { font-size: 11px; color: var(--text2); font-weight: 600; }
.studio-concept-btns { display: flex; gap: 5px; margin-top: auto; }
.studio-concept-btns .btn { flex: 0 0 auto; }
.studio-upload { width: 172px; border: 2px dashed var(--border2); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; text-align: center; font-size: 12px; color: var(--text2); cursor: pointer; padding: 10px; }
.studio-attached { font-size: 12px; color: var(--green); margin-top: 8px; }
.studio-attached.muted { color: var(--text3); }
.studio-pub { border-top: 1px dashed var(--border); margin-top: 12px; padding-top: 12px; }
.studio-pub-top { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; font-size: 12px; margin-bottom: 8px; }
.studio-public { color: var(--text3); font-size: 11.5px; }
/* Publish Now is its OWN action block; then an OR SCHEDULE separator; then the
   schedule group. Publish Now is never wedged into the scheduling row. */
.studio-pub-actions { display: flex; flex-direction: column; gap: 10px; }
.studio-pub-now .btn { min-width: 190px; }
.studio-or { display: flex; align-items: center; gap: 10px; color: var(--text3); font-size: 10.5px; font-weight: 700; letter-spacing: 0.08em; }
.studio-or::before, .studio-or::after { content: ""; flex: 1; height: 1px; background: var(--border); }
.studio-sched { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: flex-end; }
.studio-sfield { display: inline-flex; flex-direction: column; gap: 3px; }
.studio-slabel { font-size: 10.5px; color: var(--text3); font-weight: 600; }
.studio-in { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); padding: 6px 8px; font-size: 12px; font-family: inherit; }
.studio-tz { font-size: 11px; color: var(--text3); font-weight: 600; white-space: nowrap; align-self: flex-end; padding-bottom: 7px; }
.studio-sched-btn { align-self: flex-end; }
.studio-pub-done { font-size: 12px; color: var(--green); word-break: break-all; }
.studio-pub-done a { color: var(--green); }
.studio-pub-sched { font-size: 12.5px; color: var(--text); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
/* ── One-button Approve & Schedule item bar (v6-148) ── */
.soc-item-bar { margin-top: 14px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--bg2); padding: 12px 14px; }
.soc-item-bar-h { font-size: 13px; font-weight: 700; color: var(--text); display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.soc-item-bar-state { margin-left: auto; }
.soc-item-approve-row { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: flex-end; }
.soc-item-approve-row .btn-accent { align-self: flex-end; font-weight: 700; }
.soc-item-plats-inline { font-size: 11px; opacity: 0.85; font-weight: 600; margin-left: 4px; }
.soc-item-ready { font-size: 12px; color: var(--green); margin-top: 8px; line-height: 1.5; }
.soc-item-block { font-size: 12.5px; color: var(--red); background: color-mix(in srgb, var(--red) 12%, transparent); border: 1px solid var(--red); border-radius: var(--radius); padding: 8px 11px; margin-top: 8px; line-height: 1.5; font-weight: 600; }
.soc-item-need { font-size: 12.5px; color: var(--amber); background: var(--amber-bg); border: 1px solid var(--amber); border-radius: var(--radius); padding: 8px 11px; margin-top: 8px; line-height: 1.5; }
.soc-item-sched-explain { font-size: 12px; color: var(--text2); margin-bottom: 8px; line-height: 1.5; }
/* ── v6-149 operator-friction fixes (invite form, Studio routing/creative, acquisition) ── */
.um-optional { font-size: 10.5px; font-weight: 400; color: var(--text3); text-transform: none; letter-spacing: 0; }
.um-optional-block { margin-top: 8px; padding-top: 8px; border-top: 1px dashed var(--border); }
.um-optional-h { font-size: 11px; font-weight: 700; color: var(--text2); }
.um-optional-sub { font-weight: 400; color: var(--text3); }
.um-optional-note { font-size: 10.5px; color: var(--text3); margin-left: 4px; }
.studio-results-note { font-size: 12px; color: var(--text2); background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 8px 11px; margin: 8px 0 12px; line-height: 1.5; }
.studio-mismatch { font-size: 12.5px; color: var(--amber); background: var(--amber-bg); border: 1px solid var(--amber); border-radius: var(--radius); padding: 8px 11px; margin: 6px 0; line-height: 1.5; }
.studio-hook-note { font-size: 11px; color: var(--text3); margin: 2px 0 8px; line-height: 1.4; }
.studio-concept-sel { display: flex; gap: 12px; align-items: flex-start; margin: 6px 0; padding: 10px; background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); }
.studio-concept-sel .studio-concept-img { width: 160px; max-width: 42%; border-radius: 8px; flex: 0 0 auto; }
.studio-concept-selbody { flex: 1; min-width: 0; }
.studio-concept-selname { font-size: 12.5px; color: var(--green); margin-bottom: 8px; }
.studio-concept-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px; }
.studio-upload-btn { cursor: pointer; }
.studio-concept-hint { font-size: 11px; color: var(--text3); line-height: 1.5; }
.studio-concept-more { margin: 4px 0 8px; }
.studio-concept-more > summary { font-size: 11.5px; color: var(--text3); cursor: pointer; }
.studio-concept-use { display: inline-block; margin-top: 4px; font-size: 10.5px; color: var(--accent); }
.acq-flow-note { font-size: 12px; color: var(--text2); background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 9px 12px; margin: 4px 0 14px; line-height: 1.55; }
/* ── Operator Room v1 (v6-151) — namespaced or-*, reuses existing tokens ── */
.or-wrap { display: flex; flex-direction: column; gap: 10px; padding: 18px 20px 40px; }
.or-owner-cockpit { margin: 18px 20px 8px; padding: 18px; border: 1px solid #2b6e91; border-radius: 16px; background: radial-gradient(circle at 90% 0,rgba(28,225,207,.11),transparent 31%),linear-gradient(145deg,#0d2d48,#061827); box-shadow: inset 0 1px rgba(255,255,255,.06),0 16px 32px rgba(0,0,0,.24); }
.or-owner-cockpit>header { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:14px; }
.or-owner-cockpit>header span,.or-owner-grid article>span { color:#51d7ff; font-size:13px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.or-owner-cockpit>header h2 { margin:4px 0 0; font-size:21px; }
.or-owner-controls { display:flex; flex-wrap:wrap; gap:9px; margin:0 0 14px; padding-bottom:14px; border-bottom:1px solid #234f6c; }
.or-owner-controls .btn { min-height:38px; font-size:15px; }
.or-owner-status { padding:7px 11px; border:1px solid #31d9c8; border-radius:999px; color:#31d9c8; font-size:13px; font-weight:700; text-transform:uppercase; }
.or-owner-status-blocked { border-color:var(--amber); color:var(--amber); }
.or-owner-status-complete { border-color:var(--green); color:var(--green); }
.or-owner-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.or-owner-grid article { min-height:82px; padding:12px; border:1px solid #234f6c; border-radius:11px; background:#071d30; }
.or-owner-grid article>b { display:block; margin-top:7px; color:#edf9ff; font-size:15px; line-height:1.45; overflow-wrap:anywhere; }
.or-owner-grid article>b em { color:#72a0b9; font-style:normal; font-weight:500; }
.or-owner-needs { border-color:#2c637f!important; }
.or-owner-tech-blocker { display:flex; gap:10px; margin-top:10px; padding:10px 12px; border:1px solid var(--amber); border-radius:10px; color:#d7e5ed; font-size:15px; line-height:1.45; background:rgba(255,188,52,.06); }
.or-owner-tech-blocker b { color:var(--amber); white-space:nowrap; }
.or-owner-audit { margin-top:11px; color:#a9c2d1; font-size:13px; line-height:1.5; }
.or-owner-audit summary { cursor:pointer; }
.or-owner-audit div { margin-top:7px; }
.or-owner-loading { display:flex; gap:10px; color:#88a9bd; }
.or-owner-decision { display:flex; flex-direction:column; gap:7px; padding:14px; border:1px solid var(--amber); border-radius:11px; background:rgba(255,188,52,.06); }
.or-owner-decision span { color:var(--amber); font-size:13px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.or-owner-decision b { color:#edf9ff; font-size:15px; line-height:1.5; }
.or-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.or-head h2 { margin: 0; font-size: 18px; }
.or-body { display: grid; grid-template-columns: minmax(240px, 340px) 1fr; gap: 14px; align-items: start; }
.or-list { display: flex; flex-direction: column; gap: 8px; max-height: 72vh; overflow-y: auto; }
.or-item { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; cursor: pointer; }
.or-item:hover { border-color: var(--accent); }
.or-item.active { border-color: var(--accent); background: var(--bg3); }
.or-item.unread { border-left: 3px solid var(--accent); }
.or-item.unread .or-item-subject { font-weight: 700; }
.or-item-top { display: flex; gap: 6px; margin-bottom: 4px; }
.or-item-subject { font-size: 15px; color: var(--text); }
.or-item-meta { font-size: 12px; color: var(--text3); margin-top: 3px; word-break: break-word; }
.or-prio, .or-status { font-size: 13px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; padding: 1px 8px; border-radius: 999px; border: 1px solid var(--border); color: var(--text3); }
.or-prio-important { color: var(--amber); border-color: var(--amber); }
.or-prio-urgent { color: var(--red); border-color: var(--red); }
.or-status-waiting_for_jim { color: var(--amber); border-color: var(--amber); }
.or-status-in_progress { color: var(--accent); border-color: var(--accent); }
.or-status-complete { color: var(--green); border-color: var(--green); }
.or-chip { font-size: 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: 999px; padding: 1px 8px; color: var(--text2); }
.or-thread { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px 16px; display: flex; flex-direction: column; gap: 10px; }
.or-thread-empty { color: var(--text3); font-size: 15px; align-items: center; justify-content: center; min-height: 160px; }
.or-thread-head { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.or-thread-subject { font-size: 15px; font-weight: 700; color: var(--text); }
.or-thread-controls { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.or-thread-controls select { background: var(--bg3); border: 1px solid var(--border); border-radius: 6px; color: var(--text); font-size: 15px; padding: 4px 8px; }
.or-related { font-size: 12px; color: var(--text2); }
.or-msg-body { font-size: 15px; color: var(--text); white-space: pre-wrap; line-height: 1.55; }
.or-replies { display: flex; flex-direction: column; gap: 8px; }
.or-reply { background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); padding: 8px 10px; }
.or-reply-meta { font-size: 12px; color: var(--text3); margin-bottom: 4px; }
.or-reply-body { font-size: 15px; color: var(--text); white-space: pre-wrap; line-height: 1.5; }
.or-reply-box { display: flex; gap: 8px; align-items: flex-end; }
.or-reply-box textarea { flex: 1; min-height: 54px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); color: var(--text); font-size: 15px; padding: 8px 10px; resize: vertical; }
.or-handoff > summary, .or-activity > summary { font-size: 13px; color: var(--text3); cursor: pointer; user-select: none; }
.or-handoff-form { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; }
.or-handoff-form input { background: var(--bg3); border: 1px solid var(--border); border-radius: 6px; color: var(--text); font-size: 15px; padding: 6px 9px; }
.or-handoff-preview { margin-top: 6px; font-size: 15px; color: var(--green); }
.or-act { font-size: 13px; color: var(--text3); line-height: 1.7; }
@media (max-width: 860px) { .or-body { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .or-owner-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 560px) { .or-owner-grid { grid-template-columns:1fr; } .or-owner-tech-blocker { flex-direction:column; } }
.soc-item-sched-state { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.soc-item-sched-controls { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: flex-end; }
.soc-item-attn { font-size: 12.5px; color: var(--amber); background: var(--amber-bg); border: 1px solid var(--amber); border-radius: var(--radius); padding: 7px 10px; margin-bottom: 8px; line-height: 1.5; }
.soc-item-done { font-size: 12.5px; color: var(--green); line-height: 1.6; word-break: break-word; }
.soc-item-done a { color: var(--green); }
.soc-sc-scheduled { border-color: var(--accent); color: var(--accent); }
.soc-sc-needs-attention { border-color: var(--red); color: var(--red); }
.soc-sc-published { border-color: var(--green); color: var(--green); }
.soc-item-advanced { margin-top: 10px; border-top: 1px dashed var(--border); padding-top: 8px; }
.soc-item-advanced > summary { font-size: 11.5px; color: var(--text3); cursor: pointer; user-select: none; }
.soc-adv-var { margin-top: 10px; padding: 8px 10px; background: var(--bg3); border: 1px solid var(--border); border-radius: var(--radius); }
.soc-adv-plat { font-size: 11.5px; font-weight: 700; color: var(--text2); margin-bottom: 6px; display: flex; gap: 8px; align-items: center; }
.studio-pub-preview { border-top: 1px dashed var(--border); }
.studio-pub-adv { border-top: none; margin-top: 0; padding-top: 0; }
.studio-manual { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; align-items: center; }
.studio-manualurl { min-width: 240px; flex: 1; }
.soc-var-sched { font-size: 11px; }
@media (max-width: 720px) { .studio-grid { grid-template-columns: 1fr; } }
.soc-lt-h { font-size: 12px; font-weight: 700; color: var(--text); margin-bottom: 8px; }
.soc-lt-empty { font-size: 12px; color: var(--text3); font-style: italic; }
.soc-lt-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; margin-bottom: 10px; }
.soc-lt-grid > div { font-size: 12px; color: var(--text); }
.soc-lt-grid .soc-brief-full { grid-column: 1 / -1; }
.soc-lt-warn { color: var(--red); font-weight: 600; }
.soc-lt-gates { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; }
.soc-lt-gates-h { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text3); font-weight: 700; margin-bottom: 6px; }
.soc-lt-gate { font-size: 12px; color: var(--text2); line-height: 1.7; }
@media (max-width: 640px) { .soc-conn-grid, .soc-lt-cards, .soc-lt-grid { grid-template-columns: 1fr; } }

@media (max-width: 720px) {
  .soc-list-head { display: none; }
  .soc-row, .soc-item-row, .soc-lib-item, .soc-cal-item { grid-template-columns: 1fr; gap: 6px; }
  .soc-brand-grid, .soc-brief-grid, .soc-visual-grid, .soc-w-checks { grid-template-columns: 1fr; }
}

/* ── Agent Control Center (v6-154) ─────────────────────────────────────── */
.ac-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.ac-title { margin: 0; font-size: 18px; }
.ac-small { font-size: 11px; }
.ac-danger { color: var(--red); }

.ac-banner { border-radius: var(--radius); padding: 10px 14px; margin-bottom: 16px; font-size: 13px; border: 1px solid var(--border); }
.ac-banner-on  { background: var(--green-bg); border-color: var(--green); }
.ac-banner-off { background: var(--amber-bg); border-color: var(--amber); }

.ac-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 14px; align-items: start; }
.ac-card { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px 18px; }
.ac-card h3 { margin: 0 0 10px; font-size: 15px; }
.ac-card h4 { margin: 18px 0 8px; font-size: 13px; color: var(--text2); }

.ac-badge { display: inline-block; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em;
            padding: 2px 7px; border-radius: 10px; border: 1px solid var(--border2); color: var(--text2); background: var(--bg3); }
.ac-badge-green { color: var(--green); border-color: var(--green); background: var(--green-bg); }
.ac-badge-amber { color: var(--amber); border-color: var(--amber); background: var(--amber-bg); }
.ac-badge-grey  { color: var(--text3); }

.ac-agent { border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 14px; margin-bottom: 10px; background: var(--bg3); }
.ac-agent-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.ac-agent-name { font-size: 14px; font-weight: 600; display: flex; align-items: center; gap: 8px; }
.ac-agent-usage { font-size: 12px; color: var(--text2); margin-top: 8px; font-family: var(--mono); }
.ac-agent-key { display: flex; align-items: center; gap: 8px; margin-top: 8px; flex-wrap: wrap; }

.ac-switch { position: relative; display: inline-block; width: 42px; height: 24px; flex: none; }
.ac-switch input { opacity: 0; width: 0; height: 0; }
.ac-switch span { position: absolute; inset: 0; background: var(--bg4); border: 1px solid var(--border2);
                  border-radius: 12px; cursor: pointer; transition: background 0.15s; }
.ac-switch span::before { content: ''; position: absolute; width: 16px; height: 16px; left: 3px; top: 3px;
                          background: var(--text2); border-radius: 50%; transition: transform 0.15s, background 0.15s; }
.ac-switch input:checked + span { background: var(--green-bg); border-color: var(--green); }
.ac-switch input:checked + span::before { transform: translateX(18px); background: var(--green); }
.ac-switch input:disabled + span { opacity: 0.5; cursor: not-allowed; }

.ac-newkey { border: 1px solid var(--amber); background: var(--amber-bg); border-radius: var(--radius); padding: 12px 14px; margin-top: 12px; }
.ac-key { display: block; font-family: var(--mono); font-size: 12px; word-break: break-all; background: var(--bg);
          border: 1px solid var(--border); border-radius: var(--radius); padding: 8px 10px; margin: 8px 0; user-select: all; }

.ac-check { list-style: none; padding: 0; margin: 0; }
.ac-check li { display: flex; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--border); font-size: 13px; }
.ac-check li:last-child { border-bottom: none; }
.ac-check li.done .ac-check-mark { color: var(--green); }
.ac-check-mark { font-family: var(--mono); color: var(--text3); flex: none; width: 14px; }

.ac-field { display: block; margin-bottom: 10px; }
.ac-field > span { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text2); margin-bottom: 4px; }
.ac-field input, .ac-field select, .ac-field textarea {
  width: 100%; background: var(--bg); border: 1px solid var(--border2); border-radius: var(--radius);
  color: var(--text); font-family: var(--font); font-size: 13px; padding: 7px 9px; }
.ac-field textarea { font-family: var(--mono); font-size: 12px; resize: vertical; }
.ac-field-check { display: flex; align-items: center; gap: 8px; font-size: 13px; margin-bottom: 10px; }

.ac-table { width: 100%; border-collapse: collapse; font-size: 12px; margin-top: 8px; }
.ac-table th { text-align: left; font-size: 10px; text-transform: uppercase; letter-spacing: 0.06em;
               color: var(--text2); padding: 6px 8px; border-bottom: 1px solid var(--border2); font-weight: 600; }
.ac-table td { padding: 7px 8px; border-bottom: 1px solid var(--border); vertical-align: top; }
.ac-table tr.ac-row-open { background: var(--bg3); }
.ac-table code { font-family: var(--mono); font-size: 11px; color: var(--accent); }
.ac-link { background: none; border: none; color: var(--accent); font-family: var(--font); font-size: 12px;
           cursor: pointer; padding: 0; text-align: left; }
.ac-link:hover { text-decoration: underline; }

.ac-editor { margin-top: 16px; border-top: 1px solid var(--border2); padding-top: 14px; }
.ac-editor h4 { margin: 0 0 4px; font-size: 14px; color: var(--text); }
.ac-form { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0 14px; margin-top: 12px; }
.ac-editor-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 10px; }

.ac-approval { border: 1px solid var(--border); border-left: 3px solid var(--amber); border-radius: var(--radius);
               padding: 12px 14px; margin-bottom: 10px; background: var(--bg3); }
.ac-approval-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.ac-approval-detail { font-family: var(--mono); font-size: 11px; background: var(--bg); border: 1px solid var(--border);
                      border-radius: var(--radius); padding: 8px 10px; max-height: 200px; overflow: auto; margin: 0 0 8px; white-space: pre-wrap; }
.ac-approval-actions { display: flex; gap: 8px; align-items: center; }
.ac-note { flex: 1; background: var(--bg); border: 1px solid var(--border2); border-radius: var(--radius);
           color: var(--text); font-family: var(--font); font-size: 12px; padding: 6px 8px; }

@media (max-width: 720px) {
  .ac-grid, .ac-form { grid-template-columns: 1fr; }
  .ac-table { display: block; overflow-x: auto; }
}
.ac-model { margin-top: 10px; border-top: 1px dashed var(--border2); padding-top: 8px; }
.ac-model > summary { font-size: 12px; color: var(--text2); cursor: pointer; list-style: none; }
.ac-model > summary::before { content: '▸ '; }
.ac-model[open] > summary::before { content: '▾ '; }
.ac-model > summary:hover { color: var(--accent); }
.ac-forecast { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin: 10px 0; }
.ac-forecast > div { background: var(--bg3); border: 1px solid var(--border2); border-radius: 8px; padding: 10px 12px; }
.ac-forecast strong { display: block; font-size: 1.15rem; margin-top: 3px; }

/* ── Owner access control (v6-160) ─────────────────────────────────────── */
.maint-btn { border-color: var(--red, #c0392b); color: var(--red, #c0392b); font-weight: 600; letter-spacing: .02em; }
.maint-btn:hover { background: rgba(192, 57, 43, .12); }
.maint-btn--on { background: var(--red, #c0392b); color: #fff; }
.maint-btn--on:hover { background: #a93226; }

.um-susp { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--border2, rgba(255,255,255,.08)); }
.um-susp--on { background: rgba(192, 57, 43, .07); margin: 10px -14px -12px; padding: 10px 14px 12px; border-radius: 0 0 8px 8px; }
.um-susp-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.um-susp-badge { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
  padding: 2px 8px; border-radius: 999px; border: 1px solid var(--border2, rgba(255,255,255,.12)); }
.um-susp-badge--active { color: var(--green, #27ae60); border-color: rgba(39,174,96,.4); }
.um-susp-badge--off { color: #fff; background: var(--red, #c0392b); border-color: transparent; }
.um-susp-badge--owner { color: var(--text3, #737068); }
.um-susp-detail { font-size: 12px; color: var(--text2, #b0aaa0); margin-top: 6px; }
.um-susp-reason { font-style: italic; margin-top: 3px; color: var(--text3, #737068); }

.ab-wrap { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 24px; }
.ab-card { max-width: 460px; text-align: center; background: var(--bg2, #1a2337);
  border: 1px solid var(--border2, rgba(255,255,255,.08)); border-radius: 12px; padding: 40px 32px; }
.ab-mark { font-size: 20px; font-weight: 700; letter-spacing: -.02em; margin-bottom: 20px; color: var(--text, #e8e4dc); }
.ab-msg { font-size: 16px; line-height: 1.5; color: var(--text, #e8e4dc); margin: 0 0 12px; }
.ab-note { font-size: 13px; color: var(--text2, #b0aaa0); margin: 0 0 12px; }
.ab-sub { font-size: 13px; color: var(--text3, #737068); margin: 0 0 24px; line-height: 1.5; }

/* Suspension dialog (v6-161) */
/* Short dialog: centre it vertically. .overlay already gives fixed/inset-0/z-100. */
.susp-overlay { align-items: center; }
.susp-modal { max-width: 440px; padding: 24px; }
.susp-title { margin: 0 0 8px; font-size: 17px; }
.susp-lede { font-size: 13px; line-height: 1.5; color: var(--text2, #b0aaa0); margin: 0 0 18px; }
.susp-when { background: var(--bg3); border: 1px solid var(--border2, rgba(255,255,255,.08));
  border-radius: 8px; padding: 12px 14px; margin-bottom: 14px; }
.susp-when-hd { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em;
  color: var(--text2, #b0aaa0); margin-bottom: 10px; }
.susp-optional { text-transform: none; letter-spacing: 0; font-weight: 400; color: var(--text3, #737068); }
.susp-pickers { display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap; }
.susp-pickers label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: var(--text2, #b0aaa0); }
.susp-pickers input { padding: 5px 8px; background: var(--bg2); border: 1px solid var(--border);
  border-radius: 5px; color: var(--text); font-size: 13px; }
.susp-tz { color: var(--text3, #737068); }
.susp-resolved { margin-top: 10px; font-size: 13px; line-height: 1.45; color: var(--text, #e8e4dc); }
.susp-resolved--indef { color: var(--text2, #b0aaa0); }
.susp-bad { color: var(--red, #c0392b); }
.susp-reason-lbl { display: block; font-size: 12px; font-weight: 600; text-transform: uppercase;
  letter-spacing: .06em; color: var(--text2, #b0aaa0); margin-bottom: 16px; }
.susp-reason-lbl textarea { display: block; width: 100%; margin-top: 6px; padding: 7px 9px;
  background: var(--bg3); border: 1px solid var(--border); border-radius: 6px;
  color: var(--text); font-size: 13px; font-family: inherit; text-transform: none; letter-spacing: 0; }
.susp-actions { display: flex; gap: 8px; justify-content: flex-end; }
.susp-error { background: rgba(192,57,43,.12); border: 1px solid rgba(192,57,43,.45);
  border-radius: 8px; padding: 10px 12px; margin-bottom: 14px; font-size: 13px; line-height: 1.45; }
.susp-error strong { display: block; color: var(--red, #c0392b); margin-bottom: 4px; }
.susp-error span { color: var(--text, #e8e4dc); word-break: break-word; }
.susp-error button { display: inline-block; margin-top: 9px; }

/* ── Agent Control: model picker + template catalog (v6-166) ─────────────── */
.ac-model-detail { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 14px; margin: 10px 0; }
.ac-model-detail div { display: flex; gap: 6px; font-size: 12px; }
.ac-model-detail dt { color: var(--text3, #737068); white-space: nowrap; }
.ac-model-detail dd { margin: 0; color: var(--text, #e8e4dc); }
.ac-model-detail code { font-size: 11px; }
.ac-model-use { font-size: 12.5px; line-height: 1.5; color: var(--text2, #b0aaa0); margin: 6px 0; }
.ac-model-forecast { font-size: 12.5px; line-height: 1.5; color: var(--text2, #b0aaa0);
  border-left: 2px solid var(--border); padding-left: 9px; margin: 8px 0 4px; }
.ac-model-bad { color: var(--red, #c0392b); font-size: 12.5px; line-height: 1.5; }
.ac-precedence { line-height: 1.7; padding-left: 18px; }
.ac-precedence code { font-size: 11px; }
.ac-tcat-service { margin-top: 16px; }
.ac-tcat-service h4 { margin: 0 0 2px; font-size: 13px; letter-spacing: .02em; }
.ac-tcat-offer { margin: 10px 0 14px; border-left: 2px solid var(--border); padding-left: 11px; }
.ac-tcat-offer-hd { display: flex; flex-direction: column; gap: 2px; margin-bottom: 5px; }
.ac-tcat-actions { display: flex; gap: 5px; flex-wrap: wrap; justify-content: flex-end; }
.ac-tpreview { background: var(--bg3); border: 1px solid var(--border); border-radius: 8px; padding: 12px 14px; }
.ac-tpreview-sub { font-size: 13px; margin-bottom: 8px; padding-bottom: 8px; border-bottom: 1px solid var(--border); }
.ac-tpreview-body { font-size: 13px; line-height: 1.6; color: var(--text, #e8e4dc); }
.ac-tpreview-body p { margin: 0 0 10px; }
@media (max-width: 640px) { .ac-model-detail { grid-template-columns: 1fr; } }

/* ── Agent Control: research candidate intake (v6-167) ───────────────────── */
.ac-intake-actions { display: flex; gap: 10px; align-items: center; margin: 8px 0 12px; }
.ac-intake-counts { display: flex; flex-wrap: wrap; gap: 14px; font-size: 12.5px;
  color: var(--text2, #b0aaa0); margin: 10px 0; padding: 9px 12px;
  background: var(--bg3); border: 1px solid var(--border); border-radius: 8px; }
.ac-intake-counts strong { color: var(--text, #e8e4dc); }
.ac-intake-counts .ac-ok strong { color: var(--green, #27ae60); }
.ac-intake-held { opacity: .62; }
.ac-intake-result { margin-top: 12px; padding: 10px 12px; border-radius: 8px;
  background: rgba(39,174,96,.10); border: 1px solid rgba(39,174,96,.35); font-size: 13px; }

/* ── Appointment Setter desk (v6-190) ─────────────────────────────────────
   A calling screen, not a CRM. Scanned between dials: the number, what we
   sent, what to say, and six buttons. Everything else is deliberately absent. */
.setter-desk { max-width: 1080px; margin: 0 auto; padding: 20px 16px 64px; }
.setter-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.setter-head h1, .setter-head h2 { margin: 0; }
.setter-head h1 { font-size: 30px; letter-spacing: -.035em; }
.setter-head p { margin: 4px 0 0; color: var(--text-muted, #6b7280); }
.setter-playbook { margin-top: 16px; }
.setter-playbook h3 { margin-top: 0; }
.setter-playbook blockquote { margin: 8px 0; padding: 10px 14px; border-left: 3px solid var(--accent, #2563eb);
  background: rgba(37,99,235,.06); border-radius: 0 6px 6px 0; }

.setter-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px; margin: 18px 0 26px; }
.setter-metric { background: var(--card-bg); border: 1px solid var(--border, #e5e7eb);
  border-radius: 10px; padding: 12px 14px; display: grid; gap: 2px; }
.setter-metric span { font-size: 26px; font-weight: 700; line-height: 1.1; font-variant-numeric: tabular-nums; }
.setter-metric label { font-size: 11px; letter-spacing: .07em; text-transform: uppercase; color: var(--text-muted, #6b7280); }
.setter-metric.hot span { color: #b45309; }
.setter-metric.bad span { color: #b91c1c; }
.setter-metric.good span { color: #15803d; }

.setter-section { margin-bottom: 30px; }
.setter-section-head { display: flex; align-items: baseline; gap: 10px; padding-bottom: 8px;
  border-bottom: 2px solid var(--border, #e5e7eb); margin-bottom: 14px; }
.setter-section-head h3 { margin: 0; font-size: 17px; }
.setter-section-head span { color: var(--text-muted, #6b7280); font-size: 12.5px; flex: 1; }
.setter-section-head b { font-variant-numeric: tabular-nums; }
.setter-empty { color: var(--text-muted, #6b7280); font-size: 13.5px; margin: 0; }

.setter-card { background: var(--card-bg); border: 1px solid var(--border, #e5e7eb);
  border-left: 4px solid var(--accent, #2563eb); border-radius: 10px; padding: 14px 16px; margin-bottom: 12px; }
.setter-card.is-overdue { border-left-color: #b91c1c; }
.setter-card-top { display: flex; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.setter-biz { font-size: 17px; font-weight:700; }
.setter-sub { color: var(--text-muted, #6b7280); font-size: 13px; }
.setter-attempt { text-align: right; display: grid; gap: 1px; }
.setter-attempt-n { font-weight: 700; font-size: 13px; }
.setter-attempt-due { font-size: 12.5px; color: var(--text-muted, #6b7280); }
.setter-attempt-due.overdue { color: #b91c1c; font-weight: 700; }
.setter-window { font-size: 11.5px; color: var(--text-muted, #6b7280); }

.setter-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px; margin: 12px 0; }
.setter-k { display: block; font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase;
  color: var(--text-muted, #6b7280); margin-bottom: 1px; }
.setter-reason, .setter-last { font-size: 13px; margin-bottom: 10px; }
.setter-opener { background: rgba(37,99,235,.06); border-radius: 8px; padding: 10px 12px; margin-bottom: 10px; }
.setter-opener p { margin: 2px 0 8px; font-size: 14px; }
.setter-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; }
.setter-help { background: var(--bg, #f9fafb); border-radius: 8px; padding: 10px 14px; margin-bottom: 10px; font-size: 13px; }
.setter-help ol { margin: 6px 0; padding-left: 20px; }
.setter-rules { color: #b45309; }
.setter-outcome-row { border-top: 1px solid var(--border, #e5e7eb); padding-top: 10px; display: grid; gap: 8px; }
.setter-note { width: 100%; }
.setter-buttons { display: flex; gap: 6px; flex-wrap: wrap; }
.setter-out { white-space: nowrap; }

/* ── Waiting on Searchooli + guided next step (v6-192) ────────────────────── */
.setter-card.is-waiting { border-left-color: #6b7280; background: var(--bg, #f9fafb); }
.setter-waiting-pill { font-size: 11px; letter-spacing: .06em; text-transform: uppercase;
  background: var(--border, #e5e7eb); color: var(--text-muted, #4b5563);
  padding: 4px 10px; border-radius: 999px; white-space: nowrap; align-self: flex-start; }
.setter-promise { margin-top: 10px; font-size: 12.5px; font-weight: 600; color: #b45309; }
.setter-promise.muted { color: var(--text-muted, #6b7280); font-weight: 400; }

/* ── Owner SITREP: Today / Tomorrow / Runway (2026-07-28 cadence mission) ──
   Owner/view-as only — Michelle's own session never receives the `sitrep`
   key at all (see setter-desk), so this block simply never renders for her. */
.setter-sitrep { margin: 4px 0 30px; border: 1px solid var(--border, #e5e7eb); border-radius: 12px;
  padding: 16px 18px 6px; background: var(--bg, #f9fafb); }
.setter-sitrep-head h2, .setter-sitrep-head h3 { margin: 0 0 2px; font-size: 16px; }
.setter-sitrep-head p { margin: 0 0 6px; color: var(--text-muted, #6b7280); font-size: 12.5px; }
.sitrep-group { margin-bottom: 8px; }
.sitrep-group-title { font-size: 11.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase;
  color: var(--text-muted, #6b7280); margin: 14px 0 6px; }
.sitrep-group .setter-metrics { margin: 0 0 10px; }
.sitrep-by-date { margin: 4px 0 14px; }
.sitrep-date-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.sitrep-date-chip { font-size: 12px; background: var(--card-bg); border: 1px solid var(--border, #e5e7eb);
  border-radius: 999px; padding: 3px 10px; font-variant-numeric: tabular-nums; }
.setter-next { margin: 18px 0 24px; border-left: 4px solid var(--accent, #2563eb); }
.setter-next-head { display: flex; justify-content: space-between; align-items: center;
  gap: 12px; margin-bottom: 12px; }
.setter-next-block { margin-bottom: 14px; }
.setter-next-block p { margin: 3px 0 0; }
.setter-next-table { border-collapse: collapse; margin-top: 4px; font-size: 13.5px; }
.setter-next-table th { text-align: left; padding: 3px 16px 3px 0; color: var(--text-muted, #6b7280);
  font-weight: 500; white-space: nowrap; }
.setter-next-table td { padding: 3px 0; font-weight: 600; }

/* ── Queue priority + view-as (v6-193) ────────────────────────────────────── */
.setter-band { display: inline-block; font-size: 10px; letter-spacing: .07em;
  text-transform: uppercase; background: var(--raise, #eef2f4); color: var(--text-muted, #4b5563);
  padding: 2px 8px; border-radius: 999px; margin-bottom: 3px; }
.setter-order { margin-bottom: 22px; }
.setter-order-list { margin: 6px 0 0; padding-left: 20px; display: grid; gap: 3px; }
.setter-order-list li span { color: var(--text-muted, #6b7280); font-size: 12.5px; }
.setter-readonly-banner { background: #7c2d12; color: #fff; padding: 10px 16px; border-radius: 8px;
  margin-bottom: 16px; font-weight: 600; font-size: 13.5px; }
.setter-help-more { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--border, #e5e7eb); }
.setter-help-links { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 6px; }
.setter-out.is-readonly { opacity: .45; cursor: not-allowed; }

/* ── Call-activity warning + duplicate-dial gate (v6-204) ─────────────────
 * There is no Quo integration, so these read on ONE signal: call_started_at,
 * the moment Start call was pressed. */
.setter-outcome-warning { background: var(--amber-bg); color: var(--amber); font-weight: 700;
  font-size: 13px; padding: 9px 12px; border-radius: 8px; margin-bottom: 10px; }
.setter-dupe-confirm { background: var(--red-bg); border: 1px solid var(--red);
  border-radius: 8px; padding: 12px 14px; margin-bottom: 10px; display: grid; gap: 8px; }
.setter-dupe-head { font-size: 13.5px; font-weight: 600; color: var(--text); }
.setter-dupe-opt { display: flex; align-items: center; gap: 8px; font-size: 13.5px; cursor: pointer; }
.setter-dupe-note { width: 100%; }
.setter-dupe-actions { display: flex; gap: 8px; justify-content: flex-end; margin-top: 4px; }

/* ── Schedule with Jim / Calendly (v6-205) ─────────────────────────────────
 * A real <a href target="_blank"> — the button IS the link; the JS handler
 * only records that she used it, never intercepts the navigation. */
.setter-calendly { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 2px 0 4px; }
.setter-calendly-btn { text-decoration: none; font-weight: 700; }
.setter-calendly-opened { font-size: 12.5px; color: var(--green); font-weight: 600; }
.setter-calendly-missing { font-size: 12.5px; color: var(--muted); font-style: italic;
  margin: 2px 0 4px; }

/* ── Text activity (v6-206) — two non-exclusive facts, any outcome ─────────── */
.setter-text-activity { display: flex; gap: 16px; flex-wrap: wrap; margin: 2px 0 4px; }
.setter-check { display: flex; align-items: center; gap: 7px; font-size: 13px;
  color: var(--text2, var(--muted)); cursor: pointer; }
.setter-text-badges { display: flex; gap: 8px; flex-wrap: wrap; margin: 4px 0; }
.setter-text-badge { font-size: 11.5px; font-weight: 600; padding: 3px 9px; border-radius: 999px;
  background: var(--blue-bg, rgba(91,155,213,.12)); color: var(--blue, #5b9bd5); }
.setter-text-badge--reply { background: var(--green-bg); color: var(--green); }

/* Boot gate — nothing renders until the role is known (v6-194). */
.boot-wait { padding: 48px 24px; text-align: center; color: var(--text-muted, #6b7280); }

/* ── Google sign-in (v6-195) ──────────────────────────────────────────────── */
.login-google { display: flex; align-items: center; justify-content: center; gap: 10px;
  width: 100%; background: #ffffff; color: #1f2328; border: 1px solid #dadce0;
  border-radius: 8px; padding: 11px 14px; font-size: 15px; font-weight: 600;
  cursor: pointer; margin-bottom: 4px; }
.login-google:hover { background: #f8f9fa; border-color: #c6c9cd; }
.login-google:disabled { opacity: .6; cursor: not-allowed; }
.login-google svg { flex: none; }
.login-divider { display: flex; align-items: center; gap: 10px; margin: 16px 0 4px;
  color: var(--text-muted, #6b7280); font-size: 12.5px; }
.login-divider::before, .login-divider::after { content: ''; flex: 1; height: 1px;
  background: var(--border, #e5e7eb); }


/* ── Guided call-outcome form (v6-197) ─────────────────────────────────── */
.setter-outcome-form { border-top: 1px solid var(--border, #e5e7eb); margin-top: 12px;
  padding-top: 12px; display: grid; gap: 10px; }
.setter-form-head { font-size: 12px; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; color: var(--muted); }
.setter-field { display: grid; gap: 4px; }
.setter-field > span { font-size: 12px; font-weight: 600; color: var(--muted); }
.setter-field .input { width: 100%; }
.setter-field select.input { appearance: auto; }
.setter-contact-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; }
.setter-missing:empty { display: none; }
.setter-missing { font-size: 12px; line-height: 1.55; color: #b45309;
  background: rgba(180, 83, 9, .08); border: 1px solid rgba(180, 83, 9, .25);
  border-radius: 8px; padding: 8px 10px; }
.setter-save { justify-self: start; }
.setter-save[disabled] { opacity: .55; cursor: not-allowed; }
@media (max-width: 640px) { .setter-save { justify-self: stretch; width: 100%; } }


/* ── Staged Candidates (v6-198) ─────────────────────────────────────────── */
.sc-wrap { display: grid; gap: 12px; }
.sc-head { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.sc-title { font-size: 18px; font-weight: 700; }
.sc-total { display: inline-block; margin-left: 6px; padding: 1px 9px; border-radius: 999px;
  background: var(--accent); color: #fff; font-size: 13px; font-weight: 700; }
.sc-chips { display: flex; gap: 6px; flex-wrap: wrap; }
.sc-chip { font-size: 12px; padding: 2px 9px; border-radius: 999px;
  background: var(--bg); border: 1px solid var(--border); color: var(--muted); }
.sc-chip b { color: var(--text); }
.sc-hint { font-size: 13px; color: var(--muted); }
.sc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 12px; }
.sc-card { position: relative; background: var(--card-bg); border: 1px solid var(--border);
  border-left: 3px solid var(--accent); border-radius: 10px; padding: 14px; display: grid; gap: 10px; }
.sc-card-top { display: flex; justify-content: space-between; gap: 10px; align-items: flex-start; }
.sc-biz { font-size: 15px; font-weight: 700; line-height: 1.3; }
.sc-sub { font-size: 12px; color: var(--muted); margin-top: 2px; }
.sc-status { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em;
  padding: 2px 8px; border-radius: 999px; background: var(--bg); color: var(--muted); white-space: nowrap; }
/* Semantic colours are the THEME's, not light-mode ink. #047857 on a 12%-opacity
 * green wash over a #222 card is dark-on-dark and effectively unreadable; the
 * theme already carries colours picked to sit on this background. */
.sc-status--screened { background: var(--green-bg); color: var(--green); }
.sc-status--held { background: var(--amber-bg); color: var(--amber); }
.sc-status--staged { background: var(--blue-bg); color: var(--blue); }
.sc-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 12px; }
.sc-facts > div, .sc-own > div { display: grid; gap: 1px; min-width: 0; }
/* Labels are small and uppercase, which costs legibility before colour does —
 * so they get 11px and a colour that clears AA on the card, not the dimmest
 * grey available. */
.sc-k { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.sc-facts b, .sc-own b { font-size: 13.5px; font-weight: 600; color: var(--text); overflow-wrap: anywhere; }
.sc-row { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; font-size: 13px; color: var(--text); }
.sc-pill { font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 999px; }
.sc-pill--ok { background: var(--green-bg); color: var(--green); }
.sc-pill--warn { background: var(--amber-bg); color: var(--amber); }
.sc-pill--bad { background: var(--red-bg); color: var(--red); }
.sc-link { font-size: 12px; color: var(--accent); text-decoration: underline;
  text-underline-offset: 2px; overflow-wrap: anywhere; }
.sc-link:hover { color: var(--text); }
.sc-srcs { display: flex; gap: 8px; flex-wrap: wrap; }
.sc-own { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px 12px;
  padding-top: 10px; border-top: 1px solid var(--border); }
.sc-foot { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap;
  font-size: 12.5px; color: var(--muted); align-items: center; }
.sc-next { font-weight: 600; color: var(--text); }
.sc-when { color: var(--muted); }
/* The id is a debugging aid, not information Jim reads — but "quiet" is not the
 * same as "unreadable". At --text3 it measured 2.75:1, below AA. Size and
 * position keep it out of the way; colour no longer has to. */
.sc-id { position: absolute; top: 10px; right: 12px; font-size: 10px; color: var(--text2);
  font-family: var(--mono); }
.sc-status { margin-right: 46px; }
@media (max-width: 640px) { .sc-grid { grid-template-columns: 1fr; } }

/* ── Source provenance + freshness (v6-201) ────────────────────────────────
 * "source 1 / source 2" told Jim nothing about what backs a candidate. Each
 * source now names itself, says who publishes it, and carries a freshness
 * verdict. */
.sc-srcs { display: grid; gap: 6px; width: 100%; }
.sc-src { display: grid; gap: 2px; padding: 7px 9px; border-radius: 7px;
  background: var(--bg2); border: 1px solid var(--border); }
.sc-src-top { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.sc-src-name { font-size: 12.5px; font-weight: 700; color: var(--text); }
.sc-src-meta { font-size: 11.5px; color: var(--muted); }
.sc-src-sup { font-size: 11.5px; color: var(--text2); }
.sc-tag { font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  padding: 1px 6px; border-radius: 4px; white-space: nowrap; }
.sc-tag--official { background: var(--blue-bg); color: var(--blue); }
.sc-tag--active { background: var(--green-bg); color: var(--green); }
.sc-fresh { font-size: 10.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  padding: 2px 7px; border-radius: 999px; white-space: nowrap; }
.sc-fresh--current { background: var(--green-bg); color: var(--green); }
.sc-fresh--confirm { background: var(--amber-bg); color: var(--amber); }
.sc-fresh--stale { background: var(--red-bg); color: var(--red); }

/* ── Candidate evidence panel (v6-201) ─────────────────────────────────────*/
.sc-card { cursor: pointer; transition: border-color .15s, background .15s; }
.sc-card:hover { border-color: var(--accent2); }
.sc-card--open { border-color: var(--accent); background: var(--bg3); }
.sc-open-hint { font-size: 11.5px; color: var(--accent); font-weight: 600; }
.sc-ev { grid-column: 1 / -1; background: var(--bg2); border: 1px solid var(--accent2);
  border-radius: 10px; padding: 16px 18px; display: grid; gap: 14px; }
.sc-ev-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; flex-wrap: wrap; }
.sc-ev-title { font-size: 16px; font-weight: 700; color: var(--text); }
.sc-ev-sub { font-size: 12.5px; color: var(--muted); margin-top: 2px; }
.sc-ev-sec { display: grid; gap: 6px; }
.sc-ev-h { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
  color: var(--accent); border-bottom: 1px solid var(--border); padding-bottom: 4px; }
.sc-ev-body { font-size: 13px; color: var(--text); line-height: 1.5; }
.sc-ev-body b { color: var(--text); }
.sc-ev-none { font-size: 13px; color: var(--muted); font-style: italic; }
.sc-ev-warn { font-size: 13px; color: var(--amber); background: var(--amber-bg);
  border-radius: 7px; padding: 8px 10px; line-height: 1.5; }
.sc-ev-kv { display: grid; grid-template-columns: minmax(120px, max-content) 1fr; gap: 4px 14px; font-size: 13px; }
.sc-ev-kv dt { color: var(--muted); font-weight: 600; }
.sc-ev-kv dd { color: var(--text); overflow-wrap: anywhere; }
@media (max-width: 640px) { .sc-ev-kv { grid-template-columns: 1fr; gap: 1px 0; }
  .sc-ev-kv dd { margin-bottom: 7px; } }


/* ── Playbook drawer (v6-200) ───────────────────────────────────────────── */
/* The old inline card put the tail below the fold with no way to reach it:
   the PAGE scrolled, the content did not. The drawer owns its own overflow. */
.pb-backdrop { position: fixed; inset: 0; background: rgba(15,23,42,.35); z-index: 60; }
.pb-drawer { position: fixed; top: 0; right: 0; z-index: 61;
  width: min(560px, 100vw); height: 100vh; height: 100dvh;
  display: flex; flex-direction: column;
  background: var(--card-bg); border-left: 1px solid var(--border, #e5e7eb);
  box-shadow: -18px 0 48px rgba(15,23,42,.18); }
.pb-head { position: sticky; top: 0; z-index: 2; flex: 0 0 auto;
  display: flex; align-items: flex-start; justify-content: space-between; gap: 12px;
  padding: 16px 18px 12px; background: var(--card-bg);
  border-bottom: 1px solid var(--border, #e5e7eb); }
.pb-title { font-size: 16px; font-weight: 700; }
.pb-sub { font-size: 12.5px; color: var(--muted); margin-top: 2px; }
.pb-menu { position: sticky; top: 0; z-index: 1; flex: 0 0 auto;
  display: flex; gap: 6px; overflow-x: auto; padding: 10px 18px;
  background: var(--bg, #f9fafb); border-bottom: 1px solid var(--border, #e5e7eb); }
.pb-menu-item { flex: 0 0 auto; font-size: 12px; padding: 4px 10px; border-radius: 999px;
  border: 1px solid var(--border, #e5e7eb); background: var(--card-bg);
  color: var(--muted); cursor: pointer; white-space: nowrap; }
.pb-menu-item.active { background: var(--accent, #b45309); border-color: var(--accent, #b45309); color: #fff; }
/* The one line that matters: its own scroll region, sized to the viewport. */
.pb-scroll { flex: 1 1 auto; min-height: 0; overflow-y: auto; -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain; padding: 4px 18px 40px; }
.pb-sample { display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  padding: 12px 0; border-bottom: 1px solid var(--border, #e5e7eb); }
.pb-sample span { font-size: 12.5px; color: var(--muted); }
.pb-sec { border-bottom: 1px solid var(--border, #e5e7eb); }
.pb-sec-head { width: 100%; display: flex; align-items: center; justify-content: space-between;
  gap: 10px; padding: 13px 0; background: none; border: 0; cursor: pointer;
  font-size: 14.5px; font-weight: 600; text-align: left; color: var(--text, #111827); }
.pb-chev { color: var(--muted); font-size: 17px; }
.pb-sec-body { display: none; padding-bottom: 14px; font-size: 14px; line-height: 1.65; }
.pb-sec.open .pb-sec-body { display: block; }
.pb-sec-body p { margin: 0 0 9px; }
.pb-calendly { margin-top: 4px; }
.pb-calendly a { text-decoration: none; }
.pb-calendly-missing { font-size: 12.5px; color: var(--muted); font-style: italic; }
@media (max-width: 640px) { .pb-drawer { width: 100vw; } }

/* ── Call panel ─────────────────────────────────────────────────────────── */
.setter-head-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.setter-start { font-weight: 700; }
.setter-help-menu { position: relative; }
.setter-help-menu > summary { list-style: none; user-select: none; }
.setter-help-menu > summary::-webkit-details-marker { display: none; }
.setter-help-menu-panel { position: absolute; z-index: 30; right: 0; top: calc(100% + 6px); min-width: 210px; display: grid; gap: 6px; padding: 10px; background: var(--bg2); border: 1px solid var(--border); border-radius: 10px; box-shadow: 0 12px 28px rgba(0,0,0,.18); }
.setter-help-menu-panel .btn { justify-content: flex-start; width: 100%; }
.setter-secondary-metrics { margin: -6px 0 22px; }
.setter-secondary-metrics > summary { width: fit-content; cursor: pointer; color: var(--text3); font-size: 12.5px; font-weight: 600; }
.setter-secondary-metrics[open] > summary { margin-bottom: 10px; }
.setter-callpanel { margin-top: 12px; padding: 14px; border-radius: 10px;
  background: var(--bg, #f9fafb); border: 1px solid var(--border, #e5e7eb); display: grid; gap: 12px; }
.cp-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px; }
.cp-facts > div { display: grid; gap: 2px; min-width: 0; }
.cp-k { font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
  color: var(--muted); }
.cp-facts b { font-size: 13.5px; overflow-wrap: anywhere; }
.cp-reason { font-size: 13px; line-height: 1.55; display: grid; gap: 2px; }
.cp-opener { padding: 12px; border-radius: 8px; background: var(--card-bg);
  border: 1px solid var(--border, #e5e7eb); display: grid; gap: 8px; }
.cp-opener p { margin: 0; font-size: 15px; line-height: 1.6; font-weight: 500; }
.cp-opener-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.cp-coach-head { font-size: 11px; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; color: var(--muted); margin-bottom: 6px; }
.cp-say { border-top: 1px solid var(--border, #e5e7eb); }
.cp-say-head { width: 100%; display: flex; align-items: center; justify-content: space-between;
  gap: 10px; padding: 10px 0; background: none; border: 0; cursor: pointer;
  font-size: 13.5px; font-weight: 600; text-align: left; color: var(--text, #111827); }
.cp-chev { color: var(--muted); font-size: 16px; }
.cp-say-body { display: none; padding-bottom: 10px; }
.cp-say.open .cp-say-body { display: block; }
.cp-line { margin: 0 0 7px; font-size: 14px; line-height: 1.6;
  padding-left: 10px; border-left: 2px solid var(--accent, #b45309); }
.cp-actions { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-top: 8px; }
.cp-chip { font-size: 11.5px; padding: 2px 9px; border-radius: 999px;
  background: var(--card-bg); border: 1px solid var(--border, #e5e7eb); }
.cp-hint { font-size: 11.5px; color: var(--muted); width: 100%; }

/* ── Sample call ────────────────────────────────────────────────────────── */
.setter-sample-wrap { margin: 12px 0; border: 2px dashed var(--accent, #b45309);
  border-radius: 12px; padding: 12px; background: rgba(180,83,9,.04); }
.setter-sample-flag { display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  margin-bottom: 10px; font-size: 13px; }
.setter-sample-flag b { color: #b45309; }
.setter-sample-flag span { color: var(--muted); }
.setter-sample-flag .btn { margin-left: auto; }

/* ── Source Vault (owner-only QA dashboard) ────────────────────────────── */
.sv-banner { background: var(--amber-bg); border: 1px solid var(--amber); color: var(--amber);
  border-radius: var(--radius); padding: 10px 14px; font-size: 12.5px; font-weight: 600; }
.sv-stats-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 10px; margin: 16px 0 20px; }
.sv-stat { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 12px 14px; }
.sv-stat-label { font-size: 10.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase;
  color: var(--text3); margin-bottom: 6px; }
.sv-stat-value { font-size: 20px; font-weight: 700; color: var(--text); font-family: var(--mono); }
.sv-stat-sub { font-size: 11px; color: var(--muted); margin-top: 3px; }
.sv-cols-2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; margin-bottom: 18px; }
.sv-panel { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius-lg);
  padding: 14px 16px; max-height: 260px; overflow-y: auto; }
.sv-panel-title { font-size: 11px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase;
  color: var(--text3); margin-bottom: 10px; }
.sv-row { display: flex; justify-content: space-between; gap: 10px; font-size: 12.5px;
  padding: 4px 0; border-bottom: 1px solid var(--border); color: var(--text2); }
.sv-row:last-child { border-bottom: none; }
.sv-row b { color: var(--text); font-family: var(--mono); }
.sv-fresh-fresh { color: var(--green) !important; }
.sv-fresh-stale { color: var(--amber) !important; }
.sv-fresh-unknown { color: var(--text3) !important; }
.sv-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.sv-filters select, .sv-filters input { background: var(--bg2); border: 1px solid var(--border);
  color: var(--text); border-radius: var(--radius); padding: 6px 10px; font-size: 12.5px; }
.sv-check { display: flex; align-items: center; gap: 5px; font-size: 12.5px; color: var(--text2); }
.sv-table-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius-lg); }
.sv-table { width: 100%; border-collapse: collapse; font-size: 12px; }
.sv-table th { background: var(--bg3); color: var(--text3); text-transform: uppercase; letter-spacing: .04em;
  font-size: 10.5px; text-align: left; padding: 8px 10px; cursor: pointer; white-space: nowrap; position: sticky; top: 0; }
.sv-table th.sv-sort-active { color: var(--accent); }
.sv-table td { padding: 7px 10px; border-top: 1px solid var(--border); color: var(--text2); white-space: nowrap; }
.sv-table tbody tr:hover { background: var(--bg2); }
.sv-pager { display: flex; align-items: center; gap: 12px; margin-top: 10px; font-size: 12.5px; }

/* ── Visibility Reviews (BB-015 approval workspace) ─────────────────────── */
.vr-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.vr-card { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 14px 16px; cursor: pointer; }
.vr-card:hover { border-color: var(--accent); }
.vr-card--waiting { border-left: 3px solid var(--amber); }
.vr-card--exception { border-left: 3px solid var(--red); }
.vr-card-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.vr-card-name { font-weight: 600; font-size: 14px; }
.vr-card-meta { color: var(--text2); font-size: 12px; margin-top: 6px; }
.vr-card-exception { color: var(--red); font-size: 12px; margin-top: 8px; }
.vr-chip { font-size: 10.5px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
  padding: 3px 8px; border-radius: 999px; border: 1px solid var(--border); color: var(--text2);
  white-space: nowrap; }
.vr-chip--awaiting_approval { color: var(--amber); border-color: var(--amber); }
.vr-chip--approved, .vr-chip--delivered { color: var(--green); border-color: var(--green); }
.vr-chip--needs_evidence, .vr-chip--changes_requested, .vr-chip--generation_failed,
.vr-chip--delivery_failed, .vr-chip--reconciliation_required { color: var(--red); border-color: var(--red); }
.vr-test { color: var(--amber); font-weight: 600; font-size: 11px; letter-spacing: .04em; }
.vr-ok { color: var(--green); }
.vr-warn { color: var(--red); }
.vr-head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 18px 0 16px; }
.vr-head h2 { font-size: 20px; }
.vr-cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 14px; }
.vr-panel { background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 16px 18px; margin-bottom: 14px; }
.vr-panel h3 { font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
  color: var(--text3); margin-bottom: 10px; }
.vr-row { display: grid; grid-template-columns: 170px 1fr; gap: 10px; padding: 5px 0;
  border-top: 1px solid var(--border); font-size: 13px; }
.vr-row:first-child { border-top: 0; }
.vr-row dt { color: var(--text3); }
.vr-row dd { color: var(--text2); word-break: break-word; }
.vr-pre { white-space: pre-wrap; word-break: break-word; font-size: 12px; color: var(--text2);
  background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 10px; max-height: 340px; overflow: auto; }
.vr-mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11.5px; }
.vr-binding { color: var(--text3); margin-top: 10px; word-break: break-all; }
.vr-video { width: 100%; max-width: 640px; border-radius: var(--radius); border: 1px solid var(--border); }
.vr-checks { list-style: none; margin: 12px 0 0; display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 4px; font-size: 12.5px; color: var(--text2); }
.vr-captures { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
.vr-captures img { max-width: 220px; border-radius: var(--radius); border: 1px solid var(--border); display: block; }
.vr-captures figcaption { font-size: 10.5px; color: var(--text3); margin-top: 4px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.vr-table { width: 100%; border-collapse: collapse; font-size: 12px; margin-top: 8px; }
.vr-table th { text-align: left; color: var(--text3); font-size: 10.5px; text-transform: uppercase;
  letter-spacing: .05em; padding: 6px 8px; }
.vr-table td { padding: 5px 8px; border-top: 1px solid var(--border); color: var(--text2); }
.vr-actions { border-color: var(--accent); }
.vr-ack { display: flex; align-items: flex-start; gap: 8px; font-size: 13px; color: var(--text2);
  margin: 6px 0 14px; }
.vr-btns { display: flex; flex-wrap: wrap; gap: 10px; }
.vr-release-box { margin-top: 18px; padding: 16px; border: 1px solid rgba(239,68,68,.55);
  border-radius: 10px; background: rgba(239,68,68,.06); }

/* ── Approved DailyFlo cockpit system · Phase 1 ────────────────────────────
   Visual layer only: no workflow, state, permission, or data changes. */
.today-wrap.mission-wrap { max-width: 1280px; }
.command-hero {
  position: relative; display: grid; grid-template-columns: minmax(500px, .82fr) minmax(650px, 1.18fr);
  gap: 22px; align-items: center; padding: 20px; margin: 0 0 22px; overflow: hidden;
  border: 1px solid #168bd7; border-radius: 17px;
  background: linear-gradient(145deg, rgba(12,35,59,.98), rgba(4,18,34,.99));
  box-shadow: inset 0 1px rgba(255,255,255,.07), inset 0 0 0 1px rgba(0,157,255,.1), 0 18px 42px rgba(0,68,145,.2);
}
.command-hero::before { content:""; position:absolute; width:240px; height:90px; top:-48px; left:-260px; background:linear-gradient(90deg,transparent,rgba(87,211,255,.15),transparent); transform:skewX(-24deg); animation:command-searchlight 8s ease-in-out infinite; }
@keyframes command-searchlight { 0%,12%{left:-260px} 54%,100%{left:115%} }
.command-mission-copy,.command-instruments { position:relative; z-index:1; }
.command-mission-copy { padding-left: 18px; }
.command-instruments { margin-right: 18px; }
.command-eyebrow { color:#55d9ff; text-transform:uppercase; letter-spacing:.16em; font-size:10px; font-weight:700; }
.command-mission-copy h1 { margin:13px 0 10px; color:#f7fbff; font-size:clamp(25px,2.2vw,34px); line-height:1.08; letter-spacing:-.04em; }
.command-mission-copy p { max-width:590px; margin:0 0 19px; color:#9fb7cc; font-size:13px; line-height:1.45; }
.command-action-row { display:flex; align-items:center; gap:11px; }
.command-primary-action { min-height:44px; padding-inline:18px; font-weight:700; border-color:#47c7ff; box-shadow:inset 0 1px rgba(255,255,255,.28),0 0 24px rgba(0,139,255,.28); }
.command-owner { color:#829fb7; font-size:10px; line-height:1.35; }.command-owner b{color:#e5f3ff;font-size:11px}
.command-instruments { padding:15px 13px 12px; border:1px solid #28526f; border-radius:22px; background:linear-gradient(155deg,#132d47,#071523 42%,#020914); box-shadow:inset 0 2px 1px rgba(255,255,255,.12),inset 0 -10px 22px rgba(0,0,0,.7),0 13px 25px rgba(0,0,0,.42),0 0 25px rgba(0,136,255,.12); }
.command-cluster-label { margin-bottom:7px; text-align:center; color:#6688a3; font-size:8px; letter-spacing:.2em; text-transform:uppercase; }
.command-gauge-row { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; justify-items:center; }
.command-gauge { display:grid; place-items:center; }
.command-dial { --gauge-rest:-148deg; position:relative; width:132px; aspect-ratio:1; overflow:hidden; border:3px solid #8b9cab; border-radius:50%; background:radial-gradient(circle at 50% 55%,#09233b 0 43%,#020914 65%,#0b2438 66% 70%,#06101a 71%); box-shadow:inset 0 0 0 3px #182c3c,inset 0 0 0 6px #020811,inset 0 0 22px #000,0 2px 0 #d7e4eb,0 9px 18px rgba(0,0,0,.52),0 0 14px rgba(0,150,255,.18); }
.command-dial::before { content:""; position:absolute; inset:10px; border-radius:50%; background:repeating-conic-gradient(from 228deg,rgba(77,194,255,.95) 0 1deg,transparent 1deg 10deg); mask:radial-gradient(circle,transparent 0 73%,#000 74% 81%,transparent 82%); filter:drop-shadow(0 0 3px #0ba1ff); }
.command-dial::after { content:""; position:absolute; inset:5px; border-radius:50%; border-bottom:3px solid var(--accent2); box-shadow:inset 0 -6px 13px rgba(0,132,255,.18),0 5px 8px rgba(0,132,255,.2); }
.command-red-zone { position:absolute; z-index:2; right:12px; bottom:26px; width:5px; height:23px; border-radius:4px; background:linear-gradient(#ff9a62,#ff514e); transform:rotate(-60deg); transform-origin:50% 50%; box-shadow:0 0 8px #ff514e; }
.command-scale { position:absolute; z-index:4; color:#8da7bb; font:7px var(--mono); }.command-scale.s0{left:18px;bottom:25px}.command-scale.s25{left:13px;top:39px}.command-scale.s50{left:61px;top:14px}.command-scale.s75{right:12px;top:39px}.command-scale.s100{right:13px;bottom:25px;color:#ff817d}
.command-gauge-label { position:absolute; z-index:4; top:39px; left:0; right:0; text-align:center; color:#dcecff; font-size:10px; font-weight:700; }
.command-needle { position:absolute; z-index:5; left:66px; top:65px; width:48px; height:3px; transform:rotate(var(--gauge-rest)); transform-origin:0 50%; background:linear-gradient(90deg,#effcff,#35c9ff 65%,#078cff); box-shadow:0 0 7px #24c6ff; }
.command-hub { position:absolute; z-index:6; left:58px; top:57px; width:17px; height:17px; border:3px solid #b9cad5; border-radius:50%; background:radial-gradient(circle at 35% 30%,#7e95a6,#101923 55%,#02060b); box-shadow:0 0 0 2px #07111b,0 2px 5px #000; }
.command-dial strong { position:absolute; z-index:5; left:0; right:0; bottom:12px; text-align:center; color:#f4f9ff; font-size:26px; line-height:1; text-shadow:0 0 12px rgba(30,172,255,.48); }.command-gauge.teal .command-dial strong{color:#1ce1cf;text-shadow:0 0 14px rgba(28,225,207,.55)}
.command-ignition-note { margin-top:9px; text-align:center; color:#526f87; font-size:8px; }
.command-instruments.igniting .command-needle { animation:command-sweep 2.2s cubic-bezier(.2,.8,.2,1); }
@keyframes command-sweep { 0%{transform:rotate(-148deg)} 36%{transform:rotate(-4deg)} 56%{transform:rotate(calc(var(--gauge-rest) - 9deg))} 69%{transform:rotate(calc(var(--gauge-rest) + 10deg))} 81%{transform:rotate(calc(var(--gauge-rest) - 5deg))} 100%{transform:rotate(var(--gauge-rest))} }
.command-gauge.is-idling .command-needle { animation:command-idle 1.45s ease-in-out infinite; }
.command-instruments.igniting .command-gauge.is-idling .command-needle { animation:command-sweep 2.2s cubic-bezier(.2,.8,.2,1); }
@keyframes command-idle { 0%,100%{transform:rotate(-148deg)} 38%{transform:rotate(-140deg)} 68%{transform:rotate(-145deg)} }
.command-fire { position:absolute; z-index:8; right:13px; bottom:13px; width:46px; height:46px; border:3px solid #5a0a0a; border-radius:50%; color:#fff; font-size:18px; cursor:pointer; background:radial-gradient(circle at 38% 30%,#ff8b7f,#ec271f 45%,#7b0707 72%); box-shadow:inset 0 3px 5px rgba(255,255,255,.3),0 5px 0 #3d0404,0 0 22px rgba(255,44,38,.42); }.command-fire:active{transform:translateY(4px);box-shadow:inset 0 3px 6px rgba(0,0,0,.3),0 1px 0 #3d0404}

/* Approved material language across the first operating surfaces. */
.pipeline-col,.lead-card,.mission-section,.ae-dash-card { box-shadow:inset 0 1px rgba(255,255,255,.045),0 12px 25px rgba(0,0,0,.18); }
.pipeline-col { border-color:#204c70; background:linear-gradient(180deg,#0c2239,#071729); }
.col-header { border-bottom-color:#245272; background:linear-gradient(180deg,rgba(20,54,84,.72),rgba(8,27,47,.55)); }
.lead-card { position:relative; overflow:hidden; border-color:#214a6b; background:linear-gradient(145deg,#102d49,#0a1f35); transition:transform .18s,border-color .18s,box-shadow .18s; }
.lead-card::before { content:""; position:absolute; width:110px; height:40px; top:-24px; left:-130px; background:linear-gradient(90deg,transparent,rgba(85,208,255,.12),transparent); transform:skewX(-24deg); transition:left .55s ease; }.lead-card:hover::before{left:110%}.lead-card:hover{transform:translateY(-2px);border-color:#249be5;box-shadow:0 13px 25px rgba(0,0,0,.3),0 0 18px rgba(0,139,255,.1)}
.nav-tabs--primary .nav-tab.active { box-shadow:inset 0 -2px #20c9ff,0 0 18px rgba(0,153,255,.12); }

@media(max-width:1400px){.command-hero{grid-template-columns:1fr}.command-mission-copy{order:1;padding-left:0}.command-instruments{order:2;max-width:470px;width:100%;margin:auto}}
@media(max-width:620px){.today-wrap.mission-wrap{padding:18px 12px 40px}.command-hero{padding:15px;gap:16px}.command-gauge-row{gap:4px}.command-gauge{width:84px;height:84px;display:block}.command-dial{width:132px;transform:scale(.63);transform-origin:top left}.command-instruments{max-width:300px}.command-action-row{align-items:flex-start;flex-direction:column}.command-fire{display:block;right:8px;bottom:8px;width:39px;height:39px;font-size:15px}.command-mission-copy h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){.command-hero::before,.command-needle,.command-gauge.is-idling .command-needle,.lead-card::before,.sold-box,.mockup-overdue-btn{animation:none!important;transition:none!important}}

/* Truthful system states and module-native loading/exception surfaces. */
.system-live-pill.is-connected i,.cockpit-system-state.is-connected>i{background:#1ce1cf;box-shadow:0 0 9px #1ce1cf}.system-live-pill.is-attention,.cockpit-system-state.is-attention small{color:#ffc447}.system-live-pill.is-attention i,.cockpit-system-state.is-attention>i{background:#ffc447;box-shadow:0 0 9px #ffc447}.system-live-pill.is-paused,.cockpit-system-state.is-paused small{color:#ff7772}.system-live-pill.is-paused i,.cockpit-system-state.is-paused>i{background:#ff514e;box-shadow:0 0 9px #ff514e}.system-live-pill.is-quiet i,.cockpit-system-state.is-quiet>i{background:#6e8aa0;box-shadow:none}
.cockpit-state-view{display:grid;place-items:center;padding:34px}.cockpit-state{position:relative;width:min(720px,100%);padding:42px;border:1px solid #20577e;border-radius:22px;overflow:hidden;background:radial-gradient(circle at 75% 15%,rgba(0,139,255,.17),transparent 36%),linear-gradient(145deg,#0d2a45,#061426 68%,#030b16);box-shadow:inset 0 1px rgba(255,255,255,.08),0 28px 70px rgba(0,0,0,.34)}.cockpit-state::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(112deg,transparent 38%,rgba(70,203,255,.09) 50%,transparent 62%);transform:translateX(-110%);animation:cockpit-state-scan 5.5s ease-in-out infinite}.cockpit-state h1{margin:12px 0 4px;font-size:34px;letter-spacing:-.04em}.cockpit-state h2{margin:18px 0 6px;font-size:18px}.cockpit-state p{max-width:560px;margin:0;color:#91acc4;line-height:1.55}.cockpit-state-signal{position:absolute;right:34px;top:34px;width:64px;height:64px;border:1px solid #3178a5;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 20px #00101d,0 0 20px rgba(32,201,255,.14)}.cockpit-state-signal i{width:13px;height:13px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 13px #1ce1cf}.cockpit-state--loading .cockpit-state-signal i{animation:owner-presence-pulse 1.2s ease-in-out infinite}.cockpit-state--error{border-color:#794449}.cockpit-state--error .cockpit-state-signal i{background:#ff514e;box-shadow:0 0 13px #ff514e}.cockpit-state--locked .cockpit-state-signal i,.cockpit-state--quiet .cockpit-state-signal i{background:#7893a8;box-shadow:0 0 8px #7893a8}.cockpit-state-action{margin-top:22px}@keyframes cockpit-state-scan{0%,60%{transform:translateX(-110%)}100%{transform:translateX(110%)}}

/* Reports are an operating instrument, not a detached spreadsheet. */
.reports-cockpit{background:radial-gradient(circle at 45% -8%,rgba(32,201,255,.12),transparent 32%),#030c18}.reports-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:16px;padding:0 22px}.report-panel{padding:18px}.report-bars{display:grid;gap:12px;margin-top:18px}.report-bar-row{display:grid;grid-template-columns:120px 1fr 38px;gap:12px;align-items:center}.report-bar-row>span{color:#a9bfd2;font-size:12px}.report-bar-row>div{height:8px;border-radius:999px;background:#0a2740;overflow:hidden}.report-bar-row i{display:block;height:100%;min-width:2px;border-radius:inherit;background:linear-gradient(90deg,#078cff,#20c9ff,#1ce1cf);box-shadow:0 0 12px rgba(32,201,255,.35)}.report-bar-row b{text-align:right;font-variant-numeric:tabular-nums}.report-score-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.report-score-grid>div{padding:14px;border:1px solid #204967;border-radius:12px;background:linear-gradient(145deg,#0d2943,#071827)}.report-score-grid span,.report-score-grid small{display:block;color:#86a4bc;font-size:10px}.report-score-grid b{display:block;margin:4px 0;font-size:26px}.report-truth-note{display:flex;gap:12px;align-items:center;margin:16px 22px;padding:14px 16px;border:1px solid #174c61;border-radius:13px;background:rgba(8,39,53,.75)}.report-truth-note>i{width:9px;height:9px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 10px #1ce1cf}.report-truth-note span{display:grid}.report-truth-note small{margin-top:3px;color:#84a3ba}@media(max-width:850px){.reports-grid{grid-template-columns:1fr}.report-bar-row{grid-template-columns:95px 1fr 30px}.cockpit-state{padding:30px 22px}.cockpit-state-signal{position:relative;inset:auto;margin-bottom:18px}}@media(prefers-reduced-motion:reduce){.cockpit-state::before,.cockpit-state--loading .cockpit-state-signal i{animation:none!important}}

/* ── Appointment Setter cockpit · approved operator surface ─────────────── */
.setter-view { background:radial-gradient(circle at 58% -10%,rgba(0,139,255,.14),transparent 34%),linear-gradient(145deg,#020914,#061426 62%,#020813); }
.setter-desk { max-width:1320px; padding:24px 22px 70px; }
.setter-head { position:relative; align-items:center; min-height:176px; padding:22px 245px 22px 22px; margin-bottom:16px; overflow:hidden; border:1px solid #168dd6; border-radius:17px; background:linear-gradient(145deg,rgba(13,34,57,.98),rgba(5,18,33,.99)); box-shadow:inset 0 1px rgba(255,255,255,.06),0 18px 42px rgba(0,68,145,.2); }
.setter-head::before { content:""; position:absolute; width:200px; height:72px; top:-40px; left:-230px; background:linear-gradient(90deg,transparent,rgba(90,208,255,.14),transparent); transform:skewX(-24deg); animation:setter-searchlight 8s ease-in-out infinite; }
@keyframes setter-searchlight{0%,15%{left:-230px}55%,100%{left:115%}}
.setter-head>div:first-of-type,.setter-head-actions{position:relative;z-index:2}.setter-cockpit-eyebrow{display:block;margin-bottom:10px;color:#59d7ff;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:800}.setter-head h2{font-size:30px;letter-spacing:-.035em}.setter-head p{max-width:600px;color:#91acc4}.setter-head-actions{align-self:flex-end}.setter-start{border-color:#52d2ff;box-shadow:0 0 20px rgba(0,139,255,.23)}
.setter-cockpit-gauge{--setter-rest:-148deg;position:absolute;z-index:2;right:25px;top:13px;width:150px;height:150px;border:4px solid #c9d5dc;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 50% 55%,#0a2944 0 43%,#020914 66%,#152e41 67%);box-shadow:inset 0 0 0 3px #283d4d,inset 0 0 0 7px #040b12,inset 0 0 24px #000,0 2px 0 #eef6fa,0 10px 20px #000,0 0 22px rgba(24,176,255,.24)}
.setter-cockpit-gauge::before{content:"";position:absolute;inset:11px;border-radius:50%;background:repeating-conic-gradient(from 228deg,#29c9ff 0 1deg,transparent 1deg 10deg);mask:radial-gradient(circle,transparent 0 73%,#000 74% 81%,transparent 82%);filter:drop-shadow(0 0 3px #0ba1ff)}.setter-gauge-glass{position:absolute;z-index:1;inset:7px;border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.035) 25%,transparent 42%),radial-gradient(ellipse at 50% 8%,rgba(67,205,255,.17),transparent 48%);border-top:1px solid rgba(255,255,255,.32)}.setter-gauge-red{position:absolute;z-index:2;right:13px;bottom:29px;width:5px;height:25px;border-radius:4px;background:linear-gradient(#ff9a62,#ff514e);transform:rotate(-27deg);box-shadow:0 0 8px #ff514e}.setter-gauge-needle{position:absolute;z-index:4;left:75px;top:73px;width:55px;height:3px;transform:rotate(var(--setter-rest));transform-origin:0 50%;background:linear-gradient(90deg,#fff,#35c9ff 65%,#078cff);box-shadow:0 0 8px #24c6ff;animation:setter-gauge-sweep 2.15s cubic-bezier(.2,.8,.2,1)}.setter-gauge-hub{position:absolute;z-index:5;left:66px;top:64px;width:19px;height:19px;border:3px solid #bdcfda;border-radius:50%;background:radial-gradient(circle at 35% 30%,#829aaa,#111b24 58%,#02060b);box-shadow:0 0 0 2px #07111b,0 2px 5px #000}.setter-cockpit-gauge strong{position:absolute;z-index:5;left:0;right:0;bottom:28px;text-align:center;font-size:31px;text-shadow:0 0 13px rgba(49,197,255,.45)}.setter-cockpit-gauge span{position:absolute;z-index:5;left:0;right:0;bottom:17px;text-align:center;color:#54d6ff;font-size:7px;letter-spacing:.11em;text-transform:uppercase}@keyframes setter-gauge-sweep{0%{transform:rotate(-148deg)}38%{transform:rotate(-4deg)}58%{transform:rotate(calc(var(--setter-rest) - 9deg))}72%{transform:rotate(calc(var(--setter-rest) + 9deg))}84%{transform:rotate(calc(var(--setter-rest) - 4deg))}100%{transform:rotate(var(--setter-rest))}}.setter-cockpit-gauge.is-idling .setter-gauge-needle{animation:setter-gauge-idle 1.45s ease-in-out infinite}@keyframes setter-gauge-idle{0%,100%{transform:rotate(-148deg)}38%{transform:rotate(-140deg)}68%{transform:rotate(-145deg)}}
.setter-cockpit-gauge .setter-gauge-mark{inset:auto;width:auto;color:#b9d7e8;font-size:7px;font-weight:700;letter-spacing:0;line-height:1;text-shadow:0 0 6px rgba(50,190,255,.7)}.setter-gauge-mark--0{left:22px!important;bottom:39px!important}.setter-gauge-mark--25{left:22px!important;top:48px!important}.setter-gauge-mark--50{left:70px!important;top:22px!important}.setter-gauge-mark--75{left:auto!important;right:20px!important;top:48px!important}.setter-gauge-mark--100{left:auto!important;right:17px!important;bottom:39px!important;color:#ff7a68!important}.setter-cockpit-gauge .setter-gauge-caption{bottom:17px}.setter-cockpit-gauge.is-revving .setter-gauge-needle{animation:setter-gauge-rev .42s cubic-bezier(.2,.85,.2,1)}@keyframes setter-gauge-rev{0%{transform:rotate(var(--setter-rest))}42%{transform:rotate(-12deg)}68%{transform:rotate(calc(var(--setter-rest) + 8deg))}100%{transform:rotate(var(--setter-rest))}}
.setter-cockpit-gauge strong{left:50%;right:auto;min-width:56px;transform:translateX(-50%);font-variant-numeric:tabular-nums;line-height:1}
.setter-gauge-red{right:16px;bottom:27px;transform:rotate(-59deg);transform-origin:50% 50%}
.setter-card.is-completing{pointer-events:none;animation:setter-card-complete .43s ease-in forwards}.setter-card.is-completing::after{content:"CALL COMPLETE";position:absolute;z-index:8;inset:0;display:grid;place-items:center;background:linear-gradient(110deg,rgba(5,25,43,.12),rgba(11,226,203,.26));color:#a9fff4;font-size:12px;font-weight:800;letter-spacing:.2em;text-shadow:0 0 12px #1ce1cf}@keyframes setter-card-complete{0%{transform:translateX(0);opacity:1;filter:none}55%{transform:translateX(8px);opacity:1;filter:drop-shadow(0 0 15px rgba(28,225,207,.35))}100%{transform:translateX(-28px);opacity:0;filter:blur(2px)}}
.setter-metrics{gap:10px}.setter-metric,.setter-section,.setter-card,.setter-next,.setter-sitrep{border-color:#1e4b70;background:linear-gradient(145deg,rgba(13,34,57,.98),rgba(5,18,33,.99));box-shadow:inset 0 1px rgba(255,255,255,.045),0 12px 25px rgba(0,0,0,.18)}.setter-metric{border-radius:12px}.setter-metric span{color:#f5f9ff}.setter-metric.hot span{color:#20c9ff}.setter-metric.bad span{color:#ff6d69}.setter-metric.good span{color:#1ce1cf}.setter-section{padding:17px;border:1px solid #1e4b70;border-radius:16px}.setter-section-head{border-bottom-color:#214d6d}.setter-card{position:relative;overflow:hidden;border-radius:13px;border-left:3px solid #20c9ff}.setter-card:hover{border-color:#249be5;box-shadow:0 14px 28px rgba(0,0,0,.3),0 0 18px rgba(0,139,255,.1)}.setter-opener{border:1px solid #20567b;background:#061a2d}.setter-outcome-form{border-top-color:#24516f}.setter-readonly-banner{border:1px solid rgba(55,170,255,.45);background:rgba(9,64,101,.26);color:#9dd9ff;box-shadow:0 0 16px rgba(0,139,255,.1)}
.setter-time-clock{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:14px 16px;border:1px solid #1e5b83;border-radius:14px;overflow:hidden;background:linear-gradient(105deg,rgba(8,31,52,.98),rgba(7,22,38,.98));box-shadow:inset 0 1px rgba(255,255,255,.055),0 12px 24px rgba(0,0,0,.2)}.setter-time-clock::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 40%,rgba(55,193,255,.08) 50%,transparent 60%);transform:translateX(-120%);animation:setter-time-shine 8s ease-in-out infinite}.setter-time-summary,.setter-time-actions{position:relative;z-index:1}.setter-time-summary{display:grid;gap:2px}.setter-time-kicker{color:#69d9ff;font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.setter-time-kicker i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#526b7d;box-shadow:0 0 0 3px rgba(82,107,125,.12)}.setter-time-clock.is-running .setter-time-kicker i{background:#1ce1cf;box-shadow:0 0 10px #1ce1cf;animation:setter-clock-pulse 1.8s ease-in-out infinite}.setter-time-summary strong{font-size:16px}.setter-time-summary small{color:#83a5bf}.setter-time-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.setter-time-actions .btn{min-width:94px}.setter-week-submit{border-color:#d54845!important;color:#ffcfcc!important;background:linear-gradient(#50191d,#2c0b10)!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 14px rgba(255,61,66,.12)}.setter-time-clock.is-observer{border-color:rgba(55,170,255,.36)}.setter-time-clock.is-warning{border-color:rgba(255,179,65,.45)}@keyframes setter-time-shine{0%,72%{transform:translateX(-120%)}100%{transform:translateX(120%)}}@keyframes setter-clock-pulse{50%{opacity:.55;box-shadow:0 0 3px #1ce1cf}}
.owner-hours-notice{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:15px 18px;border:1px solid rgba(28,225,207,.45);border-radius:14px;background:linear-gradient(110deg,rgba(5,41,52,.96),rgba(5,20,35,.98));box-shadow:inset 0 1px rgba(255,255,255,.055),0 0 24px rgba(28,225,207,.08)}.owner-hours-notice strong{display:block;margin-top:3px;font-size:17px}.owner-hours-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.owner-hours-list>span{display:flex;align-items:center;gap:8px;padding:5px 6px 5px 10px;border:1px solid #1d5565;border-radius:999px;color:#91b6c9;background:rgba(5,25,38,.55)}.owner-hours-list .btn{border-radius:999px}.owner-hours-ready{flex:none;padding:7px 11px;border:1px solid rgba(28,225,207,.38);border-radius:999px;color:#71f0e5;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.owner-time-overview{position:relative;margin:0 0 14px;padding:17px 19px;overflow:hidden;border:1px solid #275678;border-radius:17px;background:radial-gradient(circle at 85% 0,rgba(28,225,207,.09),transparent 32%),linear-gradient(145deg,#0d2b46,#061827);box-shadow:inset 0 1px rgba(255,255,255,.06),0 15px 30px rgba(0,0,0,.24)}.owner-time-overview::before{content:"";position:absolute;left:18px;right:18px;top:0;height:2px;background:linear-gradient(90deg,#1ce1cf,#168cff,transparent);box-shadow:0 0 12px rgba(28,225,207,.45)}.owner-time-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.owner-time-heading h2{margin:4px 0 2px;font-size:19px}.owner-time-heading small{color:#718fa6;font-size:9px}.owner-time-total{text-align:right}.owner-time-total strong{display:block;color:#f3f9ff;font-size:27px;line-height:1}.owner-time-total span,.owner-time-state{color:#65dccc;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.owner-time-overview.is-running .owner-time-total span{color:#79f7e9;text-shadow:0 0 8px rgba(28,225,207,.5)}.owner-time-chart{height:155px;display:grid;grid-template-columns:repeat(7,minmax(36px,1fr));gap:10px;align-items:end;margin:17px 0 10px;padding:12px 14px 9px;border:1px solid #1e4866;border-radius:13px;background:linear-gradient(180deg,rgba(3,15,26,.62),rgba(7,28,46,.72));box-shadow:inset 0 12px 26px rgba(0,0,0,.22)}.owner-time-day{height:100%;display:grid;grid-template-rows:18px 1fr 16px;gap:3px;text-align:center}.owner-time-day>b{color:#b8d2e3;font-size:9px}.owner-time-day>div{position:relative;align-self:stretch;border-bottom:1px solid #2a5672;background:repeating-linear-gradient(to top,transparent 0 23%,rgba(63,117,151,.14) 24% 25%)}.owner-time-day i{position:absolute;left:18%;right:18%;bottom:0;min-height:2px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#39ddff,#168cff 58%,#0b4e9e);box-shadow:0 0 12px rgba(36,188,255,.38);transition:height .45s ease}.owner-time-day:nth-child(6) i,.owner-time-day:nth-child(7) i{background:linear-gradient(180deg,#47f5dc,#14aeb5 60%,#126578)}.owner-time-day>span{color:#66879e;font-size:8px;font-weight:700;text-transform:uppercase}.owner-time-foot{display:flex;justify-content:space-between;gap:16px;color:#66869c;font-size:9px}.owner-time-empty{margin-top:12px;padding:22px;border:1px dashed #27516d;border-radius:12px;color:#7898ae;text-align:center;background:rgba(5,22,37,.58)}
@media(max-width:650px){.owner-time-chart{gap:4px;padding-inline:7px}.owner-time-day i{left:10%;right:10%}.owner-time-heading,.owner-time-foot{flex-direction:column}.owner-time-total{text-align:left}}
@media(max-width:760px){.setter-desk{padding:16px 12px 50px}.setter-head{padding:18px;display:grid;grid-template-columns:1fr 105px}.setter-cockpit-gauge{position:relative;inset:auto;width:105px;height:105px;justify-self:end}.setter-gauge-needle{left:52px;top:51px;width:38px}.setter-gauge-hub{left:45px;top:44px;width:16px;height:16px}.setter-cockpit-gauge strong{bottom:20px;font-size:23px}.setter-cockpit-gauge .setter-gauge-caption{bottom:11px;font-size:5px}.setter-cockpit-gauge .setter-gauge-mark{font-size:5.5px}.setter-gauge-mark--0{left:14px!important;bottom:28px!important}.setter-gauge-mark--25{left:14px!important;top:35px!important}.setter-gauge-mark--50{left:47px!important;top:14px!important}.setter-gauge-mark--75{right:12px!important;top:35px!important}.setter-gauge-mark--100{right:9px!important;bottom:28px!important}.setter-head-actions{grid-column:1/-1}.setter-head h2{font-size:25px}.setter-section{padding:12px}.setter-time-clock{align-items:stretch;flex-direction:column}.setter-time-actions{justify-content:stretch}.setter-time-actions .btn{flex:1;min-width:120px}}
@media(max-width:760px){.setter-head h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){.setter-head::before,.setter-gauge-needle,.setter-time-clock::after,.setter-time-clock.is-running .setter-time-kicker i,.setter-card.is-completing{animation:none!important}}

/* ── Cockpit families · distinct work, shared DailyFlo DNA ──────────────── */
/* Lead acquisition: brighter discovery blue and fast-scanning candidates. */
.le-stat-card,.le-candidate-card,.le-search-card,.le-rec-card,.le-search-quality,.le-import-format,.le-intel-section {
  border-color:#205176; background:linear-gradient(145deg,#0d2945,#07182a);
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 10px 22px rgba(0,0,0,.18);
}
.le-candidate-card,.le-search-card,.le-rec-card { transition:transform .18s,border-color .18s,box-shadow .18s; }
.le-candidate-card:hover,.le-search-card:hover,.le-rec-card:hover { transform:translateY(-2px);border-color:#22a9ef;box-shadow:0 12px 24px rgba(0,0,0,.28),0 0 16px rgba(0,151,255,.1) }
.le-subnav .active,.le-search-summary--ready { box-shadow:inset 0 -2px #20c9ff,0 0 16px rgba(0,153,255,.12) }

/* Content/visibility engines: teal intelligence layer, calmer than Sales. */
.ae-count-card,.ae-dash-card,.aj-panel,.aj-row,.vr-card,.vr-panel,.sv-stat,.sv-panel {
  border-color:#1d5066; background:linear-gradient(145deg,#0b2938,#071825);
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 11px 24px rgba(0,0,0,.2);
}
.ae-count-card,.sv-stat { position:relative;overflow:hidden }.ae-count-card::after,.sv-stat::after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;background:linear-gradient(90deg,var(--teal),transparent);box-shadow:0 0 9px rgba(28,225,207,.5)}
.vr-card { transition:transform .18s,border-color .18s }.vr-card:hover{transform:translateY(-2px);border-color:#1ce1cf}.vr-card--waiting{box-shadow:inset 3px 0 #ffc447,0 11px 24px rgba(0,0,0,.2)}.vr-card--exception{box-shadow:inset 3px 0 #ff514e,0 11px 24px rgba(0,0,0,.2)}

/* Fulfillment and clients: progress rails and solid delivery surfaces. */
.fulfill-board-wrap,.cs-workspace,.cs-table-wrap { background:linear-gradient(145deg,#0a2035,#061625);border-color:#224e70;box-shadow:inset 0 1px rgba(255,255,255,.045),0 14px 28px rgba(0,0,0,.22) }
.fulfill-col { border-color:#23516f;background:linear-gradient(180deg,#0d2942,#071827) }.fulfill-col-header{background:linear-gradient(180deg,rgba(26,71,105,.7),rgba(8,29,48,.62));border-bottom-color:#286184}.fulfill-card,.cs-row{border-color:#214d6c;background:linear-gradient(145deg,#102c46,#091d31);transition:transform .18s,border-color .18s}.fulfill-card:hover,.cs-row:hover{transform:translateY(-2px);border-color:#20c9ff}.fulfill-advance-btn{box-shadow:0 0 18px rgba(0,139,255,.18)}

/* Social: slightly more expressive violet/blue, still operator-first. */
.soc-engine,.soc-item-block,.soc-conn-card,.soc-cal-day,.soc-pubcard,.studio-panel,.soc-brand,.soc-brief-full {
  border-color:#334d78; background:linear-gradient(145deg,#132441,#0a182d);
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 11px 23px rgba(0,0,0,.2);
}
.soc-pubcard,.soc-cal-item{transition:transform .18s,border-color .18s}.soc-pubcard:hover,.soc-cal-item:hover{transform:translateY(-2px);border-color:#718cff}.soc-b-ready,.soc-b-approved{box-shadow:0 0 12px rgba(28,225,207,.13)}

/* Operations: denser control-room materials and unmistakable exceptions. */
.or-wrap,.ac-card,.ac-agent,.ac-approval,.or-list,.or-thread { border-color:#244867;background:linear-gradient(145deg,#0b2238,#061624);box-shadow:inset 0 1px rgba(255,255,255,.04),0 12px 24px rgba(0,0,0,.2) }
.or-item{border-color:transparent;transition:background .16s,border-color .16s}.or-item:hover,.or-item.active{background:#0c2d49;border-color:#228bd0}.or-item.unread{box-shadow:inset 3px 0 #20c9ff}.or-prio-urgent,.ac-danger{filter:drop-shadow(0 0 7px rgba(255,81,78,.22))}.ac-banner-on{box-shadow:inset 3px 0 #3ce38a,0 0 16px rgba(60,227,138,.08)}.ac-banner-off{box-shadow:inset 3px 0 #ff514e,0 0 16px rgba(255,81,78,.08)}

/* Forms and modal workspaces remain tactile but quiet. */
.modal,.pw-section,.ob-modal-row,.studio-panel { border-color:#25506f;background:linear-gradient(145deg,#0d243b,#071827);box-shadow:inset 0 1px rgba(255,255,255,.05),0 22px 55px rgba(0,0,0,.42) }
input:focus,textarea:focus,select:focus,.input:focus{border-color:#22b8f0!important;box-shadow:0 0 0 3px rgba(34,184,240,.11),0 0 16px rgba(0,139,255,.08)}

/* ═══════════════════════════════════════════════════════════════════════════
   DailyFlo cockpit architecture · structural shell
   This replaces the legacy horizontal CRM frame. Business controls retain
   their original ids/data attributes; only their operating environment moves.
   ═══════════════════════════════════════════════════════════════════════════ */
:root{--cockpit-sidebar:250px;--surface:#0b2035;--surface-hi:#102b45;--line:#244e70;--electric:#168cff;--cyan:#29d6eb;--teal:#1ce1cf}
body{background:#020914 radial-gradient(circle at 68% -18%,rgba(0,119,255,.16),transparent 39%);letter-spacing:.005em}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #5bdcff!important;outline-offset:2px!important}
#app{display:block;overflow:hidden}
.cockpit-shell{height:100vh;display:grid;grid-template-columns:var(--cockpit-sidebar) minmax(0,1fr);padding:6px;background:linear-gradient(140deg,#020914,#061426 62%,#020a14);overflow:hidden}
.cockpit-workspace{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(46,99,139,.55);border-left:0;border-radius:0 18px 18px 0;background:radial-gradient(circle at 55% -8%,rgba(0,139,255,.12),transparent 32%),linear-gradient(150deg,#06172a,#030c18 72%);box-shadow:inset 0 1px rgba(255,255,255,.035),0 20px 60px rgba(0,0,0,.35)}
.cockpit-sidebar{min-height:0;display:flex;flex-direction:column;padding:14px 12px 12px;overflow-y:auto;overflow-x:hidden;border:1px solid rgba(46,99,139,.55);border-radius:18px 0 0 18px;background:linear-gradient(180deg,rgba(5,19,34,.99),rgba(3,12,23,.99));box-shadow:inset -1px 0 rgba(255,255,255,.025),0 20px 60px rgba(0,0,0,.35)}
.cockpit-brand{height:82px;min-height:82px;flex:none;display:grid;place-items:center;margin:0 0 9px;padding:3px;overflow:hidden}.cockpit-brand img{display:block;width:205px;max-width:none;transform:translateY(-47px);filter:drop-shadow(0 8px 18px rgba(0,0,0,.4));object-fit:contain}
.cockpit-nav-caption{margin:7px 10px;color:#56758f;font-size:9px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.cockpit-nav-caption--tools{margin-top:17px;color:#4f7898}
.cockpit-sidebar .nav-tabs{display:flex;flex-direction:column;gap:5px;padding:0;border:0;background:none;overflow:visible}
.cockpit-sidebar .nav-tab{position:relative;width:100%;min-height:44px;display:flex;align-items:center;gap:10px;margin:0;padding:10px;border:1px solid transparent;border-radius:11px;color:#8fa8bd;text-align:left;font-size:12px;font-weight:600;white-space:normal;background:transparent;transition:color .18s,border-color .18s,background .18s,transform .18s,box-shadow .18s}.cockpit-sidebar .nav-tab>span{min-width:0;line-height:1.2}
.cockpit-sidebar .nav-tab:hover{color:#eef8ff;border-color:rgba(45,132,195,.4);background:rgba(10,43,70,.58);transform:translateX(2px)}
.cockpit-sidebar .nav-tab.active{color:#fff;border-color:#157dcc;background:linear-gradient(110deg,rgba(9,86,164,.78),rgba(8,45,79,.72));box-shadow:inset 3px 0 #2bd4ff,inset 0 1px rgba(255,255,255,.08),0 0 20px rgba(0,117,255,.13);text-shadow:none}
.cockpit-sidebar .nav-tab.active::after{content:"";position:absolute;right:-1px;top:12px;bottom:12px;width:2px;border-radius:3px;background:#39d6ff;box-shadow:0 0 10px #39d6ff}
.cockpit-nav-secondary .nav-tab{min-height:35px;padding:7px 11px 7px 42px;border-radius:9px;font-size:11px}.cockpit-nav-secondary .nav-tab::before{content:"";position:absolute;left:22px;width:5px;height:5px;border:1px solid #3c769e;border-radius:50%}.cockpit-nav-secondary .nav-tab.active::before{border-color:#35d8ff;background:#35d8ff;box-shadow:0 0 8px #35d8ff}
.cockpit-nav-icon{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(28,166,255,.16))}.cockpit-sidebar .nav-tab.active .cockpit-nav-icon{color:#54dcff;filter:drop-shadow(0 0 7px rgba(27,193,255,.55))}
.cockpit-sidebar .today-badge,.cockpit-sidebar .nav-badge{position:static;margin-left:auto;min-width:21px;height:20px;display:grid;place-items:center;padding:0 6px;border:1px solid rgba(255,84,80,.6);border-radius:999px;color:#ffd6d4;background:rgba(102,13,18,.7);font-size:9px;box-shadow:0 0 10px rgba(255,44,52,.16)}
.cockpit-sidebar-spacer{flex:1;min-height:22px}.cockpit-system-state{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #1d4a65;border-radius:12px;background:linear-gradient(145deg,rgba(8,39,57,.88),rgba(4,24,39,.8));box-shadow:inset 0 1px rgba(255,255,255,.04)}.cockpit-system-state>i{width:10px;height:10px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 0 5px rgba(28,225,207,.08),0 0 13px #1ce1cf;animation:cockpit-live 2.4s ease-in-out infinite}.cockpit-system-state span{display:grid;gap:2px}.cockpit-system-state b{color:#bffaf4;font-size:10px;text-transform:uppercase;letter-spacing:.07em}.cockpit-system-state small{color:#627f96;font-size:9px}@keyframes cockpit-live{50%{opacity:.56;box-shadow:0 0 0 2px rgba(28,225,207,.05),0 0 5px #1ce1cf}}
.topbar{height:66px;padding:0 18px;border-bottom:1px solid rgba(38,81,114,.75);background:rgba(3,14,27,.78);box-shadow:0 10px 30px rgba(0,0,0,.18);backdrop-filter:blur(18px)}
.workspace-identity{display:flex;align-items:center;gap:12px;min-width:max-content}.workspace-identity>span:first-of-type{display:grid;gap:1px}.workspace-identity b{font-size:17px;letter-spacing:-.025em}.workspace-identity small{color:#66869f;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.system-live-pill{display:inline-flex!important;grid-auto-flow:column!important;align-items:center;gap:5px;padding:4px 8px;border:1px solid rgba(28,225,207,.25);border-radius:999px;color:#65e8dc!important;font-size:9px!important;text-transform:uppercase;letter-spacing:.08em!important}.system-live-pill i{width:6px;height:6px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 7px #1ce1cf}.cockpit-mobile-menu{display:none;border:1px solid #245373;border-radius:8px;background:#0a2338;color:#bcecff;padding:6px 8px}
.topbar .gsearch{height:38px;max-width:420px;border-color:#214f71;border-radius:10px;background:rgba(6,27,45,.88);box-shadow:inset 0 1px rgba(255,255,255,.03)}
.topbar-account{padding:6px 8px;border:1px solid #1d435f;border-radius:10px;background:rgba(8,29,47,.75)}
.topbar-alert{font-size:12px;color:var(--red);white-space:nowrap}
.view-wrap{padding:24px 26px 60px}.pipeline-wrap{padding:22px 24px 40px;gap:14px}
.btn{min-height:36px;padding:8px 13px;border-color:#2b5778;border-radius:9px;background:linear-gradient(180deg,rgba(18,49,75,.88),rgba(7,27,45,.94));box-shadow:inset 0 1px rgba(255,255,255,.065),0 6px 14px rgba(0,0,0,.18);color:#dcecff;font-weight:700;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s}.btn:hover{transform:translateY(-1px);border-color:#299dda;background:linear-gradient(180deg,#143d61,#092a47);box-shadow:inset 0 1px rgba(255,255,255,.09),0 8px 18px rgba(0,0,0,.25),0 0 13px rgba(0,139,255,.1)}.btn:active{transform:translateY(1px)}.btn-sm{min-height:30px;padding:5px 10px}.btn-xs{min-height:25px;padding:3px 8px}.btn-accent{border-color:#3bcaff;color:#fff;background:linear-gradient(180deg,#169cff,#0768d8);box-shadow:inset 0 1px rgba(255,255,255,.27),0 8px 18px rgba(0,91,220,.25),0 0 18px rgba(0,151,255,.14)}.btn-accent:hover{color:#fff;border-color:#71dcff;background:linear-gradient(180deg,#28adff,#0876e9)}.btn-danger{border-color:#773437;color:#ffaaa6;background:linear-gradient(180deg,#481c23,#240b10)}
.card,.mission-section,.pipeline-col,.lead-card,.setter-section,.setter-card,.ae-dash-card,.ae-count-card,.aj-panel,.aj-row,.vr-card,.vr-panel,.sv-panel,.sv-stat,.fulfill-board-wrap,.fulfill-col,.fulfill-card,.cs-workspace,.cs-table-wrap,.cs-row,.soc-engine,.soc-item-block,.soc-conn-card,.soc-pubcard,.soc-brand,.studio-panel,.or-wrap,.or-list,.or-thread,.ac-card,.ac-agent,.ac-approval,.modal,.pw-section{border-radius:15px!important;box-shadow:inset 0 1px rgba(255,255,255,.055),inset 0 0 0 1px rgba(56,129,178,.04),0 14px 30px rgba(0,0,0,.24)!important}
.lead-card,.setter-card,.fulfill-card,.cs-row,.soc-pubcard,.aj-row{padding:13px!important}.pipeline-col{width:235px;max-height:calc(100vh - 112px);overflow:hidden}.col-header{min-height:52px;padding:12px 14px}.col-label{font-size:10px;letter-spacing:.13em}.col-cards{padding:10px;gap:9px}
.sales-cockpit .pipeline-wrap{margin:0 -26px -60px;padding:14px 26px 30px}.sales-cockpit .pipeline-col{width:250px;max-height:clamp(440px,calc(100vh - 300px),760px)}.sales-cockpit .pipeline-col:first-child{border-color:#2671a0}.sales-cockpit .pipeline-col:last-child{border-color:#246a63}.sales-cockpit .lead-card .next-action{margin-top:8px;padding:7px 8px;border:1px solid #1e4c6b;border-radius:8px;background:rgba(4,21,36,.55)}
input,textarea,select,.input,.pw-input{min-height:38px;border-radius:9px!important;border-color:#244f6e!important;background:#071d31!important;color:#e9f5ff!important}

@media(max-width:1200px){:root{--cockpit-sidebar:232px}.cockpit-brand{height:70px;min-height:70px}.cockpit-brand img{width:182px;transform:translateY(-42px)}.topbar-right .topbar-user{display:none}.topbar .gsearch{max-width:300px}}
@media(max-width:900px){.cockpit-shell{display:block;padding:0}.cockpit-workspace{height:100vh;border:0;border-radius:0}.cockpit-sidebar{position:fixed;z-index:1600;left:8px;top:8px;bottom:8px;width:min(270px,85vw);border-radius:17px;transform:translateX(calc(-100% - 18px));transition:transform .24s ease;box-shadow:0 25px 70px #000}.cockpit-shell.nav-open .cockpit-sidebar{transform:translateX(0)}.cockpit-mobile-menu{display:inline-flex}.workspace-identity>span:first-of-type small,.system-live-pill,.workspace-identity .ver-badge{display:none!important}.topbar{height:auto;min-height:58px;flex-wrap:wrap;padding:8px 12px}.topbar .gsearch{order:3;flex-basis:100%;margin:7px 0 0}.topbar-right{margin-left:auto}.topbar-account{display:none}.topbar-alert{display:none}.view-wrap{padding:17px 12px 45px}.pipeline-wrap{padding:14px 12px 36px}}
@media(prefers-reduced-motion:reduce){.cockpit-system-state>i{animation:none!important}}

/* Performance Command · bento operating surface */
.command-page{max-width:1480px!important;padding:25px 28px 70px}.command-page .today-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:17px}.command-page .today-title{margin:5px 0 2px;font-size:31px;font-weight:700;letter-spacing:-.04em}.command-page .today-header p{color:#7997af;font-size:12px}.command-page .today-date{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #1e4967;border-radius:9px;color:#7596ae;background:rgba(7,28,45,.62);font-size:10px}.command-page .today-date i{width:7px;height:7px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 8px #1ce1cf}
.command-pulse-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 14px}.command-pulse-card{position:relative;min-height:110px;display:grid;grid-template-columns:1fr auto;grid-template-areas:"label arrow" "value arrow" "detail arrow";gap:2px 12px;padding:15px 17px;overflow:hidden;border:1px solid #235171;border-radius:14px;text-align:left;color:#ecf7ff;background:linear-gradient(145deg,#102b45,#071827);box-shadow:inset 0 1px rgba(255,255,255,.06),0 12px 25px rgba(0,0,0,.23);cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}.command-pulse-card::after{content:"";position:absolute;left:16px;right:16px;top:0;height:2px;background:linear-gradient(90deg,#1ce1cf,transparent);box-shadow:0 0 10px rgba(28,225,207,.55)}.command-pulse-card:hover{transform:translateY(-2px);border-color:#2ca8e8;box-shadow:inset 0 1px rgba(255,255,255,.08),0 16px 31px rgba(0,0,0,.3),0 0 20px rgba(0,139,255,.1)}.command-pulse-card>span{grid-area:label;color:#8eabc1;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.command-pulse-card>strong{grid-area:value;font-size:29px;line-height:1.05}.command-pulse-card>small{grid-area:detail;color:#7493aa;font-size:10px}.command-pulse-card>i{grid-area:arrow;align-self:center;color:#4fbbe9;font-size:21px;font-style:normal}.command-pulse-card.blue::after{background:linear-gradient(90deg,#168cff,transparent)}.command-pulse-card.violet::after{background:linear-gradient(90deg,#856cff,transparent)}.command-pulse-card.amber::after{background:linear-gradient(90deg,#ffc447,transparent)}.command-pulse-card.red::after{background:linear-gradient(90deg,#ff514e,transparent)}
.command-bento{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.65fr);gap:14px;margin-bottom:14px}.command-work-queue,.command-attention-rail,.command-modules{border:1px solid #244e70;border-radius:17px;background:linear-gradient(145deg,rgba(12,35,57,.98),rgba(4,17,30,.99));box-shadow:inset 0 1px rgba(255,255,255,.055),0 15px 32px rgba(0,0,0,.25)}.command-work-queue,.command-attention-rail{padding:17px}.command-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px}.command-panel-head h2{margin:4px 0 0;font-size:18px;letter-spacing:-.025em}.command-work-list{display:grid;gap:7px}.command-work-row{width:100%;min-height:62px;display:grid;grid-template-columns:8px 86px minmax(150px,1.2fr) minmax(140px,1fr) 100px 15px;gap:10px;align-items:center;padding:9px 11px;border:1px solid #1c4665;border-radius:11px;color:#dbeaf5;text-align:left;background:linear-gradient(90deg,rgba(15,45,70,.86),rgba(6,25,42,.8));cursor:pointer;transition:transform .16s,border-color .16s,background .16s}.command-work-row:hover{transform:translateX(3px);border-color:#218fce;background:linear-gradient(90deg,rgba(16,59,91,.92),rgba(7,31,51,.9))}.command-work-row>i{width:7px;height:7px;border-radius:50%;background:#20c9ff;box-shadow:0 0 8px #20c9ff}.command-work-row.urgent>i{background:#ff514e;box-shadow:0 0 9px #ff514e}.command-work-row.waiting>i{background:#ffc447;box-shadow:0 0 9px #ffc447}.command-work-row.ready>i{background:#1ce1cf;box-shadow:0 0 9px #1ce1cf}.command-work-stage{padding:4px 7px;border:1px solid #25658c;border-radius:6px;color:#6ed8ff;font-size:9px;text-align:center}.command-work-business,.command-work-action{display:grid;gap:2px}.command-work-business b,.command-work-action b{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.command-work-business small,.command-work-action small,.command-work-owner{color:#718fa6;font-size:9px}.command-work-row>strong{color:#69cfff;font-size:22px}.command-clear-state{display:grid;place-items:center;gap:4px;min-height:180px;color:#8aa6ba}.command-clear-state b{color:#d8eafb;font-size:18px}
.command-attention-rail{display:flex;flex-direction:column}.command-attention-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:11px;align-items:center;margin-bottom:8px;padding:12px;border:1px solid #204965;border-radius:11px;color:#e6f1fa;text-align:left;background:rgba(8,30,48,.74);cursor:pointer}.command-attention-item>i{width:9px;height:9px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 9px #1ce1cf}.command-attention-item.red>i{background:#ff514e;box-shadow:0 0 10px #ff514e}.command-attention-item.amber>i{background:#ffc447;box-shadow:0 0 10px #ffc447}.command-attention-item.blue>i{background:#168cff;box-shadow:0 0 10px #168cff}.command-attention-item span{display:grid;gap:2px}.command-attention-item b{font-size:11px}.command-attention-item small{color:#7290a6;font-size:9px}.command-attention-item strong{font-size:19px}.command-flow-health{margin-top:auto;padding:13px;border-top:1px solid #1d4561}.command-flow-health>span{color:#6e8ba1;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.command-flow-health>b{display:block;margin:3px 0 8px}.command-flow-health>div{height:5px;border-radius:5px;background:#152f43;overflow:hidden}.command-flow-health>div i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#168cff,#1ce1cf);box-shadow:0 0 8px #1ce1cf}
.command-modules{padding:17px}.command-module-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px}.command-modules .command-pulse-card{min-height:105px}
.command-add-module{min-height:105px;display:grid;place-items:center;align-content:center;gap:4px;border:1px dashed #286286;border-radius:14px;color:#84b9d8;background:linear-gradient(145deg,rgba(10,35,56,.72),rgba(4,17,29,.82));cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}.command-add-module:hover{transform:translateY(-2px);border-color:#20c9ff;box-shadow:0 0 22px rgba(32,201,255,.12)}.command-add-module>span{width:30px;height:30px;display:grid;place-items:center;border:1px solid #2778a8;border-radius:50%;color:#62d7ff;font-size:22px;box-shadow:inset 0 0 12px rgba(32,201,255,.12)}.command-add-module>b{color:#d9edfb}.command-add-module>small{color:#6e91a9}
.command-module-new{position:relative;overflow:hidden}.command-module-new::before{content:"";position:absolute;inset:-40% auto -40% -45%;width:32%;transform:skewX(-24deg);background:linear-gradient(90deg,transparent,rgba(94,224,255,.25),transparent);animation:module-card-flash 5.5s ease-in-out infinite}.command-module-new em{display:inline-flex;margin-left:5px;padding:2px 5px;border:1px solid rgba(48,217,255,.42);border-radius:999px;color:#62ddff;background:rgba(14,139,192,.15);font-size:7px;font-style:normal;letter-spacing:.08em;text-transform:uppercase}@keyframes module-card-flash{0%,62%{left:-45%}90%,100%{left:125%}}

.module-boot-screen{position:relative;min-height:calc(100vh - 72px);display:grid;place-items:center;align-content:center;gap:11px;overflow:hidden;text-align:center;background:radial-gradient(circle at 50% 43%,rgba(13,112,177,.2),transparent 28%),linear-gradient(145deg,#061728,#020b14)}.module-boot-screen::before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(40,177,237,.14);border-radius:50%;box-shadow:inset 0 0 80px rgba(20,145,218,.08),0 0 80px rgba(0,115,190,.06);animation:module-boot-ring 1.5s ease-in-out infinite alternate}.module-boot-beam{position:absolute;top:0;bottom:0;left:-35%;width:28%;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(55,209,255,.22),transparent);filter:blur(2px);animation:module-boot-sweep 1.6s ease-in-out infinite}.module-boot-mark{position:relative;width:300px;height:108px;margin-inline:auto;display:grid;place-items:center;overflow:hidden;filter:drop-shadow(0 0 24px rgba(42,190,255,.28));animation:module-boot-mark .75s ease-out both}.module-boot-mark img{display:block;width:280px;max-width:none;transform:translateY(-64px)}.module-boot-screen>span,.module-boot-screen>h1,.module-boot-screen>p,.module-boot-screen>small,.module-boot-track{position:relative;z-index:1}.module-boot-screen>span{color:#58d7ff;font-size:9px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.module-boot-screen h1{margin:0;color:#f0f8ff;font-size:34px;letter-spacing:-.04em}.module-boot-screen p{margin:0;color:#7fa5bf;font-size:12px}.module-boot-track{width:min(320px,65vw);height:3px;margin-top:9px;overflow:hidden;border-radius:99px;background:#0d3048;box-shadow:inset 0 0 8px rgba(0,0,0,.55),0 0 10px rgba(20,166,232,.12)}.module-boot-track i{display:block;width:48%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#118dff,#27e1d1);box-shadow:0 0 14px #17bfff;animation:module-boot-progress 1.25s ease-in-out infinite}.module-boot-screen small{display:flex;align-items:center;justify-content:center;gap:8px;color:#6d90a8;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.module-boot-screen small b{width:8px;height:8px;border-radius:50%;background:#24ddcf;box-shadow:0 0 8px #24ddcf,0 0 18px rgba(36,221,207,.72);animation:module-boot-pulse .62s ease-in-out infinite alternate}@keyframes module-boot-sweep{from{left:-35%;opacity:.2}45%{opacity:1}to{left:118%;opacity:.2}}@keyframes module-boot-progress{from{transform:translateX(-105%)}to{transform:translateX(225%)}}@keyframes module-boot-ring{from{transform:scale(.985);opacity:.62}to{transform:scale(1.015);opacity:1}}@keyframes module-boot-mark{from{transform:translateY(8px) scale(.94);opacity:0}to{transform:none;opacity:1}}@keyframes module-boot-pulse{from{opacity:.42;transform:scale(.72)}to{opacity:1;transform:scale(1.24)}}
.command-feed-strip{margin:0 0 14px;padding:17px;border:1px solid #244e70;border-radius:17px;background:linear-gradient(145deg,rgba(12,35,57,.98),rgba(4,17,30,.99));box-shadow:inset 0 1px rgba(255,255,255,.055),0 15px 32px rgba(0,0,0,.25)}.command-feed-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.command-feed-item{position:relative;min-height:82px;display:grid;grid-template-columns:7px minmax(0,1fr);gap:9px;align-content:center;padding:11px;border:1px solid #1f4866;border-radius:11px;color:#e4f2fc;text-align:left;background:linear-gradient(145deg,#0d2943,#071827);cursor:pointer;transition:transform .16s,border-color .16s}.command-feed-item:hover{transform:translateY(-2px);border-color:#2998d5}.command-feed-item>i{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#168cff;box-shadow:0 0 8px #168cff}.command-feed-item.teal>i{background:#1ce1cf;box-shadow:0 0 8px #1ce1cf}.command-feed-item.amber>i{background:#ffc447;box-shadow:0 0 8px #ffc447}.command-feed-item span{display:grid;gap:2px}.command-feed-item b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.command-feed-item small{height:25px;overflow:hidden;color:#718fa6;font-size:8px;line-height:1.45}.command-feed-item time{grid-column:2;color:#526f85;font-size:7px;text-transform:uppercase;letter-spacing:.06em}

/* Kat Call Monitor — the owner-facing alert instrument and durable call board. */
.kat-call-indicator{position:relative;width:100%;display:grid;grid-template-columns:minmax(150px,.7fr) minmax(170px,1fr) minmax(220px,1.5fr) auto;gap:12px;align-items:center;margin:0 0 14px;padding:15px 18px;border:1px solid #245778;border-radius:16px;color:#e9f7ff;text-align:left;background:radial-gradient(circle at 8% 50%,rgba(13,174,226,.14),transparent 34%),linear-gradient(120deg,#0d2b45,#061a2c);box-shadow:inset 0 1px rgba(255,255,255,.06),0 14px 28px rgba(0,0,0,.24);cursor:pointer}.kat-call-indicator:hover{border-color:#28b8ef}.kat-call-indicator.is-live{border-color:#2bdbb9;box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 28px rgba(18,222,181,.16)}.kat-call-lamp{display:flex;align-items:center;gap:8px;color:#7ddfff;font-size:10px;font-weight:800;letter-spacing:.1em}.kat-call-lamp i{width:10px;height:10px;border-radius:50%;background:#2fd1ff;box-shadow:0 0 12px #2fd1ff}.kat-call-indicator.is-live .kat-call-lamp i{background:#30f1bd;box-shadow:0 0 15px #30f1bd;animation:kat-live-pulse 1.1s infinite}.kat-call-indicator>strong{font-size:17px}.kat-call-indicator>small,.kat-call-mini{color:#87a5b9;font-size:10px}.kat-call-indicator>u{color:#5ed6ff;font-size:10px;text-decoration:none}.kat-call-indicator>em{position:absolute;right:12px;top:-8px;min-width:23px;height:23px;display:grid;place-items:center;padding:0 6px;border:2px solid #061522;border-radius:99px;color:white;font-size:10px;font-style:normal;background:#df2935;box-shadow:0 0 10px rgba(255,40,55,.55)}
@keyframes kat-live-pulse{50%{transform:scale(1.25);opacity:.7}}
.kat-monitor{padding-bottom:60px}.kat-monitor-health{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:14px}.kat-monitor-health>div{display:grid;gap:4px;padding:14px;border:1px solid #234d6b;border-radius:12px;background:linear-gradient(145deg,#102c46,#071827)}.kat-monitor-health span{color:#7d9bb1;font-size:9px;text-transform:uppercase;letter-spacing:.07em}.kat-monitor-health strong{font-size:24px}.kat-monitor-health.is-live>div:first-child{border-color:#27d8af;box-shadow:0 0 18px rgba(39,216,175,.14)}.kat-monitor-time{font-size:12px!important;line-height:1.4}.kat-mobile-setup{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:12px;align-items:end;margin-bottom:14px;padding:17px;border:1px solid #795926;border-radius:15px;background:linear-gradient(135deg,rgba(62,44,16,.55),rgba(8,25,40,.96))}.kat-mobile-setup.is-verified{border-color:#24785f;background:linear-gradient(135deg,rgba(14,64,52,.44),rgba(8,25,40,.96))}.kat-mobile-setup h2{margin:4px 0;font-size:18px}.kat-mobile-setup p{margin:0;color:#8ba7b9;font-size:10px}.kat-mobile-setup form{display:flex;gap:7px}.kat-mobile-setup input{min-width:150px;padding:9px 10px;border:1px solid #2d5a78;border-radius:8px;color:#e9f6ff;background:#071a2c}.kat-verified-state{align-self:center;color:#4bf0ba;font-size:11px;letter-spacing:.08em}.kat-call-list{padding:17px;border:1px solid #244e70;border-radius:17px;background:linear-gradient(145deg,rgba(12,35,57,.98),rgba(4,17,30,.99))}.kat-call-card{margin-bottom:9px;border:1px solid #234c69;border-radius:12px;background:#081d30;overflow:hidden}.kat-call-card[open]{border-color:#2d89ba}.kat-call-card.is-live{border-color:#2cdcb3}.kat-call-card.is-error{border-color:#a4464c}.kat-call-card summary{display:grid;grid-template-columns:8px minmax(180px,1fr) 110px 80px;gap:12px;align-items:center;padding:13px 15px;cursor:pointer;list-style:none}.kat-call-card summary::-webkit-details-marker{display:none}.kat-call-card summary>i{width:8px;height:8px;border-radius:50%;background:#3abdf0;box-shadow:0 0 8px #3abdf0}.kat-call-card.is-live summary>i{background:#35edb9;box-shadow:0 0 10px #35edb9}.kat-call-card.is-error summary>i{background:#ff5961;box-shadow:0 0 10px #ff5961}.kat-call-card summary>span{display:grid;gap:2px}.kat-call-card summary b{font-size:12px}.kat-call-card summary small{color:#7898ad;font-size:9px}.kat-call-card summary>em{color:#74cdf1;font-size:9px;font-style:normal;text-transform:uppercase}.kat-call-card summary>strong{text-align:right;font-size:11px}.kat-call-detail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:13px 15px;border-top:1px solid #1d4059;background:#061725}.kat-call-detail>div:not(.kat-call-actions){display:grid;gap:3px}.kat-call-detail span{color:#718fa5;font-size:8px;text-transform:uppercase}.kat-call-detail b{font-size:10px}.kat-call-detail>p{grid-column:1/-1;margin:0;color:#9ab3c4;font-size:10px;line-height:1.6}.kat-call-error{color:#ff8e93!important}.kat-call-actions{grid-column:1/-1;display:flex;gap:8px}
@media(max-width:1000px){.kat-call-indicator{grid-template-columns:1fr 1fr}.kat-monitor-health{grid-template-columns:repeat(3,1fr)}.kat-mobile-setup{grid-template-columns:1fr}.kat-call-detail{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.kat-call-indicator{grid-template-columns:1fr}.kat-monitor-health{grid-template-columns:repeat(2,1fr)}.kat-mobile-setup form{flex-wrap:wrap}.kat-call-card summary{grid-template-columns:8px 1fr auto}.kat-call-card summary>em{display:none}.kat-call-detail{grid-template-columns:1fr}}
@media(max-width:1120px){.command-pulse-grid,.command-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.command-work-row{grid-template-columns:8px 75px minmax(140px,1fr) minmax(110px,.8fr) 15px}.command-work-owner{display:none}}
@media(max-width:1120px){.command-feed-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.command-page{padding:18px 14px 50px}.command-bento{grid-template-columns:1fr}.command-feed-list{grid-template-columns:repeat(2,minmax(0,1fr))}.command-page .today-header{align-items:flex-start}.command-page .today-date{display:none}.command-work-row{grid-template-columns:8px 72px minmax(120px,1fr) 15px}.command-work-action{display:none}}
@media(max-width:560px){.command-pulse-grid,.command-module-grid{grid-template-columns:1fr 1fr;gap:8px}.command-feed-list{grid-template-columns:1fr}.command-pulse-card{min-height:95px;padding:12px}.command-page .today-title{font-size:25px}.command-work-stage{display:none}.command-work-row{grid-template-columns:8px minmax(120px,1fr) 15px}}

/* Interior cockpit headers and work surfaces */
.cockpit-module{background:radial-gradient(circle at 72% -18%,rgba(0,139,255,.1),transparent 34%)}.module-command-header{position:relative;min-height:128px;display:grid;grid-template-columns:minmax(260px,1.1fr) minmax(320px,1fr) auto;align-items:center;gap:22px;margin:0 0 16px;padding:20px 22px;overflow:hidden;border:1px solid #245579;border-radius:17px;background:linear-gradient(135deg,rgba(14,41,66,.98),rgba(5,18,31,.99));box-shadow:inset 0 1px rgba(255,255,255,.07),0 16px 34px rgba(0,0,0,.27)}.module-command-header::before{content:"";position:absolute;width:250px;height:75px;left:-280px;top:-35px;transform:skewX(-24deg);background:linear-gradient(90deg,transparent,rgba(72,203,255,.13),transparent);animation:module-searchlight 9s ease-in-out infinite}@keyframes module-searchlight{0%,17%{left:-280px}58%,100%{left:115%}}.module-command-copy,.module-command-metrics,.module-command-action{position:relative;z-index:1}.module-command-copy h1{margin:7px 0 5px;font-size:27px;line-height:1;letter-spacing:-.04em}.module-command-copy p{max-width:570px;color:#86a3ba;font-size:11px;line-height:1.45}.module-command-metrics{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:8px}.module-command-metrics>div{min-height:77px;display:grid;align-content:center;gap:1px;padding:10px 12px;border:1px solid #214d6d;border-radius:11px;background:linear-gradient(145deg,rgba(13,44,70,.88),rgba(5,24,40,.88));box-shadow:inset 0 1px rgba(255,255,255,.05)}.module-command-metrics span{color:#7897ad;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.module-command-metrics b{font-size:24px}.module-command-metrics small{color:#658299;font-size:8px}.module-command-action{justify-self:end}.module-command-host{padding:20px 22px 0!important;border:0!important}.module-command-host .module-command-header{margin:0}
.cockpit-board{min-height:0;margin:0 -2px;padding:4px 2px 18px;background:transparent}.cockpit-searchbar{margin:0 0 14px;padding:10px;border:1px solid #1e4968;border-radius:13px;background:rgba(5,25,42,.72)}.cockpit-searchbar .gsearch{max-width:760px;background:#071d30}
.module-action-set{display:flex;align-items:center;justify-content:flex-end;gap:8px}.module-action-menu{position:relative}.module-action-menu>summary{list-style:none;cursor:pointer}.module-action-menu>summary::-webkit-details-marker{display:none}.module-action-menu[open]>summary{border-color:#68dcff;box-shadow:0 0 20px rgba(0,151,255,.2)}.module-action-menu>div{position:absolute;z-index:40;right:0;top:calc(100% + 8px);min-width:190px;display:grid;gap:6px;padding:8px;border:1px solid #2a5c7c;border-radius:11px;background:linear-gradient(145deg,#102e49,#061827);box-shadow:0 18px 38px rgba(0,0,0,.5)}.module-action-menu>div .btn{width:100%;justify-content:flex-start;text-align:left}
.task-command-list{display:grid;gap:8px;max-width:1050px}.command-task-row{min-height:70px;margin:0!important;padding:13px 15px!important;border:1px solid #214d6c!important;border-radius:13px!important;background:linear-gradient(120deg,#0d2a45,#071a2c)!important;box-shadow:inset 0 1px rgba(255,255,255,.045),0 10px 20px rgba(0,0,0,.18)}.command-task-row.is-overdue{border-left:3px solid #ff514e!important}.command-task-row.done{opacity:.52}.command-task-row input{min-height:auto!important;width:18px;height:18px;accent-color:#1ce1cf}.command-task-row .task-title{font-size:13px;font-weight:700}.command-task-row .task-due,.command-task-row .task-lead-link,.command-task-row .task-assigned-to{display:inline-block;margin:5px 9px 0 0;padding:3px 7px;border:1px solid #1f4a68;border-radius:999px;background:rgba(6,24,40,.72);font-size:9px}
.clients-cockpit{padding:0 0 25px!important;border-radius:0!important;background:transparent!important}.clients-cockpit>.cs-table-wrap{margin:15px 22px;border:1px solid #224e70!important;overflow:hidden}.cs-table{border-collapse:separate!important;border-spacing:0 7px!important;padding:7px 10px}.cs-table thead th{padding:8px 12px!important;color:#6e8ea5!important;font-size:9px!important;letter-spacing:.1em!important;text-transform:uppercase}.cs-table .cs-row{background:linear-gradient(90deg,#0d2943,#071a2d)!important}.cs-table .cs-row td{padding:13px 12px!important;border-top:1px solid #214d6c!important;border-bottom:1px solid #214d6c!important}.cs-table .cs-row td:first-child{border-left:1px solid #214d6c!important;border-radius:11px 0 0 11px}.cs-table .cs-row td:last-child{border-right:1px solid #214d6c!important;border-radius:0 11px 11px 0}.cs-cell-name{font-size:12px!important}.cs-empty-state{margin:16px 22px;border:1px dashed #285878;border-radius:15px;background:rgba(7,27,45,.55)}
.social-cockpit>.soc-engine{border-radius:17px!important;overflow:hidden}.social-cockpit .soc-head{padding:16px 18px}.social-cockpit .soc-subnav{padding:0 12px;border-color:#244e70}.social-cockpit .soc-subtab{min-height:40px;padding:10px 13px;border-radius:9px 9px 0 0}.social-cockpit .soc-subtab.active{color:#fff;background:linear-gradient(180deg,rgba(57,68,129,.75),rgba(17,36,65,.65));box-shadow:inset 0 -2px #806fff,0 0 18px rgba(111,92,255,.12)}
.fulfillment-cockpit{border-radius:0!important;background:transparent!important}.fulfillment-cockpit .fulfill-board{gap:13px;padding:15px 22px 25px}.fulfillment-cockpit .fulfill-col{width:255px;border-radius:15px!important;overflow:hidden}.fulfillment-cockpit .fulfill-col-header{min-height:54px;padding:13px}.fulfillment-cockpit .fulfill-col-cards{padding:10px;gap:9px}
@media(max-width:1080px){.module-command-header{grid-template-columns:1fr}.module-command-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.module-command-action{position:absolute;right:18px;top:18px}}
@media(max-width:650px){.module-command-header{padding:17px}.module-command-copy{padding-right:0}.module-command-copy h1{font-size:24px}.module-command-metrics{grid-template-columns:repeat(3,1fr);gap:5px}.module-command-metrics>div{padding:8px}.module-command-action{position:static;justify-self:stretch}.module-command-action .btn{width:100%;justify-content:center}.module-action-set{align-items:stretch;flex-direction:column}.module-action-menu>div{left:0;right:0}.module-command-host{padding:14px 12px 0!important}.clients-cockpit>.cs-table-wrap{margin:12px;padding:7px!important;overflow:visible}.clients-cockpit .cs-table{display:block;min-width:0!important;padding:0!important}.clients-cockpit .cs-table thead{display:none}.clients-cockpit .cs-table tbody{display:grid;gap:10px}.clients-cockpit .cs-table .cs-row{display:grid;padding:10px;border:1px solid #214d6c!important;border-radius:13px!important}.clients-cockpit .cs-table .cs-row td{display:grid;grid-template-columns:105px 1fr;gap:10px;padding:7px 5px!important;border:0!important;border-radius:0!important}.clients-cockpit .cs-table .cs-row td::before{content:attr(data-label);color:#6f92aa;font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.clients-cockpit .cs-table .cs-row td:first-child{font-size:14px!important}.clients-cockpit .cs-table .cs-row td:first-child::before{color:#35d5ff}}@media(prefers-reduced-motion:reduce){.module-command-header::before{animation:none!important}}

/* Queue bays: dimensional, role-specific work surfaces rather than legacy lists. */
.board-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:13px}.board-section-heading h3{margin:4px 0 0;font-size:18px;letter-spacing:-.025em}.module-eyebrow{color:#59d7ff;font-size:8px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.live-status-pill{padding:5px 9px;border:1px solid rgba(28,225,207,.3);border-radius:999px;color:#76eadf;background:rgba(5,61,67,.28);font-size:8px;letter-spacing:.08em;text-transform:uppercase}
.visibility-review-board,.setter-queue-board,.outreach-channel-board{padding:17px;border:1px solid #224f70;border-radius:17px;background:linear-gradient(145deg,rgba(11,35,57,.96),rgba(4,17,30,.98));box-shadow:inset 0 1px rgba(255,255,255,.055),0 16px 34px rgba(0,0,0,.25)}
.visibility-review-board .vr-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:10px}.visibility-review-board .vr-card{position:relative;min-height:112px;padding:15px 16px;border-color:#245271!important;background:linear-gradient(135deg,#102d49,#071a2c)!important;transition:transform .17s,border-color .17s,box-shadow .17s}.visibility-review-board .vr-card::after{content:"";position:absolute;inset:0 auto 0 0;width:2px;border-radius:3px;background:#168cff;box-shadow:0 0 9px #168cff}.visibility-review-board .vr-card--waiting::after{background:#ffc447;box-shadow:0 0 10px #ffc447}.visibility-review-board .vr-card--exception::after{background:#ff514e;box-shadow:0 0 10px #ff514e}.visibility-review-board .vr-card:hover{transform:translateY(-2px);border-color:#2ca6e5!important;box-shadow:inset 0 1px rgba(255,255,255,.07),0 14px 28px rgba(0,0,0,.28),0 0 17px rgba(0,139,255,.1)!important}.visibility-review-board .vr-card-name{font-size:13px}.visibility-review-board .vr-card-meta{line-height:1.55}
.visibility-approval-cockpit .vr-head--console{min-height:34px;margin:0 0 12px;padding:8px 12px;border:1px solid #214d6b;border-radius:11px;background:rgba(5,25,42,.72)}.visibility-approval-cockpit .vr-cols{gap:12px}.visibility-approval-cockpit .vr-panel{padding:17px 18px!important;border-color:#24516f!important;background:linear-gradient(145deg,#0d2b45,#071827)!important}.visibility-approval-cockpit .vr-panel h3{color:#5bd9ff}.visibility-approval-cockpit .vr-row{border-top-color:#1d4663}.visibility-approval-cockpit .vr-pre{background:#03111f;border-color:#204c6c}.visibility-approval-cockpit .vr-actions{border-color:#2d8fc8!important;box-shadow:inset 0 1px rgba(255,255,255,.05),0 0 23px rgba(0,139,255,.08)!important}
.setter-queue-board .cq-segbar{margin:0 0 13px;padding:10px;border:1px solid #1d4867;border-radius:11px;background:rgba(5,24,40,.72)}.setter-queue-board .cq-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:10px}.setter-queue-board .cq-card{position:relative;margin:0!important;padding:15px!important;border-color:#245170!important;background:linear-gradient(145deg,#102d49,#071a2c)!important}.setter-queue-board .cq-card::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:2px;border-radius:2px;background:#1ce1cf;box-shadow:0 0 9px #1ce1cf}.setter-queue-board .cq-name{font-size:14px;font-weight:700;color:#eef8ff}.setter-queue-board .cq-facts{margin-top:9px;color:#7f9db4}.setter-queue-board .cq-actions{padding-top:11px;border-top:1px solid rgba(42,91,123,.55)}
.outreach-channel-board{display:grid;gap:13px}.outreach-channel-board .oq-group{margin:0;padding:14px;border:1px solid #204b6a;border-radius:14px;background:linear-gradient(145deg,rgba(14,43,68,.9),rgba(6,23,39,.92));box-shadow:inset 0 1px rgba(255,255,255,.045)}.outreach-channel-board .oq-group-header{min-height:31px;margin-bottom:9px;padding-bottom:9px;border-bottom:1px solid #1c435f}.outreach-channel-board .oq-table-head,.outreach-channel-board .oq-row{grid-template-columns:minmax(150px,1.2fr) minmax(130px,1fr) 110px 90px 80px 115px}.outreach-channel-board .oq-table-head{padding:7px 11px;color:#65859d;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.outreach-channel-board .oq-row{min-height:55px;margin-top:6px;padding:8px 11px;border:1px solid #1d4866;border-radius:10px;background:linear-gradient(90deg,rgba(12,40,64,.92),rgba(6,25,42,.9));transition:transform .15s,border-color .15s}.outreach-channel-board .oq-row:hover{transform:translateX(2px);border-color:#288dca}.outreach-channel-board .oq-name{font-weight:700;color:#ecf7ff}

/* Lead command drawer: preserve every field and handler while replacing the flat form surface. */
.overlay{padding:20px;background:rgba(0,5,12,.76);backdrop-filter:blur(9px)}.modal{width:min(720px,calc(100vw - 32px))!important;max-width:720px!important;max-height:calc(100vh - 34px)!important;padding:0 24px 32px!important;overflow:auto!important;border:1px solid #2b648b!important;border-radius:20px!important;background:radial-gradient(circle at 78% -4%,rgba(0,139,255,.12),transparent 28%),linear-gradient(145deg,#0a243d,#061829 46%,#040f1c)!important;box-shadow:inset 0 1px rgba(255,255,255,.1),0 30px 90px rgba(0,0,0,.68),0 0 40px rgba(0,128,255,.11)!important}#modal-overlay>.modal:not(#add-lead-modal){width:min(1180px,calc(100vw - 32px))!important;max-width:1180px!important}.prod-workspace{width:min(1060px,calc(100vw - 32px))!important;max-width:1060px!important}.mwm-modal{width:min(620px,calc(100vw - 32px))!important;max-width:620px!important}.dp-modal{width:min(820px,calc(100vw - 32px))!important;max-width:820px!important;padding:0!important;overflow:hidden!important}.modal-header{margin:0 -24px 16px!important;padding:19px 22px 17px!important;top:0!important;border-bottom-color:#285979!important;background:linear-gradient(100deg,rgba(11,42,68,.97),rgba(5,20,35,.97))!important;backdrop-filter:blur(18px)}.modal-title{margin-top:7px;font-size:25px!important;letter-spacing:-.035em;color:#f4f9ff}.modal-subtitle{color:#7f9db4!important}.modal-owner-row{margin-top:9px}.modal-head-contact{margin-top:10px!important;padding:8px!important;border:1px solid #214c6a!important;border-radius:10px;background:rgba(4,20,34,.72)}.modal-phase{margin:23px 0 13px!important}.modal-phase-line{background:linear-gradient(90deg,transparent,#286084)!important}.modal-phase-label{color:#56d8ff!important;letter-spacing:.14em!important}.modal .section-header{margin:15px 0 9px!important;padding:10px 12px!important;border:1px solid #214d6c!important;border-radius:10px!important;color:#dff2ff!important;background:linear-gradient(90deg,rgba(15,48,75,.82),rgba(6,25,42,.48))!important;font-size:10px!important;letter-spacing:.12em!important;text-transform:uppercase}.modal .field-grid{gap:11px!important}.modal label{color:#7294ac!important;font-size:9px!important;letter-spacing:.06em!important;text-transform:uppercase}.modal input,.modal select,.modal textarea{background:#061a2c!important;border-color:#285675!important;box-shadow:inset 0 2px 7px rgba(0,0,0,.22)}.modal .btn-icon{border-radius:50%!important;background:linear-gradient(145deg,#173d5b,#071727)!important}
.lead-command-index{display:flex;gap:6px;margin:0 0 15px;padding:7px;overflow-x:auto;border:1px solid #214d6c;border-radius:12px;background:linear-gradient(90deg,rgba(5,24,41,.96),rgba(8,32,52,.88));box-shadow:inset 0 1px rgba(255,255,255,.035)}.lead-command-index button{min-width:max-content;display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid transparent;border-radius:8px;color:#83a2b8;background:transparent;font:600 9px var(--font);letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.lead-command-index button i{width:6px;height:6px;border-radius:50%;background:#2879a8;box-shadow:0 0 6px rgba(41,167,224,.3)}.lead-command-index button:hover{color:#eef8ff;border-color:#29658a;background:#0d3352}.lead-command-index button:hover i{background:#1ce1cf;box-shadow:0 0 8px #1ce1cf}
.mwm-modal .modal-header{margin-bottom:0!important}.mwm-status-badge{border:1px solid #2d698e!important;border-radius:999px!important;background:#0a2a44!important;color:#75dfff!important}.mwm-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:16px 0}.mwm-field{min-height:63px;margin:0!important;padding:11px 12px!important;border:1px solid #214d6b;border-radius:11px;background:linear-gradient(145deg,#0d2a43,#071827)}.mwm-field-full{grid-column:1/-1}.mwm-label{color:#67d8ff!important;font-size:8px!important;letter-spacing:.1em!important}.mwm-actions{display:grid;gap:8px;padding:14px;border:1px solid #28587a;border-radius:13px;background:linear-gradient(145deg,rgba(13,43,68,.9),rgba(5,21,36,.92))}.mwm-actions>.btn,.mwm-actions>.mwm-action-row .btn{justify-content:center}.mwm-primary-btn{min-height:42px}.mwm-footer{margin-top:13px;padding-top:12px;border-top:1px solid #214967!important}
.dp-modal>div:first-child{border-bottom-color:#285775!important;background:linear-gradient(90deg,#0d2e4b,#061827)}.dp-modal>div:nth-child(2)>div:first-child{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 120%,rgba(0,139,255,.28),transparent 50%),linear-gradient(155deg,#0b2b48,#061727)!important}.dp-modal>div:nth-child(2)>div:first-child::after{content:"";position:absolute;left:10%;right:10%;bottom:-85px;height:150px;border:1px solid rgba(44,175,255,.28);border-radius:50%;box-shadow:0 -2px 20px rgba(0,139,255,.12)}

@media(max-width:900px){.outreach-channel-board{overflow-x:auto}.outreach-channel-board .oq-group{min-width:820px}.setter-queue-board .cq-list{grid-template-columns:1fr}}
@media(max-width:650px){.visibility-review-board,.setter-queue-board,.outreach-channel-board{padding:11px}.visibility-review-board .vr-grid{grid-template-columns:1fr}.overlay{padding:0}.modal{width:100%!important;max-height:100vh!important;border-radius:0!important;padding:0 13px 25px!important}.modal-header{margin:0 -13px 14px!important;padding:14px!important}.modal-title{font-size:21px!important}}

/* DailyFlo arrival bay: the selected brand asset and cockpit personality start at the front door. */
.login-screen{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 18% 4%,rgba(0,139,255,.18),transparent 36%),radial-gradient(circle at 90% 85%,rgba(28,225,207,.08),transparent 28%),linear-gradient(145deg,#020914,#061426 62%,#020914)}.login-screen::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.13;background-image:linear-gradient(rgba(53,141,197,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(53,141,197,.1) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 80%)}
.login-arrival{position:relative;width:min(1010px,100%);min-height:610px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.78fr);overflow:hidden;border:1px solid #2b6289;border-radius:24px;background:linear-gradient(130deg,rgba(9,35,59,.98),rgba(3,14,27,.99));box-shadow:inset 0 1px rgba(255,255,255,.1),0 35px 100px rgba(0,0,0,.62),0 0 60px rgba(0,126,255,.12)}.login-arrival::after{content:"";position:absolute;z-index:4;left:-300px;top:-80px;width:260px;height:100px;transform:skewX(-25deg);background:linear-gradient(90deg,transparent,rgba(85,216,255,.14),transparent);animation:login-searchlight 7.5s ease-in-out infinite;pointer-events:none}@keyframes login-searchlight{0%,15%{left:-300px}58%,100%{left:115%}}
.login-welcome{position:relative;display:flex;flex-direction:column;justify-content:center;padding:38px 42px;overflow:hidden;border-right:1px solid #285775;background:radial-gradient(circle at 50% 72%,rgba(0,137,255,.17),transparent 35%),linear-gradient(145deg,rgba(11,42,69,.88),rgba(4,18,32,.95))}.login-welcome::after{content:"";position:absolute;left:12%;right:12%;bottom:-105px;height:230px;border:1px solid rgba(47,175,255,.28);border-radius:50%;box-shadow:0 -2px 28px rgba(0,139,255,.18),inset 0 7px 28px rgba(0,102,255,.12);background:radial-gradient(ellipse at 50% 0,rgba(18,103,176,.36),transparent 59%)}.login-logo{position:relative;z-index:2;width:205px;height:auto;object-fit:contain;filter:drop-shadow(0 12px 22px rgba(0,0,0,.45))}.login-welcome-copy{position:relative;z-index:2;margin-top:34px}.login-welcome-copy h1{margin:10px 0 12px;color:#f5faff;font-size:clamp(40px,4.5vw,58px);line-height:.96;letter-spacing:-.06em}.login-welcome-copy p{max-width:440px;color:#8daac0;font-size:13px;line-height:1.55}
.login-instrument-bank{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.login-instrument{text-align:center}.login-dial{--login-needle:-52deg;position:relative;width:112px;height:112px;margin:0 auto;border:5px solid #a8bdc7;border-radius:50%;background:radial-gradient(circle,#082239 0 58%,#030f1b 59% 70%,#0a263a 71%);box-shadow:inset 0 0 30px #000,0 0 19px rgba(57,198,244,.15)}.login-dial::before{content:"";position:absolute;inset:8px;border:1px solid #248ab8;border-radius:50%}.login-dial::after{content:"";position:absolute;inset:10px;border-radius:50%;background:repeating-conic-gradient(from -128deg,#a7eaff 0 1deg,transparent 1deg 10deg);-webkit-mask:radial-gradient(circle,transparent 0 73%,#000 74% 81%,transparent 82%);mask:radial-gradient(circle,transparent 0 73%,#000 74% 81%,transparent 82%)}.login-dial i{position:absolute;z-index:3;left:54px;top:18px;width:3px;height:40px;border-radius:3px;transform:rotate(var(--login-needle));transform-origin:50% 38px;background:linear-gradient(#68e9ff,#1ab7e8);box-shadow:0 0 9px #37dcff;animation:login-rev 2.1s cubic-bezier(.2,.8,.2,1)}.login-dial i::after{content:"";position:absolute;left:-5px;bottom:-7px;width:13px;height:13px;border:2px solid #47616e;border-radius:50%;background:#d6e3e8}.login-dial b{position:absolute;z-index:2;left:0;right:0;top:40px;color:#fff;font-size:17px;text-shadow:0 0 12px #41d8ff}.login-dial small{position:absolute;z-index:2;left:12px;right:12px;top:64px;color:#54d6f7;font-size:5px;letter-spacing:.1em}.login-instrument>strong,.login-instrument>span{display:block;text-transform:uppercase}.login-instrument>strong{margin-top:8px;color:#9cecff;font-size:9px}.login-instrument>span{margin-top:2px;color:#567b91;font-size:7px}.login-dial-2{--login-needle:-18deg}.login-dial-3{--login-needle:18deg}@keyframes login-rev{0%{transform:rotate(-128deg)}38%{transform:rotate(128deg)}58%{transform:rotate(calc(var(--login-needle) - 7deg))}76%{transform:rotate(calc(var(--login-needle) + 6deg))}100%{transform:rotate(var(--login-needle))}}
.login-system-line{position:relative;z-index:3;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"light label" "light detail";column-gap:10px;margin-top:22px;color:#afece7}.login-system-line i{grid-area:light;align-self:center;width:9px;height:9px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 12px #1ce1cf}.login-system-line span{grid-area:label;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.login-system-line small{grid-area:detail;color:#5f8198;font-size:8px}
.login-arrival .login-card{position:relative;width:auto;max-width:none;align-self:center;margin:30px;padding:29px 27px!important;border:1px solid #285a7b!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(13,43,69,.96),rgba(5,22,38,.98))!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 20px 42px rgba(0,0,0,.35)!important}.login-panel-kicker{color:#59d8ff;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.login-panel-title{margin:8px 0 3px;color:#f3f9ff;font-size:29px;font-weight:700;letter-spacing:-.04em}.login-arrival .login-sub{text-align:left;margin-bottom:22px;color:#7898af}.login-arrival .login-google{min-height:43px;border-color:#336382;background:linear-gradient(180deg,#113653,#092238);color:#eaf6ff}.login-arrival .login-google:hover{border-color:#48bfe8;background:linear-gradient(180deg,#174665,#0b2b45)}.login-arrival .login-divider{color:#66869e}.login-arrival .login-divider::before,.login-arrival .login-divider::after{background:#28516e}.login-arrival .login-label{color:#84a4bb;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.login-arrival .login-input{min-height:43px}.login-arrival .login-submit{min-height:44px;border-color:#65d8ff;box-shadow:inset 0 1px rgba(255,255,255,.26),0 10px 22px rgba(0,86,221,.27),0 0 20px rgba(0,151,255,.14)}
.login-screen>.login-card{width:min(430px,calc(100vw - 32px));padding:30px!important;border:1px solid #285a7b!important;border-radius:20px!important;background:linear-gradient(145deg,rgba(13,43,69,.97),rgba(5,22,38,.99))!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 28px 72px rgba(0,0,0,.5),0 0 35px rgba(0,139,255,.1)!important}.login-logo--compact{display:block;width:210px;margin:0 auto 24px}.login-screen>.login-card .login-sub{color:#8eabc1;font-size:15px;font-weight:700}.login-screen>.login-card .login-onboard-hint{padding:12px;border:1px solid #214d6b;border-radius:11px;background:rgba(5,24,40,.62)}
@media(max-width:820px){.login-arrival{grid-template-columns:1fr;max-width:520px}.login-welcome{min-height:210px;padding:25px;border-right:0;border-bottom:1px solid #285775}.login-welcome-copy{margin-top:22px}.login-welcome-copy h1{font-size:38px}.login-welcome-copy p,.login-instrument-bank,.login-system-line{display:none}.login-logo{width:195px}.login-arrival .login-card{margin:18px}}
@media(max-width:520px){.login-screen{padding:0}.login-arrival{min-height:100vh;border:0;border-radius:0}.login-welcome{min-height:175px}.login-welcome-copy h1{font-size:32px}.login-arrival .login-card{margin:12px;padding:22px!important}}
@media(prefers-reduced-motion:reduce){.login-arrival::after,.login-dial i{animation:none!important}}

/* Login arrival — approved Gauge Garage language on the LEFT panel only.
   The Secure Operator Access panel and every authentication control remain locked. */
.login-welcome--instrumented{justify-content:flex-start;padding:18px 34px 18px;background:radial-gradient(circle at 50% 69%,rgba(0,137,255,.15),transparent 39%),linear-gradient(145deg,rgba(11,42,69,.88),rgba(4,18,32,.95))}
.login-welcome--instrumented .login-logo{width:174px;flex:none;margin-top:-18px;margin-bottom:-12px}
.login-welcome--instrumented .login-welcome-copy{margin-top:0}
.login-welcome--instrumented .login-welcome-copy h1{margin:7px 0 8px;font-size:clamp(36px,3.5vw,48px);line-height:.98;letter-spacing:-.055em}
.login-welcome--instrumented .login-welcome-copy p{max-width:490px;margin:0;color:#9ab4c8;font-size:12px;line-height:1.48}
.login-gauge-bay{position:relative;z-index:2;min-height:246px;margin-top:10px;padding:10px 12px 11px;overflow:hidden;border:1px solid #245978;border-radius:15px;background:radial-gradient(circle at 50% 52%,rgba(25,112,174,.2),transparent 58%),linear-gradient(145deg,rgba(4,18,30,.94),rgba(7,29,47,.88));box-shadow:inset 0 1px rgba(255,255,255,.055);transition:filter .35s ease,box-shadow .35s ease}
.login-gauge-bay::before{content:"";position:absolute;inset:-70%;background:conic-gradient(from 15deg,transparent 0 44%,rgba(47,215,255,.08) 48%,transparent 52% 100%);animation:login-radar-sweep 6s linear infinite;pointer-events:none;transition:opacity .35s ease}
.login-gauge-bay>span,.login-gauge-row,.login-gauge-note,.login-ignition-dock{position:relative;z-index:1}
.login-gauge-bay>span{display:block;color:#58d9ff;text-align:center;text-transform:uppercase;font-size:8.5px;font-weight:800;letter-spacing:.12em}
.login-gauge-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start;margin-top:3px}
.login-garage-gauge{min-width:0;text-align:center}.login-gauge-mount{display:grid;width:100%;place-items:center}
.login-garage-gauge svg{display:block;width:min(100%,126px);height:auto;overflow:visible;filter:drop-shadow(0 9px 10px rgba(0,0,0,.48)) drop-shadow(0 0 8px rgba(33,196,255,.2));transition:filter .35s ease,opacity .35s ease}
.login-garage-bezel{fill:#0b1722;stroke-width:11}.login-garage-face{stroke:#126d9d;stroke-width:2}.login-garage-glass{opacity:.48}
.login-garage-tick{stroke:#87abc1;stroke-width:1.5;opacity:.64}.login-garage-tick.major{stroke:#edfaff;stroke-width:2.7;opacity:.94}
.login-garage-scale{fill:#8fb3ca;font-size:10px;font-weight:800;text-anchor:middle}.login-garage-value{fill:#fff;font-size:31px;font-weight:800;text-anchor:middle;letter-spacing:-1px;text-shadow:0 0 10px #28cfff}.login-garage-unit{fill:#52ddff;font-size:8px;font-weight:800;text-anchor:middle;letter-spacing:1.25px}.login-garage-max{fill:#668aa3;font-size:8px;font-weight:800;text-anchor:middle}
.login-garage-pointer{transform-origin:150px 168px}.login-garage-needle{stroke:#25d6ff;stroke-width:4.5;stroke-linecap:round;filter:drop-shadow(0 0 5px #11bdff)}.login-garage-tail{stroke:#ef5260;stroke-width:3.5;stroke-linecap:round}.login-garage-hub{stroke:#c6deea;stroke-width:3}
.login-garage-gauge>strong,.login-garage-gauge>span{display:block}.login-garage-gauge>strong{max-width:145px;margin:-1px auto 0;color:#9cecff;text-transform:uppercase;font-size:8.5px;letter-spacing:.085em}.login-garage-gauge>span{margin-top:3px;color:#9bb4c3;text-align:center;font-size:9px}
.login-gauge-note{position:absolute;left:30px;right:88px;bottom:25px;margin:0;color:#9bb6c8;text-align:center;font-size:9.5px}
.login-gauge-bay.is-off::before{opacity:0;animation-play-state:paused}.login-gauge-bay.is-off .login-garage-gauge svg{filter:grayscale(.8) brightness(.43) drop-shadow(0 9px 9px rgba(0,0,0,.55));opacity:.82}.login-gauge-bay.is-off>span,.login-gauge-bay.is-off .login-garage-gauge>strong,.login-gauge-bay.is-off .login-garage-gauge>span,.login-gauge-bay.is-off .login-gauge-note{filter:grayscale(1);opacity:.46}
.login-gauge-bay.is-on{box-shadow:inset 0 0 30px rgba(35,180,255,.07),0 0 20px rgba(31,154,221,.09)}.login-gauge-bay.is-revving{box-shadow:inset 0 0 40px rgba(35,180,255,.14),0 0 28px rgba(31,154,221,.18)}.login-gauge-bay.is-revving::before{animation-duration:1.15s}
.login-gauge-bay.is-sound-playing .login-garage-gauge:nth-child(1) .login-garage-pointer{animation:login-needle-ignition-a .54s cubic-bezier(.35,.08,.3,1) 1.37s infinite}.login-gauge-bay.is-sound-playing .login-garage-gauge:nth-child(2) .login-garage-pointer{animation:login-needle-ignition-b .43s cubic-bezier(.3,.06,.22,1) 1.43s infinite}.login-gauge-bay.is-sound-playing .login-garage-gauge:nth-child(3) .login-garage-pointer{animation:login-needle-ignition-c .62s cubic-bezier(.38,.08,.24,1) 1.39s infinite}
.login-ignition-dock{display:contents}.login-ignition{position:absolute;z-index:5;right:12px;bottom:25px;width:44px;height:44px;padding:0;border:5px solid #263743;border-radius:50%;background:radial-gradient(circle at 43% 38%,#46191c 0,#21070a 45%,#070305 76%);color:#80565a;box-shadow:inset 0 0 0 2px #06090c,inset 0 0 10px #000,0 5px 10px rgba(0,0,0,.55),0 0 0 1px #647784;cursor:pointer;transition:filter .2s ease,box-shadow .25s ease,transform .15s ease}.login-ignition::before{content:"";position:absolute;inset:-5px;border:1px solid rgba(223,239,247,.42);border-radius:50%;box-shadow:inset 1px 1px 2px rgba(255,255,255,.18)}.login-ignition::after{content:"➜";position:absolute;right:calc(100% + 10px);top:50%;color:#70d8f5;font-size:24px;line-height:1;text-shadow:0 0 10px rgba(66,206,244,.6);transform:translate(-7px,-50%);animation:login-point-ignition 1.65s ease-in-out infinite;pointer-events:none}.login-ignition span{display:block;font-size:5.4px;font-weight:800;line-height:1.04;letter-spacing:.07em;text-transform:uppercase}.login-ignition:hover{filter:brightness(1.2)}.login-ignition:active{transform:translateY(2px) scale(.97)}.login-ignition.is-on{border-color:#8b9398;background:radial-gradient(circle at 42% 36%,#ff706c 0,#d71924 34%,#6c060d 68%,#170205 82%);color:#fff;text-shadow:0 1px 2px #490000;box-shadow:inset 0 0 0 2px #2c0003,inset 0 0 10px rgba(255,225,210,.45),0 5px 10px rgba(0,0,0,.55),0 0 16px rgba(255,38,48,.82),0 0 0 1px #dce8ee;animation:login-ignition-glow 2.4s ease-in-out infinite}.login-ignition.is-on::after{content:none;animation:none}.login-ignition-dock small{position:absolute;z-index:5;right:-4px;bottom:6px;width:76px;color:#6f8ca1;text-align:center;text-transform:uppercase;font-size:6.5px;font-weight:800;letter-spacing:.07em}.login-ignition.is-on+small{color:#ff7777}
.login-welcome--instrumented .login-system-line{margin-top:8px}.login-welcome--instrumented .login-system-line span{font-size:10px}.login-welcome--instrumented .login-system-line small{color:#7999ae;font-size:9px}.login-searchooli-credit{position:absolute;z-index:3;left:34px;right:34px;bottom:15px;color:#789cb4;text-align:center;font-size:9.5px;letter-spacing:.02em}.login-searchooli-credit a{color:#8edcff;font-weight:800;text-decoration:none}.login-searchooli-credit a:hover,.login-searchooli-credit a:focus-visible{color:#c2f3ff;text-decoration:underline}
@keyframes login-radar-sweep{to{transform:rotate(360deg)}}@keyframes login-ignition-glow{0%,100%{filter:brightness(.9)}50%{filter:brightness(1.22)}}@keyframes login-point-ignition{0%,100%{opacity:.52;transform:translate(-8px,-50%)}50%{opacity:.95;transform:translate(1px,-50%)}}
@keyframes login-needle-ignition-a{0%,100%{transform:rotate(var(--login-needle-rest))}35%{transform:rotate(calc(var(--login-needle-rest) + 7deg))}72%{transform:rotate(calc(var(--login-needle-rest) - 4deg))}}@keyframes login-needle-ignition-b{0%,100%{transform:rotate(var(--login-needle-rest))}28%{transform:rotate(calc(var(--login-needle-rest) - 6deg))}65%{transform:rotate(calc(var(--login-needle-rest) + 9deg))}}@keyframes login-needle-ignition-c{0%,100%{transform:rotate(var(--login-needle-rest))}40%{transform:rotate(calc(var(--login-needle-rest) + 6deg))}78%{transform:rotate(calc(var(--login-needle-rest) - 5deg))}}
/* Mobile approval variation: preserve the desktop lock and carry its cockpit
   personality onto phones instead of hiding the operating instruments. */
@media(max-width:820px){
  .login-arrival{max-width:520px}
  .login-welcome--instrumented{min-height:auto;padding:17px 16px 18px}
  .login-welcome--instrumented .login-logo{width:148px;margin:-12px auto -5px}
  .login-welcome--instrumented .login-welcome-copy{margin-top:0;text-align:center}
  .login-welcome--instrumented .login-welcome-copy h1{margin:5px 0 0;font-size:32px;line-height:.98}
  .login-welcome--instrumented .login-welcome-copy p{display:none}
  .login-welcome--instrumented .login-gauge-bay{display:block;min-height:206px;margin-top:12px;padding:9px 8px 38px;border-radius:14px}
  .login-gauge-bay>span{font-size:7.5px;letter-spacing:.1em}
  .login-gauge-row{gap:3px;margin-top:1px}
  .login-garage-gauge svg{width:min(100%,98px)}
  .login-garage-gauge>strong{margin-top:-3px;font-size:7.5px;letter-spacing:.055em}
  .login-garage-gauge>span{margin-top:2px;font-size:7.5px;line-height:1.2}
  .login-gauge-note{left:10px;right:62px;bottom:11px;font-size:7.5px;line-height:1.25}
  .login-ignition{right:8px;bottom:22px;width:40px;height:40px;border-width:4px}
  .login-ignition::before{inset:-4px}
  .login-ignition::after{right:calc(100% + 7px);font-size:20px}
  .login-ignition span{font-size:4.9px}
  .login-ignition-dock small{right:-8px;bottom:5px;width:72px;font-size:5.7px}
  .login-welcome--instrumented .login-system-line{display:grid;margin:10px 4px 0;text-align:left}
  .login-searchooli-credit{position:relative;left:auto;right:auto;bottom:auto;margin-top:10px;text-align:center;font-size:8.5px}
}
@media(max-width:520px){
  html:has(.login-screen),body:has(.login-screen){height:auto;min-height:100%;overflow-y:auto}
  #app:has(.login-screen){height:auto;min-height:100svh;overflow:visible}
  .login-screen{padding:0}
  .login-arrival{width:100%;min-height:100svh;border:0;border-radius:0}
  .login-arrival .login-card{margin:12px;padding:22px!important}
}
@media(max-width:350px){
  .login-welcome--instrumented{padding-inline:10px}
  .login-welcome--instrumented .login-logo{width:136px}
  .login-welcome--instrumented .login-welcome-copy h1{font-size:29px}
  .login-garage-gauge svg{width:min(100%,88px)}
  .login-gauge-note{font-size:7px}
}
@media(prefers-reduced-motion:reduce){.login-gauge-bay::before,.login-garage-pointer,.login-ignition,.login-ignition::after{animation:none!important}}

.ab-wrap{background:radial-gradient(circle at 50% 12%,rgba(0,139,255,.14),transparent 34%),linear-gradient(145deg,#020914,#061426 62%,#020914)!important}.ab-card{width:min(460px,calc(100vw - 32px));padding:30px!important;border:1px solid #2a5d7f!important;border-radius:20px!important;background:linear-gradient(145deg,#0d2b45,#061727)!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 28px 70px rgba(0,0,0,.5),0 0 35px rgba(0,139,255,.1)!important}.ab-logo{display:block;width:205px;margin:0 auto 24px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.42))}.ab-kicker{margin-bottom:10px;color:#59d8ff;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.ab-msg{color:#eef8ff!important;font-size:17px!important;font-weight:700}.ab-sub,.ab-note{color:#82a0b6!important}
.boot-wait{min-height:100vh;display:grid;place-items:center;color:#8faac0!important;background:radial-gradient(circle at 50% 25%,rgba(0,139,255,.13),transparent 35%),#020914}.boot-wait p{padding:14px 18px;border:1px solid #255575;border-radius:12px;background:#0a2238;box-shadow:0 14px 30px rgba(0,0,0,.3)}

/* Distinct interior personalities: shared cockpit DNA without cloning one dashboard. */
.settings-cockpit .um-section,.settings-cockpit>div>div[style*="background:var(--bg2"]{margin-bottom:14px!important;padding:18px 20px!important;border:1px solid #244f6f!important;border-radius:16px!important;background:linear-gradient(145deg,#0d2943,#071827)!important;box-shadow:inset 0 1px rgba(255,255,255,.055),0 14px 29px rgba(0,0,0,.22)!important}.settings-cockpit .um-section-header{min-height:43px;margin-bottom:13px;padding-bottom:12px;border-bottom:1px solid #214b69}.settings-cockpit .um-section-title{color:#57d7ff!important;font-size:10px!important;letter-spacing:.13em!important;text-transform:uppercase}.settings-cockpit .um-card{margin:10px 0!important;padding:16px!important;border:1px solid #235170!important;border-radius:14px!important;background:linear-gradient(140deg,#102d49,#071a2d)!important;box-shadow:inset 0 1px rgba(255,255,255,.05),0 11px 23px rgba(0,0,0,.2)!important}.settings-cockpit .um-card-top{padding-bottom:11px;border-bottom:1px solid #1f4764}.settings-cockpit .um-name{font-size:14px!important}.settings-cockpit .um-ready-block,.settings-cockpit .um-acq-row,.settings-cockpit .um-acq-field,.settings-cockpit .um-optional-block{border-color:#204967!important;background:rgba(4,21,36,.58)!important}.settings-cockpit .door-release-control,.settings-cockpit .runway-control{border-color:#2d5f80!important;box-shadow:inset 0 1px rgba(255,255,255,.08),0 18px 38px rgba(0,0,0,.31),0 0 25px rgba(0,139,255,.08)!important}
.source-vault-cockpit .sv-banner{padding:12px 14px;border-color:#9b6d24;border-radius:11px;background:linear-gradient(90deg,rgba(105,69,12,.24),rgba(24,33,41,.7));color:#f0c367}.source-vault-cockpit .sv-stats-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:9px}.source-vault-cockpit .sv-stat{min-height:96px;padding:14px;border-color:#1f5268!important;background:linear-gradient(145deg,#0c2b3b,#071825)!important}.source-vault-cockpit .sv-stat-value{color:#eaf7ff;font-size:24px}.source-vault-cockpit .sv-panel{border-color:#205167!important;background:linear-gradient(145deg,#0b2938,#061724)!important}.source-vault-cockpit .sv-table-wrap{border-color:#23536f!important;background:#061827}.source-vault-cockpit .sv-table th{background:#0d2a40}.source-vault-cockpit .sv-table tbody tr:hover{background:#0c2e45}
.operator-room-cockpit .or-wrap{overflow:hidden;border:1px solid #244f70!important;border-radius:17px!important;background:linear-gradient(145deg,#0c2942,#061725)!important}.operator-room-cockpit .or-head{padding:14px 16px;border-bottom:1px solid #224d6b}.operator-room-cockpit .or-head h2{font-size:17px}.operator-room-cockpit .le-subnav{padding:0 12px;background:rgba(5,22,37,.65)}.operator-room-cockpit .or-body{min-height:520px}.operator-room-cockpit .or-list{border-color:#214b68;background:#061827}.operator-room-cockpit .or-thread{background:radial-gradient(circle at 80% 0,rgba(0,139,255,.07),transparent 32%),#071a2c}.operator-room-cockpit .or-item{margin:6px;padding:12px;border:1px solid transparent;border-radius:10px}
.brain-dock-cockpit .ac-banner{margin-bottom:12px;padding:13px 15px;border-radius:11px}.brain-dock-cockpit>.le-subnav{margin-bottom:13px;padding:5px;border:1px solid #214c6b;border-radius:12px;background:#061827}.brain-dock-cockpit>.le-subnav .le-subnav-tab{border-radius:8px}.brain-dock-cockpit>.le-subnav .le-subnav-tab.active{background:linear-gradient(180deg,#15456a,#0a2945);box-shadow:inset 0 -2px #1ce1cf}.brain-dock-cockpit .ac-card,.brain-dock-cockpit .ac-agent,.brain-dock-cockpit .ac-approval{border-color:#244f6d!important;background:linear-gradient(145deg,#0d2a43,#071827)!important}.brain-dock-cockpit .ac-agent{position:relative;overflow:hidden}.brain-dock-cockpit .ac-agent::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:2px;background:#1ce1cf;box-shadow:0 0 9px #1ce1cf}
.content-cockpit .module-command-header,.visibility-cockpit .module-command-header{border-color:#266878;background:linear-gradient(135deg,rgba(9,49,62,.98),rgba(4,21,31,.99))}.social-cockpit .module-command-header{border-color:#465f91;background:radial-gradient(circle at 80% 0,rgba(112,87,255,.17),transparent 34%),linear-gradient(135deg,#152c4b,#09182d)}.clients-cockpit .module-command-header,.fulfillment-cockpit .module-command-header{border-color:#286477;background:radial-gradient(circle at 83% 0,rgba(28,225,207,.09),transparent 34%),linear-gradient(135deg,#0d3044,#071827)}.production-cockpit .module-command-header{border-color:#315a78;background:linear-gradient(135deg,#122f4a,#071827)}
.content-cockpit .aj-filters,.visibility-cockpit .aj-filters,.production-cockpit .aj-filters{margin-bottom:13px;padding:10px;border:1px solid #214d6b;border-radius:12px;background:rgba(5,24,40,.7)}.content-cockpit .aj-row,.visibility-cockpit .aj-row{min-height:68px;margin-bottom:7px!important;padding:12px 14px!important;border-color:#205169!important;background:linear-gradient(90deg,#0c2d3d,#071925)!important}.content-cockpit .aj-row:hover,.visibility-cockpit .aj-row:hover{transform:translateX(2px);border-color:#1ce1cf!important}.production-cockpit .mission-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:11px}.production-cockpit .mission-card{position:relative;min-height:145px;margin:0;padding:16px;border:1px solid #245171;border-radius:14px;background:linear-gradient(145deg,#102d49,#071a2d);box-shadow:inset 0 1px rgba(255,255,255,.05),0 13px 27px rgba(0,0,0,.22);transition:transform .17s,border-color .17s}.production-cockpit .mission-card::after{content:"";position:absolute;left:15px;right:15px;bottom:0;height:2px;background:linear-gradient(90deg,#168cff,transparent);box-shadow:0 0 9px rgba(0,139,255,.45)}.production-cockpit .mission-card:hover{transform:translateY(-2px);border-color:#2b9edb}.social-cockpit .soc-head{min-height:58px}.social-cockpit .soc-head-title{font-size:17px}.social-cockpit .soc-body{padding:16px}.social-cockpit .soc-list{display:grid;gap:7px}.social-cockpit .soc-row{min-height:62px;border:1px solid #314f78;border-radius:11px;background:linear-gradient(90deg,#142744,#0a192d)}
.engine-work-bay{padding:15px;border:1px solid #234f6e;border-radius:17px;background:linear-gradient(145deg,rgba(11,35,57,.97),rgba(4,17,30,.98));box-shadow:inset 0 1px rgba(255,255,255,.055),0 16px 33px rgba(0,0,0,.24)}
.production-project-cockpit .module-command-header{border-color:#315f80;background:radial-gradient(circle at 82% 0,rgba(0,139,255,.12),transparent 32%),linear-gradient(135deg,#122f4a,#071827)}.project-console-tabs{display:flex;gap:5px;margin-bottom:13px;padding:6px;overflow-x:auto;border:1px solid #244f6d;border-radius:12px;background:#061827}.project-console-tabs .le-subnav-tab{min-width:max-content;border-radius:8px}.project-console-tabs .le-subnav-tab.active{color:#fff;background:linear-gradient(180deg,#15466c,#0a2944);box-shadow:inset 0 -2px #28d0ff}.project-console-body{padding:18px;border:1px solid #244f6e;border-radius:16px;background:linear-gradient(145deg,#0d2943,#071827);box-shadow:inset 0 1px rgba(255,255,255,.05),0 15px 30px rgba(0,0,0,.23)}.project-console-body .scoreboard-grid{gap:9px}.project-console-body .scoreboard-card{border-color:#245170;background:linear-gradient(145deg,#102e49,#071a2c)}

/* Lead Intake is an evidence console, not a second dashboard. */
.lead-intake-cockpit .cockpit-subworkspace{margin:0 0 16px;padding:9px 12px 0;border:1px solid #214a68;border-radius:14px;background:linear-gradient(180deg,rgba(10,37,59,.92),rgba(5,22,37,.92));box-shadow:inset 0 1px rgba(255,255,255,.04)}
.lead-intake-cockpit .le-flow-hint{margin:0 5px 8px;padding:9px 11px;border-left:2px solid #1ce1cf;border-radius:0 8px 8px 0;color:#88aac4;background:rgba(10,31,49,.68)}
.lead-intake-cockpit .le-subnav{gap:5px;margin:0;border:0;overflow-x:auto;flex-wrap:nowrap}
.lead-intake-cockpit .le-subnav-tab{min-width:max-content;margin:0;padding:10px 14px;border:0;border-radius:8px 8px 0 0}
.lead-intake-cockpit .le-subnav-tab.active{color:#fff;background:linear-gradient(180deg,#154a70,#0b2d49);box-shadow:inset 0 -3px #24d7ff,0 0 18px rgba(0,153,255,.12)}
.lead-intake-overview{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:14px;margin-bottom:18px;padding:20px;border:1px solid #285675;border-radius:17px;background:radial-gradient(circle at 10% 0,rgba(0,153,255,.12),transparent 38%),linear-gradient(145deg,#0d2a45,#061725);box-shadow:inset 0 1px rgba(255,255,255,.055),0 16px 34px rgba(0,0,0,.24)}
.lead-intake-overview-copy{display:flex;flex-direction:column;justify-content:center;min-height:176px;padding:4px 10px}
.lead-intake-overview-copy h2{margin:7px 0 6px;font-size:clamp(21px,2vw,31px);letter-spacing:-.035em}
.lead-intake-overview-copy p{max-width:650px;margin:0;color:#8eacc3;line-height:1.55}
.lead-intake-release{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px;width:max-content;max-width:100%;margin-top:18px;padding:8px 11px;border:1px solid #3f4e66;border-radius:999px;color:#f5c060;background:#101e2e}
.lead-intake-release.is-complete{border-color:#176c68;color:#35e5d4;background:#082827}
.lead-intake-release-light{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor}
.lead-intake-release small{color:#7897ae}
.lead-intake-tier-panel{padding:15px;border:1px solid #234c69;border-radius:14px;background:linear-gradient(145deg,#0b2339,#061827)}
.lead-intake-tier-panel .le-section-label{margin:0 0 10px;color:#57d9ff;letter-spacing:.14em}
.lead-intake-tier-panel .le-tier-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:0}
.lead-intake-tier-panel .le-tier-chip{min-width:0;padding:11px 7px;border-radius:10px;text-align:center}
.lead-intake-conversion{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border-top:1px solid #214862;color:#8eacc3}
.lead-intake-conversion span{font:700 24px/1 var(--font);color:#fff}
.le-section-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:21px 0 11px}
.le-section-heading span{font-size:10px;font-weight:800;letter-spacing:.16em;color:#20c9ff}
.le-section-heading h3{margin:4px 0 0;font-size:18px}
.lead-intake-cockpit .le-top-candidates{gap:12px}
.lead-intake-cockpit .le-candidate-card{border-color:#285675;background:linear-gradient(145deg,#102e49,#071a2c);box-shadow:inset 0 1px rgba(255,255,255,.05),0 13px 28px rgba(0,0,0,.2)}
@media(max-width:1050px){.lead-intake-overview{grid-template-columns:1fr}.lead-intake-overview-copy{min-height:0}.lead-intake-tier-panel{max-width:none}}
@media(max-width:560px){.lead-intake-overview{padding:13px}.lead-intake-overview-copy{padding:2px}.lead-intake-release{grid-template-columns:auto 1fr}.lead-intake-release small{grid-column:2}.lead-intake-tier-panel .le-tier-row{grid-template-columns:repeat(2,1fr)}}

.client-handoff-idle{min-height:440px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;padding:42px 28px!important;border-style:solid!important;background:radial-gradient(circle at 50% 38%,rgba(0,151,255,.11),transparent 27%),linear-gradient(145deg,#0b263f,#051625)!important;box-shadow:inset 0 1px rgba(255,255,255,.05),0 18px 36px rgba(0,0,0,.2)}
.client-handoff-idle-mark{position:relative;width:82px;height:82px;margin-bottom:14px;border:1px solid #2a6389;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#123c5d,#061827 68%);box-shadow:inset 0 0 22px rgba(0,154,255,.12),0 0 28px rgba(0,154,255,.09)}
.client-handoff-idle-mark::before,.client-handoff-idle-mark::after{content:"";position:absolute;border:1px solid rgba(45,161,218,.22);border-radius:50%;inset:-8px}.client-handoff-idle-mark::after{inset:7px}
.client-handoff-idle-mark i{position:absolute;width:9px;height:9px;top:6px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 12px #1ce1cf}
.client-handoff-idle-mark span{font-size:32px;color:#69d7ff}
.client-handoff-idle .cs-empty-title{font-size:24px!important;letter-spacing:-.03em}.client-handoff-idle .cs-empty-sub{max-width:530px;margin-top:6px!important;color:#82a1b7!important}
.client-handoff-path{display:grid;grid-template-columns:1fr 32px 1fr 32px 1fr;align-items:center;gap:7px;width:min(760px,100%);margin-top:30px}
.client-handoff-path>div{display:flex;align-items:center;gap:10px;min-height:72px;padding:12px;border:1px solid #24516f;border-radius:12px;text-align:left;background:linear-gradient(145deg,#102e49,#071827)}
.client-handoff-path>div>b{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid #2483b8;border-radius:50%;color:#47d4ff;background:#09253c}
.client-handoff-path>div span{display:flex;flex-direction:column}.client-handoff-path>div strong{font-size:12px;color:#e9f6ff}.client-handoff-path>div small{margin-top:3px;font-size:10px;color:#7193ab}.client-handoff-path>i{height:1px;background:linear-gradient(90deg,#2477a7,#1ce1cf);box-shadow:0 0 8px rgba(28,225,207,.4)}
@media(max-width:700px){.client-handoff-idle{min-height:0!important;padding:34px 16px!important}.client-handoff-path{grid-template-columns:1fr;max-width:390px}.client-handoff-path>i{width:1px;height:16px;margin:auto;background:linear-gradient(#2477a7,#1ce1cf)}}

.fulfillment-idle-bay{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:16px;padding:38px 26px;border:1px solid #285a79;border-radius:18px;text-align:center;background:radial-gradient(circle at 50% 36%,rgba(0,153,255,.12),transparent 27%),linear-gradient(145deg,#0b263f,#051625);box-shadow:inset 0 1px rgba(255,255,255,.05),0 18px 36px rgba(0,0,0,.2)}
.fulfillment-idle-beacon{position:relative;display:grid;place-items:center;width:82px;height:82px;margin-bottom:14px;border:1px solid #2a6389;border-radius:50%;color:#65d9ff;background:radial-gradient(circle,#123c5d,#061827 68%);box-shadow:inset 0 0 22px rgba(0,154,255,.12),0 0 28px rgba(0,154,255,.09)}
.fulfillment-idle-beacon::before,.fulfillment-idle-beacon::after{content:"";position:absolute;inset:-8px;border:1px solid rgba(45,161,218,.22);border-radius:50%}.fulfillment-idle-beacon::after{inset:7px}.fulfillment-idle-beacon span{font-size:28px}.fulfillment-idle-beacon i{position:absolute;top:6px;width:9px;height:9px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 12px #1ce1cf}
.fulfillment-idle-bay h2{margin:8px 0 7px;font-size:24px;letter-spacing:-.03em}.fulfillment-idle-bay>p{max-width:650px;margin:0;color:#82a1b7;line-height:1.55}
.fulfillment-idle-track{display:grid;grid-template-columns:1fr 22px 1fr 22px 1fr 22px 1fr;align-items:center;gap:6px;width:min(900px,100%);margin-top:28px}
.fulfillment-idle-track>div{display:flex;flex-direction:column;min-height:67px;justify-content:center;padding:11px;border:1px solid #24516f;border-radius:11px;background:linear-gradient(145deg,#102e49,#071827)}.fulfillment-idle-track b{font-size:11px;letter-spacing:.12em;color:#4ed8ff}.fulfillment-idle-track small{margin-top:5px;color:#7193ab}.fulfillment-idle-track>i{height:1px;background:linear-gradient(90deg,#2477a7,#1ce1cf);box-shadow:0 0 8px rgba(28,225,207,.4)}
@media(max-width:700px){.fulfillment-idle-bay{min-height:0;padding:34px 16px}.fulfillment-idle-track{grid-template-columns:1fr;max-width:390px}.fulfillment-idle-track>i{width:1px;height:14px;margin:auto;background:linear-gradient(#2477a7,#1ce1cf)}}

@media(min-width:1200px){.mockup-cockpit .pipeline-wrap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible}.mockup-cockpit .pipeline-col{width:auto;min-width:0}.mockup-cockpit .lead-card{min-width:0}.mockup-cockpit .card-name{font-size:12px}.mockup-cockpit .btn{max-width:100%;white-space:normal}}

.active-client-idle{min-height:440px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;padding:42px 28px!important;border-style:solid!important;background:radial-gradient(circle at 50% 38%,rgba(28,225,207,.1),transparent 27%),linear-gradient(145deg,#0b263f,#051625)!important;box-shadow:inset 0 1px rgba(255,255,255,.05),0 18px 36px rgba(0,0,0,.2)}
.active-client-orbit{position:relative;display:grid;place-items:center;width:84px;height:84px;margin-bottom:14px;border:1px solid #2a6389;border-radius:50%;background:radial-gradient(circle,#123c5d,#061827 68%);box-shadow:inset 0 0 22px rgba(0,154,255,.12),0 0 28px rgba(0,154,255,.09)}.active-client-orbit::before,.active-client-orbit::after{content:"";position:absolute;inset:-8px;border:1px solid rgba(45,161,218,.22);border-radius:50%}.active-client-orbit::after{inset:8px}.active-client-orbit span{font-size:27px;color:#1ce1cf;text-shadow:0 0 14px rgba(28,225,207,.8)}.active-client-orbit i,.active-client-orbit b{position:absolute;width:9px;height:9px;border-radius:50%;background:#29cfff;box-shadow:0 0 10px #29cfff}.active-client-orbit i{top:5px}.active-client-orbit b{right:7px;bottom:14px;background:#1ce1cf;box-shadow:0 0 10px #1ce1cf}
.active-client-idle .cs-empty-title{font-size:24px!important;letter-spacing:-.03em}.active-client-idle .cs-empty-sub{max-width:620px;margin-top:6px!important;color:#82a1b7!important}
.active-client-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:min(790px,100%);margin-top:29px}.active-client-pillars>div{display:flex;flex-direction:column;min-height:86px;padding:14px;border:1px solid #24516f;border-radius:12px;text-align:left;background:linear-gradient(145deg,#102e49,#071827)}.active-client-pillars span{font-size:9px;font-weight:800;letter-spacing:.16em;color:#1ce1cf}.active-client-pillars strong{margin-top:5px;font-size:13px;color:#edf8ff}.active-client-pillars small{margin-top:4px;color:#7193ab;line-height:1.35}
@media(max-width:700px){.active-client-idle{min-height:0!important;padding:34px 16px!important}.active-client-pillars{grid-template-columns:1fr;max-width:390px}}
@media(max-width:700px){.settings-cockpit .um-section,.settings-cockpit>div>div[style*="background:var(--bg2"]{padding:13px!important}.operator-room-cockpit .or-body{grid-template-columns:1fr}.operator-room-cockpit .or-list{max-height:260px}.operator-room-cockpit .or-thread{min-height:360px}}

/* v6-223 standalone engine workspaces */
.module-command-header{z-index:6;overflow:visible}.module-command-header::before{pointer-events:none}.engine-work-bay{position:relative;z-index:1}
.tool-deck{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(420px,1.7fr) minmax(230px,.82fr);gap:14px;align-items:start}.tool-panel{border:1px solid #24516f;border-radius:16px;background:linear-gradient(150deg,rgba(14,43,67,.97),rgba(4,19,32,.98));box-shadow:inset 0 1px rgba(255,255,255,.055),0 16px 32px rgba(0,0,0,.2);overflow:hidden}.tool-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 15px;border-bottom:1px solid #1c4663;background:rgba(10,35,56,.7)}.tool-panel-head b{font-size:12px}.tool-panel-head span{color:#7699b1;font-size:9px;text-transform:uppercase;letter-spacing:.11em}.tool-panel-body{padding:14px}.tool-rail{display:grid;gap:8px}.tool-rail-card{display:grid;gap:4px;width:100%;padding:12px;border:1px solid #214d6b;border-radius:11px;color:#dff4ff;text-align:left;background:#081e32;transition:.18s ease}.tool-rail-card:hover{transform:translateX(3px);border-color:#20bce9;background:#0d2a44}.tool-rail-card strong{font-size:11px}.tool-rail-card small{color:#7899b1;font-size:9px;line-height:1.35}.tool-rail-card.active{border-color:#1ce1cf;box-shadow:inset 3px 0 #1ce1cf,0 0 18px rgba(28,225,207,.08)}.tool-stage{min-height:420px}.tool-stage-hero{position:relative;min-height:166px;padding:22px;border:1px solid #276080;border-radius:14px;background:radial-gradient(circle at 85% 18%,rgba(29,205,255,.15),transparent 31%),linear-gradient(145deg,#123b5c,#071a2c);overflow:hidden}.tool-stage-hero::after{content:"";position:absolute;right:-30px;bottom:-55px;width:210px;height:210px;border:1px solid rgba(36,189,238,.15);border-radius:50%;box-shadow:0 0 0 22px rgba(36,189,238,.03),0 0 0 46px rgba(36,189,238,.025)}.tool-stage-hero h2{max-width:620px;margin:6px 0 7px;font-size:25px;line-height:1.05}.tool-stage-hero p{max-width:620px;color:#84a5bb;font-size:11px;line-height:1.5}.tool-kicker{color:#28d8ff;font-size:8px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.tool-quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.tool-quick{min-height:80px;padding:12px;border:1px solid #214f6e;border-radius:11px;background:#081f34}.tool-quick b{display:block;font-size:22px}.tool-quick span{color:#7697ae;font-size:9px}.tool-feed{display:grid;gap:8px}.tool-feed-item{padding:11px;border:1px solid #204a67;border-radius:10px;background:#071c2f}.tool-feed-item b{display:block;font-size:10px}.tool-feed-item small{display:block;margin-top:3px;color:#7595ac;font-size:8px;line-height:1.4}.tool-signal{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#1ce1cf;box-shadow:0 0 10px #1ce1cf}.tool-signal.warn{background:#ffbd34;box-shadow:0 0 10px #ffbd34}.tool-signal.bad{background:#ff4d62;box-shadow:0 0 10px #ff4d62}
.visibility-cockpit .tool-stage-hero{background:radial-gradient(circle at 84% 16%,rgba(28,225,207,.15),transparent 30%),linear-gradient(145deg,#0c4253,#061b2a)}.social-cockpit .tool-panel{border-color:#385d85}.social-cockpit .tool-stage-hero{background:radial-gradient(circle at 82% 10%,rgba(139,103,255,.2),transparent 34%),linear-gradient(145deg,#1a3559,#0a1830)}.production-cockpit .tool-stage-hero{background:radial-gradient(circle at 82% 10%,rgba(255,181,62,.1),transparent 34%),linear-gradient(145deg,#18364f,#081a2a)}
.social-studio-workbench{display:grid;grid-template-columns:minmax(360px,1.15fr) minmax(280px,.85fr);gap:14px}.social-preview-stage{position:sticky;top:16px;min-height:430px;padding:17px;border:1px solid #3a5e89;border-radius:15px;background:radial-gradient(circle at 60% 0,rgba(113,79,255,.16),transparent 34%),#07192d}.social-phone-preview{width:min(280px,90%);min-height:350px;margin:18px auto 0;padding:12px;border:5px solid #1b354f;border-radius:26px;background:#f8fbff;color:#172538;box-shadow:0 20px 40px rgba(0,0,0,.36),0 0 25px rgba(56,156,255,.12)}.social-phone-preview .screen{height:165px;border-radius:14px;background:linear-gradient(135deg,#0d85e8,#17c9d3);box-shadow:inset 0 0 35px rgba(255,255,255,.18)}.social-phone-preview h4{margin:13px 4px 5px}.social-phone-preview p{margin:0 4px;color:#617084;font-size:10px;line-height:1.45}
.production-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.production-project-grid .mission-card{min-height:150px}.production-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:14px}.production-flow span{position:relative;padding:9px 5px;border:1px solid #244e6b;border-radius:8px;color:#7899b1;text-align:center;font-size:8px;background:#071d30}.production-flow span:not(:last-child)::after{content:"›";position:absolute;right:-6px;color:#36ccff;z-index:2}
@media(max-width:1150px){.tool-deck{grid-template-columns:220px 1fr}.tool-deck>.tool-panel:last-child{grid-column:1/-1}.social-studio-workbench{grid-template-columns:1fr}.social-preview-stage{position:static}}
@media(max-width:760px){.tool-deck{grid-template-columns:1fr}.tool-deck>.tool-panel:last-child{grid-column:auto}.tool-quick-grid,.production-project-grid{grid-template-columns:1fr}.production-flow{grid-template-columns:1fr}.production-flow span::after{display:none}.social-studio-workbench{grid-template-columns:1fr}}

/* v6-224 lightweight revenue workspace */
.pipeline-stage-nav{display:flex;gap:7px;margin:0 0 11px;padding:5px;overflow-x:auto;border:1px solid #224d6b;border-radius:13px;background:#061827;scrollbar-width:thin}.pipeline-stage-nav button{display:flex;align-items:center;gap:8px;min-width:max-content;padding:8px 11px;border:1px solid transparent;border-radius:9px;color:#86a4b9;background:transparent;font-size:9px;font-weight:700}.pipeline-stage-nav button:hover,.pipeline-stage-nav button.active{color:#edfbff;border-color:#286184;background:#0f304c;box-shadow:inset 0 -2px #22c8f4}.pipeline-stage-nav b{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:10px;color:#b9eaff;background:#133b59;font-size:8px}.cockpit-board{scroll-snap-type:x proximity;scrollbar-color:#2b739d #071a2b;scrollbar-width:thin}.cockpit-board .pipeline-col{scroll-snap-align:start}.lead-card{position:relative!important;min-height:0!important;padding:11px!important;border-radius:13px!important}.lead-card-actions{display:flex;gap:5px;margin:-3px 0 10px}.lead-card-actions button,.lead-soft-btn{min-height:27px;padding:5px 9px;border:1px solid #285777;border-radius:8px;color:#9dc4dc;background:linear-gradient(180deg,#12344f,#09233a);font-size:8px;font-weight:800;letter-spacing:.04em;transition:.16s ease}.lead-card-actions button:hover,.lead-soft-btn:hover{color:white;border-color:#36cfff;transform:translateY(-1px);box-shadow:0 5px 14px rgba(0,139,255,.13)}.lead-card-actions button:first-child,.lead-soft-btn.primary{color:#eaffff;border-color:#218ab4;background:linear-gradient(180deg,#12649a,#0b3f68)}.lead-card-flags{position:absolute;right:9px;top:11px;display:flex;gap:4px;align-items:center}.lead-card-flags span{position:static!important;margin:0!important;padding:3px 5px!important;border-radius:5px!important;font-size:6px!important;line-height:1!important;letter-spacing:.08em}.mini-exception{color:#ffadba;border:1px solid #a62f42;background:#3b1320}.mini-task{color:#92cce8;border:1px solid #255b79;background:#0c2940}.lead-card .card-name{padding-right:10px;font-size:12px!important}.lead-card .card-meta{margin-top:2px!important;color:#7495ab!important;font-size:8px!important}.lead-card .card-next-action{display:grid!important;gap:2px;margin-top:10px!important;padding:8px 9px!important;border:1px solid #214f6c!important;border-radius:9px!important;background:#071c2f!important}.lead-card .card-next-action span{color:#35d6ff;font-size:6px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.lead-card .card-next-action b{color:#e3f6ff;font-size:9px;font-weight:700;line-height:1.25}.lead-card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:7px;color:#7698ae;font-size:8px}.lead-card-bottom .score-badge{min-width:24px;padding:3px 5px;font-size:8px}.lead-action-dock{position:sticky;top:70px;z-index:5;display:grid;grid-template-columns:minmax(230px,1fr) auto;align-items:center;gap:15px;margin:0 0 14px;padding:14px 16px;border:1px solid #297398;border-radius:14px;background:linear-gradient(110deg,rgba(14,55,83,.97),rgba(5,23,39,.97));box-shadow:0 15px 30px rgba(0,0,0,.28),0 0 24px rgba(0,137,255,.07);backdrop-filter:blur(15px)}.lead-action-copy{display:grid;gap:2px}.lead-action-copy span{color:#38d5ff;font-size:7px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.lead-action-copy strong{font-size:15px}.lead-action-copy small{color:#7596ad;font-size:8px}.lead-action-buttons{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.lead-record-drawer{margin:14px 0;border:1px solid #244e6b;border-radius:13px;background:#071b2d;overflow:hidden}.lead-record-drawer>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;cursor:pointer;list-style:none;background:linear-gradient(90deg,#0f304b,#081e32)}.lead-record-drawer>summary::-webkit-details-marker{display:none}.lead-record-drawer>summary span{font-size:11px;font-weight:700;color:#dff4ff}.lead-record-drawer>summary small{color:#7697ae;font-size:8px}.lead-record-drawer[open]>summary{border-bottom:1px solid #244e6b;box-shadow:inset 3px 0 #1ce1cf}.lead-record-drawer[open]>:not(summary){margin-left:14px;margin-right:14px}.modal .lead-record-drawer .modal-phase:first-of-type{margin-top:16px!important}
@media(max-width:760px){.lead-action-dock{position:static;grid-template-columns:1fr}.lead-action-buttons{justify-content:flex-start}.lead-record-drawer>summary{align-items:flex-start;flex-direction:column}.pipeline-stage-nav{position:sticky;top:0;z-index:4}.lead-card-actions{padding-right:85px}}

/* DailyFlo numbered workflow-card contract.
   Structural panels stay in the blue machine palette. Only the numbered accent
   follows System Colors, so customization cannot rewrite layout or semantics. */
.df-step-card{--df-step-accent:var(--theme-accent-1,#22b8f0);--df-step-wash:var(--theme-accent-wash-1,rgba(34,184,240,.12));--df-step-border:var(--theme-accent-border-1,rgba(34,184,240,.55));--df-step-glow:var(--theme-accent-glow-1,rgba(34,184,240,.16))}
.df-step-card[data-step="2"]{--df-step-accent:var(--theme-accent-2,#4caf7d);--df-step-wash:var(--theme-accent-wash-2,rgba(76,175,125,.12));--df-step-border:var(--theme-accent-border-2,rgba(76,175,125,.55));--df-step-glow:var(--theme-accent-glow-2,rgba(76,175,125,.16))}
.df-step-card[data-step="3"]{--df-step-accent:var(--theme-accent-3,#e8a030);--df-step-wash:var(--theme-accent-wash-3,rgba(232,160,48,.12));--df-step-border:var(--theme-accent-border-3,rgba(232,160,48,.55));--df-step-glow:var(--theme-accent-glow-3,rgba(232,160,48,.16))}
.df-step-card[data-step="4"]{--df-step-accent:var(--theme-accent-4,#e05555);--df-step-wash:var(--theme-accent-wash-4,rgba(224,85,85,.12));--df-step-border:var(--theme-accent-border-4,rgba(224,85,85,.55));--df-step-glow:var(--theme-accent-glow-4,rgba(224,85,85,.16))}
.df-step-card>.df-step-number{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--df-step-accent);border-radius:9px;color:var(--df-step-accent);font-weight:800;box-shadow:0 0 15px var(--df-step-glow)}

/* v6-225 universal business search */
.gsearch-row-top{gap:7px}.gsearch-location{margin-left:auto;padding:3px 6px;border:1px solid #285a78;border-radius:7px;color:#6fdcf5;background:#09263d;font-size:7px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.gsearch-stage{margin-left:0!important}.gsearch-empty-hint{max-width:410px;line-height:1.4}

/* ── BB-DF-EMPLOYEE-TIME-CLOCK-BASE-001 — employee panel + admin ──────────
   Compact by design. This is not an HR dashboard: it sits inside the existing
   DailyFlo layout and never competes with the employee's work areas. */
.employee-clock{display:grid;gap:10px}
.employee-clock-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.employee-clock-now{font-variant-numeric:tabular-nums;font-size:15px;font-weight:700;color:#cfe6f4}
.employee-clock-state strong{font-size:16px}
.employee-clock-state strong.is-in{color:#4ade80}
.employee-clock-state strong.is-out{color:#9bb6c8}
.employee-clock-state small{display:block;margin-top:2px;font-size:12px;color:#9bb6c8}
.employee-clock-totals{display:flex;gap:18px}
.employee-clock-totals span{display:grid}
.employee-clock-totals small{font-size:11px;color:#9bb6c8}
.employee-clock-totals b{font-size:15px;font-variant-numeric:tabular-nums}
.employee-clock-inactive{margin:0;font-size:12px;line-height:1.45;color:#e8c9a8}
.employee-clock-actions{display:flex;flex-wrap:wrap;gap:8px}
.employee-clock-in{background:#166534;border-color:#22c55e;color:#eaffef}
.employee-clock-in:disabled{opacity:.5}
.employee-clock-out{background:#7f1d1d;border-color:#ef4444;color:#ffecec}
.employee-clock-out:disabled{opacity:.5}
.employee-clock-modules>small{display:block;margin-bottom:5px;font-size:11px;color:#9bb6c8}
.employee-clock-modules>div{display:flex;flex-wrap:wrap;gap:6px}
.employee-module-chip{padding:5px 10px;border:1px solid rgba(88,217,255,.4);border-radius:999px;background:rgba(8,26,42,.7);color:#cfe6f4;font-size:12px;cursor:pointer}
.employee-module-chip:hover{border-color:#58d9ff}
.employee-week-state{font-size:12px;color:#9bb6c8}
.employee-week-state strong{color:#eaf7ff}
.employee-home{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:34px 0 64px;display:grid;gap:18px}
.employee-home-head,.employee-home-work{border:1px solid rgba(66,171,224,.34);border-radius:18px;background:linear-gradient(145deg,rgba(16,48,75,.96),rgba(5,25,40,.97));padding:24px}
.employee-home-head span{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#58d9ff;font-weight:800}
.employee-home-head h1{margin:6px 0 5px;font-size:32px;color:#f5fbff}
.employee-home-head p,.employee-home-work p{margin:0;color:#a9c3d4;line-height:1.55}
.employee-home>.employee-clock{border:1px solid rgba(66,171,224,.34);border-radius:18px;background:#071d2d;padding:22px}
.employee-home-work h2{margin:0 0 14px;color:#f5fbff}
.employee-home-modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.employee-home-module{display:grid;gap:4px;text-align:left;padding:16px;border:1px solid rgba(88,217,255,.35);border-radius:12px;background:rgba(6,28,45,.78);color:#eaf7ff;cursor:pointer}
.employee-home-module:hover{border-color:#58d9ff;transform:translateY(-1px)}
.employee-home-module span{font-size:12px;color:#9bb6c8}
.employee-home-module:disabled{opacity:1;cursor:default;transform:none}
.employee-preview-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border:1px solid rgba(88,217,255,.58);border-radius:14px;background:linear-gradient(90deg,rgba(7,61,84,.95),rgba(5,30,48,.95));box-shadow:0 8px 22px rgba(0,0,0,.22)}
.employee-preview-banner>div{display:grid;gap:3px}
.employee-preview-banner b{color:#60e6ff;font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.employee-preview-banner span{color:#b8cfdd;font-size:12px;line-height:1.45}
@media(max-width:700px){.employee-preview-banner{align-items:stretch;flex-direction:column}.employee-preview-banner .btn{width:100%}}
.emp-admin{display:grid;grid-auto-rows:max-content;align-content:start;gap:16px;padding:18px}
.bird-dogs-card{border:1px solid rgba(245,158,11,.5);border-radius:16px;background:linear-gradient(135deg,rgba(32,24,8,.95),rgba(8,26,42,.92));overflow:hidden}
.bird-dogs-card__head{width:100%;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.bird-dogs-card__head span,.bird-dogs-card__head b{display:grid;gap:4px}.bird-dogs-card__head small{font:600 11px/1.2 var(--mono,monospace);letter-spacing:.12em;color:#fbbf24}.bird-dogs-card__head strong{font-size:24px}.bird-dogs-card__head em{font-style:normal;color:var(--muted,#9fb2c2)}.bird-dogs-card__head>b{font-size:28px;text-align:right;color:#fbbf24}.bird-dogs-card__head>b small{color:var(--muted,#9fb2c2)}
.bird-dogs-body{display:grid;gap:18px;padding:0 20px 20px}.bird-dogs-list{display:grid;gap:10px}.bird-dogs-list article{display:grid;grid-template-columns:minmax(170px,1.4fr) repeat(4,minmax(100px,1fr));gap:12px;align-items:center;padding:13px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(2,12,22,.6)}.bird-dogs-list article>div{display:grid;gap:5px}.bird-dogs-list code{color:#fbbf24;font-size:16px}.bird-dogs-list span{display:grid;gap:3px;color:var(--muted,#9fb2c2)}.bird-dogs-list span b{color:var(--text,#eef6ff)}.bird-dogs-list article>small{grid-column:1/-1;color:var(--muted,#9fb2c2)}
.bird-dog-claims{display:grid;gap:8px}.bird-dog-claims h3{margin:0;color:#fbbf24}.bird-dog-claims article{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:12px;border-radius:10px;background:rgba(245,158,11,.08)}.bird-dog-claims p{margin:4px 0 0;color:var(--muted,#9fb2c2)}
@media(max-width:900px){.bird-dogs-list article{grid-template-columns:1fr 1fr}.bird-dogs-list article>div,.bird-dogs-list article>small{grid-column:1/-1}.bird-dog-claims article{grid-template-columns:1fr 1fr}.bird-dog-claims article>div{grid-column:1/-1}}
.emp-head h2{margin:0 0 4px}
.emp-head p{margin:0;font-size:13px;color:#9bb6c8;line-height:1.5}
.emp-invite{position:relative;overflow:hidden;min-height:max-content;padding:18px 20px;border:1px solid rgba(88,217,255,.7);border-radius:16px;background:linear-gradient(135deg,rgba(11,49,74,.96),rgba(5,25,40,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 0 0 1px rgba(17,121,173,.18),0 12px 30px rgba(0,0,0,.24);display:grid;gap:10px}
.emp-invite::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,#00d9ff,#1687ff 55%,transparent);box-shadow:0 0 18px rgba(0,217,255,.65)}
.emp-invite h3{margin:0;font-size:18px;color:#f5fbff}
.emp-invite p,.emp-invite small{margin:0;font-size:12px;color:#9bb6c8;line-height:1.5}
.emp-invite-grid{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.emp-invite-grid label{display:grid;gap:4px;font-size:12px;color:#9bb6c8;min-width:220px;flex:1}
.emp-add-control{display:grid;gap:4px;min-width:220px;flex:0 0 220px}
.emp-add-control>span{font-size:12px;color:#9bb6c8}
.emp-add-button{min-width:220px;min-height:44px;justify-content:center;font-weight:800;letter-spacing:.06em}
.emp-add-button[aria-busy="true"]{cursor:wait;opacity:.78}
.emp-add-status{min-height:20px;margin:0!important;padding:8px 10px;border-radius:8px;font-size:12px!important;font-weight:700}
.emp-add-status:empty{display:none}
.emp-add-status.is-loading{display:block;color:#bfeeff;background:rgba(20,139,202,.12);border:1px solid rgba(88,217,255,.28)}
.emp-add-status.is-success{display:block;color:#bfffd1;background:rgba(28,151,67,.14);border:1px solid rgba(91,245,130,.35)}
.emp-add-status.is-error{display:block;color:#ffc5c5;background:rgba(177,43,43,.14);border:1px solid rgba(255,106,106,.34)}
.emp-list{display:grid;gap:10px}
.emp-row{display:grid;gap:10px;padding:14px 16px;border:1px solid rgba(86,152,190,.34);border-radius:12px;background:rgba(8,26,42,.55)}
.emp-identity b{display:block;font-size:15px}
.emp-identity small{color:#9bb6c8;font-size:12px}
.emp-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.emp-status small{font-size:12px;color:#9bb6c8}
.emp-hours{display:flex;flex-wrap:wrap;gap:18px}
.emp-hours span{display:grid}
.emp-hours small{font-size:11px;color:#9bb6c8}
.emp-hours b{font-size:14px;font-variant-numeric:tabular-nums}
.emp-modules>small{display:block;margin-bottom:5px;font-size:11px;color:#9bb6c8}
.emp-modules>div{display:flex;flex-wrap:wrap;gap:6px}
.emp-empty,.emp-error{font-size:13px;color:#9bb6c8}
@media(max-width:760px){
  .employee-clock-totals,.emp-hours{gap:12px}
  .emp-invite-grid label,.emp-add-control{min-width:100%;width:100%;flex-basis:100%}
  .emp-admin{padding:14px}
}

/* Employees workspace — administrative screen. Scrolls on its own, and does
   not inherit the operating-surface clutter (global search, follow-up alert). */
.cockpit-workspace{min-height:0}
.emp-admin{overflow-y:auto;max-height:calc(100vh - 120px);padding-bottom:48px}
.emp-empty-state{display:grid;gap:10px;justify-items:start;padding:28px;border:1px dashed rgba(86,152,190,.4);border-radius:14px;background:rgba(8,26,42,.4)}
.emp-empty-state h3{margin:0;font-size:17px}
.emp-empty-state p{margin:0;max-width:60ch;font-size:13px;line-height:1.55;color:#9bb6c8}
@media(max-width:760px){.emp-admin{max-height:none;overflow-y:visible}}
.emp-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:12px;border-top:1px solid rgba(86,152,190,.22)}
.emp-action{min-width:170px;justify-content:center}
.emp-open-modules>small,.emp-new-modules>small{display:block;margin-bottom:5px;font-size:11px;color:#9bb6c8}
.emp-open-modules>div,.emp-new-modules>div{display:flex;flex-wrap:wrap;gap:6px}
.emp-module-open{padding:5px 10px;border:1px solid rgba(88,217,255,.45);border-radius:999px;background:rgba(8,26,42,.7);color:#cfe6f4;font-size:12px;cursor:pointer}
.emp-new-module{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid rgba(86,152,190,.4);border-radius:999px;font-size:12px;color:#9bb6c8}
.emp-module:disabled{opacity:.65;cursor:default}

/* Employee module controls — red light / green light. Real buttons, so keyboard
   and screen readers work; no browser checkbox chrome anywhere. */
.emp-module-grid,.emp-module-console{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:8px!important;margin-top:8px;padding:12px;border:1px solid rgba(142,130,91,.6);border-radius:12px;background:linear-gradient(180deg,rgba(23,26,29,.96),rgba(10,13,17,.98));box-shadow:inset 0 1px 0 rgba(255,255,255,.06),inset 0 -16px 30px rgba(0,0,0,.32),0 8px 22px rgba(0,0,0,.24)}
.emp-mod,.emp-module-switch{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;min-width:0;min-height:67px;padding:7px 8px 9px;border:0;background:transparent;color:#e7edf1;font:inherit;text-align:center;cursor:pointer;isolation:isolate}
.emp-mod::before,.emp-module-switch::before{content:"";position:absolute;left:-4px;right:-4px;bottom:0;height:42px;border:1px solid rgba(121,112,86,.52);border-radius:7px;background:linear-gradient(180deg,rgba(38,39,39,.84),rgba(10,11,12,.96));box-shadow:inset 0 1px 1px rgba(255,255,255,.08),inset 0 -7px 12px rgba(0,0,0,.55),0 3px 5px rgba(0,0,0,.5);z-index:-1}
.emp-mod:hover::before,.emp-module-switch:hover::before{border-color:rgba(180,163,110,.72)}
.emp-mod:focus-visible,.emp-module-switch:focus-visible{outline:3px solid #58d9ff;outline-offset:3px;border-radius:8px}
.emp-mod-name,.emp-module-switch__name{display:block;width:100%;min-height:18px;font-size:11px;font-weight:700;line-height:1.15;white-space:normal;overflow-wrap:normal;hyphens:none;text-shadow:0 1px 2px #000}
.emp-mod-state,.emp-module-switch__track{position:relative;display:flex;align-items:center;justify-content:center;width:72px;height:28px;margin-top:2px;border:1px solid rgba(82,35,35,.85);border-radius:999px;background:linear-gradient(180deg,#35191a,#170d0e 54%,#090707);box-shadow:inset 0 4px 8px rgba(0,0,0,.88),inset 0 -1px 1px rgba(255,255,255,.08),0 2px 3px rgba(0,0,0,.5);color:#bd6565;font-size:10px;font-weight:800;letter-spacing:.08em;text-indent:20px}
.emp-mod-state::before,.emp-module-switch__lamp{content:"";position:absolute;left:6px;width:18px;height:18px;border:1px solid #5f2225;border-radius:50%;background:radial-gradient(circle at 38% 32%,#884248,#3a1518 50%,#140809 72%);box-shadow:inset 0 2px 4px rgba(255,255,255,.12),inset 0 -4px 5px rgba(0,0,0,.65),0 1px 3px rgba(0,0,0,.7)}
.emp-mod.is-on .emp-mod-state,.emp-module-switch.is-on .emp-module-switch__track{border-color:rgba(102,241,119,.9);background:linear-gradient(180deg,#249b49,#12692d 55%,#0b3e1d);color:#f2fff5;box-shadow:inset 0 3px 7px rgba(0,0,0,.55),inset 0 -1px 2px rgba(255,255,255,.25),0 0 10px rgba(70,255,107,.48),0 0 22px rgba(70,255,107,.25)}
.emp-mod.is-on .emp-mod-state::before,.emp-module-switch.is-on .emp-module-switch__lamp{border-color:#a5ffb1;background:radial-gradient(circle at 38% 32%,#f1fff2,#87ff9b 36%,#22cf4d 66%,#0b6b29 82%);box-shadow:inset 0 2px 4px #fff,0 0 7px #8aff9e,0 0 16px rgba(64,255,99,.9)}
.emp-module-switch__state{position:relative;z-index:1;font-size:10px;font-weight:800;letter-spacing:.08em;margin-left:18px}
.emp-mod.is-locked,.emp-module-switch.is-locked{cursor:default;opacity:1}
.emp-mod.is-locked .emp-mod-state,.emp-module-switch.is-locked .emp-module-switch__track{width:96px;text-indent:18px}
.emp-mod:disabled,.emp-module-switch:disabled{opacity:1}
.emp-work-status{width:132px;min-height:44px;padding-top:0;justify-content:flex-end;cursor:default}
.emp-work-status .emp-module-switch__track{width:96px}
.emp-work-status:not(.is-on) .emp-module-switch__track{border-color:rgba(54,102,70,.85);background:linear-gradient(180deg,#152a1d,#0c1810 56%,#070d09);color:#72917a;box-shadow:inset 0 4px 8px rgba(0,0,0,.85),inset 0 -1px 1px rgba(255,255,255,.05),0 2px 3px rgba(0,0,0,.5)}
.emp-work-status:not(.is-on) .emp-module-switch__lamp{border-color:#315c3c;background:radial-gradient(circle at 38% 32%,#5b7962,#26462f 50%,#112317 72%);box-shadow:inset 0 2px 4px rgba(255,255,255,.08),inset 0 -4px 5px rgba(0,0,0,.65),0 1px 3px rgba(0,0,0,.7)}
@media(max-width:620px){.emp-module-grid,.emp-module-console{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ── BB-DF-KAT-FOUNDER-CLOSE-001 — Founder panel on the canonical lead ──
   Reuses the existing lead-modal tokens so it reads as part of the record it
   belongs to rather than as a bolted-on module. */
.founder-panel { border: 1px solid rgba(60,121,169,.34); border-radius: 8px; padding: 12px 14px; margin-bottom: 16px; background: rgba(60,121,169,.06); }
.founder-panel--review { border-color: rgba(214,158,46,.55); background: rgba(214,158,46,.08); }
.founder-review { font-size: 12px; font-weight: 600; color: var(--text1); margin-bottom: 10px; }
.founder-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 8px 18px; }
.founder-fact { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.founder-fact span { font-size: 10px; text-transform: uppercase; letter-spacing: .07em; color: var(--text3); }
.founder-fact strong { font-size: 13px; font-weight: 600; color: var(--text1); word-break: break-word; }
.founder-sub { margin-top: 12px; padding-top: 10px; border-top: 1px solid rgba(60,121,169,.22); }
.founder-sub > span { font-size: 10px; text-transform: uppercase; letter-spacing: .07em; color: var(--text3); display: block; margin-bottom: 5px; }
.founder-line { font-size: 12px; color: var(--text2); line-height: 1.55; word-break: break-word; }


/* ── Kat Campaign cockpit (BB-AIV-001) ─────────────────────────────────────
   The view root is a direct flex child of .cockpit-workspace, which is a
   flex column with overflow:hidden inside a 100vh .cockpit-shell. DailyFlo has
   no generic scroll rule for view roots — .today-wrap and .cs-workspace each
   declare their own. min-height:0 is required because a flex item defaults to
   min-height:auto and will not shrink below its content, so overflow-y never
   engages without it. The root also carries .view-wrap so the app's existing
   scroll-preservation keeps Jim's position when a card expands or collapses.
   Operational data is sized for reading, not for cramming. */
.kdo-wrap { flex: 1; min-height: 0; overflow-y: auto; padding: 22px 26px 72px; font-size: 15px; }
.kdo-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 16px; }
.kdo-headnote { margin: 6px 0 0; max-width: 78ch; color: var(--text-secondary); font-size: 14px; }

.kdo-hold { display: flex; align-items: center; gap: 14px; margin: 0 0 18px; padding: 14px 18px;
  border: 1px solid rgba(255,122,122,.55); border-radius: 12px; background: rgba(255,122,122,.09); }
.kdo-hold i { flex: none; width: 13px; height: 13px; border-radius: 50%; background: #ff7a7a;
  box-shadow: 0 0 12px rgba(255,122,122,.85); animation: kdoPulse 1.9s ease-in-out infinite; }
.kdo-hold b { display: block; color: #ffb3b3; font-size: 1rem; letter-spacing: .09em; }
.kdo-hold span { display: block; margin-top: 3px; color: var(--text-secondary); font-size: .88rem; }
.kdo-hold.is-released { border-color: rgba(94,255,189,.5); background: rgba(94,255,189,.08); }
.kdo-hold.is-released i { background: #5effbd; box-shadow: 0 0 12px rgba(94,255,189,.8); animation: none; }
.kdo-hold.is-released b { color: #5effbd; }
@keyframes kdoPulse { 0%,100% { opacity: 1 } 50% { opacity: .35 } }

.kdo-error { margin: 0 0 16px; padding: 12px 15px; border: 1px solid rgba(255,122,122,.5);
  border-radius: 10px; background: rgba(255,122,122,.08); color: #ffb3b3; font-size: .92rem; }
.kdo-note { margin: 0 0 16px; padding: 12px 15px; border: 1px solid rgba(94,255,189,.45);
  border-radius: 10px; background: rgba(94,255,189,.07); color: #5effbd; font-size: .92rem; }

.kdo-gauge { margin-bottom: 16px; padding: 16px 18px; border: 1px solid var(--border-subtle);
  border-radius: 14px; background: var(--surface-raised); }
.kdo-gaugetop { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 10px; }
.kdo-gaugetop b { font-size: .95rem; }
.kdo-gaugetop span { color: var(--text-secondary); font-size: .88rem; }
.kdo-bar { height: 12px; border-radius: 99px; overflow: hidden; background: rgba(255,255,255,.07); }
.kdo-bar i { display: block; height: 100%; border-radius: 99px; transition: width .45s ease;
  background: linear-gradient(90deg,#0066ff,#00e5ff 55%,#5effbd); box-shadow: 0 0 16px rgba(0,229,255,.4); }
.kdo-lights { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 14px; }
.kdo-light { display: flex; align-items: center; gap: 8px; color: var(--text-secondary); font-size: .82rem;
  text-transform: uppercase; letter-spacing: .07em; }
.kdo-light i { width: 10px; height: 10px; border-radius: 50%; background: #22384a; box-shadow: none; }
.kdo-light.is-on { color: var(--text-primary); }
.kdo-light.is-on.is-ok i { background: #5effbd; box-shadow: 0 0 10px rgba(94,255,189,.8); }
.kdo-light.is-on.is-bad i { background: #ff7a7a; box-shadow: 0 0 10px rgba(255,122,122,.8); }
.kdo-light.is-on.is-warn i { background: #ffcc66; box-shadow: 0 0 10px rgba(255,204,102,.8); }
.kdo-light.is-on.is-idle i { background: #00e5ff; box-shadow: 0 0 10px rgba(0,229,255,.75); }
.kdo-light.is-on.is-run i { background: #00e5ff; box-shadow: 0 0 12px rgba(0,229,255,.9);
  animation: kdoPulse 1s ease-in-out infinite; }

.kdo-stats { display: grid; grid-template-columns: repeat(auto-fit,minmax(148px,1fr)); gap: 10px; margin-bottom: 16px; }
.kdo-stat { padding: 13px 15px; border: 1px solid var(--border-subtle); border-radius: 12px; background: var(--surface-raised); }
.kdo-stat span { display: block; font-size: .7rem; text-transform: uppercase; letter-spacing: .1em; color: var(--text-secondary); }
.kdo-stat strong { display: block; margin: 5px 0 2px; font-size: 32px; line-height: 1.05; color: #00e5ff; }
.kdo-stat small { color: var(--text-secondary); font-size: .75rem; }
.kdo-stat.is-ok strong { color: #5effbd; }
.kdo-stat.is-bad strong { color: #ff7a7a; }
.kdo-stat.is-warn strong { color: #ffcc66; }

.kdo-console { margin-bottom: 20px; padding: 16px 18px; border: 1px solid var(--border-subtle);
  border-radius: 14px; background: var(--surface-raised); }
.kdo-consolerow { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.btn.btn-lg { padding: 13px 24px; font-size: .98rem; font-weight: 800; letter-spacing: .04em; }
.btn.btn-danger { background: linear-gradient(100deg,#ff7a7a,#ff9b6a); color: #2b0606; font-weight: 800; }
.btn.btn-release { background: linear-gradient(100deg,#43eaa2,#22d8ff); color: #052029; font-weight:800; letter-spacing: .05em; }
.btn.btn-release:disabled { opacity: .4; }
.kdo-batch { display: flex; align-items: center; gap: 9px; color: var(--text-secondary); font-size: .85rem; }
.kdo-batch select { padding: 8px 11px; border: 1px solid var(--border-subtle); border-radius: 8px;
  background: var(--surface-sunken,#0a1a28); color: var(--text-primary); font-size: .85rem; }
.kdo-running { display: flex; align-items: center; gap: 9px; color: #00e5ff; font-size: .9rem; }
.kdo-running i { width: 10px; height: 10px; border-radius: 50%; background: #00e5ff;
  box-shadow: 0 0 12px rgba(0,229,255,.9); animation: kdoPulse 1s ease-in-out infinite; }
.kdo-dim { color: var(--text-secondary); font-size: .85rem; }

.kdo-feed { list-style: none; margin: 14px 0 0; padding: 12px 0 0; border-top: 1px solid var(--border-subtle);
  max-height: 260px; overflow-y: auto; }
.kdo-feed li { display: grid; grid-template-columns: 12px 1fr auto; align-items: center; gap: 4px 12px;
  padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,.045); font-size: 14px; }
.kdo-feed li:last-child { border-bottom: 0; }
.kdo-feed i { width: 9px; height: 9px; border-radius: 50%; background: #22384a; }
.kdo-feed li.is-demo_ready i { background: #5effbd; box-shadow: 0 0 8px rgba(94,255,189,.7); }
.kdo-feed li.is-failed i { background: #ff7a7a; box-shadow: 0 0 8px rgba(255,122,122,.7); }
.kdo-feed li.is-needs_review i { background: #ffcc66; box-shadow: 0 0 8px rgba(255,204,102,.7); }
.kdo-feed b { color: var(--text-primary); font-weight:700; }
.kdo-feed span { grid-column: 2; font-size: .78rem; color: var(--text-secondary); }
.kdo-feed em { grid-column: 3; grid-row: 1 / span 2; font-style: normal; font-size: .78rem;
  color: var(--text-secondary); text-align: right; max-width: 40ch; }

.kdo-mailrow { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 12px; }
.kdo-mail { margin-bottom: 22px; padding: 16px 18px; border: 1px solid var(--border-subtle);
  border-radius: 12px; background: var(--surface-raised); }
.kdo-mailfrom { margin-bottom: 11px; padding-bottom: 11px; border-bottom: 1px solid var(--border-subtle);
  color: var(--text-secondary); font-size: .84rem; }
.kdo-mail pre { margin: 0; white-space: pre-wrap; word-break: break-word;
  font-family: ui-monospace,Consolas,monospace; font-size: 14.5px; line-height: 1.6; color: var(--text-primary); }

.kdo-release { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 0 0 24px;
  padding: 16px 18px; border: 1px solid var(--border-subtle); border-radius: 14px; background: var(--surface-raised); }
.kdo-confirm { width: 100%; }
.kdo-confirm > b { display: block; margin-bottom: 12px; font-size: 1.05rem; color: var(--text-primary); }
.kdo-confirm ul { list-style: none; margin: 0 0 12px; padding: 0; max-width: 520px; }
.kdo-confirm li { display: flex; justify-content: space-between; gap: 18px; padding: 8px 0;
  border-bottom: 1px solid var(--border-subtle); font-size: 15px; color: var(--text-secondary); }
.kdo-confirm li span { color: var(--text-primary); font-weight: 700; }
.kdo-confirm li.is-key { border-bottom: 0; margin-top: 4px; padding-top: 12px; border-top: 2px solid rgba(94,255,189,.45); }
.kdo-confirm li.is-key span { color: #5effbd; font-size: 1.25rem; }
.kdo-confirm p { margin: 0 0 14px; max-width: 72ch; color: var(--text-secondary); font-size: .88rem; }
.kdo-confirmrow { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }

.kdo-h { margin: 26px 0 12px; font-size: .78rem; text-transform: uppercase; letter-spacing: .11em; color: var(--text-secondary); }
.kdo-empty { padding: 22px; border: 1px dashed var(--border-subtle); border-radius: 12px;
  color: var(--text-secondary); font-size: 15px; text-align: center; }

.kdo-card { margin-bottom: 12px; padding: 16px 18px; border: 1px solid var(--border-subtle);
  border-radius: 13px; background: var(--surface-raised); }
.kdo-card.is-problem { border-color: rgba(255,122,122,.36); }
.kdo-card header { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; margin-bottom: 12px; }
.kdo-card h4 { margin: 0; font-size: 17px; color: var(--text-primary); }
.kdo-sub { font-size: 13.5px; color: var(--text-secondary); }
.kdo-pills { display: flex; gap: 7px; flex-wrap: wrap; justify-content: flex-end; }
.kdo-pill { padding: 5px 10px; border-radius: 6px; font-size: .64rem; font-weight:800; letter-spacing: .09em; white-space: nowrap; }
.kdo-pill.is-ready { color: #05271b; background: #5effbd; }
.kdo-pill.is-send { color: #04222b; background: #22d8ff; }
.kdo-pill.is-failed { color: #2b0606; background: #ff7a7a; }
.kdo-pill.is-review { color: #2b2103; background: #ffcc66; }
.kdo-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 10px 18px; margin-bottom: 12px; }
.kdo-grid > div { min-width: 0; }
.kdo-grid span { display: block; font-size: .68rem; text-transform: uppercase; letter-spacing: .08em; color: var(--text-secondary); }
.kdo-grid b, .kdo-grid a { font-size: 15px; color: var(--text-primary); word-break: break-word; }
.kdo-say { margin: 0; padding: 11px 14px; border-left: 3px solid #00e5ff; border-radius: 0 8px 8px 0;
  background: rgba(0,229,255,.07); font-size: 16px; }
.kdo-reason { margin: 0; font-size: 15px; color: #ffb3b3; }
.kdo-actions { margin-top: 12px; }

.kdo-detail { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--border-subtle); }
.kdo-facts { list-style: none; margin: 0; padding: 0; }
.kdo-facts li { display: grid; grid-template-columns: 178px 1fr; gap: 5px 18px; padding: 11px 0;
  border-bottom: 1px solid var(--border-subtle); font-size: 15px; line-height: 1.55; }
.kdo-facts li:last-child { border-bottom: 0; }
.kdo-facts b { color: #00e5ff; text-transform: capitalize; font-size: 15px; }
.kdo-facts span { color: var(--text-primary); word-break: break-word; }
.kdo-facts em { grid-column: 2; font-style: normal; font-size: 12.5px; color: var(--text-secondary); }
.kdo-aliases { margin: 14px 0 0; font-size: 14px; color: var(--text-secondary); }
.kdo-aliases span { display: block; margin-bottom: 6px; font-size: .68rem; text-transform: uppercase; letter-spacing: .08em; }
.kdo-aliases code { display: inline-block; margin: 3px 5px 3px 0; padding: 4px 9px; border-radius: 5px;
  background: rgba(0,229,255,.11); color: #00e5ff; font-size: 14px; }
.kdo-meta { margin: 11px 0 0; font-size: .78rem; color: var(--text-secondary); word-break: break-all; }

@media (max-width: 760px) {
  .kdo-facts li { grid-template-columns: 1fr; }
  .kdo-facts em { grid-column: 1; }
  .kdo-feed li { grid-template-columns: 12px 1fr; }
  .kdo-feed em { grid-column: 2; grid-row: auto; text-align: left; max-width: none; }
}

/* Send results — states the actual consequence, in plain numbers. */
.kdo-sent { margin: 0 0 18px; padding: 16px 18px; border: 1px solid rgba(94,255,189,.5);
  border-radius: 14px; background: rgba(94,255,189,.07); }
.kdo-sent > b { display: block; margin-bottom: 10px; color: #5effbd; font-size: 1.05rem; letter-spacing: .08em; }
.kdo-sentcounts { display: flex; flex-wrap: wrap; gap: 10px 22px; }
.kdo-sentcounts span { font-size: 15px; color: var(--text-secondary); }
.kdo-sentcounts span.is-ok { color: #5effbd; font-weight: 700; }
.kdo-sentcounts span.is-bad { color: #ff7a7a; font-weight: 700; }
.kdo-sentfails { list-style: none; margin: 14px 0 0; padding: 12px 0 0; border-top: 1px solid rgba(94,255,189,.25); }
.kdo-sentfails li { display: grid; grid-template-columns: 1fr auto; gap: 3px 16px; padding: 8px 0; font-size: 14px; }
.kdo-sentfails b { color: var(--text-primary); }
.kdo-sentfails span { grid-column: 1; font-size: 13px; color: var(--text-secondary); }
.kdo-sentfails em { grid-column: 2; grid-row: 1 / span 2; font-style: normal; font-size: 13px;
  color: #ffb3b3; text-align: right; max-width: 44ch; }
.kdo-pill.is-sent { color: #05271b; background: #5effbd; }
@media (max-width: 760px) {
  .kdo-sentfails li { grid-template-columns: 1fr; }
  .kdo-sentfails em { grid-column: 1; grid-row: auto; text-align: left; max-width: none; }
}

/* ── Kat Campaigns: registry, creator, rules, phase (BB-AIV-001) ────────── */
.kdo-table { width: 100%; border-collapse: collapse; margin: 6px 0 22px; font-size: 15px; }
.kdo-table thead th { padding: 10px 12px; text-align: left; font-size: .72rem; letter-spacing: .08em;
  text-transform: uppercase; color: var(--text-secondary); border-bottom: 1px solid var(--border-subtle); white-space: nowrap; }
.kdo-table th.is-num, .kdo-table td.is-num { text-align: right; font-variant-numeric: tabular-nums; }
.kdo-table tbody td { padding: 13px 12px; border-bottom: 1px solid var(--border-subtle); color: var(--text-primary); vertical-align: middle; }
.kdo-table tbody tr:hover td { background: rgba(255,255,255,.03); }
.kdo-table td.is-act { text-align: right; white-space: nowrap; }
.kdo-table td.is-act .btn { margin-left: 7px; }
.kdo-linkbtn { padding: 0; border: 0; background: none; cursor: pointer; font: inherit;
  font-weight: 700; color: #00e5ff; text-align: left; }
.kdo-linkbtn:hover { text-decoration: underline; }
.kdo-status { display: inline-block; padding: 3px 9px; border-radius: 999px; font-size: .7rem;
  font-weight: 700; letter-spacing: .06em; border: 1px solid var(--border-subtle); color: var(--text-secondary); }
.kdo-status.is-draft { color: #ffd166; border-color: rgba(255,209,102,.45); }
.kdo-status.is-preparing { color: #00e5ff; border-color: rgba(0,229,255,.45); }
.kdo-status.is-prepared { color: #9db4ff; border-color: rgba(157,180,255,.45); }
.kdo-status.is-sent { color: #5effbd; border-color: rgba(94,255,189,.5); }

.kdo-creator { margin: 0 0 22px; padding: 18px 20px; border: 1px solid rgba(0,229,255,.35);
  border-radius: 12px; background: rgba(0,229,255,.05); }
.kdo-creatorhead { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.kdo-creatorhead b { font-size: 17px; color: var(--text-primary); }
.kdo-creatorrow { display: flex; flex-wrap: wrap; gap: 16px; }
.kdo-creatorrow label { display: flex; flex-direction: column; gap: 6px; flex: 1 1 260px;
  font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; color: var(--text-secondary); }
.kdo-creatorrow select, .kdo-creatorrow input { padding: 10px 12px; border-radius: 8px; font-size: 15px;
  color: var(--text-primary); background: var(--surface-2, rgba(0,0,0,.35)); border: 1px solid var(--border-subtle); }
.kdo-candidates { display: flex; flex-wrap: wrap; gap: 12px; margin: 16px 0 12px; }
.kdo-cand { flex: 1 1 150px; padding: 12px 14px; border-radius: 10px;
  border: 1px solid var(--border-subtle); background: rgba(0,0,0,.25); }
.kdo-cand.is-key { border-color: rgba(94,255,189,.5); }
.kdo-cand strong { display: block; font-size: 28px; line-height: 1.1; color: var(--text-primary); font-variant-numeric: tabular-nums; }
.kdo-cand.is-key strong { color: #5effbd; }
.kdo-cand span { display: block; margin-top: 3px; font-size: 14px; color: var(--text-primary); }
.kdo-cand small { display: block; margin-top: 4px; font-size: 12.5px; color: var(--text-secondary); }
.kdo-creatoract { margin-top: 14px; }

.kdo-rules { margin: 0 0 18px; border: 1px solid var(--border-subtle); border-radius: 10px; overflow: hidden; }
.kdo-ruleshead { display: flex; width: 100%; align-items: center; justify-content: space-between;
  gap: 16px; padding: 13px 16px; border: 0; cursor: pointer; font: inherit; text-align: left;
  background: rgba(255,255,255,.04); color: var(--text-primary); }
.kdo-ruleshead b { font-size: 15px; }
.kdo-ruleshead span { font-size: 13px; color: #00e5ff; }
.kdo-rulesbody { padding: 14px 16px 16px; border-top: 1px solid var(--border-subtle); }
.kdo-rulesbody p { margin: 0 0 12px; font-size: 15px; color: var(--text-primary); line-height: 1.55; }
.kdo-rulesbody p.kdo-dim { font-size: 13.5px; color: var(--text-secondary); }
.kdo-ruleset { list-style: none; margin: 0 0 12px; padding: 0; }
.kdo-ruleset li { display: grid; grid-template-columns: 168px 1fr; gap: 6px 18px; padding: 9px 0;
  border-bottom: 1px solid var(--border-subtle); font-size: 15px; }
.kdo-ruleset li:last-child { border-bottom: 0; }
.kdo-ruleset b { color: #00e5ff; font-variant-numeric: tabular-nums; }
.kdo-ruleset span { color: var(--text-secondary); }

.kdo-phase { padding: 3px 10px; border-radius: 999px; font-size: .7rem; font-weight: 700;
  letter-spacing: .08em; border: 1px solid var(--border-subtle); color: var(--text-secondary); }
.kdo-phase.is-preparing { color: #00e5ff; border-color: rgba(0,229,255,.5); background: rgba(0,229,255,.1); }
.kdo-phase.is-stopping { color: #ffd166; border-color: rgba(255,209,102,.5); }
.kdo-phase.is-complete { color: #5effbd; border-color: rgba(94,255,189,.5); }
.kdo-phase.is-error { color: #ff7a7a; border-color: rgba(255,122,122,.5); }

.kdo-why { margin: 10px 0 0; font-size: 14.5px; color: var(--text-secondary); line-height: 1.55; }
.kdo-why b { color: var(--text-primary); }
.kdo-pill.is-core { color: #05271b; background: #5effbd; }
.kdo-pill.is-verified { color: #041d2b; background: #7fdcff; }
.kdo-pill.is-test { color: #2b1c00; background: #ffd166; }
.kdo-warnline { margin: 4px 0 0; padding: 10px 12px; border-radius: 8px; font-size: 14.5px;
  color: #ffd166; border: 1px solid rgba(255,209,102,.45); background: rgba(255,209,102,.08); }

/* ── Kat Campaigns: live working-state panel (BB-AIV-001) ───────────────── */
.kdo-live { margin: 0 0 18px; padding: 14px 16px; border-radius: 12px;
  border: 1px solid var(--border-subtle); background: rgba(255,255,255,.03); }
.kdo-live.is-running { border-color: rgba(0,229,255,.55); background: rgba(0,229,255,.07); }
.kdo-livehead { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin-bottom: 14px; }
.kdo-livepulse { display: inline-flex; align-items: center; gap: 9px; font-size: 15px; color: #00e5ff; font-weight: 600; }
.kdo-livepulse i { width: 10px; height: 10px; border-radius: 50%; background: #00e5ff;
  animation: kdoPulse 1s ease-in-out infinite; }
@keyframes kdoPulse { 0%,100% { opacity: 1; transform: scale(1); } 50% { opacity: .25; transform: scale(.7); } }
.kdo-livegrid { display: grid; grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)); gap: 10px; }
.kdo-livecell { padding: 10px 12px; border-radius: 9px; background: rgba(0,0,0,.28);
  border: 1px solid var(--border-subtle); }
.kdo-livecell strong { display: block; font-size: 26px; line-height: 1.1;
  color: var(--text-primary); font-variant-numeric: tabular-nums; }
.kdo-livecell.is-ok strong { color: #5effbd; }
.kdo-livecell.is-warn strong { color: #ffd166; }
.kdo-livecell span { display: block; margin-top: 4px; font-size: 12.5px; color: var(--text-secondary); }

/* ── Source Registry + Prospect Conveyor + Prospect Review (BB work order) ── */
.svr-conveyor, .svr-registry, .svr-inventory { margin: 0 0 22px; padding: 18px 20px;
  border: 1px solid var(--border-subtle); border-radius: 12px; background: rgba(255,255,255,.03); }
.svr-convhead, .svr-reghead, .svr-invhead { display: flex; flex-wrap: wrap; align-items: flex-start;
  justify-content: space-between; gap: 12px 18px; margin-bottom: 16px; }
.svr-convhead h3, .svr-reghead h3, .svr-invhead h3 { margin: 0 0 4px; font-size: 18px; color: var(--text-primary); }
.svr-convactions { display: flex; align-items: center; gap: 10px; }
.svr-stages { display: grid; grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); gap: 10px; }
.svr-stage { padding: 11px 13px; border-radius: 9px; background: rgba(0,0,0,.28); border: 1px solid var(--border-subtle); }
.svr-stage strong { display: block; font-size: 24px; line-height: 1.1; color: var(--text-primary); font-variant-numeric: tabular-nums; }
.svr-stage.is-ok strong { color: #5effbd; }
.svr-stage.is-warn strong { color: #ffd166; }
.svr-stage.is-bad strong { color: #ff7a7a; }
.svr-stage.is-idle strong { color: #7fdcff; }
.svr-stage span { display: block; margin-top: 4px; font-size: 12.5px; color: var(--text-secondary); line-height: 1.35; }
.svr-feed { list-style: none; margin: 14px 0 0; padding: 12px 0 0; border-top: 1px solid var(--border-subtle); }
.svr-feed li { display: flex; align-items: baseline; gap: 10px; padding: 5px 0; font-size: 13.5px; color: var(--text-secondary); }
.svr-feed li i { width: 7px; height: 7px; border-radius: 50%; background: #00e5ff; flex: none; }
.svr-feed b { color: var(--text-primary); font-variant-numeric: tabular-nums; }
.svr-feed em { font-style: normal; color: #5effbd; }
.svr-tablewrap { overflow-x: auto; }
.svr-table td, .svr-table th { white-space: nowrap; }
.svr-table td b { font-size: 14.5px; }
.svr-divider td { padding: 14px 12px 8px; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase;
  color: var(--text-secondary); border-bottom: 1px solid var(--border-subtle); white-space: normal; }
.svr-pill { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: .68rem; font-weight: 700;
  letter-spacing: .06em; border: 1px solid var(--border-subtle); color: var(--text-secondary); }
.svr-pill.is-run { color: #00e5ff; border-color: rgba(0,229,255,.5); background: rgba(0,229,255,.1); }
.svr-pill.is-done { color: #5effbd; border-color: rgba(94,255,189,.5); }
.svr-pill.is-part { color: #ffd166; border-color: rgba(255,209,102,.5); }
.svr-pill.is-ready { color: #9db4ff; border-color: rgba(157,180,255,.45); }
.svr-pill.is-bad { color: #ff7a7a; border-color: rgba(255,122,122,.5); }

.svr-reviewstats { display: grid; grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); gap: 10px; margin: 0 0 18px; }
.svr-allclear { padding: 34px 24px; text-align: center; border: 1px dashed var(--border-subtle); border-radius: 12px; }
.svr-allclear b { display: block; font-size: 19px; color: #5effbd; margin-bottom: 6px; }
.svr-allclear span { color: var(--text-secondary); font-size: 15px; }
.svr-reviewcard { padding: 20px 22px; border: 1px solid var(--border-subtle); border-radius: 12px; background: rgba(255,255,255,.03); }
.svr-reviewcard header { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; margin-bottom: 12px; }
.svr-reviewcard h4 { margin: 0 0 3px; font-size: 20px; color: var(--text-primary); }
.svr-why { margin: 0 0 14px; padding: 11px 13px; border-radius: 8px; font-size: 15px; line-height: 1.5;
  color: #ffd166; background: rgba(255,209,102,.07); border: 1px solid rgba(255,209,102,.35); }
.svr-why b { color: var(--text-primary); }
.svr-reviewlinks { display: flex; gap: 10px; margin: 14px 0 18px; }
.svr-decide { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
.svr-decide .btn { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 15px 12px;
  font-size: 16px; font-weight: 800; letter-spacing: .04em; }
.svr-decide .btn span { font-size: 12px; font-weight: 500; letter-spacing: 0; opacity: .85; }
.svr-btn-kat { background: rgba(94,255,189,.14); border: 1px solid rgba(94,255,189,.6); color: #5effbd; }
.svr-btn-99 { background: rgba(127,220,255,.12); border: 1px solid rgba(127,220,255,.55); color: #7fdcff; }
.svr-btn-no { background: rgba(255,122,122,.1); border: 1px solid rgba(255,122,122,.5); color: #ff7a7a; }
.svr-next { margin: 14px 0 0; }

.svr-sector { margin: 0 0 12px; border: 1px solid var(--border-subtle); border-radius: 10px; overflow: hidden; }
.svr-sectorhead { display: flex; width: 100%; align-items: center; gap: 16px; padding: 13px 16px; border: 0;
  cursor: pointer; font: inherit; text-align: left; background: rgba(255,255,255,.04); color: var(--text-primary); }
.svr-sectorhead b { font-size: 16px; }
.svr-sectorhead span { flex: 1; font-size: 13.5px; color: var(--text-secondary); }
.svr-sectorhead em { font-style: normal; font-size: 13px; color: #00e5ff; }
.svr-sectorgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; padding: 14px 16px; }
.svr-indcard { padding: 12px 14px; border-radius: 9px; border: 1px solid var(--border-subtle); background: rgba(0,0,0,.25); }
.svr-indcard.is-empty { opacity: .45; }
.svr-indcard b { display: block; font-size: 14.5px; color: var(--text-primary); margin-bottom: 4px; }
.svr-indcard strong { display: block; font-size: 24px; color: #00e5ff; font-variant-numeric: tabular-nums; }
.svr-indcard span { display: block; margin-top: 4px; font-size: 12.5px; color: var(--text-secondary); line-height: 1.45; }

/* ── KAT99 outbound panel + legacy demotion (BB revenue finish) ───────────── */
.svr-legacy { margin: 0 0 22px; border: 1px dashed var(--border-subtle); border-radius: 12px; }
.svr-legacy > summary { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 14px;
  padding: 13px 18px; cursor: pointer; list-style: none; }
.svr-legacy > summary::-webkit-details-marker { display: none; }
.svr-legacy > summary b { font-size: .74rem; letter-spacing: .1em; color: #ffd166; }
.svr-legacy > summary span { flex: 1; font-size: 13px; color: var(--text-secondary); }
.svr-legacy[open] > summary { border-bottom: 1px solid var(--border-subtle); }
.svr-legacy > *:not(summary) { padding: 6px 18px 18px; }
button.svr-indcard { cursor: pointer; text-align: left; font: inherit; transition: border-color .15s; position: relative; }
button.svr-indcard:hover { border-color: rgba(0,229,255,.55); }
button.svr-indcard em { position: absolute; right: 12px; top: 12px; font-style: normal; font-size: 12px; color: #00e5ff; }
.ecc-lanes { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 14px; margin: 4px 0 16px; }
.ecc-lane { padding: 16px 18px; border: 1px solid var(--border-subtle); border-radius: 10px; background: rgba(0,0,0,.22); }
.ecc-lane h4 { margin: 0 0 8px; font-size: 15px; letter-spacing: .05em; color: var(--text-primary); }
.ecc-lane p { margin: 0 0 14px; font-size: 13.5px; line-height: 1.55; }
.ecc-kat99-controls { margin-top: 4px; }
.ecc-qtyrow { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 14px; }
.ecc-qtylabel { font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; color: var(--text-secondary); margin-right: 4px; }
.ecc-qty.is-on { border-color: rgba(0,229,255,.65); color: #00e5ff; background: rgba(0,229,255,.1); }
#ecc-qty-custom { width: 90px; padding: 7px 10px; border-radius: 7px; font-size: 14px;
  color: var(--text-primary); background: var(--surface-2, rgba(0,0,0,.35)); border: 1px solid var(--border-subtle); }

/* ── Prospect Review module polish (BB work order) ────────────────────────── */
.review-progress { margin: 0 0 18px; padding: 13px 16px; border: 1px solid var(--border-subtle);
  border-radius: 10px; background: rgba(255,255,255,.03); }
.review-ownerstrip { margin: 0 0 18px; padding: 13px 16px; border: 1px dashed rgba(157,180,255,.4);
  border-radius: 10px; background: rgba(157,180,255,.05); }
.review-ownerstrip > b { display: block; font-size: 13px; letter-spacing: .06em; color: #9db4ff; margin-bottom: 8px; }
.review-ownerstrip ul { list-style: none; margin: 0 0 8px; padding: 0; }
.review-ownerstrip li { display: flex; flex-wrap: wrap; gap: 6px 16px; padding: 5px 0; font-size: 14px;
  border-bottom: 1px solid var(--border-subtle); }
.review-ownerstrip li:last-child { border-bottom: 0; }
.review-ownerstrip li span { color: var(--text-primary); font-weight: 600; }
.review-ownerstrip li em { font-style: normal; color: var(--text-secondary); }
.review-ownerstrip small { font-size: 12px; color: var(--text-secondary); }

/* ── Source Contacts palette repair (BB visual fix) ─────────────────────────
   The conveyor inventory and KAT99 lanes render inside the Email Campaign
   Center, whose established palette is steel-blue (--ecc-blue #48a7ff, green
   #4ad7a5, amber #f0b95a on navy panels). The cockpit-neon accents these
   sections carried elsewhere read as bright cyan/purple here. Scoped to
   .ecc-page only — the Kat Campaigns cockpit look is unchanged. */
.ecc-page .svr-inventory {
  margin: 18px 0 0; padding: 20px 22px;
  border: 1px solid rgba(119, 164, 213, .22); border-radius: 16px;
  background: linear-gradient(145deg, rgba(13, 29, 50, .6), rgba(7, 17, 31, .7));
}
.ecc-page .svr-invhead h3 { color: #fff; }
.ecc-page .svr-invhead .kdo-dim, .ecc-page .svr-inventory .kdo-dim { color: #93a9c4; }
.ecc-page .svr-sector { border-color: rgba(119, 164, 213, .22); }
.ecc-page .svr-sectorhead { background: rgba(72, 167, 255, .06); }
.ecc-page .svr-sectorhead b { color: #fff; }
.ecc-page .svr-sectorhead span { color: #93a9c4; }
.ecc-page .svr-sectorhead em { color: var(--ecc-blue); }
.ecc-page .svr-indcard { background: rgba(7, 17, 31, .55); border-color: rgba(119, 164, 213, .2); }
.ecc-page .svr-indcard b { color: #e8f1fb; }
.ecc-page .svr-indcard strong { color: var(--ecc-blue); }
.ecc-page .svr-indcard span { color: #93a9c4; }
.ecc-page button.svr-indcard:hover { border-color: rgba(72, 167, 255, .55); }
.ecc-page button.svr-indcard em { color: var(--ecc-blue); }
.ecc-page .svr-reviewstats .svr-stage { background: rgba(7, 17, 31, .55); border-color: rgba(119, 164, 213, .2); }
.ecc-page .svr-stage strong { color: #e8f1fb; }
.ecc-page .svr-stage.is-ok strong { color: var(--ecc-green); }
.ecc-page .svr-stage.is-warn strong { color: var(--ecc-amber); }
.ecc-page .svr-stage.is-bad strong { color: #ff8d8d; }
.ecc-page .svr-stage.is-idle strong { color: var(--ecc-blue); }
.ecc-page .svr-stage span { color: #93a9c4; }
.ecc-page .ecc-lane { background: rgba(7, 17, 31, .55); border-color: rgba(119, 164, 213, .2); }
.ecc-page .ecc-lane h4 { color: #fff; }
.ecc-page .ecc-lane p { color: #93a9c4; }
.ecc-page .ecc-qty.is-on { border-color: rgba(72, 167, 255, .6); color: var(--ecc-blue); background: rgba(72, 167, 255, .1); }
.ecc-page .kdo-live { border-color: rgba(119, 164, 213, .22); background: rgba(7, 17, 31, .55); }
.ecc-page .kdo-live.is-running { border-color: rgba(72, 167, 255, .55); background: rgba(72, 167, 255, .07); }
.ecc-page .kdo-livepulse { color: var(--ecc-blue); }
.ecc-page .kdo-livepulse i { background: var(--ecc-blue); }
.ecc-page .kdo-livecell { background: rgba(13, 29, 50, .8); border-color: rgba(119, 164, 213, .2); }
.ecc-page .kdo-livecell.is-ok strong { color: var(--ecc-green); }
.ecc-page .kdo-livecell.is-warn strong { color: var(--ecc-amber); }
.ecc-page .kdo-phase.is-preparing { color: var(--ecc-blue); border-color: rgba(72, 167, 255, .5); background: rgba(72, 167, 255, .1); }
.ecc-page .kdo-phase.is-complete { color: var(--ecc-green); border-color: rgba(74, 215, 165, .5); }
.ecc-page .kdo-confirm { border-color: rgba(240, 185, 90, .45); }
.ecc-page .kdo-mail { border-color: rgba(119, 164, 213, .22); background: rgba(7, 17, 31, .55); }

/* ── Prospect Review: PARK disposition (BB fourth-decision work order) ────── */
.svr-decide.is-four { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
.svr-btn-park { background: rgba(232, 160, 48, .1); border: 1px solid rgba(232, 160, 48, .5); color: var(--amber); }
.svr-parkrow { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px;
  padding: 12px 14px; border: 1px dashed rgba(232, 160, 48, .45); border-radius: 9px; }

/* ═══════════════════════════════════════════════════════════════════════════
   SHARED SYSTEM PASS (master reorganization Phase 1)
   Readability floor for instructional/status text and breathing room between
   adjacent controls. Gauge-face engravings (dial numerals, scale marks) stay
   deliberately miniature — instruments, not instructions. Uses the shared
   tokens defined in :root; later phases migrate selectors into this system
   instead of adding new ad-hoc sizes.
   ═══════════════════════════════════════════════════════════════════════════ */

/* — Navigation & shell — */
.cockpit-sidebar { overflow-y: auto; scrollbar-width: thin; }
.cockpit-nav-modules { display: flex; flex-direction: column; }
.ecc-header-actions { display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.ecc-init-progress { display: grid; gap: 4px; margin: 0 0 14px; padding: 11px 14px; border: 1px solid rgba(72,167,255,.34); border-radius: 10px; background: rgba(72,167,255,.07); color: #dceafb; }
.ecc-init-progress b { font-size: 13px; }
.ecc-init-progress span { color: #9eb3ca; font-size: 12px; line-height: 1.45; }
.ecc-init-progress.is-slow { border-color: rgba(240,185,90,.48); background: rgba(240,185,90,.08); }
.ecc-init-progress.is-slow b { color: var(--ecc-amber); }
.cockpit-sidebar .nav-tab { font-size: 13.5px; }
.cockpit-nav-secondary .nav-tab { font-size: 12.5px; }
.cockpit-nav-caption { font-size: 10px; letter-spacing: .14em; }
.topbar-email { font-size: 12px; }

/* — Command Center reading text (cards, feed, attention) — */
.command-page .today-header p { font-size: 13.5px; }
.command-cluster-label { font-size: 9.5px; }
.command-pulse-card > span { font-size: 11px; }
.command-pulse-card small { font-size: 11.5px; }
.command-work-business b { font-size: 12.5px; }
.command-work-stage, .command-work-row small, .command-work-owner { font-size: 10.5px; }
.command-attention-item small { font-size: 10.5px; }
.command-feed-item small { font-size: 10.5px; }
.command-feed-item time { font-size: 9px; }
.kat-call-detail span { font-size: 10px; }
.kat-call-card summary small { font-size: 10.5px; }

/* — Modal + form labels (9px!important labels were unreadable) — */
.modal label { font-size: 11px !important; }

/* — Employees module switches: names readable, slab unfused — */
.emp-mod-name, .emp-module-switch__name { font-size: 12px; }
.emp-module-grid, .emp-module-console {
  gap: var(--gap-controls) !important;
  padding: 14px;
  grid-template-columns: repeat(auto-fit, minmax(138px, 1fr));
}
.emp-mod::before, .emp-module-switch::before { left: -2px; right: -2px; }
.emp-modules > div { gap: var(--gap-controls); }
.emp-invite-grid { gap: var(--gap-cards); }

/* — Installed Modules launcher: unmistakably launchable — */
.command-page .today-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.command-module-grid .command-pulse-card { position: relative; }
.command-module-grid .command-pulse-card > i { display: none; }
.command-module-grid .command-pulse-card::after {
  content: 'OPEN →'; position: absolute; right: 12px; bottom: 10px;
  font: 700 9.5px var(--mono); letter-spacing: .12em; color: var(--accent);
  opacity: .78; transition: opacity .15s, transform .15s;
}
.command-module-grid .command-pulse-card:hover::after { opacity: 1; transform: translateX(3px); }
.command-module-grid .command-pulse-card:hover {
  border-color: var(--accent); cursor: pointer; transform: translateY(-2px);
  box-shadow: 0 0 18px var(--glow-electric), inset 0 1px 0 rgba(255, 255, 255, .08);
}

/* — Sales board: five buckets, wider lanes — */
.pipeline-col { width: 264px; }

/* — Kat Activity badge (topbar, persistent until seen) — */
.kat-activity-badge {
  display: inline-flex; align-items: center; gap: 7px; cursor: pointer;
  font: 700 11px var(--mono); letter-spacing: .08em; color: var(--text);
  background: linear-gradient(180deg, rgba(18,49,75,.9), rgba(7,27,45,.95));
  border: 1px solid var(--accent); border-radius: 999px; padding: 5px 12px;
  box-shadow: 0 0 14px var(--glow-electric);
}
.kat-activity-badge i {
  width: 7px; height: 7px; border-radius: 50%; background: var(--accent);
  box-shadow: 0 0 8px var(--accent);
}
.kat-activity-badge.is-live { border-color: var(--green); box-shadow: 0 0 16px var(--glow-teal); }
.kat-activity-badge.is-live i { background: var(--green); box-shadow: 0 0 9px var(--green); animation: kat-live-pulse 1.4s infinite; }
.kat-activity-badge:hover { filter: brightness(1.12); }

/* — ECC outreach family cards — */
.ecc-family-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: var(--gap-cards); margin-bottom: 14px; }
.ecc-family { border: 1px solid var(--border2); border-radius: var(--radius); background: var(--bg2); padding: 13px 15px; display: grid; gap: 10px; align-content: start; }
.ecc-family-head b { font-size: 13.5px; display: block; }
.ecc-family-head span { font-size: 11.5px; }
.ecc-family-stats { display: grid; gap: 5px; }
.ecc-family-stats > div { display: flex; justify-content: space-between; align-items: baseline; font-size: 12.5px; }
.ecc-family-stats span { color: var(--text3); }
.ecc-family-stats strong { font: 700 14px var(--mono); }
.ecc-family-stats strong.is-ok { color: var(--green); }
.ecc-family-stats strong.is-warn { color: var(--amber); }
.ecc-family-row { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-top: 1px solid var(--border); font-size: 12.5px; }

/* — Inline CALL KAT send lane (ECC industry drill-in) — */
.ecc-ck-send { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--border); display: grid; gap: 10px; }
.ecc-ck-qual { font-size: 12.5px; }
.ecc-ck-qual b.is-warn { color: var(--amber); }

/* — Social publishing truth strip + live-fire confirm — */
.soc-truth { border: 1px solid var(--border2); border-radius: var(--radius-lg); padding: 14px 16px; margin: 14px 0; background: var(--bg2); }
.soc-truth-title { font-size: 13.5px; font-weight: 700; color: var(--text); margin-bottom: 10px; }
.soc-truth-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 6px 0; border-top: 1px solid var(--border); font-size: 12.5px; }
.soc-truth-row b { color: var(--text2); font-weight: 600; }
.soc-fire-overlay { position: fixed; inset: 0; background: rgba(2, 10, 20, .72); z-index: 400; display: flex; align-items: center; justify-content: center; padding: 20px; }
.soc-fire { background: var(--bg2); border: 1px solid var(--red); border-radius: var(--radius-lg); padding: 20px 22px; max-width: 520px; width: 100%; box-shadow: 0 0 34px var(--glow-red), 0 24px 60px rgba(0, 0, 0, .5); }
.soc-fire h3 { font-size: 15px; color: var(--red); margin-bottom: 12px; }
.soc-fire-facts { display: grid; gap: 6px; margin-bottom: 12px; }
.soc-fire-facts > div { display: flex; gap: 10px; font-size: 12.5px; }
.soc-fire-facts span { color: var(--text3); min-width: 76px; }
.soc-fire-preview { background: var(--bg); border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-size: 12.5px; color: var(--text2); white-space: pre-wrap; max-height: 180px; overflow-y: auto; margin-bottom: 14px; }
.soc-fire-actions { display: flex; justify-content: flex-end; gap: var(--gap-controls); }

/* — Owner timecard correction panel (Employees) — */
.emp-timecard { grid-column: 1 / -1; margin-top: 10px; padding: 12px 14px; border: 1px solid var(--border2); border-radius: var(--radius); background: var(--bg2); }
.emp-timecard-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; font-size: 13px; }
.emp-shift { border-top: 1px solid var(--border); padding: 8px 0; }
.emp-shift:first-of-type { border-top: none; }
.emp-shift-line { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 12.5px; }
.emp-shift.is-open .emp-shift-line { color: var(--amber); }
.emp-shift-edit { display: flex; align-items: flex-end; gap: var(--gap-controls); flex-wrap: wrap; margin-top: 8px; padding: 10px; background: var(--bg3); border-radius: 8px; }
.emp-shift-edit label { display: flex; flex-direction: column; gap: 4px; font-size: 11px; color: var(--text2); }
.emp-shift-edit input { background: var(--bg2); border: 1px solid var(--border2); border-radius: 8px; color: var(--text); padding: 6px 9px; font-size: 12.5px; }
.emp-shift-edit .emp-fix-note { flex: 1 1 220px; }
.emp-shift-edit small { flex-basis: 100%; }

/* — Contextual help (topbar → Playbook deep link) — */
.topbar-help {
  font: 600 11.5px var(--font); color: var(--text2); text-decoration: none;
  border: 1px solid var(--border2); border-radius: 999px; padding: 4px 11px;
  transition: color .15s, border-color .15s, box-shadow .15s;
}
.topbar-help:hover { color: var(--text); border-color: var(--accent); box-shadow: 0 0 10px var(--glow-electric); }

/* — Source Registry finding tools — */
.svr-regtools { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.svr-regtools input[type="search"] {
  background: var(--bg2); border: 1px solid var(--border2); border-radius: 9px;
  color: var(--text); padding: 6px 12px; font-size: 13px; min-width: 190px;
}
.svr-regtools input[type="search"]:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 10px var(--glow-electric); }

/* — Control rows breathe — */
.module-action-set { gap: 10px; }
.vr-btns { gap: var(--gap-controls); }
.command-action-row { gap: var(--gap-cards); }

/* — Button families: one language, six intents.
     Primary = .btn-accent (electric glass) · Secondary = .btn ·
     Success = .btn-success · Warning = .btn-warn ·
     Destructive = .btn-danger · Ghost = .btn-ghost — */
.btn.btn-success {
  background: linear-gradient(180deg, #2ea56a, #157347);
  border-color: rgba(74, 215, 165, .55); color: #eafff4;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 0 16px rgba(74,215,165,.22);
}
.btn.btn-success:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 0 22px rgba(74,215,165,.34); }
.btn.btn-warn {
  background: linear-gradient(180deg, #b97f22, #8a5c14);
  border-color: rgba(255, 196, 71, .5); color: #fff3dc;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 0 14px var(--glow-amber);
}
.btn.btn-warn:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 0 20px var(--glow-amber); }
.btn.btn-ghost {
  background: transparent; border: 1px solid var(--border2);
  box-shadow: none; color: var(--text2);
}
.btn.btn-ghost:hover { color: var(--text); border-color: var(--accent); box-shadow: 0 0 12px var(--glow-electric); }

/* — ECC scheduler — */
.ecc-sched { margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--border); display: grid; gap: 10px; }
.ecc-sched-form { background: var(--bg3); border: 1px solid var(--border2); border-radius: var(--radius); padding: 12px; display: grid; gap: 10px; }
.ecc-sched-row { display: flex; align-items: flex-end; gap: var(--gap-controls); flex-wrap: wrap; }
.ecc-sched-row label { display: flex; flex-direction: column; gap: 4px; font-size: 11.5px; color: var(--text2); }
.ecc-sched-row input { background: var(--bg2); border: 1px solid var(--border2); border-radius: 8px; color: var(--text); padding: 6px 9px; font-size: 12.5px; }
.ecc-sched-split { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--text2); }
.ecc-sched-list { display: grid; gap: 8px; }
.ecc-sched-item { border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; display: grid; gap: 6px; background: var(--bg2); }

/* ── Fresh supply banner — one compact line above the conveyor strip ──────── */
.sv-supplyline { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px;
  margin: 0 0 14px; padding: 9px 14px; border-radius: 9px;
  border: 1px solid var(--border-subtle); background: rgba(255,255,255,.03); }
.sv-supplyline .kdo-dim { font-size: 12.5px; }

/* Module header searchlight, clipped to the header. The header stays
   overflow:visible (its action menus drop below it); the sweep now runs in
   .module-command-sweep, which clips it, so it no longer overflows the page. */
.module-command-header::before{content:none}
.module-command-sweep{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:0}
.module-command-sweep::before{content:"";position:absolute;width:250px;height:75px;left:-280px;top:-35px;transform:skewX(-24deg);background:linear-gradient(90deg,transparent,rgba(72,203,255,.13),transparent);animation:module-searchlight 9s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.module-command-sweep::before{animation:none!important}}

/* Retired hardwired campaigns (09-21): a plain notice where send controls were. */
.kdo-retired{display:grid;gap:4px;margin:8px 0;padding:12px 14px;border:1px dashed #80652b;border-radius:10px;background:rgba(56,45,22,.35);color:#ffd88b}
.kdo-retired b{color:#ffe2a8}
.kdo-retired span{color:#e6cf9c}
.kdo-retired-mode #kdo-create-open,.kdo-retired-mode #kdo-create-go,.kdo-retired-mode #kdo-prepare,.kdo-retired-mode #kdo-random,.kdo-retired-mode #kdo-release,.kdo-retired-mode #kdo-release-confirm{display:none!important}
/* Owner Whiteboard: one full-width notepad section in Performance Command. */
.owner-whiteboard{margin:0 0 14px;padding:18px;border:1px solid #245778;border-radius:17px;background:linear-gradient(145deg,rgba(12,35,57,.98),rgba(4,17,30,.99));box-shadow:inset 0 1px rgba(255,255,255,.055),0 15px 32px rgba(0,0,0,.25)}
.owner-whiteboard-grid{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:16px;align-items:stretch}
.owner-whiteboard-titles,.owner-whiteboard-content{min-width:0;padding:14px;border:1px solid #1e4967;border-radius:12px;background:rgba(2,16,28,.52)}
.owner-whiteboard-workspace{min-width:0;margin-top:14px;padding-top:14px;border-top:1px solid #24516f}
.owner-whiteboard label,.owner-whiteboard-selected-head label{display:block;margin:0 0 7px;color:#a9c6d7;font-size:12px;font-weight:700}
.owner-whiteboard input:not([type=checkbox]),.owner-whiteboard textarea,.owner-whiteboard select{width:100%;min-width:0;padding:10px 11px;border:1px solid #2d5b79;border-radius:8px;color:#eef9ff;background:#061a2b;font:inherit;font-size:14px}
.owner-whiteboard textarea{display:block;min-height:110px;line-height:1.5;resize:vertical;overflow-y:hidden;white-space:pre-wrap}
.owner-whiteboard textarea#wb-new-item{min-height:440px}
.owner-whiteboard input:focus,.owner-whiteboard textarea:focus,.owner-whiteboard select:focus{outline:2px solid #39bcea;outline-offset:1px}
.owner-whiteboard-titles>form[data-wb-new-title],.owner-whiteboard-selected-head>div{display:grid;grid-template-rows:auto 40px;gap:7px;align-content:start}
.owner-whiteboard-titles>form[data-wb-new-title]>label,.owner-whiteboard-selected-head>div>label{margin-bottom:0}
.owner-whiteboard-add-title{display:flex;min-width:0;height:40px;gap:7px}.owner-whiteboard .owner-whiteboard-add-title input:not([type=checkbox]){flex:1 1 0;width:0;min-width:0;padding-inline:9px}.owner-whiteboard-add-title .btn,.owner-whiteboard-selected-head>.btn{flex:none;height:40px}.owner-whiteboard-add-title .btn{padding-inline:10px}.owner-whiteboard-selected-head input{height:40px}
.owner-whiteboard-title-list,.owner-whiteboard-items{display:grid;gap:8px;margin-top:13px}.owner-whiteboard-title-list{min-width:0;grid-template-columns:minmax(0,1fr)}
.owner-whiteboard-title{display:flex;align-items:center;min-width:0;width:100%;gap:5px;padding:5px;border:1px solid #1c4665;border-radius:9px;background:#0a2439}
.owner-whiteboard-title.selected{border-color:#32bfe8;background:#113651}
.owner-whiteboard-title.archived,.owner-whiteboard-item.archived{opacity:.72}
.owner-whiteboard-title-select{flex:1;min-width:0;padding:5px;border:0;color:#eaf6ff;text-align:left;background:transparent;cursor:pointer}
.owner-whiteboard-title-select strong,.owner-whiteboard-title-select small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.owner-whiteboard-title-select strong{white-space:normal;overflow-wrap:anywhere;text-overflow:clip}
.owner-whiteboard-title-select small,.owner-whiteboard-item-head small{margin-top:3px;color:#91aec1;font-size:11px}
.owner-whiteboard-title-actions{display:flex;align-items:center;justify-content:flex-end;flex:0 0 64px;gap:2px}
.owner-whiteboard-icon{flex:0 0 30px;width:30px;height:30px;padding:3px;border:0;color:#9bdcf5;background:transparent;cursor:pointer;font-size:18px}
.owner-whiteboard-icon:hover,.owner-whiteboard-title-select:hover{color:#fff}
.owner-whiteboard-selected-head{display:flex;align-items:end;flex-wrap:wrap;gap:8px}.owner-whiteboard-selected-head>div{flex:1;min-width:180px}
.owner-whiteboard-item{padding:12px;border:1px solid #24516f;border-radius:10px;background:#0a2134}
.owner-whiteboard-item.checklist{padding:8px 10px}
.owner-whiteboard textarea[data-wb-min-height="52"]{min-height:52px;padding:7px 9px}
.owner-whiteboard-item.checklist.completed{border-color:#1d4158;background:#091d2d}
.owner-whiteboard-item.checklist.completed .owner-whiteboard-check,.owner-whiteboard-item.checklist.completed textarea{opacity:.78}
.owner-whiteboard-item-empty{display:flex;align-items:center;min-height:74px;border-style:dashed;color:#9ab4c6;font-size:13px}
.owner-whiteboard-item-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;color:#9bdcf5;font-size:12px;font-weight:700}
.owner-whiteboard-item.checklist .owner-whiteboard-item-head{margin-bottom:4px}
.owner-whiteboard-item-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.owner-whiteboard-item.checklist .owner-whiteboard-item-actions{margin-top:6px}
.owner-whiteboard-check{display:flex!important;align-items:center;gap:8px;margin-bottom:9px!important;cursor:pointer}
.owner-whiteboard-item.checklist .owner-whiteboard-check{margin-bottom:5px!important}
.owner-whiteboard-check input{width:17px;height:17px;accent-color:#2bd5bd}
.owner-whiteboard-workspace form[data-wb-new-item]{display:grid;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #24516f}
.owner-whiteboard-workspace form[data-wb-new-item] select{max-width:190px}
.owner-whiteboard-workspace form[data-wb-new-item] button{justify-self:start;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.owner-whiteboard-empty{margin:15px 0;color:#9ab4c6;font-size:13px}
@media(max-width:980px){.owner-whiteboard-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.owner-whiteboard{padding:12px}}
