/* style.css */
/* ============================================================
   AUTOLEAD DASHBOARD — Unified TrafficHub Theme
   ============================================================ */

:root {
  --bg:var(--release-bg);
  --bg2:var(--release-bg);
  --bg3:var(--release-bg);
  --bg-glass:var(--release-bg);
  --bg-glass2:var(--release-bg);
  --surface-soft:var(--release-soft);
  --surface-hover:var(--release-soft);
  --border:var(--release-line);
  --border-hi:var(--release-line);
  --border2:var(--release-line);
  --text:var(--release-text);
  --text2:var(--release-muted);
  --text3:var(--release-muted);
  --on-accent:   #fff;
  --blue:        var(--release-primary);
  --blue-dim:    var(--release-soft);
  --blue-glow:   0 0 0 3px transparent;
  --green:       var(--release-primary);
  --green-dim:   var(--release-soft);
  --red:         #ff4d4f;
  --red-dim:     rgba(255, 77, 79, 0.1);
  --yellow:      #ffc069;
  --yellow-dim:  rgba(255, 192, 105, 0.1);
  --purple:      var(--release-primary);
  --purple-dim:  var(--release-soft);
  --radius:      16px;
  --radius-sm:   12px;
  --shadow:      0 22px 52px rgba(0, 0, 0, 0.34);
  --shadow-sm:   0 12px 30px rgba(0, 0, 0, 0.2);
  --backdrop:    none;
  --font-mono:   "DM Mono", "Consolas", "Courier New", monospace;
  --font-sans:   "Space Grotesk", system-ui, -apple-system, sans-serif;
  --transition:  transform 0.16s ease, scale 0.16s ease, background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease, opacity 0.16s ease;
  --top-glow:    transparent;
  --bottom-glow: transparent;
  color-scheme: dark;
}

body[data-theme="light"] {
  --bg:var(--release-bg);
  --bg2:var(--release-bg);
  --bg3:var(--release-bg);
  --bg-glass:var(--release-bg);
  --bg-glass2:var(--release-bg);
  --surface-soft:var(--release-soft);
  --surface-hover:var(--release-soft);
  --border:var(--release-line);
  --border-hi:var(--release-line);
  --border2:var(--release-line);
  --text:var(--release-text);
  --text2:var(--release-muted);
  --text3:var(--release-muted);
  --on-accent:   var(--release-primary);
  --shadow:      0 20px 44px none;
  --shadow-sm:   0 10px 24px none;
  --top-glow:    transparent;
  --bottom-glow: rgba(232, 197, 78, 0.12);
  color-scheme: light;
}

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

html, body {
  height: 100%;
  background:
    radial-gradient(circle at top left, var(--top-glow), transparent 28%),
    radial-gradient(circle at bottom right, var(--bottom-glow), transparent 24%),
    var(--bg);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: 13.5px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, .page-title, .section-title, .login-box h1 {
  text-wrap: balance;
}

p, .subtitle, .empty, .crm-empty__hint, .maintenance-overlay__text, .maintenance-control__hint, .table-meta, .save-msg {
  text-wrap: pretty;
}

.kpi-card .value, .summary-card .value, .crm-stat-value, .offer-count, .pagination span, .log-time, .metric-number, td:nth-child(1), td:nth-child(5), .admin-license-table td:nth-child(6) {
  font-variant-numeric: tabular-nums;
}

img {
  outline: 1px solid rgba(255, 255, 255, 0.1);
  outline-offset: -1px;
}

body[data-theme="light"] img {
  outline-color: rgba(0, 0, 0, 0.1);
}

button, a, input, select, textarea {
  -webkit-tap-highlight-color: transparent;
}

button:active:not(:disabled),
a[role="button"]:active,
.btn-action:active:not(:disabled),
.btn-sm:active:not(:disabled),
.btn-logout:active,
.btn-stop:active:not(:disabled),
.theme-toggle:active,
.password-toggle:active {
  scale: 0.96;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }
}

.maintenance-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background:
    radial-gradient(circle at 18% 26%, rgba(120, 28, 18, 0.18), transparent 34%),
    radial-gradient(circle at 80% 72%, rgba(255, 122, 24, 0.09), transparent 32%),
    rgba(0, 0, 0, 0.78);
  backdrop-filter: blur(18px) saturate(0.78);
  -webkit-backdrop-filter: blur(18px) saturate(0.78);
}

.maintenance-overlay[hidden] {
  display: none !important;
}

.maintenance-overlay__panel {
  width: min(470px, calc(100vw - 40px));
  border: 1px solid rgba(255, 86, 86, 0.18);
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(21, 21, 20, 0.94), rgba(13, 13, 12, 0.96));
  box-shadow:
    0 28px 100px rgba(0, 0, 0, 0.62),
    0 0 80px rgba(108, 21, 21, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
  padding: 32px 34px 30px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.maintenance-overlay__panel::before {
  content: "";
  position: absolute;
  inset: -32% auto auto -18%;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, rgba(214, 52, 52, 0.18), transparent 68%);
  pointer-events: none;
}

.maintenance-overlay__panel::after {
  content: "";
  position: absolute;
  inset: auto -20% -34% auto;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle, rgba(255, 122, 24, 0.12), transparent 72%);
  pointer-events: none;
}

.maintenance-overlay__eyebrow {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 13px;
  border-radius: 999px;
  border: 1px solid rgba(255, 102, 102, 0.22);
  background: rgba(161, 45, 45, 0.22);
  color: #ffd0d0;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.maintenance-overlay__title {
  position: relative;
  z-index: 1;
  margin-top: 18px;
  font-size: clamp(40px, 5vw, 52px);
  font-weight: 900;
  line-height: 1;
  color: var(--text);
  text-wrap: balance;
}

.maintenance-overlay__text {
  position: relative;
  z-index: 1;
  margin-top: 14px;
  color: var(--text2);
  font-size: 14px;
  line-height: 1.55;
  max-width: 350px;
  margin-left: auto;
  margin-right: auto;
  text-wrap: balance;
}

.maintenance-overlay__actions {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 22px;
}

.maintenance-overlay__actions button {
  border: 0;
  min-height: 44px;
  border-radius: 10px;
  padding: 13px 20px;
  min-width: 88px;
  background: var(--release-card);
  color: var(--release-text);
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  transition: var(--transition);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 10px 26px rgba(0, 0, 0, 0.24);
}

.maintenance-overlay__actions button:hover {
  background: var(--release-soft);
  transform: translateY(-1px);
}

.maintenance-overlay__actions button:active {
  scale: 0.96;
}

.sidebar-nav button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.sidebar-nav button:disabled:hover {
  transform: none;
  border-color: var(--border);
  background: var(--bg-glass);
}
/* Obsolete decorative page grid removed. */

#app, #login-overlay { position: relative; z-index: 1; }

/* ── Scrollbar ──────────────────────────────────────────────────────────── */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--border); border-radius: 4px; border: 2px solid var(--bg); }
::-webkit-scrollbar-thumb:hover { background: var(--text3); }

/* Authorization is shared with public pages in auth.css. */

/* ── Layout ─────────────────────────────────────────────────────────────── */
#app { display: none; flex-direction: column; height: 100%; }
.app-shell { display: flex; min-height: 0; flex: 1; }

header {
  display: flex; align-items: center; gap: 20px;
  padding: 0 28px; height: 64px;
  background: var(--bg-glass);
  border-bottom: 1.5px solid var(--border);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  flex-shrink: 0; z-index: 10;
}
.home-arrow {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 auto;
  place-items: center;
  border: 1.5px solid var(--border);
  border-radius: 10px;
  color: var(--text2);
  background: var(--surface-soft);
  text-decoration: none;
  font-size: 21px;
  line-height: 1;
}
.home-arrow:hover { color: var(--text); border-color: var(--green); transform: translateX(-1px); }

.brand-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: inherit;
  text-decoration: none;
  min-width: 0;
}
.brand-icon {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-radius: 8px;
  object-fit: cover;
  box-shadow: none;
}
.logo { font-size: 19px; font-weight: 700; color: var(--text); letter-spacing: -0.03em; }
.logo span { color: var(--green); text-shadow: none; }

.theme-toggle {
  width: 42px;
  height: 42px;
  margin-left: auto;
  border: 1.5px solid var(--border);
  border-radius: 999px;
  background: linear-gradient(180deg, var(--surface-hover), var(--surface-soft));
  color: var(--text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--transition);
  box-shadow: var(--shadow-sm);
}
.theme-toggle:hover {
  transform: translateY(-1px) rotate(8deg);
  border-color: var(--border-hi);
  background: linear-gradient(180deg, var(--surface-hover), rgba(255,255,255,0.01));
}
.theme-icon {
  font-size: 17px;
  line-height: 1;
}

.mobile-menu-toggle,
.mobile-sidebar-logout {
  display: none;
}

.btn-logout {
  padding: 10px 16px;
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  background: linear-gradient(180deg, var(--surface-hover), var(--surface-soft));
  color: var(--text);
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: var(--transition);
  letter-spacing: 0.03em;
}
.btn-logout:hover {
  transform: translateY(-1px);
  border-color: var(--border-hi);
  background: var(--bg3);
}

.status-badge {
  display: flex; align-items: center; gap: 8px;
  padding: 7px 15px; border-radius: 999px;
  background: var(--bg3); border: 1.5px solid var(--border);
  font-size: 12px; font-weight: 600; letter-spacing: 0.5px;
  box-shadow: none;
}
.status-dot { width: 12px; height: 12px; border-radius: 50%; background: var(--text3); position: relative; }
.status-dot.idle { background: var(--green); box-shadow: none; }
.status-dot.error { background: var(--red); box-shadow: 0 0 0 3px rgba(255,77,79,0.12); }
.status-dot.running,
.status-dot.stopping {
  width: 14px;
  height: 14px;
  background: transparent;
  border: 2px solid rgba(255,192,105,0.22);
  border-top-color: var(--yellow);
  border-right-color: rgba(255,192,105,0.7);
  box-shadow: none;
  animation: statusSpin .8s linear infinite;
}
.status-dot.stopping {
  border: 2px solid rgba(255,77,79,0.18);
  border-top-color: var(--red);
  border-right-color: rgba(255,77,79,0.65);
}

@keyframes pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: .6; transform: scale(1.1); }
}

.mode-label {
  font-size: 12px; color: var(--blue); font-weight: 600;
  padding: 4px 10px; background: var(--blue-dim);
  border-radius: 6px; border: 1px solid var(--release-line);
  text-transform: uppercase; letter-spacing: 0.5px;
}
.last-action { font-size: 12px; color: var(--text3); margin-left: auto; font-weight: 500; }

.btn-stop {
  padding: 10px 18px; background: var(--red-dim);
  border: 1.5px solid rgba(255, 77, 79, 0.35); border-radius: var(--radius-sm);
  color: var(--red); font-size: 12px; font-weight: 700;
  cursor: pointer; transition: var(--transition);
  letter-spacing: 0.5px;
}
.btn-stop:hover:not(:disabled) { background: var(--red); color:var(--release-text); box-shadow: 0 10px 22px rgba(255, 77, 79, 0.18); transform: translateY(-1px); }
.btn-stop:disabled { opacity: .3; cursor: not-allowed; border-color: var(--text3); color: var(--text3); background: transparent; }

/* ── Sidebar ─────────────────────────────────────────────────────────────── */
.sidebar {
  width: 268px;
  flex: 0 0 268px;
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0)), var(--bg2);
  border-right: 1.5px solid var(--border);
  padding: 22px 16px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  position: sticky;
  top: 64px;
  height: calc(100vh - 64px);
  overflow-y: auto;
  box-shadow: inset -1px 0 0 rgba(255,255,255,0.03);
}
.sidebar-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px 0 0;
}
.sidebar-group + .sidebar-group {
  border-top: 1px solid rgba(255,255,255,0.05);
  padding-top: 18px;
}
.sidebar-group-bottom {
  margin-top: auto;
}
.sidebar-label {
  padding: 0 10px;
  color: var(--release-muted);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.sidebar-userline {
  display: block;
  margin: -3px 10px 3px;
  max-width: calc(100% - 20px);
  overflow: hidden;
  color: var(--text2);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.25;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}
.sidebar-userline[data-admin-visible="false"] {
  display: none;
}
.sidebar-nav {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.sidebar-expand {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.sidebar-nav button,
.sidebar-nav .nav-link-external {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 11px 14px;
  border-radius: 12px;
  border: 1.5px solid color-mix(in srgb, var(--border) 45%, transparent);
  background: var(--surface-soft);
  color: var(--text3);
  text-decoration: none;
  font-size: 13.5px;
  font-weight: 600;
  text-align: left;
  line-height: 1.35;
  white-space: normal;
  transition: var(--transition);
}
.sidebar-nav button .nav-label,
.sidebar-nav .nav-link-external .nav-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.nav-icon {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  color: var(--text3);
  transition: color 0.16s ease;
}
.sidebar-nav button:hover .nav-icon,
.sidebar-nav .nav-link-external:hover .nav-icon,
.sidebar-nav button.active .nav-icon,
.sidebar-nav .nav-link-external.active .nav-icon,
.sidebar-parent.active .nav-icon {
  color: var(--text);
}
.sidebar-parent {
  justify-content: space-between;
  gap: 12px;
}
.sidebar-parent .nav-label {
  flex: 1 1 auto;
}
.sidebar-arrow {
  color: var(--text3);
  font-size: 12px;
  line-height: 1;
  padding-left: 8px;
  cursor: pointer;
  transition: transform 0.16s ease, color 0.16s ease;
  transform: rotate(-90deg);
}
.sidebar-arrow.open {
  color: var(--text2);
  transform: rotate(0deg);
}
.sidebar-subnav {
  display: none;
  flex-direction: column;
  gap: 6px;
  padding-left: 16px;
  margin-left: 14px;
  border-left: 1px solid rgba(255,255,255,0.06);
}
.sidebar-subnav.open {
  display: flex;
}
.sidebar-subnav button {
  min-height: 34px;
  padding: 9px 12px;
  border-radius: 10px;
  border: 1.5px solid transparent;
  background: var(--surface-soft);
  color: var(--text3);
  font-size: 12.5px;
  line-height: 1.35;
  text-align: left;
  transition: var(--transition);
}
.sidebar-subnav button:hover {
  background: var(--surface-hover);
  color: var(--text2);
  border-color: color-mix(in srgb, var(--border) 65%, transparent);
  transform: translateX(2px);
}
.sidebar-subnav button.active {
  background: linear-gradient(90deg, var(--release-soft), rgba(255,255,255,0.04));
  color: var(--text);
  border-color: var(--release-line);
  box-shadow: inset 2px 0 0 var(--green), 0 8px 18px rgba(0,0,0,0.12);
}
.sidebar-nav button:hover,
.sidebar-nav .nav-link-external:hover {
  background: var(--surface-hover);
  color: var(--text2);
  border-color: color-mix(in srgb, var(--border) 65%, transparent);
  transform: translateX(2px);
}
.sidebar-nav button.active,
.sidebar-nav .nav-link-external.active {
  background: linear-gradient(90deg, var(--release-soft), rgba(255,255,255,0.04));
  color: var(--text);
  border-color: var(--release-line);
  box-shadow: inset 2px 0 0 var(--green), 0 10px 22px rgba(0,0,0,0.14);
}

/* ── Main content ───────────────────────────────────────────────────────── */
main { flex: 1; overflow-y: auto; padding: 32px; min-width: 0; }

.tab-pane { display: none; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.tab-pane.active { display: block; }

body[data-current-tab="admin"] main {
  overflow-y: auto;
  overflow-x: visible;
  padding-inline: clamp(18px, 2.4vw, 32px);
}

body[data-current-tab="admin"] #tab-admin.active {
  display: block;
  height: auto;
  min-height: 100%;
  overflow: visible;
}

body[data-current-tab="admin"] .admin-license-accounts {
  max-width: 100%;
  overflow: visible;
}
body[data-current-tab="admin"] .admin-license-accounts.table-wrap {
  overflow: visible;
  margin-bottom: 32px;
}
body[data-current-tab="admin"] .admin-license-accounts table {
  table-layout: auto;
}

body[data-current-tab="admin"] .admin-diagnostics-card {
  display: none;
}

.page-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 24px;
}
.page-title {
  font-size: 30px;
  font-weight: 700;
  color: var(--text);
  letter-spacing: -0.04em;
  line-height: 1.05;
}
.page-title-muted {
  font-size: 18px;
  color: var(--text3);
  font-weight: 500;
}
.page-subtitle {
  margin-top: 8px;
  font-size: 14px;
  color: var(--text3);
  max-width: 680px;
}
.page-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.live-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1.5px solid var(--release-line);
  background: var(--release-soft);
  color: var(--green);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.live-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: none;
  animation: pulse 1.2s ease-in-out infinite;
}

.muted { color: var(--text2); }

.kv-list {
  display: grid;
  gap: 10px;
  margin-top: 8px;
}

.kv-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid var(--border2);
}

.kv-row span {
  color: var(--text2);
}

.kv-row strong {
  color: var(--text);
  font-weight: 600;
  text-align: right;
}

/* ── KPI Cards ──────────────────────────────────────────────────────────── */
.kpi-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 18px; margin-bottom: 28px;
}
@media (max-width: 1280px) { .kpi-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 900px)  { .kpi-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px)  { .kpi-grid { grid-template-columns: 1fr; } }

.kpi-card {
  background: var(--bg2);
  border: 1.5px solid var(--border);
  border-radius: var(--radius); padding: 22px;
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  position: relative; overflow: hidden;
}
/* верхний блик */
.kpi-card::before {
  content: ''; position: absolute;
  top: 0; left: 15%; right: 15%; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  transition: opacity 0.3s ease;
}
/* нижнее цветное свечение (появляется при hover) */
.kpi-card::after {
  content: ''; position: absolute;
  inset: 0; border-radius: inherit;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.05);
  opacity: 0; transition: opacity 0.3s ease;
}
.kpi-card:hover {
  transform: translateY(-2px);
  border-color: var(--border-hi);
  box-shadow: var(--shadow);
}
.kpi-card:hover::after { opacity: 1; }

.kpi-card .label {
  font-size: 11px; color: var(--text2); font-weight: 600;
  text-transform: uppercase; letter-spacing: 1px; margin-bottom: 14px;
}
.kpi-card .value {
  font-size: 34px; font-weight: 700; color: var(--text);
  font-variant-numeric: tabular-nums; line-height: 1.1;
  text-shadow: 0 2px 12px rgba(0,0,0,0.6);
}
body[data-theme="light"] #kpi-total {
  color: var(--blue);
  text-shadow: none;
}
.kpi-card .value.green  { color: var(--green);  text-shadow: none; }
.kpi-card .value.red    { color: var(--red);    text-shadow: 0 0 20px rgba(239,68,68,0.4); }
.kpi-card .value.yellow { color: var(--yellow); text-shadow: 0 0 20px rgba(245,158,11,0.4); }
.offer-list { display: flex; flex-direction: column; gap: 5px; margin-top: 6px; }
.offer-row  { display: flex; justify-content: space-between; align-items: center; font-size: 13px; }
.offer-name { color: var(--text3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 70%; }
.offer-count{ color: var(--green); font-weight: 700; font-size: 15px; }

/* ── KPI прогресс-бар до цели ──────────────────────────────────────────── */
.kpi-goal {
  margin-top: 14px;
}
.kpi-goal-track {
  height: 3px;
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
  overflow: hidden;
}
.kpi-goal-fill {
  height: 100%;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--release-soft), var(--release-soft));
  transition: width 0.6s cubic-bezier(0.25, 0.8, 0.25, 1);
  max-width: 100%;
  box-shadow: none;
}
.kpi-goal-fill.warn  { background: linear-gradient(90deg, #f59e0b, #fbbf24); box-shadow: 0 0 8px rgba(245,158,11,0.5); }
.kpi-goal-fill.done  { background: linear-gradient(90deg, var(--release-soft), var(--release-soft)); box-shadow: none; }
.kpi-goal-label {
  font-size: 10px; color: var(--text3); margin-top: 5px;
  letter-spacing: 0.5px;
}

.summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 28px;
}
.summary-card {
  background: var(--bg2);
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  padding: 18px 20px;
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
}
.summary-card:hover {
  transform: translateY(-2px);
  border-color: var(--border-hi);
  box-shadow: var(--shadow);
}
.summary-card .label {
  font-size: 11px;
  color: var(--text2);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 10px;
}
.summary-card .value {
  font-size: 28px;
  font-weight: 700;
  color: var(--text);
}
.summary-card .value.green { color: var(--green); }
.summary-card .value.red { color: var(--red); }
.summary-card .value.yellow { color: var(--yellow); }
.summary-card .meta {
  margin-top: 6px;
  font-size: 12px;
  color: var(--text3);
}
.summary-card.compact {
  padding: 14px 16px;
}
.summary-card.compact .value {
  font-size: 22px;
}
.stats-strip {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 18px;
}
.analytics-embedded-block {
  margin: 4px 0 28px;
}

/* ── Action buttons ─────────────────────────────────────────────────────── */
.actions { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 28px; }
.btn-action {
  padding: 12px 22px;
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  background: linear-gradient(180deg, color-mix(in srgb, var(--surface-hover) 90%, transparent), color-mix(in srgb, var(--surface-soft) 100%, transparent)), var(--bg3);
  color: var(--text); font-family: var(--font-sans);
  font-size: 14px; font-weight: 600; cursor: pointer;
  transition: var(--transition); display: flex; align-items: center; gap: 8px;
  min-height: 44px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.14);
}
.btn-action:hover:not(:disabled) {
  background: linear-gradient(180deg, var(--surface-hover), var(--surface-soft)), var(--bg3);
  border-color: var(--border-hi); color: var(--text);
  transform: translateY(-1px);
  box-shadow: 0 14px 24px rgba(0, 0, 0, 0.18);
}
.btn-action:active:not(:disabled) { transform: translateY(0); scale: 0.96; }
.btn-action:disabled { opacity: .35; cursor: not-allowed; }
.btn-action.primary {
  background: linear-gradient(180deg, var(--release-soft), var(--release-soft));
  border: 1.5px solid var(--green); color: var(--on-accent);
  text-shadow: none;
  box-shadow: none;
}
.btn-action.primary:hover:not(:disabled) {
  background: linear-gradient(180deg, var(--release-soft), var(--release-soft));
  border-color: var(--release-line);
  color: var(--on-accent);
}

/* ── Log terminal ───────────────────────────────────────────────────────── */
.log-panel {
  background: var(--bg2);
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}
.log-header {
  display: flex; align-items: center;
  padding: 12px 20px; background: var(--bg3);
  border-bottom: 1.5px solid var(--border); gap: 12px;
}
.log-header .log-title { font-size: 13px; font-weight: 600; color: var(--text); text-transform: uppercase; letter-spacing: 1px; flex: 1; }
.log-header .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 8px var(--green); }
.log-header .dot { box-shadow: none; }
.log-header .dot.off { background: var(--text3); box-shadow: none; }
.log-body {
  height: 360px; overflow-y: auto; padding: 16px 20px;
  font-family: var(--font-mono); font-size: 13px;
  line-height: 1.6;
}
.log-line {
  display: grid;
  grid-template-columns: 94px 18px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 6px 0;
  white-space: normal;
  word-break: break-word;
}
.log-line + .log-line {
  border-top: 1px dashed color-mix(in srgb, var(--border) 78%, transparent);
}
.log-ts {
  display: block;
  min-width: 94px;
  color: var(--text2);
  opacity: 0.92;
  font-variant-numeric: tabular-nums;
}
.log-marker {
  width: 8px;
  height: 8px;
  margin-top: 6px;
  justify-self: center;
  border-radius: 999px;
  background: var(--text3);
}
.log-marker.log-emoji {
  width: 18px;
  height: 18px;
  margin-top: 1px;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: inherit;
  font-size: 15px;
  line-height: 18px;
  text-align: center;
}
.log-msg {
  min-width: 0;
}
.log-line.INFO .log-msg    { color: var(--text2); }
.log-line.INFO .log-marker { background: var(--text3); }
.log-line.WARNING .log-msg { color: var(--yellow); }
.log-line.WARNING .log-marker { background: var(--yellow); }
.log-line.ERROR .log-msg   { color: var(--red); }
.log-line.ERROR .log-marker { background: var(--red); }
.log-line.DEBUG .log-msg   { color: var(--text3); }
.log-line.DEBUG .log-marker { background: var(--text3); }
.log-line.SUCCESS .log-msg { color: var(--green); }
.log-line.SUCCESS .log-marker { background: var(--green); }
.log-line.log-spinner {
  margin: 2px -10px;
  padding: 8px 10px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--blue) 8%, transparent);
}
.log-line.log-spinner .log-ts {
  color: color-mix(in srgb, var(--blue) 68%, var(--text));
  opacity: 1;
}
.log-line.log-spinner .log-msg {
  color: var(--text);
}
.log-line.log-spinner .log-marker {
  position: relative;
  background: var(--blue);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--blue) 18%, transparent);
  animation: none;
}
.log-line.log-spinner .log-marker::after {
  content: '';
  position: absolute;
  inset: -5px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--blue) 40%, transparent);
  opacity: 0.72;
  animation: realtimeSpinnerDotPulse 1.15s ease-in-out infinite;
}
@keyframes realtimeSpinnerDotPulse {
  0%, 100% {
    opacity: 0.48;
    transform: scale(0.92);
  }
  50% {
    opacity: 0.9;
    transform: scale(1.1);
  }
}
.log-line.ERROR.log-spinner {
  background: color-mix(in srgb, var(--red) 9%, transparent);
}
.log-line.ERROR.log-spinner .log-ts,
.log-line.ERROR.log-spinner .log-msg {
  color: color-mix(in srgb, var(--red) 72%, var(--text));
}
.log-line.ERROR.log-spinner .log-marker {
  background: var(--red);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--red) 18%, transparent);
}
.log-line.ERROR.log-spinner .log-marker::after {
  border-color: color-mix(in srgb, var(--red) 42%, transparent);
}
.log-footer {
  display: flex; gap: 12px; padding: 10px 20px; background: var(--surface-soft);
  border-top: 1px solid var(--border);
}
.btn-sm {
  padding: 8px 14px; font-size: 12px; font-weight: 600;
  background: var(--bg3); border: 1.5px solid var(--border);
  border-radius: 999px; color: var(--text2);
  cursor: pointer; transition: var(--transition);
  min-height: 40px;
}

.btn-sm:hover { color: var(--text); background: var(--surface-hover); border-color: var(--border-hi); transform: translateY(-1px); }

/* ── Leads table ────────────────────────────────────────────────────────── */
.filters {
  display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 20px; align-items: center;
}
.filters input, .filters select {
  padding: 9px 12px; background: var(--bg3);
  border: 1.5px solid var(--border); border-radius: var(--radius-sm);
  color: var(--text); font-size: 14px; outline: none; transition: var(--transition);
  font-family: var(--font-sans);
}
.filters input:focus, .filters select:focus { border-color: var(--green); box-shadow: none; }
.filters input[type=search] { width: 260px; }
.table-meta {
  margin: -4px 0 12px;
  font-size: 12px;
  color: var(--text3);
}

.table-wrap {
  background: var(--bg2);
  border: 1.5px solid var(--border);
  box-shadow: var(--shadow-sm);
  border-radius: var(--radius);
  overflow-x: auto; margin-bottom: 16px;
}
#messages-wrap td:nth-child(3) {
  white-space: normal;
  min-width: 280px;
  max-width: 560px;
  overflow-wrap: anywhere;
}
table { width: 100%; border-collapse: collapse; text-align: left; }
thead { background: var(--bg3); }
th {
  padding: 14px 16px; font-size: 12px; font-weight: 600; color: var(--text2);
  text-transform: uppercase; letter-spacing: 0.5px;
  border-bottom: 1.5px solid var(--border); white-space: nowrap;
}
td {
  padding: 12px 16px; border-bottom: 1px solid var(--border2);
  font-size: 14px; color: var(--text);
}
tbody tr { transition: background-color 0.2s; }
tbody tr:last-child td { border-bottom: none; }
tbody tr:hover { background: color-mix(in srgb, var(--surface-hover) 100%, transparent); }
tbody tr.offer-row-disabled td { color: var(--text3); opacity: .72; }
tbody tr.offer-row-disabled td strong { color: var(--text2); }


/* Offers: one long vacancy binding must not stretch a whole table row. */
#offers-table-wrap .offers-data-table {
  table-layout: fixed;
  min-width: 1100px;
}
#offers-table-wrap .offers-data-table tbody tr {
  height: 76px;
}
#offers-table-wrap .offers-data-table td {
  vertical-align: middle;
}
#offers-table-wrap .offers-data-table th:nth-child(1),
#offers-table-wrap .offers-data-table td:nth-child(1) { width: 94px; }
#offers-table-wrap .offers-data-table th:nth-child(2),
#offers-table-wrap .offers-data-table td:nth-child(2) { width: 190px; }
#offers-table-wrap .offers-data-table th:nth-child(3),
#offers-table-wrap .offers-data-table td:nth-child(3) { width: 116px; }
#offers-table-wrap .offers-data-table th:nth-child(4),
#offers-table-wrap .offers-data-table td:nth-child(4) { width: 82px; }
#offers-table-wrap .offers-data-table th:nth-child(6),
#offers-table-wrap .offers-data-table td:nth-child(6) { width: 112px; }
#offers-table-wrap .offers-data-table th:nth-child(7),
#offers-table-wrap .offers-data-table td:nth-child(7) {
  width: 128px;
  white-space: nowrap;
}
#offers-table-wrap .offer-order-cell,
#offers-table-wrap .offer-row-actions { display: flex; align-items: center; gap: 4px; }
#offers-table-wrap .offer-order-cell { justify-content: space-between; font-variant-numeric: tabular-nums; }
#offers-table-wrap .offer-row-actions { justify-content: flex-end; }
#offers-table-wrap .offer-drag-handle,
#offers-table-wrap .offer-row-actions .btn-sm { min-width: 40px; min-height: 40px; padding: 0; border-radius: 8px; }
#offers-table-wrap .offer-drag-handle { border: 1px solid var(--border); background: var(--bg3); color: var(--text2); cursor: grab; font: inherit; font-size: 20px; }
#offers-table-wrap .offer-drag-handle:active { cursor: grabbing; }
#offers-table-wrap .offer-drop-target td { background: color-mix(in srgb, var(--green) 12%, var(--bg2)); }
@media (max-width: 680px), (pointer: coarse) {
  #offers-table-wrap .offer-drag-handle,
  #offers-table-wrap .offer-row-actions .btn-sm { min-width: 44px; min-height: 44px; }
}
#offers-table-wrap .offer-vacancies {
  max-height: 48px;
  overflow-y: auto;
  overflow-x: hidden;
  overflow-wrap: anywhere;
  line-height: 1.45;
  padding-right: 4px;
  scrollbar-width: thin;
}

.badge {
  display: inline-block; padding: 4px 10px;
  border-radius: 20px; font-size: 12px; font-weight: 600; letter-spacing: 0.5px;
}
.badge.new    { background: var(--blue-dim);   color: var(--blue); border: 1.5px solid var(--release-line); }
.badge.scheduled { background: rgba(255, 184, 77, 0.12); color: #ffc46b; border: 1.5px solid rgba(255, 184, 77, 0.24); }
.badge.sent   { background: var(--green-dim);  color: var(--green); border: 1.5px solid var(--release-line); }
.badge.error  { background: var(--red-dim);    color: var(--red); border: 1.5px solid rgba(255, 77, 79, 0.22); }
.badge.dup    { background: var(--bg3); color: var(--text2); border: 1.5px solid var(--border); }

.pagination { display: flex; align-items: center; gap: 12px; justify-content: flex-end; }
.pagination span { font-size: 14px; color: var(--text2); font-weight: 500; }
.pagination button {
  padding: 6px 14px;
  min-height: 40px;
  background: var(--bg-glass); border: 1px solid var(--border);
  border-radius: var(--radius-sm); color: var(--text2); cursor: pointer; font-size: 14px;
  transition: var(--transition);
}
.pagination button:hover:not(:disabled) { color: var(--text); border-color: var(--blue); background: rgba(255,255,255,0.1); }
.pagination button:disabled { opacity: .4; cursor: not-allowed; }

/* ── Charts ─────────────────────────────────────────────────────────────── */
.chart-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 28px; }
@media (max-width: 1200px) { .chart-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 768px)  { .chart-grid { grid-template-columns: 1fr; } }

.chart-card {
  background: var(--bg2);
  border: 1.5px solid var(--border);
  border-radius: var(--radius); padding: 20px;
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  position: relative; overflow: hidden;
}
.chart-card::before {
  content: ''; position: absolute;
  top: 0; left: 20%; right: 20%; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);
}
.chart-card:hover {
  transform: translateY(-2px);
  border-color: var(--border-hi);
  box-shadow: var(--shadow);
}
.chart-card h3 {
  font-size: 13px; font-weight: 600; color: var(--text2);
  text-transform: uppercase; letter-spacing: 1px; margin-bottom: 20px;
}
.chart-wrap { position: relative; height: 200px; width: 100%; }
.chart-card canvas { width: 100% !important; height: 100% !important; }

.network-balances {
  margin: 18px 32px 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
  gap: 12px;
  align-items: start;
}

.network-balances[hidden] {
  display: none !important;
}

.network-balance-panel {
  min-width: 0;
  padding: 16px;
  background: rgba(17, 17, 16, 0.72);
  border-radius: 8px;
  box-shadow: inset 0 0 0 1px var(--border), 0 10px 28px rgba(0, 0, 0, 0.12);
}

.network-balance-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.network-balance-kicker {
  display: block;
  color: var(--text3);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.network-balance-head h2 {
  margin: 2px 0 0;
  color: var(--text);
  font-size: 17px;
  line-height: 1.2;
  text-wrap: balance;
}

.network-balance-status {
  flex: none;
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.05);
  color: var(--text3);
  font-size: 10px;
  font-weight: 700;
}

.network-balance-status.is-ok { color: var(--green); background: var(--release-soft); }
.network-balance-status.is-error { color: var(--red); background: rgba(255, 86, 86, 0.08); }

.network-balance-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.network-balance-card {
  min-width: 0;
  padding: 10px 14px;
  background: rgba(255, 255, 255, 0.025);
  border-radius: 4px;
  box-shadow: inset 0 0 0 1px var(--border);
}

.network-balance-card .label {
  display: block;
  margin-bottom: 3px;
  color: var(--text3);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.network-balance-card .value {
  display: block;
  color: var(--green);
  font-family: "JetBrains Mono", "Consolas", monospace;
  font-size: 18px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.network-balances-refresh {
  width: 44px;
  min-height: 44px;
  border: 0;
  border-radius: 4px;
  background: rgba(17, 17, 16, 0.72);
  box-shadow: inset 0 0 0 1px var(--border);
  color: var(--text2);
  cursor: pointer;
  transition: opacity 160ms ease, transform 160ms ease;
}

.network-balances-refresh:hover {
  opacity: 0.85;
}

.network-balances-refresh:active { transform: scale(0.96); }

@media (max-width: 900px) {
  .network-balances { grid-template-columns: 1fr; margin-inline: 20px; }
  .network-balances-refresh { width: 100%; }
}

@media (max-width: 560px) {
  .network-balance-values { grid-template-columns: 1fr; }
}

.crm-section-grid,
.crm-section-body {
  width: 100%;
}

.crm-leads-head{margin-bottom:8px;align-items:flex-end}.crm-leads-ready{width:fit-content;margin-bottom:12px;padding:5px 10px;border:1px solid var(--release-line);border-radius:4px;background:var(--release-card);color:var(--release-text);font-size:10px;font-weight:700;letter-spacing:.05em}.crm-leads-ready span{display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--release-soft);box-shadow:none}.crm-leads-refresh{min-height:34px}.crm-leads-filters{display:grid;grid-template-columns:1.05fr 1fr 1fr 1.2fr;gap:14px;margin:10px 0}.crm-leads-search,.crm-leads-filter,.crm-leads-dates{height:34px;display:flex;align-items:center;border:1px solid var(--release-line);border-radius:5px;background:var(--release-card);color:var(--release-muted)}.crm-leads-search{gap:8px;padding:0 11px}.crm-leads-search>span{font-size:20px;transform:rotate(-15deg)}.crm-leads-search input,.crm-leads-filter select,.crm-leads-dates input{min-width:0;width:100%;height:100%;border:0;outline:0;background:transparent;color:var(--release-muted);font:inherit}.crm-leads-filter,.crm-leads-dates{padding-left:12px}.crm-leads-filter>span,.crm-leads-dates>span{padding-right:12px;border-right:1px solid var(--release-line);font-size:10px}.crm-leads-filter select{padding:0 10px}.crm-leads-dates input{padding:0 8px;font-size:10px;color-scheme:dark}.crm-leads-dates b{font-weight:400}.crm-leads-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:12px}.crm-leads-kpis article{min-height:68px;display:flex;align-items:center;gap:12px;padding:11px 16px;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card)}.crm-leads-kpis i{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-style:normal;font-size:19px}.crm-leads-kpis i.lime,.crm-leads-kpis i.green{color:var(--release-primary);background:var(--release-soft)}.crm-leads-kpis i.blue{color:var(--release-primary);background:var(--release-soft)}.crm-leads-kpis i.amber{color:#e8ad17;background:rgba(180,125,0,.16)}.crm-leads-kpis small{display:block;margin-bottom:2px;color:var(--release-muted);font-size:11px}.crm-leads-kpis strong{display:block;color:var(--release-text);font-size:22px;line-height:1;font-weight:500;font-variant-numeric:tabular-nums}.crm-leads-table-shell{overflow:hidden;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card)}.crm-leads-table-wrap{overflow:auto}.crm-leads-table-wrap table{width:100%;border-collapse:collapse;table-layout:fixed;color:var(--release-muted);font-size:11px}.crm-leads-table-wrap th{height:34px;padding:0 14px;color:var(--release-muted);font-size:9px;font-weight:600;text-align:left;text-transform:uppercase;letter-spacing:.04em;background:var(--release-card);border-bottom:1px solid var(--release-line)}.crm-leads-table-wrap td{height:31px;padding:0 14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid var(--release-line);font-variant-numeric:tabular-nums}.crm-leads-table-wrap tbody tr:hover{background:var(--release-card)}.crm-leads-table-wrap th:nth-child(1){width:8%}.crm-leads-table-wrap th:nth-child(2){width:20%}.crm-leads-table-wrap th:nth-child(3){width:16%}.crm-leads-table-wrap th:nth-child(4){width:15%}.crm-leads-table-wrap th:nth-child(5){width:26%}.crm-leads-table-wrap th:nth-child(6){width:15%}.crm-leads-table-wrap td:nth-child(2) strong{color:var(--release-primary);font-weight:500}.crm-lead-source{display:inline-flex;align-items:center;gap:7px}.crm-lead-source i{width:16px;height:16px;border-radius:50%;background:var(--release-soft);box-shadow:inset 0 0 0 4px rgba(255,255,255,.08)}.crm-leads-footer{min-height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;color:var(--release-muted);font-size:11px;background:var(--release-card)}@media(max-width:900px){.crm-leads-filters,.crm-leads-kpis{grid-template-columns:1fr 1fr}.crm-leads-table-wrap table{min-width:850px}}@media(max-width:560px){.crm-leads-filters,.crm-leads-kpis{grid-template-columns:1fr}}

.crm-cards-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}
@media (max-width: 1180px) { .crm-cards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .crm-cards-grid { grid-template-columns: 1fr; } }

.crm-stat-card {
  min-width: 0;
  min-height: 126px;
  padding: 18px 18px 16px;
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0)),
    var(--bg2);
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  display: grid;
  align-content: space-between;
}

.crm-stat-card:hover {
  transform: translateY(-1px);
  border-color: var(--border-hi);
  box-shadow: var(--shadow);
}

.crm-stat-label {
  margin-bottom: 12px;
  color: var(--text3);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.crm-stat-value {
  color: var(--text);
  font-size: 30px;
  font-weight: 700;
  line-height: 1.05;
  font-variant-numeric: tabular-nums;
}

.crm-stat-hint {
  margin-top: 8px;
  color: var(--text3);
  font-size: 12px;
}

.crm-table-shell {
  display: grid;
  gap: 10px;
}

.crm-table-wrap {
  border-radius: var(--radius);
  margin-bottom: 0;
  overflow: hidden;
  box-shadow: var(--shadow-sm);
}

.crm-table-wrap td {
  vertical-align: middle;
}

.crm-table-note {
  color: var(--text3);
  font-size: 12px;
}

.crm-settings-form {
  display: grid;
  gap: 16px;
}

.crm-settings-toolbar,
.crm-settings-card {
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0)),
    var(--bg2);
  box-shadow: var(--shadow-sm);
}

.crm-settings-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
}

.crm-settings-title {
  color: var(--text);
  font-size: 16px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.crm-settings-subtitle,
.crm-settings-card__hint,
.crm-settings-help,
.crm-settings-muted {
  color: var(--text3);
  font-size: 12px;
  text-wrap: pretty;
}

.crm-settings-card {
  display: grid;
  gap: 16px;
  padding: 18px 20px;
}

.crm-settings-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.crm-settings-card__title {
  color: var(--text);
  font-size: 15px;
  font-weight: 800;
}

.crm-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.crm-settings-field {
  display: grid;
  gap: 7px;
}

.crm-settings-field--wide {
  grid-column: 1 / -1;
}

.crm-settings-field label {
  color: var(--text2);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.crm-settings-input {
  width: 100%;
  min-height: 44px;
  padding: 9px 12px;
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  background: var(--bg3);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: 14px;
  outline: none;
  transition: var(--transition);
}

.crm-settings-input:focus {
  border-color: var(--green);
  box-shadow: none;
}

.crm-secret-row,
.crm-postback-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.crm-postback-row {
  grid-template-columns: minmax(0, 1fr) auto auto auto;
}

.crm-access-card {
  border-color: color-mix(in srgb, var(--green) 36%, var(--border));
}

.crm-access-token-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.crm-access-networks,
.crm-access-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.crm-access-networks span {
  padding: 5px 9px;
  border: 1px solid var(--border);
  border-radius: 999px;
  color: var(--text2);
  background: var(--bg3);
  font-size: 12px;
  font-weight: 700;
}

.crm-access-actions .btn-sm:active {
  transform: scale(.96);
}

.crm-settings-help code {
  color: var(--text2);
  font-family: var(--font-mono);
  overflow-wrap: anywhere;
}

.crm-postback-input {
  color: var(--text2);
  font-family: var(--font-mono);
  font-size: 12px;
}

@media (max-width: 920px) {
  .crm-settings-toolbar,
  .crm-settings-card__head {
    align-items: stretch;
    flex-direction: column;
  }

  .crm-settings-grid,
  .crm-postback-row,
  .crm-access-token-row {
    grid-template-columns: 1fr;
  }
}

.crm-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid var(--border);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.crm-status--ok {
  color: var(--green);
  background: var(--green-dim);
  border-color: var(--release-line);
}

.crm-status--warn {
  color: var(--yellow);
  background: var(--yellow-dim);
  border-color: rgba(255, 192, 105, .24);
}

.crm-status--bad {
  color: var(--red);
  background: var(--red-dim);
  border-color: rgba(255, 77, 79, .24);
}

.crm-status--muted {
  color: var(--text3);
  background: var(--bg3);
}

.crm-count-badge {
  display: inline-flex;
  min-width: 42px;
  min-height: 28px;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--release-soft);
  box-shadow: none;
  color: var(--green);
  font-family: "JetBrains Mono", "Consolas", monospace;
  font-size: 13px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.crm-link-cell {
  display: inline-block;
  max-width: 360px;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  white-space: nowrap;
}

.crm-empty {
  display: grid;
  gap: 6px;
  place-items: center;
  min-height: 220px;
  padding: 42px 24px;
  border: 1.5px dashed var(--border-hi);
  border-radius: 8px;
  background: rgba(255,255,255,0.015);
  text-align: center;
}

.crm-empty__title {
  color: var(--text2);
  font-size: 16px;
  font-weight: 700;
}

.crm-empty__hint {
  max-width: 520px;
  color: var(--text3);
  font-size: 13px;
}

@media (max-width: 1280px) {
  .crm-cards-grid { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
}

@media (max-width: 760px) {
  .crm-cards-grid { grid-template-columns: 1fr; }
  .crm-link-cell { max-width: 220px; }
}

.vacancies-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 14px;
  margin-top: 16px;
}
.vacancies-ref-head{margin-bottom:18px;align-items:flex-end}.vacancies-ref-count{color:var(--release-primary)}.vacancies-ref-refresh{min-width:92px;min-height:36px}.vacancies-ref-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 1.7fr;gap:14px;margin-bottom:18px}.vacancies-ref-kpis>article{height:116px;padding:20px;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card)}.vacancies-ref-kpis small{display:block;color:var(--release-muted);font-size:11px}.vacancies-ref-kpis strong{display:block;margin:14px 0;color:var(--release-text);font-size:25px;font-weight:500;font-variant-numeric:tabular-nums}.vacancies-ref-kpis>article>span{color:var(--release-primary);font-size:10px}.vacancies-source-kpi>div{display:flex;gap:25px;margin-top:14px}.vacancies-source-kpi>div>span{display:grid;grid-template-columns:34px auto;grid-template-rows:auto auto;column-gap:10px;align-items:center}.vacancies-source-kpi i{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--release-soft);color:var(--release-primary);font-style:normal;font-weight:700}.vacancies-source-kpi b{font-size:13px}.vacancies-source-kpi em{color:var(--release-muted);font-size:9px;font-style:normal}.vacancies-ref-filters{display:grid;grid-template-columns:1.2fr .55fr .55fr;gap:14px;margin-bottom:14px}.vacancies-ref-search{position:relative}.vacancies-ref-search input,.vacancies-ref-filters select{width:100%;height:34px;padding:0 13px;border:1px solid var(--release-line);border-radius:5px;background:var(--release-card);color:var(--release-muted);font:inherit}.vacancies-ref-search span{position:absolute;right:12px;top:5px;color:var(--release-muted);font-size:20px}.vacancies-ref-grid{display:block;margin:0}.vacancies-ref-table{overflow:auto;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card)}.vacancies-ref-table table{width:100%;border-collapse:collapse;table-layout:fixed;color:var(--release-muted);font-size:11px}.vacancies-ref-table th{height:38px;padding:0 13px;color:var(--release-muted);font-size:9px;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--release-line)}.vacancies-ref-table td{height:50px;padding:0 13px;border-bottom:1px solid var(--release-line);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.vacancies-ref-table th:nth-child(1){width:6%}.vacancies-ref-table th:nth-child(2){width:18%}.vacancies-ref-table th:nth-child(3){width:15%}.vacancies-ref-table th:nth-child(4){width:12%}.vacancies-ref-table th:nth-child(5){width:12%}.vacancies-ref-table th:nth-child(6){width:14%}.vacancies-ref-table th:nth-child(7){width:23%}.vacancies-ref-table td:nth-child(2) strong,.vacancies-ref-table td:nth-child(2) small{display:block}.vacancies-ref-table td:nth-child(2) strong{color:var(--release-text);font-weight:500}.vacancies-ref-table td:nth-child(2) small{margin-top:3px;color:var(--release-muted)}.vacancies-ref-source{display:inline-flex;align-items:center;gap:8px}.vacancies-ref-source i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--release-soft);color:var(--release-text);font-style:normal;font-weight:700}.vacancies-ref-state{display:inline-block;padding:4px 9px;border:1px solid var(--release-line);border-radius:5px;background:var(--release-soft);color:var(--release-primary);font-size:9px;text-transform:uppercase}.vacancies-ref-table td:last-child{text-align:right}.vacancies-ref-table td:last-child>button{min-height:34px;padding:0 14px;border:1px solid var(--release-line);border-radius:5px;background:var(--release-card);color:var(--release-text);font-size:10px;transition-property:background-color,transform;transition-duration:120ms}.vacancies-ref-table td:last-child>button:hover{background:var(--release-card)}.vacancies-ref-table td:last-child>button:active{transform:scale(.96)}.vacancies-ref-detail td{height:auto!important;padding:0 13px!important;background:var(--release-card);white-space:normal!important}.vacancies-ref-detail .vacancy-invite-panel{display:grid;grid-template-columns:.7fr 1.4fr 140px;align-items:center;gap:12px;padding:12px 0}@media(max-width:1050px){.vacancies-ref-kpis{grid-template-columns:repeat(2,1fr)}.vacancies-ref-table table{min-width:900px}}@media(max-width:640px){.vacancies-ref-kpis,.vacancies-ref-filters{grid-template-columns:1fr}.vacancies-source-kpi>div{flex-wrap:wrap}.vacancies-ref-detail .vacancy-invite-panel{grid-template-columns:1fr}}

.vacancy-card {
  background: var(--bg2);
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  padding: 18px 20px;
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background-image: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0));
}

.vacancy-card:hover {
  border-color: var(--border-hi);
  box-shadow: var(--shadow);
  transform: translateY(-2px);
}

.vacancy-card-header {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.vacancy-card-id {
  font-size: 12px;
  color: var(--text2);
  font-weight: 600;
  flex-shrink: 0;
}

.vacancy-card-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.3;
}

.vacancy-card-heading {
  display: grid;
  gap: 8px;
  min-width: 0;
  flex: 1;
}

.vacancy-card-state {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--release-soft);
  border: 1px solid var(--release-line);
  color: var(--blue);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.vacancy-card-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.vacancy-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.04);
}

.vacancy-stat-label {
  font-size: 11px;
  color: var(--text2);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.vacancy-stat-value {
  font-size: 22px;
  font-weight: 700;
  color: var(--text);
  font-variant-numeric: tabular-nums;
}

.vacancy-stat-value.green {
  color: var(--green);
}

.vacancy-stat-value.accent {
  color: var(--blue);
}

.vacancy-invite-panel {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--border);
  display: grid;
  gap: 10px;
  margin-top: auto;
}

.vacancy-invite-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: var(--text2);
  font-size: 12px;
}

.vacancy-invite-row strong {
  color: var(--green);
  font-family: var(--font-mono);
  font-size: 14px;
}

.vacancy-invite-count {
  color: var(--text);
  font-size: 12px;
}

.vacancy-invite-label {
  color: var(--text2);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.vacancy-invite-range {
  width: 100%;
  accent-color: var(--green);
}

.vacancy-invite-message {
  width: 100%;
  padding: 10px 12px;
  background: var(--bg3);
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: 13px;
  outline: none;
  transition: var(--transition);
  resize: vertical;
  min-height: 88px;
  line-height: 1.45;
}

.vacancy-invite-message:focus {
  border-color: var(--green);
  box-shadow: none;
}

.vacancy-invite-btn {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border: 1px solid var(--release-line);
  border-radius: 14px;
  background: linear-gradient(180deg, var(--release-soft), var(--release-soft));
  color: var(--on-accent);
  font-weight: 700;
  letter-spacing: 0.2px;
  box-shadow: none;
  transition: var(--transition);
}

.vacancy-invite-btn:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: none;
  filter: brightness(1.04);
}

.vacancy-invite-btn:disabled {
  opacity: 0.75;
  cursor: wait;
}

@media (max-width: 640px) {

  .vacancy-card-stats {
    grid-template-columns: 1fr;
  }
}

/* ── Sessions table ─────────────────────────────────────────────────────── */
.sources-page-head { margin-bottom: 8px; align-items:flex-end; }
.sources-ready { width:fit-content; margin-bottom:12px; padding:5px 10px; border:1px solid var(--release-line); border-radius:4px; background:var(--release-card); color:var(--release-text); font-size:10px; font-weight:700; letter-spacing:.05em; }
.sources-ready span { display:inline-block; width:6px; height:6px; margin-right:7px; border-radius:50%; background:var(--release-soft); box-shadow:none; }
.sources-refresh { min-height:40px; }
.sources-toolbar { display:flex; align-items:center; gap:10px; margin:10px 0; color:var(--release-muted); font-size:11px; }
.source-tab { min-height:34px; display:flex; align-items:center; gap:8px; padding:0 14px; border:1px solid var(--release-line); border-radius:5px; background:var(--release-card); color:var(--release-muted); transition-property:border-color,background-color,transform; transition-duration:120ms; }
.source-tab i,.source-cell i { width:20px; height:20px; display:grid; place-items:center; border-radius:50%; background:var(--release-soft); color:var(--release-text); font-style:normal; font-size:10px; font-weight:700; }
.source-tab.is-active { border-color:var(--release-line); box-shadow:none; }
.source-tab:active:not(:disabled) { transform:scale(.96); }.source-tab:disabled { opacity:.45; cursor:not-allowed; }
.source-overview { padding:14px; border:1px solid var(--release-line); border-radius:6px; background:var(--release-card); }
.source-overview-head { display:flex; justify-content:space-between; align-items:flex-start; }.source-overview-head h2 { margin:0; font-size:15px; }.source-overview-head p,.sources-analysis article>p { margin:4px 0 0; color:var(--release-muted); font-size:10px; }
.source-active { color:var(--release-primary); font-size:9px; font-weight:700; }.source-active i { display:inline-block; width:6px; height:6px; margin-right:6px; border-radius:50%; background:var(--release-soft); }
.source-primary-metrics { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin:12px 0 20px; }
.source-primary-metrics>div { min-height:94px; padding:14px; border:1px solid var(--release-line); border-radius:4px; background:var(--release-card); }.source-primary-metrics span,.source-primary-metrics small { display:block; color:var(--release-muted); font-size:10px; }.source-primary-metrics strong { display:block; margin:9px 0; color:var(--release-primary); font-size:21px; font-weight:500; font-variant-numeric:tabular-nums; }
.source-period-label { margin:0 0 8px; color:var(--release-muted); font-size:10px; }
.source-period-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)) 1.35fr; gap:10px; align-items:stretch; }.source-period-metrics>div { min-height:56px; display:flex; align-items:center; gap:10px; padding:9px 12px; border:1px solid var(--release-line); border-radius:4px; background:var(--release-card); }.source-period-metrics i { width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font-style:normal;font-size:17px}.source-period-metrics i.blue{color:var(--release-primary)}.source-period-metrics i.amber{color:#e8ad17}.source-period-metrics i.green{color:var(--release-primary)}.source-period-metrics i.red{color:#ef5858}.source-period-metrics small{display:block;color:var(--release-muted);font-size:9px}.source-period-metrics strong{display:block;margin-top:2px;color:var(--release-text);font-size:15px;font-weight:500;font-variant-numeric:tabular-nums}.source-period-metrics button{border:1px solid var(--release-line);border-radius:4px;background:var(--release-card);color:var(--release-text);font-size:10px;transition-property:background-color,transform;transition-duration:120ms}.source-period-metrics button:hover{background:var(--release-card)}.source-period-metrics button:active{transform:scale(.96)}
.source-state { margin:10px 0 0;color:var(--release-muted);font-size:10px; }
.sources-analysis { display:grid; grid-template-columns:1.05fr 1fr; gap:12px; margin-top:12px; }.sources-analysis>article { min-height:270px; padding:14px; border:1px solid var(--release-line); border-radius:6px; background:var(--release-card); }.sources-analysis h3{margin:0;font-size:14px}.sources-table{margin-top:18px}.sources-table-row{display:grid;grid-template-columns:1.4fr repeat(4,1fr) .8fr;align-items:center;min-height:42px;border-bottom:1px solid var(--release-line);color:var(--release-muted);font-size:10px}.sources-table-row.head{min-height:30px;color:var(--release-muted);font-size:8px}.sources-table-row strong{font-weight:500;font-variant-numeric:tabular-nums}.source-cell{display:flex;align-items:center;gap:8px}.source-table-active{color:var(--release-primary);font-size:8px}.sources-chart{height:205px;margin-top:10px;display:grid;place-items:center;color:var(--release-muted)}.sources-chart svg{width:100%;height:100%}.chart-grid line{stroke:#1d2220;stroke-width:1}.sources-chart circle{filter:drop-shadow(0 0 4px var(--release-primary))}
@media(max-width:1000px){.source-primary-metrics{grid-template-columns:repeat(3,1fr)}.source-period-metrics{grid-template-columns:repeat(2,1fr)}.sources-analysis{grid-template-columns:1fr}}@media(max-width:640px){.source-primary-metrics,.source-period-metrics{grid-template-columns:1fr}.sources-toolbar{overflow-x:auto}.sources-table{overflow-x:auto}.sources-table-row{min-width:680px}}

.section-title {
  font-size: 16px; font-weight: 700; color: var(--text);
  letter-spacing: 0.5px; margin-bottom: 16px; padding-bottom: 10px;
  border-bottom: 1px solid var(--border);
}

/* ── Settings form ──────────────────────────────────────────────────────── */
#settings-form {
  max-width: 1120px;
}

.settings-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  flex-wrap: wrap;
  max-width: 100%;
}

.settings-toolbar-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.settings-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 100%; margin-bottom: 24px;
}
@media (max-width: 768px) { .settings-grid { grid-template-columns: 1fr; } }


[hidden] {
  display: none !important;
}

.settings-card {
  background: var(--bg2);
  border: 1.5px solid var(--border);
  box-shadow: var(--shadow-sm);
  border-radius: var(--radius); padding: 24px;
  min-width: 0;
  overflow: hidden;
  position: relative;
}
.settings-card::before {
  content: ''; position: absolute;
  top: 0; left: 20%; right: 20%; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.15), transparent);
}
.settings-card pre,
.settings-card code { max-width: 100%; overflow-wrap: anywhere; word-break: break-word; }
#git-status-block { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.settings-card h3 {
  font-size: 14px; font-weight: 600; color: var(--text);
  text-transform: uppercase; letter-spacing: 1px;
  margin-bottom: 20px; padding-bottom: 12px; border-bottom: 1px solid var(--border2);
}
.form-row { margin-bottom: 18px; }
.form-row label {
  display: block; font-size: 13px; color: var(--text2); font-weight: 500; margin-bottom: 8px;
}
.form-row input[type=text], .form-row input[type=password], .form-row input[type=number], .form-row select, .form-row textarea {
  width: 100%; padding: 10px 14px;
  background: var(--bg3); border: 1.5px solid var(--border);
  border-radius: var(--radius-sm); color: var(--text);
  font-size: 14px; outline: none; transition: var(--transition);
  font-family: var(--font-sans);
}
.settings-card:hover {
  border-color: var(--border-hi);
  box-shadow: var(--shadow);
}
.form-row input:focus, .form-row select:focus, .form-row textarea:focus { border-color: var(--green); box-shadow: none; background: var(--bg3); }

.form-row.checkbox-row { display: flex; align-items: center; gap: 12px; }
.form-row.checkbox-row label { margin-bottom: 0; cursor: pointer; color: var(--text); }
.form-row.checkbox-row input[type=checkbox] {
  width: 18px; height: 18px; cursor: pointer; accent-color: var(--blue);
  border-radius: 4px; border: 1px solid var(--border);
}
.form-row.checkbox-row-paired {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 10px;
}
.checkbox-control {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-height: 44px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  background: var(--bg3);
  line-height: 1.35;
  color: var(--text);
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}
.checkbox-control:hover {
  border-color: var(--border-hi);
  background: var(--surface-hover);
}
.checkbox-control:focus-within {
  border-color: var(--blue);
  box-shadow: none;
}
.checkbox-control input[type=checkbox] {
  flex: 0 0 18px;
  margin: 1px 0 0;
}
.checkbox-control span {
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  text-wrap: pretty;
}

/* The visual-mode control combines a stateful track with descriptive copy.
   Keep their layout explicit so the copy cannot flow around the switch. */
.checkbox-control.toggle-switch {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 64px;
  padding: 10px 12px;
}
.checkbox-control.toggle-switch .toggle-switch__track {
  flex: 0 0 104px;
  transition-property: border-color, background-color, box-shadow;
  transition-duration: 160ms;
  transition-timing-function: ease;
}
.checkbox-control.toggle-switch > span:last-child {
  min-width: 0;
  color: var(--text);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.4;
  text-wrap: pretty;
}
.checkbox-control.toggle-switch:hover .toggle-switch__track {
  border-color: var(--border-hi);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.04), 0 5px 14px rgba(0,0,0,0.12);
}
.checkbox-control.toggle-switch input:focus-visible + .toggle-switch__track {
  outline: 2px solid var(--blue);
  outline-offset: 3px;
}
@media (max-width: 360px) {
  .checkbox-control.toggle-switch {
    grid-template-columns: 1fr;
    align-items: start;
  }
}
@media (max-width: 560px) {
  .form-row.checkbox-row-paired { grid-template-columns: 1fr; }
}

.readonly-info {
  background: color-mix(in srgb, var(--bg3) 85%, transparent); border: 1px solid var(--border2);
  border-radius: var(--radius-sm); padding: 16px;
  font-size: 13px; color: var(--text2);
}
.readonly-info div { margin-bottom: 8px; }
.readonly-info div:last-child { margin-bottom: 0; }
.readonly-info span { color: var(--text); font-family: var(--font-mono); background: var(--surface-hover); padding: 2px 6px; border-radius: 6px; }

.diagnostics-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.diagnostics-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.diagnostics-card h3 { margin-bottom: 0; }
.diagnostics-card-wide { grid-column: 1 / -1; }
.diagnostics-hint {
  color: var(--text3);
  font-size: 13px;
  max-width: 780px;
}
.diagnostics-output {
  min-height: 120px;
  white-space: pre-wrap;
  overflow: auto;
  font-family: var(--font-mono);
  line-height: 1.55;
}
.diagnostics-output-small { min-height: 48px; }
.diagnostics-actions { margin: 0; }
.diagnostics-command {
  padding: 13px 15px;
  border: 1px solid var(--border2);
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--bg3) 88%, transparent);
  color: var(--text);
  font-family: var(--font-mono);
  overflow-wrap: anywhere;
}
.diagnostics-inline-form {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto;
  gap: 10px;
  align-items: center;
}
.diagnostics-inline-form input {
  width: 100%;
  padding: 10px 14px;
  background: var(--bg3);
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  color: var(--text);
  font-size: 14px;
  outline: none;
  transition: var(--transition);
}
.diagnostics-inline-form input:focus { border-color: var(--green); box-shadow: none; }

@media (max-width: 980px) {
  .diagnostics-grid { grid-template-columns: 1fr; }
  .diagnostics-inline-form { grid-template-columns: 1fr; }
}

.save-row { margin-top: 24px; display: flex; align-items: center; gap: 16px; }
.save-msg { font-size: 14px; color: var(--green); font-weight: 500; }
.save-msg.err { color: var(--red); }

.maintenance-control {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px;
  margin-bottom: 18px;
  border: 1px solid var(--border2);
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--bg3) 78%, transparent);
}
.maintenance-control__label {
  color: var(--text);
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 4px;
}
.maintenance-control__hint {
  color: var(--text3);
  font-size: 12px;
  line-height: 1.35;
}
.toggle-switch {
  position: relative;
  display: inline-flex;
  cursor: pointer;
  user-select: none;
}

.toggle-switch::after {
  content: "";
  position: absolute;
  inset: 50% auto auto 50%;
  width: max(100%, 44px);
  height: max(100%, 44px);
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.toggle-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.toggle-switch__track {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 104px;
  height: 42px;
  padding: 0 13px;
  border: 1.5px solid var(--border);
  border-radius: 999px;
  background: color-mix(in srgb, var(--bg3) 82%, var(--release-card));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03);
  transition: var(--transition);
}
.toggle-switch__thumb {
  position: absolute;
  left: 4px;
  top: 4px;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: var(--text3);
  box-shadow: 0 6px 16px rgba(0,0,0,0.35);
  transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease;
  z-index: 1;
}
.toggle-switch__off,
.toggle-switch__on {
  position: absolute;
  z-index: 2;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
}
.toggle-switch__off { color: var(--text); right: 12px; }
.toggle-switch__on { color: rgba(255,255,255,0.92); opacity: 0; left: 15px; }
.toggle-switch input:checked + .toggle-switch__track {
  border-color: color-mix(in srgb, var(--green) 70%, var(--release-line));
  background: linear-gradient(135deg, var(--release-soft), var(--green));
}
.toggle-switch input:checked + .toggle-switch__track .toggle-switch__thumb {
  transform: translateX(64px);
  background: var(--release-card);
}
.toggle-switch input:checked + .toggle-switch__track .toggle-switch__off { opacity: 0; }
.toggle-switch input:checked + .toggle-switch__track .toggle-switch__on { opacity: 1; }
.toggle-switch input:disabled + .toggle-switch__track {
  opacity: .62;
  cursor: wait;
}
.offer-toggle .toggle-switch__track {
  width: 86px;
  height: 34px;
  padding: 0 10px;
}
.offer-toggle .toggle-switch__thumb {
  width: 26px;
  height: 26px;
}
.offer-toggle .toggle-switch__off,
.offer-toggle .toggle-switch__on {
  font-size: 9px;
}
.offer-toggle .toggle-switch__off { right: 10px; }
.offer-toggle .toggle-switch__on { left: 12px; }
.offer-toggle input:checked + .toggle-switch__track .toggle-switch__thumb {
  transform: translateX(52px);
}

.admin-license-table {
  width: 100%;
  min-width: 0;
  table-layout: auto;
}
.admin-license-table th,
.admin-license-table td {
  vertical-align: middle;
  padding: 10px 12px;
}
.admin-license-table th:nth-child(1),
.admin-license-table td:nth-child(1) {
  width: clamp(150px, 17vw, 260px);
  overflow-wrap: anywhere;
}
.admin-license-table th:nth-child(2),
.admin-license-table td:nth-child(2) {
  width: 120px;
  white-space: nowrap;
}
.admin-license-table th:nth-child(3),
.admin-license-table td:nth-child(3) {
  width: clamp(170px, 16vw, 240px);
}
.admin-license-table th:nth-child(4),
.admin-license-table td:nth-child(4) {
  width: 120px;
  white-space: nowrap;
}
.admin-license-table th:nth-child(5),
.admin-license-table td:nth-child(5) {
  width: clamp(360px, 31vw, 520px);
}
.admin-license-table th:nth-child(6),
.admin-license-table td:nth-child(6) {
  width: 170px;
  white-space: normal;
}
.admin-license-table th:last-child,
.admin-license-table td:last-child {
  width: 68px;
  text-align: center;
  white-space: nowrap;
}
.admin-license-input {
  width: 100%;
  min-width: 0;
  min-height: 36px;
  padding: 6px 10px;
  background: var(--bg3);
  border: 1px solid var(--border);
  border-radius: 10px;
  color: var(--text);
  font-size: 13px;
}
.admin-license-client,
.admin-license-password {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-license-password-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px 58px 58px;
  align-items: center;
  gap: 6px;
}
.admin-license-password-row .admin-license-password {
  min-width: 0;
}
.admin-license-icon-btn,
.admin-license-action-btn,
.admin-license-delete-btn {
  min-width: 40px;
  min-height: 40px;
  padding: 4px 8px;
}
.admin-license-action-btn {
  width: 58px;
  font-size: 10px;
  line-height: 1;
  white-space: nowrap;
}
@media (max-width: 1180px) {
  .admin-license-password-row {
    grid-template-columns: minmax(0, 1fr) 40px;
  }

  .admin-license-password-row .admin-license-action-btn {
    grid-column: span 2;
  }
}
.admin-license-icon-btn {
  min-width: 40px;
  padding: 4px;
}
.admin-license-delete-btn {
  color: var(--red);
  border-color: color-mix(in srgb, var(--red) 48%, var(--border));
}
.admin-license-delete-btn:hover {
  background: color-mix(in srgb, var(--red) 10%, var(--surface-hover));
  border-color: color-mix(in srgb, var(--red) 72%, var(--border));
}



.manual-lead-form {
  margin: 14px 0 18px;
  padding: 18px;
  border: 1px solid var(--border2);
  border-radius: var(--radius);
  background: linear-gradient(145deg, color-mix(in srgb, var(--bg3) 92%, transparent), color-mix(in srgb, var(--surface-soft) 82%, transparent));
  box-shadow: 0 18px 52px rgba(0,0,0,.18);
}
.manual-lead-form__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}
.manual-lead-form__title {
  font-size: 17px;
  font-weight: 800;
  letter-spacing: -.02em;
}
.manual-lead-form__hint {
  margin-top: 4px;
  color: var(--text3);
  font-size: 12px;
  text-wrap: pretty;
}
.manual-lead-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.manual-lead-grid label {
  display: grid;
  gap: 7px;
  color: var(--text2);
  font-size: 12px;
  font-weight: 800;
}
.manual-lead-grid input {
  width: 100%;
  min-height: 44px;
  padding: 0 13px;
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  background: var(--bg3);
  color: var(--text);
  outline: none;
  transition-property: border-color, box-shadow, background;
  transition-duration: .18s;
}
.manual-lead-grid input:focus {
  border-color: var(--green);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--green) 18%, transparent);
}
.manual-lead-grid__wide {
  grid-column: span 2;
}
.manual-lead-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 16px;
}
@media (max-width: 1180px) {
  .manual-lead-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .manual-lead-grid { grid-template-columns: 1fr; }
  .manual-lead-grid__wide { grid-column: auto; }
  .manual-lead-form__head { flex-direction: column; }
}

/* ── Empty state ────────────────────────────────────────────────────────── */
.empty {
  text-align: center; padding: 60px 20px;
  color: var(--text3); font-size: 15px; font-weight: 500;
}


.va-inline-input {
  width: 100%;
  padding: 10px 12px;
  background: var(--bg3);
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  color: var(--text);
  font-size: 14px;
  font-family: var(--font-sans);
  outline: none;
  transition: var(--transition);
}

.va-source-name {
  padding: 10px 12px;
  border: 1.5px solid transparent;
  border-radius: var(--radius-sm);
  color: var(--text);
  font-size: 14px;
  line-height: 1.4;
  background: color-mix(in srgb, var(--surface-soft) 78%, transparent);
  overflow-wrap: anywhere;
}

.vacancy-alias-input:focus,
.va-inline-input:focus {
  border-color: var(--green);
  box-shadow: none;
}

.vacancy-alias-add-btn {
  justify-content: center;
  min-height: 44px;
}

.vacancy-alias-msg {
  min-height: 20px;
  margin-top: 6px;
  font-size: 0.82rem;
  color: var(--text2);
}

.va-row td {
  vertical-align: middle;
}

.va-actions-cell {
  width: 64px;
  text-align: right;
  white-space: nowrap;
}

.va-delete-btn {
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255, 77, 79, 0.22);
  border-radius: 999px;
  background: rgba(255, 77, 79, 0.08);
  color: var(--red);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  transition: var(--transition);
}

.va-delete-btn:hover {
  background: rgba(255, 77, 79, 0.16);
  border-color: rgba(255, 77, 79, 0.36);
  transform: translateY(-1px);
}

#toast {
  position: fixed;
  right: 22px;
  bottom: 22px;
  min-width: 240px;
  max-width: 380px;
  padding: 13px 15px;
  border-radius: var(--radius-sm);
  background: var(--bg3);
  border: 1px solid var(--border);
  color: var(--text);
  box-shadow: var(--shadow-sm);
  opacity: 0;
  transform: translateY(8px);
  pointer-events: none;
  transition: transform .18s ease, opacity .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
  z-index: 9999;
}

#toast.show {
  opacity: 1;
  transform: translateY(0);
}

/* ── Utility ────────────────────────────────────────────────────────────── */
.notification-widget { position: fixed; right: 22px; bottom: 82px; z-index: 9998; }
.notification-bell { position: relative; display: grid; width: 44px; height: 44px; place-items: center; color: var(--text); background: var(--bg2); border: 1.5px solid var(--border); border-radius: 50%; box-shadow: var(--shadow-sm); cursor: pointer; transition: var(--transition); }
.notification-bell:hover, .notification-bell[aria-expanded="true"] { color: var(--green); border-color: var(--green); transform: translateY(-1px); }
.notification-bell svg { width: 20px; height: 20px; }
.notification-badge { position: absolute; top: -5px; right: -5px; min-width: 18px; height: 18px; padding: 0 4px; display: grid; place-items: center; color: var(--release-text); background: var(--red); border: 2px solid var(--bg); border-radius: 999px; font-size: 10px; font-weight: 800; }
.notification-panel { position: absolute; right: 0; bottom: 54px; left: auto; width: min(360px, calc(100vw - 44px)); overflow: hidden; background: var(--bg2); border: 1.5px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); }
.notification-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border-bottom: 1px solid var(--border); font-size: 13px; }
.notification-panel-head button { padding: 0; color: var(--text3); background: transparent; border: 0; cursor: pointer; font: inherit; }
.notification-panel-head button:hover { color: var(--text); }
.notification-list { max-height: min(340px, 55vh); overflow-y: auto; }
.notification-empty { padding: 18px 14px; color: var(--text3); font-size: 13px; }
.notification-item { padding: 11px 14px; border-bottom: 1px solid var(--border); font-size: 13px; line-height: 1.4; }
.notification-item:last-child { border-bottom: 0; }
.notification-item.error { border-left: 1px solid var(--red); }
.notification-item.warning { border-left: 1px solid var(--yellow); }
.notification-time { display: block; margin-bottom: 3px; color: var(--text3); font-size: 11px; }
@media (max-width: 760px) { .notification-widget { right: 18px; bottom: 76px; } }
.mb-16 { margin-bottom: 16px; }
.text-sm { font-size: 13px; color: var(--text2); }


/* ══════════════════════════════════════════════════════════════════════════
   АДАПТИВНОСТЬ — Мобильные устройства и маленькие экраны
   ══════════════════════════════════════════════════════════════════════════ */

/* Таблеты и маленькие экраны (1024px) */
@media (max-width: 1024px) {
  header {
    padding: 0 16px; gap: 12px;
  }
  .brand-icon { width: 28px; height: 28px; flex-basis: 28px; border-radius: 7px; }
  .logo { font-size: 16px; }
  .last-action { display: none; }

  .sidebar {
    width: 228px;
    flex-basis: 228px;
  }

  main { padding: 16px; }

  .kpi-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .kpi-card { padding: 16px; }
  .kpi-card .label { font-size: 12px; }
  .kpi-card .value { font-size: 24px; }
  .summary-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .stats-strip { grid-template-columns: repeat(2, 1fr); }

  .offer-form { max-width: 100%; }
}

/* Мобильные устройства (768px) */
@media (max-width: 768px) {
  body { font-size: 13px; }

  header {
    padding: 0 12px; height: 56px; gap: 8px;
  }
  .brand-link { gap: 8px; }
  .brand-icon { width: 26px; height: 26px; flex-basis: 26px; }
  .logo { font-size: 14px; }
  .status-badge { font-size: 11px; padding: 4px 10px; }
  .btn-logout { padding: 6px 12px; font-size: 11px; }
  .btn-stop { padding: 6px 12px; font-size: 11px; }

  .app-shell { flex-direction: column; }
  .sidebar {
    width: 100%;
    border-right: none;
    border-bottom: 1.5px solid var(--border);
    padding: 10px 12px;
  }
  .sidebar-group { gap: 8px; }
  .sidebar-nav {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .sidebar-nav button,
  .sidebar-nav .nav-link-external {
    min-height: 34px;
    padding: 7px 10px;
    font-size: 11px;
  }

  main {
    padding: 12px; overflow-y: auto;
  }

  .page-head {
    flex-direction: column;
    align-items: stretch;
    margin-bottom: 16px;
  }

  .page-title { font-size: 20px; }

  .kpi-grid { grid-template-columns: 1fr; gap: 10px; }
  .kpi-card { padding: 12px; }
  .kpi-card .label { font-size: 11px; }
  .kpi-card .value { font-size: 20px; }
  .summary-grid,
  .stats-strip { grid-template-columns: 1fr; gap: 10px; }

  .table-wrapper { overflow-x: auto; }
  table { font-size: 12px; }
  .form-row { margin-bottom: 12px; }
  .form-row input, .form-row select, .form-row textarea {
    padding: 8px 10px; font-size: 13px;
  }

  .offer-form {
    max-width: 100%;
  }

  .offer-form h3 {
    font-size: 14px;
    margin-bottom: 12px;
  }

  .save-row {
    margin-top: 16px; flex-direction: column; gap: 8px;
  }
  .save-row button {
    width: 100%;
  }

  .modal { width: 90vw; max-height: 90vh; }
  .modal-content { padding: 16px; }

  .login-box {
    width: 90vw; max-width: 400px;
    padding: 32px 20px;
  }
  .login-box h1 { font-size: 24px; }
  .login-box .subtitle { font-size: 12px; }
  .login-box input { padding: 10px 12px; }

  /* Скрыть лишние колонки в таблицах */
  table tr th:nth-child(n+5),
  table tr td:nth-child(n+5) {
    display: none;
  }

  /* Сделать кнопки более доступными */
  button { min-height: 40px; }

  /* Обеспечить видимость кнопок */
  .btn-logout,
  .btn-stop {
    white-space: nowrap;
    flex-shrink: 0;
  }
}

/* Очень маленькие экраны (480px) */
@media (max-width: 480px) {
  header {
    gap: 4px;
    padding: 0 8px;
  }
  .brand-link { gap: 6px; }
  .brand-icon { width: 22px; height: 22px; flex-basis: 22px; border-radius: 6px; }
  .logo { font-size: 12px; }
  .status-badge { display: none; }

  .sidebar { padding: 8px; }
  .sidebar-label { padding: 0 4px; }
  .sidebar-userline { margin-inline: 4px; max-width: calc(100% - 8px); }
  .sidebar-nav button, .sidebar-nav .nav-link-external { padding: 6px 8px; font-size: 10px; }

  main {
    padding: 8px;
    min-height: calc(100% - 56px);
    overflow-y: auto;
  }

  .kpi-grid { gap: 8px; }
  .kpi-card { padding: 10px; }
  .kpi-card .value { font-size: 18px; }
  .offer-form h3 { font-size: 13px; }

  /* Модальное окно полноэкранным */
  .modal { width: 100%; max-height: 100%; border-radius: 0; }

  .btn-logout,
  .btn-stop { font-size: 10px; padding: 5px 8px; }

  .save-row {
    flex-direction: column;
  }
  .save-row button {
    width: 100%;
  }
}


/* Offer editor modal: laptop-safe viewport layout */
.offer-modal-overlay {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 100;
  align-items: flex-start;
  justify-content: center;
  padding: clamp(10px, 3dvh, 28px) 16px;
  background: rgba(0, 0, 0, .68);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.offer-modal-card {
  width: min(640px, calc(100vw - 32px));
  max-height: calc(100dvh - clamp(20px, 6dvh, 56px));
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 28px 30px 0;
  box-shadow: var(--shadow), 0 0 0 1px rgba(255,255,255,.06);
}

.offer-modal-title {
  margin: 0 48px 18px 0;
  text-wrap: balance;
}

.offer-modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: var(--text2);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  transition-property: transform, background-color, color, box-shadow;
  transition-duration: .16s;
  transition-timing-function: ease;
}

.offer-modal-close:hover {
  background: rgba(255,255,255,.12);
  color: var(--text);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.12);
}

.offer-modal-close:active {
  scale: 0.96;
}

.offer-modal-body {
  min-height: 0;
  overflow-y: auto;
  padding-right: 4px;
}

.offer-modal-actions {
  position: sticky;
  bottom: 0;
  display: flex;
  gap: 8px;
  padding: 16px 0 22px;
  margin-top: 6px;
  background: transparent;
}

.offer-modal-actions .btn-action {
  min-height: 44px;
}

@media (max-height: 760px) {
  .offer-modal-overlay { padding-block: 8px; }
  .offer-modal-card { max-height: calc(100dvh - 16px); padding: 20px 24px 0; }
  .offer-modal-title { margin-bottom: 12px; }
  .offer-modal-actions { padding-bottom: 14px; }
  .offer-modal-card .form-row { margin-bottom: 10px; }
}

@media (max-width: 560px) {
  .offer-modal-overlay { padding-inline: 0; padding-block: 0; }
  .offer-modal-card {
    width: 100vw;
    max-height: 100dvh;
    border-radius: 0;
    padding-inline: 18px;
  }
  .offer-modal-actions { flex-direction: column; }
  .offer-modal-actions .btn-action { width: 100%; }
}

/* ── Дополнительные адаптивные улучшения ─────────────────────────────────── */

@media (max-width: 768px) {
  #app {
    z-index: auto;
  }

  /* Кнопка "Добавить оффер" и подобные */
  div[style*="justify-content: space-between"] {
    flex-wrap: wrap !important;
    gap: 12px !important;
    align-items: flex-start !important;
  }

  .section-title {
    min-width: 100%;
    flex-basis: 100%;
  }

  .btn-action {
    font-size: 12px;
    padding: 8px 12px;
    min-height: 36px;
  }

  .btn-action.primary {
    width: 100%;
  }

  .va-actions-cell {
    width: 52px;
  }
}

@media (max-width: 1023px) {
  header {
    padding: 0 16px;
    gap: 12px;
  }

  .sidebar {
    width: 228px;
    flex-basis: 228px;
  }
}

@media (max-width: 768px) {
  body.mobile-sidebar-open {
    overflow: hidden;
  }

  body.mobile-sidebar-open::before {
    content: '';
    position: fixed;
    inset: 0;
    z-index: 20;
    background: rgba(0, 0, 0, 0.58);
  }

  header {
    height: 56px;
    padding: 0 12px;
    gap: 8px;
  }

  .mobile-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border: 1.5px solid var(--border);
    border-radius: var(--radius-sm);
    background: linear-gradient(180deg, var(--surface-hover), var(--surface-soft));
    color: var(--text);
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    transition: var(--transition);
  }

  .mobile-menu-toggle:active {
    background: var(--bg3);
  }

  .brand-link {
    gap: 7px;
    min-width: 0;
    flex: 1 1 auto;
  }

  .brand-icon {
    width: 26px;
    height: 26px;
    flex-basis: 26px;
  }

  .logo {
    font-size: 15px;
    white-space: nowrap;
  }

  .status-badge {
    display: flex;
    gap: 6px;
    padding: 4px 8px;
    font-size: 10px;
    letter-spacing: 0.03em;
  }

  .status-dot {
    width: 7px;
    height: 7px;
  }

  .theme-toggle {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    margin-left: 0;
  }

  header > .btn-logout {
    display: none;
  }

  .btn-stop {
    width: 44px;
    min-height: 44px;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    text-indent: -999px;
    flex: 0 0 44px;
    position: relative;
  }

  .btn-stop::after {
    content: '■';
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-indent: 0;
    font-size: 13px;
  }

  .app-shell {
    flex-direction: row;
  }

  .sidebar {
    position: fixed;
    top: 56px;
    bottom: 0;
    left: 0;
    z-index: 30;
    width: min(82vw, 320px);
    height: auto;
    padding: 16px;
    overflow-y: auto;
    border-right: 1.5px solid var(--border);
    border-bottom: 0;
    box-shadow: var(--shadow);
    transform: translateX(-100%);
    transition: transform 0.22s ease;
  }

  body.mobile-sidebar-open .sidebar {
    transform: translateX(0);
  }

  .sidebar-group {
    gap: 8px;
  }

  .sidebar-nav {
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 8px;
  }

  .sidebar-nav button,
  .sidebar-nav .nav-link-external,
  .sidebar-subnav button {
    min-height: 44px;
    padding: 10px 14px;
    font-size: 13px;
  }

  .mobile-sidebar-logout {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    width: 100%;
    margin-top: 12px;
  }

  main {
    padding: 16px;
    width: 100%;
  }

  .page-head {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .page-actions,
  .actions,
  .log-footer,
  .save-row {
    gap: 8px;
  }

  .page-title {
    font-size: 22px;
  }

  .settings-grid {
    grid-template-columns: 1fr;
    max-width: none;
    gap: 16px;
  }

  .settings-card {
    padding: 18px;
  }

  .login-box {
    width: 100%;
    max-width: 400px;
    padding: 24px;
  }

  .filters {
    flex-wrap: wrap;
    gap: 8px;
  }

  .filters input,
  .filters select,
  .filters input[type=search],
  .filters button {
    width: 100%;
    min-height: 44px;
    font-size: 16px;
  }

  .filters .btn-sm {
    margin-left: 0 !important;
  }

  .table-wrap,
  .table-wrapper {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  table {
    min-width: 760px;
  }

  table tr th:nth-child(n+5),
  table tr td:nth-child(n+5) {
    display: table-cell;
  }

  th,
  td {
    min-width: 120px;
    white-space: nowrap;
  }

  td {
    white-space: normal;
  }

  button,
  .btn-sm,
  .btn-action,
  .pagination button,
  .lovko-refresh-btn,
  .login-box button[type=submit] {
    min-height: 44px;
  }

  .btn-action {
    padding: 10px 14px;
    font-size: 13px;
  }

  input,
  select,
  textarea,
  .form-row input[type=text],
  .form-row input[type=password],
  .form-row input[type=number],
  .form-row select,
  .form-row textarea,
  .login-box input {
    font-size: 16px;
  }
}

@keyframes statusSpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}


/* UI polish: make-interfaces-feel-better */
.page-title, .section-title, .card-title, .modal-title { text-wrap: balance; }
.page-subtitle, .muted, .setting-help, .crm-settings-card__hint, .crm-settings-subtitle { text-wrap: pretty; }
.stat-value, .mono, table td, .crm-status, .job-timer { font-variant-numeric: tabular-nums; }
img, .avatar, .brand-icon { outline: 1px solid rgba(255, 255, 255, 0.1); outline-offset: -1px; }
body[data-theme="light"] img, body[data-theme="light"] .avatar, body[data-theme="light"] .brand-icon { outline-color: rgba(0, 0, 0, 0.1); }
button, .btn-sm, .btn-action, .btn-logout, .btn-stop, .theme-toggle, .password-toggle { transition-property: transform, scale, background-color, color, box-shadow, border-color, opacity; transition-duration: 0.16s; transition-timing-function: ease; }

.page-head, .crm-section-head { align-items: flex-start; }
.crm-stat-label { min-height: 28px; text-wrap: balance; }
.crm-stat-value { font-variant-numeric: tabular-nums; }
.table-wrap { border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); }
.table-wrap table { width: 100%; }
.table-wrap:not(.admin-license-accounts) table { table-layout: fixed; }


/* Leads table: keep dense CRM data readable on laptop widths. */
#leads-table-wrap {
  overflow-x: auto;
  overflow-y: auto;
  max-height: calc(100vh - 330px);
  min-height: 280px;
  scrollbar-gutter: stable;
}

#leads-table-wrap .leads-data-table {
  /* Keep declared column tracks from compressing and clipping status badges. */
  min-width: 1460px;
  table-layout: fixed;
}

.leads-data-table th,
.leads-data-table td {
  vertical-align: middle;
  line-height: 1.45;
}

.leads-data-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--bg3);
}

.leads-data-table .lead-cell-id,
.leads-data-table .lead-cell-phone,
.leads-data-table .lead-cell-age,
.leads-data-table .lead-cell-source,
.leads-data-table .lead-cell-status,
.leads-data-table .lead-cell-date,
.leads-data-table .lead-cell-action {
  white-space: nowrap;
}

.leads-data-table .lead-cell-phone,
.leads-data-table .lead-cell-id,
.leads-data-table .lead-cell-date {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}

.leads-data-table .lead-cell-email,
.leads-data-table .lead-cell-resume {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.leads-data-table .lead-cell-name,
.leads-data-table .lead-cell-vacancy,
.leads-data-table .lead-cell-city {
  overflow-wrap: anywhere;
}

.leads-data-table th:nth-child(1), .leads-data-table td:nth-child(1) { width: 72px; }
.leads-data-table th:nth-child(2), .leads-data-table td:nth-child(2) { width: 155px; }
.leads-data-table th:nth-child(3), .leads-data-table td:nth-child(3) { width: 102px; }
.leads-data-table th:nth-child(4), .leads-data-table td:nth-child(4) { width: 170px; }
.leads-data-table th:nth-child(5), .leads-data-table td:nth-child(5) { width: 175px; }
.leads-data-table th:nth-child(6), .leads-data-table td:nth-child(6) { width: 100px; }
.leads-data-table th:nth-child(7), .leads-data-table td:nth-child(7) { width: 112px; }
.leads-data-table th:nth-child(8), .leads-data-table td:nth-child(8) { width: 72px; }
.leads-data-table th:nth-child(9), .leads-data-table td:nth-child(9) { width: 88px; }
.leads-data-table th:nth-child(10), .leads-data-table td:nth-child(10) { width: 92px; }
.leads-data-table th:nth-child(11), .leads-data-table td:nth-child(11) { width: 132px; }
.leads-data-table th:nth-child(12), .leads-data-table td:nth-child(12) { width: 124px; }
.leads-data-table th:nth-child(13), .leads-data-table td:nth-child(13) { width: 55px; }

@media (max-height: 760px) {
  #leads-table-wrap {
    max-height: calc(100vh - 260px);
    min-height: 220px;
  }
}


/* Messenger CRM table: fixed tracks prevent account paths from colliding with channel/status columns. */
.crm-messengers-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 28px;
}
.crm-messengers-stats .crm-stat-card {
  min-height: 124px;
  border-radius: 22px;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.08),
    0 16px 34px rgba(0,0,0,.18);
}
.crm-messengers-stats .crm-stat-value {
  font-size: clamp(32px, 4vw, 42px);
  letter-spacing: -.04em;
}
.crm-messengers-wrap {
  margin-top: 0;
  border-radius: 24px;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.075),
    0 24px 54px rgba(0,0,0,.22);
}
.crm-messengers-table {
  width: 100%;
  min-width: 1060px;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
}
.crm-messengers-table .crm-col-id { width: 72px; }
.crm-messengers-table .crm-col-account { width: 38%; }
.crm-messengers-table .crm-col-channel { width: 142px; }
.crm-messengers-table .crm-col-status { width: 150px; }
.crm-messengers-table .crm-col-dialogs { width: 126px; }
.crm-messengers-table .crm-col-checked { width: 230px; }
.crm-messengers-table th,
.crm-messengers-table td {
  overflow: hidden;
  vertical-align: middle;
}
.crm-messengers-table th {
  height: 58px;
  color: var(--text2);
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.crm-messengers-table td {
  padding-top: 17px;
  padding-bottom: 17px;
}
.crm-messengers-table tbody tr {
  background: rgba(255,255,255,0);
  transition-property: background-color, box-shadow;
  transition-duration: .16s;
  transition-timing-function: ease;
}
.crm-messengers-table tbody tr:hover {
  background: var(--release-soft);
  box-shadow: none;
}
.crm-cell-account {
  min-width: 0;
  padding-right: 24px;
}
.crm-account-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 700;
  letter-spacing: -.01em;
}
.crm-account-path {
  max-width: 100%;
  display: inline-grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 7px;
  align-items: center;
  margin-top: 7px;
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  color: var(--text2);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.2;
}
.crm-account-path__label {
  color: var(--green);
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.crm-account-path__value {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  direction: rtl;
  text-align: left;
}
.crm-channel-badge {
  display: inline-flex;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 0 12px;
  background: var(--release-soft);
  color: var(--release-primary);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
  box-shadow: none;
}
.crm-channel-badge--max {
  background: rgba(255,184,77,.10);
  color: #ffc46b;
  box-shadow: inset 0 0 0 1px rgba(255,184,77,.26);
}
.crm-cell-channel,
.crm-cell-number,
.crm-cell-id,
.crm-cell-checked {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.crm-cell-number {
  color: var(--text);
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -.03em;
}
.crm-cell-checked {
  color: var(--text);
}
.crm-cell-error {
  color: var(--red);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.notification-item.error { position: relative; padding-right: 136px; }
.notification-report { position:absolute; right:10px; top:50%; transform:translateY(-50%); padding:5px 7px; color:var(--red); border:1px solid var(--red); border-radius:6px; background:transparent; font-size:10px; line-height:1.15; cursor:pointer; }
.notification-report:disabled { opacity:.55; cursor:wait; }
@media (max-width: 420px) { .notification-item.error { padding-right:14px; } .notification-report { position:static; transform:none; display:block; margin-top:8px; } }

/* Reference dashboard shell and leads composition (1280x720 target). */
:root{--bg:var(--release-bg);--bg2:var(--release-bg);--bg3:var(--release-bg);--surface-soft:var(--release-soft);--surface-hover:var(--release-soft);--border:var(--release-line);--border-hi:var(--release-line);--border2:var(--release-line);--text:var(--release-text);--text2:var(--release-muted);--text3:var(--release-muted);--green:var(--release-primary);--green-dim:var(--release-soft);--yellow:#ffb000;--radius:10px;--radius-sm:8px;--shadow:0 14px 34px rgba(0,0,0,.34);--shadow-sm:0 7px 20px rgba(0,0,0,.22)}
html,body{background:var(--release-card);font-size:12px;line-height:1.45}
#app{position:relative;background:var(--release-card)}.app-shell{margin-left:195px}
header{height:59px;min-height:59px;margin-left:195px;padding:0 13px 0 18px;background:var(--release-bg);border-bottom:1px solid var(--release-line);box-shadow:none}header .brand-link,header .home-arrow{display:none}header .status-badge{margin-right:auto}
.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:195px;height:100vh;flex-basis:195px;padding:14px 11px 11px;gap:9px;background:var(--release-card);border-right:1px solid var(--release-line);box-shadow:10px 0 34px rgba(0,0,0,.18)}
.sidebar-brand{display:flex;align-items:center;gap:9px;min-height:41px;padding:2px 7px 9px;color:var(--text);text-decoration:none}.sidebar-brand__icon{width:30px;height:30px;border-radius:7px;box-shadow:none}.sidebar-brand__name{font-size:18px;font-weight:700;letter-spacing:-.04em}.sidebar-brand__name span{color:var(--green)}
.sidebar-group{gap:4px;padding-top:1px}.sidebar-group+.sidebar-group{padding-top:7px;border-top:0}.sidebar-label{padding:0 7px;font-size:9px;letter-spacing:.09em;color:var(--release-muted)}.sidebar-nav,.sidebar-expand{gap:3px}.sidebar-nav button,.sidebar-nav .nav-link-external{min-height:35px;padding:7px 10px;border-radius:8px;border-width:1px;color:var(--release-muted);background:rgba(255,255,255,.012);font-size:11px}.sidebar-nav button.active,.sidebar-nav .nav-link-external.active,.sidebar-parent.active{color:var(--release-text);border-color:var(--release-line);background:linear-gradient(90deg,var(--release-soft),var(--release-soft));box-shadow:none}.sidebar-nav button.active .nav-icon,.sidebar-parent.active .nav-icon{color:var(--green)}.sidebar-subnav{gap:2px;margin-left:8px;padding-left:11px;border-left-color:var(--release-line)}.sidebar-subnav button{min-height:27px;padding:5px 9px;border-radius:6px;font-size:10px}.nav-icon{width:14px;height:14px;flex-basis:14px}
main{padding:16px 18px 25px}.tab-pane{animation-duration:.18s}.page-head{margin-bottom:13px;align-items:center}.page-title{font-size:23px;letter-spacing:-.035em}.page-title-muted{color:var(--green);font-size:15px}.page-subtitle{margin-top:3px;font-size:10px}
.status-badge{min-width:108px;padding:6px 11px;border:1px solid var(--release-line);border-radius:8px;background:var(--release-card);font-size:10px}.status-dot{width:6px;height:6px}.status-dot.idle{box-shadow:none}.theme-toggle,.btn-logout,.btn-stop,.btn-sm,.btn-action{border-width:1px;border-radius:8px}.theme-toggle{width:34px;height:34px}.btn-logout,.btn-stop{padding:8px 13px;font-size:10px}
#tab-leads .kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:11px}#tab-leads .kpi-card{min-height:109px;padding:13px 15px;border-width:1px;border-radius:9px;background:linear-gradient(145deg,rgba(255,255,255,.018),transparent 55%),var(--release-card);box-shadow:inset 0 1px rgba(255,255,255,.018),0 6px 20px rgba(0,0,0,.19)}#tab-leads .kpi-card::before{left:10%;right:10%;background:linear-gradient(90deg,transparent,var(--release-soft),transparent)}#tab-leads .kpi-card .label{margin-bottom:10px;font-size:9px;letter-spacing:.05em}#tab-leads .kpi-card .value{font-size:27px;line-height:1}#tab-leads .kpi-card .value.green,#kpi-total{color:var(--green);text-shadow:none}#tab-leads .kpi-card .value.yellow{color:var(--yellow);text-shadow:0 0 16px rgba(255,176,0,.15)}.offer-row{font-size:10px}.offer-count{font-size:11px}.kpi-goal{margin-top:8px}.kpi-goal-track{height:5px;background:var(--release-card)}.kpi-goal-fill{background:var(--green);box-shadow:none}.kpi-goal-label{margin-top:5px;font-size:9px}
#tab-leads>.actions{gap:8px;margin-bottom:9px}.btn-action{min-height:33px;padding:7px 14px;font-size:10px;text-transform:uppercase;letter-spacing:.035em}.btn-action.primary{color:var(--release-text);background:var(--green);border-color:var(--green);box-shadow:none}
.log-panel,.table-wrap,.settings-card,.crm-stat-card,.chart-card{border-width:1px;border-radius:9px;background:var(--release-card);box-shadow:0 5px 18px rgba(0,0,0,.2)}#tab-leads .log-panel{margin-bottom:10px}.log-header{min-height:36px;padding:5px 9px;border-bottom-color:var(--release-line)}.log-header .log-title{font-size:10px;letter-spacing:.055em}.log-header .dot{background:var(--green)}#tab-leads .log-body{height:130px;padding:6px 10px;font-size:9px;line-height:1.3}.log-line{min-height:17px;padding:2px 0}.log-footer{min-height:23px;padding:3px 10px}.section-title{font-size:12px}.filters{gap:6px;margin:8px 0}.filters input,.filters select{min-height:31px;padding:5px 8px;border-radius:7px;font-size:10px}.table-wrap th{padding:7px 8px;font-size:8px;letter-spacing:.05em}.table-wrap td{padding:7px 8px;font-size:9px}
@media(min-width:768px) and (max-width:980px){.app-shell,header{margin-left:0}.sidebar{width:220px;transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.kpi-grid,#tab-leads .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}header .mobile-menu-toggle{display:inline-flex}}
@media(max-width:560px){main{padding:13px 10px 24px}.kpi-grid,#tab-leads .kpi-grid{grid-template-columns:1fr}header .btn-logout{display:none}}

/* Reference dashboard v2: real-state header and mailing composition. */
.header-range,.header-user{display:flex;align-items:center;gap:7px;height:34px;padding:0 10px;border:1px solid var(--release-line);border-radius:8px;background:var(--release-card);color:var(--text2);font-size:10px}.header-range{margin-left:auto}.header-range__icon{color:var(--text3)}.header-user{max-width:150px}.header-user__avatar{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--release-card);color:var(--text);font-size:9px;font-weight:700}.header-user #header-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.notification-bell{width:34px;height:34px;border-radius:8px;background:var(--release-card);border-color:var(--release-line)}
.mailing-overview{display:grid;grid-template-columns:345px minmax(0,1fr);min-height:155px;margin-bottom:9px;border:1px solid var(--release-line);border-radius:9px;background:var(--release-card);overflow:hidden}.mailing-overview__summary{display:grid;grid-template-columns:120px 1fr;grid-template-rows:auto 1fr;padding:11px 12px;border-right:1px solid var(--release-line)}.mailing-overview__heading{grid-column:1/-1;display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;text-transform:uppercase}.mailing-overview__icon{color:var(--green)}.mailing-donut{position:relative;display:grid;place-items:center;width:103px;height:103px;margin-top:6px;border-radius:50%;background:conic-gradient(var(--green) var(--mailing-progress),var(--release-soft) 0);box-shadow:none}.mailing-donut::before{content:"";position:absolute;width:78px;height:78px;border-radius:50%;background:var(--release-card)}.mailing-donut>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.mailing-donut strong{font-size:18px}.mailing-donut span{font-size:8px;color:var(--text3)}.mailing-metrics{display:grid;gap:6px;align-content:center}.mailing-metrics>div{display:flex;align-items:baseline;justify-content:space-between;padding:7px 8px;border:1px solid var(--release-line);border-radius:7px;background:var(--release-card)}.mailing-metrics strong{color:var(--green);font-size:13px}.mailing-metrics span{color:var(--text3);font-size:8px;text-transform:uppercase}.mailing-recent{padding:11px 13px}.mailing-recent__head{display:flex;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--release-line)}.mailing-recent__head strong{font-size:10px;text-transform:uppercase}.mailing-recent__head span{font-size:8px;color:var(--green)}.mailing-recent__table{min-height:105px;display:grid;place-items:center}.mailing-empty{color:var(--text3);font-size:9px;text-align:center}
#tab-leads .log-body{height:92px}.section-title[style]{margin-top:13px!important}
@media(max-width:980px){.header-range{display:none}.mailing-overview{grid-template-columns:1fr}.mailing-overview__summary{border-right:0;border-bottom:1px solid var(--release-line)}}
@media(max-width:560px){.header-user{display:none}.mailing-overview__summary{grid-template-columns:110px 1fr}}

/* Reference dashboard v2 audit completion. */
header .notification-widget{position:relative;z-index:35;top:auto;right:auto}header .notification-bell{display:grid;place-items:center}.notification-panel{top:40px;right:0}
.page-actions .btn-stop{height:34px;padding:0 14px}.kpi-sparkline{position:absolute;inset:auto 10px 8px 10px;height:28px;opacity:.55;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 30'%3E%3Cpath d='M0 25 L20 20 L38 23 L57 12 L76 17 L96 7 L116 15 L136 11 L158 20 L180 8' fill='none' stroke='%237cff00' stroke-width='1.4'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}#tab-leads .kpi-card:nth-child(3) .kpi-sparkline{filter:hue-rotate(295deg)}#tab-leads .kpi-card .value,#tab-leads .offer-list{position:relative;z-index:1}#kpi-sheets-card{grid-column:1/-1;min-height:auto!important}
.sidebar-health{display:flex;align-items:center;gap:8px;margin:5px 2px 3px;padding:9px 10px;border:1px solid var(--release-line);border-radius:8px;background:var(--release-card)}.sidebar-health__pulse{width:14px;height:14px;border:2px solid var(--green);border-radius:50%;box-shadow:none}.sidebar-health span:last-child{display:flex;flex-direction:column}.sidebar-health strong{font-size:9px}.sidebar-health small{color:var(--green);font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:125px}

/* Reference dashboard v3: collision-free mailing grid and 720px rhythm. */
.sidebar-expand:has(.sidebar-parent.active)>.sidebar-subnav,.sidebar-subnav.open{display:flex}.system-health-card{flex:0 0 auto}
.mailing-overview{grid-template-columns:360px minmax(0,1fr);min-height:142px}.mailing-overview__summary{display:flex;flex-direction:column;min-width:0;padding:9px 11px}.mailing-overview__body{display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px;align-items:center;min-width:0}.mailing-donut{width:96px;height:96px;margin:4px auto 0}.mailing-donut::before{width:72px;height:72px}.mailing-metrics{min-width:0;gap:5px}.mailing-metrics>div{min-width:0;padding:6px 7px}.mailing-metrics span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mailing-recent{min-width:0;padding:9px 12px}.mailing-recent__table{display:block;min-height:100px}.mailing-table-row{display:grid;grid-template-columns:minmax(105px,1.5fr) minmax(68px,.8fr) minmax(75px,.9fr) minmax(70px,.8fr) minmax(62px,.7fr) 45px;gap:8px;align-items:center;padding:7px 8px}.mailing-table-head{color:var(--text3);font-size:8px;text-transform:uppercase;border-bottom:1px solid var(--release-line)}.mailing-table-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mailing-empty{grid-column:1/-1;padding:28px 8px 12px;text-align:center}.mailing-recent__head{padding-bottom:6px}#tab-leads .log-panel{margin-bottom:22px}#tab-leads .log-body{height:84px}#tab-leads>.section-title{margin-top:24px!important}
@media(max-width:1180px){.mailing-overview{grid-template-columns:335px minmax(0,1fr)}.mailing-table-row{grid-template-columns:minmax(90px,1.3fr) 60px 66px 64px 55px 38px;gap:5px}}

/* Reference dashboard v4: exact 1280x720 vertical geometry. */
.header-user__copy{display:flex;min-width:0;flex-direction:column;line-height:1.05}.header-user__copy small{margin-top:3px;color:var(--text3);font-size:8px;text-transform:capitalize}.header-user__copy #header-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#tab-leads .kpi-card{min-height:126px}#tab-leads .kpi-grid{margin-bottom:13px}#tab-leads>.actions{margin-bottom:10px}.mailing-overview{min-height:170px}.mailing-recent__table{min-height:125px}#tab-leads .log-panel{min-height:195px;margin-bottom:25px}#tab-leads .log-body{height:141px}#tab-leads>.section-title{margin-top:28px!important}

/* Reference polish: KPI hierarchy, action strip and live terminal state. */
#tab-leads .kpi-card{overflow:hidden}#tab-leads .kpi-card .label{position:relative;padding-left:34px;min-height:24px;display:flex;align-items:center}#tab-leads .kpi-card .label::before{content:"";position:absolute;left:0;top:50%;width:24px;height:24px;transform:translateY(-50%);border:1px solid var(--release-line);border-radius:6px;background:var(--release-soft);box-shadow:none}#tab-leads .kpi-card .label::after{position:absolute;left:7px;top:50%;transform:translateY(-54%);color:var(--green);font-size:15px;line-height:1}#tab-leads .kpi-card:nth-child(1) .label::after{content:"◌"}#tab-leads .kpi-card:nth-child(2) .label::after{content:"◎"}#tab-leads .kpi-card:nth-child(3) .label::before{border-color:rgba(255,176,0,.25);background:rgba(255,176,0,.045)}#tab-leads .kpi-card:nth-child(3) .label::after{content:"▣";color:var(--yellow)}#tab-leads .kpi-card:nth-child(4) .label::after{content:"◇"}.kpi-comparison{position:absolute;left:15px;right:15px;bottom:8px;color:var(--text3);font-size:9px;letter-spacing:.01em;z-index:2}.kpi-comparison::before{content:"↗";margin-right:5px;color:var(--green);font-size:11px}#tab-leads .kpi-card .kpi-sparkline{bottom:28px;height:22px}#tab-leads .kpi-card:has(.kpi-goal) .kpi-sparkline{display:none}#tab-leads>.actions{display:flex;align-items:center;width:100%}.actions-refresh{margin-left:auto;color:var(--green)!important}.mailing-overview__heading{letter-spacing:.03em}.mailing-overview__icon{display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--release-line);border-radius:6px;background:var(--release-soft);font-size:13px}.mailing-metrics>div::before{content:"";width:6px;height:6px;margin-right:7px;border:1px solid var(--green);border-radius:50%;box-shadow:none}.mailing-metrics>div:nth-child(2)::before{border-radius:2px}.mailing-metrics>div:nth-child(3)::before{border-color:var(--yellow);box-shadow:0 0 8px rgba(255,176,0,.25)}.mailing-metrics>div strong{margin-right:auto}.mailing-metrics>div span{margin-left:8px}.log-footer{display:flex;align-items:center;justify-content:space-between}.log-connection-state{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-size:9px}.log-connection-state::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}@media(max-width:560px){.actions-refresh{margin-left:0}.kpi-comparison{font-size:8px}}

/* Flat reference sidebar navigation. */
.sidebar-nav-reference{display:flex;flex-direction:column;gap:3px;padding:8px 2px}.sidebar-nav-reference button{min-height:39px;background:transparent;border-color:transparent;color:var(--release-text);font-size:13px}.sidebar-nav-reference button:hover{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.04)}.sidebar-nav-reference button.active{border-color:var(--release-line);background:linear-gradient(90deg,var(--release-soft),var(--release-soft));box-shadow:none;color:var(--release-text)}.sidebar-nav-reference .nav-ref-icon{display:inline-grid;place-items:center;width:20px;color:var(--release-text);font-size:20px;line-height:1}.sidebar-nav-reference button.active .nav-ref-icon{color:var(--green)}.sidebar-nav-reference .nav-label{gap:12px}.sidebar .sidebar-group-bottom{margin-top:auto}
/* Flat reference sidebar navigation. */
.sidebar-nav-reference{display:flex;flex-direction:column;gap:3px;padding:8px 2px}.sidebar-nav-reference button{min-height:39px;background:transparent;border-color:transparent;color:var(--release-text);font-size:13px}.sidebar-nav-reference button:hover{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.04)}.sidebar-nav-reference button.active{border-color:var(--release-line);background:linear-gradient(90deg,var(--release-soft),var(--release-soft));box-shadow:none;color:var(--release-text)}.sidebar-nav-reference .nav-ref-icon{display:inline-grid;place-items:center;width:20px;color:var(--release-text);font-size:20px;line-height:1}.sidebar-nav-reference button.active .nav-ref-icon{color:var(--green)}.sidebar-nav-reference .nav-label{gap:12px}.sidebar .sidebar-group-bottom{margin-top:auto}


/* Theme-safe navigation polish. */
:root { --ui-card:var(--release-card); --ui-nav:var(--release-side); --ui-border: var(--release-line); --ui-shadow: 0 1px 2px rgba(0,0,0,.18),0 10px 28px rgba(0,0,0,.18); }
.sidebar-nav-reference{display:flex;flex-direction:column;gap:4px;padding:8px 2px}.sidebar-nav-reference button{min-height:40px;padding:8px 10px;background:transparent;border:1px solid transparent;border-radius:9px;color:var(--text2);font-size:13px;transition:background-color .16s ease,box-shadow .16s ease,color .16s ease}.sidebar-nav-reference button:hover{background:var(--surface-hover);border-color:var(--border2);color:var(--text)}.sidebar-nav-reference button.active{color:var(--text);border-color:color-mix(in srgb,var(--green) 36%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--green) 12%,transparent),transparent);box-shadow:inset 2px 0 var(--green),0 5px 16px color-mix(in srgb,var(--green) 7%,transparent)}.sidebar-nav-reference .nav-label{display:flex;align-items:center;gap:12px}.sidebar-nav-reference .nav-ref-icon{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:var(--text2)}.sidebar-nav-reference button.active .nav-ref-icon{color:var(--green)}.ui-empty-state{display:grid;align-content:center;min-height:180px}.ui-empty-state p{text-wrap:pretty;max-width:44ch}.page-title{text-wrap:balance}.kpi-card,.crm-stat-card,.settings-card,.table-wrap,.log-panel{box-shadow:var(--ui-shadow)}body{font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
body[data-theme="light"]{--bg:var(--release-bg);--bg2:var(--release-bg);--bg3:var(--release-bg);--surface-soft:var(--release-soft);--surface-hover:var(--release-soft);--border:var(--release-line);--border-hi:var(--release-line);--border2:var(--release-line);--text:var(--release-text);--text2:var(--release-muted);--text3:var(--release-muted);--green:var(--release-primary);--green-dim:var(--release-soft);--yellow:#b57600;--ui-card:var(--release-card);--ui-nav:var(--release-side);--ui-border:var(--release-line);--ui-shadow:0 1px 2px rgba(20,32,27,.05),0 10px 25px rgba(20,32,27,.06)}
body[data-theme="light"],body[data-theme="light"] #app{background:radial-gradient(circle at 72% 0,var(--release-soft),transparent 30%),var(--bg);color:var(--text)}body[data-theme="light"] header,body[data-theme="light"] .sidebar{background:var(--ui-nav);border-color:var(--ui-border);box-shadow:none}body[data-theme="light"] .status-badge,body[data-theme="light"] .header-range,body[data-theme="light"] .header-user,body[data-theme="light"] .theme-toggle,body[data-theme="light"] .btn-logout,body[data-theme="light"] .btn-stop,body[data-theme="light"] .btn-sm,body[data-theme="light"] .btn-action,body[data-theme="light"] .kpi-card,body[data-theme="light"] .mailing-overview,body[data-theme="light"] .settings-card,body[data-theme="light"] .log-panel,body[data-theme="light"] .table-wrap,body[data-theme="light"] .crm-stat-card,body[data-theme="light"] .chart-card{background:var(--ui-card);border-color:var(--ui-border);color:var(--text);box-shadow:var(--ui-shadow)}body[data-theme="light"] .network-balance-panel,body[data-theme="light"] .network-balances-refresh{background:var(--bg2);border-color:var(--ui-border);color:var(--text);box-shadow:var(--ui-shadow)}body[data-theme="light"] .mailing-donut::before{background:var(--ui-card)}body[data-theme="light"] .sidebar-nav-reference button{color:var(--text2)}body[data-theme="light"] .sidebar-nav-reference button:hover{background:var(--surface-hover)}body[data-theme="light"] .sidebar-nav-reference button.active{color:var(--text);background:linear-gradient(90deg,var(--release-soft),var(--release-soft))}body[data-theme="light"] .sidebar-nav-reference .nav-ref-icon{color:var(--text2)}body[data-theme="light"] .sidebar-nav-reference button.active .nav-ref-icon{color:var(--green)}body[data-theme="light"] .mailing-metrics>div,body[data-theme="light"] .kpi-goal-track{background:var(--release-card);border-color:var(--release-line)}body[data-theme="light"] .log-header,body[data-theme="light"] .mailing-recent__head,body[data-theme="light"] .mailing-overview__summary{border-color:var(--ui-border)}

.kpi-sparkline{background:none!important}.kpi-sparkline__line{fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px currentColor)}.kpi-sparkline__line--green{stroke:var(--green);color:var(--green)}.kpi-sparkline__line--yellow{stroke:var(--yellow);color:var(--yellow)}.kpi-sparkline__dot{stroke:var(--bg);stroke-width:1;filter:drop-shadow(0 0 3px currentColor)}.kpi-sparkline__dot--green{fill:var(--green);color:var(--green)}.kpi-sparkline__dot--yellow{fill:var(--yellow);color:var(--yellow)}.btn-action .action-icon{display:inline-grid;place-items:center;width:15px;margin-right:7px;font-size:15px;line-height:1;vertical-align:-1px}.btn-action{display:inline-flex;align-items:center;justify-content:center}


/* Header polish: compact, resilient controls without horizontal clipping. */
header { gap: 10px; min-width: 0; overflow: visible; }
header > * { flex: 0 0 auto; }
.header-range, .header-user, header .notification-bell, .theme-toggle, header .btn-logout { box-shadow: var(--ui-shadow); }
.header-range { min-width: 0; max-width: 166px; }
.header-range__icon { width: 14px; height: 14px; flex: 0 0 14px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#header-date-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }
.header-user { width: 112px; max-width: 112px; }
header .notification-bell, .theme-toggle { width: 40px; height: 40px; border-radius: 9px; }
header .btn-logout { min-height: 40px; padding: 0 14px; }
header .notification-bell:hover, .theme-toggle:hover, header .btn-logout:hover { transform: translateY(-1px); }
@media (max-width: 840px) {
  header { padding-inline: 12px; gap: 8px; }
  .header-range { display: none; }
  .header-user { width: 104px; max-width: 104px; }
}
@media (max-width: 640px) {
  .header-user { display: none; }
  header .btn-logout { min-width: 40px; padding-inline: 10px; font-size: 0; }
  header .btn-logout::before { content: "\21AA"; font-size: 17px; line-height: 1; }
}


/* Leads overview redesign: clear hierarchy, fewer competing surfaces. */
#tab-leads { max-width: 1480px; margin-inline: auto; }
#tab-leads .page-head { padding: 6px 0 18px; margin-bottom: 0; border-bottom: 1px solid color-mix(in srgb, var(--border) 74%, transparent); }
#tab-leads .page-title { font-size: clamp(28px, 2.1vw, 34px); font-weight: 750; line-height: 1; letter-spacing: -.052em; }
#tab-leads .page-subtitle { margin-top: 8px; font-size: 12px; color: var(--text3); }
#tab-leads .kpi-grid { grid-template-columns: minmax(285px, 1.25fr) repeat(3, minmax(190px, 1fr)); gap: 14px; margin: 20px 0 16px; }
#tab-leads .kpi-card { min-height: 152px; padding: 18px 19px; border: 1px solid color-mix(in srgb, var(--border) 88%, white 12%); border-radius: 14px; background: linear-gradient(135deg, rgba(255,255,255,.028), rgba(255,255,255,0) 48%), var(--ui-card); box-shadow: 0 10px 26px rgba(0,0,0,.16); transition-property: transform, box-shadow, border-color; transition-duration: 150ms; transition-timing-function: ease-out; }
#tab-leads .kpi-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--green) 30%, var(--border)); box-shadow: 0 14px 32px rgba(0,0,0,.24); }
#tab-leads .kpi-card .label { min-height: 30px; margin: 0 0 14px; padding-left: 0; color: var(--text2); font-size: 11px; font-weight: 700; letter-spacing: .075em; }
#tab-leads .kpi-card .label::before, #tab-leads .kpi-card .label::after { content: none; }
.kpi-label-icon { width: 22px; height: 22px; margin-right: 9px; padding: 4px; border: 1px solid color-mix(in srgb, var(--green) 32%, transparent); border-radius: 7px; color: var(--green); fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; box-sizing: content-box; }
#tab-leads .kpi-card .value { color: var(--text); font-size: clamp(31px, 2.15vw, 38px); font-weight: 720; letter-spacing: -.055em; text-shadow: none; }
#tab-leads .kpi-card--total { overflow: hidden; border-color: color-mix(in srgb, var(--green) 30%, var(--border)); background: radial-gradient(circle at 78% 116%, var(--release-soft), transparent 38%), linear-gradient(135deg, var(--release-soft), transparent 45%), var(--ui-card); }
#tab-leads .kpi-card--total .kpi-sparkline { right: 18px; bottom: 36px; left: 18px; height: 35px; opacity: .88; }
#tab-leads .kpi-card--total .kpi-comparison { right: 19px; bottom: 15px; left: 19px; color: var(--text3); font-size: 10px; }
#tab-leads .kpi-card--total .kpi-comparison::before { font-size: 13px; }
#tab-leads > .actions { display: flex; align-items: center; gap: 9px; margin: 0 0 18px; padding: 0; }
#tab-leads .btn-action { min-height: 42px; padding: 0 17px; border-radius: 10px; font-size: 11px; letter-spacing: .02em; }
#tab-leads .actions-refresh { margin-left: auto; }
.mailing-overview { min-height: 184px; border-color: color-mix(in srgb, var(--border) 88%, white 12%); border-radius: 14px; box-shadow: 0 10px 26px rgba(0,0,0,.16); }
.mailing-overview__summary, .mailing-recent { padding: 16px 18px; }
.mailing-overview__heading, .mailing-recent__head strong { font-size: 12px; letter-spacing: .045em; }
.mailing-metrics > div { min-height: 36px; padding: 8px 10px; border-radius: 9px; }
.mailing-metrics strong { font-size: 15px; }
#tab-leads .log-panel { margin-top: 16px; border-radius: 14px; box-shadow: 0 10px 26px rgba(0,0,0,.14); }
#tab-leads .log-header { min-height: 48px; padding-inline: 16px; }
#tab-leads .log-body { height: 156px; padding: 10px 16px; font-size: 11px; }
@media (max-width: 1180px) { #tab-leads .kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) { #tab-leads .kpi-grid { grid-template-columns: 1fr; } #tab-leads .page-head { align-items: flex-start; } #tab-leads > .actions { align-items: stretch; flex-wrap: wrap; } #tab-leads .btn-action { flex: 1 1 calc(50% - 5px); } #tab-leads .actions-refresh { margin-left: 0; } }


/* KPI labels: retire legacy pseudo-icons before the new label system. */
#tab-leads .kpi-card .label::before,
#tab-leads .kpi-card .label::after { display: none !important; }
#tab-leads .kpi-card--total .label { display: flex; align-items: center; }
#tab-leads .kpi-label-icon { display: block; flex: 0 0 22px; }

/* Header controls: theme, notifications, then the account menu. */
.header-controls { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.header-controls .theme-toggle { order: 1; margin-left: 0; }
.header-controls .notification-widget { order: 2; flex: 0 0 auto; }
.header-account { position: relative; order: 3; }
.header-controls .theme-toggle,
.header-controls .notification-bell { width: 40px; height: 40px; border-radius: 50%; }
.header-controls .theme-toggle:hover { transform: translateY(-1px); }
.header-controls .header-user {
  display: flex;
  width: 132px;
  max-width: 132px;
  height: 40px;
  padding: 0 10px;
  border: 1px solid var(--ui-border);
  border-radius: 10px;
  background: var(--ui-card);
  color: var(--text);
  box-shadow: var(--ui-shadow);
  cursor: pointer;
}
.header-user__copy { flex: 1 1 auto; text-align: left; }
.header-user__avatar { flex: 0 0 24px; }
.header-user__chevron { width: 14px; height: 14px; flex: 0 0 14px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; color: var(--text3); transition: rotate .16s ease; }
.header-user[aria-expanded="true"] .header-user__chevron { rotate: 180deg; }
.header-account-menu { position: absolute; top: 46px; right: 0; z-index: 40; min-width: 132px; padding: 5px; border: 1px solid var(--ui-border); border-radius: 9px; background: var(--ui-card); box-shadow: var(--ui-shadow); }
.header-account-menu button { width: 100%; min-height: 36px; padding: 7px 10px; border: 0; border-radius: 6px; background: transparent; color: var(--text2); text-align: left; cursor: pointer; }
.header-account-menu button:hover { background: var(--surface-hover); color: var(--text); }

@media (max-width: 640px) {
  .header-controls { gap: 8px; }
  .header-controls .header-user { display: flex; width: 62px; max-width: 62px; }
  .header-controls .header-user__copy { display: none; }
}

/* Deterministic outline theme icon; avoids platform-dependent text glyphs. */
.theme-icon { display: grid; place-items: center; width: 20px; height: 20px; }
.theme-icon svg { grid-area: 1 / 1; width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.theme-icon__moon { display: none; }
body[data-theme="light"] .theme-icon__sun { display: none; }
body[data-theme="light"] .theme-icon__moon { display: block; }


/* Authenticated header reference: compact identity controls without heavy chrome. */
.header-controls { gap: 6px; }
.header-controls .notification-widget:not([hidden]) {
  position: relative;
  inset: auto;
  z-index: 35;
  display: block;
}
.header-controls .notification-panel {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  bottom: auto;
  left: auto;
  z-index: 40;
}
.header-controls .notification-badge[hidden] {
  display: none;
}
.header-controls .theme-toggle,
.header-controls .header-user {
  color: var(--text2);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  transition-property: background-color, border-color, color, scale;
  transition-duration: .14s, .14s, .14s, .08s;
  transition-timing-function: ease;
}
.header-controls .notification-bell {
  color: var(--green);
  background: var(--green-dim);
  border-color: var(--green);
  box-shadow: none;
  transition: background-color .14s ease, border-color .14s ease, color .14s ease, scale .08s ease;
}
.header-controls .theme-toggle,
.header-controls .notification-bell { border-radius: 10px; }
.header-controls .header-user { width: auto; max-width: 168px; padding: 0 6px; border-radius: 10px; }
.header-controls .header-user__avatar { width: 32px; height: 32px; flex-basis: 32px; background: var(--release-soft); color: var(--release-text); font-size: 10px; }
.header-controls .header-user__copy { min-width: 74px; }
.header-controls .header-user__copy #header-user-name { color: var(--text); font-size: 11px; font-weight: 650; }
.header-controls .header-user__copy small { margin-top: 2px; font-size: 9px; text-transform: none; }
.header-controls .theme-toggle:hover,
.header-controls .header-user:hover,
.header-controls .header-user[aria-expanded="true"] { background: var(--surface-hover); border-color: transparent; color: var(--text); transform: none; }
.header-controls .notification-bell:hover,
.header-controls .notification-bell[aria-expanded="true"] { background: var(--green); border-color: var(--green); color: var(--on-accent); transform: none; }
.header-controls .theme-toggle:active,
.header-controls .notification-bell:active,
.header-controls .header-user:active { scale: 0.96; }
.header-controls .theme-toggle:focus-visible,
.header-controls .notification-bell:focus-visible,
.header-controls .header-user:focus-visible { outline: 2px solid var(--green); outline-offset: 2px; }
.header-controls .theme-toggle svg,
.header-controls .notification-bell svg,
.header-controls .header-user__chevron { color: currentColor; }
.header-controls .notification-badge { top: 1px; right: 1px; min-width: 17px; height: 17px; padding-inline: 3px; color: var(--release-text); background: var(--green); border-color: var(--bg); font-variant-numeric: tabular-nums; }
@media (max-width: 640px) {
  .status-badge { display: none; }
  .header-controls .theme-toggle, .header-controls .notification-bell, .header-controls .header-user { min-width: 44px; min-height: 44px; }
  .header-controls .header-user { width: 44px; max-width: 44px; padding: 0 6px; }
  .header-controls .header-user__copy, .header-controls .header-user__chevron { display: none; }
  .header-controls .notification-panel {
    position: fixed;
    top: 64px;
    right: 8px;
    bottom: auto;
    left: 8px;
    width: auto;
  }
}

/* Mobile drawer owns its geometry below the phone breakpoint. */
@media (max-width: 768px) {
  header { height: 56px; min-height: 56px; }
  header, .app-shell { margin-left: 0; }
  .sidebar {
    position: fixed;
    top: 56px;
    bottom: 0;
    left: 0;
    z-index: 30;
    width: min(82vw, 320px);
    height: auto;
    flex-basis: auto;
    transform: translateX(-100%);
    transition: transform .22s ease;
  }
  .sidebar.open,
  body.mobile-sidebar-open .sidebar { transform: translateX(0); }
}


/* UI audit: preserve table actions and navigation at narrow breakpoints. */
.table-wrap {
  overflow-x: auto;
  overflow-y: hidden;
}

.offers-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.offers-toolbar-title { margin: 0; }
.offers-toolbar-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.login-register {
  margin-top: 1rem;
  color: var(--text2);
  font-size: .85rem;
  text-align: center;
}
.login-register-link {
  color: var(--text2);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.login-register-link:hover { color: var(--text); }
.login-register-link:focus-visible {
  outline: 2px solid var(--green);
  outline-offset: 3px;
  border-radius: 2px;
}
.login-back-link { min-height: 44px; }

@media (min-width: 769px) and (max-width: 980px) {
  body.mobile-sidebar-open { overflow: hidden; }
  body.mobile-sidebar-open::before {
    content: '';
    position: fixed;
    inset: 59px 0 0;
    z-index: 20;
    background: rgba(0, 0, 0, .58);
  }
  .sidebar {
    top: 59px;
    bottom: 0;
    height: auto;
    z-index: 30;
  }
}

@media (max-width: 768px) {
  .offers-toolbar,
  .offers-toolbar-actions { flex-wrap: wrap; }
  .offers-toolbar-title { flex-basis: 100%; }
  .sidebar-nav-reference button { min-height: 44px; }
}

/* TrafficHub KPI reference: three primary metrics share one desktop row. */
#tab-leads .kpi-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
#tab-leads .kpi-card {
  min-height: 212px;
  padding: 23px;
}
#tab-leads .kpi-card .label {
  margin-bottom: 16px;
  font-size: 13px;
  letter-spacing: .045em;
}
#tab-leads .kpi-card .value {
  font-size: clamp(38px, 3.25vw, 44px);
}
#tab-leads .kpi-card--total .kpi-sparkline,
#tab-leads .kpi-card:nth-child(3) .kpi-sparkline {
  right: 23px;
  bottom: 52px;
  left: 23px;
  height: 42px;
  opacity: .92;
}
#tab-leads .kpi-card:nth-child(3) .kpi-sparkline {
  filter: hue-rotate(295deg);
}
#tab-leads .kpi-card--total .kpi-comparison,
#tab-leads .kpi-card:nth-child(3) .kpi-comparison {
  right: 23px;
  bottom: 20px;
  left: 23px;
  font-size: 11px;
}
#tab-leads .kpi-card:nth-child(2) .kpi-goal {
  margin-top: 18px;
}
#tab-leads .kpi-card:nth-child(2) .kpi-goal-track {
  height: 7px;
}
#tab-leads .kpi-card:nth-child(2) .kpi-goal-label {
  margin-top: 9px;
  font-size: 11px;
}
#tab-leads .kpi-card:nth-child(n + 4) {
  min-height: 152px;
}
@media (max-width: 980px) {
  #tab-leads .kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  #tab-leads .kpi-card { min-height: 172px; padding: 18px; }
  #tab-leads .kpi-card .value { font-size: 34px; }
  #tab-leads .kpi-card--total .kpi-sparkline,
  #tab-leads .kpi-card:nth-child(3) .kpi-sparkline { right: 18px; bottom: 44px; left: 18px; height: 32px; }
  #tab-leads .kpi-card--total .kpi-comparison,
  #tab-leads .kpi-card:nth-child(3) .kpi-comparison { right: 18px; bottom: 15px; left: 18px; }
}
.funnel-flow{display:flex;align-items:stretch;gap:10px;margin-bottom:16px;overflow-x:auto}.funnel-flow__card{flex:1 0 140px;min-height:112px;padding:16px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-card);box-shadow:var(--ui-shadow);color:var(--text2);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.funnel-flow__card strong{display:block;margin-top:14px;color:var(--text);font-size:28px;letter-spacing:-.04em;text-transform:none}.funnel-flow__card:nth-child(1) strong,.funnel-flow__card:nth-child(5) strong{color:var(--green)}.funnel-flow__arrow{align-self:center;color:var(--green);font-size:23px}@media(max-width:680px){.funnel-flow{gap:7px}.funnel-flow__arrow{display:none}.funnel-flow__card{flex-basis:130px}}
.ai-agent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ai-agent-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-agent-state{margin:14px 0 0;color:var(--green);font-weight:700}.ai-agent-data{margin-top:14px}.ai-agent-list{display:grid;gap:8px;margin-top:12px}.ai-agent-row{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--border2);font-size:12px}.ai-agent-row span{color:var(--text3)}@media(max-width:680px){.ai-agent-grid{grid-template-columns:1fr}}
.ai-agent-page{--ai-canvas:var(--release-bg);--ai-panel:var(--release-card);--ai-raised:var(--release-soft);--ai-border:var(--release-line);--ai-ink:var(--release-text);--ai-muted:var(--release-muted);--ai-accent:var(--release-primary);--ai-blue:var(--release-primary);--ai-amber:#f0ad00}.ai-agent-page-head{margin-bottom:14px;align-items:flex-end}.ai-agent-refresh{min-width:86px;min-height:36px}.ai-agent-hero-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-agent-hero,.ai-agent-panel{border:1px solid var(--ai-border);border-radius:10px;background:var(--ai-panel);box-shadow:inset 0 1px rgba(255,255,255,.015)}.ai-agent-hero{height:138px;padding:14px}.ai-agent-hero-head{display:flex;align-items:center;justify-content:space-between}.ai-agent-hero h2,.ai-agent-panel h2{margin:0;color:var(--ai-ink);font-size:13px;font-weight:600}.ai-agent-icon{width:30px;height:30px;display:inline-grid;place-items:center;margin-right:8px;border-radius:6px;background:var(--release-soft);color:var(--ai-accent);font-style:normal}.ai-agent-hero-head>button{min-height:32px;padding:0 11px;border:1px solid var(--ai-border);border-radius:6px;background:var(--ai-raised);color:var(--release-text);font-size:10px;transition-property:background-color,transform;transition-duration:120ms}.ai-agent-hero-head>button:hover{background:var(--release-card)}.ai-agent-hero-head>button:active{transform:scale(.96)}.ai-agent-hero-body{display:grid;grid-template-columns:minmax(150px,.85fr) 1.25fr;gap:18px;margin-top:15px}.ai-agent-hero-body p{margin:0 0 12px;color:var(--ai-muted);font-size:10px;line-height:15px}.ai-agent-toggle{min-height:26px;padding:0;border:0;background:transparent;color:var(--ai-muted);font-size:10px;text-align:left}.ai-agent-toggle.is-enabled{color:var(--ai-accent)}.ai-agent-toggle:active{transform:scale(.96)}.ai-agent-hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.ai-agent-hero-metrics>span{min-width:0;padding:0 14px;border-left:1px solid var(--ai-border)}.ai-agent-hero-metrics small,.ai-agent-hero-metrics strong,.ai-agent-hero-metrics em{display:block}.ai-agent-hero-metrics small{height:26px;color:var(--ai-muted);font-size:8px;line-height:12px}.ai-agent-hero-metrics strong{color:var(--ai-accent);font-size:20px;font-weight:500;line-height:24px;font-variant-numeric:tabular-nums}.ai-agent-hero-metrics strong.warn{color:var(--ai-amber)}.ai-agent-hero-metrics em{color:var(--release-muted);font-size:8px;font-style:normal}.ai-agent-tables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.ai-agent-panel{height:278px;padding:14px;display:grid;grid-template-rows:24px 1fr 30px;overflow:hidden}.ai-agent-panel h2 i{margin-right:9px;color:var(--release-muted);font-style:normal}.ai-agent-list{min-height:0;margin:8px 0 0;overflow:hidden}.ai-agent-table{display:grid}.ai-agent-table-row{min-height:31px;display:grid;align-items:center;border-bottom:1px solid var(--release-line);color:var(--release-muted);font-size:9px}.ai-agent-bots-table .ai-agent-table-row{grid-template-columns:1.45fr .75fr .95fr .75fr}.ai-agent-candidates-table .ai-agent-table-row{grid-template-columns:1.1fr .65fr .75fr 1fr}.ai-agent-table-row.head{min-height:27px;color:var(--release-muted);font-size:8px;text-transform:uppercase}.ai-agent-table-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--release-text);font-weight:500}.ai-agent-status,.ai-agent-stage{display:inline-block;padding:3px 6px;border-radius:3px;background:var(--release-soft);color:var(--ai-accent);font-size:8px;font-weight:500}.ai-agent-status.off{background:var(--release-card);color:var(--release-muted)}.ai-agent-candidate-status{color:var(--ai-accent);font-size:9px}.ai-agent-stage{color:var(--release-primary);background:var(--release-soft)}.ai-agent-panel footer{display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--ai-border);color:var(--release-muted);font-size:9px}.ai-agent-panel footer button{border:0;background:transparent;color:var(--ai-accent);font-size:9px}.ai-agent-panel footer button:active{transform:scale(.96)}.ai-agent-empty{display:grid;place-items:center;min-height:70px;color:var(--release-muted);font-size:10px}.ai-agent-logs-panel{height:140px;margin-top:12px}.ai-agent-logs{display:grid;align-content:start;gap:5px;padding-top:6px;overflow:hidden}.ai-agent-logs>div{display:grid;grid-template-columns:85px 8px 1fr;gap:8px;color:var(--release-muted);font-size:9px;line-height:13px}.ai-agent-logs time{color:var(--release-muted);font-variant-numeric:tabular-nums}.ai-agent-logs i{width:6px;height:6px;margin-top:3px;border-radius:50%;background:var(--ai-accent)}.ai-agent-logs i.warning,.ai-agent-logs i.error{background:var(--ai-amber)}@media(max-width:900px){.ai-agent-hero-grid,.ai-agent-tables{grid-template-columns:1fr}.ai-agent-hero,.ai-agent-panel{height:auto;min-height:180px}.ai-agent-logs-panel{min-height:150px}}@media(max-width:560px){.ai-agent-hero-body{grid-template-columns:1fr}.ai-agent-hero-metrics>span{padding:0 8px}.ai-agent-table{min-width:620px}.ai-agent-list{overflow-x:auto}}
/* KPI reference: three primary cards; operational offer list is secondary. */
#tab-leads .kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 18px}
#tab-leads .kpi-card{min-height:212px;padding:24px;border-radius:14px}
#tab-leads .kpi-card .label{margin-bottom:17px;font-size:12px}
#tab-leads .kpi-card .value{font-size:clamp(38px,3vw,46px)}
#tab-leads .kpi-card--total .kpi-sparkline,#tab-leads .kpi-card:nth-child(3) .kpi-sparkline{right:24px;bottom:51px;left:24px;height:42px}
#tab-leads .kpi-card--total .kpi-comparison,#tab-leads .kpi-card:nth-child(3) .kpi-comparison{right:24px;bottom:19px;left:24px;font-size:11px}
#tab-leads .kpi-card:nth-child(2) .kpi-goal{margin-top:18px}
#tab-leads .kpi-card:nth-child(2) .kpi-goal-track{height:7px}
#tab-leads .kpi-card:nth-child(2) .kpi-goal-label{margin-top:9px;font-size:11px}
#tab-leads .kpi-card:nth-child(4){grid-column:1/-1;min-height:112px;padding:18px 22px}
#tab-leads .kpi-card:nth-child(4) .label{margin-bottom:10px}
@media(max-width:980px){#tab-leads .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){#tab-leads .kpi-grid{grid-template-columns:1fr}#tab-leads .kpi-card{min-height:174px;padding:18px}#tab-leads .kpi-card .value{font-size:35px}#tab-leads .kpi-card:nth-child(4){grid-column:auto}}

/* Total-leads KPI: compact metric card calibrated from the supplied reference. */
#tab-leads .kpi-card--total {
  box-sizing: border-box;
  align-self: start;
  justify-self: start;
  width: 262px;
  height: 128px;
  min-height: 128px;
  padding: 12px 17px;
  border-color: var(--release-line);
  border-radius: 12px;
  background: var(--release-card);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.018), 0 8px 22px rgba(0,0,0,.22);
}
#tab-leads .kpi-card--total .label {
  min-height: 24px;
  margin-bottom: 10px;
  color: var(--release-muted);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .055em;
}
#tab-leads .kpi-card--total .kpi-label-icon {
  box-sizing: border-box;
  width: 24px;
  height: 24px;
  margin-right: 19px;
  padding: 4px;
  border-color: var(--release-line);
  border-radius: 7px;
  background: var(--release-soft);
}
#tab-leads .kpi-card--total .value {
  color: var(--release-text);
  font-size: 28px;
  font-weight: 720;
  letter-spacing: .025em;
  line-height: 1;
}
#tab-leads .kpi-card--total .kpi-sparkline {
  right: 17px;
  bottom: 29px;
  left: 17px;
  width: calc(100% - 34px);
  overflow: visible;
  mask-image: none;
  height: 32px;
  opacity: .9;
}
#tab-leads .kpi-card--total .kpi-comparison {
  right: 17px;
  bottom: 12px;
  left: 17px;
  color: var(--release-muted);
  font-size: 10px;
  line-height: 1;
}
#tab-leads .kpi-card--total .kpi-comparison::before {
  margin-right: 5px;
  font-size: 12px;
}
@media (max-width: 680px) {
  #tab-leads .kpi-card--total {
    width: 100%;
    height: 128px;
    min-height: 128px;
    padding: 12px 17px;
  }
}
#tab-leads .kpi-card--total {
  --kpi-accent-raw: var(--release-primary);
  --kpi-growth: var(--kpi-accent-raw);
  max-width: 100%;
  font-variant-numeric: tabular-nums;
}
#tab-leads .kpi-card--total .kpi-comparison::before { content: none; }
#tab-leads .kpi-card--total .kpi-comparison strong { color: var(--kpi-growth); margin-right: 8px; font-weight: 600; }
#tab-leads .kpi-card--total .kpi-sparkline__line { stroke: var(--kpi-growth); stroke-width: .7; opacity: .55; }
#tab-leads .kpi-card--total .kpi-sparkline__dot { fill: var(--kpi-growth); stroke: none; r: 1; }
#tab-leads .kpi-card--total .kpi-sparkline__line,
#tab-leads .kpi-card--total .kpi-sparkline__dot { color: var(--kpi-growth); }
#tab-leads .kpi-card--total .kpi-label-icon { color: var(--kpi-growth); border-color: var(--release-line); }
body[data-theme="light"] #tab-leads .kpi-card--total { background: var(--ui-card); border-color: var(--border); --kpi-growth: var(--release-primary); }
body[data-theme="light"] #tab-leads .kpi-card--total .value { color: var(--text); }
body[data-theme="light"] #tab-leads .kpi-card--total .label,
body[data-theme="light"] #tab-leads .kpi-card--total .kpi-comparison { color: var(--text2); }

/* Processed-today KPI: measured reference, scoped raw and semantic tokens. */
#tab-leads .kpi-card.kpi-card--today {
  --today-surface-raw:var(--release-card); --today-border-raw:var(--release-line);
  --today-accent-raw: var(--release-primary); --today-ink-raw:var(--release-text);
  --today-muted-raw:var(--release-muted); --today-track-raw: #13181f;
  --today-surface: var(--today-surface-raw); --today-border: var(--today-border-raw);
  --today-progress: var(--today-accent-raw); --today-ink: var(--today-ink-raw);
  --today-muted: var(--today-muted-raw); --today-track: var(--today-track-raw);
  box-sizing: border-box; align-self: start; justify-self: start;
  width: 262px; max-width: 100%; height: 158px; min-height: 158px;
  padding: 14px 16px 16px; border: 1px solid var(--today-border);
  border-right-color: var(--today-track); border-radius: 12px;
  background: var(--today-surface); box-shadow: none;
  font-variant-numeric: tabular-nums; transform: none;
}
#tab-leads .kpi-card.kpi-card--today:hover { transform: none; box-shadow: none; border-color: var(--today-border); border-right-color: var(--today-track); }
#tab-leads .kpi-card.kpi-card--today::before,
#tab-leads .kpi-card.kpi-card--today::after { display: none; }
#tab-leads .kpi-card.kpi-card--today .label {
  display: flex; gap: 13px; min-height: 40px; margin: 0 0 12px; padding: 0;
  color: var(--today-ink); font-size: 10.5px; font-weight: 600; letter-spacing: 0; line-height: 1.2;
}
#tab-leads .kpi-card.kpi-card--today .kpi-label-icon {
  box-sizing: border-box; flex: 0 0 42px; width: 42px; height: 40px; margin: 0; padding: 7px;
  border: 1px solid var(--today-border); border-radius: 10px;
  background: color-mix(in srgb, var(--today-progress) 4%, var(--today-surface));
  color: var(--today-progress); stroke-width: 1.8;
}
#tab-leads .kpi-card.kpi-card--today .value.green { color: var(--today-progress); font-size: 40px; font-weight: 700; letter-spacing: 0; line-height: 1; text-shadow: none; }
#tab-leads .kpi-card.kpi-card--today .kpi-goal { margin-top: 7px; }
#tab-leads .kpi-card.kpi-card--today .kpi-goal-track { height: 7px; border-radius: 999px; background: var(--today-track); }
#tab-leads .kpi-card.kpi-card--today .kpi-goal-fill { height: 100%; border-radius: inherit; background: var(--today-progress); box-shadow: none; }
#tab-leads .kpi-card.kpi-card--today .kpi-goal-label { margin-top: 10px; color: var(--today-muted); font-size: 9.5px; font-weight: 500; letter-spacing: .015em; line-height: 1.2; text-transform: uppercase; }
body[data-theme="light"] #tab-leads .kpi-card.kpi-card--today {
  --today-surface: var(--ui-card); --today-border: var(--ui-border); --today-progress: var(--release-primary);
  --today-ink: var(--text); --today-muted: var(--text2); --today-track: #edf0ea;
}
@media (max-width: 680px) { #tab-leads .kpi-card.kpi-card--today { width: 100%; } }

/* Shared overview KPI rhythm; keep the three metrics aligned in the real grid. */
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) {
  box-sizing: border-box; width: 100%; max-width: 100%;
  height: 158px; min-height: 158px; padding: 14px 16px 16px;
  align-self: stretch; justify-self: stretch;
  border: 1px solid var(--release-line); border-right-color: var(--release-line); border-radius: 12px;
  background: var(--release-card); box-shadow: none; transform: none;
}
#tab-leads .kpi-grid > .kpi-card--total { --kpi-row-accent: var(--kpi-growth); }
#tab-leads .kpi-grid > .kpi-card--today { --kpi-row-accent: var(--today-progress); }
#tab-leads .kpi-grid > .kpi-card--retry { --kpi-row-accent: var(--yellow); }
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3):hover { transform: none; box-shadow: none; }
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3)::before,
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3)::after { display: none; }
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) .label {
  display: flex; align-items: center; gap: 13px;
  height: 40px; min-height: 40px; margin: 0 0 12px; padding: 0;
  color: var(--text); font-size: 10.5px; font-weight: 600; letter-spacing: 0; line-height: 1.2;
}
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) .kpi-label-icon {
  box-sizing: border-box; flex: 0 0 42px; width: 42px; height: 40px;
  margin: 0; padding: 7px; border: 1px solid var(--release-line); border-radius: 10px;
  background: color-mix(in srgb, var(--kpi-row-accent) 4%, var(--release-card));
  color: var(--kpi-row-accent); stroke-width: 1.8;
}
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) .value {
  font-size: 40px; font-weight: 700; line-height: 1; letter-spacing: 0;
  font-variant-numeric: tabular-nums; text-shadow: none;
}
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) .kpi-sparkline {
  left: 16px; right: 16px; bottom: 32px; width: calc(100% - 32px);
  height: 16px; filter: none; mask-image: none; overflow: visible; opacity: .7;
}
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) .kpi-comparison {
  left: 16px; right: 16px; bottom: 16px;
  color: var(--text3); font-size: 9.5px; line-height: 1.2;
}
#tab-leads .kpi-grid > .kpi-card--retry .kpi-comparison::before { color: var(--yellow); }
#tab-leads .kpi-grid > .kpi-card--retry .kpi-sparkline__line { stroke-width: 1; filter: none; }
#tab-leads .kpi-grid > .kpi-card--retry .kpi-sparkline__dot { r: 1; stroke: none; filter: none; }
body[data-theme="light"] #tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) {
  background: var(--ui-card); border-color: var(--ui-border);
}
body[data-theme="light"] #tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) .kpi-label-icon {
  border-color: var(--ui-border);
  background: color-mix(in srgb, var(--kpi-row-accent) 5%, var(--ui-card));
}

/* Unique leads: amber reference, within the shared KPI row geometry. */
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique {
  --unique-accent-raw: #ffb701;
  --unique-growth-raw: var(--release-primary);
  --unique-accent: var(--unique-accent-raw);
  --unique-growth: var(--unique-growth-raw);
  --kpi-row-accent: var(--unique-accent);
  background: var(--release-card); border-color: var(--release-line);
}
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique .kpi-label-icon {
  flex-basis: 34px; width: 34px; height: 34px; padding: 6px; border-radius: 8px;
  border-color: color-mix(in srgb, var(--unique-accent) 18%, transparent);
  background: color-mix(in srgb, var(--unique-accent) 10%, var(--release-card));
  color: var(--unique-accent);
}
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique .value { color: var(--unique-accent); }
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique .kpi-sparkline {
  bottom: 28px; height: 20px; opacity: 1; overflow: visible;
}
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique .kpi-unique-line {
  fill: none; stroke: var(--unique-accent); stroke-width: 1.2;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 2px 3px color-mix(in srgb, var(--unique-accent) 35%, transparent));
}
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique .kpi-unique-dot {
  fill: var(--unique-accent); stroke: var(--unique-accent);
  stroke-linecap: round; stroke-width: 3.5; vector-effect: non-scaling-stroke;
}
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique .kpi-comparison { bottom: 12px; }
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique .kpi-comparison::before { content: none; }
#tab-leads .kpi-grid > .kpi-card.kpi-card--unique .kpi-comparison strong {
  margin-right: 8px; color: var(--unique-growth); font-weight: 600;
}
body[data-theme="light"] #tab-leads .kpi-grid > .kpi-card.kpi-card--unique {
  --unique-accent: #a76c00; --unique-growth: var(--release-primary);
  background: var(--ui-card); border-color: var(--ui-border);
}
body[data-theme="light"] #tab-leads .kpi-grid > .kpi-card.kpi-card--unique .kpi-label-icon {
  background: color-mix(in srgb, var(--unique-accent) 8%, var(--ui-card));
}

/* Funnel reference: compact, sequential, number-first cards. */
#tab-crm-funnels .funnel-flow {
  --funnel-surface-raw:var(--release-card); --funnel-border-raw:var(--release-line);
  --funnel-accent-raw: var(--release-primary); --funnel-ink-raw:var(--release-text);
  --funnel-surface: var(--funnel-surface-raw); --funnel-border: var(--funnel-border-raw);
  --funnel-data: var(--funnel-accent-raw); --funnel-ink: var(--funnel-ink-raw);
  --funnel-muted: var(--text3); --funnel-gap: 24px; --funnel-height: 126px;
  display: grid; grid-template-columns: repeat(6,minmax(0,1fr));
  gap: var(--funnel-gap); overflow: visible; margin-bottom: 24px;
}
#tab-crm-funnels .funnel-flow__card {
  position: relative; min-width: 0; min-height: 0; height: var(--funnel-height);
  padding: 14px 16px; border: 1px solid var(--funnel-border); border-radius: 6px;
  background: var(--funnel-surface); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .015);
  text-transform: none; letter-spacing: normal; overflow: visible;
  color: var(--funnel-ink); transition: none;
}
#tab-crm-funnels .funnel-flow__label { font-size: 12px; line-height: 16px; font-weight: 400; white-space: nowrap; }
#tab-crm-funnels .funnel-flow__card strong {
  margin-top: 6px; padding-right: 35px; font-size: clamp(17px,1.6vw,23px); line-height: 28px;
  color: var(--funnel-ink); font-weight: 500; letter-spacing: .01em;
  font-variant-numeric: tabular-nums; white-space: nowrap;
}
#tab-crm-funnels .funnel-flow__icon { position:absolute; right:16px; top:36px; width:28px; height:28px; color:var(--funnel-data); }
#tab-crm-funnels .funnel-flow__icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
#tab-crm-funnels .funnel-flow__icon--tile { width:34px; height:34px; top:33px; padding:5px; border-radius:7px; border:1px solid color-mix(in srgb,var(--funnel-data) 30%,transparent); background:color-mix(in srgb,var(--funnel-data) 8%,transparent); }
#tab-crm-funnels .funnel-flow__trend { margin-top:3px; font-size:11px; line-height:16px; color:var(--funnel-muted); }
#tab-crm-funnels .funnel-flow__chart-empty { position:absolute; right:16px; left:16px; bottom:14px; height:16px; border-bottom:1px dashed var(--funnel-border); }
#tab-crm-funnels .funnel-flow__ring { position:absolute; width:52px; height:52px; right:14px; top:29px; fill:none; stroke-width:6; }
#tab-crm-funnels .funnel-flow__track { stroke:color-mix(in srgb,var(--funnel-data) 15%,var(--funnel-surface)); }
#tab-crm-funnels .funnel-flow__progress { stroke:var(--funnel-data); }
#tab-crm-funnels .funnel-flow__card:last-child strong { padding-right:52px; }
#tab-crm-funnels .funnel-flow__arrow { display:none; }
#tab-crm-funnels .funnel-flow__card:not(:last-child)::after { content:'→'; position:absolute; right:-20px; top:36px; color:var(--funnel-data); font-size:20px; line-height:24px; }
body[data-theme="light"] #tab-crm-funnels .funnel-flow { --funnel-surface:var(--ui-card); --funnel-border:var(--ui-border); --funnel-data:var(--release-primary); --funnel-ink:var(--text); }
@media(max-width:1199px) {
  #tab-crm-funnels .funnel-flow { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #tab-crm-funnels .funnel-flow__card:nth-of-type(3)::after { content:none; }
}
@media(max-width:600px) {
  #tab-crm-funnels .funnel-flow { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  #tab-crm-funnels .funnel-flow__card { padding:12px; }
  #tab-crm-funnels .funnel-flow__card:not(:last-child)::after { content:none; }
  #tab-crm-funnels .funnel-flow__icon { right:10px; width:24px; height:24px; }
  #tab-crm-funnels .funnel-flow__ring { width:38px; height:38px; right:8px; top:34px; }
}
@media(max-width:359px) { #tab-crm-funnels .funnel-flow { grid-template-columns:minmax(0,1fr); } }

/* Funnel board reference: measured 1280x720 dense operations layout. */
.funnel-page-head{margin-bottom:10px;align-items:flex-end}.crm-funnel-ready{width:fit-content;margin-bottom:20px;padding:5px 10px;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card);color:var(--release-muted);font-size:10px;font-weight:700;letter-spacing:.05em}.crm-funnel-ready span{display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--release-soft);box-shadow:none}.funnel-refresh{min-width:83px;min-height:36px}
#tab-crm-funnels .funnel-flow{--funnel-surface:var(--release-card);--funnel-border:var(--release-line);--funnel-data:var(--release-primary);--funnel-ink:var(--release-text);--funnel-muted:var(--release-muted);--funnel-gap:12px;--funnel-height:88px;gap:12px;margin-bottom:9px}
#tab-crm-funnels .funnel-flow__card{height:88px;padding:10px 13px;background:var(--release-card);border-color:var(--release-line)}
#tab-crm-funnels .funnel-flow__card strong{margin-top:4px;line-height:25px}
#tab-crm-funnels .funnel-flow__icon{right:14px;top:28px}
#tab-crm-funnels .funnel-flow__icon--tile{top:25px}
#tab-crm-funnels .funnel-flow__chart-empty{display:none}
#tab-crm-funnels .funnel-flow__ring{width:44px;height:44px;right:14px;top:21px}
#tab-crm-funnels .funnel-flow__card:not(:last-child)::after{right:-12px;top:32px;z-index:2;font-size:18px;line-height:20px}
.funnel-board{height:478px;padding:12px 11px 10px;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card)}.funnel-board h2{height:23px;margin:0;color:var(--release-muted);font-size:14px;font-weight:500}.funnel-lanes{height:430px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.funnel-lane{min-width:0;display:grid;grid-template-rows:34px 1fr 41px;overflow:hidden;border:1px solid var(--release-line);border-radius:5px;background:var(--release-card)}.funnel-lane header{display:flex;align-items:center;justify-content:space-between;padding:0 13px;color:var(--release-muted);font-size:11px;font-weight:600}.funnel-lane header b{font-size:14px;letter-spacing:2px}.funnel-lane-list{min-height:0;display:grid;align-content:start;gap:3px;padding:2px 8px;overflow:hidden}.funnel-lead-card{min-height:65px;padding:8px;border:1px solid var(--release-line);border-radius:4px;background:var(--release-card);transition-property:background-color,border-color;transition-duration:120ms}.funnel-lead-card:hover{border-color:var(--release-line);background:var(--release-card)}.funnel-lead-card strong,.funnel-lead-card span,.funnel-lead-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.funnel-lead-card strong{color:var(--release-text);font-size:12px;font-weight:600;line-height:18px}.funnel-lead-card span,.funnel-lead-card small{color:var(--release-muted);font-size:10px;line-height:17px}.funnel-lane-empty{min-height:65px;display:grid;place-items:center;color:var(--release-muted);font-size:11px;border:1px dashed var(--release-line);border-radius:4px}.funnel-lane-add{min-height:41px;border:0;border-top:1px solid var(--release-line);background:var(--release-card);color:var(--release-primary);font-size:12px;transition-property:background-color,transform;transition-duration:120ms}.funnel-lane-add:hover{background:var(--release-card)}.funnel-lane-add:active{transform:scale(.96)}.funnel-lane-add:focus-visible{outline:2px solid var(--release-primary);outline-offset:-3px}.funnel-board-note{margin:5px 0 0;color:var(--release-muted);font-size:9px}.funnel-definitions{margin-top:12px;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card)}.funnel-definitions summary{min-height:40px;padding:13px;color:var(--release-muted);font-size:11px;cursor:pointer}.funnel-definitions>div{padding:0 10px 10px}
@media(max-width:900px){.funnel-board{overflow-x:auto}.funnel-lanes{min-width:850px;scroll-snap-type:x mandatory}.funnel-lane{scroll-snap-align:start}}

/* Reference action group. Scope excludes other tabs and refresh. */
#tab-leads .dashboard-actions {
  --action-fill-top-raw:var(--release-primary); --action-fill-bottom-raw:var(--release-primary);
  --action-surface-raw:var(--release-card); --action-border-raw:var(--release-line);
  --action-fill-top:var(--action-fill-top-raw); --action-fill-bottom:var(--action-fill-bottom-raw);
  --action-surface:var(--action-surface-raw); --action-border:var(--action-border-raw);
  --action-on-fill:#061000; --action-ink:var(--release-on); --action-height:52px;
  gap:20px; flex-wrap:wrap;
}
#tab-leads .dashboard-actions .action-reference {
  flex:0 1 auto; min-width:224px; min-height:var(--action-height); height:var(--action-height);
  padding:0 28px; gap:16px; border:1px solid var(--action-border); border-radius:11px;
  background:var(--action-surface); color:var(--action-ink); font-size:16px;
  line-height:20px; font-weight:500; letter-spacing:0; text-transform:uppercase; white-space:nowrap;
  box-shadow:inset 0 0 0 1px rgb(255 255 255 / .025),0 1px 2px rgb(0 0 0 / .3);
  transform:none; transition:box-shadow 120ms ease-out,scale 120ms ease-out,opacity 120ms ease-out;
}
#tab-leads .dashboard-actions .action-reference:first-child { min-width:240px; }
#tab-leads .dashboard-actions .action-reference.primary {
  color:var(--action-on-fill); background:linear-gradient(180deg,var(--action-fill-top),var(--action-fill-bottom));
  border-color:color-mix(in srgb,var(--action-fill-top) 80%,white);
  box-shadow:none;
}
#tab-leads .dashboard-actions .action-reference__icon { flex:none; width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
#tab-leads .dashboard-actions .action-reference:hover:not(:disabled) { transform:none; box-shadow:none; }
#tab-leads .dashboard-actions .action-reference:active:not(:disabled) { scale:.96; }
#tab-leads .dashboard-actions .action-reference:focus-visible { outline:2px solid var(--action-fill-top); outline-offset:4px; }
#tab-leads .dashboard-actions .action-reference:disabled { opacity:.4; cursor:not-allowed; box-shadow:none; scale:1; transform:none; }
body[data-theme="light"] #tab-leads .dashboard-actions { --action-surface:var(--ui-card); --action-border:var(--ui-border); --action-ink:var(--text); }
@media(max-width:680px) {
  #tab-leads .dashboard-actions { gap:12px; }
  #tab-leads .dashboard-actions .action-reference,
  #tab-leads .dashboard-actions .action-reference:first-child { flex:1 1 240px; min-width:0; }
}
@media(prefers-reduced-motion:reduce) {
  #tab-leads .dashboard-actions .action-reference { transition:none; }
  #tab-leads .dashboard-actions .action-reference:active:not(:disabled) { scale:1; }
}

/* Disclosure: retain dashboard data while collapsing its layout footprint. */
#tab-leads .mailing-panel {
  display:grid; grid-template-rows:0fr; margin-bottom:0;
  transition:grid-template-rows 180ms ease-out,margin-bottom 180ms ease-out;
}
#tab-leads .mailing-panel.is-open {
  grid-template-rows:1fr; margin-bottom:16px; transition-duration:240ms;
}
#tab-leads .mailing-panel__clip { min-height:0; overflow:hidden; }
#tab-leads .mailing-panel .mailing-overview {
  margin-bottom:0; opacity:0; transform:translateY(-8px);
  transition:opacity 150ms ease-out,transform 180ms ease-out;
}
#tab-leads .mailing-panel.is-open .mailing-overview {
  opacity:1; transform:translateY(0); transition-duration:200ms,240ms;
}
#tab-leads .dashboard-actions #mailing-panel-toggle[aria-expanded="true"] {
  border-color:var(--action-fill-top); color:var(--action-fill-top);
}
body[data-theme="light"] #tab-leads .dashboard-actions #mailing-panel-toggle[aria-expanded="true"] { color:var(--release-primary); }

/* Overview review: readable controls and local scrolling, not page overflow. */
#tab-leads .overview-update-status { color:var(--text2); font-size:12px; }
#tab-leads .overview-update-status:not(:empty) { margin-bottom:12px; }
#tab-leads .kpi-grid > .kpi-card .value,
#tab-leads .offer-count,
#tab-leads .mailing-metrics strong { font-variant-numeric:tabular-nums; }
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) .kpi-comparison,
#tab-leads .kpi-grid > .kpi-card:nth-child(-n + 3) .kpi-goal-label { font-size:11px; }
#tab-leads #kpi-offers .offer-row--head,
#tab-leads #kpi-offers .offer-row--metrics { display:grid; grid-template-columns:minmax(0,1fr) 100px 100px; gap:12px; align-items:start; }
#tab-leads #kpi-offers .offer-row--head { color:var(--text2); font-size:11px; padding-bottom:8px; }
#tab-leads #kpi-offers .offer-row > :not(:first-child) { text-align:right; }
#tab-leads #kpi-offers .offer-name { overflow-wrap:anywhere; white-space:normal; }
#tab-leads .page-head, #tab-leads .page-actions, #tab-leads .log-header { flex-wrap:wrap; gap:8px; }

/* AI Agent reference lock: keep the desktop composition until true phone width. */
#tab-ai-agent .ai-agent-page-head {
  min-height: 36px;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}
#tab-ai-agent .ai-agent-page-head > div:first-child {
  margin: 0;
  text-align: left;
}
@media (min-width: 681px) and (max-width: 900px) {
  #tab-ai-agent .ai-agent-hero-grid,
  #tab-ai-agent .ai-agent-tables { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #tab-ai-agent .ai-agent-hero { height: 138px; min-height: 0; }
  #tab-ai-agent .ai-agent-panel { height: 278px; min-height: 0; }
  #tab-ai-agent .ai-agent-logs-panel { height: 140px; min-height: 0; }
}

@media (min-width: 681px) {
  #tab-ai-agent .ai-agent-hero-grid,
  #tab-ai-agent .ai-agent-tables { grid-template-columns: minmax(0, 48%) minmax(0, 1fr); }
}
#tab-leads .log-header .log-title { flex:1 1 150px; font-size:12px; }
#tab-leads .log-body { font-size:12px; line-height:1.5; }
#tab-leads .log-footer { flex-wrap:wrap; gap:8px; }
#tab-leads .filters { flex-wrap:wrap; }
#tab-leads .filters input, #tab-leads .filters select { min-width:0; max-width:100%; font-size:12px; min-height:40px; }
#tab-leads .btn-sm, #tab-leads .btn-stop, #tab-leads .pagination button { min-height:40px; min-width:40px; }
#tab-leads :is(button,input,select,a,[tabindex]):focus-visible { outline:2px solid var(--green); outline-offset:3px; }
#tab-leads .manual-lead-form[hidden] { display:none; }
#tab-leads .manual-lead-grid > label { min-width:0; }
#tab-leads .manual-lead-grid input { min-width:0; width:100%; }
#tab-leads #leads-table-wrap { max-width:100%; overflow-x:auto; }
#tab-leads #leads-table-wrap td { font-size:12px; }
#tab-leads #leads-table-wrap th { font-size:11px; }
#tab-leads .mailing-recent { min-width:0; }
#tab-leads .mailing-recent__table { overflow-x:auto; }
#tab-leads .mailing-table-row { min-width:560px; font-size:11px; }
#tab-leads .mailing-table-row > span { overflow-wrap:anywhere; }
#tab-leads .pagination { flex-wrap:wrap; gap:10px; }
@media(max-width:680px) {
  #tab-leads .filters { display:grid; grid-template-columns:minmax(0,1fr); }
  #tab-leads .filters > :not([type="file"]) { width:100%; margin-left:0!important; min-height:44px; }
  #tab-leads .manual-lead-grid { grid-template-columns:minmax(0,1fr); }
  #tab-leads .manual-lead-grid__wide { grid-column:1; }
  #tab-leads .manual-lead-actions { flex-wrap:wrap; }
  #tab-leads #kpi-offers .offer-row--head,
  #tab-leads #kpi-offers .offer-row--metrics { grid-template-columns:minmax(0,1fr) 72px 72px; gap:8px; }
  #tab-leads .btn-sm, #tab-leads .btn-stop, #tab-leads .pagination button { min-height:44px; }
}
@media(prefers-reduced-motion:reduce) {
  #tab-leads .mailing-panel,
  #tab-leads .mailing-panel .mailing-overview { transition:none; }
  #tab-leads .mailing-panel .mailing-overview,
  #tab-leads .mailing-panel.is-open .mailing-overview { transform:none; }
}

/* AI Agent workspace: polished dark operational layout. */
#tab-ai-agent.ai-agent-page {
  --ai-panel:var(--release-card); --ai-panel-raised:var(--release-soft); --ai-text:var(--release-text); --ai-accent-soft:var(--release-soft); --ai-raised:var(--release-soft); --ai-border:var(--release-line);
  --ai-ink:var(--release-text); --ai-muted:var(--release-muted); --ai-accent:var(--release-primary);
  color:var(--ai-ink); -webkit-font-smoothing:antialiased;
}
#tab-ai-agent .ai-agent-page-head { min-height:64px; margin-bottom:20px; align-items:center; }
#tab-ai-agent .ai-agent-eyebrow { display:block; margin-bottom:5px; color:var(--ai-accent); font-size:10px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
#tab-ai-agent .page-title { text-wrap:balance; }
#tab-ai-agent .page-subtitle { max-width:620px; text-wrap:pretty; }
#tab-ai-agent .ai-agent-refresh { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-width:124px; min-height:40px; border-color:var(--ai-border); border-radius:8px; background:var(--ai-raised); color:var(--release-text); transition:background-color 140ms ease-out,border-color 140ms ease-out,color 140ms ease-out,scale 120ms ease-out; }
#tab-ai-agent .ai-agent-refresh svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
#tab-ai-agent .ai-agent-refresh:hover { border-color:var(--release-line); background:var(--release-card); color:var(--release-text); }
#tab-ai-agent .ai-agent-refresh:active { scale:.96; }
#tab-ai-agent .ai-agent-hero,#tab-ai-agent .ai-agent-panel { border-color:var(--ai-border); border-radius:12px; background:var(--ai-panel); box-shadow:inset 0 1px rgb(255 255 255 / .015); }
#tab-ai-agent .ai-agent-hero { height:auto; min-height:154px; padding:18px 20px; }
#tab-ai-agent .ai-agent-hero-head { min-height:34px; gap:18px; }
#tab-ai-agent .ai-agent-hero h2,#tab-ai-agent .ai-agent-panel h2 { display:flex; align-items:center; min-width:0; color:var(--ai-ink); font-size:13px; line-height:18px; letter-spacing:.025em; text-transform:uppercase; }
#tab-ai-agent .ai-agent-hero h2 span,#tab-ai-agent .ai-agent-panel h2 span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#tab-ai-agent .ai-agent-icon,#tab-ai-agent .ai-agent-panel h2 i { flex:0 0 auto; display:inline-grid; place-items:center; margin-right:10px; color:var(--release-muted); font-style:normal; }
#tab-ai-agent .ai-agent-icon { width:34px; height:34px; border:1px solid var(--release-line); border-radius:7px; background:var(--release-soft); color:var(--ai-accent); box-shadow:none; }
#tab-ai-agent .ai-agent-panel h2 i { width:20px; height:20px; border:0; border-radius:0; background:transparent; filter:none; }
#tab-ai-agent .ai-agent-logs-panel h2 i { color:var(--ai-accent); }
#tab-ai-agent .ai-agent-icon svg,#tab-ai-agent .ai-agent-panel h2 i svg { fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; }
#tab-ai-agent .ai-agent-icon svg { width:19px; height:19px; stroke-width:2; }
#tab-ai-agent .ai-agent-panel h2 i svg { width:18px; height:18px; stroke-width:1.85; }
#tab-ai-agent .ai-agent-state { margin:0; padding:6px 9px; border:1px solid var(--release-line); border-radius:999px; background:var(--release-soft); font-size:10px; line-height:14px; white-space:nowrap; }
#tab-ai-agent #hr-agent-state { display:none; }
#tab-ai-agent .ai-agent-hero-body { grid-template-columns:minmax(220px,.9fr) minmax(390px,1.35fr); gap:24px; align-items:end; margin-top:18px; }
#tab-ai-agent .ai-agent-hero-copy p { max-width:440px; margin-bottom:10px; font-size:11px; line-height:17px; text-wrap:pretty; }
#tab-ai-agent .ai-agent-toggle { position:relative; width:42px; height:22px; min-height:22px; padding:0; overflow:hidden; border:1px solid var(--release-line); border-radius:999px; background:var(--release-card); color:transparent; font-size:0; line-height:0; box-shadow:inset 0 1px 2px rgb(0 0 0 / .4); transition:background-color 140ms ease-out,border-color 140ms ease-out,opacity 140ms ease-out,scale 120ms ease-out; }
#tab-ai-agent .ai-agent-toggle::before { content:""; position:absolute; left:3px; top:3px; width:14px; height:14px; border-radius:50%; background:var(--release-soft); box-shadow:0 1px 3px rgb(0 0 0 / .55); transition:transform 140ms ease-out,background-color 140ms ease-out; }
#tab-ai-agent .ai-agent-toggle.is-enabled { border-color:var(--release-line); background:var(--release-soft); }
#tab-ai-agent .ai-agent-toggle.is-enabled::before { background:var(--ai-accent); box-shadow:none; transform:translateX(19px); }
#tab-ai-agent .ai-agent-toggle:hover:not(:disabled) { border-color:var(--release-line); background:var(--release-card); }
#tab-ai-agent .ai-agent-toggle.is-enabled:hover:not(:disabled) { border-color:var(--release-line); background:var(--release-soft); }
#tab-ai-agent .ai-agent-toggle:focus-visible { outline:2px solid var(--ai-accent); outline-offset:3px; }
#tab-ai-agent .ai-agent-toggle:active:not(:disabled) { scale:.96; transform:none; }
#tab-ai-agent .ai-agent-toggle:disabled { opacity:.55; cursor:wait; }
#tab-ai-agent .ai-agent-hero-metrics>span { padding:2px 18px 0; }
#tab-ai-agent .ai-agent-hero-metrics small { height:auto; min-height:25px; font-size:9px; line-height:13px; }
#tab-ai-agent .ai-agent-hero-metrics strong { font-size:24px; line-height:29px; font-weight:600; font-variant-numeric:tabular-nums; }
#tab-ai-agent .ai-agent-hero-metrics em { margin-top:2px; font-size:9px; line-height:13px; }
#tab-ai-agent .ai-agent-tables { gap:14px; margin-top:14px; }
#tab-ai-agent .ai-agent-panel { height:292px; padding:16px 18px; grid-template-rows:30px minmax(0,1fr) 34px; }
#tab-ai-agent .ai-agent-list { margin-top:8px; overflow:auto; scrollbar-width:thin; scrollbar-color:var(--release-primary) transparent; }
#tab-ai-agent .ai-agent-table-row { min-height:36px; border-color:var(--release-line); color:var(--release-primary); font-size:10px; }
#tab-ai-agent .ai-agent-table-row.head { min-height:30px; color:var(--release-primary); font-size:8px; }
#tab-ai-agent .ai-agent-bots-table .ai-agent-table-row { grid-template-columns:minmax(120px,1.4fr) minmax(64px,.7fr) minmax(100px,.9fr) minmax(74px,.7fr); gap:10px; }
#tab-ai-agent .ai-agent-candidates-table .ai-agent-table-row { grid-template-columns:minmax(90px,1.25fr) minmax(70px,.72fr) minmax(76px,.78fr) 108px; gap:8px; }
#tab-ai-agent .ai-agent-vacancies-table .ai-agent-table-row { grid-template-columns:minmax(160px,1fr) 76px 54px; gap:10px; }
#tab-ai-agent .ai-agent-applications-table .ai-agent-table-row { grid-template-columns:minmax(92px,1fr) 82px 105px 64px; gap:8px; }
#tab-ai-agent .ai-agent-vacancies-table .ai-agent-table-row>span:last-child { text-align:right; font-variant-numeric:tabular-nums; }
#tab-ai-agent .ai-agent-status,#tab-ai-agent .ai-agent-stage { border:1px solid var(--release-line); border-radius:5px; font-size:8px; line-height:12px; }
#tab-ai-agent .ai-agent-stage { border-color:var(--release-line); }
#tab-ai-agent .ai-agent-row-actions { display:flex; align-items:center; justify-content:flex-end; gap:4px; min-width:0; }
#tab-ai-agent .ai-agent-row-actions button { display:inline-grid; place-items:center; width:32px; min-width:32px; min-height:28px; padding:0; border:1px solid var(--release-line); border-radius:6px; background:var(--release-card); color:var(--release-primary); line-height:1; transition:background-color 120ms ease-out,border-color 120ms ease-out,color 120ms ease-out,scale 100ms ease-out; }
#tab-ai-agent .ai-agent-row-actions button svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2.05; stroke-linecap:round; stroke-linejoin:round; }
#tab-ai-agent .ai-agent-row-actions button:hover { border-color:var(--release-line); background:var(--release-card); color:var(--release-text); }
#tab-ai-agent .ai-agent-row-actions button.is-active { border-color:var(--release-line); background:var(--release-soft); color:var(--ai-accent); }
#tab-ai-agent .ai-agent-row-actions button:active { scale:.96; }
#tab-ai-agent .ai-agent-retry { min-height:28px; padding:0 8px; border:1px solid var(--release-line); border-radius:6px; background:var(--release-card); color:var(--release-text); font-size:8px; transition:background-color 120ms ease-out,border-color 120ms ease-out,color 120ms ease-out,scale 100ms ease-out; }
#tab-ai-agent .ai-agent-retry:hover { border-color:var(--release-line); color:var(--ai-accent); }
#tab-ai-agent .ai-agent-retry:active { scale:.96; }
#tab-ai-agent .ai-agent-panel footer { align-items:center; padding-top:8px; border-color:var(--ai-border); font-size:9px; }
#tab-ai-agent .ai-agent-panel footer button { min-height:30px; padding:0 4px 0 10px; color:var(--release-text); transition:color 120ms ease-out,scale 100ms ease-out; }
#tab-ai-agent .ai-agent-panel footer button:hover { color:var(--ai-accent); }
#tab-ai-agent .ai-agent-panel footer button:active { scale:.96; transform:none; }
#tab-ai-agent .ai-agent-logs-panel { height:156px; margin-top:14px; }
#tab-ai-agent .ai-agent-logs>div { grid-template-columns:94px 8px minmax(0,1fr); font-size:10px; line-height:15px; }
#tab-ai-agent .ai-agent-logs>.ai-agent-empty { grid-template-columns:1fr; place-items:center; width:100%; }
#tab-ai-agent .ai-agent-empty { color:var(--release-primary); font-size:11px; text-wrap:pretty; }
@media(max-width:1100px){
  #tab-ai-agent .ai-agent-hero-body { grid-template-columns:minmax(190px,.72fr) minmax(360px,1.28fr); gap:16px; }
  #tab-ai-agent .ai-agent-hero-metrics>span { padding:2px 12px 0; }
  #tab-ai-agent .ai-agent-panel { padding-inline:14px; }
  #tab-ai-agent .ai-agent-bots-table .ai-agent-table-row { grid-template-columns:minmax(100px,1.35fr) 60px 86px 66px; gap:7px; }
}
@media(max-width:760px){
  #tab-ai-agent .ai-agent-page-head { align-items:flex-start; gap:14px; }
  #tab-ai-agent .ai-agent-refresh { min-width:40px; width:40px; padding:0; }
  #tab-ai-agent .ai-agent-refresh span { display:none; }
  #tab-ai-agent .ai-agent-hero-body { grid-template-columns:1fr; align-items:start; }
  #tab-ai-agent .ai-agent-hero-metrics>span:first-child { border-left:0; padding-left:0; }
  #tab-ai-agent .ai-agent-tables { grid-template-columns:1fr; }
  #tab-ai-agent .ai-agent-panel { height:auto; min-height:278px; }
}
@media(max-width:520px){
  #tab-ai-agent .ai-agent-page-head { min-height:58px; margin-bottom:16px; }
  #tab-ai-agent .ai-agent-hero { padding:15px; }
  #tab-ai-agent .ai-agent-hero-head { align-items:flex-start; flex-direction:column; gap:10px; }
  #tab-ai-agent .ai-agent-state { white-space:normal; }
  #tab-ai-agent .ai-agent-hero-metrics { gap:0; }
  #tab-ai-agent .ai-agent-hero-metrics>span { padding-inline:8px; }
  #tab-ai-agent .ai-agent-hero-metrics strong { font-size:21px; }
  #tab-ai-agent .ai-agent-list { overflow-x:auto; }
  #tab-ai-agent .ai-agent-table { min-width:620px; }
}
@media(prefers-reduced-motion:reduce){
  #tab-ai-agent .ai-agent-refresh,#tab-ai-agent .ai-agent-toggle,#tab-ai-agent .ai-agent-row-actions button,#tab-ai-agent .ai-agent-panel footer button { transition:none; }
  #tab-ai-agent :is(.ai-agent-refresh,.ai-agent-toggle,.ai-agent-row-actions button,.ai-agent-panel footer button):active { scale:1; }
}

/* Shared interaction polish across every dashboard workspace. */
:is(button, a[href], input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--green);
  outline-offset: 3px;
}
.btn-sm, .btn-stop, .pagination button, .sidebar-subnav button,
.header-account-menu button, .nav-link-external {
  min-height: 40px;
  min-width: 40px;
}
:is(button, .btn-sm, .btn-action, .btn-stop):disabled {
  cursor: not-allowed;
  opacity: .5;
}
/* Explicit opt-out keeps frequent controls and reduced-motion users still. */
button[data-static]:active:not(:disabled) { scale: 1; }
@media (max-width: 680px), (pointer: coarse) {
  .btn-sm, .btn-stop, .pagination button, .sidebar-subnav button,
  .header-account-menu button, .nav-link-external, .password-toggle {
    min-height: 44px;
    min-width: 44px;
  }
  .password-field input { padding-right: 52px; }
}
@media (prefers-reduced-motion: reduce) {
  button:active:not(:disabled), a[role="button"]:active { scale: 1 !important; }
}

/* Form controls keep a stable touch target without affecting checkboxes/ranges. */
.settings-card :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select),
.filters :is(input, select), .toolbar :is(input, select), .dashboard-actions :is(input, select) {
  min-height: 40px;
}
@media (max-width: 680px), (pointer: coarse) {
  .settings-card :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select),
  .filters :is(input, select), .toolbar :is(input, select), .dashboard-actions :is(input, select) { min-height: 44px; }
}

/* Action controls remain comfortable in compact header cards. */
.btn-action { min-height: 40px !important; }
@media (max-width: 680px), (pointer: coarse) { .btn-action { min-height: 44px !important; } }
/* Active offers: sampled reference primitives and scoped semantic tokens. */
.active-offers-panel { --offer-raw-surface:var(--release-card); --offer-raw-border:var(--release-line); --offer-raw-ink:var(--release-text); --offer-raw-muted:var(--release-muted); --offer-raw-data:var(--release-primary); --offer-surface:var(--offer-raw-surface); --offer-border:var(--offer-raw-border); --offer-ink:var(--offer-raw-ink); --offer-muted:var(--offer-raw-muted); --offer-data:var(--offer-raw-data); grid-column:1 / -1; min-width:0; padding:0 4px 4px; border:1px solid var(--offer-border); border-radius:10px; background:var(--offer-surface); color:var(--offer-ink); }
.active-offers-header { display:flex; align-items:center; justify-content:space-between; min-height:36px; padding:0 12px; gap:12px; }
.active-offers-header h2 { margin:0; font-size:14px; font-weight:500; }
.active-offers-header button { min-height:36px; padding:0 8px; color:var(--release-primary); border:0; background:none; cursor:pointer; font:inherit; font-size:12px; }
.active-offers-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.active-offer-card { min-width:0; padding:8px 14px 10px; border:1px solid var(--offer-border); border-radius:12px; background:linear-gradient(125deg,var(--offer-surface),var(--release-card)); }
.active-offer-card .active-offer-heading { display:flex; align-items:center; gap:12px; height:40px; }
.active-offer-avatar { display:grid; place-items:center; width:32px; height:32px; flex:none; border-radius:50%; background:var(--release-soft); color:var(--release-primary); font-size:12px; font-weight:600; }
.active-offer-card h3 { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; margin:0; font-size:16px; font-weight:500; }
.active-offer-edit { flex:none; width:32px; height:40px; border:0; background:none; color:var(--offer-muted); font-size:24px; cursor:pointer; }
.active-offer-stats { display:grid; grid-template-columns:1.1fr 1fr .8fr; margin-top:3px; }
.active-offer-stats > div { min-width:0; }
.active-offer-stats > div + div { padding-left:14px; border-left:1px solid var(--offer-border); }
.active-offer-stats span { display:block; color:var(--offer-muted); font-size:12px; }
.active-offer-stats strong { display:block; font-size:18px; line-height:23px; font-weight:600; font-variant-numeric:tabular-nums; }
.active-offer-rate { color:var(--offer-data); }
.active-offer-spark { height:25px; margin-top:2px; color:var(--offer-muted); font-size:10px; }
.active-offer-spark svg { display:block; width:100%; height:24px; overflow:visible; }
.active-offer-spark polyline { fill:none; stroke:var(--offer-data); stroke-width:1.3px; vector-effect:non-scaling-stroke; }
.active-offer-track { height:6px; overflow:hidden; border-radius:4px; background:var(--offer-border); }
.active-offer-track span { display:block; height:100%; background:var(--offer-data); border-radius:inherit; }
.active-offer-card footer { display:flex; justify-content:space-between; gap:8px; margin-top:5px; color:var(--offer-muted); font-size:11px; font-variant-numeric:tabular-nums; }
.active-offers-empty { grid-column:1/-1; margin:0; padding:22px 14px; color:var(--offer-muted); }
.active-offers-panel button:focus-visible { outline:2px solid var(--release-primary); outline-offset:2px; }
.active-offers-panel button:hover { color:var(--offer-ink); }
@media(max-width:1100px) { .active-offers-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .active-offers-grid { grid-template-columns:1fr; } .active-offers-header button,.active-offer-edit { min-height:44px; min-width:44px; } }

.active-offers-panel { line-height:1.2; }
/* Consent-based Telethon mailing tool. */
.tg-mailing-page{--tg-accent:var(--release-primary)}.tg-mailing-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:12px;margin-bottom:12px}.tg-mailing-compose{min-height:430px}.tg-mailing-compose h3,.tg-mailing-status h3{margin:0 0 14px}.tg-mailing-drop{min-height:118px;display:grid;place-items:center;align-content:center;gap:5px;margin-bottom:12px;border:1px dashed var(--release-line);border-radius:10px;background:var(--release-soft);cursor:pointer;text-align:center}.tg-mailing-drop:hover{border-color:var(--tg-accent);background:var(--release-soft)}.tg-mailing-drop span{color:var(--text3);font-size:10px}.tg-mailing-drop input{position:absolute;width:1px;height:1px;opacity:0}.tg-mailing-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:12px}.tg-mailing-preview span,.tg-mailing-accounts label{min-width:0;padding:9px;border:1px solid var(--border);border-radius:8px;background:var(--bg2)}.tg-mailing-preview b,.tg-mailing-preview small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-mailing-preview small,.tg-mailing-accounts span{color:var(--text3);font-size:9px}.tg-mailing-accounts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:12px}.tg-mailing-accounts label{display:grid;grid-template-columns:auto 1fr;column-gap:7px;cursor:pointer}.tg-mailing-accounts label input{grid-row:1/3}.tg-mailing-accounts strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-mailing-compose textarea{width:100%;resize:vertical}.tg-mailing-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.tg-mailing-controls label{color:var(--text3);font-size:9px}.tg-mailing-controls input{width:100%;margin-top:4px}.tg-mailing-consent{display:flex;align-items:center;gap:8px;margin:13px 0;color:var(--text2)}.tg-mailing-status{min-height:170px}.tg-mailing-status-head{display:flex;justify-content:space-between}.tg-mailing-status-head span{color:var(--tg-accent)}.tg-mailing-progress{height:7px;margin:12px 0 17px;overflow:hidden;border-radius:5px;background:var(--release-card)}.tg-mailing-progress i{display:block;width:0;height:100%;background:var(--tg-accent);box-shadow:none;transition:width .2s}.tg-mailing-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.tg-mailing-metrics span{padding:10px;border:1px solid var(--border);border-radius:8px;color:var(--text3);font-size:9px}.tg-mailing-metrics strong{display:block;color:var(--text);font-size:19px;font-variant-numeric:tabular-nums}.tg-mailing-log{margin-top:12px;color:var(--text3);font-size:10px}@media(max-width:900px){.tg-mailing-grid{grid-template-columns:1fr}.tg-mailing-compose{min-height:0}}@media(max-width:560px){.tg-mailing-preview,.tg-mailing-accounts,.tg-mailing-controls,.tg-mailing-metrics{grid-template-columns:1fr}}
.tg-spintax-help{display:flex;align-items:center;gap:9px;margin:-6px 0 8px;color:var(--text3);font-size:9px}.tg-spintax-help code{padding:4px 6px;border:1px solid var(--release-line);border-radius:5px;background:var(--release-soft);color:var(--tg-accent)}.tg-spintax-preview{min-height:42px;margin-bottom:10px;padding:9px 10px;border-left:1px solid var(--tg-accent);border-radius:4px;background:var(--bg2);color:var(--text2);font-size:10px;white-space:pre-wrap}.tg-spintax-preview.is-error{border-color:#ffb000;color:#ffb000}

/* Keep long monetary values on one baseline inside the compact KPI grid. */
body[data-theme] #tab-leads #funnel-revenue {
  min-width:0;
  max-width:100%;
  overflow:hidden;
  white-space:nowrap;
  font-size:clamp(22px,2.1vw,30px);
  line-height:34px;
  letter-spacing:-.045em;
  font-variant-numeric:tabular-nums lining-nums;
}

.tg-connect-qr{justify-items:center}.tg-connect-qr img{width:220px;height:220px;padding:10px;border-radius:14px;background:var(--release-card);outline:1px solid rgba(255,255,255,.12)}.tg-connect-qr ol{width:100%;margin:2px 0 4px;padding-left:24px;color:var(--release-muted);font-size:11px;line-height:1.8}.tg-connect-qr .secondary{width:100%}.tg-connect-qr-password{width:100%;display:grid;gap:10px;padding:12px;border:1px solid var(--release-line);border-radius:10px;background:var(--release-soft)}.tg-connect-qr-password[hidden]{display:none}.tg-connect-qr-password label{width:100%}.tg-connect-qr-password button{min-height:46px;border:0;border-radius:9px;background:var(--release-soft);color:var(--release-text);font-size:12px;font-weight:750}

/* Messenger operations reference — measured from 1280x624. */
.crm-messengers-page{--msg-bg:var(--release-bg);--msg-panel:var(--release-card);--msg-panel-2:var(--release-soft);--msg-border:var(--release-line);--msg-text:var(--release-text);--msg-muted:var(--release-muted);--msg-green:var(--release-primary);--msg-green-soft:var(--release-soft)}.crm-messengers-page-head{min-height:39px;margin-bottom:8px;align-items:flex-start}.crm-messengers-page-head .page-title{font-size:21px;line-height:23px}.crm-messengers-page-head .page-subtitle{font-size:9px}.crm-messengers-page-head .btn-sm{min-width:83px;min-height:38px;border-radius:10px;background:var(--release-card)}.crm-messengers-page .crm-section-body{display:block}.msg-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.msg-kpis article{height:94px;display:flex;align-items:center;gap:22px;padding:14px;border:1px solid var(--msg-border);border-radius:8px;background:var(--release-card);box-shadow:inset 0 1px rgba(255,255,255,.015)}.msg-kpis article>svg{width:52px;height:52px;padding:12px;border-radius:10px;background:var(--msg-green-soft);color:var(--msg-green);stroke:currentColor;stroke-width:1.8;fill:none}.msg-kpis article div{min-width:0}.msg-kpis span,.msg-kpis small,.msg-kpis strong{display:block}.msg-kpis span{color:var(--release-primary);font-size:10px}.msg-kpis strong{margin:1px 0;color:var(--msg-text);font-size:25px;line-height:27px;font-weight:650;font-variant-numeric:tabular-nums}.msg-kpis small{color:var(--release-muted);font-size:10px}.msg-kpis .msg-sync-value{color:var(--msg-green);font-size:23px;white-space:nowrap}.msg-sync-value b{display:inline-block;width:9px;height:9px;margin-left:6px;border-radius:50%;background:var(--msg-green);box-shadow:none}.msg-accounts-panel{height:198px;margin-top:14px;padding:11px 14px 0;border:1px solid var(--msg-border);border-radius:8px;background:var(--msg-panel);overflow:hidden}.msg-accounts-panel header{height:38px;display:flex;align-items:flex-start;justify-content:space-between}.msg-accounts-panel h2,.msg-bottom-grid h2{margin:0;color:var(--msg-text);font-size:16px}.msg-accounts-panel header button{min-width:192px;height:31px;border:0;border-radius:6px;background:var(--release-soft);color:var(--release-text);font-size:11px;font-weight:700}.msg-account-table{overflow-x:auto}.msg-account-head,.msg-account-row{min-width:950px;display:grid;grid-template-columns:42px 110px minmax(130px,1fr) 135px 205px 175px 130px 125px 20px;align-items:center}.msg-account-head{height:38px;padding:0 8px;background:var(--release-card);color:var(--release-primary);font-size:9px}.msg-account-row{height:52px;padding:0 8px;border-bottom:1px solid var(--release-line);color:var(--release-text);font-size:10px}.msg-account-row strong{font-size:12px;color:var(--msg-text)}.msg-account-login{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-channel-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:var(--release-soft);color:var(--release-text);font-style:normal;font-size:14px;font-weight:800}.msg-channel-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.msg-channel-icon--max{background:radial-gradient(circle at 45% 45%,var(--release-soft) 0 20%,var(--release-soft) 45%,var(--release-soft) 70%)}.msg-account-row>span:nth-child(4){width:max-content;padding:5px 9px;border-radius:12px;background:var(--release-soft);color:var(--msg-green)}.msg-state-dot{display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:currentColor}.msg-sync-ok{display:flex;align-items:center;gap:7px;color:var(--msg-green)}.msg-sync-ok svg{width:18px;height:18px;padding:3px;border-radius:50%;background:var(--msg-green);color:var(--release-primary);stroke-width:3}.msg-account-row time{font-variant-numeric:tabular-nums}.msg-account-row button{height:35px;border:1px solid var(--release-line);border-radius:8px;background:var(--release-card);color:var(--release-text);font-size:10px;font-weight:600}.msg-account-row i{font-size:19px}.msg-bottom-grid{height:250px;display:grid;grid-template-columns:46% minmax(0,1fr);gap:10px;margin-top:8px}.msg-activity,.msg-crm{border:1px solid var(--msg-border);border-radius:8px;background:var(--msg-panel);overflow:hidden}.msg-bottom-grid h2{height:40px;display:flex;align-items:center;gap:10px;padding:0 14px;border-bottom:1px solid var(--release-line)}.msg-bottom-grid h2 svg{width:20px;height:20px;color:var(--msg-green);fill:none;stroke:currentColor;stroke-width:1.8}.msg-activity>div{height:168px;overflow:hidden}.msg-activity-row{height:42px;display:grid;grid-template-columns:38px 1fr 86px;align-items:center;padding:0 13px;border-bottom:1px solid var(--release-line)}.msg-activity-row .msg-channel-icon{width:30px;height:30px}.msg-activity-row span:nth-child(2) strong,.msg-activity-row span:nth-child(2) small{display:block}.msg-activity-row strong{color:var(--release-text);font-size:10px}.msg-activity-row small{color:var(--release-muted);font-size:9px}.msg-activity-row time{color:var(--release-muted);font-size:9px;text-align:right}.msg-activity>button{width:calc(100% - 24px);height:31px;margin:5px 12px;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card);color:var(--release-text);font-size:9px}.msg-crm{display:grid;grid-template-columns:minmax(0,1fr) 194px}.msg-crm>div{min-width:0}.msg-crm ul{margin:0;padding:0 14px;list-style:none}.msg-crm li{height:47px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--release-line)}.msg-crm li span,.msg-crm li small{display:block}.msg-crm li span{color:var(--release-text);font-size:10px}.msg-crm li small{margin-top:2px;color:var(--release-muted);font-size:8px}.msg-crm li b{color:var(--msg-green);font-size:9px;font-weight:500;white-space:nowrap}.msg-crm aside{display:grid;place-items:center;align-content:center;border-left:1px solid var(--release-line);text-align:center}.msg-crm aside>i{width:93px;height:93px;display:grid;place-items:center;margin-bottom:5px;border:10px solid var(--release-line);border-radius:50%;box-shadow:none;color:var(--msg-green)}.msg-crm aside>i svg{width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:1.8}.msg-crm aside strong{font-size:10px}.msg-crm aside small{margin:4px 0 10px;color:var(--release-muted);font-size:8px}.msg-crm aside button{height:32px;padding:0 12px;border:1px solid var(--release-line);border-radius:7px;background:var(--release-card);color:var(--release-text);font-size:9px}.msg-accounts-panel button,.msg-bottom-grid button{transition-property:background-color,transform;transition-duration:120ms}.msg-accounts-panel button:active,.msg-bottom-grid button:active{transform:scale(.96)}@media(max-width:1100px){.msg-kpis{grid-template-columns:repeat(2,1fr)}.msg-bottom-grid{height:auto;grid-template-columns:1fr}.msg-activity,.msg-crm{min-height:250px}}@media(max-width:640px){.msg-kpis{grid-template-columns:1fr}.msg-crm{grid-template-columns:1fr}.msg-crm aside{padding:20px;border-left:0;border-top:1px solid var(--release-line)}}

.msg-accounts-panel{height:auto;min-height:198px;padding-bottom:10px;overflow:visible}.msg-accounts-head{height:48px;display:flex;align-items:flex-start;justify-content:space-between}.msg-accounts-panel .msg-accounts-head h2{margin:0!important;text-align:left!important;text-wrap:balance}.msg-accounts-head>button{min-width:192px;min-height:40px;border:0;border-radius:7px;background:var(--release-soft);color:var(--release-text);font-size:11px;font-weight:700}.msg-account-table{border-radius:6px;overflow-x:auto;overflow-y:hidden}.msg-account-row{height:57px}.msg-account-row>button{min-height:40px}.msg-row-more{min-width:40px!important;width:40px;padding:0;border-color:transparent!important;background:transparent!important;color:var(--msg-muted)!important;font-size:18px!important;line-height:1}.msg-row-more:hover{background:var(--release-card)!important;color:var(--msg-text)!important}.msg-bottom-grid{margin-top:10px}.msg-activity>button,.msg-crm aside button{min-height:40px}.msg-bottom-grid h2{text-align:left!important;text-wrap:balance}.msg-kpis span,.msg-kpis small,.msg-account-row,.msg-activity-row,.msg-crm li{-webkit-font-smoothing:antialiased}.msg-kpis article,.msg-accounts-panel,.msg-activity,.msg-crm{box-shadow:inset 0 1px rgba(255,255,255,.018),0 8px 22px rgba(0,0,0,.12)}@media(max-width:720px){.crm-messengers-page-head{flex-direction:row;align-items:flex-start}.msg-accounts-head{height:auto;gap:12px;margin-bottom:10px}.msg-accounts-head>button{min-width:180px}.msg-bottom-grid{gap:10px}}
.msg-account-head,.msg-account-row{min-width:990px;grid-template-columns:42px 110px minmax(130px,1fr) 135px 205px 175px 120px 125px 40px}

.msg-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}

.tg-connect-modal[hidden]{display:none}.tg-connect-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}.tg-connect-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76);backdrop-filter:blur(5px)}.tg-connect-dialog{position:relative;width:min(430px,100%);padding:30px;border:1px solid var(--release-line);border-radius:16px;background:var(--release-card);box-shadow:0 28px 80px rgba(0,0,0,.58),inset 0 1px rgba(255,255,255,.025);color:var(--release-text)}.tg-connect-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border:0;border-radius:9px;background:transparent;color:var(--release-muted);font-size:25px}.tg-connect-close:hover{background:var(--release-card);color:var(--release-text)}.tg-connect-mark{width:52px;height:52px;display:grid;place-items:center;margin-bottom:18px;border-radius:14px;background:var(--release-soft);color:var(--release-primary)}.tg-connect-mark svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8}.tg-connect-dialog h2{margin:0 0 7px;font-size:22px;text-wrap:balance}.tg-connect-dialog>p{margin:0 0 22px;color:var(--release-muted);font-size:12px;line-height:1.55;text-wrap:pretty}.tg-connect-step{display:grid;gap:12px}.tg-connect-step[hidden]{display:none}.tg-connect-step label{display:grid;gap:6px;color:var(--release-muted);font-size:11px;font-weight:600}.tg-connect-step label[hidden]{display:none}.tg-connect-step input{width:100%;min-height:46px;padding:0 13px;border:1px solid var(--release-line);border-radius:9px;background:var(--release-card);color:var(--release-text);font:inherit;font-size:14px;outline:0}.tg-connect-step input:focus{border-color:var(--release-line);box-shadow:none}.tg-connect-step>button{min-height:46px;border:0;border-radius:9px;background:var(--release-soft);color:var(--release-text);font-size:12px;font-weight:750;transition-property:background-color,transform;transition-duration:120ms}.tg-connect-step>button:hover{background:var(--release-soft)}.tg-connect-step>button:active,.tg-connect-close:active{transform:scale(.96)}.tg-connect-step>button.secondary{border:1px solid var(--release-line);background:var(--release-card);color:var(--release-muted)}.tg-connect-state{min-height:19px;margin-top:13px;color:var(--release-muted);font-size:11px}.tg-connect-state.is-error{color:#ff7d72}.tg-connect-state.is-success{color:var(--release-primary)}.tg-connect-dialog .tg-connect-note{margin:18px 0 0;padding-top:15px;border-top:1px solid var(--release-line);color:var(--release-muted);font-size:9px}.modal-open{overflow:hidden}@media(max-width:520px){.tg-connect-dialog{padding:24px 20px}.tg-connect-modal{padding:10px}}

/* AI Agent catalog — reference geometry, TrafficHub palette. */
#tab-ai-agent.ai-agent-page{--ai-canvas:var(--release-bg);--ai-panel:var(--release-card);--ai-panel-raised:var(--release-soft);--ai-card:var(--release-card);--ai-border:var(--release-line);--ai-ink:var(--release-text);--ai-muted:var(--release-muted);--ai-accent:var(--release-primary);--ai-accent-soft:var(--release-soft);color:var(--ai-ink)}
#tab-ai-agent .ai-agent-page-head{min-height:56px;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--ai-border);align-items:center}
#tab-ai-agent .ai-agent-page-head>div{display:flex;align-items:center;gap:12px}
#tab-ai-agent .ai-agent-title-icon{display:grid;place-items:center;width:24px;height:24px;color:var(--ai-muted)}
#tab-ai-agent .ai-agent-title-icon svg,#tab-ai-agent .ai-agent-page-head svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#tab-ai-agent .ai-agent-page-head .page-title{font-size:20px;line-height:24px;letter-spacing:-.025em}
#tab-ai-agent .ai-agent-page-head .page-subtitle{margin-top:2px;font-size:10px;line-height:14px;color:var(--ai-muted)}
#tab-ai-agent .ai-agent-create-top{min-height:40px;padding:0 14px;border:0;border-radius:7px;background:var(--ai-accent);color:var(--release-on);font-size:11px;font-weight:750;box-shadow:inset 0 1px rgb(255 255 255 / .22)}
#tab-ai-agent .ai-agent-create-top:hover{background:var(--release-soft);color:var(--release-text)}
#tab-ai-agent .ai-agent-guide{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(500px,1.5fr);gap:18px;min-height:112px;padding:11px 14px;border:1px solid var(--release-line);border-radius:12px;background:var(--release-card);box-shadow:inset 0 1px rgb(255 255 255 / .04)}
#tab-ai-agent .ai-agent-guide-copy{align-self:center}
#tab-ai-agent .ai-agent-guide-copy h2{margin:0;color:var(--release-text);font-size:17px;line-height:22px;font-weight:700;text-wrap:balance}
#tab-ai-agent .ai-agent-guide-copy p{margin:3px 0 10px;color:var(--release-muted);font-size:10px;line-height:14px;text-wrap:pretty}
#tab-ai-agent .ai-agent-guide-copy button{min-height:30px;padding:0 12px;border:1px solid var(--release-line);border-radius:6px;background:var(--ai-accent);color:var(--release-on);font-size:10px;font-weight:700}
#tab-ai-agent .ai-agent-guide-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#tab-ai-agent .ai-agent-guide-steps article{min-width:0;padding:9px 10px;border:1px solid rgb(255 255 255 / .055);border-radius:8px;background:var(--release-soft)}
#tab-ai-agent .ai-agent-guide-steps i{display:grid;place-items:center;width:25px;height:25px;margin-bottom:7px;border-radius:6px;background:rgb(0 0 0 / .18);color:var(--release-text);font-style:normal}
#tab-ai-agent .ai-agent-guide-steps svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#tab-ai-agent .ai-agent-guide-steps strong,#tab-ai-agent .ai-agent-guide-steps span{display:block;overflow:hidden;text-overflow:ellipsis}
#tab-ai-agent .ai-agent-guide-steps strong{color:var(--release-text);font-size:10px;line-height:14px;white-space:nowrap}
#tab-ai-agent .ai-agent-guide-steps span{margin-top:3px;color:var(--release-muted);font-size:8px;line-height:11px;text-wrap:pretty}
#tab-ai-agent .ai-agent-catalog{min-height:322px;margin-top:22px;padding:16px;border:1px solid var(--ai-border);border-radius:12px;background:var(--ai-panel);box-shadow:inset 0 1px rgb(255 255 255 / .018)}
#tab-ai-agent .ai-agent-catalog>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
#tab-ai-agent .ai-agent-catalog>header h2{display:flex;align-items:center;gap:9px;margin:0;color:var(--ai-ink);font-size:16px;line-height:21px}
#tab-ai-agent .ai-agent-catalog>header h2 svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
#tab-ai-agent .ai-agent-catalog>header p{margin-top:2px;color:var(--ai-muted);font-size:9px;line-height:13px}
#tab-ai-agent .ai-agent-catalog>header p strong{color:inherit;font-weight:500;font-variant-numeric:tabular-nums}
#tab-ai-agent .ai-agent-catalog-tools{display:flex;align-items:center;gap:9px}
#tab-ai-agent .ai-agent-catalog-tools label{position:relative;display:block;width:220px}
#tab-ai-agent .ai-agent-catalog-tools label svg{position:absolute;left:11px;top:50%;width:15px;height:15px;fill:none;stroke:var(--ai-muted);stroke-width:1.8;transform:translateY(-50%);pointer-events:none}
#tab-ai-agent .ai-agent-catalog-tools input,#tab-ai-agent .ai-agent-catalog-tools select{height:34px;border:1px solid var(--ai-border);border-radius:6px;background:var(--ai-panel-raised);color:var(--ai-ink);font-size:10px}
#tab-ai-agent .ai-agent-catalog-tools input{width:100%;padding:0 10px 0 34px}
#tab-ai-agent .ai-agent-catalog-tools select{width:130px;padding:0 28px 0 10px}
#tab-ai-agent .ai-agent-view-switch{display:flex;gap:3px}
#tab-ai-agent .ai-agent-view-switch button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--ai-border);border-radius:6px;background:var(--ai-panel-raised);color:var(--ai-muted)}
#tab-ai-agent .ai-agent-view-switch button.is-active{border-color:var(--release-line);background:var(--ai-accent-soft);color:var(--ai-accent)}
#tab-ai-agent .ai-agent-view-switch svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#tab-ai-agent .ai-agent-card-grid{display:grid;grid-template-columns:256px 256px;gap:10px;align-items:stretch}
#tab-ai-agent .ai-agent-card-grid.is-list{grid-template-columns:minmax(0,540px)}
#tab-ai-agent .ai-agent-card-grid.is-list :is(.ai-agent-new-card,.ai-agent-card){width:100%}
#tab-ai-agent :is(.ai-agent-new-card,.ai-agent-card){min-height:230px;padding:16px;border:1px solid var(--ai-border);border-radius:9px;background:var(--ai-card);color:var(--ai-ink)}
#tab-ai-agent .ai-agent-new-card{display:flex;flex-direction:column;justify-content:space-between;border-color:var(--release-line);background:radial-gradient(circle at 25% 5%,var(--release-soft),transparent 42%),var(--ai-card)}
#tab-ai-agent .ai-agent-new-card i{position:relative;display:grid;place-items:center;width:38px;height:38px;margin-bottom:12px;border-radius:50%;background:var(--ai-accent-soft);color:var(--ai-accent);font-style:normal}
#tab-ai-agent .ai-agent-new-card i svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
#tab-ai-agent .ai-agent-new-card i b{position:absolute;right:-2px;top:-2px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--ai-accent);color:var(--release-on);font-size:12px}
#tab-ai-agent :is(.ai-agent-new-card,.ai-agent-card) h3{margin:0;color:var(--ai-ink);font-size:13px;line-height:18px;text-wrap:balance}
#tab-ai-agent .ai-agent-new-card p{margin:4px 0 0;color:var(--ai-muted);font-size:9px;line-height:14px;text-wrap:pretty}
#tab-ai-agent .ai-agent-new-card ul{display:grid;gap:4px;margin:13px 0;padding:0;list-style:none;color:var(--release-primary);font-size:8px}
#tab-ai-agent .ai-agent-new-card li:before{content:'✓';margin-right:6px;color:var(--ai-accent)}
#tab-ai-agent .ai-agent-new-card>button{width:100%;min-height:32px;border:0;border-radius:6px;background:var(--ai-accent);color:var(--release-on);font-size:10px;font-weight:750}
#tab-ai-agent .ai-agent-card{display:flex;flex-direction:column}
#tab-ai-agent .ai-agent-card-head{display:flex;align-items:center;gap:9px}
#tab-ai-agent .ai-agent-avatar{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid var(--release-line);border-radius:50%;background:var(--release-card);color:var(--ai-accent);font-size:9px;font-weight:700}
#tab-ai-agent .ai-agent-card-head>div{min-width:0;flex:1}
#tab-ai-agent .ai-agent-card-head small{display:block;margin-top:1px;overflow:hidden;text-overflow:ellipsis;color:var(--ai-muted);font-size:8px;white-space:nowrap}
#tab-ai-agent .ai-agent-card-head>button{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:6px;background:transparent;color:var(--ai-muted)}
#tab-ai-agent .ai-agent-card-head>button:hover{background:var(--ai-panel-raised);color:var(--ai-ink)}
#tab-ai-agent .ai-agent-card-head svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
#tab-ai-agent .ai-agent-assistant{margin:12px 0 0;color:var(--release-muted);font-size:9px;line-height:14px;text-wrap:pretty}
#tab-ai-agent .ai-agent-card-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px}
#tab-ai-agent .ai-agent-card-metrics span{min-width:0;padding:7px;border:1px solid var(--ai-border);border-radius:6px;background:rgb(0 0 0 / .12)}
#tab-ai-agent .ai-agent-card-metrics small,#tab-ai-agent .ai-agent-card-metrics strong,#tab-ai-agent .ai-agent-card-metrics em{display:block}
#tab-ai-agent .ai-agent-card-metrics small{overflow:hidden;color:var(--ai-muted);font-size:7px;white-space:nowrap;text-overflow:ellipsis}
#tab-ai-agent .ai-agent-card-metrics strong{margin-top:2px;color:var(--ai-accent);font-size:15px;line-height:18px;font-variant-numeric:tabular-nums}
#tab-ai-agent .ai-agent-card-metrics em{color:var(--ai-muted);font-size:7px;font-style:normal}
#tab-ai-agent .ai-agent-prompt{margin-top:auto;padding-top:10px;border-top:1px solid var(--ai-border);color:var(--ai-muted);font-size:8px;line-height:12px}
#tab-ai-agent .ai-agent-prompt strong{color:var(--release-text)}
#tab-ai-agent .ai-agent-card footer{display:flex;align-items:center;gap:8px;min-height:31px;margin-top:8px;border:0;color:var(--ai-muted);font-size:8px}
#tab-ai-agent .ai-agent-card .ai-agent-toggle{margin-right:auto}
#tab-ai-agent .ai-agent-card-details{min-height:30px;padding:0 7px;border:0;background:transparent;color:var(--ai-accent);font-size:8px}
#tab-ai-agent #hr-agent-state{display:none}
#tab-ai-agent .ai-agent-empty-filter{grid-column:1/-1;min-height:160px;place-items:center;color:var(--ai-muted);font-size:11px}
#tab-ai-agent .ai-agent-empty-filter:not([hidden]){display:grid}
#tab-ai-agent .ai-agent-details{margin-top:16px;padding:16px;border:1px solid var(--ai-border);border-radius:12px;background:var(--ai-panel)}
#tab-ai-agent .ai-agent-details[hidden]{display:none}
#tab-ai-agent .ai-agent-details>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
#tab-ai-agent .ai-agent-details>header span{color:var(--ai-accent);font-size:8px;text-transform:uppercase;letter-spacing:.1em}
#tab-ai-agent .ai-agent-details>header h2{margin:2px 0 0;font-size:16px}
#tab-ai-agent .ai-agent-details>header button{width:36px;height:36px;border:1px solid var(--ai-border);border-radius:7px;background:var(--ai-panel-raised);color:var(--ai-muted);font-size:22px}

body[data-theme='light'] #tab-ai-agent.ai-agent-page{--ai-canvas:var(--release-bg);--ai-panel:var(--release-card);--ai-panel-raised:var(--release-soft);--ai-card:var(--release-card);--ai-border:var(--release-line);--ai-ink:var(--release-text);--ai-muted:var(--release-muted);--ai-accent:var(--release-primary);--ai-accent-soft:var(--release-soft)}
body[data-theme='light'] #tab-ai-agent .ai-agent-guide{border-color:var(--release-line);background:var(--release-card)}
body[data-theme='light'] #tab-ai-agent .ai-agent-guide-copy h2,body[data-theme='light'] #tab-ai-agent .ai-agent-guide-steps strong{color:var(--release-text)}
body[data-theme='light'] #tab-ai-agent .ai-agent-guide-copy p,body[data-theme='light'] #tab-ai-agent .ai-agent-guide-steps span{color:var(--release-muted)}
body[data-theme='light'] #tab-ai-agent .ai-agent-guide-steps article{border-color:rgb(24 32 25 / .08);background:rgb(255 255 255 / .35)}
body[data-theme='light'] #tab-ai-agent .ai-agent-guide-steps i{background:rgb(255 255 255 / .55);color:var(--release-primary)}
body[data-theme='light'] #tab-ai-agent .ai-agent-avatar{background:var(--release-card)}
body[data-theme='light'] #tab-ai-agent .ai-agent-card-metrics span{background:var(--release-card)}

@media(max-width:760px){#tab-ai-agent .ai-agent-guide{grid-template-columns:1fr;padding:16px}#tab-ai-agent .ai-agent-guide-steps{grid-template-columns:repeat(2,1fr)}#tab-ai-agent .ai-agent-catalog>header{align-items:flex-start;flex-direction:column}#tab-ai-agent .ai-agent-catalog-tools{width:100%}#tab-ai-agent .ai-agent-catalog-tools label{flex:1}}
@media(max-width:700px){#tab-ai-agent .ai-agent-page-head{align-items:flex-start}#tab-ai-agent .ai-agent-create-top{min-height:44px}#tab-ai-agent .ai-agent-guide-steps{grid-template-columns:1fr}#tab-ai-agent .ai-agent-catalog-tools{flex-wrap:wrap}#tab-ai-agent .ai-agent-catalog-tools label{flex:1 0 100%;width:100%}#tab-ai-agent .ai-agent-catalog-tools :is(input,select),#tab-ai-agent .ai-agent-view-switch button{min-height:44px}#tab-ai-agent .ai-agent-card-grid{grid-template-columns:1fr}#tab-ai-agent :is(.ai-agent-new-card,.ai-agent-card){min-height:230px}}
@media(prefers-reduced-motion:reduce){#tab-ai-agent *{scroll-behavior:auto!important;transition:none!important}}

/* AI Agent catalog polish — readable scale, balanced density and responsive cards. */
#tab-ai-agent .ai-agent-page-head{min-height:74px;margin-bottom:20px;padding-bottom:18px}
#tab-ai-agent .ai-agent-title-icon{width:32px;height:32px}
#tab-ai-agent .ai-agent-title-icon svg{width:22px;height:22px}
#tab-ai-agent .ai-agent-page-head .page-title{font-size:32px;line-height:38px;letter-spacing:-.035em}
#tab-ai-agent .ai-agent-page-head .page-subtitle{margin-top:4px;font-size:14px;line-height:20px}
#tab-ai-agent .ai-agent-create-top{min-height:48px;padding-inline:20px;border-radius:10px;font-size:14px;transition:background-color 140ms ease-out,box-shadow 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-agent-create-top:hover{box-shadow:none}
#tab-ai-agent .ai-agent-create-top:active{scale:.96}

#tab-ai-agent .ai-agent-guide{grid-template-columns:minmax(310px,.8fr) minmax(680px,1.6fr);gap:24px;min-height:144px;padding:18px;border-radius:14px}
#tab-ai-agent .ai-agent-guide-copy h2{font-size:21px;line-height:27px}
#tab-ai-agent .ai-agent-guide-copy p{margin:5px 0 13px;font-size:12px;line-height:17px}
#tab-ai-agent .ai-agent-guide-copy button{min-height:40px;padding-inline:16px;border-radius:8px;font-size:12px;transition:background-color 140ms ease-out,box-shadow 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-agent-guide-copy button:hover{background:var(--release-soft);box-shadow:none}
#tab-ai-agent .ai-agent-guide-copy button:active{scale:.96}
#tab-ai-agent .ai-agent-guide-steps{gap:12px}
#tab-ai-agent .ai-agent-guide-steps article{display:flex;min-height:106px;flex-direction:column;justify-content:center;padding:13px;border-radius:10px;transition:border-color 140ms ease-out,background-color 140ms ease-out,transform 120ms ease-out}
#tab-ai-agent .ai-agent-guide-steps article:hover{border-color:var(--release-line);background:rgb(255 255 255 / .06);transform:translateY(-1px)}
#tab-ai-agent .ai-agent-guide-steps i{width:32px;height:32px;margin-bottom:9px;border-radius:8px;color:var(--ai-accent)}
#tab-ai-agent .ai-agent-guide-steps svg{width:18px;height:18px;stroke-width:1.9}
#tab-ai-agent .ai-agent-guide-steps strong{font-size:12px;line-height:16px}
#tab-ai-agent .ai-agent-guide-steps span{margin-top:4px;font-size:10px;line-height:14px}

#tab-ai-agent .ai-agent-catalog{min-height:0;margin-top:20px;padding:0;border-radius:14px;overflow:hidden}
#tab-ai-agent .ai-agent-catalog>header{min-height:92px;margin:0;padding:20px 22px;border-bottom:1px solid var(--ai-border);background:linear-gradient(180deg,rgb(255 255 255 / .012),transparent)}
#tab-ai-agent .ai-agent-catalog>header h2{gap:10px;font-size:20px;line-height:26px}
#tab-ai-agent .ai-agent-catalog>header h2 svg{width:21px;height:21px;color:var(--ai-accent)}
#tab-ai-agent .ai-agent-catalog>header p{margin-top:4px;font-size:11px;line-height:15px}
#tab-ai-agent .ai-agent-catalog-tools{gap:10px}
#tab-ai-agent .ai-agent-catalog-tools label{width:276px}
#tab-ai-agent .ai-agent-catalog-tools input,#tab-ai-agent .ai-agent-catalog-tools select{height:42px;border-radius:9px;font-size:13px;outline:0;transition:border-color 140ms ease-out,box-shadow 140ms ease-out,background-color 140ms ease-out}
#tab-ai-agent .ai-agent-catalog-tools input:focus,#tab-ai-agent .ai-agent-catalog-tools select:focus{border-color:var(--release-line);box-shadow:none}
#tab-ai-agent .ai-agent-catalog-tools select{width:154px;padding-left:13px}
#tab-ai-agent .ai-agent-view-switch{gap:5px}
#tab-ai-agent .ai-agent-view-switch button{width:42px;height:42px;border-radius:9px;transition:border-color 140ms ease-out,background-color 140ms ease-out,color 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-agent-view-switch button:hover{border-color:var(--release-line);color:var(--ai-ink)}
#tab-ai-agent .ai-agent-view-switch button:active{scale:.96}
#tab-ai-agent .ai-agent-view-switch svg{width:18px;height:18px}

#tab-ai-agent .ai-agent-card-grid{grid-template-columns:repeat(2,minmax(320px,1fr));gap:16px;padding:20px 22px 22px}
#tab-ai-agent .ai-agent-card-grid.is-list{grid-template-columns:1fr}
#tab-ai-agent .ai-agent-card-grid.is-list :is(.ai-agent-new-card,.ai-agent-card){width:100%;max-width:none}
#tab-ai-agent :is(.ai-agent-new-card,.ai-agent-card){min-height:324px;padding:22px;border-radius:12px;box-shadow:0 10px 30px rgb(0 0 0 / .12),inset 0 1px rgb(255 255 255 / .018)}
#tab-ai-agent .ai-agent-new-card i{width:48px;height:48px;margin-bottom:18px}
#tab-ai-agent .ai-agent-new-card i svg{width:24px;height:24px}
#tab-ai-agent .ai-agent-new-card i b{right:-3px;top:-3px;width:21px;height:21px;font-size:14px}
#tab-ai-agent :is(.ai-agent-new-card,.ai-agent-card) h3{font-size:20px;line-height:25px}
#tab-ai-agent .ai-agent-new-card p{max-width:460px;margin-top:7px;font-size:12px;line-height:18px}
#tab-ai-agent .ai-agent-new-card ul{gap:8px;margin:22px 0;color:var(--release-muted);font-size:11px;line-height:16px}
#tab-ai-agent .ai-agent-new-card li:before{margin-right:8px}
#tab-ai-agent .ai-agent-new-card>button{min-height:44px;border-radius:9px;font-size:12px;transition:background-color 140ms ease-out,box-shadow 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-agent-new-card>button:hover{background:var(--release-soft);box-shadow:none}
#tab-ai-agent .ai-agent-new-card>button:active{scale:.96}
#tab-ai-agent .ai-agent-card-head{gap:13px}
#tab-ai-agent .ai-agent-avatar{flex-basis:48px;width:48px;height:48px;font-size:12px}
#tab-ai-agent .ai-agent-card-head small{margin-top:3px;font-size:10px;line-height:14px}
#tab-ai-agent .ai-agent-card-head>button{width:40px;height:40px;border-radius:8px;transition:background-color 140ms ease-out,color 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-agent-card-head>button:active{scale:.96}
#tab-ai-agent .ai-agent-card-head svg{width:18px;height:18px}
#tab-ai-agent .ai-agent-assistant{max-width:580px;margin-top:17px;font-size:12px;line-height:18px}
#tab-ai-agent .ai-agent-card-metrics{gap:10px;margin-top:16px}
#tab-ai-agent .ai-agent-card-metrics span{padding:11px 12px;border-radius:8px}
#tab-ai-agent .ai-agent-card-metrics small{font-size:9px;line-height:13px}
#tab-ai-agent .ai-agent-card-metrics strong{margin-top:4px;font-size:22px;line-height:25px}
#tab-ai-agent .ai-agent-card-metrics em{margin-top:2px;font-size:9px;line-height:12px}
#tab-ai-agent .ai-agent-prompt{padding-top:15px;font-size:10px;line-height:15px}
#tab-ai-agent .ai-agent-card footer{gap:11px;min-height:42px;margin-top:10px;font-size:10px}
#tab-ai-agent .ai-agent-card .ai-agent-toggle{width:46px;height:24px;min-height:24px}
#tab-ai-agent .ai-agent-card .ai-agent-toggle::before{width:16px;height:16px}
#tab-ai-agent .ai-agent-card .ai-agent-toggle.is-enabled::before{transform:translateX(21px)}
#tab-ai-agent .ai-agent-card-details{min-height:40px;padding-inline:10px;font-size:10px;font-weight:700;transition:color 120ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-agent-card-details:hover{color:var(--release-primary)}
#tab-ai-agent .ai-agent-card-details:active{scale:.96}
#tab-ai-agent .ai-agent-card[role="button"]{transition:border-color 140ms ease-out,background-color 140ms ease-out,box-shadow 140ms ease-out,transform 120ms ease-out}
#tab-ai-agent .ai-agent-card[role="button"]:hover{border-color:var(--release-line);background:var(--release-card);box-shadow:0 14px 36px rgb(0 0 0 / .18);transform:translateY(-2px)}

@media(max-width:1180px){#tab-ai-agent .ai-agent-guide{grid-template-columns:1fr}#tab-ai-agent .ai-agent-guide-steps article{min-height:100px}#tab-ai-agent .ai-agent-card-grid{grid-template-columns:repeat(2,minmax(280px,1fr))}}
@media(max-width:820px){#tab-ai-agent .ai-agent-page-head .page-title{font-size:26px;line-height:32px}#tab-ai-agent .ai-agent-catalog>header{align-items:flex-start;flex-direction:column}#tab-ai-agent .ai-agent-catalog-tools{width:100%}#tab-ai-agent .ai-agent-catalog-tools label{flex:1;width:auto}#tab-ai-agent .ai-agent-card-grid{grid-template-columns:1fr}}
@media(max-width:700px){#tab-ai-agent .ai-agent-page-head{min-height:0}#tab-ai-agent .ai-agent-page-head>div{align-items:flex-start}#tab-ai-agent .ai-agent-page-head .page-title{font-size:24px;line-height:29px}#tab-ai-agent .ai-agent-page-head .page-subtitle{font-size:12px;line-height:17px}#tab-ai-agent .ai-agent-guide{padding:16px}#tab-ai-agent .ai-agent-guide-copy h2{font-size:19px}#tab-ai-agent .ai-agent-guide-steps{grid-template-columns:1fr}#tab-ai-agent .ai-agent-guide-steps article{min-height:94px}#tab-ai-agent .ai-agent-catalog>header{padding:17px}#tab-ai-agent .ai-agent-catalog-tools{flex-wrap:wrap}#tab-ai-agent .ai-agent-catalog-tools label{flex-basis:100%}#tab-ai-agent .ai-agent-catalog-tools select{flex:1;width:auto}#tab-ai-agent .ai-agent-card-grid{padding:16px}#tab-ai-agent :is(.ai-agent-new-card,.ai-agent-card){min-height:300px;padding:18px}#tab-ai-agent .ai-agent-card-metrics{grid-template-columns:1fr}#tab-ai-agent .ai-agent-card-metrics span{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}#tab-ai-agent .ai-agent-card-metrics strong{grid-column:2;grid-row:1/3}#tab-ai-agent .ai-agent-card-metrics em{grid-column:1}}

/* AI agent editor — dedicated view based on the supplied reference. */
#tab-ai-agent .ai-agent-card[role="button"]{cursor:pointer;transition:border-color 140ms ease-out,background-color 140ms ease-out,transform 120ms ease-out}
#tab-ai-agent .ai-agent-card[role="button"]:hover{border-color:var(--release-line);background:var(--release-card);transform:translateY(-1px)}
#tab-ai-agent .ai-agent-card[role="button"]:focus-visible{outline:2px solid var(--ai-accent);outline-offset:3px}
#tab-ai-agent .ai-agent-editor[hidden]{display:none}
#tab-ai-agent .ai-agent-editor{min-height:calc(100vh - 104px);margin:-22px -22px -24px;background:var(--ai-canvas);color:var(--ai-ink)}
#tab-ai-agent .ai-editor-head{display:grid;grid-template-columns:28px 28px minmax(0,1fr) 30px;align-items:center;gap:9px;min-height:58px;padding:7px 10px;border-top:1px solid var(--release-line);border-bottom:1px solid var(--ai-border);background:var(--release-card)}
#tab-ai-agent .ai-editor-back,#tab-ai-agent .ai-editor-help{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--ai-muted);font-size:15px}
#tab-ai-agent .ai-editor-back:hover,#tab-ai-agent .ai-editor-help:hover{background:var(--ai-panel-raised);color:var(--ai-ink)}
#tab-ai-agent .ai-editor-head-icon{display:grid;place-items:center;width:25px;height:25px;color:var(--release-muted)}
#tab-ai-agent .ai-editor-head-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#tab-ai-agent .ai-editor-head>div{min-width:0}
#tab-ai-agent .ai-editor-breadcrumb{display:flex;align-items:center;gap:7px;min-width:0}
#tab-ai-agent .ai-editor-breadcrumb button{padding:0;border:0;background:transparent;color:var(--ai-muted);font-size:10px}
#tab-ai-agent .ai-editor-breadcrumb span{color:var(--release-primary);font-size:11px}
#tab-ai-agent .ai-editor-breadcrumb h1{margin:0;color:var(--ai-ink);font-size:15px;line-height:20px;white-space:nowrap}
#tab-ai-agent .ai-editor-breadcrumb b{padding:3px 7px;border:1px solid var(--release-line);border-radius:999px;background:var(--release-soft);color:var(--ai-accent);font-size:7px;line-height:10px;font-weight:700}
#tab-ai-agent .ai-editor-breadcrumb b.is-stopped{border-color:rgb(255 76 88 / .24);background:rgb(255 76 88 / .1);color:#ff5a65}
#tab-ai-agent .ai-editor-head p{margin:1px 0 0;color:var(--ai-muted);font-size:8px;line-height:12px}
#tab-ai-agent .ai-editor-tabs{display:flex;align-items:flex-end;gap:8px;height:55px;padding:0 10px;border-bottom:1px solid var(--ai-border);background:var(--release-card)}
#tab-ai-agent .ai-editor-tabs button{position:relative;display:flex;align-items:center;gap:5px;height:38px;padding:0 6px;border:0;background:transparent;color:var(--release-primary);font-size:9px;font-weight:600}
#tab-ai-agent .ai-editor-tabs button:hover{color:var(--release-text)}
#tab-ai-agent .ai-editor-tabs button.is-active{color:var(--ai-accent)}
#tab-ai-agent .ai-editor-tabs button.is-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--ai-accent)}
#tab-ai-agent .ai-editor-tabs button span{font-size:12px}
#tab-ai-agent .ai-editor-pane[hidden]{display:none}
#tab-ai-agent .ai-editor-workspace{display:grid;grid-template-columns:minmax(430px,1fr) minmax(430px,1fr);gap:9px;height:calc(100vh - 217px);min-height:565px;padding:0 9px 9px;background:var(--release-card)}
#tab-ai-agent .ai-editor-instructions,#tab-ai-agent .ai-editor-test{min-width:0;border:1px solid var(--ai-border);border-radius:8px;background:var(--release-card);overflow:hidden}
#tab-ai-agent .ai-editor-instructions{padding:14px 14px 18px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#59616a transparent}
#tab-ai-agent .ai-editor-instructions>header{display:flex;align-items:flex-start;gap:9px;min-height:0;margin-bottom:14px;padding:0;border:0;background:transparent}
#tab-ai-agent .ai-editor-section-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid var(--release-line);border-radius:7px;background:var(--release-soft);color:var(--release-muted)}
#tab-ai-agent .ai-editor-section-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#tab-ai-agent .ai-editor-instructions h2,#tab-ai-agent .ai-editor-instructions h3{margin:0;color:var(--release-text);font-size:11px;line-height:15px}
#tab-ai-agent .ai-editor-instructions h2 small,#tab-ai-agent .ai-editor-instructions h3 small{display:inline-grid;place-items:center;width:12px;height:12px;border:1px solid var(--release-line);border-radius:50%;color:var(--release-primary);font-size:7px}
#tab-ai-agent .ai-editor-instructions>header p,#tab-ai-agent .ai-editor-variable-card p{margin:1px 0 0;color:var(--release-primary);font-size:8px;line-height:12px}
#tab-ai-agent .ai-editor-model>span,#tab-ai-agent .ai-editor-prompt-head strong{display:block;margin-bottom:6px;color:var(--release-text);font-size:9px;font-weight:650}
#tab-ai-agent .ai-editor-model>div{display:grid;grid-template-columns:minmax(0,1fr) 106px;gap:7px}
#tab-ai-agent .ai-editor-model select,#tab-ai-agent .ai-editor-model button{height:30px;border:1px solid var(--release-line);border-radius:4px;background:var(--release-card);color:var(--release-text);font-size:8px}
#tab-ai-agent .ai-editor-model select{padding:0 9px}
#tab-ai-agent .ai-editor-model button{border-color:var(--release-line);background:var(--release-soft);color:var(--ai-accent);font-weight:700}
#tab-ai-agent .ai-editor-prompt-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}
#tab-ai-agent .ai-editor-prompt-head button{padding:0;border:0;background:transparent;color:var(--ai-accent);font-size:7px}
#tab-ai-agent .ai-editor-prompt-box{border:1px solid var(--release-line);border-radius:5px;background:var(--release-card);overflow:hidden}
#tab-ai-agent .ai-editor-toolbar{display:flex;align-items:center;gap:12px;height:30px;padding:0 9px;border-bottom:1px solid var(--release-line);color:var(--release-primary);font-size:10px}
#tab-ai-agent .ai-editor-toolbar em{margin-left:auto;padding:3px 7px;border:1px solid var(--release-line);border-radius:999px;background:var(--release-soft);color:var(--release-primary);font-size:6px;font-style:normal}
#tab-ai-agent .ai-editor-prompt-box textarea{display:block;width:100%;height:200px;min-height:200px;padding:10px;border:0;outline:0;resize:vertical;background:var(--release-card);color:var(--release-text);font:9px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;scrollbar-width:thin;scrollbar-color:#626b74 transparent}
#tab-ai-agent .ai-editor-prompt-box footer{display:flex;align-items:center;justify-content:space-between;min-height:34px;padding:0 8px;border-top:1px solid var(--release-line);color:var(--release-primary);font-size:7px}
#tab-ai-agent .ai-editor-prompt-box footer>span{display:flex;align-items:center;gap:6px}
#tab-ai-agent .ai-editor-prompt-box footer i{width:5px;height:5px;border-radius:50%;background:var(--ai-accent)}
#tab-ai-agent .ai-editor-prompt-box footer button{height:24px;padding:0 9px;border:1px solid var(--release-line);border-radius:4px;background:var(--release-soft);color:var(--release-muted);font-size:7px}
#tab-ai-agent .ai-editor-prompt-box footer button.primary{border-color:var(--release-line);background:var(--ai-accent);color:var(--release-on);font-weight:750}
#tab-ai-agent .ai-editor-variable-card{margin-top:8px;padding:10px;border:1px solid var(--release-line);border-radius:5px;background:var(--release-card)}
#tab-ai-agent .ai-editor-variable-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:0;padding:0;border:0;background:transparent}
#tab-ai-agent .ai-editor-variable-card button{height:25px;padding:0 9px;border:1px solid var(--release-line);border-radius:4px;background:var(--release-soft);color:var(--ai-accent);font-size:7px}
#tab-ai-agent .ai-editor-variable-card>p+button{margin-top:8px;background:var(--ai-accent);color:var(--release-on);font-weight:700}
#tab-ai-agent .ai-editor-variable-card.system{min-height:64px}
#tab-ai-agent .ai-editor-test{position:relative;display:flex;flex-direction:column;background:var(--release-card)}
#tab-ai-agent .ai-editor-test>header{display:flex;justify-content:flex-end;align-items:center;gap:8px;height:41px;padding:0 10px;border-bottom:1px solid var(--ai-border)}
#tab-ai-agent .ai-editor-test>header button{height:28px;padding:0 8px;border:0;border-left:1px solid var(--release-line);background:transparent;color:var(--release-primary);font-size:8px}
#tab-ai-agent .ai-editor-test-empty{display:grid;place-items:center;align-content:center;flex:1;text-align:center}
#tab-ai-agent .ai-editor-test-empty strong{display:grid;place-items:center;width:45px;height:45px;margin-bottom:10px;border-radius:14px;background:var(--release-card);color:var(--release-text);font-size:22px;font-weight:800}
#tab-ai-agent .ai-editor-test-empty h2{margin:0;color:var(--release-text);font-size:13px;line-height:18px}
#tab-ai-agent .ai-editor-test-empty p{margin:8px 0 0;color:var(--release-primary);font-size:8px;line-height:13px}
#tab-ai-agent .ai-editor-test-messages{display:flex;flex:1;flex-direction:column;gap:8px;padding:14px;overflow-y:auto}
#tab-ai-agent .ai-editor-test-messages div{align-self:flex-end;max-width:75%;padding:8px 10px;border-radius:9px 9px 2px 9px;background:var(--release-soft);color:var(--release-text);font-size:9px;line-height:14px}
#tab-ai-agent .ai-editor-test>form{display:grid;grid-template-columns:minmax(0,1fr) 31px;gap:6px;margin:0 12px 12px}
#tab-ai-agent .ai-editor-test>form input{height:32px;padding:0 10px;border:1px solid var(--release-line);border-radius:4px;background:var(--release-soft);color:var(--release-text);font-size:8px;outline:0}
#tab-ai-agent .ai-editor-test>form input:focus{border-color:var(--release-line)}
#tab-ai-agent .ai-editor-test>form button{display:grid;place-items:center;width:31px;height:31px;padding:0;border:0;border-radius:4px;background:var(--release-soft);color:var(--release-text);font-size:12px}
#tab-ai-agent .ai-editor-secondary{min-height:420px;margin:12px;padding:24px;border:1px solid var(--ai-border);border-radius:8px;background:var(--ai-panel)}
#tab-ai-agent .ai-editor-secondary h2{margin:0;color:var(--ai-ink);font-size:16px}
#tab-ai-agent .ai-editor-secondary p{margin:6px 0 18px;color:var(--ai-muted);font-size:10px}
#tab-ai-agent .ai-editor-secondary>button{min-height:34px;padding:0 12px;border:1px solid var(--release-line);border-radius:6px;background:var(--ai-accent-soft);color:var(--ai-accent);font-size:9px}
#tab-ai-agent .ai-editor-setting-row{display:flex;align-items:center;justify-content:space-between;max-width:420px;padding:12px;border:1px solid var(--ai-border);border-radius:6px;color:var(--release-text);font-size:10px}
body[data-theme='light'] #tab-ai-agent .ai-agent-editor{background:var(--release-card)}
body[data-theme='light'] #tab-ai-agent .ai-editor-head,body[data-theme='light'] #tab-ai-agent .ai-editor-tabs{background:var(--release-card)}
body[data-theme='light'] #tab-ai-agent .ai-editor-workspace{background:var(--release-card)}
body[data-theme='light'] #tab-ai-agent :is(.ai-editor-instructions,.ai-editor-test){background:var(--release-card)}
body[data-theme='light'] #tab-ai-agent :is(.ai-editor-model select,.ai-editor-model button,.ai-editor-prompt-box,.ai-editor-prompt-box textarea,.ai-editor-variable-card){background:var(--release-card);color:var(--release-text)}
body[data-theme='light'] #tab-ai-agent .ai-editor-instructions :is(h2,h3),body[data-theme='light'] #tab-ai-agent .ai-editor-test-empty h2{color:var(--release-text)}
@media(max-width:980px){#tab-ai-agent .ai-editor-workspace{grid-template-columns:1fr;height:auto}#tab-ai-agent .ai-editor-instructions,#tab-ai-agent .ai-editor-test{min-height:560px}}
@media(max-width:700px){#tab-ai-agent .ai-agent-editor{margin:-16px}#tab-ai-agent .ai-editor-head{grid-template-columns:28px minmax(0,1fr) 28px}#tab-ai-agent .ai-editor-head-icon{display:none}#tab-ai-agent .ai-editor-breadcrumb h1{font-size:13px}#tab-ai-agent .ai-editor-tabs{gap:1px;overflow-x:auto}#tab-ai-agent .ai-editor-tabs button{min-width:max-content;height:44px}#tab-ai-agent .ai-editor-workspace{grid-template-columns:minmax(0,1fr);padding:0 6px 6px}#tab-ai-agent .ai-editor-model>div{grid-template-columns:1fr}#tab-ai-agent .ai-editor-test{min-height:520px}}
@media(prefers-reduced-motion:reduce){#tab-ai-agent .ai-agent-card[role="button"]{transition:none}#tab-ai-agent .ai-agent-card[role="button"]:hover{transform:none}}

/* Cross-tab consistency: empty datasets and settings controls use the same
   surfaces as populated cards, without legacy grey/dashed fallbacks. */
body[data-current-tab="vacancies"] #vacancies-grid > .empty,
body[data-current-tab="offers"] #offers-table-wrap > .empty,
body[data-current-tab^="crm-"] .crm-section-body > .empty {
  display:grid;
  place-items:center;
  min-height:140px;
  padding:28px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--bg2);
  color:var(--text2);
  text-align:center;
}
body[data-current-tab^="crm-"] .crm-empty {
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--bg2);
}
body[data-current-tab="settings"] .checkbox-control.toggle-switch {
  border-color:var(--border);
  background:var(--bg3);
}
body[data-theme="light"][data-current-tab="settings"] .checkbox-control.toggle-switch {
  background:var(--bg2);
}
#tab-ai-agent .ai-agent-editor { overflow-x:hidden; }

/* AI Agent editor polish — desktop-readable controls and balanced workspace. */
#tab-ai-agent .ai-agent-editor{min-height:calc(100vh - 92px);margin:-22px;border-top:1px solid var(--release-line);background:var(--release-card)}
#tab-ai-agent .ai-editor-head{grid-template-columns:40px 40px minmax(0,1fr) 40px;gap:10px;min-height:78px;padding:12px 18px;border-top:0;background:var(--release-card)}
#tab-ai-agent .ai-editor-back,#tab-ai-agent .ai-editor-help{width:40px;height:40px;border-radius:9px;font-size:18px;transition:background-color 140ms ease-out,color 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-back:active,#tab-ai-agent .ai-editor-help:active{scale:.96}
#tab-ai-agent .ai-editor-head-icon{width:34px;height:34px}
#tab-ai-agent .ai-editor-head-icon svg{width:20px;height:20px;stroke-width:1.9}
#tab-ai-agent .ai-editor-breadcrumb{gap:9px}
#tab-ai-agent .ai-editor-breadcrumb button{min-height:40px;padding:0 4px;font-size:12px;transition:color 120ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-breadcrumb button:hover{color:var(--ai-accent)}
#tab-ai-agent .ai-editor-breadcrumb button:active{scale:.96}
#tab-ai-agent .ai-editor-breadcrumb span{font-size:13px}
#tab-ai-agent .ai-editor-breadcrumb h1{font-size:20px;line-height:25px;letter-spacing:-.02em;text-wrap:balance}
#tab-ai-agent .ai-editor-breadcrumb b{padding:4px 8px;font-size:9px;line-height:12px}
#tab-ai-agent .ai-editor-head p{margin-top:3px;font-size:11px;line-height:15px;text-wrap:pretty}

#tab-ai-agent .ai-editor-tabs{gap:4px;height:58px;padding:0 18px;background:var(--release-card)}
#tab-ai-agent .ai-editor-tabs button{gap:7px;height:44px;min-width:88px;padding:0 12px;border-radius:8px 8px 0 0;font-size:11px;transition:background-color 140ms ease-out,color 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-tabs button:hover{background:var(--release-soft)}
#tab-ai-agent .ai-editor-tabs button:active{scale:.96}
#tab-ai-agent .ai-editor-tabs button span{font-size:15px}

#tab-ai-agent .ai-editor-workspace{grid-template-columns:minmax(520px,1fr) minmax(520px,1fr);gap:14px;height:calc(100vh - 250px);min-height:610px;padding:14px;background:var(--release-card)}
#tab-ai-agent .ai-editor-instructions,#tab-ai-agent .ai-editor-test{border-radius:12px;box-shadow:0 14px 40px rgb(0 0 0 / .16),inset 0 1px rgb(255 255 255 / .018)}
#tab-ai-agent .ai-editor-instructions{padding:22px 22px 26px}
#tab-ai-agent .ai-editor-instructions>header{gap:12px;margin-bottom:22px}
#tab-ai-agent .ai-editor-section-icon{flex-basis:40px;width:40px;height:40px;border-radius:9px}
#tab-ai-agent .ai-editor-section-icon svg{width:20px;height:20px;stroke-width:1.9}
#tab-ai-agent .ai-editor-instructions h2{font-size:20px;line-height:26px;text-wrap:balance}
#tab-ai-agent .ai-editor-instructions h3{font-size:15px;line-height:20px;text-wrap:balance}
#tab-ai-agent .ai-editor-instructions h2 small,#tab-ai-agent .ai-editor-instructions h3 small{width:16px;height:16px;font-size:9px;vertical-align:2px}
#tab-ai-agent .ai-editor-instructions>header p,#tab-ai-agent .ai-editor-variable-card p{margin-top:3px;font-size:11px;line-height:16px;text-wrap:pretty}
#tab-ai-agent .ai-editor-model>span,#tab-ai-agent .ai-editor-prompt-head strong{margin-bottom:8px;font-size:11px;line-height:15px}
#tab-ai-agent .ai-editor-model>div{grid-template-columns:minmax(0,1fr) 144px;gap:10px}
#tab-ai-agent .ai-editor-model select,#tab-ai-agent .ai-editor-model button{height:44px;border-radius:8px;font-size:12px;outline:0;transition:border-color 140ms ease-out,background-color 140ms ease-out,color 140ms ease-out,box-shadow 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-model select{padding-inline:13px}
#tab-ai-agent .ai-editor-model select:focus{border-color:var(--release-line);box-shadow:none}
#tab-ai-agent .ai-editor-model button:hover{border-color:var(--release-line);background:var(--release-soft)}
#tab-ai-agent .ai-editor-model button:active{scale:.96}
#tab-ai-agent .ai-editor-prompt-head{margin-top:20px}
#tab-ai-agent .ai-editor-prompt-head button{min-height:40px;padding:0 4px;font-size:10px;transition:color 120ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-prompt-head button:hover{color:var(--release-primary)}
#tab-ai-agent .ai-editor-prompt-head button:active{scale:.96}
#tab-ai-agent .ai-editor-prompt-box{border-radius:9px}
#tab-ai-agent .ai-editor-toolbar{gap:16px;height:42px;padding-inline:13px;font-size:13px}
#tab-ai-agent .ai-editor-toolbar em{padding:4px 9px;font-size:8px;line-height:11px}
#tab-ai-agent .ai-editor-prompt-box textarea{height:220px;min-height:180px;padding:15px;font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}
#tab-ai-agent .ai-editor-prompt-box footer{min-height:48px;padding-inline:12px;font-size:9px}
#tab-ai-agent .ai-editor-prompt-box footer i{width:7px;height:7px}
#tab-ai-agent .ai-editor-prompt-box footer button{height:36px;padding-inline:12px;border-radius:7px;font-size:9px;transition:border-color 120ms ease-out,background-color 120ms ease-out,color 120ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-prompt-box footer button:hover{border-color:var(--release-line);color:var(--release-text)}
#tab-ai-agent .ai-editor-prompt-box footer button:active{scale:.96}
#tab-ai-agent .ai-editor-prompt-box footer button.primary:hover{background:var(--release-soft);color:var(--release-text)}
#tab-ai-agent .ai-editor-variable-card{margin-top:12px;padding:15px;border-radius:9px}
#tab-ai-agent .ai-editor-variable-card button{min-height:40px;height:40px;padding-inline:12px;border-radius:7px;font-size:9px;transition:border-color 120ms ease-out,background-color 120ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-variable-card button:hover{border-color:var(--release-line);background:var(--release-soft)}
#tab-ai-agent .ai-editor-variable-card button:active{scale:.96}
#tab-ai-agent .ai-editor-variable-card.system{min-height:86px}

#tab-ai-agent .ai-editor-test{background:var(--release-card)}
#tab-ai-agent .ai-editor-test>header{gap:4px;height:62px;padding:0 14px}
#tab-ai-agent .ai-editor-test>header button{height:40px;padding-inline:13px;font-size:10px;transition:background-color 140ms ease-out,color 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-test>header button:hover{background:var(--release-soft);color:var(--release-text)}
#tab-ai-agent .ai-editor-test>header button:active{scale:.96}
#tab-ai-agent .ai-editor-test-empty{padding:32px}
#tab-ai-agent .ai-editor-test-empty strong{width:62px;height:62px;margin-bottom:17px;border-radius:18px;font-size:28px;box-shadow:0 12px 30px rgb(0 0 0 / .22)}
#tab-ai-agent .ai-editor-test-empty h2{font-size:20px;line-height:26px;text-wrap:balance}
#tab-ai-agent .ai-editor-test-empty p{max-width:430px;margin-top:10px;font-size:11px;line-height:17px;text-wrap:pretty}
#tab-ai-agent .ai-editor-test-messages{gap:10px;padding:18px}
#tab-ai-agent .ai-editor-test-messages div{padding:11px 13px;font-size:12px;line-height:18px}
#tab-ai-agent .ai-editor-test>form{grid-template-columns:minmax(0,1fr) 44px;gap:8px;margin:0 16px 16px}
#tab-ai-agent .ai-editor-test>form input{height:44px;padding-inline:13px;border-radius:8px;font-size:12px;transition:border-color 140ms ease-out,box-shadow 140ms ease-out}
#tab-ai-agent .ai-editor-test>form input:focus{box-shadow:none}
#tab-ai-agent .ai-editor-test>form button{width:44px;height:44px;border-radius:8px;font-size:15px;transition:background-color 140ms ease-out,color 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-test>form button:hover{background:var(--release-soft);color:var(--release-text)}
#tab-ai-agent .ai-editor-test>form button:active{scale:.96}

#tab-ai-agent .ai-editor-secondary{min-height:480px;margin:14px;padding:28px;border-radius:12px}
#tab-ai-agent .ai-editor-secondary h2{font-size:22px;line-height:28px}
#tab-ai-agent .ai-editor-secondary p{margin:8px 0 22px;font-size:12px;line-height:18px}
#tab-ai-agent .ai-editor-secondary>button{min-height:42px;padding-inline:15px;border-radius:8px;font-size:11px}
#tab-ai-agent .ai-editor-setting-row{max-width:520px;padding:16px;border-radius:9px;font-size:12px}
#tab-ai-agent .ai-editor-channel-form{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(160px,.8fr) auto;gap:12px;align-items:end;max-width:900px;margin-top:18px}
#tab-ai-agent .ai-editor-channel-form label{display:grid;gap:7px;color:var(--ai-muted);font-size:11px;font-weight:650}
#tab-ai-agent .ai-editor-channel-form input{width:100%;height:44px;padding:0 13px;border:1px solid var(--release-line);border-radius:8px;background:var(--release-card);color:var(--release-text);font-size:12px;outline:0;transition:border-color 140ms ease-out,box-shadow 140ms ease-out}
#tab-ai-agent .ai-editor-channel-form input:focus{border-color:var(--release-line);box-shadow:none}
#tab-ai-agent .ai-editor-channel-form button{min-height:44px;padding:0 15px;border:1px solid var(--release-line);border-radius:8px;background:var(--ai-accent);color:var(--release-on);font-size:11px;font-weight:750;transition:background-color 140ms ease-out,box-shadow 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-channel-form button:hover{background:var(--release-soft);box-shadow:none}
#tab-ai-agent .ai-editor-channel-form button:active{scale:.96}
#tab-ai-agent .ai-editor-channel-state{min-height:18px;margin:12px 0;color:var(--ai-muted);font-size:11px;line-height:16px}
#tab-ai-agent .ai-editor-personal-accounts{margin:16px 0;padding:14px;border:1px solid var(--ai-border);border-radius:10px;background:var(--release-soft)}
#tab-ai-agent .ai-editor-personal-accounts header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:11px}
#tab-ai-agent .ai-editor-personal-accounts h3{margin:0;color:var(--ai-text);font-size:14px}
#tab-ai-agent .ai-editor-personal-accounts p{margin:4px 0 0;color:var(--ai-muted);font-size:11px}
#tab-ai-agent .ai-editor-personal-accounts button{border:1px solid var(--release-line);border-radius:7px;background:var(--release-soft);color:var(--ai-accent);padding:7px 10px;font-size:11px;white-space:nowrap}
#tab-ai-agent .ai-editor-channel-list{display:grid;gap:8px;max-width:900px;margin-top:14px}
#tab-ai-agent .ai-editor-channel-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid var(--ai-border);border-radius:9px;background:var(--ai-panel-raised)}
#tab-ai-agent .ai-editor-channel-row span{min-width:0}
#tab-ai-agent .ai-editor-channel-row strong,#tab-ai-agent .ai-editor-channel-row small{display:block}
#tab-ai-agent .ai-editor-channel-row strong{color:var(--ai-ink);font-size:12px;line-height:17px}
#tab-ai-agent .ai-editor-channel-row small{margin-top:2px;color:var(--ai-muted);font-size:10px;line-height:14px}

@media(max-width:1180px){#tab-ai-agent .ai-editor-workspace{grid-template-columns:1fr;height:auto}#tab-ai-agent .ai-editor-instructions,#tab-ai-agent .ai-editor-test{min-height:600px}}
@media(max-width:700px){#tab-ai-agent .ai-agent-editor{margin:-16px}#tab-ai-agent .ai-editor-head{grid-template-columns:40px minmax(0,1fr) 40px;padding-inline:10px}#tab-ai-agent .ai-editor-head-icon{display:none}#tab-ai-agent .ai-editor-breadcrumb{gap:5px;flex-wrap:wrap}#tab-ai-agent .ai-editor-breadcrumb h1{font-size:16px}#tab-ai-agent .ai-editor-tabs{height:58px;padding-inline:8px;overflow-x:auto}#tab-ai-agent .ai-editor-tabs button{min-width:max-content;height:44px;padding-inline:10px}#tab-ai-agent .ai-editor-workspace{grid-template-columns:minmax(0,1fr);padding:8px}#tab-ai-agent .ai-editor-instructions{padding:16px}#tab-ai-agent .ai-editor-model>div{grid-template-columns:1fr}#tab-ai-agent .ai-editor-prompt-head{align-items:flex-start;flex-direction:column;gap:2px}#tab-ai-agent .ai-editor-prompt-box footer{align-items:flex-start;flex-direction:column;gap:8px;padding-block:8px}#tab-ai-agent .ai-editor-prompt-box footer>div{align-self:flex-end}#tab-ai-agent .ai-editor-test{min-height:540px}}
@media(max-width:700px){#tab-ai-agent .ai-editor-channel-form{grid-template-columns:1fr}#tab-ai-agent .ai-editor-channel-form button{width:100%}}
@media(prefers-reduced-motion:reduce){#tab-ai-agent :is(.ai-editor-back,.ai-editor-help,.ai-editor-breadcrumb button,.ai-editor-tabs button,.ai-editor-model button,.ai-editor-prompt-head button,.ai-editor-prompt-box footer button,.ai-editor-variable-card button,.ai-editor-test>header button,.ai-editor-test>form button){transition:none}#tab-ai-agent :is(.ai-editor-back,.ai-editor-help,.ai-editor-breadcrumb button,.ai-editor-tabs button,.ai-editor-model button,.ai-editor-prompt-head button,.ai-editor-prompt-box footer button,.ai-editor-variable-card button,.ai-editor-test>header button,.ai-editor-test>form button):active{scale:1}}

/* Isolate editor headers from the legacy global `header { margin-left:195px }`. */
#tab-ai-agent .ai-agent-editor header{margin-left:0}
#tab-ai-agent .ai-editor-head{width:100%}
#tab-ai-agent .ai-editor-instructions>header{height:auto}
#tab-ai-agent .ai-editor-variable-card>header{height:auto}
#tab-ai-agent .ai-editor-test>header{width:100%}
#tab-ai-agent .ai-editor-workspace{height:calc(100dvh - 222px);min-height:480px;max-height:720px}
#tab-ai-agent .ai-editor-instructions,#tab-ai-agent .ai-editor-test{height:100%;min-height:0}
#tab-ai-agent .ai-editor-instructions{overflow-y:auto}
#tab-ai-agent .ai-editor-test{overflow:hidden}
@media(max-width:1180px){#tab-ai-agent .ai-editor-workspace{height:auto;max-height:none}#tab-ai-agent .ai-editor-instructions,#tab-ai-agent .ai-editor-test{height:auto;min-height:560px}}
@media(max-width:700px){#tab-ai-agent .ai-editor-instructions,#tab-ai-agent .ai-editor-test{min-height:520px}}

/* AI Agent MVP containment: global shell header styles must never leak here. */
#tab-ai-agent .ai-agent-editor{border-top:0;margin-top:-22px}
#tab-ai-agent :is(.ai-editor-instructions>header,.ai-editor-test>header,.ai-editor-personal-accounts>header,.ai-editor-variable-card>header){
  position:static;width:auto;height:auto;min-height:0;margin-left:0;padding:0;background:transparent;
  border:0;box-shadow:none;flex-shrink:initial;z-index:auto;overflow:visible;
}
#tab-ai-agent .ai-editor-test>header{min-height:62px;padding:0 14px;border-bottom:1px solid var(--ai-border)}
#tab-ai-agent .ai-editor-personal-accounts>header{margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--ai-border)}
#tab-ai-agent .ai-editor-secondary{max-width:none;background:var(--release-card)}
#tab-ai-agent .ai-editor-secondary>p{max-width:760px;text-wrap:pretty}
#tab-ai-agent .ai-editor-channel-row button{min-height:40px;padding:0 13px;cursor:pointer;transition:background-color 140ms ease-out,border-color 140ms ease-out,scale 100ms ease-out}
#tab-ai-agent .ai-editor-channel-row button:active{scale:.96}
#tab-ai-agent .ai-editor-test-messages div.is-assistant{align-self:flex-start;border-radius:9px 9px 9px 2px;background:var(--release-soft);color:var(--release-text)}
#tab-ai-agent .ai-editor-test-messages div.is-loading{color:var(--ai-muted);font-style:italic}
#tab-ai-agent .ai-editor-test-messages div.is-error{border:1px solid rgb(255 76 88 / .25);background:rgb(255 76 88 / .08);color:#ff8790}
#tab-ai-agent .ai-editor-test>form :disabled{opacity:.55;cursor:wait}
#tab-ai-agent :is(.ai-editor-tabs button,.ai-editor-channel-row button,.ai-editor-personal-accounts button):focus-visible{outline:2px solid var(--ai-accent);outline-offset:2px}
@media(max-width:700px){#tab-ai-agent .ai-agent-editor{margin-top:-16px}#tab-ai-agent .ai-editor-personal-accounts>header{align-items:stretch;flex-direction:column}#tab-ai-agent .ai-editor-personal-accounts>header button{width:100%;min-height:40px}}

/* Editor is a page, not two independently scrolling cards.  Keep the
   canvas continuous; only a long prompt itself may scroll. */
#tab-ai-agent .ai-agent-editor{min-height:calc(100dvh - 92px)}
#tab-ai-agent .ai-editor-workspace{height:auto;min-height:calc(100dvh - 222px);max-height:none;align-items:stretch}
#tab-ai-agent .ai-editor-instructions{height:auto;overflow:visible}
#tab-ai-agent .ai-editor-test{min-height:calc(100dvh - 250px)}
#tab-ai-agent .ai-editor-prompt-box textarea{height:clamp(176px,24dvh,230px);min-height:176px;max-height:320px;overflow-y:auto}
@media(max-width:1180px){#tab-ai-agent .ai-editor-test{min-height:540px}}

/* The editor owns the page header while open; avoid rendering two stacked shell headers. */
body.ai-editor-open > #app > header{display:none !important}
body.ai-editor-open > #app .app-shell{min-height:100vh}
body.ai-editor-open > #app main{padding-top:0}

/* Keep the test conversation fully visible on short desktop viewports. The
   editor is a page, so the outer main scroller may grow; the test card must
   never clip its empty state or composer at the card boundary. */
#tab-ai-agent .ai-editor-workspace{min-height:max(560px,calc(100dvh - 180px));}
#tab-ai-agent .ai-editor-test{overflow:visible;min-height:560px;}
#tab-ai-agent .ai-editor-test-empty{min-height:300px;}
@media(max-width:1180px){
  #tab-ai-agent .ai-editor-workspace{min-height:0;}
  #tab-ai-agent .ai-editor-test{min-height:560px;}
}

/* Final editor geometry: let the page own scrolling instead of clipping the
   conversation card inside a fixed-height grid. */
#tab-ai-agent .ai-editor-workspace{height:auto!important;max-height:none!important;min-height:0!important;overflow:visible;}
#tab-ai-agent .ai-editor-test{height:auto!important;min-height:clamp(560px,calc(100dvh - 210px),760px)!important;max-height:none!important;overflow:visible!important;}
#tab-ai-agent .ai-editor-test-empty{flex:1 1 auto;min-height:320px;}
#tab-ai-agent .sidebar-brand__name span,.sidebar-brand__name span{color:var(--release-primary)!important;}

/* Prevent the two-column agent editor from widening past the viewport. */
#tab-ai-agent .ai-editor-pane[data-ai-editor-pane="agent"]{width:100%;max-width:100%;min-width:0;overflow:hidden;}
#tab-ai-agent .ai-editor-pane[data-ai-editor-pane="agent"] .ai-editor-workspace{width:100%;max-width:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
#tab-ai-agent .ai-editor-test>form{min-width:0;max-width:100%;}
#tab-ai-agent .ai-editor-test>form input{min-width:0;}
@media(max-width:1180px){#tab-ai-agent .ai-editor-pane[data-ai-editor-pane="agent"] .ai-editor-workspace{grid-template-columns:minmax(0,1fr);}}

/* Overview leads filters: keep the manual-add action inside the card and
   reserve a full row for it instead of letting flex content overflow. */
#tab-leads .overview-leads-base .filters{display:grid;grid-template-columns:minmax(190px,1.7fr) minmax(120px,1fr) minmax(140px,1.15fr) repeat(2,minmax(112px,.8fr)) auto;align-items:stretch;gap:8px;}
#tab-leads .overview-leads-base .filters #manual-lead-toggle{grid-column:1/-1;justify-self:end;margin-left:0!important;min-width:136px;}
@media(max-width:900px){#tab-leads .overview-leads-base .filters{grid-template-columns:repeat(2,minmax(0,1fr));}#tab-leads .overview-leads-base .filters #manual-lead-toggle{grid-column:1/-1;justify-self:stretch;}}
@media(max-width:560px){#tab-leads .overview-leads-base .filters{grid-template-columns:1fr;}}

/* Notification control matches the neutral header controls. */
.header-controls .notification-bell {
  color: var(--text2) !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
.header-controls .notification-bell:hover,
.header-controls .notification-bell[aria-expanded="true"] {
  background: var(--surface-hover) !important;
  border-color: transparent !important;
  color: var(--text) !important;
}

/* Keep the account identity available in the header; the profile button
   owns the expandable logout menu on every dashboard viewport. */
header .header-account {
  display: block !important;
}
header .header-controls .header-user {
  display: flex !important;
  width: auto !important;
  max-width: 168px !important;
}
header .header-controls .header-user__copy,
header .header-controls .header-user__chevron {
  display: flex !important;
}

/* Avoid a login-form flash while the existing session is being checked. */
#login-overlay {
  display: none;
}

/* Keep the profile avatar optically square inside the flexible header button. */
body[data-current-tab] #app > header .header-user__avatar {
  width: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  flex: 0 0 32px !important;
  aspect-ratio: 1 / 1;
}


/* Telegram dialogs: one account, one candidate source. */
.msg-agent-dialogs{margin-top:12px;border:1px solid var(--msg-border,var(--release-line));border-radius:8px;background:var(--msg-panel,var(--release-card));overflow:hidden}.msg-agent-dialogs>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px;border-bottom:1px solid var(--release-line)}.msg-agent-dialogs h2{margin:0;color:var(--msg-text,var(--release-text));font-size:15px}.msg-agent-dialogs header p{margin:4px 0 0;color:var(--msg-muted,var(--release-primary));font-size:10px}.msg-agent-summary{display:flex;align-items:center;gap:10px;color:var(--release-muted);font-size:10px;white-space:nowrap}.msg-agent-summary b{color:var(--release-primary)}.msg-agent-summary button{min-height:31px;padding:0 11px;border:1px solid var(--release-line);border-radius:6px;background:var(--release-card);color:var(--release-primary);font-size:10px;font-weight:700;cursor:pointer}.msg-agent-summary button:disabled{opacity:.48;cursor:default}.msg-agent-tabs{display:flex;gap:4px;padding:10px 14px;border-bottom:1px solid var(--release-line)}.msg-agent-tabs button{display:flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--release-primary);font-size:10px;cursor:pointer}.msg-agent-tabs button:hover,.msg-agent-tabs button.is-active{border-color:var(--release-line);background:var(--release-card);color:var(--release-text)}.msg-agent-tabs b{display:grid;place-items:center;min-width:16px;height:16px;border-radius:9px;background:var(--release-soft);color:var(--release-text);font-size:9px}.msg-agent-tabs button.is-active b{background:var(--release-soft);color:var(--release-primary)}.msg-agent-list{max-height:420px;overflow:auto}.msg-agent-candidate{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;border-bottom:1px solid var(--release-line)}.msg-agent-candidate:last-child{border-bottom:0}.msg-agent-candidate-main{min-width:0}.msg-agent-candidate strong{display:block;color:var(--release-text);font-size:11px}.msg-agent-candidate p{max-width:620px;margin:4px 0;overflow:hidden;color:var(--release-muted);font-size:10px;line-height:15px;text-overflow:ellipsis;white-space:nowrap}.msg-agent-candidate small{color:var(--release-primary);font-size:9px}.msg-agent-candidate-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.msg-agent-mode{padding:4px 7px;border-radius:10px;background:var(--release-soft);color:var(--release-primary);font-size:9px}.msg-agent-mode.is-agent{background:var(--release-soft);color:var(--release-primary)}.msg-agent-mode.is-human{background:var(--release-soft);color:#e9bd70}.msg-agent-switch{display:flex;overflow:hidden;border:1px solid var(--release-line);border-radius:6px}.msg-agent-switch button{height:29px;padding:0 8px;border:0;border-right:1px solid var(--release-line);background:var(--release-card);color:var(--release-muted);font-size:9px;cursor:pointer}.msg-agent-switch button:last-child{border-right:0}.msg-agent-switch button.is-selected{background:var(--release-soft);color:var(--release-primary)}.msg-agent-empty{padding:18px 14px;margin:0;color:var(--release-primary);font-size:11px;text-align:center}@media(max-width:720px){.msg-agent-dialogs>header,.msg-agent-candidate{align-items:flex-start;flex-direction:column}.msg-agent-summary{white-space:normal}.msg-agent-candidate-actions{width:100%;justify-content:space-between}.msg-agent-tabs{overflow-x:auto}.msg-agent-tabs button{white-space:nowrap}}

/* Android devices for Telegram mailing */
.tg-mailing-device-settings { margin: 12px 0; padding: 14px; border: 1px solid var(--border2); border-radius: 12px; }
.tg-mailing-device-settings summary { cursor: pointer; font-weight: 600; }
.tg-mailing-device-settings p { overflow-wrap: anywhere; line-height: 1.5; }
.tg-mailing-device { display: flex; gap: 12px; align-items: center; justify-content: space-between; margin-top: 10px; padding: 10px; border: 1px solid var(--border2); border-radius: 8px; }
.tg-mailing-device div { min-width: 0; }
.tg-mailing-device span, .tg-mailing-device small { display: block; overflow-wrap: anywhere; color: var(--text3); margin-top: 4px; }
@media (max-width: 600px) { .tg-mailing-device { flex-wrap: wrap; } }

.tg-mailing-compose > label.form-row, .tg-mailing-device-settings .form-row { display: grid; gap: 6px; margin: 14px 0; min-width: 0; }
.tg-mailing-device-settings input { width: 100%; min-width: 0; }
.tg-mailing-device-settings .btn-action { max-width: 100%; white-space: normal; }

.tg-device-steps { padding-left: 22px; margin: 16px 0; color: var(--text2); line-height: 1.6; }
.tg-device-steps li + li { margin-top: 8px; }
.tg-device-pairing:empty { display: none; }
.tg-device-pairing { display: grid; gap: 8px; margin: 16px 0; padding: 16px; background: var(--bg); border: 1px solid var(--border2); border-radius: 8px; overflow-wrap: anywhere; }
.tg-device-pairing code { font-size: 28px; letter-spacing: .12em; font-weight: 700; color: var(--text); }
.tg-device-pairing small { color: var(--text3); }
.tg-mailing-device-settings .actions { flex-wrap: wrap; gap: 8px; margin-top: 14px; }

.ai-provider-settings{display:grid;gap:8px;margin-bottom:20px;padding:16px;border:1px solid var(--border);border-radius:12px;min-width:0}
.ai-provider-settings label{font-weight:600}.ai-provider-settings select{width:100%;min-height:44px;padding:10px 12px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;font:inherit}
.ai-provider-settings p,.ai-provider-settings small{margin:0;color:var(--text2);font-size:13px;line-height:1.5}.ai-provider-settings select:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.ai-editor-channel-row{flex-wrap:wrap;gap:12px}.ai-editor-channel-row>span{min-width:160px;flex:1}

#hr-agent-provider-key-form:not([hidden]){display:grid;gap:8px}#hr-agent-provider-key{min-width:0;width:100%;min-height:44px;padding:10px 12px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;font:inherit}#hr-agent-provider-key-form button{min-height:44px;justify-self:start}

/* landing-tokens.css */
@font-face{font-family:Inter;src:url("/assets/inter-latin-cyrillic-v2.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
/* Shared October neutral interface tokens. */
:root {
  --raw-black: var(--release-bg, #171717);
  --raw-card: var(--release-card, #171717);
  --raw-white: var(--release-text, #ededed);
  --raw-muted: var(--release-muted, #a3a3a3);
  --raw-lime: var(--release-primary);
  --raw-lime-ink: var(--release-primary);
  --raw-border: var(--release-line, #303030);
  --color-canvas: var(--raw-black);
  --color-surface: var(--raw-card);
  --color-ink: var(--raw-white);
  --color-muted: var(--raw-muted);
  --color-accent: var(--raw-lime);
  --color-accent-ink: var(--raw-lime-ink);
  --color-line: var(--raw-border);
  --color-on-accent: var(--release-on, #171717);
  --radius-card: 12px;
  --radius-control: 10px;
  --page-max: 1556px;
  --page-gutter: 58px;
  --font-ui: Inter, Arial, sans-serif;
  --duration-feedback: 150ms;
  --ease-feedback: cubic-bezier(.2, 0, 0, 1);
}

/* brand-theme.css */
/* Legacy component geometry uses the current neutral palette. */
:root,body[data-theme]{--bg:var(--release-bg);--bg2:var(--release-bg);--bg3:var(--release-bg);--bg-glass:var(--release-bg);--bg-glass2:var(--release-bg);--text:var(--release-text);--text2:var(--release-muted);--text3:var(--release-muted);--border:var(--release-line);--border-hi:var(--release-line);--border2:var(--release-line);--green:var(--release-primary,#ededed);--green-dim:var(--release-soft,#252525);--on-accent:var(--release-on,#171717);--ui-card:var(--release-card);--ui-nav:var(--release-side);--ui-border:var(--release-line);--ui-shadow:none;--surface-hover:var(--release-soft);--font-sans:Inter,Arial,sans-serif;--radius:12px;--radius-sm:8px;--top-glow:transparent;--bottom-glow:transparent;--brand-action:var(--release-primary,#ededed);--brand-action-ink:var(--release-on)}
html, body, body[data-theme="light"] { background:var(--bg); font-family:var(--font-sans); }
body[data-theme] :is(.sidebar, #app > header, .sidebar-health, .system-health-card) { background:var(--ui-nav); border-color:var(--border); box-shadow:none; }
body[data-theme] :is(.kpi-card,.settings-card,.chart-card,.crm-stat-card,.table-wrap,.log-panel,.mailing-overview,.network-balance-panel,.login-box,.modal,.modal-content,.notification-panel) { background:var(--ui-card); border-color:var(--border); border-radius:var(--radius-card); color:var(--text); box-shadow:var(--ui-shadow); }
body[data-theme] #tab-leads .kpi-grid > .kpi-card { background:linear-gradient(135deg,#ffffff04,transparent 65%),var(--ui-card); border-color:var(--border); box-shadow:var(--ui-shadow); }
body[data-theme] #tab-leads .kpi-card { --today-surface:var(--ui-card); --today-border:var(--border); --today-progress:var(--green); --unique-surface:var(--ui-card); }
body[data-theme] :is(.header-user,.header-range,.status-badge,.theme-toggle,.btn-logout,.notification-bell,.mailing-metrics > div,.sidebar-subnav,.sidebar-nav-reference button) { background:var(--ui-card); border-color:var(--border); color:var(--text2); }
body[data-theme] .sidebar-nav-reference button.active { background:var(--green-dim); color:var(--green); border-color:var(--green); }
body[data-theme] .sidebar-nav-reference button:hover { background:var(--surface-hover); color:var(--text); }
body[data-theme] .sidebar-nav-reference button.active .nav-ref-icon { color:var(--green); }
body[data-theme] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,textarea) { background:var(--bg2); color:var(--text); border-color:var(--border-hi); border-radius:var(--radius-control); font-family:var(--font-sans); }
body[data-theme] :is(input,textarea)::placeholder { color:var(--text3); }
body[data-theme] :is(.btn-sm,.btn-action,.btn-stop,.theme-toggle,.btn-logout,.header-range,.header-user) { border-radius:var(--radius-control); }
body[data-theme] :is(.btn-action.primary,.btn-primary,.btn-login) { background:var(--brand-action); color:var(--brand-action-ink); border-color:transparent; text-shadow:none; box-shadow:none; }
body[data-theme] :is(.btn-action.primary,.btn-primary,.btn-login):hover:not(:disabled) { background:var(--release-soft); color:var(--release-text); box-shadow:none; }
body[data-theme] :is(button,a,input,select,textarea):focus-visible { outline:2px solid var(--green); outline-offset:3px; }
body[data-theme] :is(button,input,select,textarea):disabled { opacity:.5; cursor:not-allowed; }
body[data-theme] :is(.log-header,.mailing-recent__head,.mailing-overview__summary,.mailing-table-head,th,td) { border-color:var(--border); }
body[data-theme] :is(th,.log-body,.mailing-donut::before) { background:var(--bg2); }
body[data-theme] tbody tr:hover { background:var(--surface-hover); }
body[data-theme] .active-offers-panel { --offer-surface:var(--ui-card); --offer-border:var(--border); --offer-ink:var(--text); --offer-muted:var(--text2); --offer-data:var(--green); border-radius:var(--radius-card); }
body[data-theme] .active-offer-card { background:var(--ui-card); }
body[data-theme] .active-offer-avatar { background:var(--green-dim); color:var(--green); }
body[data-theme] .active-offers-header button { color:var(--green); }
body[data-theme] #tab-leads .dashboard-actions { --action-surface:var(--ui-card); --action-border:var(--border); --action-ink:var(--text); }
body[data-theme="dark"] #tab-crm-funnels .funnel-flow { --funnel-surface:var(--release-card); --funnel-border:var(--release-line); --funnel-data:var(--release-primary); --funnel-ink:var(--release-text); }
body[data-theme="light"] #tab-crm-funnels .funnel-flow { --funnel-surface:var(--ui-card); --funnel-border:var(--border); --funnel-ink:var(--text); }
body[data-theme] :is(.page-title,.section-title,.login-box h1) { font-family:var(--font-ui); letter-spacing:-.035em; }
@media(prefers-reduced-motion:reduce) { body[data-theme] :is(button,a,.kpi-card) { transition:none; } body[data-theme] .kpi-card:hover { transform:none; } }
body[data-theme] #app, body[data-theme] #app main, body[data-theme] .main { background:var(--bg); }
body[data-theme] #tab-leads .dashboard-actions .btn-action.primary { background:var(--brand-action); color:var(--brand-action-ink); border-color:transparent; filter:none; }
body[data-theme] #tab-leads .dashboard-actions .btn-action.primary:hover:not(:disabled) { background:var(--release-soft); }
body[data-theme] #tab-leads .kpi-label-icon { background:var(--green-dim); border-color:var(--border); }
.job-progress-panel[hidden] { display:none; }
.job-progress-panel[data-kind="hh_daily"] { flex-wrap:wrap; }
.job-progress-panel[data-kind="hh_daily"] .job-progress-count { white-space:normal; overflow-wrap:anywhere; flex-basis:100%; }
.job-progress-panel { display:flex; align-items:center; gap:22px; padding:22px 24px; margin:18px 0; border:1px solid var(--border-hi); border-radius:18px; background:linear-gradient(120deg,var(--green-dim),transparent 40%),var(--ui-card); box-shadow:inset 0 1px 0 #ffffff0c,0 10px 28px #0002; }
.job-progress-beacon { width:16px; height:16px; border-radius:50%; flex:none; background:var(--green); box-shadow:0 0 0 9px var(--green-dim),0 0 20px var(--green-dim); }
.job-progress-copy { display:flex; flex-direction:column; gap:5px; min-width:180px; }
.job-progress-copy strong { font-size:16px; font-weight:700; }
.job-progress-copy span,.job-progress-count { color:var(--text2); font-size:13px; }
.job-progress-meter { display:flex; align-items:center; gap:14px; flex:1; min-width:150px; }
.job-progress-track { flex:1; height:12px; overflow:hidden; background:var(--bg3); border:1px solid var(--border-hi); border-radius:99px; }
#job-progress-fill { display:block; height:100%; border-radius:inherit; background:var(--green); transition:width 220ms ease-out; }
.job-progress-meter strong,#job-progress-time,.job-progress-count { font-variant-numeric:tabular-nums; white-space:nowrap; }
#job-progress-time { color:var(--text2); padding-left:18px; border-left:1px solid var(--border-hi); }
#job-progress-stop { min-height:44px; white-space:nowrap; color:var(--red); background:var(--red-dim); border:1px solid var(--red); }
.is-indeterminate #job-progress-fill { animation:job-progress-travel 6s ease-in-out infinite alternate; }
.job-progress-panel[data-state="error"] .job-progress-beacon { background:var(--red); }
@keyframes job-progress-travel { from {transform:translateX(-100%)} to {transform:translateX(333%)} }
@media(max-width:1180px) { .job-progress-panel { flex-wrap:wrap; gap:16px; } .job-progress-meter { flex-basis:35%; } }
@media(max-width:600px) { .job-progress-panel { padding:18px; } .job-progress-copy { flex:1; min-width:0; } .job-progress-meter { flex-basis:100%; } #job-progress-stop { margin-left:auto; } }
@media(prefers-reduced-motion:reduce) { #job-progress-fill { transition:none; animation:none; } }
@media(prefers-reduced-motion:reduce) { .is-indeterminate #job-progress-fill { animation:none; } }

/* Fixed-height lead rows; complete values retained in title attributes. */
#leads-table-wrap .leads-data-table tbody td {
 height:60px; padding-block:8px; line-height:20px; vertical-align:middle;
 white-space:nowrap; overflow-wrap:normal; overflow:hidden; text-overflow:ellipsis;
}
#leads-table-wrap .leads-data-table .lead-cell-status { padding-right:18px; }
#leads-table-wrap .leads-data-table .lead-cell-date { padding-left:18px; }
#leads-table-wrap .leads-data-table .lead-cell-status .badge {
  max-width:100%; box-sizing:border-box; overflow:hidden; text-overflow:ellipsis; vertical-align:middle;
}
#leads-table-wrap .leads-data-table .lead-cell-action { overflow:visible; }

/* Funnel cards share one rhythm; neutralize obsolete positional KPI variants. */
body[data-theme] #tab-leads .kpi-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi {
  grid-column:auto; grid-row:auto; box-sizing:border-box; width:100%; max-width:100%;
  height:158px; min-height:158px; min-width:0; padding:16px;
  align-self:stretch; justify-self:stretch; border-radius:14px; transform:none;
  display:flex; flex-direction:column; gap:12px;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi:hover { transform:none; box-shadow:var(--ui-shadow); }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi::before,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi::after,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label::before,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label::after,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-comparison::before { content:none; display:none; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label {
  display:flex; align-items:center; gap:10px; height:32px; min-height:32px;
  margin:0; padding:0; color:var(--text2); font-size:11px;
  font-weight:600; letter-spacing:0; line-height:1.2;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-label-icon {
  box-sizing:border-box; flex:0 0 32px; width:32px; height:32px;
  margin:0; padding:6px; border:1px solid var(--border); border-radius:8px;
  background:var(--green-dim); color:var(--green); stroke-width:2;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .value {
  margin:0; color:var(--green); font-size:clamp(24px,2.1vw,36px);
  font-weight:700; line-height:1.1; letter-spacing:0; font-variant-numeric:tabular-nums;
  text-shadow:none; overflow-wrap:anywhere;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-comparison {
  position:static; margin-top:auto; color:var(--text3); font-size:11px;
  line-height:1.2; letter-spacing:0;
}
@media(max-width:1100px) { body[data-theme] #tab-leads .kpi-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:650px) { body[data-theme] #tab-leads .kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:380px) { body[data-theme] #tab-leads .kpi-grid { grid-template-columns:1fr; } }

.funnel-period { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:16px 0 0; }
.funnel-period button { min-height:40px; padding:0 16px; border:1px solid var(--border); border-radius:10px; background:var(--ui-card); color:var(--text2); font:inherit; cursor:pointer; }
.funnel-period button[aria-pressed="true"] { background:var(--green-dim); color:var(--green); border-color:var(--green); }
#funnel-period-status { margin-left:8px; color:var(--text3); font-size:12px; }
@media(max-width:650px) { .funnel-period button { min-height:44px; } }

body[data-theme] #tab-leads .page-head { flex-wrap:wrap; gap:16px; align-items:center; }
.overview-command-bar { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
body[data-theme] .overview-command-bar :is(button,summary) { min-height:40px; padding:0 14px; font-size:13px; font-weight:600; text-transform:none; letter-spacing:0; white-space:nowrap; }
body[data-theme] .overview-command-bar .overview-start { min-height:44px; padding-inline:18px; gap:8px; }
.overview-export { position:relative; }
.overview-export summary { display:flex; align-items:center; gap:10px; list-style:none; cursor:pointer; border:1px solid var(--border); border-radius:10px; background:var(--ui-card); color:var(--text2); }
.overview-export summary::-webkit-details-marker { display:none; }
.overview-export-options { position:absolute; top:calc(100% + 6px); right:0; z-index:30; width:180px; padding:6px; display:grid; gap:4px; background:var(--ui-card); border:1px solid var(--border-hi); border-radius:12px; box-shadow:0 10px 30px #0005; }
.overview-export-options button { width:100%; text-align:left; }
.overview-export summary:focus-visible { outline:2px solid var(--green); outline-offset:3px; }
.overview-command-bar #mailing-panel-toggle[aria-expanded="true"] { color:var(--green); border-color:var(--green); }
.overview-command-bar #btn-stop:disabled { display:none; }
body[data-theme] .overview-command-bar .overview-refresh { width:40px; padding:0; font-size:20px; }
@media(max-width:650px) { .overview-command-bar { width:100%; } body[data-theme] .overview-command-bar :is(button,summary) { min-height:44px; } .overview-export-options { left:0; right:auto; } }

.overview-offers-attention { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,1fr); gap:14px; min-width:0; align-items:start; }
.overview-offers-attention .active-offers-panel { grid-column:auto; }
.overview-offers-attention .active-offers-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.attention-panel { padding:12px 14px; border:1px solid var(--border); border-radius:18px; background:var(--ui-card); min-width:0; }
.attention-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:6px; }
.attention-head h2 { margin:0; font-size:14px; font-weight:600; }
.attention-row { display:flex; align-items:center; gap:12px; padding:12px 2px; border-bottom:1px solid var(--border); }
.attention-icon { color:var(--yellow); width:24px; font-size:22px; text-align:center; flex:none; }
.attention-row.errors .attention-icon,.attention-row.errors b { color:var(--red); }
.attention-copy { display:flex; flex:1; min-width:0; flex-direction:column; gap:3px; }
.attention-copy strong { font-size:13px; font-weight:500; }.attention-copy small,.attention-note { color:var(--text3); font-size:11px; }
.attention-row b { color:var(--yellow); font-variant-numeric:tabular-nums; }.attention-note { padding-top:12px; }
@media(max-width:1000px) { .overview-offers-attention { grid-template-columns:1fr; } }
@media(max-width:600px) { .overview-offers-attention .active-offers-grid { grid-template-columns:1fr; } }

/* Shared alignment for the overview work area. */
.overview-icon { width:20px; height:20px; flex:none; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
body[data-theme] .overview-offers-attention { align-items:stretch; gap:16px; }
body[data-theme] .overview-offers-attention > :is(.active-offers-panel,.attention-panel) { padding:16px; border-radius:20px; display:flex; flex-direction:column; }
body[data-theme] .overview-offers-attention :is(.active-offers-header,.attention-head) { padding:0; min-height:40px; margin:0 0 12px; }
body[data-theme] .overview-offers-attention h2 { display:flex; align-items:center; gap:8px; font-size:14px; line-height:20px; font-weight:600; }
.overview-offers-attention h2 .overview-icon { color:var(--text2); width:18px; height:18px; }
body[data-theme] .overview-offers-attention .active-offers-header button { min-height:40px; }
body[data-theme] .overview-offers-attention .active-offers-grid { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; flex:1; }
body[data-theme] .overview-offers-attention .active-offer-card { padding:12px; border-radius:12px; display:flex; flex-direction:column; justify-content:space-between; gap:8px; }
body[data-theme] .active-offer-card h3 { font-size:14px; }
#attention-items { flex:1; display:flex; flex-direction:column; }
.attention-row { flex:1; min-height:64px; box-sizing:border-box; gap:12px; }
.attention-icon { display:flex; align-items:center; justify-content:center; width:28px; height:28px; }
.attention-note { margin-top:auto; line-height:1.5; }
body[data-theme] .overview-command-bar { gap:8px; }
body[data-theme] .overview-command-bar :is(button,summary) { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; border-radius:10px; }
.overview-command-bar .overview-icon { width:18px; height:18px; }
.attention-head button { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; padding:0; }
@media (min-width:1001px) and (max-width:1300px) { body[data-theme] .overview-offers-attention .active-offers-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } body[data-theme] .overview-offers-attention .active-offer-card:last-child:nth-child(odd) { grid-column:1/-1; } }
@media (max-width:700px) { body[data-theme] .overview-offers-attention .active-offers-grid { grid-template-columns:1fr; } .attention-head button { width:44px; height:44px; } }

/* Six-item navigation with native disclosure groups. */
.sidebar-nav-group { margin:0; }
.sidebar-nav-group > summary { box-sizing:border-box; display:flex; align-items:center; justify-content:space-between; min-height:40px; padding:8px 10px; border:1px solid transparent; border-radius:9px; color:var(--text2); cursor:pointer; list-style:none; font-size:13px; font-weight:600; }
.sidebar-nav-group > summary::-webkit-details-marker { display:none; }
.sidebar-nav-group > summary:hover { background:var(--surface-hover); border-color:var(--border2); color:var(--text); }
.sidebar-nav-group > summary:focus-visible { outline:2px solid var(--green); outline-offset:2px; }
.sidebar-group-chevron { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; transition:transform .16s ease; }
.sidebar-nav-group[open] > summary .sidebar-group-chevron { transform:rotate(180deg); }
.sidebar-nav-group:has(button.active) > summary { color:var(--green); background:var(--green-dim); border-color:var(--green); }
.sidebar-nav-group:has(button.active) > summary .nav-ref-icon { color:var(--green); }
.sidebar-nav-children { display:grid; gap:3px; padding:4px 0 5px 14px; }
body[data-theme] .sidebar-nav-children > button { min-height:36px; padding-left:14px; font-size:12px; }
body[data-theme] .sidebar-nav-children > button .nav-ref-icon { width:17px; height:17px; flex-basis:17px; }
@media(max-width:980px) { .sidebar-nav-group > summary { min-height:44px; } body[data-theme] .sidebar-nav-children > button { min-height:44px; } }
@media(prefers-reduced-motion:reduce) { .sidebar-group-chevron { transition:none; } }
.sidebar-nav-group:not(:has(.sidebar-nav-children > button:not([hidden]))) { display:none; }

/* Reference-matched solid KPI pictograms; scoped to the four funnel icons only. */
body[data-theme] #tab-leads .kpi-label-icon--solid .kpi-icon-fill { fill:currentColor; stroke:none; }
body[data-theme] #tab-leads .kpi-label-icon--solid .kpi-icon-detail { fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
body[data-theme] #tab-leads .kpi-label-icon--solid .kpi-icon-cut { fill:none; stroke:var(--ui-card); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
body[data-theme] #tab-leads .kpi-label-icon--fingerprint .kpi-icon-detail { stroke-width:1.65; }

/* KPI icon system measured from supplied overview reference. */
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi {
  display:grid; grid-template-columns:52px minmax(0,1fr); grid-template-rows:22px 38px 1fr;
  column-gap:14px; row-gap:0;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label { display:contents; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label > span {
  grid-column:2; grid-row:1; align-self:end; min-width:0;
  color:var(--text2); font-size:11px; font-weight:600; line-height:1.2;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-label-icon {
  grid-column:1; grid-row:1 / span 2; align-self:start;
  box-sizing:border-box; width:52px; height:52px; padding:9px; margin:0;
  border:1px solid color-mix(in srgb,var(--green) 14%,var(--border)); border-radius:14px;
  background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--green) 11%,transparent),transparent 72%);
  color:var(--green); overflow:visible;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .value { grid-column:2; grid-row:2; align-self:end; min-width:0; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-comparison { grid-column:1 / -1; grid-row:3; align-self:end; margin:0; }
body[data-theme] #tab-leads .kpi-label-icon--new { background:color-mix(in srgb,var(--green) 12%,var(--ui-card)); border-color:transparent; }
body[data-theme] #tab-leads :is(.kpi-label-icon--fingerprint,.kpi-label-icon--sent,.kpi-label-icon--approved) { border-radius:50%; }
body[data-theme] #tab-leads .kpi-label-icon--solid :is(.kpi-icon-fill,.kpi-icon-detail) { filter:drop-shadow(0 0 3px color-mix(in srgb,var(--green) 38%,transparent)); }
body[data-theme] #tab-leads .kpi-label-icon--fingerprint .kpi-icon-detail { stroke-width:1.55; }
body[data-theme] #tab-leads .kpi-label-icon--approved .kpi-icon-detail { stroke-width:1.9; }
body[data-theme] #tab-leads .kpi-label-icon--revenue { border-radius:12px; }
body[data-theme] #tab-leads .kpi-label-icon--revenue .kpi-icon-wallet-dot { filter:none; }
@media(max-width:650px) {
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi { grid-template-columns:48px minmax(0,1fr); }
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-label-icon { width:48px; height:48px; padding:8px; }
}

/* Fidelity pass: fuller silhouettes and reference depth. */
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi {
  background:radial-gradient(ellipse at 76% 118%,color-mix(in srgb,var(--green) 12%,transparent),transparent 38%),var(--ui-card);
  border-color:color-mix(in srgb,var(--border) 90%,white 10%);
}
body[data-theme] #tab-leads .kpi-label-icon--new { padding:7px; }
body[data-theme] #tab-leads .kpi-label-icon--new .kpi-icon-secondary { opacity:.86; }
body[data-theme] #tab-leads .kpi-label-icon--sent { padding:8px; }
body[data-theme] #tab-leads .kpi-label-icon--sent .kpi-icon-shade { fill:color-mix(in srgb,var(--green) 62%,var(--release-primary)); stroke:none; }
body[data-theme] #tab-leads .kpi-label-icon--approved { padding:7px; }
body[data-theme] #tab-leads .kpi-label-icon--approved .kpi-icon-detail { stroke-width:2.15; }
body[data-theme] #tab-leads .kpi-label-icon--revenue { padding:7px; }
body[data-theme] #tab-leads .kpi-label-icon--revenue .kpi-icon-cut { stroke-width:1.5; }

/* Unique KPI close-up calibration from supplied crop. */
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique {
  grid-template-columns:60px minmax(0,1fr); grid-template-rows:24px 40px 1fr;
  column-gap:16px;
  background:radial-gradient(ellipse at 78% 116%,color-mix(in srgb,var(--green) 20%,transparent),transparent 42%),linear-gradient(135deg,color-mix(in srgb,white 2.5%,var(--ui-card)),var(--ui-card));
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-label-icon--fingerprint {
  width:60px; height:60px; padding:7px;
  border-color:color-mix(in srgb,var(--green) 25%,var(--border));
  background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--green) 15%,transparent),transparent 72%);
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-label-icon--fingerprint .kpi-icon-detail {
  stroke-width:1.8; filter:drop-shadow(0 0 4px color-mix(in srgb,var(--green) 55%,transparent));
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .label > span { color:var(--text); font-size:12px; font-weight:650; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .value { font-size:40px; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-comparison { color:var(--text2); font-size:12px; }
@media(max-width:650px) {
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique { grid-template-columns:54px minmax(0,1fr); }
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-label-icon--fingerprint { width:54px; height:54px; padding:7px; }
}

/* Exact KPI pictograms extracted from user-supplied reference. */
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique {
  grid-template-columns:72px minmax(0,1fr); grid-template-rows:28px 44px 1fr;
  column-gap:14px;
}
body[data-theme] #tab-leads .kpi-reference-icon {
  grid-column:1; grid-row:1 / span 2; align-self:start;
  display:block; width:72px; height:72px; max-width:none; object-fit:contain;
  border:0; outline:0; border-radius:0; background:none; box-shadow:none;
}
body[data-theme] #tab-leads .kpi-reference-icon--fingerprint {
  color:var(--green); padding:9px;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label > span,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .label > span {
  color:var(--text); font-size:12px; font-weight:650;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .value,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .value { font-size:40px; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-comparison,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-comparison { color:var(--text2); font-size:12px; }
@media(max-width:650px) {
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi,
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique { grid-template-columns:64px minmax(0,1fr); grid-template-rows:26px 38px 1fr; }
  body[data-theme] #tab-leads .kpi-reference-icon { width:64px; height:64px; }
}

/* Sharp reconstructed KPI ink; container depth remains CSS-native. */
body[data-theme] #tab-leads .kpi-reference-icon {
  box-sizing:border-box; padding:10px; object-fit:contain;
  border:1px solid color-mix(in srgb,var(--green) 20%,var(--border));
  background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--green) 14%,transparent),color-mix(in srgb,var(--green) 4%,var(--ui-card)) 72%);
}
body[data-theme] #tab-leads .funnel-kpi:first-child .kpi-reference-icon {
  padding:9px; border-color:transparent; border-radius:16px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--green) 15%,var(--ui-card)),color-mix(in srgb,var(--green) 8%,var(--ui-card)));
}
body[data-theme] #tab-leads .funnel-kpi:nth-child(2) .kpi-reference-icon,
body[data-theme] #tab-leads .funnel-kpi:nth-child(3) .kpi-reference-icon,
body[data-theme] #tab-leads .funnel-kpi:nth-child(4) .kpi-reference-icon { border-radius:50%; }
body[data-theme] #tab-leads .funnel-kpi:nth-child(5) .kpi-reference-icon { padding:9px; border-radius:15px; }
@media(max-width:650px) { body[data-theme] #tab-leads .kpi-reference-icon { padding:9px; } }

/* Compact interface pass: denser rhythm without shrinking usable hit areas. */
:root {
  --compact-sidebar:184px;
  --compact-header:54px;
  --compact-gap:10px;
  --compact-card-radius:14px;
}
body[data-theme] #app > header {
  min-height:var(--compact-header); height:var(--compact-header);
  margin-left:var(--compact-sidebar); padding-inline:14px;
}
body[data-theme] .app-shell { margin-left:var(--compact-sidebar); }
body[data-theme] .sidebar {
  width:var(--compact-sidebar); flex-basis:var(--compact-sidebar);
  padding:10px 9px; gap:6px;
}
body[data-theme] .sidebar-brand { min-height:38px; padding:2px 6px 6px; gap:8px; }
body[data-theme] .sidebar-brand__icon { width:28px; height:28px; }
body[data-theme] .sidebar-brand__name { font-size:17px; }
body[data-theme] .sidebar-nav-reference { gap:2px; padding:5px 1px; }
body[data-theme] .sidebar-nav-reference button,
body[data-theme] .sidebar-nav-group > summary { min-height:38px; padding:7px 9px; font-size:12px; border-radius:8px; }
body[data-theme] .sidebar-nav-reference .nav-label { gap:9px; }
body[data-theme] .sidebar-nav-reference .nav-ref-icon { width:17px; height:17px; flex-basis:17px; }
body[data-theme] .sidebar-nav-children { gap:1px; padding:2px 0 3px 11px; }
body[data-theme] .sidebar-nav-children > button { min-height:34px; padding-left:11px; font-size:11px; }
body[data-theme] main { padding:13px 16px 20px; }
body[data-theme] .page-head { margin-bottom:10px; gap:10px; }
body[data-theme] .page-title { font-size:22px; }
body[data-theme] .page-subtitle { margin-top:2px; }
body[data-theme] .funnel-period { margin-top:10px; gap:5px; }
body[data-theme] .funnel-period button { min-height:40px; padding-inline:13px; border-radius:8px; }
body[data-theme] #tab-leads .kpi-grid { gap:10px; margin:12px 0; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique {
  height:132px; min-height:132px; padding:12px;
  grid-template-columns:58px minmax(0,1fr); grid-template-rows:23px 35px 1fr;
  column-gap:10px; border-radius:var(--compact-card-radius);
}
body[data-theme] #tab-leads .kpi-reference-icon {
  width:58px; height:58px; padding:8px;
}
body[data-theme] #tab-leads .funnel-kpi:first-child .kpi-reference-icon,
body[data-theme] #tab-leads .funnel-kpi:nth-child(5) .kpi-reference-icon { padding:8px; border-radius:13px; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label > span,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .label > span { font-size:11px; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .value,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .value { font-size:34px; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-comparison,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-comparison { font-size:11px; }
body[data-theme] .overview-command-bar { gap:6px; }
body[data-theme] .overview-command-bar :is(button,summary) { min-height:40px; padding-inline:12px; border-radius:8px; font-size:12px; }
body[data-theme] .overview-command-bar .overview-start { min-height:40px; padding-inline:15px; }
body[data-theme] .overview-offers-attention { gap:10px; }
body[data-theme] .overview-offers-attention > :is(.active-offers-panel,.attention-panel) {
  padding:12px; border-radius:var(--compact-card-radius);
}
body[data-theme] .overview-offers-attention :is(.active-offers-header,.attention-head) { min-height:34px; margin-bottom:8px; }
body[data-theme] .overview-offers-attention .active-offer-card { padding:9px 10px; gap:5px; border-radius:10px; }
body[data-theme] .active-offer-card .active-offer-heading { height:34px; gap:9px; }
body[data-theme] .active-offer-avatar { width:28px; height:28px; font-size:11px; }
body[data-theme] .active-offer-card h3 { font-size:13px; }
body[data-theme] .active-offer-stats span { font-size:11px; }
body[data-theme] .active-offer-stats strong { font-size:16px; line-height:20px; }
body[data-theme] .active-offer-stats > div + div { padding-left:10px; }
body[data-theme] .active-offer-spark { height:20px; }
body[data-theme] .active-offer-spark svg { height:19px; }
body[data-theme] .attention-row { min-height:54px; padding:8px 2px; gap:9px; }
body[data-theme] .attention-icon { width:24px; height:24px; font-size:19px; }
body[data-theme] .attention-copy { gap:1px; }
body[data-theme] .attention-copy strong { font-size:12px; }
body[data-theme] .attention-copy small,
body[data-theme] .attention-note { font-size:10px; }
body[data-theme] .attention-note { padding-top:8px; }
body[data-theme] .job-progress-panel { gap:16px; margin:12px 0; padding:14px 16px; border-radius:14px; }
body[data-theme] .job-progress-copy { gap:2px; min-width:165px; }
body[data-theme] .job-progress-copy strong { font-size:14px; }
body[data-theme] .job-progress-copy span,
body[data-theme] .job-progress-count { font-size:12px; }
body[data-theme] .job-progress-track { height:9px; }
body[data-theme] #tab-leads .dashboard-actions { gap:8px; }
body[data-theme] #tab-leads .dashboard-actions .action-reference,
body[data-theme] #tab-leads .dashboard-actions .action-reference:first-child {
  min-width:0; min-height:40px; height:40px; padding-inline:15px; gap:8px;
  border-radius:9px; font-size:12px;
}
body[data-theme] #tab-leads .dashboard-actions .action-reference__icon { width:18px; height:18px; }
body[data-theme] .settings-card,
body[data-theme] .chart-card,
body[data-theme] .crm-stat-card { border-radius:var(--compact-card-radius); }
body[data-theme] .table-wrap th { padding:8px 10px; }
body[data-theme] .table-wrap td { padding:8px 10px; }
body[data-theme] #leads-table-wrap .leads-data-table tbody td { height:52px; padding-block:6px; }
body[data-theme] #tab-crm-funnels .funnel-flow { --funnel-gap:12px; --funnel-height:88px; margin-bottom:9px; }
body[data-theme] #tab-crm-funnels .funnel-flow__card { padding:10px 13px; }
body[data-theme] #tab-crm-funnels .funnel-flow__card:not(:last-child)::after { right:-12px; }
@media(max-width:980px) {
  body[data-theme] #app > header,
  body[data-theme] .app-shell { margin-left:0; }
  body[data-theme] .sidebar { width:216px; }
}
@media(max-width:700px), (pointer:coarse) {
  body[data-theme] #app > header button,
  body[data-theme] main button,
  body[data-theme] main summary,
  body[data-theme] .sidebar-nav-reference button,
  body[data-theme] .sidebar-nav-group > summary,
  body[data-theme] .sidebar-nav-children > button { min-width:44px!important; min-height:44px!important; }
  body[data-theme] .funnel-period button,
  body[data-theme] .overview-command-bar :is(button,summary),
  body[data-theme] #tab-leads .dashboard-actions .action-reference,
  body[data-theme] #tab-leads .dashboard-actions .action-reference:first-child { min-height:44px; height:44px; }
}
@media(max-width:650px) {
  body[data-theme] main { padding:11px 10px 18px; }
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi,
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique {
    height:124px; min-height:124px; padding:11px;
    grid-template-columns:52px minmax(0,1fr); grid-template-rows:21px 31px 1fr;
  }
  body[data-theme] #tab-leads .kpi-reference-icon { width:52px; height:52px; padding:7px; }
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .value,
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .value { font-size:30px; }
  body[data-theme] .overview-offers-attention > :is(.active-offers-panel,.attention-panel) { padding:10px; }
}


/* KPI reference finish: compact hierarchy and period trend. */
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique {
  position:relative; overflow:hidden;
  height:130px; min-height:130px; padding:13px 14px 12px;
  grid-template-columns:58px minmax(0,1fr); grid-template-rows:22px 36px 1fr;
  column-gap:11px; border-color:rgba(255,255,255,.11);
  background:radial-gradient(120% 75% at 78% 112%,var(--release-soft),transparent 48%),linear-gradient(145deg,rgba(18,20,23,.98),rgba(10,11,12,.99));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label > span,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .label > span { color:var(--release-muted); font-size:11px; line-height:16px; font-weight:700; letter-spacing:.01em; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .value,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .value { color:var(--release-text); font-size:32px; line-height:36px; font-weight:700; letter-spacing:-.035em; text-shadow:none; }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .kpi-card-footer,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-card-footer { grid-column:1 / -1; grid-row:3; align-self:end; display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; color:var(--release-muted); font-size:11px; line-height:16px; }
body[data-theme] #tab-leads .funnel-period-caption { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body[data-theme] #tab-leads .funnel-trend { flex:0 0 auto; font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:-.01em; }
body[data-theme] #tab-leads .funnel-trend.is-positive { color:var(--green); }
body[data-theme] #tab-leads .funnel-trend.is-negative { color:#ff525d; }
body[data-theme] #tab-leads .funnel-trend.is-neutral { color:var(--release-muted); }
@media(max-width:650px) {
 body[data-theme] #tab-leads .kpi-grid > .funnel-kpi, body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique { height:122px; min-height:122px; padding:11px 12px 10px; grid-template-columns:52px minmax(0,1fr); grid-template-rows:20px 32px 1fr; }
 body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .value, body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .value { font-size:29px; line-height:32px; }
}

/* KPI card polish: stable figures, crisp artwork, restrained surface depth. */
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique {
  border-color:oklch(1 0 0 / .10);
  box-shadow:
    inset 0 1px 0 oklch(1 0 0 / .035),
    inset 0 -1px 0 oklch(0 0 0 / .24),
    0 10px 28px oklch(0 0 0 / .16);
}
body[data-theme] #tab-leads .kpi-reference-icon {
  outline:1px solid oklch(1 0 0 / .10);
  outline-offset:-1px;
  filter:drop-shadow(0 0 7px var(--release-primary));
  image-rendering:auto;
}
body[data-theme] #tab-leads .funnel-kpi:nth-child(3) .kpi-reference-icon { transform:translateX(1px); }
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .value,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .value {
  font-variant-numeric:tabular-nums lining-nums;
  font-feature-settings:'tnum' 1,'lnum' 1;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi .label > span,
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .label > span {
  align-self:end;
  text-wrap:balance;
  -webkit-font-smoothing:antialiased;
}
body[data-theme] #tab-leads .kpi-card-footer {
  padding-top:8px;
  border-top:1px solid oklch(1 0 0 / .045);
}
@media(prefers-reduced-motion:no-preference) {
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi,
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique {
    transition-property:border-color,box-shadow;
    transition-duration:140ms;
    transition-timing-function:cubic-bezier(.2,0,0,1);
  }
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi:hover,
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique:hover {
    border-color:oklch(1 0 0 / .15);
    box-shadow:inset 0 1px 0 oklch(1 0 0 / .05),inset 0 -1px 0 oklch(0 0 0 / .22),0 12px 30px oklch(0 0 0 / .20);
  }
}

/* Approved KPI uses the reference's shield tile, not a circular badge. */
body[data-theme] #tab-leads .funnel-kpi:nth-child(4) .kpi-reference-icon {
  border-radius:13px;
  padding:7px 8px 8px;
  transform:translateY(-1px);
  background:radial-gradient(circle at 50% 43%,var(--release-soft),var(--release-soft) 72%);
}
@media(max-width:650px) {
  body[data-theme] #tab-leads .funnel-kpi:nth-child(4) .kpi-reference-icon {
    border-radius:12px;
    padding:7px;
  }
}

/* Approved KPI: crisp vector shield inside the reference's circular halo. */
body[data-theme] #tab-leads .funnel-kpi--approved .kpi-reference-icon--approved {
  color:var(--green);
  border-color:transparent;
  outline:none;
  border-radius:50%;
  padding:8px;
  transform:translateY(5px);
  overflow:visible;
  background:radial-gradient(circle at 50% 48%,var(--release-soft),var(--release-soft) 70%,transparent 72%);
  filter:drop-shadow(0 0 6px var(--release-primary));
}
body[data-theme] #tab-leads .funnel-kpi--approved .approved-shield,
body[data-theme] #tab-leads .funnel-kpi--approved .approved-check {
  fill:none;
  stroke:currentColor;
  stroke-width:2.4;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
body[data-theme] #tab-leads .funnel-kpi--approved .approved-check { stroke-width:2.6; }
body[data-theme] #tab-leads .funnel-kpi--approved .value { transform:translateY(8px); }
@media(max-width:650px) {
  body[data-theme] #tab-leads .funnel-kpi--approved .kpi-reference-icon--approved { padding:7px; border-radius:50%; transform:translateY(4px); }
}

body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--approved .kpi-reference-icon--approved {
  border-radius:50%;
  padding:8px;
  transform:translateY(5px);
  background:radial-gradient(circle at 50% 48%,var(--release-soft),var(--release-soft) 70%,transparent 72%);
}

/* The glyph is scaled inside the SVG so its optical size cannot depend on cached CSS. */
body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-reference-icon--fingerprint {
  padding:8px;
  transform:none;
}
body[data-theme] #tab-leads .kpi-reference-icon--fingerprint path {
  vector-effect:non-scaling-stroke;
}
@media(max-width:650px) {
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--approved .kpi-reference-icon--approved { border-radius:50%; padding:7px; transform:translateY(4px); }
  body[data-theme] #tab-leads .kpi-grid > .funnel-kpi--unique .kpi-reference-icon--fingerprint { padding:7px; }
}

/* workspace-reference.css */
/* Shared Overview design language. Login and the accepted Overview are excluded. */
#app :is(.sources-ready,.crm-leads-ready) {display:none;}
#app .status-badge:has(#status-dot.idle) {display:none;}
/* One flat, role-aware sidebar shared by Overview and every other section. */
body[data-current-tab] #app .sidebar .sidebar-nav {display:flex!important;flex-direction:column;padding:22px 0 12px;gap:2px;overflow-y:auto;min-height:0;flex:1;scrollbar-width:thin;}
body[data-current-tab] #app .sidebar {width:var(--shell-sidebar);padding:0 15px 12px;gap:0;background:var(--release-side);border-right:1px solid var(--release-line);box-shadow:none;}
body[data-current-tab] #app .sidebar .sidebar-brand {height:76px;min-height:76px;padding:0 10px;gap:12px;flex-shrink:0;}
body[data-current-tab] #app .sidebar .sidebar-nav button {flex-shrink:0;min-height:36px;padding:7px 11px;border:0;border-radius:7px;background:none;color:var(--release-muted);box-shadow:none;font:14px/22px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;text-align:left;}
body[data-current-tab] #app .sidebar .sidebar-nav button.active {background:var(--release-soft);color:var(--release-primary);box-shadow:none;}
body[data-current-tab] #app .sidebar .sidebar-nav button:hover {background:var(--release-soft);color:var(--release-text);}
body[data-current-tab] #app .sidebar .sidebar-nav .nav-ref-icon {width:20px;height:20px;flex-basis:20px;stroke-width:1.4;color:currentColor;}
body[data-current-tab="leads"] #app .sidebar .sidebar-nav {padding-bottom:76px;}
body[data-current-tab="settings"] #app #settings-form .section-title,body[data-current-tab="offers"] #app .offers-toolbar-title {font-size:34px;line-height:43px;font-weight:550;letter-spacing:-.6px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app > .app-shell {margin-left:var(--shell-sidebar);}
body[data-current-tab]:not([data-current-tab="leads"]) #app > header {height:63px;min-height:63px;margin-left:calc(var(--shell-sidebar) + var(--shell-gutter));margin-right:var(--shell-gutter);padding:0;border:0;border-bottom:1px solid var(--release-line);background:var(--release-bg);box-shadow:none;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar {width:var(--shell-sidebar);padding:0 15px 15px;gap:0;background:var(--release-side);border-right:1px solid var(--release-line);box-shadow:none;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar-brand {height:76px;min-height:76px;padding:0 10px;gap:12px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar-brand__name {font-size:20px;font-weight:650;letter-spacing:-.5px;color:var(--release-text);}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar-brand__name span {color:var(--release-muted);}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar-nav {padding:22px 0 0;gap:2px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar-nav :is(button,summary) {min-height:36px;padding:7px 11px;border:0;border-radius:7px;background:none;color:var(--release-muted);box-shadow:none;font-size:14px;line-height:22px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar-nav button.active {background:var(--release-soft);color:var(--release-primary);box-shadow:none;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar-nav :is(button,summary):hover {background:var(--release-soft);color:var(--release-text);}
body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar-nav .nav-ref-icon {width:20px;height:20px;stroke-width:1.4;color:currentColor;}
body[data-current-tab]:not([data-current-tab="leads"]) #app {
  --ref-raw-canvas:var(--release-bg);--ref-raw-panel:var(--release-card);--ref-raw-line:var(--release-line);
  --ref-raw-ink:var(--release-text);--ref-raw-muted:var(--release-muted);--ref-raw-accent:var(--release-primary);
  --bg:var(--ref-raw-canvas);--surface:var(--ref-raw-panel);--surface2:var(--release-soft);
  --surface-hover:var(--release-soft);--border:var(--ref-raw-line);--border2:var(--release-line);
  --text:var(--ref-raw-ink);--text2:var(--ref-raw-muted);--green:var(--ref-raw-accent);
  --ui-shadow:none;background:var(--bg);color:var(--text);
  font:14px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  font-variant-numeric:tabular-nums;
}
body[data-theme="light"][data-current-tab]:not([data-current-tab="leads"]) #app {
  --ref-raw-canvas:var(--bg);--ref-raw-panel:var(--ui-card);--ref-raw-line:var(--ui-border);
  --ref-raw-ink:var(--text);--ref-raw-muted:var(--text2);--ref-raw-accent:var(--green);
  --surface:var(--ui-card);--surface2:var(--bg2);--border2:var(--border-hi);
}
body[data-theme="light"][data-current-tab] #app :is(.sidebar,.header-account) {background:var(--ui-nav);border-color:var(--ui-border);color:var(--text);}
body[data-theme="light"][data-current-tab] #app > header {background:var(--ui-nav);border-color:var(--ui-border);color:var(--text);}
body[data-theme="light"][data-current-tab] #app .sidebar :is(.sidebar-brand__name,.sidebar-brand__name span) {color:var(--text);}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button {color:var(--text2);}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button:hover {background:var(--surface-hover);color:var(--text);}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button.active {background:var(--green-dim);color:var(--text);box-shadow:inset 3px 0 var(--green);}
body[data-current-tab]:not([data-current-tab="leads"]) #app main {background:var(--bg);padding:30px var(--shell-gutter) 28px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.page-head,.offers-head,.settings-head) {margin-bottom:22px;gap:24px;min-height:69px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.page-title,.offers-title,.settings-title) {font-family:inherit;font-size:34px;line-height:43px;font-weight:550;letter-spacing:-.6px;color:var(--text);text-transform:none;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane .page-subtitle {font:14px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--text2);margin-top:1px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.settings-card,.summary-card,.chart-card,.crm-stat-card,.network-balance-panel,.network-balance-card,.ai-agent-hero,.ai-agent-panel,.offer-card,.vacancy-card,.source-card,.messenger-card,.table-wrap,.diagnostics-card) {background:var(--surface);border:1px solid var(--border);border-radius:11px;box-shadow:none;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.settings-card,.chart-card,.ai-agent-panel,.network-balance-panel) {padding:16px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(h2,h3,.section-title) {font-family:inherit;color:var(--text);font-size:18px;line-height:23px;font-weight:500;letter-spacing:-.22px;text-transform:none;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.summary-card,.crm-stat-card,.network-balance-card) .value {font:550 28px/33px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.4px;color:var(--text);}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.summary-card,.crm-stat-card,.network-balance-card) .label {font-size:14px;line-height:19px;font-weight:400;color:var(--text2);text-transform:none;letter-spacing:0;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.btn-sm,.btn-action,.btn-primary,.btn-secondary) {font:14px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;min-height:36px;padding:7px 11px;border:1px solid var(--border);border-radius:8px;background:var(--release-soft);color:var(--text);box-shadow:none;text-transform:none;letter-spacing:0;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.btn-action.primary,.btn-primary) {background:var(--green);border-color:var(--release-line);color:var(--release-on);font-weight:550;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.btn-sm,.btn-action,.btn-secondary):hover {background:var(--release-soft);border-color:var(--release-line);transform:none;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),select,textarea) {font:14px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--text);background:var(--release-soft);border:1px solid var(--release-line);border-radius:8px;box-shadow:none;min-height:36px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(input,textarea)::placeholder {color:var(--release-muted);opacity:1;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(button,input,select,textarea,summary):focus-visible {outline:2px solid var(--green);outline-offset:3px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane table {border-collapse:collapse;background:var(--surface);font:14px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane th {height:34px;padding:8px 16px;color:var(--text2);background:var(--surface);font-size:13px;line-height:18px;font-weight:400;text-transform:none;letter-spacing:0;border-color:var(--border);}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane td {padding:12px 16px;border-color:var(--border);font-size:14px;line-height:20px;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane tbody tr:hover {background:var(--release-soft);}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.empty,.muted,.text-sm,.table-meta) {color:var(--text2);font-family:inherit;}
@media(max-width:900px){body[data-current-tab]:not([data-current-tab="leads"]) #app main{padding:22px var(--shell-gutter) 24px}}
@media(max-width:980px){body[data-current-tab]:not([data-current-tab="leads"]) #app > .app-shell{margin-left:0}body[data-current-tab]:not([data-current-tab="leads"]) #app > header{margin-left:var(--shell-gutter);margin-right:var(--shell-gutter)}body[data-current-tab]:not([data-current-tab="leads"]) #app .sidebar{width:225px}}
@media(max-width:600px){body[data-current-tab]:not([data-current-tab="leads"]) #app main{padding:22px var(--shell-gutter) 24px}body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.page-title,.offers-title,.settings-title){font-size:30px;line-height:39px}body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane .page-head{flex-wrap:wrap;gap:16px}}
/* Section-specific surfaces, including components produced by live renderers. */
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.source-overview,.sources-summary,.sources-trend,.crm-settings-card,.funnel-flow__card,.funnel-lead-card,.msg-accounts-panel,.vacancy-invite-panel) {background:var(--surface);border:1px solid var(--border);border-radius:11px;box-shadow:none;color:var(--text);}
/* Match funnel cards to the shared section surface instead of the legacy charcoal fill. */
body[data-current-tab="crm-funnels"] #app .tab-pane :is(.funnel-flow__card,.funnel-lead-card) {background-color:var(--surface);border-color:var(--border);}
body[data-current-tab="crm-funnels"] #app .tab-pane .funnel-lead-card:hover {background-color:var(--surface-hover);}
body[data-current-tab="crm-funnels"] #app #tab-crm-funnels :is(.funnel-board,.funnel-lane,.funnel-lane-add,.funnel-definitions) {background-color:var(--bg);border-color:var(--border);}
body[data-current-tab="crm-funnels"] #app #tab-crm-funnels .funnel-lane > header {height:34px;min-height:0;margin:0;padding:0 13px;border:0;background:transparent;box-shadow:none;}
body[data-current-tab="crm-funnels"] #app .tab-pane .funnel-lane-list {min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#303030 transparent;}
body[data-current-tab="crm-funnels"] #app .tab-pane .funnel-lead-card :is(strong,span,small) {height:auto;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;}
body[data-current-tab]:not([data-current-tab="leads"]) #app .tab-pane :is(.source-overview,.sources-summary,.sources-trend,.crm-settings-card,.msg-accounts-panel) {padding:16px;min-width:0;}
body[data-current-tab="offers"] #app #tab-offers .offers-toolbar-title {font-size:34px;line-height:43px;font-weight:550;letter-spacing:-.6px;}
body[data-current-tab="sources"] #app .source-primary-metrics strong {font:550 28px/33px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--text);}
body[data-current-tab="sources"] #app .source-primary-metrics :is(span,small),body[data-current-tab="sources"] #app :is(.source-overview-head p,.sources-summary p,.sources-trend p) {color:var(--text2);}
body[data-current-tab="sources"] #app .source-primary-metrics > div {border-color:var(--border);}
body[data-current-tab="sources"] #app .sources-table {overflow-x:auto;max-width:100%;}
body[data-current-tab="sources"] #app .sources-table-row {min-width:650px;border-color:var(--border);}
body[data-current-tab="crm-messengers"] #app .tab-pane {
  --msg-bg:var(--bg);--msg-panel:var(--surface);--msg-panel-2:var(--surface2);--msg-border:var(--border);
  --msg-text:var(--text);--msg-muted:var(--text2);--msg-green:var(--green);--msg-green-soft:var(--green-dim);
}
body[data-theme="light"][data-current-tab="crm-messengers"] #app .tab-pane :is(.msg-kpis article,.msg-account-head,.msg-account-row button,.msg-activity>button) {background:var(--surface2);color:var(--text);border-color:var(--border);}
body[data-theme="light"][data-current-tab="crm-messengers"] #app .tab-pane :is(.msg-account-row,.msg-bottom-grid h2,.msg-activity-row,.msg-crm li) {border-color:var(--border);color:var(--text);}

/* Remove the remaining pre-reference dashboard surfaces discovered in live audit. */
body[data-current-tab="crm-leads"] #app .crm-leads-kpis article {
  border:1px solid var(--border);border-radius:11px;background:var(--surface);background-image:none;box-shadow:none;
}
body[data-current-tab="crm-leads"] #app .crm-leads-table-shell {
  border:1px solid var(--border);border-radius:11px;background:var(--surface);box-shadow:none;
}
body[data-current-tab="crm-leads"] #app .crm-leads-table-wrap :is(table,th) {background:var(--surface);}
body[data-current-tab="crm-leads"] #app .crm-leads-table-wrap :is(th,td),
body[data-current-tab="crm-leads"] #app .crm-leads-footer {border-color:var(--border);}
body[data-current-tab="crm-leads"] #app .crm-leads-footer {background:var(--surface);color:var(--text2);}
body[data-current-tab="crm-messengers"] #app .msg-kpis article {
  border:1px solid var(--border);border-radius:11px;background:var(--surface);background-image:none;box-shadow:none;
}
body[data-current-tab="crm-messengers"] #app :is(.msg-activity,.msg-crm) {
  border-color:var(--border);border-radius:11px;background:var(--surface);box-shadow:none;
}
body[data-current-tab="crm-messengers"] #app .msg-account-head {background:var(--surface2);color:var(--text2);}
body[data-current-tab="crm-messengers"] #app :is(.msg-account-row,.msg-bottom-grid h2,.msg-activity-row,.msg-crm li) {border-color:var(--border);}

/* Messengers page: the renderer owns these components, so keep their complete
   layout here instead of relying on styles from the retired AccountManager UI. */
body[data-current-tab="crm-messengers"] #app .crm-messengers-page {max-width:1545px;margin:0 auto;}
body[data-current-tab="crm-messengers"] #app .crm-messengers-page-head {display:flex;align-items:flex-start;justify-content:space-between;}
body[data-current-tab="crm-messengers"] #app .msg-kpis {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;}
body[data-current-tab="crm-messengers"] #app .msg-kpis article {display:flex;align-items:center;gap:14px;min-height:105px;padding:20px;}
body[data-current-tab="crm-messengers"] #app .msg-kpis article>svg {width:27px;height:27px;fill:none;stroke:var(--green);stroke-width:1.6;}
body[data-current-tab="crm-messengers"] #app .msg-kpis article div {display:grid;gap:2px;}
body[data-current-tab="crm-messengers"] #app .msg-kpis span,body[data-current-tab="crm-messengers"] #app .msg-kpis small {color:var(--text2);font-size:13px;}
body[data-current-tab="crm-messengers"] #app .msg-kpis strong {font-size:28px;line-height:32px;font-weight:600;color:var(--text);}
body[data-current-tab="crm-messengers"] #app .msg-accounts-panel {padding:0!important;overflow:hidden;margin-bottom:18px;}
body[data-current-tab="crm-messengers"] #app .msg-accounts-head {display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border);}
body[data-current-tab="crm-messengers"] #app .msg-accounts-head h2 {margin:0;}
body[data-current-tab="crm-messengers"] #app .msg-accounts-head button,body[data-current-tab="crm-messengers"] #app .msg-account-row button,body[data-current-tab="crm-messengers"] #app .msg-activity>button {min-height:34px;padding:6px 11px;border:1px solid var(--border2);border-radius:7px;background:var(--surface2);color:var(--text);cursor:pointer;}
body[data-current-tab="crm-messengers"] #app .msg-accounts-head button {background:var(--green);border-color:var(--green);color:var(--release-on);font-weight:600;}
body[data-current-tab="crm-messengers"] #app .msg-account-table {min-width:980px;}
body[data-current-tab="crm-messengers"] #app .msg-accounts-panel {overflow-x:auto;}
body[data-current-tab="crm-messengers"] #app :is(.msg-account-head,.msg-account-row) {display:grid;grid-template-columns:34px 110px minmax(145px,1.3fr) 120px minmax(165px,1.2fr) 155px 110px 140px 104px 34px;align-items:center;gap:10px;padding:10px 18px;}
body[data-current-tab="crm-messengers"] #app .msg-account-head {min-height:38px;font-size:12px;}
body[data-current-tab="crm-messengers"] #app .msg-account-row {min-height:60px;border-top:1px solid var(--border);color:var(--text);}
body[data-current-tab="crm-messengers"] #app .msg-account-login,body[data-current-tab="crm-messengers"] #app .msg-account-row time {color:var(--text2);}
body[data-current-tab="crm-messengers"] #app .msg-channel-icon {display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--release-card);color:var(--release-primary);}
body[data-current-tab="crm-messengers"] #app .msg-channel-icon svg {width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;}
body[data-current-tab="crm-messengers"] #app .msg-state-dot {display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--green);box-shadow:none;}
body[data-current-tab="crm-messengers"] #app .msg-state-dot.is-off {background:#f1a91b;box-shadow:none;}
body[data-current-tab="crm-messengers"] #app .msg-sync-ok {display:flex;align-items:center;gap:6px;color:var(--release-primary);}
body[data-current-tab="crm-messengers"] #app .msg-sync-ok.is-off {color:#d8a43b;}
body[data-current-tab="crm-messengers"] #app .msg-sync-ok svg {width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;}
body[data-current-tab="crm-messengers"] #app .msg-row-more {padding:0!important;width:30px;}
body[data-current-tab="crm-messengers"] #app .msg-account-empty {padding:28px 18px;color:var(--text2);text-align:center;border-top:1px solid var(--border);}
body[data-current-tab="crm-messengers"] #app .msg-bottom-grid {display:grid;grid-template-columns:1fr 1fr;gap:18px;}
body[data-current-tab="crm-messengers"] #app :is(.msg-activity,.msg-crm) {min-width:0;padding:18px;border:1px solid var(--border);}
body[data-current-tab="crm-messengers"] #app .msg-bottom-grid h2 {display:flex;align-items:center;gap:8px;margin:0 0 10px;padding-bottom:13px;border-bottom:1px solid var(--border);}
body[data-current-tab="crm-messengers"] #app .msg-bottom-grid h2 svg {width:19px;height:19px;fill:none;stroke:var(--green);stroke-width:1.7;}
body[data-current-tab="crm-messengers"] #app .msg-activity-row {display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--border);}
body[data-current-tab="crm-messengers"] #app .msg-activity-row span:nth-child(2) {display:grid;}
body[data-current-tab="crm-messengers"] #app .msg-activity-row :is(small,time),body[data-current-tab="crm-messengers"] #app .msg-activity p {color:var(--text2);}
body[data-current-tab="crm-messengers"] #app .msg-activity>button {margin-top:14px;}
body[data-current-tab="crm-messengers"] #app .msg-crm ul {list-style:none;margin:0;padding:0;}
body[data-current-tab="crm-messengers"] #app .msg-crm li {display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border);}
body[data-current-tab="crm-messengers"] #app .msg-crm li span {display:grid;}
body[data-current-tab="crm-messengers"] #app .msg-crm li small {margin-top:3px;color:var(--text2);}
body[data-current-tab="crm-messengers"] #app .msg-crm li b {color:var(--release-primary);font-size:12px;white-space:nowrap;}
@media(max-width:1100px){body[data-current-tab="crm-messengers"] #app .msg-kpis{grid-template-columns:1fr}body[data-current-tab="crm-messengers"] #app .msg-bottom-grid{grid-template-columns:1fr}}

/* Automation and AI Agent pages use the same dark workspace language. */
body[data-current-tab="automation"] #app .ai-agent-page {max-width:1545px;margin:0 auto;}
body[data-current-tab="automation"] #app .ai-agent-page-head {display:flex;align-items:flex-start;justify-content:space-between;}
body[data-current-tab="automation"] #app .ai-agent-hero {padding:0;overflow:hidden;margin-bottom:18px;}
body[data-current-tab="automation"] #app .ai-agent-hero-head {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-bottom:1px solid var(--border);}
body[data-current-tab="automation"] #app .ai-agent-hero-head h2 {display:flex;align-items:center;gap:9px;margin:0;font-size:14px;letter-spacing:.04em;}
body[data-current-tab="automation"] #app .ai-agent-icon {display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--release-line);border-radius:7px;background:var(--release-soft);color:var(--green);font-style:normal;}
body[data-current-tab="automation"] #app .ai-agent-state {margin:0;padding:5px 9px;border:1px solid var(--release-line);border-radius:999px;background:var(--release-card);color:var(--release-primary)!important;font-size:12px;font-weight:500;}
body[data-current-tab="automation"] #app .ai-agent-hero-body {display:grid;grid-template-columns:minmax(240px,.8fr) minmax(520px,1.6fr);align-items:stretch;}
body[data-current-tab="automation"] #app .ai-agent-hero-body>div:first-child {padding:22px 18px;border-right:1px solid var(--border);}
body[data-current-tab="automation"] #app .ai-agent-hero-body p {margin:0 0 18px;color:var(--text2);}
body[data-current-tab="automation"] #app .ai-agent-toggle {min-height:36px;padding:7px 12px;border:1px solid var(--border2);border-radius:8px;background:var(--surface2);color:var(--text);font-weight:600;cursor:pointer;}
body[data-current-tab="automation"] #app .ai-agent-toggle.is-enabled {border-color:var(--release-line);background:var(--release-soft);color:var(--release-primary);}
body[data-current-tab="automation"] #app .ai-agent-hero-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
body[data-current-tab="automation"] #app .ai-agent-hero-metrics>span {display:grid;align-content:center;gap:3px;min-height:125px;padding:18px;border-right:1px solid var(--border);}
body[data-current-tab="automation"] #app .ai-agent-hero-metrics>span:last-child {border-right:0;}
body[data-current-tab="automation"] #app .ai-agent-hero-metrics small,body[data-current-tab="automation"] #app .ai-agent-hero-metrics em {color:var(--text2);font-size:12px;font-style:normal;}
body[data-current-tab="automation"] #app .ai-agent-hero-metrics strong {font-size:26px;line-height:31px;font-weight:600;color:var(--text);}
body[data-current-tab="automation"] #app .ai-agent-hero-metrics strong.warn {color:#e8b32c;}
body[data-current-tab="automation"] #app .ai-agent-tables {display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
body[data-current-tab="automation"] #app .ai-agent-panel {padding:0!important;overflow:hidden;}
body[data-current-tab="automation"] #app .ai-agent-panel>h2 {display:flex;align-items:center;gap:9px;margin:0;padding:15px 18px;border-bottom:1px solid var(--border);font-size:14px;letter-spacing:.03em;}
body[data-current-tab="automation"] #app .ai-agent-panel>h2 i {color:var(--green);font-style:normal;}
body[data-current-tab="automation"] #app .ai-agent-panel>.ai-agent-list {display:block;margin:0;min-height:145px;}
body[data-current-tab="automation"] #app .ai-agent-table-row {display:grid;grid-template-columns:minmax(160px,1fr) auto;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--border);}
body[data-current-tab="automation"] #app .ai-agent-table-row span {color:var(--text2);}
body[data-current-tab="automation"] #app .ai-agent-empty {display:grid;place-items:center;min-height:145px;padding:20px;color:var(--text2);text-align:center;}
body[data-current-tab="automation"] #app .ai-agent-panel footer {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:51px;padding:9px 18px;border-top:1px solid var(--border);color:var(--text2);}
body[data-current-tab="automation"] #app .ai-agent-panel footer button {min-height:32px;padding:5px 10px;border:1px solid var(--border2);border-radius:7px;background:var(--surface2);color:var(--text);cursor:pointer;}
body[data-current-tab="automation"] #app .ai-agent-panel .settings-grid {display:grid;gap:13px;padding:17px 18px;}
body[data-current-tab="automation"] #app .ai-agent-panel .form-row {display:grid;gap:6px;color:var(--text2);font-size:12px;}
body[data-current-tab="automation"] #app .ai-agent-panel textarea {resize:vertical;}
body[data-current-tab="automation"] #app .ai-agent-logs-panel {margin-top:0;}
body[data-current-tab="automation"] #app .ai-agent-logs {display:grid;margin:0;min-height:92px;}
body[data-current-tab="automation"] #app .ai-agent-logs>div:not(.ai-agent-empty) {display:grid;grid-template-columns:110px 8px 1fr;align-items:center;gap:10px;padding:9px 18px;border-bottom:1px solid var(--border);}
body[data-current-tab="automation"] #app .ai-agent-logs time {color:var(--text2);font:12px/18px "DM Mono",monospace;}
body[data-current-tab="automation"] #app .ai-agent-logs i {width:7px;height:7px;border-radius:50%;background:var(--release-soft);}
body[data-current-tab="automation"] #app .ai-agent-logs i.error {background:#ff4d57;}body[data-current-tab="automation"] #app .ai-agent-logs i.warning {background:#e8b32c;}body[data-current-tab="automation"] #app .ai-agent-logs i.info {background:var(--green);}
@media(max-width:1100px){body[data-current-tab="automation"] #app .ai-agent-hero-body{grid-template-columns:1fr}body[data-current-tab="automation"] #app .ai-agent-hero-body>div:first-child{border-right:0;border-bottom:1px solid var(--border)}body[data-current-tab="automation"] #app .ai-agent-tables{grid-template-columns:1fr}}
@media(max-width:680px){body[data-current-tab="automation"] #app .ai-agent-hero-metrics{grid-template-columns:1fr}body[data-current-tab="automation"] #app .ai-agent-hero-metrics>span{min-height:90px;border-right:0;border-bottom:1px solid var(--border)}}
/* Mailing page was migrated to semantic markup; these rules replace the
   removed legacy layout without changing its sending behaviour. */
body[data-current-tab="telethon-mailing"] #app .tg-mailing-page {max-width:1545px;margin:0 auto;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-page {--surface:var(--release-card);--surface2:var(--release-soft);--border:var(--release-line);--border2:var(--release-line);--text:var(--release-text);--text2:var(--release-primary);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-page>.page-head {display:flex;align-items:flex-start;justify-content:space-between;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-grid {display:grid;grid-template-columns:minmax(300px,.72fr) minmax(520px,1.28fr);gap:18px;align-items:start;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-compose {padding:0!important;overflow:hidden;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-compose>h3 {margin:0;padding:15px 18px;border-bottom:1px solid var(--border);font-size:15px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-compose>:not(h3) {margin-left:18px;margin-right:18px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-drop {display:grid;place-items:center;gap:5px;min-height:150px;margin-top:18px;padding:22px;border:1px dashed var(--release-line);border-radius:10px;background:var(--surface2);color:var(--text);text-align:center;cursor:pointer;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-drop:hover {border-color:var(--release-line);background:var(--release-soft);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-drop span {max-width:310px;color:var(--text2);font-size:12px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-drop input {max-width:100%;margin-top:9px;color:var(--text2);}
body[data-current-tab="telethon-mailing"] #app #tg-mailing-import-state {padding:12px 0;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-preview {display:flex;flex-wrap:wrap;gap:8px;padding-bottom:18px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-preview span {display:grid;gap:2px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface2);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-preview small {color:var(--text2);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-accounts {display:grid;gap:8px;margin-top:17px;margin-bottom:14px;padding:12px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);color:var(--text2);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-accounts label {display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center;padding:8px;border-radius:7px;background:var(--surface);color:var(--text);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-accounts label input {grid-row:1/3;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-accounts label span {color:var(--text2);font-size:12px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-compose .form-row {display:grid;gap:6px;margin-top:12px;color:var(--text2);font-size:12px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-compose textarea {width:100%;resize:vertical;}
body[data-current-tab="telethon-mailing"] #app .tg-spintax-help {display:flex;align-items:center;gap:10px;margin-top:9px;color:var(--text2);font-size:12px;}
body[data-current-tab="telethon-mailing"] #app .tg-spintax-help code {padding:5px 7px;border:1px solid var(--border);border-radius:6px;background:var(--release-soft);color:var(--release-text);}
body[data-current-tab="telethon-mailing"] #app .tg-spintax-preview {min-height:48px;margin-top:10px;padding:11px;border-left:3px solid var(--release-line);border-radius:4px;background:var(--release-soft);color:var(--text2);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-controls {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-controls label {display:grid;gap:5px;color:var(--text2);font-size:12px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-consent {display:flex;align-items:flex-start;gap:9px;margin-top:14px;color:var(--text);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-consent input {margin-top:3px;accent-color:var(--green);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-compose .actions {display:flex;gap:9px;margin-top:15px;margin-bottom:8px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-compose .save-msg {min-height:28px;margin-bottom:14px;color:var(--text2);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-status {margin-top:18px;padding:18px!important;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-status-head {display:flex;align-items:center;justify-content:space-between;gap:16px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-status-head h3 {margin:0;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-status-head span {color:var(--text2);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-progress {height:8px;margin:16px 0;border-radius:999px;background:var(--release-soft);overflow:hidden;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-progress i {display:block;width:0;height:100%;border-radius:inherit;background:var(--green);transition:width .25s ease;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--border);border-radius:9px;overflow:hidden;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics span {display:grid;gap:2px;padding:13px 15px;border-right:1px solid var(--border);color:var(--text2);font-size:12px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics span:last-child {border-right:0;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics strong {font-size:22px;color:var(--text);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-log {margin-top:12px;padding:10px 12px;border-radius:7px;background:var(--surface2);color:var(--text2);font:12px/18px "DM Mono",monospace;}
@media(max-width:1100px){body[data-current-tab="telethon-mailing"] #app .tg-mailing-grid{grid-template-columns:1fr}}
@media(max-width:680px){body[data-current-tab="telethon-mailing"] #app .tg-mailing-controls,body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics{grid-template-columns:1fr 1fr}body[data-current-tab="telethon-mailing"] #app .tg-spintax-help{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){body[data-current-tab="sources"] #app .sources-analysis{display:grid;grid-template-columns:minmax(0,1fr)}body[data-current-tab="sources"] #app .source-primary-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}body[data-current-tab="sources"] #app .source-period-metrics{display:flex;flex-wrap:wrap;gap:16px}body[data-current-tab="sources"] #app .source-period-metrics > div{flex:1 1 40%;min-width:0}body[data-current-tab="sources"] #app .source-period-metrics > button{flex:1 1 100%;white-space:normal}body[data-current-tab="sources"] #app .sources-toolbar{flex-wrap:wrap}body[data-current-tab="offers"] #app #tab-offers .offers-toolbar-title{font-size:30px;line-height:39px}}

/* Shared audit corrections apply in both themes. */
body[data-current-tab="vacancies"] #app .vacancies-ref-head h1 {margin:0;}
body[data-current-tab="sources"] #app #tab-sources :is(.source-overview-head p,.source-period-label,.source-primary-metrics span,.source-primary-metrics small,.source-period-metrics small,.sources-summary p,.sources-trend p,.source-chart-empty,.source-state) {font-size:12px;line-height:18px;}
body[data-current-tab="sources"] #app #tab-sources :is(.source-primary-metrics,.source-period-metrics) > div {min-width:0;}
body[data-current-tab="sources"] #app #tab-sources :is(.source-primary-metrics span,.source-primary-metrics small) {white-space:normal;}

body[data-current-tab="automation"] #app .ai-agent-panel{height:auto;min-height:278px;grid-template-rows:auto minmax(100px,1fr) auto;overflow:visible;}
body[data-current-tab="automation"] #app .ai-agent-panel h2{height:auto;margin-bottom:16px;}
body[data-current-tab="automation"] #app .ai-agent-panel .ai-agent-list{overflow:auto;max-height:480px;}
body[data-current-tab="automation"] #app .ai-agent-settings-panel{display:block;}
body[data-current-tab="automation"] #app .ai-agent-settings-panel .form-row{align-items:start;}

body[data-current-tab="automation"] #app .settings-grid .form-row:has(#content-system-prompt){grid-column:1/-1;}
body[data-current-tab="automation"] #app #content-system-prompt{width:100%;min-height:140px;resize:vertical;}
@media(max-width:700px){
body[data-current-tab="ai-agent"] #app #tab-ai-agent .ai-editor-head{grid-template-columns:32px minmax(0,1fr) 32px;gap:8px;height:auto;padding:12px 8px;}
body[data-current-tab="ai-agent"] #app #tab-ai-agent .ai-editor-head-icon{display:none;}
body[data-current-tab="ai-agent"] #app #tab-ai-agent .ai-editor-head>div{min-width:0;}
body[data-current-tab="ai-agent"] #app #tab-ai-agent .ai-editor-breadcrumb{flex-wrap:wrap;gap:4px 8px;}
body[data-current-tab="ai-agent"] #app #tab-ai-agent .ai-editor-breadcrumb h1{font-size:20px;line-height:26px;white-space:normal;overflow-wrap:normal;word-break:normal;}
body[data-current-tab="ai-agent"] #app #tab-ai-agent .ai-editor-head p{font-size:12px;line-height:17px;}
body[data-current-tab="ai-agent"] #app #tab-ai-agent .ai-editor-tabs{height:auto;min-height:48px;overflow-x:auto;gap:4px;align-items:center;}
body[data-current-tab="ai-agent"] #app #tab-ai-agent .ai-editor-tabs button{flex:0 0 auto;white-space:nowrap;min-height:44px;padding:0 10px;}
}

/* interface-shell.css */
/* Stable shell geometry across every dashboard route. Loaded after legacy CSS. */
body[data-current-tab] #app {--shell-sidebar:225px;--shell-gutter:37px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
body[data-current-tab] #app .app-shell {margin-left:var(--shell-sidebar);}
body[data-current-tab] #app .sidebar {width:var(--shell-sidebar);inset:0 auto 0 0;height:100dvh;padding:0 15px 12px;transform:none;}
body[data-current-tab] #app > header {margin-left:calc(var(--shell-sidebar) + var(--shell-gutter));margin-right:var(--shell-gutter);height:63px;min-height:63px;padding:0;}
body[data-current-tab] #app main {padding-inline:var(--shell-gutter);}
body[data-current-tab] #app .sidebar .sidebar-brand {height:76px;min-height:76px;padding:0 10px;}
body[data-current-tab] #app .sidebar .sidebar-brand__name {font-family:inherit;font-size:20px;font-weight:650;letter-spacing:-.5px;}
body[data-current-tab] #app .sidebar .sidebar-brand__icon {width:25px;height:29px;border-radius:0;box-shadow:none;}
body[data-current-tab] #app .sidebar .sidebar-nav {padding-bottom:76px;}
body[data-current-tab] #app .sidebar .sidebar-group-bottom {display:none;}
body[data-current-tab] #app > header .header-account {position:fixed;left:0;top:auto;bottom:0;width:calc(var(--shell-sidebar) - 1px);height:68px;padding:0 18px;display:flex;align-items:center;background:var(--release-card);border-color:var(--release-line);color:var(--release-text);z-index:31;}
body[data-current-tab] #app > header .header-user {border:0;background:none;box-shadow:none;padding:0;width:100%;height:44px;gap:10px;justify-content:flex-start;}
body[data-current-tab] #app > header .header-user__avatar {width:36px;height:36px;background:var(--release-card);color:var(--release-text);}
body[data-current-tab] #app > header .header-account-menu {top:auto;bottom:60px;left:12px;right:auto;}
body[data-current-tab] #app .tab-pane {animation:none;}
body[data-current-tab] #app :is(button,summary) {transition-property:background-color,border-color,color,opacity;transition-duration:120ms;}
body[data-current-tab] #app :is(h1,h2,h3,.page-title) {text-wrap:balance;}
body[data-current-tab] #app :is(.page-subtitle,.ov-subtitle,.empty) {text-wrap:pretty;}
body[data-current-tab] #app :is(button,input,select,textarea,summary):focus-visible {outline:2px solid var(--release-primary);outline-offset:3px;}
body[data-theme="light"][data-current-tab] #app > header,
body[data-theme="light"][data-current-tab] #app .sidebar,
body[data-theme="light"][data-current-tab] #app > header .header-account {background:var(--ui-nav);border-color:var(--ui-border);color:var(--text);}
body[data-theme="light"][data-current-tab] #app :is(button,input,select,textarea,summary):focus-visible {outline-color:var(--green);}
@media(min-width:1600px){body[data-current-tab] #app{--shell-sidebar:240px;--shell-gutter:40px}}
@media(max-width:1190px) and (min-width:981px){body[data-current-tab] #app{--shell-sidebar:200px;--shell-gutter:24px}body[data-current-tab] #app .sidebar .sidebar-brand__name{font-size:18px}}
@media(min-width:981px){body[data-current-tab] #app > header .mobile-menu-toggle{display:none}}
@media(max-width:980px){body[data-current-tab] #app{--shell-sidebar:225px;--shell-gutter:24px}body[data-current-tab] #app .app-shell{margin-left:0}body[data-current-tab] #app > header{margin-inline:var(--shell-gutter);height:60px;min-height:60px}body[data-current-tab] #app .sidebar{transform:translateX(-100%);transition:transform 150ms ease-out}body[data-current-tab] #app .sidebar.open{transform:translateX(0)}body[data-current-tab] #app > header .mobile-menu-toggle{display:inline-flex;order:-1}body[data-current-tab] #app > header .header-account{display:none}body.mobile-sidebar-open[data-current-tab] #app > header .header-account{display:flex}body[data-current-tab] #app .sidebar .sidebar-nav button{min-height:44px}}
@media(max-width:600px){body[data-current-tab] #app{--shell-gutter:20px}}
@media(prefers-reduced-motion:reduce){body[data-current-tab] #app *,body[data-current-tab] #app *::before,body[data-current-tab] #app *::after{transition:none!important;animation:none!important}}

/* overview-reference.css */
#tab-leads .overview-reference{--bg:var(--release-bg);--side:var(--release-side);--card:var(--release-card);--line:var(--release-line);--text:var(--release-text);--muted:var(--release-muted);--lime:var(--release-primary);--red:#eb8586;--amber:#e5bc76;--sidew:225px;--gutter:37px}
#tab-leads .overview-reference *{box-sizing:border-box}
body[data-current-tab="leads"]{min-width:320px;background:var(--bg);scrollbar-color:#474e54 var(--bg)}
#tab-leads .overview-reference{margin:0;color:var(--text);font:14px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
#tab-leads .overview-reference button,#tab-leads .overview-reference input{font:inherit}
#tab-leads .overview-reference button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;margin:0;padding:0;border:0;color:inherit;background:none;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent}
#tab-leads .overview-reference button:after{content:none}
#tab-leads .overview-reference button:focus-visible,#tab-leads .overview-reference input:focus-visible,#tab-leads .overview-reference [tabindex]:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
#tab-leads .overview-reference button:hover{color:var(--lime)}
#tab-leads .overview-reference h1,#tab-leads .overview-reference h2,#tab-leads .overview-reference h3,#tab-leads .overview-reference p{margin:0}
#tab-leads .overview-reference h2{font-size:18px;line-height:23px;font-weight:500;letter-spacing:-.22px}
#tab-leads .overview-reference svg{display:block;flex-shrink:0}
#tab-leads .overview-reference .ov-i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
#tab-leads .overview-reference .ov-i.ov-sm{width:16px;height:16px}
#tab-leads .overview-reference .ov-sprite{position:absolute;width:0;height:0;overflow:hidden}
#tab-leads .overview-reference .ov-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#tab-leads .overview-reference [hidden]{display:none!important}
#tab-leads .overview-reference .ov-side{position:fixed;inset:0 auto 0 0;z-index:30;display:flex;flex-direction:column;width:var(--sidew);background:var(--side);border-right:1px solid var(--release-line)}
#tab-leads .overview-reference .ov-brand{height:76px;flex-shrink:0;display:flex;align-items:center;gap:12px;padding:0 25px}
#tab-leads .overview-reference .ov-brand svg{width:25px;height:29px;color:var(--lime)}
#tab-leads .overview-reference .ov-brand-name{font-size:20px;font-weight:650;letter-spacing:-.5px;white-space:nowrap}
#tab-leads .overview-reference .ov-brand-name span{color:var(--release-muted);font-weight:500}
#tab-leads .overview-reference .ov-navigation{padding:22px 14px 0 15px}
#tab-leads .overview-reference .ov-nav-caption{padding:0 10px;margin-bottom:9px;font-size:12px;line-height:17px;color:var(--release-muted);white-space:nowrap}
#tab-leads .overview-reference .ov-nav-list{display:flex;flex-direction:column}
#tab-leads .overview-reference .ov-nav{width:100%;height:36px;margin:2px 0;padding:0 11px;gap:12px;justify-content:flex-start;border-radius:7px;text-align:left;font-size:16px;line-height:22px}
#tab-leads .overview-reference .ov-nav .ov-i{color:var(--release-muted)}
#tab-leads .overview-reference .ov-nav:hover{background:var(--release-soft);color:var(--text)}
#tab-leads .overview-reference .ov-nav.ov-active{background:var(--release-soft);color:var(--release-primary)}
#tab-leads .overview-reference .ov-nav.ov-active .ov-i{color:var(--release-primary)}
#tab-leads .overview-reference .ov-nav.ov-active:before{content:"";position:absolute;left:-15px;top:4px;width:3px;height:29px;border-radius:0 3px 3px 0;background:var(--lime)}
#tab-leads .overview-reference .ov-nav-divider{border:0;border-top:1px solid var(--line);margin:12px 0}
#tab-leads .overview-reference .ov-side-bottom{margin-top:auto;padding-top:28px}
#tab-leads .overview-reference .ov-settings{margin:0 15px;padding:5px 0 6px;border-bottom:1px solid var(--line)}
#tab-leads .overview-reference .ov-profile{width:100%;height:68px;justify-content:flex-start;gap:10px;padding:0 18px}
#tab-leads .overview-reference .ov-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--release-soft);font-size:17px}
#tab-leads .overview-reference main{margin-left:var(--sidew);min-height:100vh;padding:0 var(--gutter) 12px}
#tab-leads .overview-reference .ov-topbar{display:flex;align-items:center;justify-content:space-between;height:63px;border-bottom:1px solid var(--release-line);gap:16px}
#tab-leads .overview-reference .ov-crumb{display:flex;align-items:center;gap:9px;color:var(--muted);white-space:nowrap}
#tab-leads .overview-reference .ov-crumb .ov-slash{color:var(--release-muted)}
#tab-leads .overview-reference .ov-crumb .ov-current{color:var(--text)}
#tab-leads .overview-reference .ov-top-right{display:flex;align-items:center;gap:17px}
#tab-leads .overview-reference .ov-system-status{display:flex;align-items:center;gap:8px;color:var(--muted);white-space:nowrap}
#tab-leads .overview-reference .ov-dot{width:8px;height:8px;border-radius:50%;background:var(--release-soft)}
#tab-leads .overview-reference .ov-icon-button{width:27px;height:36px;border-radius:7px;color:var(--release-muted)}
#tab-leads .overview-reference .ov-icon-button:hover{background:var(--release-soft);color:var(--text)}
#tab-leads .overview-reference .ov-menu-toggle{display:none}
#tab-leads .overview-reference .ov-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:69px;margin-top:30px}
#tab-leads .overview-reference h1{font-size:34px;line-height:43px;font-weight:550;letter-spacing:-.6px}
#tab-leads .overview-reference .ov-subtitle{margin-top:1px;font-size:14px;line-height:20px;color:var(--muted)}
#tab-leads .overview-reference .ov-hero-actions{display:flex;gap:9px;align-items:center}
#tab-leads .overview-reference .ov-hero-actions .status-badge{
  display:flex;align-items:center;gap:8px;min-width:0;min-height:36px;margin:0;padding:0 11px;border:1px solid var(--release-line);border-radius:8px;
  background:var(--release-soft);color:#d8c68a;box-shadow:none;font:500 12px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  letter-spacing:0;text-transform:none;white-space:nowrap;
}
#tab-leads .overview-reference .ov-hero-actions .status-dot{width:8px;height:8px;flex:0 0 8px;}
#tab-leads .overview-reference .ov-hero-actions .status-dot.running,
#tab-leads .overview-reference .ov-hero-actions .status-dot.stopping{width:10px;height:10px;flex-basis:10px;}
#tab-leads .overview-reference .ov-btn{height:36px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:var(--release-card);font-size:14px;line-height:20px}
#tab-leads .overview-reference .ov-btn:hover{background:var(--release-soft);border-color:var(--release-line);color:var(--text)}
#tab-leads .overview-reference .ov-btn .ov-i{color:var(--release-muted)}
#tab-leads .overview-reference .ov-btn.ov-primary{height:36px;min-width:162px;padding:0 12px;gap:12px;border-color:var(--release-line);color:var(--release-on);background:var(--lime);font-weight:550;box-shadow:inset 0 1px 0 #ffffff1f}
#tab-leads .overview-reference .ov-btn.ov-primary:hover{background:var(--release-soft);color:var(--release-text)}
#tab-leads .overview-reference .ov-play{width:13px;height:13px;fill:currentColor}
#tab-leads .overview-reference .ov-refresh{width:37px;padding:0}
#tab-leads .overview-reference .ov-filters{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:22px}
#tab-leads .overview-reference .ov-filters-left,#tab-leads .overview-reference .ov-filters-right{display:flex;align-items:center;gap:16px}
#tab-leads .overview-reference .ov-filters-right{gap:8px}
#tab-leads .overview-reference .ov-segmented{display:flex;align-items:center;gap:2px;height:36px;padding:3px;border-radius:8px;background:var(--release-card)}
#tab-leads .overview-reference .ov-period{height:30px;padding:0 9px;border-radius:6px;color:var(--muted);font-size:16px}
#tab-leads .overview-reference .ov-period.ov-active{color:var(--text);background:var(--release-soft);box-shadow:0 1px 3px #00000026}
#tab-leads .overview-reference .ov-date{position:relative;height:36px;min-width:244px;border:1px solid var(--release-line);border-radius:8px;background:var(--release-soft)}
#tab-leads .overview-reference .ov-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;height:100%;padding:0 9px 0 11px;border:0;border-radius:inherit;background:transparent;color:inherit;cursor:pointer;font:inherit}
#tab-leads .overview-reference .ov-date-label{font-size:16px;line-height:20px}
#tab-leads .overview-reference .ov-date input{position:absolute;left:50%;bottom:0;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}
#tab-leads .overview-reference .ov-date-icon{width:20px;height:20px;color:var(--release-primary)}
#tab-leads .overview-reference .ov-tz{padding-left:10px;border-left:1px solid var(--release-line);color:var(--muted);font-size:13px;line-height:19px}
#tab-leads .overview-reference .ov-filter{justify-content:space-between;min-width:172px;gap:22px;font-size:16px}
#tab-leads .overview-reference .ov-filter.ov-offers{min-width:159px}
#tab-leads .overview-reference .ov-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:99px;margin-top:15px;padding:12px 0 13px;border:1px solid var(--line);border-radius:11px;background:var(--card)}
#tab-leads .overview-reference .ov-metric{min-width:0;padding:0 16px;border-left:1px solid var(--line)}
#tab-leads .overview-reference .ov-metric:first-child{border:0}
#tab-leads .overview-reference .ov-metric-label{color:var(--muted);font-size:14px;line-height:19px;white-space:nowrap}
#tab-leads .overview-reference .ov-metric-main{display:flex;align-items:center;flex-wrap:wrap;column-gap:7px;min-height:33px}
#tab-leads .overview-reference .ov-value{font-size:28px;font-weight:550;line-height:33px;letter-spacing:-.4px;white-space:nowrap}
#tab-leads .overview-reference .ov-delta{padding:1px 5px;border-radius:5px;color:var(--release-primary);background:var(--release-soft);font-size:12px;line-height:19px}
#tab-leads .overview-reference .ov-metric-note{margin-top:8px;color:var(--muted);font-size:13px;line-height:17px;white-space:nowrap}
#tab-leads .overview-reference .ov-work{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;margin-top:16px}
#tab-leads .overview-reference .ov-left{display:flex;flex-direction:column;gap:16px;min-width:0}
#tab-leads .overview-reference .ov-panel{border:1px solid var(--line);border-radius:11px;background:var(--card)}
#tab-leads .overview-reference .ov-offers-panel{min-width:0}
#tab-leads .overview-reference .ov-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:51px;padding:11px 16px 4px}
#tab-leads .overview-reference .ov-panel-head h2{flex-shrink:0}
#tab-leads .overview-reference .ov-table-tools{display:flex;align-items:center;gap:8px;flex:1;min-width:0}
#tab-leads .overview-reference .ov-search{position:relative;flex:1;min-width:0;color:var(--release-muted)}
#tab-leads .overview-reference .ov-search>.ov-i{position:absolute;top:9px;left:10px;width:18px;height:18px;pointer-events:none}
#tab-leads .overview-reference .ov-search input{display:block;width:100%;height:36px;min-width:0;padding:0 10px 0 36px;border:1px solid var(--release-line);border-radius:8px;background:transparent;color:var(--text);outline-offset:2px}
#tab-leads .overview-reference .ov-search input::placeholder{color:var(--release-muted);opacity:1}
#tab-leads .overview-reference .ov-columns{flex-shrink:0}
#tab-leads .overview-reference .ov-table-scroll{overflow-x:auto;scrollbar-width:thin}
#tab-leads .overview-reference table{width:100%;border-collapse:collapse;table-layout:fixed}
#tab-leads .overview-reference col.ov-c-offer{width:25%}
#tab-leads .overview-reference col.ov-c-status{width:15.5%}
#tab-leads .overview-reference col.ov-c-sent{width:17%}
#tab-leads .overview-reference col.ov-c-approve{width:12%}
#tab-leads .overview-reference col.ov-c-cr{width:9%}
#tab-leads .overview-reference col.ov-c-limit{width:21.5%}
#tab-leads .overview-reference th{height:34px;padding:0 16px;font-size:13px;font-weight:400;line-height:18px;text-align:left;color:var(--muted);white-space:nowrap}
#tab-leads .overview-reference th.ov-num,#tab-leads .overview-reference td.ov-num{text-align:right}
#tab-leads .overview-reference td{height:51px;padding:7px 16px;border-top:1px solid var(--line);font-size:14px;line-height:20px;white-space:nowrap}
#tab-leads .overview-reference tbody tr:hover{background:var(--release-soft)}
#tab-leads .overview-reference .ov-offer-name{display:flex;align-items:center;gap:8px}
#tab-leads .overview-reference .ov-monogram{display:grid;place-items:center;flex:0 0 33px;width:33px;height:32px;border:1px solid var(--release-line);border-radius:5px;color:var(--release-text);background:var(--release-soft)}
#tab-leads .overview-reference .ov-offer-title{font-weight:550}
#tab-leads .overview-reference .ov-badge{display:inline-block;padding:0 7px;border:1px solid var(--release-line);border-radius:99px;color:var(--release-text);font-size:12px;line-height:20px}
#tab-leads .overview-reference .ov-limit-numbers{display:flex;align-items:center;justify-content:space-between;gap:8px;line-height:18px}
#tab-leads .overview-reference .ov-limit-pct{color:var(--muted);font-size:12px}
#tab-leads .overview-reference .ov-progress{display:none!important}
#tab-leads .overview-reference .ov-progress:not([role="progressbar"]){display:none!important}
#tab-leads .overview-reference .ov-progress>span{display:block;width:6%;min-width:6px;height:100%;border-radius:inherit;background:var(--lime)}
#tab-leads .overview-reference .ov-panel-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;padding:8px 16px;border-top:1px solid var(--line)}
#tab-leads .overview-reference .ov-panel-foot p,#tab-leads .overview-reference .ov-text-action{font-size:13px;line-height:19px}
#tab-leads .overview-reference .ov-panel-foot p{color:var(--muted)}
#tab-leads .overview-reference .ov-text-action{justify-content:flex-start;gap:5px;min-height:36px;padding:6px 8px;border-radius:8px}
#tab-leads .overview-reference .ov-text-action .ov-i{width:13px;height:13px}
#tab-leads .overview-reference .ov-empty-row td{padding:16px;text-align:center;white-space:normal;color:var(--muted)}
#tab-leads .overview-reference .ov-economy{padding:13px 16px 10px}
#tab-leads .overview-reference .ov-money-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:8px}
#tab-leads .overview-reference .ov-money{padding:0 16px;border-left:1px solid var(--line)}
#tab-leads .overview-reference .ov-money:first-child{padding-left:0;border:0}
#tab-leads .overview-reference .ov-money-label{font-size:13px;line-height:18px;color:var(--muted)}
#tab-leads .overview-reference .ov-money-value{margin-top:1px;font-size:25px;line-height:28px}
#tab-leads .overview-reference .ov-money-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:11px;padding-top:10px;border-top:1px solid var(--line)}
#tab-leads .overview-reference .ov-money-empty{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px;line-height:19px}
#tab-leads .overview-reference .ov-money-empty .ov-i{width:14px;height:14px}
#tab-leads .overview-reference .ov-btn.ov-small{height:28px;padding:0 9px;border-radius:7px;font-size:13px}
#tab-leads .overview-reference .ov-attention{display:flex;flex-direction:column;min-width:0}
#tab-leads .overview-reference .ov-attention-head{height:70px;padding:12px 16px 10px;flex-shrink:0}
#tab-leads .overview-reference .ov-attention-head p{margin-top:3px;color:var(--muted);font-size:13px;line-height:19px}
#tab-leads .overview-reference .ov-issues{padding:0 16px}
#tab-leads .overview-reference .ov-issue{min-height:75px;padding:13px 0 12px;border-top:1px solid var(--line)}
#tab-leads .overview-reference .ov-issue-top{display:flex;align-items:center;gap:12px;min-height:23px}
#tab-leads .overview-reference .ov-issue-title{min-width:0;font-size:16px;font-weight:400;line-height:22px}
#tab-leads .overview-reference .ov-issue-count{margin-left:auto;white-space:nowrap;font-size:20px;font-weight:550;line-height:24px;letter-spacing:-.3px}
#tab-leads .overview-reference .ov-error .ov-issue-top>.ov-i,#tab-leads .overview-reference .ov-error .ov-issue-count{color:var(--red)}
#tab-leads .overview-reference .ov-warning .ov-issue-top>.ov-i,#tab-leads .overview-reference .ov-warning .ov-issue-count{color:var(--amber)}
#tab-leads .overview-reference .ov-issue-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;margin:3px 0 0 32px}
#tab-leads .overview-reference .ov-issue-description{color:var(--muted);font-size:13px;line-height:19px}
#tab-leads .overview-reference .ov-issue-bottom .ov-text-action{flex-shrink:0}
#tab-leads .overview-reference .ov-queue-note{display:flex;align-items:center;flex:1;min-height:48px;margin:0 16px;padding:10px 0 12px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:18px}
#tab-leads .overview-reference .ov-quick{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;min-height:61px;margin-top:16px;padding:12px 16px}
#tab-leads .overview-reference .ov-quick-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
#tab-leads .overview-reference .ov-quick-controls .ov-btn{height:34px}
#tab-leads .overview-reference .ov-logs{height:34px;padding-left:8px;gap:9px}
#tab-leads .overview-reference .ov-logs .ov-i{color:var(--release-muted)}
#tab-leads .overview-reference .ov-logs>.ov-i:last-child{transition:transform .15s ease-out}
#tab-leads .overview-reference .ov-logs.is-open>.ov-i:last-child{transform:rotate(90deg)}
#tab-leads .overview-reference .ov-page-note{margin-top:12px;color:var(--muted);text-align:right;font-size:13px;line-height:18px}
#tab-leads .overview-reference .ov-toast{position:fixed;left:calc(50% + 112px);bottom:24px;z-index:100;width:max-content;max-width:min(540px,calc(100vw - 32px));padding:14px 18px;border:1px solid var(--release-line);border-radius:10px;color:var(--text);background:var(--release-soft);font-size:14px;line-height:21px;box-shadow:0 8px 30px #0004;transform:translate(-50%,16px);opacity:0;pointer-events:none;transition:opacity .16s,transform .16s}
#tab-leads .overview-reference .ov-toast.ov-show{opacity:1;transform:translate(-50%,0)}
#tab-leads .overview-reference .ov-backdrop{display:none}
@media(min-width:1600px){#tab-leads .overview-reference{--sidew:240px;--gutter:40px}
#tab-leads .overview-reference .ov-hero{margin-top:34px}
#tab-leads .overview-reference .ov-metrics{padding-block:20px}
#tab-leads .overview-reference .ov-value{font-size:34px;line-height:43px}
#tab-leads .overview-reference .ov-work{grid-template-columns:minmax(0,1fr)}
#tab-leads .overview-reference .ov-table-tools{flex:0 1 420px}
#tab-leads .overview-reference .ov-issue{min-height:82px}
#tab-leads .overview-reference .ov-economy{flex:1;padding-top:18px}
#tab-leads .overview-reference .ov-money-foot{margin-top:16px}
}

/* Overview lower workspace: keep the accepted card language below the hero. */
body[data-current-tab="leads"] #tab-leads .ov-job-progress:empty {display:none;}
body[data-current-tab="leads"] #tab-leads .ov-job-progress .job-progress-panel {margin:0 0 16px;}
body[data-current-tab="leads"] #tab-leads .job-progress-panel {
  gap:16px;margin:16px 0;padding:16px 18px;border:1px solid var(--release-line);border-radius:11px;
  background:var(--release-card);box-shadow:none;color:var(--release-text);
}
body[data-current-tab="leads"] #tab-leads .job-progress-beacon {
  width:10px;height:10px;background:var(--release-soft);box-shadow:none;
}
body[data-current-tab="leads"] #tab-leads .job-progress-copy {gap:2px;min-width:170px;}
body[data-current-tab="leads"] #tab-leads .job-progress-copy strong {font-size:14px;font-weight:550;}
body[data-current-tab="leads"] #tab-leads :is(.job-progress-copy span,.job-progress-count,#job-progress-time) {color:var(--release-muted);font-size:12px;}
body[data-current-tab="leads"] #tab-leads .job-progress-track {height:7px;border:0;background:var(--release-soft);}
body[data-current-tab="leads"] #tab-leads #job-progress-fill {background:var(--release-soft);}
body[data-current-tab="leads"] #tab-leads #job-progress-time {padding-left:16px;border-left:1px solid var(--release-line);}
body[data-current-tab="leads"] #tab-leads #job-progress-stop {
  min-height:40px;padding:8px 13px;border:1px solid #7f4042;border-radius:8px;background:var(--release-soft);
  color:#eb8586;box-shadow:none;font:550 13px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
body[data-current-tab="leads"] #tab-leads .log-panel {
  min-height:0;margin:16px 0 24px;border:1px solid var(--release-line);border-radius:11px;background:var(--release-card);box-shadow:none;
}
body[data-current-tab="leads"] #tab-leads .log-header {
  min-height:52px;padding:8px 16px;gap:10px;border-bottom:1px solid var(--release-line);background:var(--release-card);
}
body[data-current-tab="leads"] #tab-leads .log-header .log-title {
  color:var(--release-text);font:500 16px/22px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  letter-spacing:-.15px;text-transform:none;
}
body[data-current-tab="leads"] #tab-leads .log-header .dot {width:7px;height:7px;background:var(--release-soft);box-shadow:none;}
body[data-current-tab="leads"] #tab-leads .log-header .dot.off {background:var(--release-soft);}
body[data-current-tab="leads"] #tab-leads .log-header .btn-sm {
  min-width:40px;min-height:36px;padding:7px 11px;border:1px solid var(--release-line);border-radius:8px;
  background:var(--release-soft);color:var(--release-muted);box-shadow:none;font:13px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
body[data-current-tab="leads"] #tab-leads .log-header .btn-sm:hover {border-color:var(--release-line);background:var(--release-soft);color:var(--release-text);}
body[data-current-tab="leads"] #tab-leads .log-body {
  height:176px;padding:10px 16px;background:var(--release-bg);color:var(--release-text);
  font:12px/1.55 "DM Mono",Consolas,monospace;
}
body[data-current-tab="leads"] #tab-leads .log-line {min-height:22px;padding:3px 0;border-color:var(--release-line);}
body[data-current-tab="leads"] #tab-leads .log-footer {
  min-height:34px;padding:6px 16px;border-top:1px solid var(--release-line);background:var(--release-card);color:var(--release-muted);
}
body[data-current-tab="leads"] #tab-leads .overview-leads-base > .section-title {
  margin:28px 0 14px!important;color:var(--release-text);font:500 18px/24px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  letter-spacing:-.2px;text-transform:none;
}
body[data-current-tab="leads"] #tab-leads .overview-leads-base > .filters {
  gap:8px;margin:0 0 12px;padding:12px;border:1px solid var(--release-line);border-radius:11px;background:var(--release-card);
}
body[data-current-tab="leads"] #tab-leads .overview-leads-base > .filters :is(input:not([type="file"]),select,.btn-action,.btn-sm) {
  min-height:40px;border:1px solid var(--release-line);border-radius:8px;background:var(--release-soft);color:var(--release-text);box-shadow:none;
  font:13px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
body[data-current-tab="leads"] #tab-leads #leads-table-wrap {
  border:1px solid var(--release-line);border-radius:11px;background:var(--release-card);box-shadow:none;
}
body[data-current-tab="leads"] #tab-leads #leads-table-wrap :is(table,th) {background:var(--release-card);}
body[data-current-tab="leads"] #tab-leads #leads-table-wrap th {color:var(--release-primary);border-color:var(--release-line);text-transform:none;letter-spacing:0;}
body[data-current-tab="leads"] #tab-leads #leads-table-wrap td {color:var(--release-text);border-color:var(--release-line);}
body[data-current-tab="leads"] #tab-leads #leads-table-wrap tbody tr:hover {background:var(--release-soft);}
body[data-current-tab="leads"] #tab-leads .mailing-overview {
  border:0;border-radius:11px;background:var(--release-card);box-shadow:none;color:var(--release-text);
}
body[data-current-tab="leads"] #tab-leads .mailing-overview :is(.mailing-overview__summary,.mailing-recent__head,.mailing-table-row) {border-color:var(--release-line);}
body[data-current-tab="leads"] #tab-leads .mailing-overview__summary {border-right:0;background:var(--release-card);}
body[data-current-tab="leads"] #tab-leads .mailing-recent {background:var(--release-card);}
body[data-current-tab="leads"] #tab-leads .mailing-metrics > div {border:1px solid var(--release-line);border-radius:8px;background:var(--release-soft);}
body[data-current-tab="leads"] #tab-leads .mailing-donut::before {background:var(--release-card);}
body[data-current-tab="leads"] #tab-leads .mailing-panel.is-open {margin-top:14px;}
body[data-current-tab="leads"] #tab-leads .overview-leads-base {margin-top:26px;}
body[data-current-tab="leads"] #tab-leads .overview-leads-base .manual-lead-form {border-color:var(--release-line);background:var(--release-card);background-image:none;box-shadow:none;}
body[data-current-tab="leads"] #tab-leads .overview-leads-base .manual-lead-grid input {border-color:var(--release-line);background:var(--release-soft);color:var(--release-text);}
body[data-current-tab="leads"] #tab-leads .overview-leads-base .pagination button {border-color:var(--release-line);background:var(--release-soft);color:var(--release-muted);box-shadow:none;}
body[data-current-tab="leads"] #tab-leads .overview-leads-base .pagination button:hover:not(:disabled) {border-color:var(--release-line);background:var(--release-soft);color:var(--release-text);}
body[data-theme="light"][data-current-tab="leads"] #tab-leads :is(.job-progress-panel,.log-panel,.log-header,.log-footer,#leads-table-wrap,#leads-table-wrap th),
body[data-theme="light"][data-current-tab="leads"] #tab-leads .overview-leads-base > .filters {background:var(--ui-card);border-color:var(--ui-border);color:var(--text);}
body[data-theme="light"][data-current-tab="leads"] #tab-leads .log-body {background:var(--bg2);color:var(--text);}
body[data-theme="light"][data-current-tab="leads"] #tab-leads .log-header .log-title,
body[data-theme="light"][data-current-tab="leads"] #tab-leads .overview-leads-base > .section-title {color:var(--text);}
body[data-theme="light"][data-current-tab="leads"] #tab-leads .log-header .btn-sm,
body[data-theme="light"][data-current-tab="leads"] #tab-leads .overview-leads-base > .filters :is(input:not([type="file"]),select,.btn-action,.btn-sm) {background:var(--bg2);border-color:var(--ui-border);color:var(--text);}
body[data-theme="light"][data-current-tab="leads"] #tab-leads .mailing-overview {background:var(--ui-card);border-color:var(--ui-border);color:var(--text);}
body[data-theme="light"][data-current-tab="leads"] #tab-leads .mailing-overview :is(.mailing-overview__summary,.mailing-recent__head,.mailing-table-row) {border-color:var(--ui-border);}
body[data-theme="light"][data-current-tab="leads"] #tab-leads .mailing-metrics > div {background:var(--bg2);border-color:var(--ui-border);}
@media(max-width:1190px) and (min-width:901px){#tab-leads .overview-reference{--sidew:200px;--gutter:24px}
#tab-leads .overview-reference .ov-brand{padding-inline:20px}
#tab-leads .overview-reference .ov-brand-name{font-size:18px}
#tab-leads .overview-reference .ov-nav-caption{font-size:10px}
#tab-leads .overview-reference .ov-work{grid-template-columns:minmax(0,1fr)}
#tab-leads .overview-reference .ov-table-tools{flex:0 1 350px}
#tab-leads .overview-reference .ov-issues{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
#tab-leads .overview-reference .ov-issue{padding:12px;border-left:1px solid var(--line)}
#tab-leads .overview-reference .ov-issue:first-child{padding-left:0;border-left:0}
#tab-leads .overview-reference .ov-issue:last-child{padding-right:0}
#tab-leads .overview-reference .ov-issue-top{gap:7px;flex-wrap:wrap}
#tab-leads .overview-reference .ov-issue-title{font-size:14px}
#tab-leads .overview-reference .ov-issue-bottom{display:block;margin-left:27px}
#tab-leads .overview-reference .ov-issue-bottom .ov-text-action{margin-top:8px}
#tab-leads .overview-reference .ov-filters-left{gap:8px}
#tab-leads .overview-reference .ov-filter{min-width:140px;font-size:14px}
#tab-leads .overview-reference .ov-filter.ov-offers{min-width:125px}
#tab-leads .overview-reference .ov-date{min-width:0;gap:8px}
#tab-leads .overview-reference .ov-date-label,#tab-leads .overview-reference .ov-period{font-size:14px}
#tab-leads .overview-reference .ov-metric{padding-inline:12px}
#tab-leads .overview-reference .ov-metric-note{font-size:12px}
}
@media(max-width:900px){#tab-leads .overview-reference{--gutter:24px}
#tab-leads .overview-reference .ov-side{width:225px;transform:translateX(-100%);transition:transform .18s}
#tab-leads .overview-reference body.ov-menu-open{overflow:hidden}
#tab-leads .overview-reference body.ov-menu-open .ov-side{transform:translateX(0)}
#tab-leads .overview-reference .ov-backdrop{position:fixed;inset:0;z-index:25;background:#0009}
#tab-leads .overview-reference body.ov-menu-open .ov-backdrop{display:block}
#tab-leads .overview-reference main{margin-left:0}
#tab-leads .overview-reference .ov-topbar{height:60px}
#tab-leads .overview-reference .ov-menu-toggle{display:inline-flex;width:28px;margin-right:2px}
#tab-leads .overview-reference .ov-crumb{gap:8px}
#tab-leads .overview-reference .ov-crumb .ov-workspace,#tab-leads .overview-reference .ov-crumb .ov-slash{display:none}
#tab-leads .overview-reference .ov-top-right{gap:10px}
#tab-leads .overview-reference .ov-hero{margin-top:22px}
#tab-leads .overview-reference .ov-filters{margin-top:20px}
#tab-leads .overview-reference .ov-metrics{margin-top:16px}
#tab-leads .overview-reference .ov-work{grid-template-columns:minmax(0,1fr)}
#tab-leads .overview-reference .ov-table-tools{flex:0 1 350px}
#tab-leads .overview-reference .ov-issue-bottom{gap:16px}
#tab-leads .overview-reference .ov-issue{min-height:78px}
#tab-leads .overview-reference .ov-quick{align-items:flex-start}
#tab-leads .overview-reference .ov-toast{left:50%}
}
@media(max-width:600px){#tab-leads .overview-reference{--gutter:20px}
#tab-leads .overview-reference .ov-top-right{gap:8px}
#tab-leads .overview-reference .ov-system-status{font-size:12px;gap:6px}
#tab-leads .overview-reference .ov-dot{width:6px;height:6px}
#tab-leads .overview-reference .ov-top-right .ov-icon-button{width:24px}
#tab-leads .overview-reference .ov-global-search{display:none}
#tab-leads .overview-reference .ov-hero{flex-wrap:wrap;gap:16px}
#tab-leads .overview-reference h1{font-size:30px;line-height:39px}
#tab-leads .overview-reference .ov-hero-actions{width:100%}
#tab-leads .overview-reference .ov-hero-actions{flex-wrap:wrap}
#tab-leads .overview-reference .ov-hero-actions .status-badge{order:-1;width:100%;justify-content:flex-start}
#tab-leads .overview-reference .ov-hero-actions .ov-primary{flex:1}
#tab-leads .overview-reference .ov-hero-actions .ov-btn{height:42px}
#tab-leads .overview-reference .ov-hero-actions .ov-refresh{width:42px}
#tab-leads .overview-reference .ov-filters{gap:12px}
#tab-leads .overview-reference .ov-filters-left{width:100%;flex-wrap:wrap;gap:10px}
#tab-leads .overview-reference .ov-segmented{height:40px}
#tab-leads .overview-reference .ov-period{height:34px;padding:0 12px;font-size:14px}
#tab-leads .overview-reference .ov-date{height:40px;flex:1;gap:10px}
#tab-leads .overview-reference .ov-date-label{font-size:14px}
#tab-leads .overview-reference .ov-filters-right{width:100%}
#tab-leads .overview-reference .ov-filter,#tab-leads .overview-reference .ov-filter.ov-offers{flex:1;min-width:0;height:40px;gap:10px;font-size:14px}
#tab-leads .overview-reference .ov-metrics{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}
#tab-leads .overview-reference .ov-metric{min-height:103px;padding:14px 16px}
#tab-leads .overview-reference .ov-metric:nth-child(odd){border-left:0}
#tab-leads .overview-reference .ov-metric:nth-child(n+3){border-top:1px solid var(--line)}
#tab-leads .overview-reference .ov-metric:last-child{grid-column:1/-1;min-height:88px}
#tab-leads .overview-reference .ov-metric-note{font-size:12px}
#tab-leads .overview-reference .ov-panel-head{flex-wrap:wrap;gap:12px;padding:16px}
#tab-leads .overview-reference .ov-table-tools{flex:1 0 100%}
#tab-leads .overview-reference .ov-search input,#tab-leads .overview-reference .ov-columns{height:40px}
#tab-leads .overview-reference .ov-search>.ov-i{top:11px}
#tab-leads .overview-reference .ov-table-scroll table{min-width:610px}
#tab-leads .overview-reference .ov-table-scroll{outline-offset:-3px}
#tab-leads .overview-reference .ov-panel-foot{align-items:flex-start;gap:10px}
#tab-leads .overview-reference .ov-panel-foot p{max-width:160px}
#tab-leads .overview-reference .ov-panel-foot .ov-text-action{flex-shrink:0}
#tab-leads .overview-reference .ov-economy{padding:16px}
#tab-leads .overview-reference .ov-money-grid{margin-top:14px}
#tab-leads .overview-reference .ov-money{padding-inline:12px}
#tab-leads .overview-reference .ov-money-foot{flex-wrap:wrap;gap:10px;margin-top:12px}
#tab-leads .overview-reference .ov-money-foot .ov-btn{height:34px}
#tab-leads .overview-reference .ov-attention-head{height:75px;padding-top:16px}
#tab-leads .overview-reference .ov-issue{padding-block:14px}
#tab-leads .overview-reference .ov-issue-top{gap:10px}
#tab-leads .overview-reference .ov-issue-title{font-size:15px}
#tab-leads .overview-reference .ov-issue-bottom{flex-wrap:wrap;gap:5px 12px;margin-left:30px}
#tab-leads .overview-reference .ov-issue-bottom .ov-text-action{margin-left:auto}
#tab-leads .overview-reference .ov-queue-note{padding-block:14px}
#tab-leads .overview-reference .ov-quick{gap:14px;padding:16px}
#tab-leads .overview-reference .ov-quick-controls{width:100%;gap:10px}
#tab-leads .overview-reference .ov-quick-controls .ov-btn{flex:1;height:40px;padding:0 8px;gap:6px}
#tab-leads .overview-reference .ov-logs{width:100%;min-height:40px;justify-content:flex-start;padding:5px 0 0}
#tab-leads .overview-reference .ov-logs>.ov-i:last-child{margin-left:auto}
#tab-leads .overview-reference .ov-page-note{padding-bottom:12px;text-align:left;font-size:12px}
}
@media(prefers-reduced-motion:reduce){#tab-leads .overview-reference *,#tab-leads .overview-reference *:before,#tab-leads .overview-reference *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
@media print{#tab-leads .overview-reference .ov-side,#tab-leads .overview-reference .ov-topbar,#tab-leads .overview-reference .ov-hero-actions,#tab-leads .overview-reference .ov-quick,#tab-leads .overview-reference .ov-toast{display:none}
#tab-leads .overview-reference main{margin-left:0;padding:20px}
#tab-leads .overview-reference{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}
#tab-leads .overview-reference .ov-metric-label{display:flex;align-items:center;justify-content:space-between;gap:8px}
#tab-leads .overview-reference .ov-metric-label .ov-metric-icon{width:26px;height:26px;flex:0 0 26px;stroke-width:1.8;color:var(--release-primary)}

/* Shared metric icon treatment: consistent optical weight and green accent. */
#tab-leads .overview-reference .ov-metric-label .ov-metric-icon {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  fill: none;
  stroke: var(--release-primary);
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Integration overrides are restricted to Overview; reference values stay above. */
body[data-current-tab="leads"] { background:var(--release-card); }
#tab-leads .overview-reference { --raw-canvas:var(--release-bg);--raw-panel:var(--release-card);--raw-border:var(--release-line);--raw-text:var(--release-text);--raw-muted:var(--release-muted);--raw-accent:var(--release-primary);--bg:var(--raw-canvas);--card:var(--raw-panel);--line:var(--raw-border);--text:var(--raw-text);--muted:var(--raw-muted);--lime:var(--raw-accent); font:14px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; color:var(--text); font-variant-numeric:tabular-nums; }
#tab-leads .overview-reference h1,#tab-leads .overview-reference h2,#tab-leads .overview-reference h3 { color:var(--text); text-transform:none; }
#tab-leads .overview-reference .ov-hero { margin-top:30px; }
#tab-leads .overview-reference .ov-value { color:var(--text); }
#tab-leads .overview-reference #kpi-offers {display:block;padding:0;margin:0;min-height:0;}
#tab-leads .overview-reference #attention-items {padding:0 16px;}
#tab-leads .overview-reference .ov-load-status:empty {display:none;}
#tab-leads .overview-reference .ov-load-status {position:relative;}
#tab-leads .overview-reference #funnel-period-status,#tab-leads .overview-reference #overview-update-status {position:absolute;right:0;top:2px;font-size:11px;line-height:12px;color:var(--muted);margin:0;}
#tab-leads .overview-reference .ov-period[aria-pressed="true"] {color:var(--text);background:var(--release-soft);box-shadow:0 1px 3px #00000026;}
#tab-leads .overview-reference .funnel-trend {padding:1px 5px;border-radius:5px;color:var(--release-primary);background:var(--release-soft);font-size:12px;line-height:19px;font-weight:400;}
#tab-leads .overview-reference .funnel-trend.is-negative {color:var(--red);background:var(--release-soft);}
#tab-leads .overview-reference .ov-metric-main:has(.funnel-trend[hidden]) + .ov-metric-note {visibility:hidden;}
#tab-leads .overview-reference .ov-columns {position:relative;}
#tab-leads .overview-reference summary {list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;}
#tab-leads .overview-reference summary::-webkit-details-marker {display:none;}
#tab-leads .overview-reference .ov-column-options {position:absolute;right:0;top:40px;z-index:10;min-width:160px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--card);}
#tab-leads .overview-reference .ov-column-options label {display:flex;gap:8px;padding:4px 0;font-size:13px;text-transform:none;letter-spacing:0;}
#tab-leads .overview-reference .overview-export {position:relative;}
#tab-leads .overview-reference .overview-export-options {background:var(--card);border-color:var(--line);}
#tab-leads .overview-reference .ov-offer-title {overflow:hidden;text-overflow:ellipsis;}
#tab-leads .overview-reference .ov-table-scroll {width:100%;}
#tab-leads .overview-reference table {margin:0;background:var(--card);border:0;}
#tab-leads .overview-reference thead {background:var(--card);}
#tab-leads .overview-reference th,#tab-leads .overview-reference td {text-transform:none;letter-spacing:normal;background:none;}
#tab-leads .overview-reference .ov-monogram {font-size:14px;}
#tab-leads .overview-reference .ov-progress > span {min-width:0;}
#tab-leads .overview-reference .ov-issue .overview-icon {width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
#tab-leads .overview-reference .ov-error .overview-icon {color:var(--red);}
#tab-leads .overview-reference .ov-warning .overview-icon {color:var(--amber);}
#tab-leads > [hidden] {display:none!important;}
@media(min-width:901px){body[data-current-tab="leads"] #app > header .mobile-menu-toggle{display:none}}
@media(max-width:900px){body.mobile-sidebar-open[data-current-tab="leads"] #app > header .header-account{display:flex}}
.overview-reference-nav,.overview-reference-crumb,.overview-reference-settings,.overview-reference-global-search {display:none;}
body[data-current-tab="leads"] #app > header .theme-toggle {display:none;}
body[data-current-tab="leads"] #app > header .header-account {position:fixed;left:0;bottom:0;top:auto;width:224px;height:68px;padding:0 18px;z-index:31;display:flex;align-items:center;background:var(--release-card);}
body[data-current-tab="leads"] #app > header .header-user {border:0;background:none;box-shadow:none;padding:0;width:100%;height:44px;gap:10px;justify-content:flex-start;}
body[data-current-tab="leads"] #app > header .header-user-name,body[data-current-tab="leads"] #header-user-name {font:14px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
body[data-current-tab="leads"] #app > header .header-user__avatar {width:36px;height:36px;background:var(--release-soft);color:var(--release-text);}
body[data-current-tab="leads"] #app > header .header-account-menu {top:auto;bottom:60px;left:12px;right:auto;}
body[data-current-tab="leads"] #app .sidebar .sidebar-group-bottom {display:none;}
body[data-current-tab="leads"] .overview-reference-settings {display:flex;align-items:center;gap:12px;position:absolute;left:15px;right:15px;bottom:68px;height:47px;padding:0 11px;border:0;border-bottom:1px solid var(--release-line);background:none;color:var(--release-text);font:16px/22px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;cursor:pointer;}
body[data-current-tab="leads"] .overview-reference-settings .ov-i,body[data-current-tab="leads"] .overview-reference-global-search .ov-i {width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;}
body[data-current-tab="leads"] .overview-reference-global-search {display:inline-flex;align-items:center;justify-content:center;width:27px;height:36px;padding:0;background:none;border:0;color:var(--release-muted);cursor:pointer;}
@media(max-width:900px){body[data-current-tab="leads"] #app > header .header-account{display:none}body[data-current-tab="leads"] #app > header .mobile-menu-toggle{order:-1}body[data-current-tab="leads"] #app .sidebar{inset:0 auto 0 0;height:100dvh}}
body[data-current-tab="leads"] #app {background:var(--release-card);}
body[data-current-tab="leads"] #app > .app-shell {margin-left:225px;}
body[data-current-tab="leads"] #app main {padding:0 37px 24px;background:var(--release-card);scrollbar-width:none;}
body[data-current-tab="leads"] #app main::-webkit-scrollbar {display:none;}
body[data-current-tab="leads"] #app > header {margin-left:262px;margin-right:37px;padding:0;height:63px;min-height:63px;border:0;border-bottom:1px solid var(--release-line);background:var(--release-card);box-shadow:none;}
body[data-current-tab="leads"] #app .sidebar {width:225px;padding:0;gap:0;background:var(--release-card);border-right:1px solid var(--release-line);box-shadow:none;transform:none;}
body[data-current-tab="leads"] #app .sidebar-brand {height:76px;min-height:76px;padding:0 25px;gap:12px;}
body[data-current-tab="leads"] #app .sidebar-brand__name {font:650 20px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.5px;color:var(--release-text);}
body[data-current-tab="leads"] #app .sidebar-brand__name span {color:var(--release-muted);}
body[data-current-tab="leads"] #app .sidebar-brand__icon {width:25px;height:29px;border-radius:0;box-shadow:none;}
body[data-current-tab="leads"] #app .sidebar-nav {display:none;}
body[data-current-tab="leads"] .overview-reference-nav {display:flex;flex-direction:column;padding:22px 14px 0 15px;}
body[data-current-tab="leads"] .overview-reference-nav p {margin:0 0 9px;padding:0 10px;font:12px/17px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--release-muted);}
body[data-current-tab="leads"] .overview-reference-nav button {position:relative;display:flex;align-items:center;gap:12px;height:36px;margin:2px 0;padding:0 11px;border:0;border-radius:7px;background:none;color:var(--release-text);font:16px/22px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;text-align:left;cursor:pointer;}
body[data-current-tab="leads"] .overview-reference-nav button.active {background:var(--release-soft);color:var(--release-primary);}
body[data-current-tab="leads"] .overview-reference-nav button.active:before {content:"";position:absolute;left:-15px;top:4px;width:3px;height:29px;border-radius:0 3px 3px 0;background:var(--release-soft);}
body[data-current-tab="leads"] .overview-reference-nav .ov-i {width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;color:var(--release-muted);}
body[data-current-tab="leads"] .overview-reference-nav button:hover {background:var(--release-soft);}
body[data-current-tab="leads"] .overview-reference-crumb {display:flex;gap:9px;margin-right:auto;font:14px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--release-muted);}
body[data-current-tab="leads"] .overview-reference-crumb span:last-child {color:var(--release-text);}

/* TrafficHub Large Icons reference: exact measured production palette. */
#tab-leads .overview-reference {
  --raw-canvas:var(--release-bg);
  --raw-panel:var(--release-card);
  --raw-border:var(--release-line);
  --raw-text:var(--release-text);
  --raw-muted:var(--release-muted);
  --raw-accent:var(--release-primary);
  --bg:var(--raw-canvas);
  --side:var(--release-side);
  --card:var(--raw-panel);
  --line:var(--raw-border);
  --text:var(--raw-text);
  --muted:var(--raw-muted);
  --lime:var(--raw-accent);
  --red:#f14e58;
  --amber:#e4a51f;
}
body[data-current-tab="leads"],body[data-current-tab="leads"] #app,body[data-current-tab="leads"] #app > .app-shell,body[data-current-tab="leads"] #app main {background:var(--release-bg);}
body[data-current-tab="leads"] #app .sidebar {background:var(--release-side);border-color:var(--release-line);}
#tab-leads .overview-reference .ov-btn,#tab-leads .overview-reference .ov-segmented {background:var(--release-soft);}
#tab-leads .overview-reference .ov-btn:hover {background:var(--release-card);border-color:var(--release-line);}
#tab-leads .overview-reference .ov-period.ov-active,#tab-leads .overview-reference .ov-period[aria-pressed="true"] {background:var(--release-soft);}
#tab-leads .overview-reference .ov-date {background:var(--release-card);border-color:var(--release-line);}
#tab-leads .overview-reference .ov-tz {border-color:var(--release-line);}
#tab-leads .overview-reference .ov-delta,#tab-leads .overview-reference .funnel-trend {color:var(--release-primary);background:var(--release-soft);}
#tab-leads .overview-reference tbody tr:hover {background:transparent;}
#tab-leads .overview-reference .ov-date-icon {color:var(--release-primary);}
#tab-leads > :not(.overview-reference) {display:none!important;}
body[data-current-tab="leads"] #app > header {background:var(--release-bg);border-bottom-color:var(--release-line);}
body[data-current-tab="leads"] #app > header .header-account {background:var(--release-side);}
body[data-current-tab="leads"] #app > header .header-user__avatar {background:var(--release-soft);color:var(--release-text);}
body[data-current-tab="leads"] #app .sidebar-brand__name {color:var(--release-text);}
body[data-current-tab="leads"] #app .sidebar-brand__name span {color:var(--release-muted);}
body[data-current-tab="leads"] .overview-reference-nav p {color:var(--release-primary);}
body[data-current-tab="leads"] .overview-reference-nav button {color:var(--release-text);}
body[data-current-tab="leads"] .overview-reference-nav button.active {background:var(--release-card);color:var(--release-primary);}
body[data-current-tab="leads"] .overview-reference-nav button.active:before {background:var(--release-soft);}
body[data-current-tab="leads"] .overview-reference-nav .ov-i {color:var(--release-primary);}
body[data-current-tab="leads"] .overview-reference-nav button:hover {background:var(--release-soft);}
body[data-current-tab="leads"] .overview-reference-nav hr {width:100%;margin:12px 0;border:0;border-top:1px solid var(--release-line);}
body[data-current-tab="leads"] .overview-reference-settings {display:flex;color:var(--release-text);border-bottom-color:var(--release-line);}
body[data-current-tab="leads"] .overview-reference-crumb {color:var(--release-primary);}
body[data-current-tab="leads"] .overview-reference-crumb span:last-child {color:var(--release-text);}
body[data-current-tab="leads"] #app .sidebar > .sidebar-nav {display:none!important;}
body[data-current-tab="leads"] #app .sidebar > .overview-reference-nav {display:flex!important;}
body:not([data-current-tab="leads"]) #app .sidebar > .overview-reference-nav,
body:not([data-current-tab="leads"]) #app .sidebar > .overview-reference-settings {display:none!important;}

/* One persistent product sidebar on every route. Overview never replaces it. */
body[data-current-tab] #app .sidebar > .overview-reference-nav,
body[data-current-tab] #app .sidebar > .overview-reference-settings {display:none!important;}
body[data-current-tab] #app .sidebar > .sidebar-nav {display:flex!important;}
body[data-current-tab] #app .sidebar {padding:0 15px 12px;background:var(--release-card);border-right-color:var(--release-line);}
body[data-current-tab] #app .sidebar .sidebar-brand {padding:0 10px;}
body[data-current-tab] #app .sidebar .sidebar-brand__name {color:var(--release-text);}
body[data-current-tab] #app .sidebar .sidebar-brand__name span {color:var(--release-muted);}
body[data-current-tab="leads"] #app > header .status-badge {margin-right:0;background:none;border:0;}
@media(min-width:1600px){body[data-current-tab="leads"] #app > .app-shell{margin-left:240px}body[data-current-tab="leads"] #app .sidebar{width:240px}body[data-current-tab="leads"] #app main{padding-inline:40px}body[data-current-tab="leads"] #app > header{margin-left:280px;margin-right:40px}}
@media(max-width:1190px) and (min-width:901px){body[data-current-tab="leads"] #app > .app-shell{margin-left:200px}body[data-current-tab="leads"] #app .sidebar{width:200px}body[data-current-tab="leads"] #app main{padding-inline:24px}body[data-current-tab="leads"] #app > header{margin-left:224px;margin-right:24px}body[data-current-tab="leads"] #app .sidebar-brand{padding-inline:20px}body[data-current-tab="leads"] #app .sidebar-brand__name{font-size:18px}}
@media(max-width:900px){body[data-current-tab="leads"] #app > .app-shell{margin-left:0}body[data-current-tab="leads"] #app main{padding-inline:24px}body[data-current-tab="leads"] #app > header{margin-left:24px;margin-right:24px;height:60px;min-height:60px}body[data-current-tab="leads"] #app .sidebar{width:225px;transform:translateX(-100%)}body[data-current-tab="leads"] #app .sidebar.open{transform:translateX(0)}body[data-current-tab="leads"] .overview-reference-crumb span:not(:last-child){display:none}body[data-current-tab="leads"] #app > header .mobile-menu-toggle{display:inline-flex}#tab-leads .overview-reference .ov-hero{margin-top:22px}}
@media(max-width:600px){body[data-current-tab="leads"] #app main{padding-inline:20px}body[data-current-tab="leads"] #app > header{margin-inline:20px}#tab-leads .overview-reference button,#tab-leads .overview-reference summary{min-width:0!important}}

/* Overview theme repair: expose the shared control and let this reference skin
   participate in the product theme instead of forcing dark colors. */
body[data-current-tab="leads"] #app > header .theme-toggle {
  display:inline-grid;
  place-items:center;
  flex:0 0 40px;
  width:40px;
  height:40px;
  min-width:40px;
  padding:0;
  border:1px solid var(--line);
  border-radius:9px;
  background:var(--card);
  color:var(--muted);
  transition-property:background-color,border-color,color,scale;
  transition-duration:140ms;
}
body[data-current-tab="leads"] #app > header .theme-toggle:hover { color:var(--text); border-color:color-mix(in srgb,var(--line) 72%,var(--text)); }
body[data-current-tab="leads"] #app > header .theme-toggle:active { scale:.96; }
body[data-current-tab="leads"] #app > header .theme-toggle:focus-visible { outline:2px solid var(--lime); outline-offset:3px; }
body[data-current-tab="leads"] #app > header .theme-toggle .theme-icon { width:19px; height:19px; }
body[data-theme][data-current-tab] #app > header .header-controls .theme-toggle,
body[data-theme][data-current-tab] #app > header .header-controls .theme-toggle:hover,
body[data-theme][data-current-tab] #app > header .header-controls .theme-toggle:active {
  background:transparent;
  border-color:transparent;
  box-shadow:none;
  transition-property:color,scale;
}

body[data-theme="light"][data-current-tab="leads"] {
  --bg:var(--release-bg);
  --bg2:var(--release-bg);
  --bg3:var(--release-bg);
  --text:var(--release-text);
  --text2:var(--release-muted);
  --text3:var(--release-muted);
  --border:var(--release-line);
  --border-hi:var(--release-line);
  --surface-hover:var(--release-soft);
  --green:var(--release-primary);
  --green-dim:var(--release-soft);
  background:var(--release-card);
}
body[data-theme="light"][data-current-tab="leads"] #app,
body[data-theme="light"][data-current-tab="leads"] #app > .app-shell,
body[data-theme="light"][data-current-tab="leads"] #app main { background:var(--release-card); }
body[data-theme="light"] #tab-leads .overview-reference {
  --raw-canvas:var(--release-bg);
  --raw-panel:var(--release-card);
  --raw-border:var(--release-line);
  --raw-text:var(--release-text);
  --raw-muted:var(--release-muted);
  --raw-accent:var(--release-primary);
  --bg:var(--raw-canvas);
  --side:var(--release-side);
  --card:var(--raw-panel);
  --line:var(--raw-border);
  --text:var(--raw-text);
  --muted:var(--raw-muted);
  --lime:var(--raw-accent);
  --red:#c73542;
  --amber:#a96a00;
  color:var(--text);
}
body[data-theme="light"][data-current-tab="leads"] #app > header { background:var(--release-card); border-bottom-color:var(--release-line); }
body[data-theme="light"][data-current-tab="leads"] #app .sidebar { background:var(--release-soft); border-right-color:var(--release-line); }
body[data-theme="light"][data-current-tab="leads"] #app > header .header-account { background:var(--release-soft); }
body[data-theme="light"][data-current-tab="leads"] #app > header .header-user__avatar { background:var(--release-soft); color:var(--release-text); }
body[data-theme="light"][data-current-tab="leads"] #app .sidebar .sidebar-brand__name,
body[data-theme="light"][data-current-tab="leads"] #app .sidebar .sidebar-brand__name span { color:var(--release-text); }
body[data-theme="light"][data-current-tab="leads"] #app .sidebar .sidebar-nav button { color:var(--release-muted); }
body[data-theme="light"][data-current-tab="leads"] #app .sidebar .sidebar-nav button:hover { background:var(--release-soft); color:var(--release-text); }
body[data-theme="light"][data-current-tab="leads"] #app .sidebar .sidebar-nav button.active { background:var(--release-soft); color:var(--release-primary); box-shadow:none; }
body[data-theme="light"][data-current-tab="leads"] .overview-reference-crumb { color:var(--release-muted); }
body[data-theme="light"][data-current-tab="leads"] .overview-reference-crumb span:last-child { color:var(--release-text); }
body[data-theme="light"] #tab-leads .overview-reference :is(.ov-panel,.ov-metrics,.ov-attention,.ov-quick) { background:var(--release-card); border-color:var(--release-line); box-shadow:none; }
body[data-theme="light"] #tab-leads .overview-reference :is(.ov-btn,.ov-segmented,.ov-date,.ov-columns,.overview-export-options) { background:var(--release-card); border-color:var(--release-line); color:var(--release-text); }
body[data-theme="light"] #tab-leads .overview-reference .ov-btn:hover { background:var(--release-card); border-color:var(--release-line); color:var(--release-text); }
body[data-theme="light"] #tab-leads .overview-reference .ov-period.ov-active,
body[data-theme="light"] #tab-leads .overview-reference .ov-period[aria-pressed="true"] { background:var(--release-card); color:var(--release-text); box-shadow:0 1px 3px rgba(25,42,23,.12); }
body[data-theme="light"] #tab-leads .overview-reference :is(.ov-search input,table,thead) { background:var(--release-card); color:var(--release-text); }
body[data-theme="light"] #tab-leads .overview-reference tbody tr:hover { background:var(--release-card); }
body[data-theme="light"] #tab-leads .overview-reference .ov-monogram { background:var(--release-soft); border-color:var(--release-line); color:var(--release-text); }
body[data-theme="light"] #tab-leads .overview-reference .ov-badge { color:var(--release-text); border-color:var(--release-line); }
body[data-theme="light"] #tab-leads .overview-reference :is(.ov-delta,.funnel-trend) { color:var(--release-primary); background:var(--release-soft); }
body[data-theme="light"] #tab-leads .overview-reference .funnel-trend.is-negative { color:#b72836; background:var(--release-card); }
body[data-theme="light"] #tab-leads .overview-reference .ov-icon-button:hover { background:var(--release-soft); color:var(--release-text); }
body[data-theme="light"] #tab-leads .overview-reference .ov-quick-controls .ov-btn { background:var(--release-card); }
body[data-theme="light"][data-current-tab="leads"] .overview-reference-settings { color:var(--release-text); border-bottom-color:var(--release-line); }

@media(prefers-reduced-motion:reduce) {
  body[data-current-tab="leads"] #app > header .theme-toggle { transition:none; }
  body[data-current-tab="leads"] #app > header .theme-toggle:active { scale:1; }
}

/* The progress panel is the visible job status; keep legacy badge data for JS. */
body[data-theme] #app #status-badge { display:none !important; }
body[data-theme] #app #job-progress-panel {
  background:var(--card,var(--ui-card));
  border-color:var(--line,var(--border));
  color:var(--text);
}
body[data-theme] #app #job-progress-panel .job-progress-beacon {
  background:var(--muted,var(--text2));
  box-shadow:0 0 0 5px color-mix(in srgb,var(--muted,var(--text2)) 12%,transparent);
}
body[data-theme] #app #job-progress-panel :is(.job-progress-copy span,.job-progress-count,#job-progress-time) {
  color:var(--muted,var(--text2));
}
body[data-theme] #app #job-progress-panel .job-progress-track {
  background:color-mix(in srgb,var(--card,var(--ui-card)) 82%,var(--text));
}
body[data-theme] #app #job-progress-fill { background:var(--muted,var(--text2)); }
body[data-theme] #app #job-progress-time { border-color:var(--line,var(--border)); }
body[data-theme] #app #job-progress-panel[data-state="error"] .job-progress-beacon {
  background:var(--red);
  box-shadow:0 0 0 5px color-mix(in srgb,var(--red) 12%,transparent);
}

/* Accessible text actions use real boxes instead of overlapping pseudo targets. */
@media (pointer:coarse) {
  #tab-leads .overview-reference :is(button,summary) {min-height:44px;}
  #tab-leads .overview-reference .ov-text-action {min-height:44px;padding-block:10px;}
}

#tab-leads .overview-reference .ov-load-status{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;min-height:0;}
#tab-leads .overview-reference .ov-load-status [data-move]{position:static;}
#tab-leads .overview-reference .ov-load-status [data-move]>span{position:static!important;}

/* Overview lead database: align fields and separate creation from filtering. */
body[data-current-tab="leads"] #tab-leads .leads-base-heading {
  display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;
}
body[data-current-tab="leads"] #tab-leads .leads-base-heading .section-title {
  flex:1;min-width:0;width:auto!important;margin:0!important;padding:0!important;border:0!important;color:var(--text);font:500 18px/24px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  letter-spacing:-.2px;text-transform:none;
}
body[data-current-tab="leads"] #tab-leads #manual-lead-toggle {
  flex:0 0 auto;width:auto!important;min-height:40px;padding:8px 12px;margin:0;white-space:nowrap;
  border:1px solid var(--border);border-radius:8px;background:var(--bg2);color:var(--text);box-shadow:none;
}
body[data-current-tab="leads"] #tab-leads .overview-leads-base > .filters {
  display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr) minmax(0,1.15fr) minmax(140px,.85fr) minmax(140px,.85fr) auto;
  align-items:end;gap:12px;padding:16px;margin-bottom:12px;
}
body[data-current-tab="leads"] #tab-leads .leads-filter-field {
  display:flex;flex-direction:column;gap:8px;min-width:0;margin:0;color:var(--text2);font-size:12px;line-height:16px;
}
body[data-current-tab="leads"] #tab-leads .overview-leads-base .leads-filter-field :is(input,select) {
  box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:40px;padding:8px 10px;margin:0;
}
body[data-current-tab="leads"] #tab-leads .overview-leads-base > .filters > .btn-action {
  height:40px;padding:8px 16px;margin:0;white-space:nowrap;
}
body[data-current-tab="leads"] #tab-leads .overview-leads-base :is(input,select,button):focus-visible {
  outline:2px solid var(--text2);outline-offset:3px;box-shadow:none;
}
body[data-current-tab="leads"] #tab-leads #leads-import-result:empty {display:none;}
body[data-current-tab="leads"] #tab-leads #leads-meta {margin:12px 0;color:var(--text2);}
@media(max-width:1200px) {
  body[data-current-tab="leads"] #tab-leads .overview-leads-base > .filters {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px) {
  body[data-current-tab="leads"] #tab-leads .overview-leads-base > .filters {grid-template-columns:repeat(2,minmax(0,1fr));}
  body[data-current-tab="leads"] #tab-leads .leads-filter-field:first-child {grid-column:1/-1;}
  body[data-current-tab="leads"] #tab-leads .overview-leads-base > .filters > .btn-action {grid-column:1/-1;}
}
@media(max-width:420px) {
  body[data-current-tab="leads"] #tab-leads .leads-base-heading {gap:8px;flex-wrap:wrap;}
  body[data-current-tab="leads"] #tab-leads .overview-leads-base > .filters {padding:12px;gap:12px 8px;}
  body[data-current-tab="leads"] #tab-leads .overview-leads-base :is(input,select,button) {min-height:44px;}
}

/* Live work journal: one surface, compact task status, chronological rows. */
body[data-theme] #app #tab-leads #overview-log-panel {margin:0 0 24px;overflow:hidden;box-shadow:none;}
body[data-theme] #app #overview-log-panel .log-header {min-height:44px;padding:6px 16px;gap:8px;flex-wrap:wrap;}
body[data-theme] #app #overview-log-panel .log-title {font-size:14px;font-weight:600;}
body[data-theme] #app #overview-log-panel .log-header .btn-sm {min-height:32px;padding:4px 10px;}
body[data-theme] #app #overview-log-panel #job-progress-panel {display:flex;flex-wrap:nowrap;gap:12px;margin:0;padding:8px 16px;min-height:52px;border:0;border-bottom:1px solid var(--release-line);border-radius:0;background:var(--release-card);box-shadow:none;}
body[data-theme] #app #overview-log-panel #job-progress-panel[hidden] {display:none;}
body[data-theme] #app #overview-log-panel .job-progress-copy {flex:1 1 240px;min-width:0;gap:2px;}
body[data-theme] #app #overview-log-panel .job-progress-copy strong {font-size:13px;line-height:18px;}
body[data-theme] #app #overview-log-panel .job-progress-copy span {font-size:12px;line-height:18px;overflow-wrap:anywhere;}
body[data-theme] #app #overview-log-panel .job-progress-beacon {width:7px;height:7px;flex:0 0 7px;}
body[data-theme] #app #overview-log-panel .job-progress-meter {flex:0 1 180px;min-width:100px;gap:8px;}
body[data-theme] #app #overview-log-panel .job-progress-track {height:4px;}
body[data-theme] #app #overview-log-panel #job-progress-fill {background:var(--text2);}
body[data-theme] #app #overview-log-panel #job-progress-percent {font-size:12px;}
body[data-theme] #app #overview-log-panel .job-progress-count {flex:0 1 220px;font-size:12px;white-space:normal;overflow-wrap:anywhere;}
body[data-theme] #app #overview-log-panel #job-progress-time {font-size:12px;padding-left:12px;white-space:nowrap;font-variant-numeric:tabular-nums;}
body[data-theme] #app #overview-log-panel #job-progress-stop {min-height:32px;padding:4px 10px;font-size:12px;white-space:nowrap;}
body[data-theme] #app #overview-log-panel .log-body {height:180px;padding:8px 16px;font-size:12px;line-height:1.55;overflow:auto;}
body[data-theme] #app #overview-log-panel .log-line {min-height:24px;align-items:baseline;}
body[data-theme] #app #overview-log-panel .log-footer {min-height:28px;padding:4px 16px;font-size:11px;}
@media(max-width:1100px){body[data-theme] #app #overview-log-panel #job-progress-panel {flex-wrap:wrap;}body[data-theme] #app #overview-log-panel .job-progress-count {flex:1 1 180px;}}
@media(max-width:600px){body[data-theme] #app #overview-log-panel .log-header {padding:8px 12px;}body[data-theme] #app #overview-log-panel .log-title {flex:1 1 calc(100% - 24px);}body[data-theme] #app #overview-log-panel #job-progress-panel {padding:8px 12px;gap:8px;}body[data-theme] #app #overview-log-panel .job-progress-copy {flex-basis:calc(100% - 24px);}body[data-theme] #app #overview-log-panel .job-progress-meter {flex:1 1 120px;}body[data-theme] #app #overview-log-panel .job-progress-count {flex-basis:100%;}body[data-theme] #app #overview-log-panel .log-body {padding:8px 12px;height:192px;}body[data-theme] #app #overview-log-panel .log-line {flex-wrap:wrap;}}

body[data-theme] #app #overview-log-panel #job-progress-stop {flex:0 0 auto;width:auto;height:auto;color:var(--red,#b42336);text-indent:0;overflow:visible;font-size:12px!important;}
body[data-theme] #app #overview-log-panel #job-progress-stop::after {content:none;}
body[data-theme] #app #overview-log-panel .log-line {display:grid;grid-template-columns:96px 12px minmax(0,1fr);gap:8px;}
body[data-theme] #app #overview-log-panel .log-ts {width:auto;white-space:nowrap;}
body[data-theme] #app #overview-log-panel .log-msg {overflow-wrap:anywhere;min-width:0;}
@media(max-width:600px){body[data-theme] #app #overview-log-panel .log-line {grid-template-columns:78px 8px minmax(0,1fr);gap:6px;}body[data-theme] #app #overview-log-panel .log-ts {font-size:10px;}}

/* Keep live rows inside the journal; spinner padding must not shift columns. */
body[data-theme] #app #overview-log-panel .log-line.log-spinner {margin:0;padding:8px 0;border-radius:8px;}
body[data-theme] #app #overview-log-panel .log-ts {min-width:0;align-self:start;}
body[data-theme] #app #overview-log-panel .log-line {grid-template-columns:96px 18px minmax(0,1fr);align-items:start;}
body[data-theme] #app #overview-log-panel .log-marker {align-self:start;}
body[data-theme] #app #overview-log-panel .log-body {min-width:0;overflow-x:hidden;scrollbar-gutter:stable;}
body[data-theme] #app #kpi-offers .ov-offers-update-error {margin:8px 16px;color:var(--text2);}
@media(max-width:600px){body[data-theme] #app #overview-log-panel .log-line {grid-template-columns:78px 18px minmax(0,1fr);}}

/* sidebar-polish.css */
/* Stable flat sidebar shared by every authenticated workspace route. */
body[data-current-tab] #app .sidebar {
  overflow:hidden;
  background:var(--release-card);
  border-right-color:var(--release-line);
  color:var(--release-text);
}

body[data-current-tab] #app .sidebar > .sidebar-nav {
  display:flex!important;
  flex:1 1 auto;
  flex-direction:column;
  min-width:0;
  min-height:0;
  padding:22px 0 76px;
  gap:2px;
  overflow-x:hidden!important;
  overflow-y:hidden!important;
  overscroll-behavior:none;
  scrollbar-width:none;
}

body[data-current-tab] #app .sidebar > .sidebar-nav::-webkit-scrollbar {
  display:none;
  width:0;
  height:0;
}

body[data-current-tab] #app .sidebar > .sidebar-nav > button {
  width:100%;
  height:clamp(28px,calc((100dvh - 212px) / 14),36px);
  min-height:clamp(28px,calc((100dvh - 212px) / 14),36px);
  max-height:36px;
  flex:0 0 auto;
  justify-content:flex-start;
  padding:0 11px;
  overflow:hidden;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--release-primary);
  box-shadow:none;
  font:14px/20px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  text-align:left;
  transition-property:background-color,color,box-shadow;
  transition-duration:120ms;
}

body[data-current-tab] #app .sidebar > .sidebar-nav > button .nav-label {
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  min-width:0;
}

body[data-current-tab] #app .sidebar > .sidebar-nav > button .nav-label > span:last-child {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-current-tab] #app .sidebar > .sidebar-nav > button .nav-ref-icon,
body[data-current-tab] #app .sidebar > .sidebar-nav > button .nav-icon {
  width:20px;
  height:20px;
  flex:0 0 20px;
  color:currentColor;
  stroke-width:1.75;
}

body[data-current-tab] #app .sidebar > .sidebar-nav > button:hover {
  background:var(--release-card);
  color:var(--release-text);
}

body[data-current-tab] #app .sidebar > .sidebar-nav > button.active {
  background:var(--release-card);
  color:var(--release-primary);
  box-shadow:none;
}

body[data-current-tab] #app .sidebar > .sidebar-nav > button:focus-visible {
  outline:2px solid var(--release-primary);
  outline-offset:-2px;
}

body[data-theme="light"][data-current-tab] #app .sidebar > .sidebar-nav > button {
  color:var(--release-primary);
}

body[data-theme="light"][data-current-tab] #app .sidebar > .sidebar-nav > button:hover {
  background:var(--release-card);
  color:var(--release-text);
}

body[data-theme="light"][data-current-tab] #app .sidebar > .sidebar-nav > button.active {
  background:var(--release-card);
  color:var(--release-primary);
  box-shadow:none;
}

/* Keep the navigation shell identical while route-specific content changes. */
body[data-current-tab] #app .sidebar .sidebar-brand__name {color:var(--release-text);}
body[data-current-tab] #app .sidebar .sidebar-brand__name span {color:var(--release-muted);}
body[data-current-tab] #app > header {background:var(--release-card);border-bottom-color:var(--release-line);color:var(--release-text);}
body[data-current-tab] #app > header .header-account {background:var(--release-card);border-color:var(--release-line);color:var(--release-text);}
body[data-current-tab] #app > header .header-user {color:var(--release-text);}
body[data-current-tab] #app > header .header-user__avatar {background:var(--release-card);color:var(--release-text);}

@media(max-height:640px) {
  body[data-current-tab] #app .sidebar .sidebar-brand {
    height:64px;
    min-height:64px;
  }

  body[data-current-tab] #app .sidebar > .sidebar-nav {
    padding:8px 0 58px;
    gap:0;
  }

  body[data-current-tab] #app .sidebar > .sidebar-nav > button {
    height:clamp(28px,calc((100dvh - 142px) / 14),34px);
    min-height:clamp(28px,calc((100dvh - 142px) / 14),34px);
  }
}

@media(max-height:520px) {
  body[data-current-tab] #app .sidebar .sidebar-brand {
    height:56px;
    min-height:56px;
  }

  body[data-current-tab] #app > header .header-account {
    display:none!important;
  }

  body[data-current-tab] #app .sidebar > .sidebar-nav {
    padding:4px 0;
  }

  body[data-current-tab] #app .sidebar > .sidebar-nav > button {
    height:clamp(24px,calc((100dvh - 72px) / 14),30px);
    min-height:clamp(24px,calc((100dvh - 72px) / 14),30px);
    font-size:12px;
  }

  body[data-current-tab] #app .sidebar > .sidebar-nav > button .nav-label {
    gap:8px;
  }

  body[data-current-tab] #app .sidebar > .sidebar-nav > button .nav-ref-icon,
  body[data-current-tab] #app .sidebar > .sidebar-nav > button .nav-icon {
    width:16px;
    height:16px;
    flex-basis:16px;
  }
}

@media(prefers-reduced-motion:reduce) {
  body[data-current-tab] #app .sidebar > .sidebar-nav > button {
    transition:none;
  }
}

/* Desktop sidebar: one icon grid in both expanded and collapsed states. */
body[data-current-tab] #app .sidebar-collapse-toggle {
  position:absolute;
  top:22px;
  right:-14px;
  z-index:3;
  display:grid;
  place-items:center;
  width:28px;
  height:32px;
  padding:0;
  border:1px solid var(--release-line);
  border-radius:8px;
  background:var(--release-card);
  color:var(--release-muted);
  box-shadow:0 4px 14px rgb(0 0 0 / .22);
  cursor:pointer;
  transition-property:background-color,border-color,color,transform;
  transition-duration:150ms;
}
body[data-current-tab] #app .sidebar-collapse-toggle:hover {background:var(--release-card);color:var(--release-text);border-color:var(--release-line);}
body[data-current-tab] #app .sidebar-collapse-toggle:active {transform:scale(.96);}
body[data-current-tab] #app .sidebar-collapse-toggle svg {
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body[data-current-tab] #app .sidebar :is(.nav-ref-icon,.nav-icon) {
  display:grid;
  place-items:center;
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
  font-size:20px;
  line-height:1;
  stroke-width:1.75;
}
body[data-current-tab] #app .sidebar .nav-label {align-items:center;}

body.sidebar-collapsed[data-current-tab] #app {--shell-sidebar:68px;}
  body[data-current-tab] #app .app-shell,
  body[data-current-tab] #app > header,
  body[data-current-tab] #app .sidebar {
    transition-property:margin-left,width;
    transition-duration:180ms;
    transition-timing-function:cubic-bezier(.2,0,0,1);
  }
  body.sidebar-collapsed[data-current-tab] #app .sidebar {padding-inline:12px;}
  body.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-brand {justify-content:center;padding-inline:0;}
  body.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-group-chevron,
  body.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-nav-children {display:none;}
  body.sidebar-collapsed[data-current-tab] #app .sidebar .nav-label > span:last-child {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
  }
  body.sidebar-collapsed[data-current-tab] #app .sidebar > .sidebar-nav {
    flex:none;
    align-items:center;
    justify-content:flex-start;
    width:100%;
    padding:10px 0 0;
    gap:2px;
  }
  body.sidebar-collapsed[data-current-tab] #app .sidebar > .sidebar-nav > .sidebar-nav-group {
    flex:0 0 40px;
    width:40px;
    height:40px;
  }
  body.sidebar-collapsed[data-current-tab] #app .sidebar > .sidebar-nav > button,
  body.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-nav-group > summary {
    width:40px;
    min-width:40px;
    height:40px;
    min-height:40px;
    padding:0;
    justify-content:center;
    border-radius:10px;
  }
  body.sidebar-collapsed[data-current-tab] #app .sidebar .nav-label {width:20px;justify-content:center;gap:0;}
  body.sidebar-collapsed[data-current-tab] #app .sidebar-collapse-toggle svg {transform:rotate(180deg);}

@media(max-width:980px) {
  body:not(.sidebar-desktop-mode)[data-current-tab] #app .sidebar-collapse-toggle {display:none;}
  body.sidebar-desktop-mode[data-current-tab] #app {--shell-sidebar:225px;--shell-gutter:24px;}
  body.sidebar-desktop-mode[data-current-tab] #app .app-shell {margin-left:var(--shell-sidebar);}
  body.sidebar-desktop-mode[data-current-tab] #app > header {margin-left:calc(var(--shell-sidebar) + var(--shell-gutter));margin-right:var(--shell-gutter);}
  body.sidebar-desktop-mode[data-current-tab] #app .sidebar {width:var(--shell-sidebar);transform:none;}
  body.sidebar-desktop-mode[data-current-tab] #app > header .mobile-menu-toggle {display:none;}
  body.sidebar-desktop-mode[data-current-tab] #app .sidebar-collapse-toggle {display:grid;}
  body.sidebar-desktop-mode.sidebar-collapsed[data-current-tab] #app {--shell-sidebar:68px;}
  body.sidebar-desktop-mode[data-current-tab] #app .sidebar .sidebar-nav button {min-height:clamp(28px,calc((100dvh - 212px) / 14),36px);}
}

/* Keep the account menu in the global header instead of the sidebar footer. */
body[data-current-tab] #app > header .header-account {
  position: relative;
  inset: auto;
  width: auto;
  height: auto;
  padding: 0;
  display: block !important;
  background: transparent;
  border: 0;
  z-index: 40;
}
body[data-current-tab] #app > header .header-account-menu {
  top: 46px;
  right: 0;
  bottom: auto;
  left: auto;
}
body[data-current-tab] #app > header .header-user {
  display: flex !important;
  width: auto !important;
  max-width: 168px !important;
}
body[data-current-tab] #app > header .header-user__copy,
body[data-current-tab] #app > header .header-user__chevron {
  display: flex !important;
}

/* Automation page: keep cards readable and controls inside their panels. */
body[data-current-tab="automation"] #app .ai-agent-page {
  width: 100%;
  max-width: 1545px;
  min-width: 0;
}
body[data-current-tab="automation"] #app .ai-agent-hero,
body[data-current-tab="automation"] #app .ai-agent-panel {
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--surface);
}
body[data-current-tab="automation"] #app .ai-agent-hero-body,
body[data-current-tab="automation"] #app .ai-agent-tables {
  min-width: 0;
}
body[data-current-tab="automation"] #app .settings-grid,
body[data-current-tab="automation"] #app .settings-grid input,
body[data-current-tab="automation"] #app .settings-grid textarea {
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}
body[data-current-tab="automation"] #app .ai-agent-table {
  min-width: 0;
  overflow-x: auto;
}
body[data-current-tab="automation"] #app .ai-agent-table-row {
  min-width: 0;
}
body[data-current-tab="automation"] #app .ai-agent-logs {
  max-height: 280px;
  overflow-y: auto;
}
@media (max-width: 680px) {
  body[data-current-tab="automation"] #app .ai-agent-page-head {
    gap: 12px;
    flex-wrap: wrap;
  }
  body[data-current-tab="automation"] #app .ai-agent-refresh {
    margin-left: 0;
  }
  body[data-current-tab="automation"] #app .ai-agent-panel footer {
    align-items: flex-start;
    flex-wrap: wrap;
  }
}

/* Sidebar geometry: one source of truth for desktop, tablet rail and mobile drawer. */
body[data-current-tab] #app .sidebar-brand__name {
  max-width:150px;
  overflow:hidden;
  white-space:nowrap;
  opacity:1;
  visibility:visible;
  transition:max-width 180ms cubic-bezier(.2,0,0,1),opacity 120ms ease,visibility 120ms step-end;
}

body.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-brand__name {
  max-width:0;
  opacity:0;
  visibility:hidden;
  transition: max-width 180ms cubic-bezier(.2,0,0,1),opacity 120ms ease,visibility 120ms step-start;
}

@media (min-width: 1200px) {
  body.sidebar-collapsed[data-current-tab] #app .sidebar {
    width:68px !important;
    min-width:68px !important;
    max-width:68px !important;
    flex-basis:68px !important;
  }
  body.sidebar-collapsed[data-current-tab] #app .app-shell {
    margin-left:68px !important;
  }
  body.sidebar-collapsed[data-current-tab] #app > header {
    margin-left:calc(68px + var(--shell-gutter)) !important;
  }
}

@media (min-width: 769px) and (max-width: 1199px) {
  body[data-current-tab] #app { --shell-gutter:20px; }
}

@media (max-width: 768px) {
  body[data-current-tab] #app { --shell-sidebar:0px; --shell-gutter:0px; }
  body[data-current-tab] #app .app-shell { margin-left:0; }
  body[data-current-tab] #app > header {
    height:56px;
    min-height:56px;
    margin:0;
    padding-inline:12px;
  }
  body[data-current-tab] #app > header .header-controls { min-width:0; margin-left:auto; gap:6px; }
  body[data-current-tab] #app > header .header-account,
  body[data-current-tab] #app > header .header-user { width:44px !important; min-width:44px !important; max-width:44px !important; }
  body[data-current-tab] #app > header .header-user { padding:0 !important; }
  body[data-current-tab] #app > header .header-user__copy,
  body[data-current-tab] #app > header .header-user__chevron { display:none !important; }
  body[data-current-tab] #app .sidebar {
    inset:56px auto 0 0;
    width:min(82vw,320px);
    min-width:0;
    max-width:320px;
    height:auto;
    flex-basis:auto;
    padding:12px;
    transform:translateX(-100%);
    transition:transform 220ms cubic-bezier(.2,0,0,1);
  }
  body.mobile-sidebar-open[data-current-tab] #app .sidebar,
  body[data-current-tab] #app .sidebar.open { transform:translateX(0); }
  body[data-current-tab] #app .sidebar-collapse-toggle { display:none; }
  body[data-current-tab] #app .sidebar .sidebar-brand { justify-content:flex-start; padding-inline:6px; }
  body[data-current-tab] #app .sidebar .sidebar-brand__name {
    display:inline;
    max-width:150px;
    opacity:1;
    visibility:visible;
  }
  body[data-current-tab] #app .sidebar > .sidebar-nav {
    padding:12px 0 24px;
    overflow-y:auto!important;
  }
  body[data-current-tab] #app .sidebar > .sidebar-nav > button {
    width:100%;
    min-width:0;
    height:auto;
    min-height:44px;
    padding-inline:12px;
    justify-content:flex-start;
  }
  body[data-current-tab] #app .sidebar .nav-label { width:100%; justify-content:flex-start; gap:12px; }
body[data-current-tab] #app .sidebar .nav-label > span:last-child {
    position:static;
    width:auto;
    height:auto;
    margin:0;
    overflow:visible;
    clip:auto;
  }
}

/* Dashboard visual polish: shared metric rhythm and a complete light surface. */
#tab-leads .overview-reference .ov-metrics {
  align-items:stretch;
  padding-block:12px;
}
#tab-leads .overview-reference .ov-metric {
  display:grid;
  grid-template-rows:36px 33px 18px;
  align-content:center;
  gap:2px;
  min-height:91px;
  padding-inline:18px;
}
#tab-leads .overview-reference .ov-metric-label {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
  line-height:18px;
}
#tab-leads .overview-reference .ov-metric-label .ov-metric-icon {
  box-sizing:border-box;
  display:block;
  flex:0 0 36px;
  width:36px;
  height:36px;
  padding:8px;
  border:1px solid color-mix(in srgb,var(--lime) 24%,var(--line));
  border-radius:10px;
  background:color-mix(in srgb,var(--lime) 8%,var(--card));
  color:var(--lime);
  stroke-width:1.8;
}
#tab-leads .overview-reference .ov-metric-main {
  min-width:0;
  align-items:center;
  column-gap:8px;
}
#tab-leads .overview-reference .funnel-trend {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  min-height:24px;
  padding:0 8px;
  border:1px solid transparent;
  border-radius:999px;
  font-size:11px;
  font-weight:650;
  line-height:1;
  letter-spacing:.01em;
  font-variant-numeric:tabular-nums;
}
#tab-leads .overview-reference .funnel-trend__icon {
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#tab-leads .overview-reference .funnel-trend.is-positive {
  color:var(--release-primary);
  border-color:var(--release-line);
  background:var(--release-soft);
}
#tab-leads .overview-reference .funnel-trend.is-negative {
  color:#bd3040;
  border-color:rgba(189,48,64,.18);
  background:rgba(189,48,64,.10);
}
#tab-leads .overview-reference .ov-metric-note {
  margin-top:0;
  font-size:12px;
  line-height:18px;
}

body[data-theme="light"] #app {
  --ui-light-canvas:var(--release-bg);
  --ui-light-surface:var(--release-card);
  --ui-light-raised:var(--release-soft);
  --ui-light-border:var(--release-line);
  --ui-light-ink:var(--release-text);
  --ui-light-muted:var(--release-muted);
}
body[data-theme="light"] #app :is(main,.app-shell) { background:var(--ui-light-canvas); }
body[data-theme="light"] #app > header {
  background:rgba(244,247,243,.94);
  border-bottom-color:var(--ui-light-border);
}
body[data-theme="light"] #app .sidebar {
  background:var(--release-card);
  border-right-color:var(--ui-light-border);
}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button.active {
  color:var(--release-primary);
  background:var(--release-soft);
  border-color:var(--release-line);
  box-shadow:none;
}
body[data-theme="light"] #app .sidebar .sidebar-nav-reference > button:hover {
  background:var(--release-soft);
  border-color:var(--release-line);
  color:var(--ui-light-ink);
}
body[data-theme="light"] #app :is(.table-wrap,.crm-table-wrap,.settings-card,.chart-card,.log-panel,.pagination, .filter-panel) {
  background:var(--ui-light-surface);
  border-color:var(--ui-light-border);
  color:var(--ui-light-ink);
  box-shadow:none;
}
body[data-theme="light"] #app :is(.table-wrap,.crm-table-wrap) :is(th,td) {
  border-color:var(--ui-light-border);
  color:var(--ui-light-ink);
}
body[data-theme="light"] #app :is(.table-wrap,.crm-table-wrap) th {
  background:var(--ui-light-raised);
  color:var(--ui-light-muted);
}
body[data-theme="light"] #app :is(.table-wrap,.crm-table-wrap) tbody tr:hover { background:var(--release-card); }
body[data-theme="light"] #app :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.btn-sm,.btn-action,.pagination button) {
  background:var(--ui-light-surface);
  border-color:var(--ui-light-border);
  color:var(--ui-light-ink);
}
body[data-theme="light"] #app :is(input,textarea)::placeholder { color:var(--release-muted); }
body[data-theme="light"] #app :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.btn-sm,.btn-action,.pagination button):hover {
  border-color:var(--release-line);
}
body[data-theme="light"] #tab-leads .overview-reference .ov-metric-label .ov-metric-icon {
  color:var(--release-primary);
  border-color:var(--release-line);
  background:var(--release-card);
}
body[data-theme="light"] #tab-leads .overview-reference .funnel-trend.is-positive {
  color:var(--release-primary);
  border-color:var(--release-line);
  background:var(--release-card);
}
body[data-theme="light"] #tab-leads .overview-reference .funnel-trend.is-negative {
  color:#b22938;
  border-color:#f1cbd0;
  background:var(--release-card);
}

/* Mouse/trackpad laptops keep an operable desktop sidebar at every width.
   Only the saved collapsed state controls labels; height overflow scrolls. */
body.sidebar-desktop-mode[data-current-tab] #app { --shell-sidebar:225px; }
body.sidebar-desktop-mode.sidebar-collapsed[data-current-tab] #app { --shell-sidebar:68px; }
body.sidebar-desktop-mode[data-current-tab] #app .sidebar {
  inset:0 auto 0 0;
  width:var(--shell-sidebar);
  min-width:var(--shell-sidebar);
  max-width:var(--shell-sidebar);
  flex-basis:var(--shell-sidebar);
  height:100dvh;
  overflow:visible;
  transform:none;
}
body.sidebar-desktop-mode[data-current-tab] #app .app-shell { margin-left:var(--shell-sidebar); }
body.sidebar-desktop-mode[data-current-tab] #app > header {
  margin-left:calc(var(--shell-sidebar) + var(--shell-gutter));
  margin-right:var(--shell-gutter);
}
body.sidebar-desktop-mode[data-current-tab] #app .sidebar-collapse-toggle {
  display:grid;
  right:-24px;
  top:18px;
  width:40px;
  height:40px;
}
body.sidebar-desktop-mode[data-current-tab] #app > header .mobile-menu-toggle { display:none; }
body[data-current-tab] #app .sidebar > .sidebar-nav,
body.sidebar-collapsed[data-current-tab] #app .sidebar > .sidebar-nav {
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:var(--border-hi) transparent;
  padding-bottom:12px;
}
body[data-current-tab] #app .sidebar > .sidebar-nav::-webkit-scrollbar {
  display:block;
  width:4px;
}
body.sidebar-desktop-mode.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-brand {
  width:30px;
  margin-inline:auto;
}

/* Keep settings reachable when the navigation exceeds the available viewport. */
body[data-theme][data-current-tab] #app .sidebar {
  height:calc(100dvh - 64px)!important;
  max-height:calc(100dvh - 64px)!important;
  display:flex!important;
  flex-direction:column!important;
}
body[data-theme][data-current-tab] #app .sidebar > .sidebar-nav {
  flex:1 1 0!important;
  min-height:0!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}
body[data-theme][data-current-tab] #app .sidebar #nav-settings {
  position:sticky;
  bottom:0;
  z-index:2;
  flex-shrink:0;
  background:var(--release-side)!important;
  border-top:1px solid var(--release-line)!important;
}
body[data-theme][data-current-tab] #app .sidebar #nav-settings:is(:hover,.active) {
  background:var(--release-soft)!important;
}
@media(max-width:600px){
  body[data-theme][data-current-tab] #app .sidebar {
    height:calc(100dvh - 114px)!important;
    max-height:calc(100dvh - 114px)!important;
  }
}
body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar {
  top:64px!important;
  height:calc(100dvh - 64px)!important;
  max-height:calc(100dvh - 64px)!important;
}

body[data-current-tab] #app .sidebar .nav-ref-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;overflow:visible;}

/* messenger-hotfix.css */
/* Keep the dialog panel below the two overview cards in the messenger view. */
.crm-messengers-page .msg-bottom-grid {
  height: auto;
}

.crm-messengers-page .msg-agent-dialogs {
  grid-column: 1 / -1;
  min-width: 0;
  margin-top: 2px;
}

/* Reset the global shell header positioning inside the dialog panel. */
.crm-messengers-page .msg-agent-dialogs > header {
  position: static;
  width: auto;
  height: auto;
  min-height: 0;
  margin-left: 0;
  padding: 14px;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--release-line);
  box-shadow: none;
  z-index: auto;
  overflow: visible;
}

.crm-messengers-page .msg-agent-candidate.is-open {
  background: var(--release-card);
}

.crm-messengers-page .msg-agent-candidate-main {
  display: block;
  min-width: 0;
  flex: 1;
  padding: 3px 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.crm-messengers-page .msg-agent-candidate-main:hover strong,
.crm-messengers-page .msg-agent-candidate-main:focus-visible strong {
  color: var(--release-primary);
}

.crm-messengers-page .msg-agent-candidate-main:focus-visible,
.crm-messengers-page .msg-agent-thread button:focus-visible {
  outline: 2px solid var(--release-primary);
  outline-offset: 3px;
}

.crm-messengers-page .msg-agent-thread {
  border-bottom: 1px solid var(--release-line);
  background: var(--release-card);
}

.crm-messengers-page .msg-agent-thread[hidden] {
  display: none;
}

.crm-messengers-page .msg-agent-thread > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--release-line);
}

.crm-messengers-page .msg-agent-thread h3 {
  margin: 0;
  color: var(--release-text);
  font-size: 13px;
}

.crm-messengers-page .msg-agent-thread button {
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid var(--release-line);
  border-radius: 6px;
  background: var(--release-card);
  color: var(--release-primary);
  cursor: pointer;
}

.crm-messengers-page .msg-agent-messages {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 420px;
  padding: 14px;
  overflow-y: auto;
}

.crm-messengers-page .msg-agent-message {
  max-width: min(75%, 620px);
  padding: 9px 11px;
  border: 1px solid var(--release-line);
  border-radius: 10px;
  background: var(--release-soft);
  color: var(--release-text);
}

.crm-messengers-page .msg-agent-message.is-outbound {
  align-self: flex-end;
  border-color: var(--release-line);
  background: var(--release-soft);
}

.crm-messengers-page .msg-agent-message p {
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 12px;
  line-height: 1.45;
}

.crm-messengers-page .msg-agent-message time,
.crm-messengers-page .msg-agent-thread-note {
  display: block;
  margin-top: 5px;
  color: var(--release-muted);
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}

.crm-messengers-page .msg-agent-thread-note {
  margin: 0;
  padding: 0 14px 10px;
}

/* light-theme-polish.css */
/* Final light-theme layer. Loaded after all legacy dashboard styles. */
body[data-theme][data-current-tab] #app  {--ui-font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
/* Final light-theme layer. Loaded after all legacy dashboard styles. */
body[data-theme="light"][data-current-tab] #app {--bg:var(--release-bg);--surface:var(--release-card);--surface2:var(--release-soft);--card:var(--release-card);--side:var(--release-side);--line:var(--release-line);--border:var(--release-line);--border2:var(--release-line);--ui-card:var(--release-card);--ui-nav:var(--release-side);--ui-border:var(--release-line);--text:var(--release-text);--text2:var(--release-muted);--muted:var(--release-muted);--green:var(--release-primary);--green-dim:#e4f1df;--surface-hover:var(--release-soft);--ui-action-bg:var(--release-primary);--ui-action-hover:var(--release-text);--ui-action-ink:var(--release-on);--ui-focus:var(--release-primary);--ui-shadow:0 8px 24px none;color:var(--text);}

/* Shell */
body[data-theme="light"][data-current-tab],
body[data-theme="light"][data-current-tab] #app,
body[data-theme="light"][data-current-tab] #app > .app-shell,
body[data-theme="light"][data-current-tab] #app main {
  background:var(--release-card) !important;
  color:var(--text);
}
body[data-theme="light"][data-current-tab] #app > header,
body[data-theme="light"][data-current-tab] #app .sidebar,
body[data-theme="light"][data-current-tab] #app > header .header-account {
  background:var(--release-card) !important;
  border-color:var(--release-line) !important;
  color:var(--text) !important;
}
body[data-theme="light"][data-current-tab] #app > header .header-user__avatar {
  background:var(--release-card) !important;
  color:var(--release-text) !important;
}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-brand__name,
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-brand__name span {color:var(--text) !important;}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button {color:var(--text2) !important;}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button:hover {
  color:var(--text) !important;
  background:var(--release-card) !important;
}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button.active {
  color:var(--release-text) !important;
  background:var(--release-card) !important;
  box-shadow:none !important;
}

/* Centre the collapse control on the sidebar divider without touching page content. */
body[data-current-tab] #app .sidebar-collapse-toggle {
  position:fixed;
  top:22px;
  left:calc(var(--shell-sidebar) - 14px);
  right:auto;
  margin-top:0;
}
body[data-theme="light"][data-current-tab] #app .sidebar-collapse-toggle {
  background:var(--release-card);
  color:var(--release-muted);
  border-color:var(--release-line);
  box-shadow:none;
}
body[data-theme="light"][data-current-tab] #app .sidebar-collapse-toggle:hover {
  background:var(--release-card);
  color:var(--release-text);
  border-color:var(--release-line);
}

/* Shared controls and data surfaces */
body[data-theme="light"][data-current-tab] #app .tab-pane :is(
  .settings-card,.summary-card,.chart-card,.crm-stat-card,.network-balance-panel,.network-balance-card,
  .ai-agent-hero,.ai-agent-panel,.offer-card,.vacancy-card,.source-card,.messenger-card,
  .table-wrap,.crm-table-wrap,.log-panel,.filter-panel,.source-overview,.sources-analysis > article,
  .sources-summary,.sources-trend,.crm-settings-card,.funnel-flow__card,.funnel-lead-card,
  .msg-kpis article,.msg-accounts-panel,.msg-activity,.msg-crm,.mailing-overview,.mailing-recent,
  .diagnostics-card,.vacancies-ref-kpis > article,.vacancies-ref-table,.ai-agent-new-card
) {
  background:var(--release-card) !important;
  border-color:var(--release-line) !important;
  color:var(--text) !important;
  box-shadow:none;
}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.btn-sm,.btn-action,.btn-secondary,.pagination button) {
  background:var(--release-card) !important;
  border-color:var(--release-line) !important;
  color:var(--text) !important;
}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.btn-sm,.btn-action,.btn-secondary,.pagination button):hover {border-color:var(--release-line) !important;}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(input,textarea)::placeholder {color:var(--release-muted) !important;opacity:1;}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(.btn-primary,.btn-action.primary) {background:var(--release-soft) !important;border-color:var(--release-line) !important;color:var(--release-text) !important;}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(.page-subtitle,.muted,.empty,.text-sm,.table-meta,small) {color:var(--text2);}

/* Tables, rows and pagination */
body[data-theme="light"][data-current-tab] #app .tab-pane :is(.table-wrap,.crm-table-wrap,.crm-leads-table-shell,.vacancies-ref-table) {background:var(--release-card) !important;border-color:var(--release-line) !important;}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(table,thead,tbody,tr) {background:transparent !important;color:var(--text) !important;}
body[data-theme="light"][data-current-tab] #app .tab-pane th {
  background:var(--release-card) !important;
  color:var(--release-muted) !important;
  border-color:var(--release-line) !important;
}
body[data-theme="light"][data-current-tab] #app .tab-pane td {
  color:var(--text) !important;
  border-color:var(--release-line) !important;
}
body[data-theme="light"][data-current-tab] #app .tab-pane tbody tr:hover {background:var(--release-card) !important;}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(.pagination,.crm-leads-footer) {
  background:var(--release-card) !important;
  border-color:var(--release-line) !important;
  color:var(--text2) !important;
}

/* Overview / leads: these rules override the legacy raw-black selectors. */
body[data-theme="light"][data-current-tab="leads"] #tab-leads .overview-reference {
  --raw-canvas:var(--release-bg);
  --raw-panel:var(--release-card);
  --raw-border:var(--release-line);
  --raw-text:var(--release-text);
  --raw-muted:var(--release-muted);
  --raw-accent:var(--release-primary);
  --bg:var(--release-bg);
  --card:var(--release-card);
  --line:var(--release-line);
  --text:var(--release-text);
  --muted:var(--release-muted);
  --lime:var(--release-primary);
}
body[data-theme="light"][data-current-tab="leads"] #tab-leads :is(.overview-leads-base,.table-wrap,#leads-table-wrap,.leads-table-wrap,.mailing-overview,.mailing-recent,.manual-lead-form,.ov-drawer) {
  background:var(--release-card) !important;
  border-color:var(--release-line) !important;
  color:var(--release-text) !important;
}
body[data-theme="light"][data-current-tab="leads"] #tab-leads #leads-table-wrap :is(table,thead,tbody,tr,th,td) {color:var(--release-text) !important;}
body[data-theme="light"][data-current-tab="leads"] #tab-leads #leads-table-wrap :is(table,thead,tbody) {background:var(--release-card) !important;}
body[data-theme="light"][data-current-tab="leads"] #tab-leads #leads-table-wrap th {background:var(--release-card) !important;color:var(--release-muted) !important;}
body[data-theme="light"][data-current-tab="leads"] #tab-leads #leads-table-wrap td {border-color:var(--release-line) !important;}
body[data-theme="light"][data-current-tab="leads"] #tab-leads #leads-table-wrap tbody tr:hover {background:var(--release-card) !important;}
body[data-theme="light"][data-current-tab="leads"] #tab-leads :is(.ov-btn:not(.ov-primary),.ov-segmented,.ov-date) {background:var(--release-card) !important;border-color:var(--release-line) !important;color:var(--release-text) !important;}

/* CRM leads and sources include hard-coded dark inner controls. */
body[data-theme="light"][data-current-tab="crm-leads"] #tab-crm-leads :is(.crm-leads-search,.crm-leads-filter,.crm-leads-dates,.crm-leads-table-shell,.crm-leads-footer) {background:var(--release-card) !important;border-color:var(--release-line) !important;color:var(--release-text) !important;}
body[data-theme="light"][data-current-tab="crm-leads"] #tab-crm-leads :is(.crm-leads-search input,.crm-leads-filter select,.crm-leads-dates input) {color:var(--release-text) !important;color-scheme:light;}
body[data-theme="light"][data-current-tab="crm-leads"] #tab-crm-leads :is(table,thead,tbody,th) {background:var(--release-card) !important;color:var(--release-text) !important;}
body[data-theme="light"][data-current-tab="crm-leads"] #tab-crm-leads th {background:var(--release-card) !important;color:var(--release-muted) !important;}
body[data-theme="light"][data-current-tab="sources"] #tab-sources :is(.source-tab,.source-primary-metrics > div,.source-period-metrics > div,.source-period-metrics button) {background:var(--release-card) !important;border-color:var(--release-line) !important;color:var(--release-text) !important;}
body[data-theme="light"][data-current-tab="sources"] #tab-sources :is(.sources-table-row,.chart-grid line) {border-color:var(--release-line) !important;stroke:#e5e5e5 !important;}

/* Pages that use local palette variables. */
body[data-theme="light"][data-current-tab="crm-funnels"] #tab-crm-funnels .funnel-flow {
  --funnel-surface:var(--release-card);--funnel-border:var(--release-line);--funnel-data:var(--release-primary);--funnel-ink:var(--release-text);--funnel-muted:var(--release-muted);
}
body[data-theme="light"][data-current-tab="crm-funnels"] #tab-crm-funnels :is(.funnel-board,.funnel-lane,.funnel-definitions,.funnel-lane-add) {background:var(--release-card) !important;border-color:var(--release-line) !important;color:var(--release-text) !important;}
body[data-theme="light"][data-current-tab="ai-agent"] #tab-ai-agent.ai-agent-page {
  --ai-canvas:var(--release-bg);--ai-panel:var(--release-card);--ai-panel-raised:var(--release-soft);--ai-card:var(--release-card);--ai-border:var(--release-line);--ai-ink:var(--release-text);--ai-muted:var(--release-muted);--ai-accent:var(--release-primary);--ai-accent-soft:#e4f1df;
}
body[data-theme="light"][data-current-tab="ai-agent"] #tab-ai-agent :is(.ai-agent-editor,.ai-editor-tabs,.ai-editor-workspace,.ai-editor-prompt-box,.ai-editor-variable-card) {background:var(--release-card) !important;border-color:var(--release-line) !important;color:var(--release-text) !important;}
body[data-theme="light"][data-current-tab="ai-agent"] #tab-ai-agent .ai-agent-card[role="button"]:hover {background:var(--ai-panel-raised) !important;color:var(--ai-ink) !important;}
body[data-theme="light"][data-current-tab="ai-agent"] #tab-ai-agent :is(.ai-agent-assistant,.ai-agent-new-card ul) {color:var(--ai-muted) !important;}
body[data-theme="light"][data-current-tab="ai-agent"] #tab-ai-agent .ai-agent-prompt strong {color:var(--ai-ink) !important;}
body[data-theme="light"][data-current-tab="ai-agent"] #tab-ai-agent .ai-agent-card-details:hover {color:var(--release-primary) !important;}
body[data-theme="light"][data-current-tab="crm-messengers"] #tab-crm-messengers {
  --msg-bg:var(--release-bg);--msg-panel:var(--release-card);--msg-panel-2:var(--release-card);--msg-border:var(--release-line);--msg-text:var(--release-text);--msg-muted:var(--release-muted);--msg-green:var(--release-primary);--msg-green-soft:var(--release-soft);
}
body[data-theme="light"][data-current-tab="telethon-mailing"] #tab-telethon-mailing {
  --surface:var(--release-card);--surface2:var(--release-soft);--border:var(--release-line);--border2:var(--release-line);--text:var(--release-text);--text2:var(--release-muted);
}

/* Stable sidebar icon slots: collapse hides labels, never moves or resizes icons. */
body[data-current-tab] #app .sidebar {
  --sidebar-icon-slot:40px;
  --sidebar-icon-size:22px;
}
body[data-current-tab] #app .sidebar .sidebar-brand {
  justify-content:flex-start !important;
  padding-inline:10px !important;
}
body[data-current-tab] #app .sidebar .sidebar-brand__icon {
  flex:0 0 25px !important;
  width:25px !important;
  height:29px !important;
  transform:none !important;
}
body[data-current-tab] #app .sidebar > .sidebar-nav > button,
body.sidebar-collapsed[data-current-tab] #app .sidebar > .sidebar-nav > button,
body.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-nav-group > summary {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  min-width:0 !important;
  height:40px !important;
  min-height:40px !important;
  padding:0 !important;
}
body[data-current-tab] #app .sidebar .nav-label,
body.sidebar-collapsed[data-current-tab] #app .sidebar .nav-label {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  gap:0 !important;
}
body[data-current-tab] #app .sidebar .nav-label > :first-child,
body.sidebar-collapsed[data-current-tab] #app .sidebar .nav-label > :first-child {
  display:grid !important;
  place-items:center !important;
  flex:0 0 var(--sidebar-icon-slot) !important;
  width:var(--sidebar-icon-slot) !important;
  height:var(--sidebar-icon-slot) !important;
  margin:0 !important;
  transform:none !important;
}
body[data-current-tab] #app .sidebar .nav-label > :first-child svg,
body[data-current-tab] #app .sidebar .nav-label > svg,
body[data-current-tab] #app .sidebar :is(.nav-ref-icon,.nav-icon),
body.sidebar-collapsed[data-current-tab] #app .sidebar :is(.nav-ref-icon,.nav-icon) {
  box-sizing:border-box !important;
  flex:0 0 var(--sidebar-icon-size) !important;
  width:var(--sidebar-icon-size) !important;
  height:var(--sidebar-icon-size) !important;
  min-width:var(--sidebar-icon-size) !important;
  min-height:var(--sidebar-icon-size) !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}
body.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-brand {justify-content:flex-start !important;padding-inline:10px !important;}
body.sidebar-collapsed[data-current-tab] #app .sidebar .nav-label > span:last-child {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
body[data-current-tab] #app .sidebar :is(.sidebar-nav button,.sidebar-nav-group > summary,.nav-ref-icon,.nav-icon) {
  transform:none !important;
}

/* Light icon tokens and sufficient contrast for navigation and KPI cards. */
body[data-theme="light"][data-current-tab] #app {
  --icon-primary:#666666;
  --icon-muted:var(--release-muted);
  --icon-accent:#404040;
  --icon-accent-bg:#effae8;
  --icon-accent-border:var(--release-line);
}
body[data-theme="light"][data-current-tab] #app .sidebar :is(.nav-ref-icon,.nav-icon) {
  color:var(--icon-primary) !important;
  opacity:1 !important;
}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button:hover :is(.nav-ref-icon,.nav-icon) {color:var(--release-primary) !important;}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button.active :is(.nav-ref-icon,.nav-icon) {color:var(--icon-accent) !important;}
body[data-theme][data-current-tab="leads"] #tab-leads .overview-reference .ov-metric-label .ov-metric-icon  {width:32px !important;height:32px !important;flex:0 0 32px !important;box-sizing:border-box !important;padding:0 !important;border-radius:0 !important;display:block !important;align-self:center !important;}
body[data-theme="light"][data-current-tab="leads"] #tab-leads .overview-reference .ov-metric-label .ov-metric-icon {color:var(--release-muted) !important;stroke:currentColor !important;background:transparent !important;border:0 !important;opacity:1 !important;stroke-width:2.1 !important;filter:none !important;}

/* KPI marks remain visible and easier to scan in the dark overview too. */
body[data-theme="dark"][data-current-tab="leads"] #tab-leads .overview-reference .ov-metric-label .ov-metric-icon {
  width:32px !important;
  height:32px !important;
  flex:0 0 32px !important;
  box-sizing:border-box !important;
  padding:0 !important;
  color:var(--release-primary) !important;
  stroke:currentColor !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  stroke-width:2.1 !important;
  display:block !important;
  align-self:center !important;
}

/* DOM uses SVG directly in .nav-label. Reserve first grid column as fixed icon slot. */
body.sidebar-collapsed[data-current-tab] #app .sidebar {padding-inline:15px !important;}
body[data-current-tab] #app .sidebar .nav-label,
body.sidebar-collapsed[data-current-tab] #app .sidebar .nav-label {
  display:grid !important;
  grid-template-columns:var(--sidebar-icon-slot) minmax(0,1fr) !important;
  align-items:center !important;
  width:100% !important;
  padding-left:10px !important;
  gap:0 !important;
}
body[data-current-tab] #app .sidebar .nav-label > :first-child,
body.sidebar-collapsed[data-current-tab] #app .sidebar .nav-label > :first-child {
  display:block !important;
  place-self:center start !important;
  flex:0 0 var(--sidebar-icon-size) !important;
  width:var(--sidebar-icon-size) !important;
  height:var(--sidebar-icon-size) !important;
  min-width:var(--sidebar-icon-size) !important;
  min-height:var(--sidebar-icon-size) !important;
  padding:0 !important;
  margin:0 !important;
}
body[data-current-tab] #app .sidebar .nav-label > span:last-child {margin:0 !important;}

/* Preserve vertical icon coordinates too: collapsed nav keeps expanded top rhythm. */
body.sidebar-collapsed[data-current-tab] #app .sidebar > .sidebar-nav {
  align-items:stretch !important;
  padding:22px 0 12px !important;
  gap:2px !important;
}

/* Theme tokens shared by legacy component surfaces. */
body[data-theme="light"][data-current-tab] #app {
  --app-bg:var(--release-bg);
  --surface-secondary:var(--release-soft);
  --surface-tertiary:var(--release-soft);
  --text-primary:var(--release-text);
  --text-secondary:var(--release-muted);
  --text-muted:var(--release-muted);
  --border-strong:var(--release-line);
  --button-bg:var(--release-bg);
  --button-hover:var(--release-soft);
  --button-text:var(--release-text);
  --code-bg:var(--release-soft);
  --code-text:var(--release-text);
  --preview-bg:var(--release-card);
}

/* Vacancies: neutral action surfaces, including “К кандидатам”. */
body[data-theme="light"][data-current-tab="vacancies"] #tab-vacancies :is(
  .vacancies-ref-kpis > article,.vacancies-ref-table,.vacancy-card,.vacancy-invite-panel
) {background:var(--surface) !important;border-color:var(--border) !important;color:var(--text-primary) !important;}
body[data-theme="light"][data-current-tab="vacancies"] #tab-vacancies :is(
  .vacancies-ref-search input,.vacancies-ref-filters select,.vacancies-ref-table td:last-child > button,
  .vacancy-card button,.vacancy-invite-panel button
) {background:var(--button-bg) !important;border-color:var(--border-strong) !important;color:var(--button-text) !important;}
body[data-theme="light"][data-current-tab="vacancies"] #tab-vacancies :is(
  .vacancies-ref-table td:last-child > button,.vacancy-card button,.vacancy-invite-panel button
):hover {background:var(--button-hover) !important;border-color:var(--release-line) !important;color:var(--release-text) !important;}
body[data-theme="light"][data-current-tab="vacancies"] #tab-vacancies :is(table,thead,tbody,tr) {background:transparent !important;color:var(--text-primary) !important;}
body[data-theme="light"][data-current-tab="vacancies"] #tab-vacancies th {background:var(--surface-secondary) !important;color:var(--text-secondary) !important;border-color:var(--border) !important;}
body[data-theme="light"][data-current-tab="vacancies"] #tab-vacancies td {color:var(--text-primary) !important;border-color:var(--release-line) !important;}

/* Mailing: code chip and message preview are theme-aware technical surfaces. */
body[data-theme="light"][data-current-tab="telethon-mailing"] #tab-telethon-mailing .tg-spintax-help code {
  background:var(--code-bg) !important;
  border-color:var(--border-strong) !important;
  color:var(--code-text) !important;
}
body[data-theme="light"][data-current-tab="telethon-mailing"] #tab-telethon-mailing :is(
  .tg-spintax-preview,.tg-mailing-preview span,.tg-mailing-accounts label,.tg-mailing-metrics span
) {background:var(--preview-bg) !important;border-color:var(--border) !important;color:var(--text-secondary) !important;}
body[data-theme="light"][data-current-tab="telethon-mailing"] #tab-telethon-mailing .tg-spintax-preview.is-error {background:var(--release-card) !important;border-color:#e9b87d !important;color:#9a5312 !important;}
body[data-theme="light"][data-current-tab="telethon-mailing"] #tab-telethon-mailing .tg-mailing-drop:hover {background:var(--release-card) !important;border-color:var(--release-line) !important;}
body[data-theme="light"][data-current-tab="telethon-mailing"] #tab-telethon-mailing .tg-mailing-progress {background:var(--release-soft) !important;}

/* Automation: local dark status and queue surfaces receive light semantic variants. */
body[data-theme="light"][data-current-tab="automation"] #tab-automation {
  --ai-canvas:var(--app-bg);--ai-panel:var(--surface);--ai-raised:var(--surface-secondary);
  --ai-border:var(--border);--ai-ink:var(--text-primary);--ai-muted:var(--text-secondary);--ai-accent:var(--release-primary);
}
body[data-theme="light"][data-current-tab="automation"] #tab-automation :is(
  .ai-agent-hero,.ai-agent-panel,.ai-agent-status.off,.ai-agent-toggle,.ai-agent-hero-head > button
) {background:var(--surface-secondary) !important;border-color:var(--border) !important;color:var(--text-primary) !important;}
body[data-theme="light"][data-current-tab="automation"] #tab-automation .ai-agent-toggle.is-enabled {
  background:var(--release-soft) !important;border-color:var(--release-line) !important;color:var(--release-primary) !important;
}
body[data-theme="light"][data-current-tab="automation"] #tab-automation :is(.ai-agent-table-row,.ai-agent-panel footer,.ai-agent-hero-metrics > span) {border-color:var(--border) !important;}
body[data-theme="light"][data-current-tab="automation"] #tab-automation .ai-agent-table-row {color:var(--text-secondary) !important;}

/* The automation hero contains a 125px metrics row; never crop it to the legacy 138px height. */
body[data-current-tab="automation"] #app #tab-automation .ai-agent-hero {
  height:auto !important;
  min-height:0 !important;
}

/* Do not stretch the “Create agent” card to the height of the adjacent sessions list. */
#tab-ai-agent .ai-agent-card-grid {
  align-items:start !important;
}
#tab-ai-agent .ai-agent-new-card {
  align-self:start !important;
  height:auto !important;
}

/* Local dark interaction states not covered by generic cards. */
body[data-theme="light"][data-current-tab] #app .tab-pane :is(.secondary,.ghost,.table-action,.row-action):not(.danger) {
  background:var(--button-bg);border-color:var(--border-strong);color:var(--button-text);
}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(.secondary,.ghost,.table-action,.row-action):not(.danger):hover {
  background:var(--button-hover);border-color:var(--release-line);color:var(--release-text);
}

/* Messenger account rows: light theme keeps channel and status accents light. */
body[data-theme="light"][data-current-tab="crm-messengers"] #tab-crm-messengers .msg-channel-icon {
  background:var(--release-soft) !important;
  color:var(--release-primary) !important;
  border:1px solid var(--release-line);
}
body[data-theme="light"][data-current-tab="crm-messengers"] #tab-crm-messengers .msg-channel-icon--max {
  background:var(--release-card) !important;
  color:var(--release-primary) !important;
  border-color:var(--release-line);
}
body[data-theme="light"][data-current-tab="crm-messengers"] #tab-crm-messengers .msg-account-row > span:nth-child(4) {
  background:var(--release-soft) !important;
  color:var(--release-primary) !important;
}
body[data-theme="light"][data-current-tab="crm-messengers"] #tab-crm-messengers .msg-sync-ok {
  color:var(--release-primary) !important;
}
body[data-theme="light"][data-current-tab="crm-messengers"] #tab-crm-messengers .msg-sync-ok svg {
  background:var(--release-soft) !important;
  color:var(--release-primary) !important;
}

/* Automation header status and Content Bot mark. */
body[data-theme="light"][data-current-tab="automation"] #tab-automation .ai-agent-icon {
  background:var(--release-soft) !important;
  border-color:var(--release-line) !important;
  color:var(--release-primary) !important;
}
body[data-theme="light"][data-current-tab="automation"] #tab-automation .ai-agent-state {
  background:var(--release-soft) !important;
  border-color:var(--release-line) !important;
  color:var(--release-primary) !important;
}

/* Extend the light header surface; keep controls aligned with the content gutter. */
body[data-theme][data-current-tab] #app > header  {margin-left:var(--shell-sidebar) !important;margin-right:0 !important;padding-inline:var(--shell-gutter) !important;}
@media (max-width:980px) {
  body[data-theme][data-current-tab]:not(.sidebar-desktop-mode) #app > header  {margin-left:0 !important;}
}
@media (max-width:768px) {
  body[data-theme][data-current-tab] #app > header  {padding-inline:0 !important;}
  body.sidebar-desktop-mode[data-theme][data-current-tab] #app > header  {padding-inline:var(--shell-gutter) !important;}
  body[data-theme][data-current-tab="leads"] #app > header  {padding-inline:12px !important;}
  body.sidebar-desktop-mode[data-theme][data-current-tab="leads"] #app > header  {padding-inline:calc(var(--shell-gutter) + 12px) !important;}
}

/* Sources: compact rows using the application's active theme. */
#tab-sources {--sources-accent:var(--release-primary);--sources-panel:var(--release-card);--sources-line:var(--release-line);--sources-copy:var(--release-muted);}
body[data-theme="light"] #tab-sources {--sources-accent:var(--release-primary);--sources-panel:var(--release-card);--sources-line:var(--release-line);--sources-copy:var(--release-muted);}
#tab-sources .settings-card:has(#source-controls) {background:var(--sources-panel)!important;border-color:var(--sources-line)!important;padding:24px!important;}
#tab-sources .settings-card:has(#source-controls) h2 {font-size:20px;line-height:1.3;margin-bottom:8px;}
#tab-sources .settings-card:has(#source-controls) .page-subtitle {color:var(--sources-copy)!important;font-size:14px;max-width:680px;line-height:1.5;margin-bottom:20px;}
#source-controls .maintenance-control {background:transparent!important;border:0!important;border-bottom:1px solid var(--sources-line)!important;border-radius:0;padding:16px 0;margin:0;min-height:72px;gap:16px;box-shadow:none!important;}
#source-controls .maintenance-control:last-child {border-bottom:0!important;}
#source-controls .maintenance-control__label {font-size:15px;font-weight:600;margin-bottom:4px;}
#source-controls .maintenance-control__hint {font-size:12px;color:var(--sources-copy)!important;}
#source-controls .toggle-switch {width:48px;height:44px;align-items:center;flex:0 0 48px;}
#source-controls .toggle-switch__track {width:44px;height:24px;padding:0;border:1px solid var(--sources-line)!important;background:var(--sources-panel)!important;box-shadow:none!important;transition:background-color .16s ease,border-color .16s ease;}
#source-controls .toggle-switch__thumb {width:16px;height:16px;left:3px;top:3px;background:var(--sources-copy)!important;box-shadow:none!important;transition:transform .16s ease,background-color .16s ease;}
#source-controls .toggle-switch input:checked + .toggle-switch__track {background:var(--sources-accent)!important;border-color:var(--sources-accent)!important;}
#source-controls .toggle-switch input:checked + .toggle-switch__track .toggle-switch__thumb {transform:translateX(20px);background:var(--sources-panel)!important;}
#source-controls .toggle-switch__off,#source-controls .toggle-switch__on {display:none;}
#source-controls .toggle-switch input:focus-visible + .toggle-switch__track {outline:2px solid var(--sources-accent);outline-offset:4px;}
@media(max-width:560px){#tab-sources .settings-card:has(#source-controls){padding:18px!important;}}

/* Messenger SVGs: preserve a readable 24px drawing inside a 44px tile. */
body[data-current-tab="crm-messengers"] #app .msg-kpis article>svg {box-sizing:border-box;width:44px;height:44px;min-width:44px;padding:10px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;color:var(--release-primary);background:var(--release-soft);border-radius:12px;}
body[data-theme="light"][data-current-tab="crm-messengers"] #app .msg-kpis article>svg {color:var(--release-primary);background:var(--release-soft);}
body[data-current-tab="crm-messengers"] #app .msg-channel-icon {width:36px;height:36px;border-radius:10px;flex-shrink:0;}
body[data-current-tab="crm-messengers"] #app .msg-channel-icon svg {box-sizing:border-box;width:22px;height:22px;padding:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
body[data-current-tab="crm-messengers"] #app .msg-sync-ok svg {box-sizing:border-box;width:16px;height:16px;padding:0;flex-shrink:0;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}

/* Settings toolbar uses the same panel surface as the integration cards. */
body[data-current-tab="crm-settings"] #app .crm-settings-toolbar {background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:none!important;}

/* Agent workspace: one palette and a consistent outline icon system. */
#tab-ai-agent {--agent-accent:var(--release-primary);--agent-tint:var(--release-soft);--agent-panel:var(--release-card);--agent-canvas:var(--release-bg);--agent-border:var(--release-line);--agent-copy:var(--release-muted);}
body[data-theme="light"] #tab-ai-agent {--agent-accent:var(--release-primary);--agent-tint:var(--release-soft);--agent-panel:var(--release-card);--agent-canvas:var(--release-bg);--agent-border:var(--release-line);--agent-copy:var(--release-muted);}
#tab-ai-agent :is(.ai-agent-card,.ai-editor-instructions,.ai-editor-test,.ai-editor-variable-card,.ai-editor-channel-row){background:var(--agent-panel)!important;border-color:var(--agent-border)!important;box-shadow:none!important;border-radius:12px;}
#tab-ai-agent :is(.ai-editor-head,.ai-editor-tabs,.ai-editor-toolbar,.ai-editor-prompt-box footer,.ai-editor-test>header){background:var(--agent-panel)!important;background-image:none!important;border-color:var(--agent-border)!important;box-shadow:none!important;}
#tab-ai-agent :is(.ai-agent-editor,.ai-editor-workspace){background:var(--agent-canvas)!important;}
#tab-ai-agent :is(input,select,textarea,.ai-agent-prompt){background:var(--agent-canvas)!important;border-color:var(--agent-border)!important;color:var(--text)!important;border-radius:8px;}
#tab-ai-agent .agent-ui-icon {box-sizing:border-box;width:20px;height:20px;padding:0;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;}
#tab-ai-agent :is(.ai-agent-avatar,.ai-editor-section-icon,.ai-editor-head-icon){display:grid;place-items:center;background:var(--agent-tint)!important;color:var(--agent-accent)!important;border:0!important;border-radius:10px;box-shadow:none!important;}
#tab-ai-agent :is(.ai-agent-avatar,.ai-editor-section-icon) {width:44px;height:44px;min-width:44px;}
#tab-ai-agent :is(.ai-agent-avatar,.ai-editor-section-icon,.ai-editor-head-icon) svg {box-sizing:border-box;width:24px;height:24px;padding:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
#tab-ai-agent .ai-editor-test-empty>strong {display:grid;place-items:center;width:64px;height:64px;background:var(--agent-tint)!important;color:var(--agent-accent)!important;border-radius:16px;box-shadow:none!important;}
#tab-ai-agent .ai-editor-test-empty>strong svg{width:32px;height:32px;}
#tab-ai-agent .ai-editor-tabs button {display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;}
#tab-ai-agent .ai-editor-tabs button.is-active{color:var(--agent-accent)!important;border-bottom-color:var(--agent-accent)!important;}
#tab-ai-agent .ai-editor-test>header button {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;font-size:13px;}
#tab-ai-agent .ai-editor-test>header{padding:10px 16px;gap:8px;}
#tab-ai-agent :is(.ai-editor-back,.ai-editor-help){display:grid;place-items:center;width:40px;height:40px;border-radius:8px;color:var(--agent-copy);}
#tab-ai-agent .ai-agent-card:hover{border-color:var(--agent-accent)!important;}
#tab-ai-agent :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--agent-accent);outline-offset:3px;}
#tab-ai-agent .ai-editor-instructions{padding:24px;}
#tab-ai-agent .ai-editor-instructions>header h2{font-size:20px;line-height:1.35;}
#tab-ai-agent .ai-editor-workspace{gap:16px;}
#tab-ai-agent .ai-editor-test-messages .assistant{background:var(--agent-panel)!important;border:1px solid var(--agent-border);color:var(--text)!important;}
@media(max-width:700px){#tab-ai-agent .ai-editor-instructions{padding:16px;}#tab-ai-agent .ai-editor-test>header{flex-wrap:wrap;}#tab-ai-agent .ai-editor-test>header button{padding:6px 8px;}}
@media(max-width:700px){#tab-ai-agent .ai-agent-editor{margin:0!important;width:100%;min-width:0;}#tab-ai-agent .ai-editor-workspace{box-sizing:border-box;width:100%;min-width:0;}#tab-ai-agent .ai-editor-breadcrumb{min-width:0;}#tab-ai-agent .ai-editor-breadcrumb h1{overflow-wrap:anywhere;}}

/* Neutral controls inherit application surfaces instead of legacy gray bg3. */
#app .tab-pane :is(.checkbox-control,.maintenance-control,.readonly-info,.readonly-info span) {background:var(--surface)!important;background-image:none!important;border-color:var(--border)!important;box-shadow:none!important;}
#app .tab-pane .toggle-switch__track {background:var(--surface)!important;background-image:none!important;border-color:var(--border)!important;box-shadow:none!important;}
#app .tab-pane .toggle-switch__thumb {background:var(--release-soft)!important;box-shadow:none!important;}
#app .tab-pane .toggle-switch input:checked + .toggle-switch__track {background:var(--release-soft)!important;border-color:var(--release-line)!important;}
#app .tab-pane .toggle-switch input:checked + .toggle-switch__track .toggle-switch__thumb {background:var(--release-card)!important;}
#app .tab-pane .toggle-switch__on {color:var(--release-text)!important;}
body[data-theme="light"] #app .tab-pane .toggle-switch__thumb {background:var(--release-soft)!important;}
body[data-theme="light"] #app .tab-pane .toggle-switch input:checked + .toggle-switch__track {background:var(--release-soft)!important;border-color:var(--release-line)!important;}
body[data-theme="light"] #app .tab-pane .toggle-switch input:checked + .toggle-switch__track .toggle-switch__thumb {background:var(--release-card)!important;}
body[data-theme="light"] #app .tab-pane .toggle-switch__on {color:var(--release-text)!important;}

/* Neutral light system: one font, one action hierarchy, semantic status colors. */
body[data-theme][data-current-tab],
body[data-theme][data-current-tab] #app  {font-family:var(--ui-font,"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif);}
/* Neutral light system: one font, one action hierarchy, semantic status colors. */
body[data-theme="light"][data-current-tab],
body[data-theme="light"][data-current-tab] #app {color-scheme:light;}
body[data-theme][data-current-tab] #app :is(button,input,select,textarea,summary,h1,h2,h3,.page-title,.page-subtitle,.ov-subtitle,.overview-reference)  {font-family:var(--ui-font);}
body[data-theme][data-current-tab] #app .tab-pane :is(.page-title,.offers-title,.settings-title,.offers-toolbar-title),
body[data-theme][data-current-tab="leads"] #app .overview-reference h1  {font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.4px;margin:0;}
body[data-theme][data-current-tab] #app .tab-pane :is(h2,h3,.section-title)  {font-size:16px;line-height:24px;font-weight:600;letter-spacing:-.15px;}
body[data-theme][data-current-tab] #app .tab-pane :is(.page-subtitle,.ov-subtitle)  {font-size:14px;line-height:20px;}
body[data-theme="light"][data-current-tab] #app :is(button,input,select,textarea,summary):focus-visible {outline:2px solid var(--ui-focus);outline-offset:3px;}
body[data-theme][data-current-tab] #app .tab-pane :is(.btn-primary,.btn-action.primary),
body[data-theme][data-current-tab="leads"] #app .overview-reference .ov-btn.ov-primary  {font-weight:600;}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(.btn-primary,.btn-action.primary),
body[data-theme="light"][data-current-tab="leads"] #app .overview-reference .ov-btn.ov-primary {background:var(--ui-action-bg) !important;border-color:var(--ui-action-bg) !important;color:var(--ui-action-ink) !important;box-shadow:none;}
body[data-theme="light"][data-current-tab] #app .tab-pane :is(.btn-primary,.btn-action.primary):hover,
body[data-theme="light"][data-current-tab="leads"] #app .overview-reference .ov-btn.ov-primary:hover {background:var(--ui-action-hover) !important;border-color:var(--ui-action-hover) !important;}
body[data-theme][data-current-tab] #app .tab-pane :is(.btn-sm,.btn-action,.btn-primary,.btn-secondary),
body[data-theme][data-current-tab="leads"] #app .overview-reference :is(.ov-btn,.ov-filter,.ov-date)  {font-size:14px;line-height:20px;min-height:36px;border-radius:10px;}
body[data-theme][data-current-tab="leads"] #app .overview-reference .ov-date-label  {font-size:14px;line-height:20px;}
body[data-theme][data-current-tab] #app .tab-pane :is(table,th,td)  {font-size:13px;}
body[data-theme][data-current-tab] #app .tab-pane th  {font-size:12px;}
body[data-theme][data-current-tab="leads"] #app .overview-reference :is(.ov-panel,.ov-metrics)  {border-radius:12px;}
body[data-theme="light"][data-current-tab="leads"] #app .overview-reference :is(.ov-panel,.ov-metrics) {box-shadow:none;border-color:var(--border);}
body[data-theme="light"][data-current-tab="leads"] #app .overview-reference .ov-metric-icon {color:var(--release-muted);}
body[data-theme="light"][data-current-tab] #app .sidebar .sidebar-nav button.active .nav-ref-icon {color:var(--release-text) !important;}
body[data-theme][data-current-tab] #app :is(.empty,.source-chart-empty)  {font-size:13px;line-height:20px;}
body[data-theme="light"][data-current-tab] ::selection {background:var(--release-soft);color:var(--release-text);}
/* Keep the authored scrollbar width in both themes; thumb colors use shared tokens. */
@media (pointer:coarse) {
  body[data-theme][data-current-tab] #app .tab-pane :is(.btn-sm,.btn-action,.btn-primary,.btn-secondary,.ov-btn,.ov-date)  {min-height:44px;}
}

/* AI editor: one optical grid and equal icon weight. */
#tab-ai-agent :is(.agent-ui-icon,.ai-editor-section-icon svg,.ai-editor-head-icon svg){width:20px;height:20px;stroke-width:2;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
#tab-ai-agent .ai-editor-toolbar{gap:8px;min-height:44px;}
#tab-ai-agent .ai-editor-toolbar>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;}
#tab-ai-agent .ai-editor-test-empty>strong svg{width:32px;height:32px;stroke-width:1.8;}
#tab-ai-agent .ai-editor-test>form button svg{width:22px;height:22px;}
#tab-ai-agent .ai-editor-test>header button svg{width:18px;height:18px;}
/* Mailing metrics form one balanced group, without nested card borders. */
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--release-line);border-radius:12px;background:var(--release-card);overflow:hidden;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics>span{min-width:0;display:flex;flex-direction:column;gap:6px;padding:18px 20px;border:0;border-right:1px solid var(--release-line);border-radius:0;background:transparent;color:var(--release-muted);font-size:13px;line-height:20px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics>span:last-child{border-right:0;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics strong{font-size:26px;line-height:32px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--release-text);}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-log{margin-top:16px;padding:12px 0 0;border-top:1px solid var(--release-line);border-radius:0;background:transparent;font-family:inherit;font-size:13px;line-height:20px;overflow-wrap:anywhere;color:var(--release-muted);}
#tg-mailing-log[data-kind="error"]{color:var(--red)!important;}
#tg-mailing-status-label[hidden]{display:none!important;}
@media(max-width:680px){
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics>span{padding:14px 16px;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics>span:nth-child(2){border-right:0;}
body[data-current-tab="telethon-mailing"] #app .tg-mailing-metrics>span:nth-child(-n+2){border-bottom:1px solid var(--release-line);}
}

.warmup-days { display:flex; flex-wrap:wrap; gap:8px; border:0; padding:0; margin:16px 0; }
.warmup-days legend { margin-bottom:10px; }
.warmup-days label { display:flex; align-items:center; gap:7px; padding:10px 12px; border:1px solid var(--border, #555); border-radius:10px; cursor:pointer; }
.warmup-days input { width:18px; height:18px; accent-color:var(--text, #888); }
.warmup-time-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.warmup-time-grid input { min-width:0; width:100%; }
@media(max-width:480px) { .warmup-time-grid { gap:10px; } .warmup-days label { padding:10px; } }

/* networks-reference.css */
/* Measured reference primitives; scoped to partner networks. */
#app #tab-crm-networks {
  --net-raw-canvas:var(--release-bg);
  --net-raw-surface:var(--release-card);
  --net-raw-border:var(--release-line);
  --net-raw-accent: var(--release-primary);
  --net-surface: var(--net-raw-surface);
  --net-border: var(--net-raw-border);
  --net-accent: var(--net-raw-accent);
  --net-ink:var(--release-text);
  --net-muted: var(--text3, var(--release-muted));
  --net-radius: 8px;
}
body[data-theme="light"] #app #tab-crm-networks {
  --net-surface: var(--bg2);
  --net-border: var(--border);
  --net-accent: var(--release-primary);
}
#app #tab-crm-networks .networks-page-head { gap: 20px; margin-bottom: 24px; }
#app #tab-crm-networks .page-title { text-wrap: balance; }
#app #tab-crm-networks .page-actions { display: flex; gap: 12px; }
#app #tab-crm-networks .network-refresh { width: 40px; height: 40px; padding: 0; display: grid; place-items: center; }
#app #tab-crm-networks .network-connect { min-height: 40px; display: inline-flex; align-items: center; gap: 8px; padding: 0 16px; background: var(--net-raw-accent); color: var(--release-on); border-color: transparent; font-weight: 600; }
#app #tab-crm-networks .network-connect > span { font-size: 22px; font-weight: 400; }
#app #tab-crm-networks .networks-table-wrap { border: 1px solid var(--net-border); border-radius: var(--net-radius); overflow-x: auto; background: var(--net-surface); }
#app #tab-crm-networks .networks-table { width: 100%; border-collapse: collapse; text-align: left; white-space: nowrap; font-size: 14px; }
#app #tab-crm-networks .networks-table th { height: 52px; padding: 0 24px; color: var(--text2); font-weight: 400; font-size: 13px; }
#app #tab-crm-networks .networks-table td { height: 59px; padding: 0 24px; border-top: 1px solid var(--net-border); color: var(--net-ink); }
#app #tab-crm-networks .networks-table th:first-child { width: 20%; }
#app #tab-crm-networks .network-name { font-weight: 500; }
#app #tab-crm-networks .network-number, #app #tab-crm-networks .network-time { font-variant-numeric: tabular-nums; }
#app #tab-crm-networks td.network-time { color: var(--net-muted); }
#app #tab-crm-networks .network-state { display: inline-flex; align-items: center; gap: 10px; color: var(--text2); }
#app #tab-crm-networks .network-state::before { content: ''; width: 8px; height: 8px; flex-shrink: 0; border-radius: 50%; background: var(--net-muted); }
#app #tab-crm-networks .network-state--ok::before { background: var(--net-accent); }
#app #tab-crm-networks .network-state--warning::before { background: var(--yellow, #efbd20); }
#app #tab-crm-networks .network-configure { display: inline-flex; align-items: center; justify-content: flex-end; gap: 10px; min-height: 40px; padding: 0 4px; border: 0; background: transparent; color: var(--net-accent); font: inherit; cursor: pointer; }
#app #tab-crm-networks .networks-table td:last-child { text-align: right; }
#app #tab-crm-networks .network-configure:hover { text-decoration: underline; text-underline-offset: 4px; }
#app #tab-crm-networks button:focus-visible { outline: 2px solid var(--net-accent); outline-offset: 3px; }
#app #tab-crm-networks .network-note { margin: 16px 0 0; color: var(--net-muted); font-size: 13px; }
#app #tab-crm-networks .network-sr-only { position: absolute; left: 0; top: 0; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 640px) {
  #app #tab-crm-networks .networks-page-head { flex-wrap: wrap; }
  #app #tab-crm-networks .networks-table th, #app #tab-crm-networks .networks-table td { padding-left: 16px; padding-right: 16px; }
  #app #tab-crm-networks button { min-height: 44px; }
  #app #tab-crm-networks .network-refresh { width: 44px; }
}

/* crm-leads-reference.css */
/* Measured from the 1280Г—720 reference. All rules are confined to CRM leads. */
#tab-crm-leads {
  --lead-raw-canvas:var(--release-bg);--lead-raw-panel:var(--release-card);--lead-raw-row:var(--release-card);
  --lead-raw-border:var(--release-line);--lead-raw-ink:var(--release-text);--lead-raw-body:var(--release-muted);--lead-raw-muted:var(--release-muted);
  --lead-raw-accent:var(--release-primary);--lead-raw-warn:#e8ad17;--lead-raw-info:var(--release-primary);
  --lead-raw-interview:var(--release-primary);--lead-raw-danger:#db6962;
  --lead-canvas:var(--lead-raw-canvas);--lead-panel:var(--lead-raw-panel);--lead-row:var(--lead-raw-row);--lead-border:var(--lead-raw-border);
  --lead-ink:var(--lead-raw-ink);--lead-body:var(--lead-raw-body);--lead-muted:var(--lead-raw-muted);--lead-accent:var(--lead-raw-accent);
  --lead-warn:var(--lead-raw-warn);--lead-info:var(--lead-raw-info);--lead-interview:var(--lead-raw-interview);--lead-danger:var(--lead-raw-danger);
  font-family:Arial,sans-serif;
}
body[data-theme="light"] #tab-crm-leads {
  --lead-canvas:var(--release-bg);--lead-panel:var(--release-card);--lead-row:var(--release-soft);--lead-border:var(--release-line);--lead-ink:var(--release-text);--lead-body:var(--release-text);--lead-muted:var(--release-muted);
  --lead-accent:var(--release-primary);--lead-warn:#896000;--lead-info:var(--release-primary);--lead-interview:var(--release-primary);--lead-danger:#b3322b;
}
#app #tab-crm-leads .crm-leads-head {min-height:37px;margin-bottom:8px;align-items:center;}
#app #tab-crm-leads .page-title {font:600 21px/24px Arial,sans-serif;letter-spacing:0;color:var(--lead-ink);}
#app #tab-crm-leads .page-subtitle {margin-top:1px;font:11px/12px Arial,sans-serif;color:var(--lead-muted);}
#app #tab-crm-leads .crm-leads-ready {display:none;}
#app #tab-crm-leads .crm-leads-refresh {min-height:32px;padding:6px 12px;border-radius:5px;font-size:11px;}
#app #tab-crm-leads .crm-leads-filters {grid-template-columns:1fr 1.02fr .94fr 1.2fr;gap:16px;margin:8px 0 12px;}
#app #tab-crm-leads :is(.crm-leads-search,.crm-leads-filter,.crm-leads-dates) {height:30px;background:var(--lead-panel);border:1px solid var(--lead-border);border-radius:5px;color:var(--lead-muted);font:11px Arial,sans-serif;}
#app #tab-crm-leads .crm-leads-search>span {display:flex;transform:none;}
#app #tab-crm-leads .crm-leads-search svg {width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;}
#app #tab-crm-leads :is(.crm-leads-search input,.crm-leads-filter select,.crm-leads-dates input) {min-height:0;height:100%;border:0!important;border-radius:0;background:transparent!important;color:var(--lead-ink);font:11px Arial,sans-serif;box-shadow:none;padding-top:0;padding-bottom:0;}
#app #tab-crm-leads :is(.crm-leads-search,.crm-leads-filter,.crm-leads-dates):focus-within {outline:2px solid var(--lead-accent);outline-offset:2px;}
#app #tab-crm-leads :is(.crm-leads-filter,.crm-leads-dates)>span {border-color:var(--lead-border);font-size:10px;}
#app #tab-crm-leads select option {background:var(--lead-panel);color:var(--lead-ink);}
#app #tab-crm-leads .crm-leads-kpis {gap:16px;margin-bottom:12px;}
#app #tab-crm-leads .crm-leads-kpis article {min-height:68px;height:68px;padding:10px 14px;gap:12px;border:1px solid var(--lead-border);border-radius:6px;background:var(--lead-panel);box-shadow:none;}
#app #tab-crm-leads .crm-leads-kpis small {font:10px/14px Arial,sans-serif;color:var(--lead-muted);margin:0 0 2px;}
#app #tab-crm-leads .crm-leads-kpis strong {font:500 22px/25px Arial,sans-serif;color:var(--lead-ink);font-variant-numeric:tabular-nums;}
#app #tab-crm-leads .crm-leads-metric-icon {width:42px;height:42px;flex:0 0 42px;background:color-mix(in srgb,var(--lead-accent) 12%,transparent);color:var(--lead-accent);}
#app #tab-crm-leads .crm-leads-metric-icon--new {color:var(--lead-warn);background:color-mix(in srgb,var(--lead-warn) 12%,transparent);}
#app #tab-crm-leads .crm-leads-metric-icon--work {color:var(--lead-info);background:color-mix(in srgb,var(--lead-info) 12%,transparent);}
#app #tab-crm-leads .crm-leads-metric-icon svg {width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
#app #tab-crm-leads .crm-leads-metric-note {margin-left:auto;text-align:right;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:3px 0;font-size:11px;color:var(--lead-muted);}
#app #tab-crm-leads .crm-leads-metric-note small {font-size:9px;margin:0;white-space:nowrap;}
#app #tab-crm-leads .crm-leads-table-shell {border:1px solid var(--lead-border);border-radius:6px;background:var(--lead-row);overflow:hidden;box-shadow:none;}
#app #tab-crm-leads .crm-leads-table-wrap table {background:var(--lead-row);color:var(--lead-ink);font:11px Arial,sans-serif;}
#app #tab-crm-leads .crm-leads-table-wrap th {height:34px;padding:0 14px;background:var(--lead-row);border-color:var(--lead-border);font:500 9px Arial,sans-serif;color:var(--lead-muted);letter-spacing:.025em;width:auto;text-transform:uppercase;}
#app #tab-crm-leads .crm-leads-table-wrap td {height:27.333px;padding:0 14px;background:transparent;border-color:var(--lead-border);color:var(--lead-body);font:11px Arial,sans-serif;}
#app #tab-crm-leads .crm-leads-table-wrap tr:hover td {background:color-mix(in srgb,var(--lead-accent) 5%,var(--lead-row));}
#app #tab-crm-leads .lead-col-id {width:8%;}#app #tab-crm-leads .lead-col-name {width:16%;}#app #tab-crm-leads .lead-col-source {width:15.5%;}#app #tab-crm-leads .lead-col-status {width:13%;}#app #tab-crm-leads .lead-col-offer {width:25%;}#app #tab-crm-leads .lead-col-created {width:12%;}#app #tab-crm-leads .lead-col-action {width:10.5%;}
#app #tab-crm-leads .crm-lead-name {display:inline;padding:0;min-height:0;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:0;background:none;border-radius:0;text-decoration:underline;text-underline-offset:2px;color:var(--lead-accent);font:11px Arial,sans-serif;text-align:left;cursor:pointer;}
#app #tab-crm-leads .crm-lead-open {display:inline-flex;align-items:center;gap:6px;min-height:22px;min-width:0;padding:2px 7px;border:1px solid var(--lead-border);border-radius:4px;background:var(--lead-panel);color:var(--lead-ink);font:10px Arial,sans-serif;cursor:pointer;white-space:nowrap;}
#app #tab-crm-leads .crm-lead-open svg {width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;}
#app #tab-crm-leads .crm-lead-source {gap:6px;}
#app #tab-crm-leads .crm-lead-source i {display:grid;place-items:center;flex:0 0 18px;width:18px;height:18px;border-radius:50%;color:white;background:var(--release-soft);box-shadow:none;}
#app #tab-crm-leads .crm-lead-source i.crm-lead-source--telegram {background:var(--release-soft);}
#app #tab-crm-leads .crm-lead-source i.crm-lead-source--max {background:linear-gradient(135deg,var(--release-soft),var(--release-soft));font:700 11px Arial,sans-serif;}
#app #tab-crm-leads .crm-lead-source i.crm-lead-source--form {background:var(--release-soft);}
#app #tab-crm-leads .crm-lead-source svg {width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7;}
#app #tab-crm-leads .crm-lead-badge {display:inline-block;padding:3px 7px;border-radius:3px;font:600 9px/11px Arial,sans-serif;text-transform:uppercase;color:var(--lead-muted);background:color-mix(in srgb,var(--lead-muted) 13%,transparent);}
#app #tab-crm-leads .crm-lead-badge--new {color:var(--lead-warn);background:color-mix(in srgb,var(--lead-warn) 14%,transparent);}
#app #tab-crm-leads .crm-lead-badge--work {color:var(--lead-info);background:color-mix(in srgb,var(--lead-info) 14%,transparent);}
#app #tab-crm-leads .crm-lead-badge--interview {color:var(--lead-interview);background:color-mix(in srgb,var(--lead-interview) 14%,transparent);}
#app #tab-crm-leads .crm-lead-badge--success {color:var(--lead-accent);background:color-mix(in srgb,var(--lead-accent) 14%,transparent);}
#app #tab-crm-leads .crm-lead-badge--rejected {color:var(--lead-danger);background:color-mix(in srgb,var(--lead-danger) 14%,transparent);}
#app #tab-crm-leads .crm-leads-footer {position:relative;min-height:46px;gap:12px;padding:8px 14px;background:var(--lead-panel);color:var(--lead-muted);border-color:var(--lead-border);font:10px Arial,sans-serif;}
#app #tab-crm-leads .crm-leads-footer label {display:flex;align-items:center;gap:8px;white-space:nowrap;}
#app #tab-crm-leads .crm-leads-footer select {width:68px;height:27px;min-height:0;padding:0 8px;border:1px solid var(--lead-border);border-radius:4px;background:var(--lead-row);color:var(--lead-ink);font:11px Arial,sans-serif;}
#app #tab-crm-leads .crm-leads-range {position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;}
#app #tab-crm-leads .crm-leads-footer nav {display:flex;align-items:center;gap:8px;}
#app #tab-crm-leads .crm-leads-footer nav button {min-height:27px;min-width:29px;padding:4px 7px;border:0;border-radius:4px;background:var(--lead-row);color:var(--lead-muted);font:11px Arial,sans-serif;cursor:pointer;}
#app #tab-crm-leads .crm-leads-footer nav button[aria-current="page"] {background:color-mix(in srgb,var(--lead-accent) 15%,var(--lead-panel));color:var(--lead-accent);}
#app #tab-crm-leads .crm-leads-footer nav button:disabled {opacity:.35;cursor:default;}
#app #tab-crm-leads .crm-leads-page-gap {padding:0 4px;}
#app #tab-crm-leads .crm-leads-empty-cell {height:120px;text-align:center;color:var(--lead-muted);}
#app #tab-crm-leads .crm-leads-error {padding:24px;border:1px solid var(--lead-border);border-radius:6px;color:var(--lead-danger);}
#app #tab-crm-leads .crm-leads-error button {margin-left:12px;}
body[data-current-tab="crm-leads"] {--lead-page-canvas:var(--release-bg);}
body[data-theme="light"][data-current-tab="crm-leads"] {--lead-page-canvas:var(--release-bg);}
body[data-current-tab="crm-leads"] #app main {background:var(--lead-page-canvas)!important;}
#app #tab-crm-leads [aria-busy="true"] {opacity:.65;}
#app #tab-crm-leads :is(button,select,input):focus-visible {outline:2px solid var(--lead-accent);outline-offset:2px;}
#crm-lead-reference-dialog {position:fixed;inset:0;margin:auto;overflow:auto;width:min(480px,calc(100vw - 32px));max-height:85vh;padding:0;border:1px solid var(--lead-border);border-radius:10px;background:var(--lead-panel);color:var(--lead-ink);}
#crm-lead-reference-dialog::backdrop {background:#0009;}
#crm-lead-reference-dialog .crm-lead-detail {padding:24px;}
#crm-lead-reference-dialog .crm-lead-detail-head {display:flex;align-items:center;justify-content:space-between;gap:16px;}
#crm-lead-reference-dialog h2 {margin:0 0 16px;font-size:20px;}
#crm-lead-reference-dialog .crm-lead-detail-head button {border:0;background:none;color:inherit;font-size:24px;cursor:pointer;}
#crm-lead-reference-dialog dl>div {display:grid;grid-template-columns:90px 1fr;gap:16px;padding:10px 0;border-bottom:1px solid var(--lead-border);}
#crm-lead-reference-dialog dt {color:var(--lead-muted);font-size:12px;}
#crm-lead-reference-dialog dd {margin:0;overflow-wrap:anywhere;font-size:13px;}
@media(max-width:1000px) {
  #app #tab-crm-leads .crm-leads-filters {grid-template-columns:1fr 1fr;gap:10px;}
  #app #tab-crm-leads .crm-leads-kpis {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  #app #tab-crm-leads .crm-leads-table-wrap table {min-width:1000px;}
}
@media(max-width:560px) {
  #app #tab-crm-leads .crm-leads-filters {grid-template-columns:1fr;}
  #app #tab-crm-leads .crm-leads-kpis article {padding:10px;gap:8px;}
  #app #tab-crm-leads .crm-leads-metric-note {display:none;}
  #app #tab-crm-leads .crm-leads-footer {flex-wrap:wrap;}
  #app #tab-crm-leads .crm-leads-range {position:static;transform:none;}
  #app #tab-crm-leads .crm-leads-footer nav {width:100%;justify-content:flex-end;gap:6px;}
  #app #tab-crm-leads .crm-leads-footer nav button {min-height:36px;min-width:36px;}
}
@media(pointer:coarse) {
  #app #tab-crm-leads .crm-lead-open {min-height:36px;}
  #app #tab-crm-leads .crm-lead-name {padding:8px 0;}
}

/* Shared application canvas; scoped to the Leads workspace. */
body[data-current-tab="crm-leads"],body[data-current-tab="crm-leads"] #app,body[data-current-tab="crm-leads"] #app > .app-shell,body[data-current-tab="crm-leads"] #app main {background:var(--release-bg);}
body[data-theme="light"][data-current-tab="crm-leads"],body[data-theme="light"][data-current-tab="crm-leads"] #app,body[data-theme="light"][data-current-tab="crm-leads"] #app > .app-shell,body[data-theme="light"][data-current-tab="crm-leads"] #app main {background:var(--release-bg);}
#app #tab-crm-leads .crm-leads-metric-icon {border-radius:12px;color:var(--release-primary);background:var(--release-soft);}
body[data-theme="light"] #app #tab-crm-leads .crm-leads-metric-icon {color:var(--release-primary);background:var(--release-soft);}
#app #tab-crm-leads .crm-leads-metric-icon svg {width:24px;height:24px;stroke-width:2;}
#app #tab-crm-leads .crm-leads-refresh {display:inline-flex;align-items:center;gap:7px;}
#app #tab-crm-leads .crm-leads-refresh svg {width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
#app #tab-crm-leads .crm-lead-open svg,#app #tab-crm-leads .crm-leads-search svg {stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}

/* Keep the complete metric content and date range inside their containers. */
body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-kpis article{height:auto;min-height:108px;flex-wrap:wrap;align-content:center;row-gap:8px;}
body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-metric-note{position:static;align-self:auto;flex-basis:100%;margin:0;padding:0;text-align:left;display:flex;flex-direction:row;justify-content:flex-start;gap:6px;}
body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-filters{grid-template-columns:minmax(180px,1fr) minmax(180px,.65fr) minmax(180px,.65fr) minmax(330px,1fr);}
body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-dates{display:grid;grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);height:40px;min-width:0;align-items:center;gap:4px;}
body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-dates input{width:100%;min-width:0;height:36px;display:block;margin:0;padding:0 6px;}
body[data-current-tab="crm-leads"] #app #tab-crm-leads :is(.crm-leads-search,.crm-leads-filter){height:40px;min-width:0;flex-wrap:nowrap;}
@media(max-width:1400px){body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-filters{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:650px){body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-filters{grid-template-columns:minmax(0,1fr);}body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-dates{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding-left:4px;}body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-dates>span{display:none;}}

body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-metric-note{display:none!important;}
body[data-current-tab="crm-leads"] #app #tab-crm-leads .crm-leads-kpis article{min-height:88px;}

/* reference-release.css */
/* Approved October reference: one geometry across roles, routes and themes. */
@font-face{font-family:Inter;src:url('/assets/inter-latin-cyrillic-v2.woff2') format('woff2');font-weight:100 900;font-display:swap}
body{--release-bg:#171717!important;--release-side:#141414!important;--release-card:#171717!important;--release-soft:#252525!important;--release-line:#303030!important;--release-text:#ededed!important;--release-muted:#a3a3a3!important;--release-primary:#ededed!important;--release-on:#171717!important;--release-good:#84d5ad!important;--release-good-bg:#20332a!important;color-scheme:dark}
body[data-theme=light]{--release-bg:#fff!important;--release-side:#fafaf9!important;--release-card:#fff!important;--release-soft:#f5f5f4!important;--release-line:#e7e7e5!important;--release-text:#171717!important;--release-muted:#696969!important;--release-primary:#171717!important;--release-on:#fff!important;--release-good:#137e56!important;--release-good-bg:#edf8f1!important;color-scheme:light}
body,body #app,body #tab-leads .overview-reference{--shell-sidebar:208px!important;--shell-gutter:32px!important;--sidew:208px!important;--gutter:32px!important;--bg:var(--release-bg)!important;--bg2:var(--release-soft)!important;--bg3:var(--release-side)!important;--surface:var(--release-card)!important;--surface2:var(--release-soft)!important;--card:var(--release-card)!important;--side:var(--release-side)!important;--line:var(--release-line)!important;--border:var(--release-line)!important;--border2:var(--release-line)!important;--border-hi:var(--release-line)!important;--text:var(--release-text)!important;--text2:var(--release-muted)!important;--text3:var(--release-muted)!important;--muted:var(--release-muted)!important;--green:var(--release-primary)!important;--green-dim:var(--release-soft)!important;--lime:var(--release-primary)!important;--surface-hover:var(--release-soft)!important;--ui-card:var(--release-card)!important;--ui-nav:var(--release-side)!important;--ui-border:var(--release-line)!important;--ui-shadow:none!important;background:var(--release-bg)!important;color:var(--release-text)!important;font-family:Inter,Arial,sans-serif!important;font-variant-numeric:tabular-nums}
body[data-current-tab] #app *,body[data-current-tab] #tab-leads .overview-reference *{font-family:inherit}
body[data-current-tab] #app .sidebar{position:fixed!important;inset:64px auto 0 0!important;width:var(--shell-sidebar)!important;padding:20px 12px 12px!important;background:var(--release-side)!important;border-right:1px solid var(--release-line)!important;box-shadow:none!important;overflow:visible!important}
body[data-current-tab] #app .sidebar-brand{display:none!important}
body[data-current-tab] #app .sidebar > .sidebar-nav{padding:0 0 12px!important;gap:3px!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin!important;scrollbar-color:var(--release-line) transparent;overscroll-behavior:contain}
body[data-current-tab] #app .sidebar .sidebar-nav > button{height:39px!important;min-height:39px!important;flex:0 0 auto!important;padding:0 14px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:var(--release-muted)!important;font:400 13px/20px Inter,Arial,sans-serif!important;box-shadow:none!important}
body[data-current-tab] #app .sidebar .sidebar-nav > button.active{background:var(--release-soft)!important;color:var(--release-text)!important;font-weight:500!important;box-shadow:none!important}
body[data-current-tab] #app .sidebar .sidebar-nav > button:hover{background:var(--release-soft)!important;color:var(--release-text)!important}
body[data-current-tab] #app .sidebar .sidebar-nav > button:before{content:none!important}
body[data-current-tab] #app .sidebar-collapse-toggle{top:12px!important;background:var(--release-card)!important;color:var(--release-muted)!important;border-color:var(--release-line)!important;box-shadow:none!important}
body[data-current-tab] #app > header{position:relative!important;display:flex!important;align-items:center!important;height:64px!important;min-height:64px!important;margin:0!important;padding:0 26px!important;background:var(--release-bg)!important;border:0!important;border-bottom:1px solid var(--release-line)!important;box-shadow:none!important;gap:18px!important}
body[data-current-tab] #app > header .brand-link{display:inline-flex!important;gap:10px!important;align-items:center!important;flex-shrink:0}
body[data-current-tab] #app > header .brand-icon{display:none!important}
.release-logo{display:block;width:176px;height:30px;object-fit:contain;object-position:left}
.release-logo-dark{display:block}.release-logo-light{display:none}body[data-theme=light] .release-logo-dark{display:none}body[data-theme=light] .release-logo-light{display:block}
body[data-current-tab] #app > header .overview-reference-crumb{margin-right:auto!important;color:var(--release-muted)!important;font-size:13px!important}
body[data-current-tab] #app > header .header-controls{margin-left:auto;gap:12px!important}
body[data-current-tab] #app > header :is(.theme-toggle,.notification-bell,.header-user){color:var(--release-text)!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important}
body[data-current-tab] #app > header .header-user__avatar{background:var(--release-soft)!important;color:var(--release-text)!important}
body[data-current-tab] #app > .app-shell{margin-left:var(--shell-sidebar)!important;padding-top:0!important}
body[data-current-tab] #app main{width:100%!important;min-width:0!important;padding:30px 32px 40px!important;background:var(--release-bg)!important;max-width:1600px!important;margin-inline:auto!important}
body[data-current-tab] #app .tab-pane :is(h1,.page-title,.offers-title,.settings-title,.section-title),body[data-current-tab] #tab-leads .overview-reference h1{font-size:24px!important;line-height:1.35!important;font-weight:600!important;letter-spacing:-.65px!important;color:var(--release-text)!important;text-transform:none!important}
body[data-current-tab] #app .tab-pane :is(h2,.card-title),body[data-current-tab] #tab-leads .overview-reference h2{font-size:16px!important;font-weight:600!important;letter-spacing:-.25px!important;color:var(--release-text)!important}
body[data-current-tab] #app :is(.page-subtitle,.ov-subtitle,.subtitle,.muted){color:var(--release-muted)!important;font:13px/20px Inter,Arial,sans-serif!important}
body[data-current-tab] #app :is(.settings-card,.summary-card,.chart-card,.crm-stat-card,.network-balance-panel,.network-balance-card,.ai-agent-hero,.ai-agent-panel,.offer-card,.vacancy-card,.source-card,.messenger-card,.table-wrap,.diagnostics-card,.ov-panel,.ov-metrics){background:var(--release-card)!important;border:1px solid var(--release-line)!important;border-radius:12px!important;box-shadow:none!important}
body[data-current-tab] #app :is(table,thead,tbody,th,td){background:transparent!important;color:var(--release-text);border-color:var(--release-line)!important}
body[data-current-tab] #app th{font-size:11px!important;font-weight:500!important;color:var(--release-muted)!important;padding:12px 16px!important;text-transform:none!important;letter-spacing:0!important}
body[data-current-tab] #app td{padding:14px 16px!important;font-size:13px!important;line-height:20px!important}
body[data-current-tab] #app tbody tr:hover{background:var(--release-soft)!important}
body[data-current-tab] #app :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){background:var(--release-card)!important;color:var(--release-text)!important;border:1px solid var(--release-line)!important;border-radius:8px!important;box-shadow:none!important;font:13px/20px Inter,Arial,sans-serif!important;caret-color:var(--release-text)}
body[data-current-tab] #app :is(input,textarea)::placeholder{color:var(--release-muted)!important;opacity:1}
body[data-current-tab] #app :is(.btn,.ov-btn,.btn-secondary,.btn-outline){background:var(--release-card)!important;color:var(--release-text)!important;border:1px solid var(--release-line)!important;border-radius:9px!important;box-shadow:none!important;font:500 13px/20px Inter,Arial,sans-serif!important}
body[data-current-tab] #app :is(.btn-primary,.ov-primary,button[type=submit]){background:var(--release-primary)!important;border-color:var(--release-primary)!important;color:var(--release-on)!important;box-shadow:none!important}
body[data-current-tab] #app :is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--release-text)!important;outline-offset:3px!important}
body[data-current-tab] #app button:disabled{opacity:.45;cursor:not-allowed}
body[data-current-tab] #app ::selection{background:var(--release-text);color:var(--release-bg)}
body[data-current-tab] :is(.modal-content,.dialog-content,.notification-panel,.header-account-menu,.drawer,.lead-drawer){background:var(--release-card)!important;color:var(--release-text)!important;border-color:var(--release-line)!important;box-shadow:0 12px 40px #0002;font-family:Inter,Arial,sans-serif!important}
body[data-current-tab] #tab-leads .overview-reference .ov-hero{margin-top:0!important;min-height:0!important;margin-bottom:25px!important}
body[data-current-tab] #tab-leads .overview-reference .ov-filters{margin-bottom:24px!important;gap:16px!important}
body[data-current-tab] #tab-leads .overview-reference :is(.ov-segmented,.ov-date,.ov-columns,.overview-export-options,.ov-column-options){background:var(--release-soft)!important;color:var(--release-text)!important;border-color:var(--release-line)!important;box-shadow:none!important}
body[data-current-tab] #tab-leads .overview-reference .ov-date{background:var(--release-card)!important}
body[data-current-tab] #tab-leads .overview-reference .ov-period[aria-pressed=true]{background:var(--release-card)!important;color:var(--release-text)!important;box-shadow:0 1px 3px #00000012!important}
body[data-current-tab] #tab-leads .overview-reference .ov-metrics{padding:18px 0!important;margin:0 0 24px!important;min-height:0!important}
body[data-current-tab] #tab-leads .overview-reference .ov-metric{padding:0 20px!important;border-color:var(--release-line)!important}
body[data-current-tab] #tab-leads .overview-reference .ov-metric-label{font-size:12px!important;line-height:18px!important;margin-bottom:10px!important;color:var(--release-muted)!important}
body[data-current-tab] #tab-leads .overview-reference .ov-metric-icon{display:none!important}
body[data-current-tab] #tab-leads .overview-reference .ov-value{font-size:28px!important;line-height:1.3!important;font-weight:500!important;letter-spacing:-.8px!important}
body[data-current-tab] #tab-leads .overview-reference .ov-metric-note{font-size:11px!important;line-height:17px!important;color:var(--release-muted)!important;margin-top:6px!important}
body[data-current-tab] #tab-leads .overview-reference :is(.ov-delta,.funnel-trend){color:var(--release-good)!important;background:var(--release-good-bg)!important;font-size:11px!important}
body[data-current-tab] #tab-leads .overview-reference .funnel-trend.is-negative{color:#c34747!important;background:var(--release-soft)!important}
body[data-current-tab] #tab-leads .overview-reference .ov-panel-head{padding:18px 20px!important}
body[data-current-tab] #tab-leads .overview-reference .ov-table-tools{justify-content:flex-end!important}
body[data-current-tab] #tab-leads .overview-reference .ov-economy{padding:20px!important}
body[data-current-tab] #tab-leads .overview-reference .ov-work{margin-top:0!important}
body[data-current-tab] #tab-leads .overview-reference .ov-panel-foot{padding:14px 20px!important;color:var(--release-muted)!important;border-color:var(--release-line)!important}
body[data-current-tab] #tab-leads .overview-reference .ov-quick{padding:18px 20px!important;margin-top:18px!important}
body[data-current-tab] #tab-leads .overview-reference :is(.ov-monogram,.ov-money-foot,.ov-badge,.ov-money-empty,.ov-money-label,.ov-logs){background:transparent!important;border-color:var(--release-line)!important;color:var(--release-muted)!important}
@media(min-width:901px){body.sidebar-collapsed[data-current-tab] #app{--shell-sidebar:68px!important}body.sidebar-collapsed[data-current-tab] #app .sidebar{width:68px!important}body.sidebar-collapsed[data-current-tab] #app .sidebar .sidebar-nav > button{padding-inline:12px!important}}
@media(max-width:900px){body[data-current-tab] #app > .app-shell{margin-left:0!important}body[data-current-tab] #app .sidebar{width:240px!important;z-index:110;transform:translateX(-100%)}body[data-current-tab] #app .sidebar.open{transform:translateX(0)}body[data-current-tab] #app .sidebar-collapse-toggle{display:none!important}body[data-current-tab] #app > header{padding-inline:20px!important}body[data-current-tab] #app > header .mobile-menu-toggle{display:inline-flex!important}body[data-current-tab] #app > header .overview-reference-crumb{display:none!important}body[data-current-tab] #app main{padding:24px 20px 32px!important}}
@media(max-width:600px){.release-logo{width:144px;height:26px}body[data-current-tab] #app > header{padding-inline:16px!important;gap:10px!important}body[data-current-tab] #app > header .home-arrow{display:none!important}body[data-current-tab] #app main{padding-inline:16px!important}body[data-current-tab] #app > header .header-user__copy{display:none!important}body[data-current-tab] #tab-leads .overview-reference .ov-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:0!important}body[data-current-tab] #tab-leads .overview-reference .ov-metric{padding:16px!important;min-height:100px!important}body[data-current-tab] #tab-leads .overview-reference .ov-panel-head{align-items:flex-start!important;flex-wrap:wrap!important;padding:16px!important}body[data-current-tab] #tab-leads .overview-reference .ov-table-tools{width:100%!important;justify-content:flex-start!important}body[data-current-tab] #tab-leads .overview-reference .ov-hero{flex-wrap:wrap!important;gap:14px!important}body[data-current-tab] #app .sidebar .sidebar-nav > button{min-height:44px!important}}
@media(prefers-reduced-motion:reduce){body[data-current-tab] #app *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep overlays and asynchronously inserted editors on the same token contract. */
body[data-current-tab]{--bg:var(--release-bg)!important;--bg2:var(--release-soft)!important;--bg3:var(--release-side)!important;--text:var(--release-text)!important;--text2:var(--release-muted)!important;--text3:var(--release-muted)!important;--border:var(--release-line)!important;--border-hi:var(--release-line)!important;--green:var(--release-primary)!important;--green-dim:var(--release-soft)!important;--on-accent:var(--release-on)!important;--brand-action:var(--release-primary)!important;--brand-action-ink:var(--release-on)!important;--color-accent:var(--release-primary)!important;--ui-card:var(--release-card)!important;--ui-nav:var(--release-side)!important;--ui-border:var(--release-line)!important;--font-sans:Inter,Arial,sans-serif!important;--font-ui:Inter,Arial,sans-serif!important}
body[data-current-tab] #app :is(.ov-btn,.btn-secondary,.btn-outline):hover{background:var(--release-soft)!important}
body[data-current-tab] #tab-leads .overview-reference :is(.ov-btn,.ov-date,.ov-segmented){height:36px!important;min-height:36px!important}
body[data-current-tab] #tab-leads .overview-reference .ov-period{height:30px!important}
body[data-current-tab] #tab-leads .overview-reference .ov-search input{height:34px!important}
body[data-current-tab] #tab-leads .overview-reference .ov-tz{color:var(--release-muted)!important;border-color:var(--release-line)!important}
body[data-current-tab] #tab-leads .overview-reference .ov-text-action{color:var(--release-muted)!important}
@media(max-width:600px){body[data-current-tab] #tab-leads .overview-reference :is(.ov-btn,.ov-date){height:44px!important;min-height:44px!important}}
/* The legacy overview prepends a breadcrumb: explicitly keep the approved brand first. */
body[data-current-tab] #app > header .brand-link{order:-2!important;margin:0!important;flex:0 0 176px!important;max-width:176px!important;position:static!important}
body[data-current-tab] #app > header .brand-link > .release-logo{width:176px!important;height:30px!important;max-width:176px!important;max-height:30px!important;flex:0 0 176px!important;object-fit:contain!important;outline:0!important}
body[data-current-tab] #app > header .brand-link > .release-logo-light{display:none!important}
body[data-current-tab] #app > header .brand-link > .release-logo-dark{display:block!important}
body[data-theme=light][data-current-tab] #app > header .brand-link > .release-logo-light{display:block!important}
body[data-theme=light][data-current-tab] #app > header .brand-link > .release-logo-dark{display:none!important}
body[data-current-tab] #app > header .overview-reference-crumb{order:0!important;min-width:0;flex:1 1 auto!important}
body[data-current-tab] #app > header .header-controls{order:1!important;flex:0 0 auto!important}
body[data-current-tab] #app > header .home-arrow{display:none!important}
body[data-current-tab] #tab-leads .overview-reference .ov-metric-label > svg{display:none!important;color:var(--release-muted)!important;fill:none!important}
@media(max-width:900px){body[data-current-tab] #app > header .mobile-menu-toggle{order:-3!important}}
@media(max-width:600px){body[data-current-tab] #app > header .brand-link{flex-basis:144px!important;max-width:144px!important}body[data-current-tab] #app > header .brand-link > .release-logo{width:144px!important;height:26px!important;max-width:144px!important;max-height:26px!important;flex-basis:144px!important}}

body[data-theme][data-current-tab="leads"] #tab-leads .overview-reference .ov-metric-label .ov-metric-icon{display:none!important}

@media(max-width:980px){
body[data-theme][data-current-tab] #app > header{margin-left:0!important;padding:8px 16px!important;height:auto!important;min-height:64px!important;flex-wrap:wrap!important;gap:10px!important}
body[data-theme][data-current-tab] #app > .app-shell{margin-left:0!important}
body[data-theme][data-current-tab] #app .sidebar{width:240px!important;transform:translateX(-100%)!important;overflow-y:auto!important}
body[data-theme][data-current-tab] #app .sidebar.open{transform:translateX(0)!important}
body[data-theme][data-current-tab] #app > header .mobile-menu-toggle{display:inline-flex!important}
body[data-theme][data-current-tab] #app > header .overview-reference-crumb{display:none!important}
}
@media(max-width:600px){
body[data-theme][data-current-tab] #app > header .header-controls{flex:1 0 100%!important;width:100%!important;justify-content:flex-end!important;gap:12px!important}
body[data-theme][data-current-tab] #tab-leads .mailing-overview{display:block!important;min-width:0!important;overflow:hidden!important}
body[data-theme][data-current-tab] #tab-leads .mailing-overview__summary{width:100%!important;min-width:0!important;box-sizing:border-box!important}
body[data-theme][data-current-tab] #tab-leads .mailing-overview__body{flex-wrap:wrap!important}
body[data-theme][data-current-tab] #tab-leads .mailing-recent{min-width:0!important;overflow-x:auto!important}
body[data-theme][data-current-tab] #tab-leads .overview-reference .ov-money-foot{flex-wrap:wrap!important;gap:8px!important}
body[data-theme][data-current-tab] #tab-leads .overview-reference .ov-quick-controls{flex-wrap:wrap!important}
}

body[data-theme][data-current-tab] #app :is(#tab-sources,#tab-ai-agent){--sources-accent:var(--release-primary)!important;--sources-panel:var(--release-card)!important;--sources-line:var(--release-line)!important;--sources-copy:var(--release-muted)!important;--agent-accent:var(--release-primary)!important;--agent-tint:var(--release-soft)!important;--agent-panel:var(--release-card)!important;--agent-canvas:var(--release-bg)!important;--agent-border:var(--release-line)!important;--agent-copy:var(--release-muted)!important}
body[data-theme][data-current-tab] #app{--icon-accent:var(--release-text)!important;--icon-accent-bg:var(--release-soft)!important;--icon-accent-border:var(--release-line)!important;--raw-accent:var(--release-primary)!important;--ref-raw-accent:var(--release-primary)!important;--ai-accent:var(--release-primary)!important;--ai-accent-soft:var(--release-soft)!important}

/* A continuous rail and header: brand above navigation, content beside it. */
@media(min-width:981px){
body[data-theme][data-current-tab] #app > header{margin-left:0!important;padding:0 16px!important;gap:calc(var(--shell-sidebar) - 160px)!important;background:linear-gradient(to right,var(--release-side) 0 var(--shell-sidebar),var(--release-bg) var(--shell-sidebar) 100%)!important;overflow:visible!important}
body[data-theme][data-current-tab] #app > header::before{content:"";position:absolute;inset:0 auto 0 var(--shell-sidebar);width:1px;background:var(--release-line);pointer-events:none}
body[data-theme][data-current-tab] #app > header .header-controls{gap:12px!important}
body.sidebar-collapsed[data-theme][data-current-tab] #app > header{gap:52px!important}
body.sidebar-collapsed[data-theme][data-current-tab] #app > header .brand-link{flex-basis:32px!important;max-width:32px!important}
body.sidebar-collapsed[data-theme][data-current-tab] #app > header .brand-link > .release-logo{width:32px!important;height:32px!important;max-width:32px!important;max-height:32px!important;flex-basis:32px!important}
body.sidebar-collapsed[data-theme][data-current-tab] #app > header .release-logo-dark{content:url('/assets/reference-logo-mark-dark.svg')}
body.sidebar-collapsed[data-theme][data-current-tab] #app > header .release-logo-light{content:url('/assets/reference-logo-mark-light.svg')}
}
@media(max-width:980px){body[data-theme][data-current-tab] #app > header{background:var(--release-side)!important}body[data-theme][data-current-tab] #app > header::before{content:none}}
@media(max-width:600px){body[data-theme][data-current-tab] #app .sidebar{top:114px!important}}

/* Approved later interface sidebar: exact symbols, grouped navigation, bottom settings. */
body[data-theme][data-current-tab] #app .sidebar>.sidebar-nav{flex:1 1 auto!important;min-height:0!important;padding-bottom:0!important}
body[data-theme][data-current-tab] #app .sidebar .sidebar-nav button{font-size:13px!important;border-radius:8px!important;text-align:left!important}
body[data-theme][data-current-tab] #app .sidebar .sidebar-nav button .nav-label{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important}
body[data-theme][data-current-tab] #app .sidebar .sidebar-nav button .nav-ref-icon{width:22px!important;height:22px!important;min-width:22px!important;flex:0 0 22px!important;margin:0!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round;stroke-linejoin:round}
body[data-theme][data-current-tab] #app .sidebar .sidebar-nav>#nav-settings{margin-top:auto!important}
body.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .sidebar-nav button .nav-label{justify-content:center!important;gap:0!important}
body.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .sidebar-nav button .nav-ref-icon{margin:0!important}
@media(max-width:980px){body.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar.open .sidebar-nav button .nav-label{justify-content:flex-start!important;gap:7px!important}body.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar.open .sidebar-nav button .nav-ref-icon{margin-right:6px!important}}

body[data-theme][data-current-tab] #app .sidebar{padding-top:16px!important;padding-bottom:14px!important}
body[data-theme][data-current-tab] #app .sidebar .sidebar-nav button{height:40px!important;min-height:40px!important;line-height:1.2!important}
body[data-theme][data-current-tab] #app .sidebar .release-nav-divider{height:1px;flex:0 0 1px;background:var(--release-line);margin:8px 14px}
body.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .release-nav-divider{margin-inline:4px}
@media(max-width:980px){body[data-theme][data-current-tab] #app .sidebar.open .sidebar-nav button{height:44px!important;min-height:44px!important}}

/* Current neutral controls, including overlays outside the workspace DOM. */
body[data-theme]{--blue:var(--release-primary);--blue-dim:var(--release-soft);--purple:var(--release-primary);--purple-dim:var(--release-soft);--brand-action:var(--release-primary);--brand-action-ink:var(--release-on);--on-accent:var(--release-on);--font-sans:Inter,Arial,sans-serif;--text-muted:var(--release-muted);--surface-hover:var(--release-soft);--green-glow:none;--blue-glow:none;--shadow:none;--shadow-sm:none;--ui-shadow:none;--top-glow:transparent;--bottom-glow:transparent}
body[data-theme] :is(.modal,.modal-content,.dialog-content,.drawer,.lead-drawer,.notification-panel,.header-account-menu,.header-user-menu,.maintenance-overlay__panel){background:var(--release-card)!important;color:var(--release-text)!important;border:1px solid var(--release-line)!important;border-radius:12px!important;box-shadow:none!important;font-family:Inter,Arial,sans-serif!important}
body[data-theme] :is(.modal,.modal-content,.dialog-content,.drawer,.lead-drawer,.notification-panel,.header-account-menu,.header-user-menu) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:var(--release-card)!important;color:var(--release-text)!important;border-color:var(--release-line)!important;border-radius:8px!important;font:14px/20px Inter,Arial,sans-serif!important;box-shadow:none!important}
body[data-theme] :is(.btn-sm,.btn-action,.btn-secondary,.btn-outline,.btn-save,.btn-login){background:var(--release-card)!important;color:var(--release-text)!important;border:1px solid var(--release-line)!important;border-radius:8px!important;box-shadow:none!important;font-family:Inter,Arial,sans-serif!important;text-transform:none!important;letter-spacing:0!important}
body[data-theme] :is(.btn-action.primary,.btn-primary,.btn-save,.btn-login){background:var(--release-primary)!important;color:var(--release-on)!important;border-color:var(--release-primary)!important}
body[data-theme] :is(.btn-sm,.btn-action,.btn-secondary,.btn-outline):hover:not(:disabled){background:var(--release-soft)!important;transform:none!important;box-shadow:none!important}
body[data-theme] :is(.btn-action.primary,.btn-primary,.btn-save,.btn-login):hover:not(:disabled){background:var(--release-primary)!important;color:var(--release-on)!important;opacity:.88}
body[data-theme] :is(.modal,.dialog-content,.drawer,.lead-drawer,.notification-panel,.header-user-menu) :is(button,a,input,textarea,select):focus-visible{outline:2px solid var(--release-text)!important;outline-offset:3px!important}
body[data-theme] :is(.badge.ok,.badge.success,.status-dot.ok,.status-dot.online,.status-dot.running,.save-msg:not(.err)){color:var(--release-good)}
body[data-theme] :is(.btn-danger,.btn-remove,.btn-delete,.err,.error){color:var(--red)!important}
body[data-theme] #app .ov-cycle-actions{display:inline-flex;position:relative;align-items:stretch;gap:0}
body[data-theme] #app .ov-cycle-actions[hidden],body[data-theme] #app .ov-cycle-menu[hidden]{display:none!important}
body[data-theme] #app .ov-cycle-actions .ov-cycle-run{border-radius:9px 0 0 9px!important}
body[data-theme] #app .ov-cycle-actions .ov-cycle-toggle{width:36px;min-width:36px;padding:0!important;border-radius:0 9px 9px 0!important;border-left:1px solid var(--release-muted)!important}
body[data-theme] #app .ov-cycle-actions .ov-cycle-toggle .ov-i{width:16px;height:16px}
body[data-theme] #app .ov-cycle-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:50;width:280px;max-width:calc(100vw - 32px);padding:6px;background:var(--release-card);border:1px solid var(--release-line);border-radius:12px;color:var(--release-text);box-shadow:none}
body[data-theme] #app .ov-cycle-menu button{display:flex;align-items:center;gap:12px;width:100%;height:auto;min-height:62px;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:var(--release-text);text-align:left;font:500 14px/20px Inter,Arial,sans-serif;cursor:pointer}
body[data-theme] #app .ov-cycle-menu button:hover{background:var(--release-soft)}
body[data-theme] #app .ov-cycle-menu button small{display:block;margin-top:3px;color:var(--release-muted);font-size:12px;font-weight:400}
body[data-theme] #app .ov-cycle-menu button .ov-i{width:18px;height:18px;flex:none}
@media(max-width:600px){body[data-theme] #app .ov-hero-actions{flex-wrap:wrap;gap:8px!important}body[data-theme] #app .ov-cycle-menu{width:268px}}

/* Split-button sizing is independent of the legacy single-action minimum. */
body[data-theme][data-current-tab] #app .overview-reference .ov-cycle-actions .ov-btn.ov-primary{background:var(--release-primary)!important;color:var(--release-on)!important;border-color:var(--release-primary)!important;box-shadow:none!important}
body[data-theme][data-current-tab] #app .overview-reference .ov-cycle-actions .ov-cycle-run{flex:0 0 auto!important;min-width:162px!important;height:40px!important;padding:0 12px!important}
body[data-theme][data-current-tab] #app .overview-reference .ov-cycle-actions .ov-cycle-toggle{flex:0 0 36px!important;min-width:36px!important;width:36px!important;height:40px!important;padding:0!important;border-left-color:var(--release-muted)!important}
body[data-theme][data-current-tab] #app .overview-reference .ov-cycle-actions .ov-btn.ov-primary:hover:not(:disabled){opacity:.88;background:var(--release-primary)!important;color:var(--release-on)!important}
@media(max-width:600px){body[data-theme] #app .ov-cycle-menu{right:auto;left:0}}

body[data-theme][data-current-tab] #app .overview-reference .ov-cycle-actions .ov-btn.ov-primary .ov-i{color:var(--release-on)!important;stroke:currentColor!important}
body[data-theme] #app :is(.brand-link,.release-logo){outline:0!important;box-shadow:none!important}
body[data-theme] #app :is(.empty,.table-meta,.field-hint,.hint,.ref-connection-note,.source-hint,.ai-agent-card-hint){color:var(--release-muted)!important}

body[data-theme=dark] .sidebar-brand__icon{content:url("/assets/reference-logo-mark-dark.svg")}

/* Legacy auxiliary surfaces share the approved theme, including collapsed panels. */
body[data-theme][data-current-tab] #app :is(.filters,.mailing-overview,.mailing-overview__summary,.mailing-recent,.manual-lead-form,.log-panel,.log-header,.log-footer){background:var(--release-card)!important;color:var(--release-text)!important;border-color:var(--release-line)!important}
body[data-theme][data-current-tab] #app :is(.crm-leads-search,.crm-leads-filter,.crm-leads-dates,.tg-mailing-drop,.tg-spintax-preview,.tg-spintax-help code,.tg-mailing-progress,.ai-agent-state){background:var(--release-soft)!important;color:var(--release-text)!important;border-color:var(--release-line)!important}
body[data-theme][data-current-tab] #app .tg-spintax-preview{border-left:1px solid var(--release-line)}
body[data-theme][data-current-tab] #app .tg-spintax-preview.is-error{color:var(--red,#db6962)!important;border-color:currentColor!important}
body[data-theme][data-current-tab] #app :is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--release-primary);outline-offset:3px}
body[data-theme][data-current-tab] #app :is(button,input,select,textarea):disabled{cursor:not-allowed;opacity:.55}

/* Sidebar control belongs to the rail, never to the content gutter. */
body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar-collapse-toggle {
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  align-items:center;
  justify-content:flex-start;
  gap:13px;
  align-self:stretch;
  flex:0 0 44px;
  width:100%!important;
  max-width:100%;
  height:44px!important;
  min-height:44px;
  margin:0 0 8px;
  padding:0 14px;
  box-sizing:border-box;
  border:0!important;
  border-radius:9px;
  background:transparent!important;
  color:var(--release-muted)!important;
  box-shadow:none!important;
  font:400 13px/20px Inter,Arial,sans-serif;
  transition:background-color 160ms ease-out,color 160ms ease-out;
}
body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar-collapse-toggle::after {
  content:"Свернуть меню";
  white-space:nowrap;
}
body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar-collapse-toggle svg {
  width:22px;
  height:22px;
  flex:0 0 22px;
  stroke-width:1.75;
  transition:transform 180ms ease-out;
}
body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar-collapse-toggle:hover,
body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar-collapse-toggle:active {
  background:var(--release-soft)!important;
  color:var(--release-text)!important;
  transform:none;
}
body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar-collapse-toggle:focus-visible {
  outline:2px solid var(--release-text)!important;
  outline-offset:-2px!important;
  background:var(--release-soft)!important;
  color:var(--release-text)!important;
}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar-collapse-toggle {
  align-self:center;
  width:44px!important;
  min-width:44px;
  max-width:none;
  justify-content:center;
  padding:0;
  gap:0;
}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar-collapse-toggle::after {
  content:none;
}
@media(prefers-reduced-motion:reduce) {
  body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar-collapse-toggle,
  body.sidebar-desktop-mode[data-theme][data-current-tab] #app .sidebar-collapse-toggle svg {transition:none;}
}

/* Agent status: clear track, bright thumb and distinct enabled state. */
body #tab-ai-agent .ai-agent-card .ai-agent-toggle {
  --agent-track:#34404d; --agent-edge:#8896a6; --agent-thumb:#f8fafc;
  --agent-on:#16805e; --agent-on-edge:#48ca9d;
  position:relative;width:50px;height:28px!important;min-height:28px!important;flex:0 0 50px;
  padding:0;overflow:visible;border:1px solid var(--agent-edge);border-radius:999px;
  background:var(--agent-track);color:transparent;font-size:0;cursor:pointer;
  box-shadow:inset 0 1px 2px rgb(0 0 0 / .16);
  transition:background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease;
}
body[data-theme="light"] #tab-ai-agent .ai-agent-card .ai-agent-toggle {
  --agent-track:#dce3ea;--agent-edge:#758397;--agent-on:#167653;--agent-on-edge:#126342;
}
body #tab-ai-agent .ai-agent-card .ai-agent-toggle::before {
  content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;
  border-radius:50%;background:var(--agent-thumb);
  box-shadow:0 1px 3px rgb(0 0 0 / .35),0 0 0 1px rgb(0 0 0 / .12);
  transform:translateX(0);transition:transform 180ms cubic-bezier(.2,.8,.2,1);
}
body #tab-ai-agent .ai-agent-card .ai-agent-toggle::after {content:"";position:absolute;inset:-8px -3px;}
body #tab-ai-agent .ai-agent-card .ai-agent-toggle.is-enabled,
body #tab-ai-agent .ai-agent-card .ai-agent-toggle.is-enabled:hover:not(:disabled) {
  background:var(--agent-on);border-color:var(--agent-on-edge);
}
body #tab-ai-agent .ai-agent-card .ai-agent-toggle.is-enabled::before {
  background:var(--agent-thumb);transform:translateX(22px);
  box-shadow:0 1px 3px rgb(0 0 0 / .3);
}
body #tab-ai-agent .ai-agent-card .ai-agent-toggle:hover:not(:disabled) {
  background:var(--agent-track);border-color:var(--agent-thumb);box-shadow:0 0 0 2px rgb(128 144 160 / .22);
}
body[data-theme="light"] #tab-ai-agent .ai-agent-card .ai-agent-toggle:hover:not(:disabled) {border-color:#46566b;}
body #tab-ai-agent .ai-agent-card .ai-agent-toggle:focus-visible {outline:3px solid var(--agent-edge);outline-offset:4px;}
body #tab-ai-agent .ai-agent-card .ai-agent-toggle:disabled {opacity:.7;cursor:wait;}
@media (prefers-reduced-motion:reduce) {
  body #tab-ai-agent .ai-agent-card .ai-agent-toggle,
  body #tab-ai-agent .ai-agent-card .ai-agent-toggle::before {transition:none;}
}

/* Compact rail uses equal hit areas and centered icons. */
@media(min-width:981px){
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .sidebar-nav > button {
  width:44px!important;height:44px!important;min-height:44px!important;flex:0 0 44px!important;
  margin:2px auto!important;padding:0!important;border-radius:10px!important;display:flex!important;
  align-items:center!important;justify-content:center!important;
}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .nav-label {width:44px!important;height:44px!important;justify-content:center!important;gap:0!important;}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .nav-ref-icon,
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .nav-ref-icon svg {width:21px!important;height:21px!important;min-width:21px!important;margin:0!important;flex:0 0 21px!important;}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .sidebar-nav > button.active {box-shadow:inset 0 0 0 1px var(--release-line)!important;color:var(--release-text)!important;}
}
.mailing-channel-tabs {display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px;padding:4px;border:1px solid var(--release-line);border-radius:12px;width:fit-content;max-width:100%;background:var(--release-side);}
.mailing-channel-tabs button {min-height:40px;padding:8px 18px;border:0;border-radius:8px;background:transparent;color:var(--release-muted);font:500 14px Inter,Arial,sans-serif;cursor:pointer;}
.mailing-channel-tabs button[aria-selected=true] {background:var(--release-soft);color:var(--release-text);box-shadow:0 0 0 1px var(--release-line);}
.mailing-channel-tabs button:focus-visible {outline:2px solid var(--release-muted);outline-offset:2px;}
.mailing-channel-panel {padding:28px;border:1px solid var(--release-line);border-radius:12px;background:var(--release-card);max-width:760px;}
.mailing-channel-panel h2 {margin:0 0 12px;font-size:22px;color:var(--release-text);}
.mailing-channel-panel p {color:var(--release-muted);font-size:14px;line-height:1.6;max-width:60ch;}
.mailing-channel-panel .actions {margin-top:24px;}

#tab-telethon-mailing [hidden] { display: none !important; }

/* Collapsed navigation must fit the scroll viewport, including browser scrollbars. */
@media(min-width:981px){
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar {padding-inline:11px!important;}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar > .sidebar-nav {width:100%!important;min-width:0!important;padding-inline:0!important;align-items:center!important;scrollbar-width:none!important;}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar > .sidebar-nav::-webkit-scrollbar {width:0!important;height:0!important;}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .nav-label {padding:0!important;margin:0!important;}
}

body[data-theme][data-current-tab] #app .sidebar .sidebar-nav button .nav-ref-icon{stroke-width:2.25!important;shape-rendering:geometricPrecision;}

/* Settings is a regular navigation item; only interaction/current route highlights it. */
body[data-theme][data-current-tab] #app .sidebar .sidebar-nav > #nav-settings {position:static!important;bottom:auto!important;z-index:auto!important;border-top:0!important;}
body[data-theme][data-current-tab] #app .sidebar .sidebar-nav > #nav-settings:not(.active):not(:hover) {background:transparent!important;box-shadow:none!important;}
@media(min-width:981px){
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar > .sidebar-nav {gap:6px!important;}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .sidebar-nav > button,
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .sidebar-nav > #nav-settings {margin:0 auto!important;}
body.sidebar-desktop-mode.sidebar-collapsed[data-theme][data-current-tab] #app .sidebar .release-nav-divider {display:none!important;}
}

/* Keep wrapped overview values and offer labels inside their own content area. */
body[data-current-tab] #tab-leads .overview-reference .ov-metric {
  grid-template-rows:auto auto auto;
  align-content:start;
}
body[data-current-tab] #tab-leads .overview-reference .ov-metric-main {
  height:auto;
  min-height:37px;
  align-content:flex-start;
  gap:6px 8px;
}
body[data-current-tab] #tab-leads .overview-reference .ov-metric-main > .ov-value {
  flex:0 0 auto;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
}
body[data-current-tab] #tab-leads .overview-reference .ov-metric-main > .funnel-trend {
  position:static;
  flex:0 0 auto;
  white-space:nowrap;
}
body[data-current-tab] #tab-leads .overview-reference .ov-metric-note {
  white-space:normal;
  overflow-wrap:anywhere;
}
body[data-current-tab] #tab-leads .overview-reference .ov-offer-name {
  width:100%;
  min-width:0;
  max-width:100%;
  justify-content:flex-start;
  text-align:left;
  white-space:normal;
}
body[data-current-tab] #tab-leads .overview-reference .ov-offer-title {
  flex:1 1 0;
  min-width:0;
  white-space:normal;
  overflow-wrap:anywhere;
  line-height:1.45;
}

/* Shared rail grid: a single boundary and content gutter through the shell. */
@media(min-width:981px){
 body[data-theme][data-current-tab] #app > header{display:grid!important;grid-template-columns:calc(var(--shell-sidebar) - 32px) minmax(0,1fr) auto;column-gap:32px!important;}
 body[data-theme][data-current-tab] #app > header::before{left:calc(var(--shell-sidebar) - 1px)!important;}
 body[data-theme][data-current-tab] #app > header .brand-link{grid-column:1;grid-row:1;order:0!important;max-width:100%!important;min-width:0!important;}
 body[data-theme][data-current-tab] #app > header .overview-reference-crumb{display:block!important;grid-column:2;grid-row:1;order:0!important;margin:0!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
 body[data-theme][data-current-tab] #app > header .header-controls{grid-column:3;grid-row:1;order:0!important;margin:0!important;}
 body.sidebar-collapsed[data-theme][data-current-tab] #app > header{column-gap:32px!important;}
}
#tab-ai-agent .ai-android-panel{padding:20px!important;background:var(--release-card)!important;border-color:var(--release-line)!important;border-radius:12px!important;min-width:0;}
#tab-ai-agent .ai-android-heading h3{font-size:16px!important;line-height:24px;margin:0;}
#tab-ai-agent .ai-android-heading p{font-size:13px!important;line-height:20px!important;margin:4px 0 0!important;max-width:70ch;color:var(--release-muted)!important;}
#tab-ai-agent .ai-android-steps{display:grid;gap:6px;margin:16px 0 20px;padding-left:22px;font-size:13px;line-height:20px;color:var(--release-muted);}
#tab-ai-agent .ai-android-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
#tab-ai-agent .ai-android-actions button{min-height:40px;padding:8px 14px!important;font-size:13px!important;line-height:20px!important;white-space:normal!important;}
#tab-ai-agent #hr-agent-android-pair{background:var(--release-primary)!important;color:var(--release-on)!important;border-color:var(--release-primary)!important;}
#tab-ai-agent .ai-android-panel .ai-editor-channel-state{margin:16px 0!important;min-height:20px;font-size:13px!important;line-height:20px!important;overflow-wrap:anywhere;color:var(--release-muted)!important;}
#tab-ai-agent .ai-android-devices-heading{padding-top:16px;border-top:1px solid var(--release-line);}
#tab-ai-agent .ai-android-devices-heading h4{margin:0 0 12px;font-size:13px;font-weight:600;line-height:20px;color:var(--release-text);}
#tab-ai-agent #hr-agent-android-devices{min-height:52px;font-size:13px;line-height:20px;color:var(--release-muted);overflow-wrap:anywhere;}
#tab-ai-agent #hr-agent-android-devices:empty{min-height:0;}
#tab-ai-agent #hr-agent-android-devices .ai-agent-empty{padding:16px 0!important;font-size:13px!important;font-weight:400!important;line-height:20px!important;text-align:left!important;background:transparent!important;color:var(--release-muted)!important;}
#tab-ai-agent #hr-agent-android-devices .ai-editor-channel-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:12px 0;}
#tab-ai-agent #hr-agent-android-devices .ai-editor-channel-row>span{flex:1 1 180px;min-width:0;}
#tab-ai-agent #hr-agent-android-devices .ai-editor-channel-row small{font-size:12px;line-height:18px;}
#tab-ai-agent .ai-android-panel button:focus-visible{outline:2px solid var(--release-text)!important;outline-offset:3px;}
@media(max-width:600px){#tab-ai-agent .ai-android-panel{padding:16px!important;}#tab-ai-agent .ai-android-actions{align-items:stretch;}#tab-ai-agent .ai-android-actions button{flex:1 1 140px;}#tab-ai-agent .ai-android-actions #hr-agent-android-pair{flex-basis:100%;}}

#tab-ai-agent #hr-agent-android-devices[data-state="error"]{padding:12px 0;border-top:1px solid var(--release-line);}

/* reference-leads-sources.css */
/* Reference structure for live Leads and Sources; compatible with late API renders. */
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-head,body[data-theme][data-current-tab] #app #tab-sources .sources-page-head{min-height:0!important;margin:0 0 25px!important;align-items:center!important}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis,body[data-theme][data-current-tab] #app #tab-sources .ref-source-metrics{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin:0 0 24px!important;padding:18px 0!important;border:1px solid var(--release-line)!important;border-radius:12px!important;background:var(--release-card)!important;overflow:hidden!important}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis > article,body[data-theme][data-current-tab] #app #tab-sources .ref-source-metric{display:flex!important;flex-direction:column!important;gap:0!important;min-width:0!important;padding:0 20px!important;border:0!important;border-right:1px solid var(--release-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis > article:last-child,body[data-theme][data-current-tab] #app #tab-sources .ref-source-metric:last-child{border-right:0!important}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis .crm-leads-metric-icon{display:none!important}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis article > span{display:flex!important;flex-direction:column!important;gap:10px!important;min-width:0!important}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis small,body[data-theme][data-current-tab] #app #tab-sources .ref-metric-label{display:block!important;color:var(--release-muted)!important;font:400 12px/18px Inter,Arial,sans-serif!important}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis strong,body[data-theme][data-current-tab] #app #tab-sources .ref-source-metric > strong{display:block!important;font:500 28px/36px Inter,Arial,sans-serif!important;letter-spacing:-.8px!important;color:var(--release-text)!important;margin:0!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-metric > strong{margin-top:10px!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-metric-note{display:block!important;margin-top:6px!important;color:var(--release-muted)!important;font:400 11px/17px Inter,Arial,sans-serif!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-metric-note > span{display:none!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-metric-note small{font-size:11px!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filters{display:flex!important;flex-wrap:wrap!important;align-items:end!important;gap:10px!important;margin:0 0 20px!important;padding:0!important;border:0!important;background:transparent!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-search{flex:1 1 220px!important;max-width:360px!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filter{flex:0 1 160px!important;min-width:140px!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-dates{flex:0 1 auto!important;max-width:100%!important;flex-wrap:wrap!important}
body[data-theme][data-current-tab] #app #tab-crm-leads :is(.crm-leads-filter > span,.crm-leads-dates > span){font:400 11px/17px Inter,Arial,sans-serif!important;color:var(--release-muted)!important}
body[data-theme][data-current-tab] #app #tab-crm-leads :is(.ref-candidates-panel,.crm-leads-table-shell),body[data-theme][data-current-tab] #app #tab-sources :is(.ref-source-connections,.ref-source-quality,.ref-source-schedule){border:1px solid var(--release-line)!important;border-radius:12px!important;background:var(--release-card)!important;box-shadow:none!important;overflow:hidden!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .ref-candidates-panel .crm-leads-table-shell{border:0!important;border-radius:0!important}
body[data-theme][data-current-tab] #app :is(#tab-crm-leads,#tab-sources) .ref-panel-head{display:flex!important;align-items:center!important;padding:18px 20px!important;margin:0!important;min-height:58px!important;border:0!important}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-content{padding:0!important;margin:0!important;border:0!important;background:transparent!important;min-height:0!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-footer{padding:14px 20px!important;background:transparent!important;border-top:1px solid var(--release-line)!important;color:var(--release-muted)!important;flex-wrap:wrap!important;gap:12px!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-footer button{color:var(--release-muted)!important;background:transparent!important;border-color:var(--release-line)!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-footer button[aria-current=page]{color:var(--release-text)!important;background:var(--release-soft)!important}
body[data-theme][data-current-tab] #app #tab-crm-leads :is(.crm-lead-source i,.crm-lead-badge){background:var(--release-soft)!important;color:var(--release-muted)!important;border-color:var(--release-line)!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-lead-name{color:var(--release-text)!important;text-decoration:none!important;font-weight:500!important}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-lead-name:hover{text-decoration:underline!important;text-underline-offset:4px}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-connections{padding:0!important;margin-bottom:0!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-connections > h2{padding:18px 20px!important;margin:0!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-connections > .page-subtitle{padding:0 20px 16px!important;margin:0!important;font-size:12px!important}
body[data-theme][data-current-tab] #app #tab-sources #source-controls{padding:0!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-row{display:flex!important;align-items:center!important;gap:14px!important;min-height:78px!important;padding:16px 20px!important;border:0!important;border-top:1px solid var(--release-line)!important;border-radius:0!important;background:transparent!important;margin:0!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-row > div{flex:1 1 auto!important;min-width:0!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-chip{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:8px;background:var(--release-soft);color:var(--release-text);font:500 11px Inter,Arial,sans-serif}
body[data-theme][data-current-tab] #app #tab-sources .maintenance-control__label{font:500 13px/20px Inter,Arial,sans-serif!important;color:var(--release-text)!important}
body[data-theme][data-current-tab] #app #tab-sources .maintenance-control__hint{font:400 11px/18px Inter,Arial,sans-serif!important;color:var(--release-muted)!important}
body[data-theme][data-current-tab] #app #tab-sources :is(.ref-source-config,.ref-text-button){min-height:36px!important;padding:6px 0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;font:500 12px/20px Inter,Arial,sans-serif!important;color:var(--release-text)!important;white-space:nowrap}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-config{margin-left:10px!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-lower{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
body[data-theme][data-current-tab] #app #tab-sources .ref-panel-body{padding:0 20px 20px;font:13px/21px Inter,Arial,sans-serif;color:var(--release-text)}
body[data-theme][data-current-tab] #app #tab-sources .ref-summary-line{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}
body[data-theme][data-current-tab] #app #tab-sources .ref-unavailable{font:12px/20px Inter,Arial,sans-serif;color:var(--release-muted);margin:10px 0 0}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-breakdown{margin-top:24px;padding:0;border:1px solid var(--release-line);border-radius:12px;overflow:hidden}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-breakdown > summary{cursor:pointer;min-height:54px;padding:16px 20px;font:500 13px/22px Inter,Arial,sans-serif;color:var(--release-text)}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-breakdown > :not(summary){margin:0!important;border-radius:0!important;border-inline:0!important}
body[data-theme][data-current-tab] #app #tab-sources .ref-source-breakdown .sources-toolbar{padding:16px 20px!important}
@media(max-width:760px){body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis,body[data-theme][data-current-tab] #app #tab-sources .ref-source-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:0!important}body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis > article,body[data-theme][data-current-tab] #app #tab-sources .ref-source-metric{padding:16px!important;border:0!important}body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis > article:nth-child(n+3),body[data-theme][data-current-tab] #app #tab-sources .ref-source-metric:nth-child(n+3){border-top:1px solid var(--release-line)!important}body[data-theme][data-current-tab] #app #tab-sources .ref-source-lower{grid-template-columns:1fr}body[data-theme][data-current-tab] #app #tab-sources .ref-source-row{gap:10px!important;padding:14px 16px!important;flex-wrap:wrap!important}body[data-theme][data-current-tab] #app #tab-sources .ref-source-config{min-height:44px!important}body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-dates{width:100%!important}}

/* reference-commerce.css */
/* Archive commerce geometry applied to real offers, vacancies and funnels. */
body[data-theme][data-current-tab] #app .reference-commerce-offers,
body[data-theme][data-current-tab] #app .reference-commerce-vacancies,
body[data-theme][data-current-tab] #app .reference-commerce-funnels {
  --commerce-line: var(--release-line);
  --commerce-card: var(--release-card);
  --commerce-soft: var(--release-soft);
  --commerce-copy: var(--release-text);
  --commerce-muted: var(--release-muted);
  color: var(--commerce-copy);
}

body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-commerce-page-head,
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-page-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

body[data-theme][data-current-tab] #app .ref-commerce-page-title {
  margin: 0 !important;
  font-size: 24px !important;
  line-height: 32px !important;
  font-weight: 600 !important;
  letter-spacing: -.6px !important;
  color: var(--commerce-copy) !important;
}

body[data-theme][data-current-tab] #app .ref-commerce-page-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-subnav {
  display: flex !important;
  gap: 4px !important;
  margin: -8px 0 14px !important;
  border-bottom: 1px solid var(--commerce-line) !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-subnav button {
  min-height: 36px !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  background: transparent !important;
  color: var(--commerce-muted) !important;
  font: 500 13px/20px Inter, Arial, sans-serif !important;
  cursor: pointer !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-subnav button.is-active,
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-subnav button:hover {
  color: var(--commerce-copy) !important;
  border-bottom-color: var(--commerce-copy) !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-filters {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 0 16px !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-filters input,
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-filters select {
  min-height: 38px !important;
  padding: 8px 12px !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-filters input { min-width: 260px !important; }
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-count {
  margin-left: auto !important;
  color: var(--commerce-muted) !important;
  font-size: 12px !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-catalog-heading {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 58px !important;
  padding: 0 20px !important;
  border-bottom: 1px solid var(--commerce-line) !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-catalog-heading h2 {
  margin: 0 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-catalog-heading span { color: var(--commerce-muted) !important; font-size: 12px !important; }

body[data-theme][data-current-tab] #app .ref-commerce-panel,
body[data-theme][data-current-tab] #app .ref-commerce-table-panel,
body[data-theme][data-current-tab] #app .ref-commerce-vacancy-layout {
  background: var(--commerce-card) !important;
  border: 1px solid var(--commerce-line) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

body[data-theme][data-current-tab] #app .ref-commerce-table-panel {
  overflow: auto !important;
}

body[data-theme][data-current-tab] #app .ref-commerce-table {
  width: 100% !important;
  min-width: 720px !important;
  border-collapse: collapse !important;
  background: transparent !important;
}

body[data-theme][data-current-tab] #app .ref-commerce-table th {
  height: 44px !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--commerce-line) !important;
  color: var(--commerce-muted) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  white-space: nowrap !important;
}

body[data-theme][data-current-tab] #app .ref-commerce-table td {
  padding: 14px 16px !important;
  border-bottom: 1px solid var(--commerce-line) !important;
  color: var(--commerce-copy) !important;
  font-size: 13px !important;
  line-height: 20px !important;
  vertical-align: middle !important;
}

body[data-theme][data-current-tab] #app .ref-commerce-table tbody tr:last-child td { border-bottom: 0 !important; }
body[data-theme][data-current-tab] #app .ref-commerce-table tbody tr:hover { background: var(--commerce-soft) !important; }

body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-metrics {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 0 0 20px !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-metrics > article {
  min-height: 106px !important;
  padding: 16px 18px !important;
  background: var(--commerce-card) !important;
  border: 1px solid var(--commerce-line) !important;
  border-radius: 12px !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-toolbar {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 0 16px !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-vacancy-layout {
  overflow: hidden !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-split {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 34%) !important;
  min-width: 0 !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-table-host { min-width: 0 !important; overflow-x: auto !important; }
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-detail {
  min-height: 260px !important;
  padding: 20px !important;
  border-left: 1px solid var(--commerce-line) !important;
  background: var(--commerce-card) !important;
}
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-detail h2 { margin: 0 0 20px !important; font-size: 17px !important; }
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-empty { display: grid !important; gap: 8px !important; color: var(--commerce-muted) !important; font-size: 13px !important; }
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-empty strong { color: var(--commerce-copy) !important; font-size: 15px !important; }
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-detail .vacancy-invite-panel { display: grid !important; gap: 14px !important; }
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-detail .vacancy-invite-panel textarea { width: 100% !important; min-height: 88px !important; box-sizing: border-box !important; }

body[data-theme][data-current-tab] #app .reference-commerce-vacancies .vacancies-ref-table {
  overflow-x: auto !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-funnels .ref-commerce-funnel-content {
  display: block !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-funnels .ref-commerce-stage-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-funnels .ref-commerce-stage {
  min-height: 104px !important;
  padding: 18px !important;
  background: var(--commerce-card) !important;
  border: 1px solid var(--commerce-line) !important;
  border-radius: 12px !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-funnels .funnel-flow__ring,
body[data-theme][data-current-tab] #app .reference-commerce-funnels .funnel-flow__icon,
body[data-theme][data-current-tab] #app .reference-commerce-funnels .funnel-flow__arrow {
  display: none !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-funnels .ref-commerce-board {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-funnels .ref-commerce-board-columns {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

body[data-theme][data-current-tab] #app .reference-commerce-funnels .ref-commerce-board-column {
  min-width: 0 !important;
  padding: 16px !important;
  background: var(--commerce-card) !important;
  border: 1px solid var(--commerce-line) !important;
  border-radius: 12px !important;
}

@media (max-width: 760px) {
  body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-metrics,
  body[data-theme][data-current-tab] #app .reference-commerce-funnels .ref-commerce-stage-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body[data-theme][data-current-tab] #app .reference-commerce-funnels .ref-commerce-board-columns { grid-template-columns: 1fr !important; }
  body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-toolbar { flex-wrap: wrap !important; }
  body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-split { grid-template-columns: 1fr !important; }
  body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-vacancy-detail { border-top: 1px solid var(--commerce-line) !important; border-left: 0 !important; }
}

@media (max-width: 520px) {
  body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-commerce-page-head,
  body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-page-head { flex-wrap: wrap !important; }
  body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-metrics { grid-template-columns: 1fr 1fr !important; }
  body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-filters { align-items: stretch !important; flex-wrap: wrap !important; }
  body[data-theme][data-current-tab] #app .reference-commerce-offers .ref-offers-filters input { min-width: 0 !important; width: 100% !important; }
}

body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-toolbar{flex-wrap:wrap;}
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-toolbar .vacancies-ref-search{flex:1 1 260px;min-width:0;}
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-toolbar select{flex:0 1 220px;width:auto!important;min-width:160px;}
body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-toolbar .vacancies-ref-search input{width:100%;}
@media(max-width:650px){body[data-theme][data-current-tab] #app .reference-commerce-vacancies .ref-commerce-toolbar>:is(label,select){flex-basis:100%;width:100%!important;}}

/* reference-workspace.css */

/* Shared reference composition for task-specific DOM. */
body[data-theme][data-current-tab] #app :is(.ref-panel,.msg-accounts-panel,.msg-activity,.msg-crm,.ai-agent-catalog,.ai-agent-card,.ai-agent-new-card,.tg-mailing-status){background:var(--release-card)!important;border:1px solid var(--release-line)!important;border-radius:12px!important;box-shadow:none!important;overflow:hidden}
body[data-theme][data-current-tab] #app .ref-panel-heading{position:static!important;display:flex!important;padding:18px 20px!important;height:auto!important;min-height:0!important;background:transparent!important;border-bottom:1px solid var(--release-line)!important;margin:0!important}
body[data-theme][data-current-tab] #app .ref-panel-heading h2{margin:0!important;font:600 14px/20px Inter,sans-serif!important;color:var(--release-text)!important}
body[data-theme][data-current-tab] #app :is(.ref-text-button,.ref-settings-tab){background:transparent!important;border:0!important;color:var(--release-muted)!important;font:500 13px/20px Inter,sans-serif!important;padding:8px 12px!important;border-radius:8px!important;cursor:pointer}
body[data-theme][data-current-tab] #app .ref-text-button:hover{background:var(--release-soft)!important;color:var(--release-text)!important}
body[data-theme][data-current-tab] #app .ref-summary-line{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--release-line);font-size:13px;color:var(--release-muted)}
body[data-theme][data-current-tab] #app .ref-summary-line strong{font-weight:500;color:var(--release-text)}
/* Settings section rail, one save contract. */
body[data-theme][data-current-tab] #app .ref-settings-layout{display:grid;grid-template-columns:208px minmax(0,1fr);gap:32px;margin-top:24px}
body[data-theme][data-current-tab] #app .ref-settings-nav{display:flex;flex-direction:column;gap:4px;align-self:start;border-right:0;padding-right:20px}
body[data-theme][data-current-tab] #app .ref-settings-tab{text-align:left!important;width:100%}
body[data-theme][data-current-tab] #app .ref-settings-tab.active{background:var(--release-soft)!important;color:var(--release-text)!important}
body[data-theme][data-current-tab] #app .ref-settings-body .settings-grid{display:block!important;margin:0!important}
body[data-theme][data-current-tab] #app .ref-settings-body .settings-card{padding:0 0 28px!important;margin:0 0 28px!important;border:0!important;border-bottom:0!important;border-radius:0!important;max-width:760px;background:transparent!important}
body[data-theme][data-current-tab] #app .ref-settings-body .settings-card[hidden]{display:none!important}
body[data-theme][data-current-tab] #app .ref-settings-body .form-row{margin-top:18px!important;max-width:640px}
body[data-theme][data-current-tab] #app .ref-settings-save{border-top:0;padding-top:20px;margin-left:240px!important}
/* Real mailing controls in the reference's four-stage flow. */
body[data-theme][data-current-tab] #app .ref-mail-stepper{display:flex;gap:0;margin:0 0 28px;border-bottom:1px solid var(--release-line)}
body[data-theme][data-current-tab] #app .ref-mail-stepper button{flex:1;border-radius:0!important;padding:14px 8px!important;border-bottom:2px solid transparent!important}
body[data-theme][data-current-tab] #app .ref-mail-stepper button.active{color:var(--release-text)!important;border-bottom-color:var(--release-text)!important}
body[data-theme][data-current-tab] #app .ref-mail-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px;align-items:start}
body[data-theme][data-current-tab] #app .ref-mail-step{padding:28px}
body[data-theme][data-current-tab] #app .ref-mail-step[hidden]{display:none!important}
body[data-theme][data-current-tab] #app .ref-mail-step h2{margin:0 0 24px!important}
body[data-theme][data-current-tab] #app .ref-mail-layout > .ref-panel:last-child > :not(.ref-panel-heading){margin:20px}
body[data-theme][data-current-tab] #app .ref-mail-footer{display:flex;justify-content:space-between;border-top:1px solid var(--release-line);padding:16px 20px}
body[data-theme][data-current-tab] #app .tg-mailing-status{margin-top:24px!important;padding:20px!important}
/* Metrics are a continuous strip, never decorative icon cards. */
body[data-theme][data-current-tab] #app :is(.ref-stat-strip,.ref-agent-metrics){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--release-line)!important;border-radius:12px!important;padding:20px 0!important;background:var(--release-card)!important;gap:0!important;margin-bottom:24px}
body[data-theme][data-current-tab] #app .stats-strip{grid-template-columns:repeat(5,minmax(0,1fr))!important}
body[data-theme][data-current-tab] #app :is(.ref-stat-strip,.ref-agent-metrics) > :is(article,div){border:0!important;border-right:1px solid var(--release-line)!important;border-radius:0!important;background:none!important;padding:0 20px!important;box-shadow:none!important}
body[data-theme][data-current-tab] #app :is(.ref-stat-strip,.ref-agent-metrics) > :last-child{border-right:0!important}
body[data-theme][data-current-tab] #app .ref-metric-label{display:block;font-size:12px;color:var(--release-muted);margin-bottom:12px}
body[data-theme][data-current-tab] #app .ref-agent-metrics strong{display:block;font:500 28px/36px Inter,sans-serif!important;color:var(--release-text)!important}
body[data-theme][data-current-tab] #app .msg-kpis article > svg{display:none!important}
body[data-theme][data-current-tab] #app .ref-stat-strip .value{font:500 28px/36px Inter,sans-serif!important;color:var(--release-text)!important}
body[data-theme][data-current-tab] #app .ref-analytics-charts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px!important}
body[data-theme][data-current-tab] #app .ref-analytics-charts > :first-child{grid-column:1/-1}
body[data-theme][data-current-tab] #app .chart-wrap{height:240px!important}
body[data-theme][data-current-tab] #app .chart-card h3{font:600 14px/20px Inter,sans-serif!important;margin:4px 0 24px!important}
body[data-theme][data-current-tab] #app #sessions-wrap{border:0!important;border-radius:0!important;margin:0!important}
/* Reference agent catalog; factual binding counts, operational editor intact. */
body[data-theme][data-current-tab] #app .ai-agent-title-icon{display:none!important}
body[data-theme][data-current-tab] #app .ai-agent-catalog{padding:0!important;border:0!important;background:transparent!important}
body[data-theme][data-current-tab] #app .ai-agent-catalog > header{padding:0 0 20px!important;border:0!important;background:transparent!important}
body[data-theme][data-current-tab] #app .ai-agent-card-grid{gap:20px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
body[data-theme][data-current-tab] #app :is(.ai-agent-card,.ai-agent-new-card){padding:22px!important;min-height:240px!important}
body[data-theme][data-current-tab] #app .ref-agent-help{margin-top:24px;border-top:1px solid var(--release-line);padding-top:18px;color:var(--release-muted)}
body[data-theme][data-current-tab] #app .ref-agent-help summary{cursor:pointer;font-size:13px;padding:8px 0}
body[data-theme][data-current-tab] #app .ai-agent-guide{background:var(--release-soft)!important;box-shadow:none!important;border:0!important;margin-top:16px!important}
/* Publication task first, controls and logs available below. */
body[data-theme][data-current-tab] #app .ai-agent-tables{grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr)!important;gap:24px!important}
body[data-theme][data-current-tab] #app .ai-agent-panel{padding:20px!important}
body[data-theme][data-current-tab] #app .ai-agent-panel h2{margin:0 0 20px!important;font:600 14px/20px Inter,sans-serif!important}
body[data-theme][data-current-tab] #app .ref-automation-runtime{margin-top:24px;border:1px solid var(--release-line);border-radius:12px;padding:16px 20px;font-size:13px}
body[data-theme][data-current-tab] #app .ref-automation-runtime summary{cursor:pointer}
body[data-theme][data-current-tab] #app .ai-agent-hero{background:transparent!important;border:0!important;padding:20px 0 0!important;margin:0!important}
/* Messengers: accounts/activity on the left, CRM on the right. */
body[data-theme][data-current-tab] #app .ref-messenger-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px;align-items:start}
body[data-theme][data-current-tab] #app .msg-account-head{display:none!important}
body[data-theme][data-current-tab] #app .msg-account-row{display:grid!important;grid-template-columns:32px minmax(100px,1fr) auto!important;height:auto!important;min-width:0!important;gap:12px!important;padding:20px!important;border-bottom:1px solid var(--release-line)!important;align-items:center!important}
body[data-theme][data-current-tab] #app .msg-account-row > :nth-child(n+3){grid-column:2/4;font-size:12px}
body[data-theme][data-current-tab] #app .msg-account-row button{justify-self:start}
body[data-theme][data-current-tab] #app :is(.msg-activity,.msg-crm){padding:20px!important;margin-top:24px!important}
body[data-theme][data-current-tab] #app .ref-messenger-layout > .msg-crm{margin-top:0!important}
body[data-theme][data-current-tab] #app :is(.msg-accounts-head,.msg-activity h2,.msg-crm h2){font-size:14px!important;text-transform:none!important}
/* Balance panels are flat; hold/available values stay distinct. */
body[data-theme][data-current-tab] #app .network-balances{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:24px}
body[data-theme][data-current-tab] #app .network-balances[hidden]{display:none!important}
body[data-theme][data-current-tab] #app .network-balance-values{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
body[data-theme][data-current-tab] #app .network-balance-card{display:flex!important;justify-content:space-between!important;align-items:center;border:0!important;border-radius:0!important;border-bottom:1px solid var(--release-line)!important;padding:14px 0!important;background:none!important}
body[data-theme][data-current-tab] #app .network-balance-card:first-child{display:block!important}
body[data-theme][data-current-tab] #app .network-balance-card:first-child .value{display:block;font-size:32px!important;margin-top:12px}
body[data-theme][data-current-tab] #app .network-balance-card:not(:first-child) .value{font-size:16px!important}
body[data-theme][data-current-tab] #app .ref-tools-line{display:flex;justify-content:space-between;padding:20px;font-size:13px;color:var(--release-muted)}
@media(max-width:980px){body[data-theme][data-current-tab] #app :is(.ref-mail-layout,.ref-messenger-layout,.ai-agent-tables){grid-template-columns:1fr!important}body[data-theme][data-current-tab] #app .ai-agent-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){body[data-theme][data-current-tab] #app .ref-settings-layout{grid-template-columns:1fr!important;gap:20px}body[data-theme][data-current-tab] #app .ref-settings-nav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:0;padding:0 0 8px}body[data-theme][data-current-tab] #app .ref-settings-tab{white-space:nowrap;width:auto!important;min-height:44px}body[data-theme][data-current-tab] #app .ref-settings-save{margin-left:0!important}body[data-theme][data-current-tab] #app :is(.ref-analytics-charts,.network-balances,.ai-agent-card-grid){grid-template-columns:1fr!important}body[data-theme][data-current-tab] #app :is(.ref-stat-strip,.ref-agent-metrics){grid-template-columns:repeat(2,minmax(0,1fr))!important}body[data-theme][data-current-tab] #app :is(.ref-stat-strip,.ref-agent-metrics)>:is(article,div){padding:14px!important}body[data-theme][data-current-tab] #app .ref-mail-stepper{overflow-x:auto}body[data-theme][data-current-tab] #app .ref-mail-stepper button{white-space:nowrap;min-width:110px;min-height:44px}body[data-theme][data-current-tab] #app .ref-mail-step{padding:20px}}

body[data-theme] #app .settings-card.ref-settings-inactive{display:none!important}

/* Settings use spacing for hierarchy, without decorative heading rules. */
body[data-theme][data-current-tab] #app #tab-settings :is(.page-title,.settings-title,.section-title,.settings-card h3,.settings-card h2){border-bottom:0!important;}

body[data-theme][data-current-tab] #app #tab-settings .settings-card::before{display:none!important;}

#app #tab-settings input[type="file"]{height:auto;min-height:44px;padding:6px;line-height:30px;color:var(--release-muted);}
#app #tab-settings input[type="file"]::file-selector-button{font:inherit;color:var(--release-text);background:var(--release-soft);border:1px solid var(--release-line);border-radius:6px;padding:6px 12px;margin-right:12px;cursor:pointer;}
#app #tab-settings input[type="file"]::file-selector-button:hover{background:var(--release-card);}

body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-table{min-width:0;width:100%;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-accounts-head{flex-wrap:wrap;gap:10px;height:auto;}
body[data-theme][data-current-tab="crm-messengers"] #app :is(.msg-crm,.msg-activity) h2{display:flex;align-items:center;gap:8px;height:auto;margin:0 0 16px;}
body[data-theme][data-current-tab="crm-messengers"] #app :is(.msg-crm,.msg-activity) h2 svg{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.7;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-crm{grid-template-columns:minmax(0,1fr);}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-crm li{height:auto;min-height:60px;align-items:center;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-crm li span{min-width:0;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-row>:not(button){min-width:0;overflow-wrap:anywhere;}
body[data-theme][data-current-tab] #app .ref-tools-line{gap:16px;flex-wrap:wrap;align-items:center;}
#app #avito-file{height:auto;min-height:44px;padding:6px;line-height:30px;color:var(--release-muted);}
#app #avito-file::file-selector-button{font:inherit;color:var(--release-text);background:var(--release-soft);border:1px solid var(--release-line);border-radius:6px;padding:6px 12px;margin-right:12px;cursor:pointer;}

/* Mailing controls retain the complete transport setup in the account step. */
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step {min-width:0;color:var(--release-text);font-size:14px;line-height:1.6;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step .form-row {display:grid;gap:8px;margin:18px 0;color:var(--release-text);font-size:13px;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step :is(input:not([type="checkbox"]),select,textarea) {width:100%;min-width:0;box-sizing:border-box;font-size:14px;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step :is(button,select,input:not([type="checkbox"])) {min-height:44px;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step button {font-size:13px!important;line-height:1.4!important;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step :is(.muted,small,.tg-mailing-accounts span,.tg-mailing-device small) {font-size:12px!important;color:var(--release-muted)!important;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step .actions {display:flex;flex-wrap:wrap;gap:10px;margin:16px 0;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-mailing-device-settings {padding:18px;margin:20px 0;border:0;border-top:1px solid var(--release-line);border-bottom:1px solid var(--release-line);border-radius:0;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-mailing-device-settings summary {padding:4px 0;min-height:36px;font-size:14px;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-pairing {background:var(--release-soft);color:var(--release-text);border-color:var(--release-line);}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-pairing code {color:var(--release-text);}
body[data-theme][data-current-tab="telethon-mailing"] #app #tg-mailing-telethon-settings {margin:20px 0;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-mailing-status-head {flex-wrap:wrap;gap:12px;}
body[data-theme][data-current-tab="telethon-mailing"] #app #tg-mailing-telethon-title {font-size:14px;text-transform:none;letter-spacing:0;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-summary {min-width:0;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-summary-line strong {text-align:right;overflow-wrap:anywhere;}
@media(max-width:600px) {
 body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-stepper {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;}
 body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-stepper button {min-width:0;text-align:left!important;white-space:normal;}
 body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step {padding:20px 16px;}
 body[data-theme][data-current-tab="telethon-mailing"] #app .tg-mailing-controls {grid-template-columns:1fr!important;}
}

body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step .btn-action.primary {background:var(--release-primary)!important;color:var(--release-on)!important;border-color:var(--release-primary)!important;}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step .btn-action.primary:hover {filter:brightness(.9);}
body[data-theme][data-current-tab="telethon-mailing"] #app .ref-mail-step button:focus-visible {outline:2px solid var(--release-text);outline-offset:3px;}

/* Device management: fixed action group, explicit slot capacity, responsive cards. */
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-capacity {display:flex;flex-direction:column;gap:6px;margin:20px 0 12px;padding-bottom:14px;border-bottom:1px solid var(--release-line);}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-capacity strong {font-size:14px;line-height:22px;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-capacity strong span {margin-left:8px;color:var(--release-muted);font-variant-numeric:tabular-nums;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-mailing-device {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:16px;margin:10px 0;align-items:center;border:1px solid var(--release-line);border-radius:12px;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-heading {display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-heading strong {font-size:14px;line-height:22px;overflow-wrap:anywhere;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-heading .tg-device-state {display:inline-flex;align-items:center;gap:6px;margin:0;font-size:12px!important;line-height:18px;color:var(--release-muted);}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-state::before {content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-state[data-state="online"] {color:var(--release-text)!important;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-phone {font-size:14px!important;line-height:22px;font-variant-numeric:tabular-nums;margin:6px 0!important;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-actions {display:flex;gap:8px;justify-content:flex-end;}
body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-actions button {min-height:40px;min-width:88px;padding:8px 12px;white-space:nowrap;}
@media(max-width:1000px) {body[data-theme][data-current-tab="telethon-mailing"] #app .tg-mailing-device {grid-template-columns:minmax(0,1fr);}body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-actions {justify-content:flex-start;}}
@media(max-width:400px) {body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-actions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}body[data-theme][data-current-tab="telethon-mailing"] #app .tg-device-actions button {min-width:0;}}

/* Account rows: identity, connection and actions remain grouped at every width. */
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-row{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr)!important;gap:18px 24px!important;padding:20px 24px!important;align-items:start!important;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-row > :nth-child(n){grid-column:auto!important;font-size:14px;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-identity{display:flex;gap:12px;align-items:center;min-width:0;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-identity>div{display:grid;gap:4px;min-width:0;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-channel-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-channel-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-state{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-state>span{display:inline-flex;align-items:center;gap:7px;font-size:13px;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-state-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:currentColor;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-sync-ok svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;background:none!important;border:0!important;border-radius:0!important;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-meta{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-meta dt{font-size:12px;color:var(--release-muted);margin-bottom:4px;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-meta dd{font-size:13px;margin:0;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-actions button{width:auto!important;min-height:40px!important;height:auto!important;margin:0!important;padding:8px 12px!important;font-size:13px!important;line-height:20px!important;}
body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-actions .ai-agent-status{width:auto!important;align-self:center;background:none!important;font-size:13px;padding:0!important;margin:0!important;}
@media(max-width:720px){body[data-theme][data-current-tab="crm-messengers"] #app .msg-account-row{grid-template-columns:minmax(0,1fr)!important;padding:16px!important;gap:14px!important;}}

/* Agent catalog: each session is an independent grid item. */
body[data-theme][data-current-tab] #app #ai-agent-session-cards{display:contents}
body[data-theme][data-current-tab] #app #ai-agent-card-grid.is-list{grid-template-columns:minmax(0,1fr)!important}
body[data-theme][data-current-tab] #app .ai-agent-card{min-width:0;max-width:100%;height:auto}
body[data-theme][data-current-tab] #app .ai-agent-card footer{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
body[data-theme][data-current-tab] #app .ai-agent-card footer .ai-agent-state{flex:0 1 100%;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;margin-left:0}
body[data-theme][data-current-tab] #app .ai-agent-card h3{overflow-wrap:anywhere}

/* auth.css */
@font-face{font-family:Inter;src:url('/assets/inter-latin-cyrillic-v2.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--auth-bg:var(--release-bg);--auth-card:var(--release-card);--auth-border:var(--release-line);--auth-text:var(--release-text);--auth-muted:var(--release-muted);--auth-button:#ededed;--auth-button-text:#171717;color-scheme:dark}
:root[data-theme="light"],body[data-theme="light"]{--auth-bg:var(--release-bg);--auth-card:var(--release-card);--auth-border:var(--release-line);--auth-text:var(--release-text);--auth-muted:var(--release-muted);--auth-button:#171717;--auth-button-text:#ededed;color-scheme:light}
body:has(.auth-shell){margin:0;background:var(--auth-bg);color:var(--auth-text);font-family:Inter,sans-serif}
#login-overlay,.auth-shell{position:fixed;inset:0;z-index:999;display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:40px 20px;background:var(--auth-bg);color:var(--auth-text);font-family:Inter,sans-serif;box-sizing:border-box}
.login-box,.auth-card{box-sizing:border-box;width:420px;max-width:100%;margin:auto 0;padding:28px;background:var(--auth-card);border:1px solid var(--auth-border);border-radius:12px;box-shadow:none}
.login-box *,.auth-card *{box-sizing:border-box}
.auth-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:32px}
.login-back-link,.auth-meta a{color:var(--auth-muted);text-decoration:none;font-size:13px}
.login-back-link:hover,.auth-meta a:hover{color:var(--auth-text);text-decoration:underline}
.auth-theme-toggle{min-height:36px;padding:6px 10px;border:1px solid var(--auth-border);border-radius:8px;background:transparent;color:var(--auth-muted);font:inherit;font-size:13px;cursor:pointer}
.auth-brand{margin:0 0 24px}.auth-brand img{display:block;width:150px;max-width:100%;height:36px;object-fit:contain;object-position:left}
.auth-brand .auth-logo-light{display:none}body[data-theme="light"] .auth-brand .auth-logo-dark{display:none}body[data-theme="light"] .auth-brand .auth-logo-light{display:block}
.login-box h1,.auth-title{margin:0 0 8px;color:var(--auth-text);font-size:24px;line-height:1.25;font-weight:600;letter-spacing:-.6px}
.login-box .subtitle,.auth-subtitle,.auth-copy{margin:0 0 24px;color:var(--auth-muted);font-size:14px;line-height:1.6}
.login-box .field,.auth-card .field{margin-bottom:18px}.login-box .field>label,.auth-card .field>label:not(.auth-file){display:block;margin-bottom:8px;color:var(--auth-text);font-size:14px;font-weight:400;line-height:1.4}
.login-box input,.auth-card input:not([type="file"]),.auth-card textarea{display:block;width:100%;min-height:44px;padding:11px 12px;border:1px solid var(--auth-border);border-radius:8px;background:var(--auth-bg);color:var(--auth-text);font:inherit;font-size:14px;line-height:1.4;outline:none}
.auth-card textarea{resize:vertical;min-height:100px}.login-box input::placeholder,.auth-card input::placeholder,.auth-card textarea::placeholder{color:var(--auth-muted)}
.login-box input:focus,.auth-card input:focus,.auth-card textarea:focus{border-color:var(--auth-muted)}
.password-field{position:relative}.password-field input{padding-right:48px}.login-box .password-toggle{position:absolute;right:4px;top:4px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:var(--auth-muted);cursor:pointer}.password-toggle svg{width:18px;height:18px}
.login-box button[type="submit"],.auth-button,.auth-link-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:11px 16px;border:1px solid var(--auth-button);border-radius:8px;background:var(--auth-button);color:var(--auth-button-text);font:inherit;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer}
.login-box button[type="submit"]:hover,.auth-button:hover,.auth-link-button:hover{opacity:.88}.login-box button:disabled,.auth-card button:disabled{opacity:.5;cursor:wait}
.login-box .err{margin:0 0 16px;color:var(--auth-text);font-size:13px;line-height:1.5}.login-box .err:empty{display:none}.auth-meta,.auth-note{margin:18px 0 0;color:var(--auth-muted);font-size:13px;line-height:1.6}.auth-note{font-size:12px}.login-box .hint{margin-top:18px;color:var(--auth-muted);font-size:13px;line-height:1.6}.login-box .hint a{color:var(--auth-text)}
.auth-file{display:flex;align-items:center;gap:12px;padding:10px;border:1px dashed var(--auth-border);border-radius:8px;cursor:pointer;font-size:13px;line-height:1.5}.auth-file-button{flex-shrink:0;padding:6px 10px;border:1px solid var(--auth-border);border-radius:6px;color:var(--auth-text)}.auth-file-name{min-width:0;overflow-wrap:anywhere;color:var(--auth-muted)}.auth-file-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.field:focus-within .auth-file{outline:2px solid var(--auth-muted);outline-offset:3px}
.auth-card .status-badge{display:flex;align-items:center;gap:8px;margin-bottom:24px;padding:10px 12px;border:1px solid var(--auth-border);border-radius:8px;color:var(--auth-text);font-size:13px;line-height:1.5}.auth-card .status-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--auth-muted)}.login-highlight{color:var(--auth-text);font-weight:500;overflow-wrap:anywhere}
.login-box a:focus-visible,.auth-card a:focus-visible,.login-box button:focus-visible,.auth-card button:focus-visible{outline:2px solid var(--auth-muted);outline-offset:3px}
@media(max-width:480px){#login-overlay,.auth-shell{padding:20px 12px}.login-box,.auth-card{padding:22px 18px}.auth-topbar{margin-bottom:28px}.login-box h1,.auth-title{font-size:22px}.auth-file{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.login-box *,.auth-card *{transition:none!important}}
/* Session verification controls visibility through the existing inline display contract. */
#login-overlay{display:none}
.login-register{margin-top:18px;color:var(--auth-muted);font-size:13px;line-height:1.6;text-align:center}.login-register-link{color:var(--auth-text);font-weight:400;text-decoration:underline;text-underline-offset:3px}.login-register-link:hover{color:var(--auth-muted)}.login-register-link:focus-visible{outline-color:var(--auth-muted)}

body[data-theme="dark"]{--auth-bg:var(--release-bg);--auth-card:var(--release-card);--auth-border:var(--release-line);--auth-text:var(--release-text);--auth-muted:var(--release-muted);--auth-button:#ededed;--auth-button-text:#171717;color-scheme:dark}
body[data-theme] .login-box{background:var(--auth-card);border-color:var(--auth-border);border-radius:12px;box-shadow:none;animation:none}
body[data-theme] .login-box h1{font-family:Inter,sans-serif;letter-spacing:-.6px}
.auth-topbar svg,.password-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.login-back-link{display:inline-flex;align-items:center;gap:8px}.auth-brand{display:block;text-decoration:none}
.login-register{margin:22px 0 0;color:var(--auth-muted);font-size:13px;line-height:1.6;text-align:center}.login-register a{color:var(--auth-text);text-underline-offset:3px}
.auth-eye-slash{display:none}.password-toggle[aria-pressed="true"] .auth-eye-slash{display:block}
.login-box input:-webkit-autofill,.login-box input:-webkit-autofill:hover,.login-box input:-webkit-autofill:focus,.auth-card input:-webkit-autofill,.auth-card textarea:-webkit-autofill{-webkit-text-fill-color:var(--auth-text)!important;-webkit-box-shadow:0 0 0 1000px var(--auth-bg) inset!important;box-shadow:0 0 0 1000px var(--auth-bg) inset!important;border:1px solid var(--auth-border)!important;caret-color:var(--auth-text)}
.login-box .err{color:#e3a0a4}.auth-card .status-badge.error{color:#e3a0a4}body[data-theme="light"] .login-box .err,body[data-theme="light"] .auth-card .status-badge.error{color:#a52e39}
.auth-shell ::selection,#login-overlay ::selection{background:var(--auth-text);color:var(--auth-bg)}

.auth-brand,.auth-brand img{border:0;outline:0;box-shadow:none;background:transparent}

.auth-brand,.auth-brand img{border:0;outline:0;box-shadow:none;background:transparent}

/* zvonok.css */
/* Zvonok operates within the existing TrafficHub neutral workspace. */
body[data-theme] #app .zvonok-workspace{color:var(--release-text);padding:24px!important;overflow:visible!important}
.zvonok-workspace[hidden],.zvonok-workspace [hidden]{display:none!important}
.zvonok-heading,.zvonok-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.zvonok-heading{justify-content:space-between;margin-bottom:20px}.zvonok-heading h2{margin:0;font-size:22px}.zvonok-heading p{margin:8px 0 0}
.zvonok-workspace p,.zvonok-help{color:var(--release-muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.zvonok-message{min-height:21px;margin:0 0 16px!important}.zvonok-message[data-error="true"]{color:var(--danger,#c44)!important}
.zvonok-connection{border-block:1px solid var(--release-line);padding:16px 0;margin-bottom:24px}.zvonok-connection summary{cursor:pointer;font-weight:600}.zvonok-connection summary span{font-size:12px;font-weight:400;margin-left:12px;color:var(--release-muted)}.zvonok-connection form{margin-top:16px}
.zvonok-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.zvonok-columns h3,.zvonok-import h3{font-size:16px;margin:0 0 18px}.zvonok-campaigns{border-left:1px solid var(--release-line);padding-left:32px;min-width:0}.zvonok-editor{min-width:0}
.zvonok-workspace label:not(.zvonok-consent){display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:500}.zvonok-workspace form{display:grid;gap:16px}.zvonok-workspace input:not([type="checkbox"]),.zvonok-workspace select,.zvonok-workspace textarea{width:100%;min-width:0;box-sizing:border-box;min-height:42px;background:var(--release-card)!important;color:var(--release-text)!important;border:1px solid var(--release-line)!important;border-radius:8px;padding:10px 12px;font:inherit}.zvonok-workspace textarea{resize:vertical;line-height:1.5}.zvonok-workspace input[type="file"]{font-size:12px;padding:8px}
.zvonok-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.zvonok-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;color:var(--release-muted)}.zvonok-consent input{width:18px;height:18px;flex:none;margin:1px 0;accent-color:var(--release-text)}
.zvonok-workspace #zvonok-tts-fields,.zvonok-workspace #zvonok-copy-fields{display:grid;gap:16px}
.zvonok-workspace .btn-action{min-height:40px;max-width:100%;white-space:normal}.zvonok-workspace .btn-action.primary{background:var(--release-primary)!important;color:var(--release-on)!important;border-color:var(--release-primary)!important}.zvonok-workspace :disabled{opacity:.5;cursor:not-allowed}.zvonok-workspace :focus-visible{outline:2px solid var(--release-text);outline-offset:3px}.zvonok-workspace a{color:var(--release-text);font-size:13px;text-underline-offset:4px}
.zvonok-detail-header{margin-top:18px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.zvonok-detail-header strong{overflow-wrap:anywhere}.zvonok-status{font-size:12px;color:var(--release-muted);white-space:normal}.zvonok-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin:20px 0}.zvonok-facts div{min-width:0}.zvonok-facts dt{font-size:12px;color:var(--release-muted)}.zvonok-facts dd{font-size:16px;font-variant-numeric:tabular-nums;margin:6px 0;overflow-wrap:anywhere}.zvonok-import{border-top:1px solid var(--release-line);margin-top:28px;padding-top:24px}.zvonok-file{max-width:340px}.zvonok-results{overflow:auto;max-height:300px;margin-top:16px}.zvonok-results table{width:100%;border-collapse:collapse}.zvonok-results th,.zvonok-results td{text-align:left;padding:10px;border-bottom:1px solid var(--release-line);font-size:12px;overflow-wrap:anywhere}.zvonok-results caption{text-align:left;font-size:13px;font-weight:600;padding:12px 0}.zvonok-result-empty{margin-top:18px}
@media(max-width:900px){.zvonok-columns{grid-template-columns:1fr;gap:24px}.zvonok-campaigns{border-left:0;border-top:1px solid var(--release-line);padding-left:0;padding-top:24px}}
@media(max-width:520px){body[data-theme] #app .zvonok-workspace{padding:16px!important}.zvonok-fields{grid-template-columns:1fr}.zvonok-heading{align-items:flex-start}.zvonok-heading h2{font-size:20px}.zvonok-actions>*{max-width:100%}.zvonok-facts{gap:12px}.zvonok-connection summary span{display:block;margin:8px 0 0}}

/* Component headings must not inherit the fixed app header geometry. */
body[data-theme] #app .zvonok-workspace{max-width:none!important;width:100%;}
.zvonok-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 20px;padding:0;position:static;width:auto;height:auto;}
.zvonok-heading>div{min-width:0;}
.zvonok-heading p{white-space:normal;overflow-wrap:anywhere;}
.zvonok-heading>button{flex:0 0 auto;}
.zvonok-call-results table{min-width:560px;}
.zvonok-results :is(th,td){padding:10px!important;}
.zvonok-results th{white-space:normal!important;}
.zvonok-call-results td:nth-child(-n+4){white-space:nowrap;}
@media(max-width:520px){.zvonok-heading{flex-wrap:wrap;}}

/* telegram-notification-settings.css */
body[data-theme] #app #tab-settings #telegram-notifications-settings .text-muted{margin:0 0 16px;color:var(--release-muted);line-height:1.55}
body[data-theme] #app #tab-settings #telegram-notifications-settings :is(select,input[type=text]){box-sizing:border-box;width:100%;min-width:0;min-height:42px;background:var(--release-card)!important;color:var(--release-text)!important;border:1px solid var(--release-line)!important;border-radius:8px;padding:10px 12px}
body[data-theme] #app #tab-settings #telegram-notifications-settings .checkbox-row{display:flex;align-items:flex-start;gap:10px}
body[data-theme] #app #tab-settings #telegram-notifications-settings .checkbox-row input{flex:0 0 auto;accent-color:var(--release-primary);margin-top:3px}
body[data-theme] #app #tab-settings #telegram-notifications-settings .checkbox-row label{line-height:1.45}
body[data-theme] #app #tab-settings #telegram-notifications-settings #tn-status{margin:12px 0 0;color:var(--release-muted);line-height:1.45}
body[data-theme] #app #tab-settings #telegram-notifications-settings :is(input,select,button):focus-visible{outline:2px solid var(--release-primary);outline-offset:3px}

/* sms-mailing.css */
/* SMS operations use the established neutral TrafficHub surface. */
body[data-theme] #app .sms-workspace{padding:24px!important;max-width:none!important;width:100%;color:var(--release-text);min-width:0;box-sizing:border-box;}
.sms-workspace [hidden],.sms-workspace[hidden]{display:none!important;}.sms-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;}.sms-heading h2{margin:0;font-size:22px;line-height:1.4;}.sms-heading p{margin:6px 0 0;}.sms-workspace p,.sms-help{font-size:13px;line-height:20px;color:var(--release-muted);overflow-wrap:anywhere;}.sms-message{min-height:20px;margin:0 0 16px;}.sms-message[data-error=true]{color:var(--danger,#c44)!important;}.sms-connection{border-block:1px solid var(--release-line);padding:16px 0;margin:0 0 24px;}.sms-connection summary{cursor:pointer;font-weight:600;font-size:14px;}.sms-connection summary span{font-size:12px;font-weight:400;color:var(--release-muted);margin-left:12px;}.sms-connection form{margin-top:16px;max-width:600px;}.sms-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;}.sms-columns h3{margin:0 0 18px;font-size:16px;}.sms-campaigns{border-left:1px solid var(--release-line);padding-left:32px;min-width:0;}.sms-editor{min-width:0;}.sms-workspace form{display:grid;gap:16px;}.sms-workspace label:not(.sms-consent){display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:500;}.sms-workspace :is(input:not([type=checkbox]),textarea,select){width:100%;min-width:0;box-sizing:border-box;min-height:42px;padding:10px 12px;border:1px solid var(--release-line)!important;border-radius:8px;background:var(--release-card)!important;color:var(--release-text)!important;font:inherit;}.sms-workspace textarea{resize:vertical;line-height:1.5;}.sms-workspace input[type=file]{font-size:12px;}.sms-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;}.sms-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:20px;color:var(--release-muted);}.sms-consent input{width:18px;height:18px;flex:none;margin:1px 0;accent-color:var(--release-text);}.sms-actions{display:flex;flex-wrap:wrap;gap:8px;}.sms-workspace .btn-action{min-height:42px;max-width:100%;white-space:normal;}.sms-workspace .btn-action.primary{background:var(--release-primary)!important;color:var(--release-on)!important;border-color:var(--release-primary)!important;}.sms-workspace :disabled{opacity:.5;cursor:not-allowed;}.sms-workspace :focus-visible{outline:2px solid var(--release-text);outline-offset:3px;}.sms-detail-heading{display:flex;justify-content:space-between;gap:12px;margin:20px 0;}.sms-detail-heading strong{overflow-wrap:anywhere;}.sms-detail-heading span{font-size:12px;color:var(--release-muted);}.sms-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px;margin:20px 0;}.sms-facts div{min-width:0;}.sms-facts dt{font-size:12px;color:var(--release-muted);}.sms-facts dd{margin:6px 0 0;font-size:16px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}.sms-results{overflow:auto;max-height:320px;}.sms-results table{width:100%;min-width:460px;border-collapse:collapse;}.sms-results caption{text-align:left;font-size:13px;font-weight:600;padding:16px 0 12px;}.sms-results :is(th,td){padding:10px!important;border-bottom:1px solid var(--release-line);text-align:left;font-size:12px;white-space:normal!important;overflow-wrap:anywhere;}.sms-results td:first-child{white-space:nowrap!important;}
@media(max-width:900px){.sms-columns{grid-template-columns:1fr;gap:24px;}.sms-campaigns{border-left:0;border-top:1px solid var(--release-line);padding:24px 0 0;}}
@media(max-width:520px){body[data-theme] #app .sms-workspace{padding:16px!important;}.sms-heading{flex-wrap:wrap;}.sms-fields{grid-template-columns:1fr;}.sms-heading h2{font-size:20px;}.sms-connection summary span{display:block;margin:8px 0 0;}.sms-actions>*{flex:1 1 140px;}.sms-facts{gap:16px 12px;}}

.sms-heading>div{min-width:0;}.sms-heading p{max-width:70ch;}

/* dashboard-polish.css */
/* Shared operating UI. Preserve route controls and approved TrafficHub palette. */
body[data-theme][data-current-tab] #app main {
  --workspace-control-height:40px;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
  line-height:1.5;
}
body[data-theme][data-current-tab] #app .tab-pane {min-width:0;}
body[data-theme][data-current-tab] #app .tab-pane :is(.page-head,.ref-commerce-page-head) {
  align-items:flex-start!important;gap:20px!important;margin-bottom:28px!important;
}
body[data-theme][data-current-tab] #app .tab-pane :is(.page-title,.ref-commerce-page-title) {
  font-size:26px!important;line-height:1.25!important;letter-spacing:-.025em!important;
  font-weight:600!important;overflow-wrap:anywhere;
}
body[data-theme][data-current-tab] #app .tab-pane :is(.page-subtitle,.ref-commerce-page-subtitle) {
  font-size:14px!important;line-height:1.55!important;margin-top:8px!important;
  max-width:68ch;color:var(--release-muted)!important;
}
body[data-theme][data-current-tab] #app .tab-pane :is(.page-actions,.page-head>.actions,.ref-commerce-head-actions) {
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;
}
body[data-theme][data-current-tab] #app .tab-pane :is(.btn-sm,.btn-action,.btn-primary,.btn-secondary,.btn-ghost) {
  min-height:var(--workspace-control-height)!important;font-size:13px!important;
  line-height:20px!important;gap:8px;padding:9px 14px!important;
  white-space:normal;flex-shrink:0;max-width:100%;overflow-wrap:anywhere;
}
body[data-theme][data-current-tab] #app .tab-pane :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea) {
  min-height:var(--workspace-control-height)!important;font:inherit;font-size:14px!important;
  line-height:1.5;max-width:100%;min-width:0;caret-color:var(--release-text);
}
body[data-theme][data-current-tab] #app .tab-pane textarea {resize:vertical;min-height:104px;}
body[data-theme][data-current-tab] #app .tab-pane :is(.form-row,.settings-grid label) {min-width:0;}
body[data-theme][data-current-tab] #app .tab-pane :is(.form-row>label,.form-row>span,.settings-grid label>span) {
  display:block;font-size:13px!important;line-height:1.5;margin-bottom:7px;
}
body[data-theme][data-current-tab] #app .tab-pane :is(.table-wrap,.table-wrapper,.table-scroll) {
  max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;
}
body[data-theme][data-current-tab] #app .tab-pane table {font-size:13px;font-variant-numeric:tabular-nums;}
body[data-theme][data-current-tab] #app .tab-pane :is(th,td) {vertical-align:middle;line-height:1.45;}
body[data-theme][data-current-tab] #app .tab-pane :is(.empty,.ai-agent-empty,.crm-section-body.empty) {
  font-size:14px!important;line-height:1.6!important;padding:28px 20px!important;
  color:var(--release-muted)!important;
}
body[data-theme][data-current-tab] #app .tab-pane :is(.settings-section,.ai-agent-panel) {min-width:0;}
body[data-theme][data-current-tab] #app .tab-pane :is(.settings-section h2,.ai-agent-panel h2) {
  font-size:16px!important;line-height:1.4!important;font-weight:600!important;
  letter-spacing:0!important;text-transform:none!important;
}
body[data-theme][data-current-tab] #app #tab-automation .settings-grid {grid-template-columns:1fr!important;gap:16px!important;}
body[data-theme][data-current-tab] #app #tab-automation .ai-agent-hero {margin-bottom:24px!important;}
body[data-theme][data-current-tab] #app #tab-automation :is(.ai-agent-hero-body p,.ai-agent-panel footer,.ai-agent-logs) {font-size:13px!important;line-height:1.6;}
body[data-theme][data-current-tab] #app #tab-automation .ai-agent-panel footer {gap:12px;flex-wrap:wrap;}
body[data-theme][data-current-tab] #app #tab-automation .ai-agent-panel footer button {min-height:40px;font-size:13px;}
body[data-theme][data-current-tab] #app .workspace-inline-icon {width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;}
body[data-theme][data-current-tab] #app .tab-pane :is(.settings-tabs,.sub-tabs,.filter-bar,.toolbar) {flex-wrap:wrap;gap:8px;}
body[data-theme][data-current-tab] #app .tab-pane button:disabled {cursor:not-allowed;}
body[data-theme][data-current-tab] #app #tab-settings .form-row:has(button) {flex-wrap:wrap;gap:10px;}
body[data-theme][data-current-tab] #app #tab-settings .form-row button {min-width:0!important;}
body[data-theme][data-current-tab] #app #tab-settings .settings-toolbar {margin:0 0 24px!important;padding:0!important;gap:16px;flex-wrap:wrap;}
body[data-theme][data-current-tab] #app .tab-pane :is(button,input,select,textarea,summary):focus-visible {outline:2px solid var(--release-text);outline-offset:3px;}
body[data-theme][data-current-tab] #app main ::selection {background:var(--release-text);color:var(--release-bg);}
body[data-theme][data-current-tab] #app .tab-pane :is(pre,.ai-agent-logs) {white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;}
@media(max-width:900px) {
  body[data-theme][data-current-tab] #app .tab-pane :is(.page-head,.ref-commerce-page-head) {flex-wrap:wrap!important;}
  body[data-theme][data-current-tab] #app .tab-pane :is(.page-head>.actions,.page-actions) {justify-content:flex-start!important;}
}
@media(max-width:600px) {
  body[data-theme][data-current-tab] #app .tab-pane :is(.page-head,.ref-commerce-page-head) {gap:14px!important;margin-bottom:22px!important;}
  body[data-theme][data-current-tab] #app .tab-pane :is(.page-title,.ref-commerce-page-title) {font-size:23px!important;}
  body[data-theme][data-current-tab] #app .tab-pane :is(.settings-grid,.ai-agent-tables) {grid-template-columns:minmax(0,1fr)!important;gap:18px!important;}
  body[data-theme][data-current-tab] #app #tab-automation .ai-agent-hero-metrics {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
  body[data-theme][data-current-tab] #app .tab-pane :is(.btn-sm,.btn-action,.btn-primary,.btn-secondary) {min-height:44px!important;}
}

/* toggle-system.css */
/* Shared switch geometry; checkbox remains the accessible interactive control. */
body #app .toggle-switch {position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;min-height:44px;flex-shrink:0;}
body #app .toggle-switch input[type=checkbox] {position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;opacity:0!important;clip-path:inset(50%)!important;overflow:hidden!important;pointer-events:none!important;}
body #app .toggle-switch .toggle-switch__track,
body #app #tab-ai-agent .ai-agent-toggle {position:relative;box-sizing:border-box;display:inline-block;width:46px;height:26px;min-width:46px;min-height:26px;padding:0;border:1px solid #737373;border-radius:999px;background:#383838;box-shadow:none;flex-shrink:0;transition:background .16s ease,border-color .16s ease;}
body #app .toggle-switch .toggle-switch__thumb,
body #app #tab-ai-agent .ai-agent-toggle::before {content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#ededed;box-shadow:0 1px 3px #0004;transform:none;transition:transform .16s ease;}
body #app .toggle-switch .toggle-switch__off,body #app .toggle-switch .toggle-switch__on {display:none;}
body #app .toggle-switch input:checked + .toggle-switch__track,
body #app #tab-ai-agent .ai-agent-toggle.is-enabled {background:#ededed;border-color:#ededed;}
body #app .toggle-switch input:checked + .toggle-switch__track .toggle-switch__thumb,
body #app #tab-ai-agent .ai-agent-toggle.is-enabled::before {transform:translateX(20px);background:#171717;}
body[data-theme=light] #app .toggle-switch .toggle-switch__track,
body[data-theme=light] #app #tab-ai-agent .ai-agent-toggle {background:#d4d4d4;border-color:#909090;}
body[data-theme=light] #app .toggle-switch input:checked + .toggle-switch__track,
body[data-theme=light] #app #tab-ai-agent .ai-agent-toggle.is-enabled {background:#171717;border-color:#171717;}
body[data-theme=light] #app .toggle-switch input:checked + .toggle-switch__track .toggle-switch__thumb,
body[data-theme=light] #app #tab-ai-agent .ai-agent-toggle.is-enabled::before {background:#fff;}
body #app .toggle-switch input:focus-visible + .toggle-switch__track,
body #app #tab-ai-agent .ai-agent-toggle:focus-visible {outline:2px solid var(--text);outline-offset:3px;}
body #app .toggle-switch:has(input:disabled),body #app #tab-ai-agent .ai-agent-toggle:disabled {cursor:not-allowed;opacity:.65;}
@media(prefers-reduced-motion:reduce){body #app .toggle-switch *,body #app #tab-ai-agent .ai-agent-toggle::before {transition:none;}}

/* leads-table-header.css */
/* Keep scrolled rows behind an opaque, independently painted header. */
body[data-current-tab="leads"] #app #tab-leads #leads-table-wrap table {
  border-collapse: separate;
  border-spacing: 0;
}
body[data-current-tab="leads"] #app #tab-leads #leads-table-wrap thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  height: 44px;
  box-sizing: border-box;
  padding: 12px 16px !important;
  line-height: 20px;
  background: var(--release-card, var(--surface, #171717)) !important;
  background-clip: border-box;
  box-shadow: 0 1px 0 var(--release-line, var(--border, #343434));
}

/* offers-catalog.css */
body[data-current-tab="offers"] #app #offers-table-wrap .offers-data-table {
  table-layout: fixed !important;
  width: 100% !important;
  min-width: 980px;
}
body[data-current-tab="offers"] #app #offers-table-wrap .offers-data-table :is(th, td) {
  width: calc(100% / 7) !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box;
  overflow-wrap: anywhere;
  padding: 16px !important;
}
body[data-current-tab="offers"] #app #offers-table-wrap .offer-vacancies {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
body[data-current-tab="offers"] #app #offers-table-wrap .offer-row-actions {
  display: flex;
  gap: 6px;
}
body[data-current-tab="offers"] #app #offers-table-wrap .offer-row-actions button {
  width: 36px !important;
  min-width: 36px !important;
  height: 36px !important;
  padding: 8px !important;
}

body[data-current-tab="offers"] #app #offers-table-wrap .offers-data-table tbody tr { height: 88px !important; }
body[data-current-tab="offers"] #app #offers-table-wrap .offers-data-table td:nth-child(2) strong {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 24px !important;
  max-height: 48px;
}
body[data-current-tab="offers"] #app #offers-table-wrap .offer-vacancies {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 24px;
  max-height: 48px;
}

/* filter-status-layout.css */
/* Labels above controls leave the entire width for selected values. */
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filter {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  flex: 1 0 220px !important;
  min-width: 220px !important;
  height: auto !important;
  padding: 10px 12px !important;
  gap: 4px !important;
}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filter select {
  width: 100% !important;
  min-width: 0 !important;
  height: 30px !important;
  padding: 0 24px 0 0 !important;
  margin: 0 !important;
  border: 0 !important;
}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-search { flex: 2 1 280px !important; max-width: none !important; }
body[data-current-tab] #app #tab-leads .overview-reference .ov-load-status {
  display: flex !important;
  flex-wrap: wrap;
  gap: 6px 16px;
  min-height: 0;
  padding: 0;
  margin: 0 0 12px;
}
body[data-current-tab] #app #tab-leads .overview-reference :is(#funnel-period-status,#overview-update-status) {
  position: static !important;
  inset: auto !important;
  display: block;
  font-size: 12px;
  line-height: 18px;
  white-space: normal;
  margin: 0 !important;
}
body[data-current-tab] #app #tab-leads .overview-reference .ov-load-status > span:empty { display: none; }
@media(max-width:600px) {
  body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filter { flex: 1 1 100% !important; min-width: 0 !important; }
}

/* One shared rhythm for the candidate filter toolbar. */
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filters {
  display: grid !important;
  grid-template-columns: minmax(220px,1.35fr) repeat(2,minmax(180px,1fr)) minmax(300px,1.5fr) !important;
  align-items: stretch !important;
  gap: 12px !important;
  margin-bottom: 20px !important;
}
body[data-theme][data-current-tab] #app #tab-crm-leads :is(.crm-leads-search,.crm-leads-filter,.crm-leads-dates) {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 64px !important;
  box-sizing: border-box !important;
  border-radius: 8px !important;
  margin: 0 !important;
}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filter {
  justify-content: center !important;
  gap: 2px !important;
  padding: 8px 12px !important;
}
body[data-theme][data-current-tab] #app #tab-crm-leads :is(.crm-leads-filter > span,.crm-leads-dates > span) {
  border: 0 !important;
  padding: 0 !important;
  line-height: 16px !important;
}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filter select { height: 28px !important; }
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-search { padding: 0 12px !important; }
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-search input { padding: 0 !important; }
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-dates {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) !important;
  grid-template-rows: 16px 28px !important;
  gap: 2px 6px !important;
  padding: 8px 12px !important;
  align-items: center !important;
}
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-dates > span { grid-column: 1 / -1; }
body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-dates input {
  height: 28px !important;
  padding: 0 !important;
  font-size: 12px !important;
}
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis { padding: 16px 0 !important; margin-bottom: 20px !important; }
body[data-theme][data-current-tab] #app #tab-crm-leads #crm-leads-kpis > article { min-height: 76px !important; justify-content: center !important; }
@media(max-width:1200px) {
  body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filters { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media(max-width:600px) {
  body[data-theme][data-current-tab] #app #tab-crm-leads .crm-leads-filters { grid-template-columns: minmax(0,1fr) !important; }
}

body[data-theme][data-current-tab] #app #notification-bell { position: relative !important; overflow: visible !important; }
body[data-theme][data-current-tab] #app #notification-badge:not([hidden]) {
  display: grid !important;
  place-items: center !important;
  position: absolute !important;
  top: -3px !important; right: -5px !important;
  min-width: 20px !important; height: 20px !important;
  padding: 0 4px !important; box-sizing: border-box !important;
  background: #d92d42 !important; color: #fff !important;
  border: 2px solid var(--release-card, #171717) !important;
  font: 700 11px/16px Inter,Arial,sans-serif !important;
  border-radius: 10px !important;
  z-index: 2 !important;
}
body[data-theme][data-current-tab] #app #tab-vacancies .vacancies-ref-kpis { gap: 12px !important; margin: 0 0 20px !important; }
body[data-theme][data-current-tab] #app #tab-vacancies .vacancies-ref-kpis > article {
  min-height: 118px !important; height: auto !important; padding: 16px !important;
  display: flex !important; flex-direction: column !important; gap: 10px !important;
  overflow: visible !important;
}
body[data-theme][data-current-tab] #app #tab-vacancies .vacancies-ref-kpis > article > span { margin-top: auto !important; }
body[data-theme][data-current-tab] #app #tab-vacancies .vacancies-ref-filters { gap: 12px !important; margin: 0 0 20px !important; }
body[data-theme][data-current-tab] #app #tab-vacancies .vacancies-ref-filters :is(input,select) { min-height: 44px !important; }

/* creative-creator.css */
/* Inherit TrafficHub controls, colours and typography. */
.creator-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:24px;align-items:start}
.creator-card{background:var(--release-card);border:1px solid var(--release-line);border-radius:16px;padding:24px;min-width:0}
.creator-card h2{margin:0 0 16px}.creator-card label{display:block;margin:18px 0 8px;font-weight:600}
.creator-card input,.creator-card select,.creator-card textarea{box-sizing:border-box;width:100%;font:inherit;color:inherit;background:var(--release-bg);border:1px solid var(--release-line);border-radius:8px;padding:12px;min-height:44px}.creator-card textarea{resize:vertical}
.creator-card select option{background:var(--release-card);color:var(--release-text)}
.creator-card button{min-height:44px;padding:10px 18px;border-radius:8px;font:inherit;cursor:pointer}.creator-card button:disabled{opacity:.55;cursor:default}
.creator-card :focus-visible{outline:2px solid var(--accent-color,#4f8cff);outline-offset:3px}
.creator-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.creator-result-header{display:flex;justify-content:space-between;gap:12px;align-items:center}
.creator-result{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;min-height:300px}.creator-card [hidden]{display:none!important}#creator-submit{margin-top:22px}#creator-status{min-height:24px}
[data-theme="light"] .creator-card,body.light-theme .creator-card{background:#fff;border-color:#d5d8df;color:#20242b}
[data-theme="light"] .creator-card select option,body.light-theme .creator-card select option{background:#fff;color:#20242b}
@media(max-width:1000px){.creator-workspace{grid-template-columns:1fr}}@media(max-width:520px){.creator-fields{grid-template-columns:1fr}.creator-card{padding:16px}.creator-result-header{flex-wrap:wrap}}
body[data-theme] #tab-automation{padding:32px;box-sizing:border-box;color:var(--release-text)}
#tab-automation .page-header{margin-bottom:28px}#tab-automation .page-header h1{font-size:26px;line-height:1.25;margin:0 0 8px}
@media(max-width:520px){body[data-theme] #tab-automation{padding:16px}}
