/* ═══════════════════════════════════════════════════════════════════════════
   VALIOM DS v2 — ADAPTADOR DO TRÁFEGO IA (crm/trafego.html)
   Escopo: html.vds[data-theme] body  (o Tráfego nasce escuro; claro segue igual)
   "Não é uma interface futurista separada — é Valiom": mesma paleta, mesmas
   faixas executivas, mesmos botões/abas do Sistema e do CRM.
   Só CSS — nada de goTab, req(), gráficos SVG, publicação ou chat é alterado.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 1. Variáveis legadas → tokens (as do Tráfego vivem no <body>) ─────────── */
html.vds[data-theme] body {
  --bg: var(--vds-bg-canvas); --sb: var(--vds-bg-header);
  --s1: var(--vds-surface-1); --s2: var(--vds-surface-2); --s3: var(--vds-surface-3);
  --b1: var(--vds-border-default); --b2: var(--vds-border-strong);
  --t1: var(--vds-text-primary); --t2: var(--vds-text-body); --t3: var(--vds-text-secondary);
  --gold: var(--vds-accent); --g2: var(--vds-accent-press);
  --gbg: var(--vds-surface-selected); --gb: var(--vds-accent-bd-weak); --gold-glow: transparent;
  --green: var(--vds-success); --red: var(--vds-danger); --blue: var(--vds-info); --cyan: var(--vds-info);
  --glass-bg: var(--vds-surface-1);
  --r: var(--vds-radius-md); --rl: var(--vds-radius-xl);
  background: var(--vds-bg-canvas) !important;
  color: var(--vds-text-primary);
  font-family: var(--vds-font-sans) !important;
  -webkit-font-smoothing: antialiased;
}
html.vds[data-theme] body::before { display: none !important; }            /* grão */
html.vds[data-theme] body :is(input, select, textarea, button) { font-family: inherit; }
html.vds[data-theme] body * { text-shadow: none !important; }

/* ── 2. HEADER + ABAS ─────────────────────────────────────────────────────── */
html.vds[data-theme] body .topbar {
  height: 56px; padding: 0 24px; background: var(--vds-bg-header) !important;
  border-bottom: 1px solid var(--vds-border-subtle) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
html.vds[data-theme] body .logo { font-family: var(--vds-font-sans) !important; font-weight: 700 !important; letter-spacing: -.01em !important; text-transform: none !important; color: var(--vds-text-primary); font-size: 15px; }
html.vds[data-theme] body .logo i { color: var(--vds-accent); }
html.vds[data-theme] body .logo-sub { color: var(--vds-text-secondary); }
html.vds[data-theme] body .tabs {
  gap: 24px; padding: 0 24px; background: var(--vds-bg-header) !important;
  border-bottom: 1px solid var(--vds-border-default) !important; backdrop-filter: none !important;
}
html.vds[data-theme] body .tab {
  position: relative; padding: 12px 2px; border-bottom: 0 !important; color: var(--vds-text-tertiary) !important;
  font: 500 13px var(--vds-font-sans); opacity: 1 !important;
}
html.vds[data-theme] body .tab:hover { color: var(--vds-text-secondary) !important; }
html.vds[data-theme] body .tab.on { color: var(--vds-text-primary) !important; background: transparent !important; }
html.vds[data-theme] body .tab.on::after { content: ''; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; border-radius: 2px; background: var(--vds-accent); }
html.vds[data-theme] body .tab i { color: inherit !important; }
html.vds[data-theme] body .theme-toggle-btn .tt-track { background: var(--vds-surface-3); border-color: var(--vds-border-strong); }
html.vds[data-theme] body .theme-toggle-btn .tt-thumb { background: var(--vds-accent); box-shadow: none; }
html.vds[data-theme] body .theme-toggle-btn :is(.tt-sun, .tt-moon) { filter: none; }
html.vds[data-theme] body .content { padding: 24px; }

/* ── 3. BOTÕES / INPUTS ───────────────────────────────────────────────────── */
html.vds[data-theme] body :is(.btn, .dv-btn, .rl-btn, .wz30-btn-primary, .wz30-btn-ghost, .rec-btn-apply, .rec-btn-dismiss) {
  border-radius: var(--vds-radius-md); font-family: var(--vds-font-sans); letter-spacing: 0; text-transform: none; box-shadow: none !important; animation: none !important;
}
html.vds[data-theme] body :is(.btn-gold, .dv-btn, .rl-btn.gold, .wz30-btn-primary, .rec-btn-apply, button[onclick*="loadDashboard"], button[onclick*="atualizar"]) {
  background: var(--vds-accent) !important; color: var(--vds-on-accent) !important; border: 1px solid transparent !important; font-weight: 600 !important;
}
html.vds[data-theme] body :is(.btn-gold, .dv-btn, .rl-btn.gold, .wz30-btn-primary, .rec-btn-apply):hover { background: var(--vds-accent-hover) !important; transform: none !important; }
html.vds[data-theme] body .dv-btn { min-height: 30px; padding: 0 12px; font-size: 12px; }
html.vds[data-theme] body :is(.btn-ghost, .rl-btn:not(.gold), .wz30-btn-ghost, .rec-btn-dismiss) {
  background: var(--vds-surface-1); border: 1px solid var(--vds-border-strong); color: var(--vds-text-primary);
}
html.vds[data-theme] body :is(.btn-ghost, .rl-btn:not(.gold), .wz30-btn-ghost):hover { background: var(--vds-surface-hover); }
html.vds[data-theme] body .rec-btn-dismiss:hover { color: var(--vds-danger); border-color: var(--vds-danger-bd); }
html.vds[data-theme] body .copy-btn { background: var(--vds-surface-2); border-color: var(--vds-border-default); color: var(--vds-text-body); border-radius: var(--vds-radius-sm); }
html.vds[data-theme] body .ihub-del-btn:hover { box-shadow: none !important; }
html.vds[data-theme] body :is(.field input, .field select, .field textarea, .dv-sel, select, .rl-filters select, .rl-filters input, .bp-in, .wz30-input, #meta-camp-search, #cr-search, #dash-chat-input, #anc-chat-input) {
  background-color: var(--vds-surface-input) !important; border: 1px solid var(--vds-border-default) !important;
  border-radius: var(--vds-radius-md) !important; color: var(--vds-text-primary) !important; backdrop-filter: none !important;
}
html.vds[data-theme] body :is(input, select, textarea):focus { border-color: var(--vds-focus-border) !important; box-shadow: var(--vds-focus-ring) !important; outline: none; }
html.vds[data-theme] body :is(input, textarea)::placeholder { color: var(--vds-text-placeholder); }
html.vds[data-theme] body select option { background: var(--vds-surface-2); color: var(--vds-text-primary); }
html.vds[data-theme] body .field label { color: var(--vds-text-secondary); font-size: 12px; font-weight: 500; text-transform: none; letter-spacing: 0; }
html.vds[data-theme] body .wz30-budget-row:focus-within { box-shadow: var(--vds-focus-ring) !important; }

/* ── 4. DASHBOARD — faixas executivas (MetricGroup) ───────────────────────── */
html.vds[data-theme] body .dv-bar { background: var(--vds-bg-canvas); border-bottom-color: var(--vds-border-subtle); padding: 12px 24px; }
html.vds[data-theme] body .dv-kpi-row,
html.vds[data-theme] body .dv-kpi-row[style*="border-bottom:2px solid var(--gold)"] {
  margin: 16px 24px 0; background: var(--vds-surface-1) !important; border: 1px solid var(--vds-border-default) !important;
  border-radius: var(--vds-radius-xl); overflow: hidden; box-shadow: none !important; backdrop-filter: none !important;
}
html.vds[data-theme] body .dv-kpi { background: transparent !important; border-right: 1px solid var(--vds-border-subtle) !important; padding: 18px 20px; box-shadow: none !important; transform: none !important; animation: none; }
html.vds[data-theme] body .dv-kpi:last-child { border-right: 0 !important; }
html.vds[data-theme] body .dv-kpi::before, html.vds[data-theme] body .dv-kpi::after { display: none !important; }
html.vds[data-theme] body .dv-kpi:hover { background: var(--vds-tint-faint) !important; }
html.vds[data-theme] body .dv-kpi-lbl { font: 500 12px/1.3 var(--vds-font-sans) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--vds-text-secondary) !important; }
html.vds[data-theme] body :is(.dv-kpi-val, #dv-roas-real, #dv-attr-revenue, #dv-attr-matched, #dv-attr-purchases, #dv-spend, #dv-reach, #dv-clicks, #dv-ctr, #dv-unread, #dv-hookrate, #dv-watchrate, #dv-vplays, #dv-cpa-real, #dv-cpl-real, #dv-closing-rate, #dv-cycle-days, #dv-agendados, #dv-stuck-count) {
  font-family: var(--vds-font-sans) !important; font-weight: 600 !important; letter-spacing: -.02em !important;
  color: var(--vds-text-primary) !important; font-variant-numeric: tabular-nums;
}
html.vds[data-theme] body .dv-kpi-sub { color: var(--vds-text-secondary) !important; font-size: 12px; }
/* Destaque "Serviços agendados": sucesso semântico, sem gradiente */
html.vds[data-theme] body .dv-kpi.dv-kpi-hi { background: var(--vds-success-bg) !important; box-shadow: inset 2px 0 0 var(--vds-success) !important; }
html.vds[data-theme] body #dv-agendados-sub { font-family: var(--vds-font-sans) !important; font-weight: 600 !important; font-size: 14px !important; letter-spacing: 0; background: transparent; border-color: var(--vds-accent-bd); border-radius: var(--vds-radius-sm); }
/* Resumo executivo */
html.vds[data-theme] body .dv-exec { background: var(--vds-border-subtle) !important; border-bottom: 1px solid var(--vds-border-default) !important; }
html.vds[data-theme] body .dv-exec-cell,
html.vds[data-theme] body .dv-exec-cell.is-roas { background: var(--vds-surface-1) !important; }
html.vds[data-theme] body .dv-exec-cell.is-roas { box-shadow: inset 0 2px 0 var(--vds-accent); }
html.vds[data-theme] body .dv-exec-lbl { color: var(--vds-text-secondary); text-transform: none; letter-spacing: 0; font-weight: 500; }
html.vds[data-theme] body .dv-exec-val { font-family: var(--vds-font-sans) !important; font-weight: 600 !important; letter-spacing: -.02em; color: var(--vds-text-primary); font-variant-numeric: tabular-nums; }
html.vds[data-theme] body :is(.dv-exec-sub, .dv-exec-verdict) { color: var(--vds-text-secondary); }
/* Cabeçalho de seção */
html.vds[data-theme] body .dv-sh { font: 600 11px var(--vds-font-sans); letter-spacing: .14em; color: var(--vds-text-secondary); padding: 20px 24px 0; }
html.vds[data-theme] body .dv-sh::before { width: 7px; height: 7px; border-radius: 1px; transform: rotate(45deg); background: var(--vds-accent); }
html.vds[data-theme] body :is(.dv-ct-hd, .dv-lt-hd) { font: 500 11px var(--vds-font-sans); letter-spacing: .06em; color: var(--vds-text-tertiary); }
/* Tabelas/listas de campanha */
html.vds[data-theme] body :is(#dv-camps, #dv-attr-table-wrap) { background: var(--vds-surface-1) !important; border: 1px solid var(--vds-border-default) !important; border-radius: var(--vds-radius-xl) !important; box-shadow: none !important; backdrop-filter: none !important; }
html.vds[data-theme] body #dv-attr-rows > div { border-bottom: 1px solid var(--vds-border-subtle) !important; }
html.vds[data-theme] body :is(#dv-camps, #dv-attr-rows) > div:hover { background: var(--vds-tint-row) !important; border-left-color: transparent !important; box-shadow: none !important; }
html.vds[data-theme] body .rl-tbl th { color: var(--vds-text-tertiary); font: 500 11px var(--vds-font-sans); letter-spacing: .06em; border-bottom-color: var(--vds-border-default); }
html.vds[data-theme] body .rl-tbl td { border-bottom-color: var(--vds-border-subtle); color: var(--vds-text-body); font-variant-numeric: tabular-nums; }
html.vds[data-theme] body :is(.rl-kpi, .rl-sec, .rl-step) { background: var(--vds-surface-1); border-color: var(--vds-border-default); border-radius: var(--vds-radius-xl); box-shadow: none; }
html.vds[data-theme] body .rl-tag { border-radius: var(--vds-radius-sm); }
html.vds[data-theme] body .rl-tag.on { background: var(--vds-surface-selected); border-color: var(--vds-accent-bd); color: var(--vds-text-primary); }
/* Recomendações / Gestor */
html.vds[data-theme] body :is(.rec-card, .gi-card) { background: var(--vds-surface-1); border-color: var(--vds-border-default); border-radius: var(--vds-radius-lg); box-shadow: none; }
html.vds[data-theme] body .rec-head-badge { font-family: var(--vds-font-sans) !important; font-weight: 600; border-radius: var(--vds-radius-sm); }
html.vds[data-theme] body #dv-recommendations { background: var(--vds-surface-1) !important; border-color: var(--vds-border-default) !important; }
/* Funil — sem neon/pulso */
html.vds[data-theme] body :is(.funnel-premium-wrap, .funnel-crm-premium-wrap) { background: var(--vds-surface-1) !important; border: 1px solid var(--vds-border-default) !important; border-radius: var(--vds-radius-xl) !important; box-shadow: none !important; backdrop-filter: none !important; }
html.vds[data-theme] body :is(.funnel-premium-wrap, .funnel-crm-premium-wrap)::before { display: none !important; }
html.vds[data-theme] body :is(.funnel-stage-3d svg, #dv-funnel svg) { filter: none !important; }
html.vds[data-theme] body #dv-funnel svg:hover { transform: none !important; filter: none !important; }
html.vds[data-theme] body :is(#dv-funnel-revenue-badge, #dv-organic-revenue-badge) { animation: none !important; box-shadow: none !important; font-family: var(--vds-font-sans) !important; }
/* Sparkline: cor semântica mantida, sem brilho */
html.vds[data-theme] body .dv-spark :is(path.line, .dot-end) { filter: none !important; }
html.vds[data-theme] body .dv-spark path.area { opacity: .35; }
/* Alertas inline (banners verde/vermelho) — sem vidro */
html.vds[data-theme] body :is(div[style*="background:rgba(192,57,43"], div[style*="background:rgba(0,135,90"]) { backdrop-filter: none !important; border-radius: var(--vds-radius-lg) !important; }

/* ── 5. CRIATIVOS / STUDIO / CONFIG ───────────────────────────────────────── */
html.vds[data-theme] body .studio-card { background: var(--vds-surface-1); border: 1px solid var(--vds-border-default); border-radius: var(--vds-radius-xl); box-shadow: none; }
html.vds[data-theme] body .studio-card:hover { border-color: var(--vds-border-strong); box-shadow: none; transform: none; }
html.vds[data-theme] body :is(.cfg-status-item, .cfgp-item) { border-radius: var(--vds-radius-md); }
html.vds[data-theme] body :is(.csi-dot, .ihub-dot-on)::after { animation: none !important; box-shadow: none !important; }
html.vds[data-theme] body :is(.ihub-badge-on, .ihub-dot-on, .ihub-row.active, .ihub-toggle.on) { box-shadow: none !important; }
html.vds[data-theme] body .ihub-toggle.on { background: var(--vds-success) !important; }
html.vds[data-theme] body .tag { background: var(--vds-surface-2); border: 1px solid var(--vds-border-default); color: var(--vds-text-body); border-radius: var(--vds-radius-sm); }
html.vds[data-theme] body .priority { border-radius: var(--vds-radius-sm); }
html.vds[data-theme] body .camp-menu { background: var(--vds-surface-2) !important; border: 1px solid var(--vds-border-default) !important; border-radius: var(--vds-radius-lg) !important; box-shadow: var(--vds-shadow-pop) !important; }
html.vds[data-theme] body .camp-menu .cmi:hover { background: var(--vds-surface-hover); }

/* ── 6. MODAIS / WIZARD / TOAST / LOADING ─────────────────────────────────── */
html.vds[data-theme] body :is(#modal-import-creative, #modal-edit-creative, #modal-fullcamp, #modal-analise-camp, #modal-page-posts, #modal-edit-camp, #modal-quick-budget, #modal-duplicate-camp, #modal-wizard, #modal-iterar) {
  background: var(--vds-overlay) !important; backdrop-filter: blur(2px) !important;
}
html.vds[data-theme] body :is(#modal-import-creative, #modal-edit-creative, #modal-fullcamp, #modal-analise-camp, #modal-page-posts, #modal-edit-camp, #modal-quick-budget, #modal-duplicate-camp, #modal-wizard, #modal-iterar) > div {
  background: var(--vds-surface-2) !important; border: 1px solid var(--vds-border-default) !important;
  border-radius: var(--vds-radius-xl) !important; box-shadow: var(--vds-shadow-modal) !important;
}
html.vds[data-theme] body .wz30-bg { background: var(--vds-overlay) !important; backdrop-filter: blur(2px) !important; }
html.vds[data-theme] body .wz30 { background: var(--vds-surface-2); border: 1px solid var(--vds-border-default); border-radius: var(--vds-radius-xl); box-shadow: var(--vds-shadow-modal); }
html.vds[data-theme] body .wz30-head { background: var(--vds-surface-2) !important; border-bottom: 1px solid var(--vds-border-subtle); }
html.vds[data-theme] body .wz30-head-ico { background: var(--vds-surface-3) !important; color: var(--vds-accent); box-shadow: none !important; }
html.vds[data-theme] body .wz30-head-ttl { font: 600 18px var(--vds-font-sans) !important; letter-spacing: -.01em; }
html.vds[data-theme] body .wz30-foot { background: var(--vds-surface-2); border-top: 1px solid var(--vds-border-subtle); }
html.vds[data-theme] body .wz30-chip { border-radius: var(--vds-radius-sm); }
html.vds[data-theme] body #toast { background: var(--vds-surface-2); border: 1px solid var(--vds-border-default); border-left: 3px solid var(--vds-accent); border-radius: var(--vds-radius-lg); box-shadow: var(--vds-shadow-pop); color: var(--vds-text-primary); }
html.vds[data-theme] body .load-spin { border-color: var(--vds-spinner-track); border-top-color: var(--vds-accent); }
html.vds[data-theme] body .load-row { color: var(--vds-text-secondary); }

/* ── 7. CONSULTOR (chat) — parte do produto, não widget anexado ────────────── */
html.vds[data-theme] body #dash-chat-drawer { background: var(--vds-surface-1) !important; border-left: 1px solid var(--vds-border-default) !important; box-shadow: -24px 0 64px rgba(0, 0, 0, .5) !important; }
html.vds[data-theme] body #dash-chat-fab { box-shadow: 0 8px 24px rgba(0, 0, 0, .45) !important; animation: none !important; }
html.vds[data-theme] body #dash-chat-send { background: var(--vds-accent) !important; color: var(--vds-on-accent) !important; border-radius: var(--vds-radius-md) !important; box-shadow: none !important; }
html.vds[data-theme] body #bib-drawer { background: var(--vds-surface-1) !important; border-color: var(--vds-border-default) !important; }

/* ── 8. LOGIN / SELETOR STANDALONE ────────────────────────────────────────── */
html.vds[data-theme] body #trafego-login-overlay > div { box-shadow: var(--vds-shadow-modal) !important; background: var(--vds-surface-2) !important; border: 1px solid var(--vds-border-default) !important; }
html.vds[data-theme] body #va-switch { background: var(--vds-surface-1) !important; border-color: var(--vds-border-default) !important; border-radius: var(--vds-radius-md) !important; }

/* ── 9. SCROLLBAR / MATA-GLOW INLINE ──────────────────────────────────────── */
html.vds[data-theme] body ::-webkit-scrollbar-track { background: transparent !important; }
html.vds[data-theme] body ::-webkit-scrollbar-thumb { background: var(--vds-spinner-track) !important; }
html.vds[data-theme] body [style*="0 0 12px rgba(235"],
html.vds[data-theme] body [style*="0 0 16px rgba(235"],
html.vds[data-theme] body [style*="0 0 20px rgba(235"],
html.vds[data-theme] body [style*="0 0 24px rgba(235"],
html.vds[data-theme] body [style*="0 0 60px rgba(235"] { box-shadow: none !important; }

@media (max-width: 760px) {
  html.vds[data-theme] body .topbar, html.vds[data-theme] body .tabs { padding: 0 12px; }
  html.vds[data-theme] body .tabs { gap: 16px; overflow-x: auto; }
  html.vds[data-theme] body .dv-kpi-row { margin: 12px 12px 0; }
  html.vds[data-theme] body .content { padding: 12px; }
}

/* ── 10. Ajustes pós-QA — controles segmentados (o JS pinta a opção ativa com
   background var(--gold) inline). v2: ativa = superfície elevada + texto primary;
   o dourado fica reservado ao CTA ("Atualizar", "Criar campanha"). */
html.vds[data-theme] body :is(#dv-status-seg button, [id^="crtab-"], [id^="cr-type-"], [id^="fcf-"], .dv-st-btn)[style*="var(--gold)"] {
  background: var(--vds-surface-3) !important; color: var(--vds-text-primary) !important;
  border-color: var(--vds-border-strong) !important; box-shadow: none !important;
}
html.vds[data-theme] body :is(#dv-status-seg button, [id^="crtab-"], [id^="cr-type-"], [id^="fcf-"], .dv-st-btn) { border-radius: var(--vds-radius-sm) !important; }

/* ═══ ONDA 2 — POLIMENTO / CONSISTÊNCIA (25/09/2026) ═════════════════════════ */
/* ── 11. Embutido no Sistema: mesmo cabeçalho do CRM embutido — sem topbar duplicada
   (logo/tema/"Sair" já existem no shell do Sistema); a barra de abas vira o topo do módulo. */
html.vds.va-embed[data-theme] body .topbar { display: none !important; }
html.vds[data-theme] body .tabs { height: 44px; align-items: stretch; }
html.vds[data-theme] body .tab { display: inline-flex; align-items: center; gap: 8px; padding: 0 2px; }

/* ── 12. MetricGroup automático — mesma regra do Sistema e do CRM ─────────────── */
html.vds[data-theme] body :is(.rl-grid, #meta-kpis):has(> :nth-child(3)) {
  gap: 0 !important; background: var(--vds-surface-1); border: 1px solid var(--vds-border-default);
  border-radius: var(--vds-radius-xl); overflow: hidden;
}
html.vds[data-theme] body :is(.rl-grid, #meta-kpis):has(> :nth-child(3)) > * {
  background: transparent !important; border: 0 !important; border-radius: 0 !important; margin: 0 !important;
  box-shadow: -1px 0 0 0 var(--vds-border-default), 0 -1px 0 0 var(--vds-border-default) !important;
  padding: 16px 20px !important; text-align: left !important;
}
/* faixas do dashboard: divisores que sobrevivem à quebra de linha */
html.vds[data-theme] body .dv-kpi { border-right: 0 !important; box-shadow: -1px 0 0 0 var(--vds-border-default), 0 -1px 0 0 var(--vds-border-default) !important; }
html.vds[data-theme] body .dv-kpi.dv-kpi-hi { box-shadow: -1px 0 0 0 var(--vds-border-default), 0 -1px 0 0 var(--vds-border-default), inset 2px 0 0 var(--vds-success) !important; }
/* número do KPI neutro ("Gasto total" vermelho não é erro); tendência segue semântica */
html.vds[data-theme] body #meta-kpis > * > div:nth-child(2) { color: var(--vds-text-primary) !important; font-size: 22px !important; font-weight: 600 !important; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
html.vds[data-theme] body #meta-kpis > * > div:first-child { font-size: 12px !important; color: var(--vds-text-secondary) !important; }
html.vds[data-theme] body .rl-kpi .l { font-size: 12px; color: var(--vds-text-secondary); }
html.vds[data-theme] body .rl-kpi .v { font-size: 22px; font-weight: 600; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }

/* ── 13. Controles: alturas/raios do DS (sm 32 · md 36) ──────────────────────── */
html.vds[data-theme] body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]), select) {
  min-height: var(--vds-h-sm); font-size: 13px !important; border-radius: var(--vds-radius-md) !important;
}
html.vds[data-theme] body :is(.field input, .field select, .bp-in, .wz30-input, #panel-settings input, #panel-settings select) { min-height: var(--vds-h-md); }
html.vds[data-theme] body :is(input, select, textarea) { background-color: var(--vds-surface-input) !important; border-color: var(--vds-border-default) !important; }
html.vds[data-theme] body textarea { font-size: 13px !important; border-radius: var(--vds-radius-md) !important; }
html.vds[data-theme] body :is(.btn, .rl-btn, .wz30-btn-primary, .wz30-btn-ghost) { min-height: var(--vds-h-md); font-size: 13px !important; }
html.vds[data-theme] body :is(.dv-btn, .rec-btn-apply, .rec-btn-dismiss, .cfgp-fix, .copy-btn) { min-height: var(--vds-h-sm); padding: 0 12px !important; font-size: 12px !important; border-radius: var(--vds-radius-md) !important; }
/* "CSV" ao lado de "Atualizar": ação secundária (um primário por barra) */
html.vds[data-theme] body .dv-btn:not([onclick*="loadDashboard"]):not([onclick*="atualizar"]):not([onclick*="Atualizar"]) {
  background: var(--vds-surface-1) !important; color: var(--vds-text-primary) !important; border: 1px solid var(--vds-border-strong) !important;
}
html.vds[data-theme] body .cfgp-fix { background: var(--vds-surface-1) !important; border: 1px solid var(--vds-warning-bd) !important; color: var(--vds-accent-hover) !important; font-family: var(--vds-font-sans) !important; }
/* segmentados (Ativas/Pausadas/Todas, Imagem/Vídeo…) com altura única */
html.vds[data-theme] body :is(#dv-status-seg button, .dv-st-btn, [id^="crtab-"], [id^="cr-type-"], [id^="fcf-"]) { min-height: 28px; font-size: 12px !important; font-family: var(--vds-font-sans) !important; }
html.vds[data-theme] body :is(input, select, textarea, button):focus-visible { outline: none; box-shadow: var(--vds-focus-ring) !important; }

/* ── 14. IA dentro do produto (não widget) ───────────────────────────────────── */
/* abas laterais "Falar com a IA" / "Biblioteca": MESMO componente, neutro, ícone dourado */
html.vds[data-theme] body :is(#dash-chat-fab, #bib-fab) {
  background: var(--vds-surface-2) !important; color: var(--vds-text-primary) !important; border: 1px solid var(--vds-border-strong) !important;
  border-right: 0 !important; border-radius: var(--vds-radius-md) 0 0 var(--vds-radius-md) !important;
  font: 600 12px var(--vds-font-sans) !important; box-shadow: -8px 0 24px rgba(0, 0, 0, .35) !important;
}
html.vds[data-theme] body :is(#dash-chat-fab, #bib-fab):hover { background: var(--vds-surface-hover) !important; }
html.vds[data-theme] body :is(#dash-chat-fab, #bib-fab) i { color: var(--vds-accent) !important; }
html.vds[data-theme] body #dash-chat-drawer [style*="Rajdhani"],
html.vds[data-theme] body #bib-drawer [style*="Rajdhani"] { font-family: var(--vds-font-sans) !important; font-weight: 600 !important; }
html.vds[data-theme] body #dash-chat-suggest button { border-radius: var(--vds-radius-sm) !important; font-size: 12px !important; padding: 6px 10px !important; background: var(--vds-surface-2) !important; border-color: var(--vds-border-default) !important; }
html.vds[data-theme] body #dash-chat-suggest button:hover { background: var(--vds-surface-hover) !important; color: var(--vds-text-primary) !important; }
html.vds[data-theme] body :is(#dash-chat-msgs, #anc-chat-msgs) > div > div { border-radius: var(--vds-radius-lg) !important; font-size: 13px !important; line-height: 1.5 !important; }
html.vds[data-theme] body :is(#dash-chat-msgs, #anc-chat-msgs) div[style*="rgba(235,200,63,.14)"] { background: var(--vds-surface-hover) !important; border-color: var(--vds-border-default) !important; }
html.vds[data-theme] body .fa-robot { color: var(--vds-text-secondary) !important; }

/* ── 15. Dourado só com significado + resíduos de gradiente ─────────────────── */
html.vds[data-theme] body [style*="Rajdhani"]:is([style*="color:var(--gold)"], [style*="color: var(--gold)"]) { color: var(--vds-text-primary) !important; font-family: var(--vds-font-sans) !important; font-weight: 600 !important; letter-spacing: 0 !important; }
html.vds[data-theme] body .dv-sh { color: var(--vds-text-secondary) !important; }
html.vds[data-theme] body .dv-sh i { color: var(--vds-text-tertiary) !important; }
html.vds[data-theme] body #dv-howitworks-banner { background: var(--vds-surface-2) !important; border: 1px solid var(--vds-border-default) !important; border-left: 3px solid var(--vds-info) !important; border-radius: var(--vds-radius-lg) !important; }
html.vds[data-theme] body #dv-howitworks-banner strong { color: var(--vds-text-primary) !important; }
html.vds[data-theme] body #panel-creatives > div:first-child,
html.vds[data-theme] body #cr-lib-actions ~ *, html.vds[data-theme] body div:has(> div > #cr-lib-actions), html.vds[data-theme] body div:has(> #cr-lib-actions) { background-image: none !important; border-bottom-color: var(--vds-border-default) !important; }
html.vds[data-theme] body #cr-lib-actions button[style*="gradient"] { background: var(--vds-accent) !important; color: var(--vds-on-accent) !important; box-shadow: none !important; border-radius: var(--vds-radius-md) !important; min-height: var(--vds-h-sm); font-weight: 600 !important; }
html.vds[data-theme] body .ihub-card { background: var(--vds-surface-1) !important; border: 1px solid var(--vds-border-default) !important; border-radius: var(--vds-radius-xl) !important; box-shadow: none !important; }
html.vds[data-theme] body .ihub-badge { border-radius: var(--vds-radius-sm) !important; font-size: 11px !important; letter-spacing: .04em; }
html.vds[data-theme] body .dv-exec-cell.is-roas { box-shadow: inset 0 2px 0 var(--vds-accent) !important; }
html.vds[data-theme] body svg text { filter: none !important; }
html.vds[data-theme] body .content :is(div, section)[style*="border-radius:14px"],
html.vds[data-theme] body .content :is(div, section)[style*="border-radius:16px"] { border-radius: var(--vds-radius-xl) !important; }

/* ── 16. Tabelas: mesmo cabeçalho do Sistema ─────────────────────────────────── */
html.vds[data-theme] body .rl-tbl th { text-transform: uppercase; letter-spacing: .06em; font-size: 11px; font-weight: 500; padding: 10px 12px; height: 40px; }
html.vds[data-theme] body .rl-tbl td { font-size: 13px; padding: 10px 12px; }
html.vds[data-theme] body .rl-tbl tbody tr:hover td { background: var(--vds-tint-row); }
/* ── 17. Resíduos do inventário (pós-medição) ─────────────────────────────────── */
/* cabeçalhos de "zona" do dashboard: eyebrow neutro (o ícone fica como marca) */
html.vds[data-theme] body div[style*="linear-gradient(90deg,rgba(235,200,63"] {
  background: none !important; color: var(--vds-text-secondary) !important; font-size: 11px !important;
  letter-spacing: .14em !important; font-weight: 600 !important; padding: 16px 20px 8px !important;
}
html.vds[data-theme] body div[style*="linear-gradient(90deg,rgba(235,200,63"] i { color: var(--vds-accent) !important; }
/* títulos pintados de dourado inline → texto primary */
html.vds[data-theme] body div[style*="font-weight:700"]:is([style*="color:var(--gold)"], [style*="color: var(--gold)"]):not(button) { color: var(--vds-text-primary) !important; }
html.vds[data-theme] body div[style*="font-weight:700"]:is([style*="color:var(--gold)"], [style*="color: var(--gold)"]) i { color: var(--vds-accent) !important; }
/* segmentado Por campanha / Por lead */
html.vds[data-theme] body [id^="dv-attr-mode-"] { font-size: 12px !important; padding: 4px 10px !important; border-radius: var(--vds-radius-sm) !important; min-height: 28px; }
html.vds[data-theme] body [id^="dv-attr-mode-"]:is([style*="background:var(--gold)"], [style*="background: var(--gold)"]) { background: var(--vds-surface-3) !important; color: var(--vds-text-primary) !important; }
html.vds[data-theme] body #dv-agendados-sub { color: var(--vds-text-primary) !important; border-color: var(--vds-border-strong) !important; background: var(--vds-surface-2) !important; }
/* botão de marca do Facebook: cor oficial, sem gradiente */
html.vds[data-theme] body button[style*="gradient"][style*="1877"], html.vds[data-theme] body button[onclick*="FB"][style*="gradient"] { background: #1877F2 !important; box-shadow: none !important; border-radius: var(--vds-radius-md) !important; }
/* resumo executivo: divisores por sombra (a sobra da quebra de linha fica no fundo do container, não "cinza") */
html.vds[data-theme] body .dv-exec { gap: 0 !important; background: var(--vds-surface-1) !important; overflow: hidden; }
html.vds[data-theme] body .dv-exec-cell { box-shadow: -1px 0 0 0 var(--vds-border-default), 0 -1px 0 0 var(--vds-border-default) !important; }
html.vds[data-theme] body .dv-exec-cell.is-roas { box-shadow: -1px 0 0 0 var(--vds-border-default), 0 -1px 0 0 var(--vds-border-default), inset 0 2px 0 var(--vds-accent) !important; }
/* Onda 3 — fidelidade de cor: canvas navy com luz azul sutil (igual ao Sistema) */
html.vds[data-theme] body { background: var(--vds-canvas-light), var(--vds-bg-canvas) !important; background-attachment: fixed !important; }

/* ═══ ONDA 4 — FIDELIDADE CROMÁTICA (25/09/2026) ═══ */
html.vds.va-embed[data-theme] body { background: var(--vds-bg-canvas) !important; }
html.vds.va-embed[data-theme] body .tabs { background: transparent !important; border-bottom-color: var(--vds-border-default) !important; }
html.vds[data-theme] body:not(.x) .topbar { background: var(--vds-header-glass) !important; }
html.vds[data-theme] body :is(.dv-kpi-row, .rl-grid, #meta-kpis, .rl-sec, .rl-kpi, #dv-camps, #dv-attr-table-wrap, .funnel-premium-wrap, .funnel-crm-premium-wrap, .studio-card, .ihub-card) { border-top-color: var(--vds-border-top) !important; }
html.vds[data-theme] body :is(.dv-sh, div[style*="linear-gradient(90deg,rgba(235,200,63"]) { color: var(--vds-text-label) !important; }
/* Onda 5 — mesma luz vertical sutil dos painéis do Sistema */
html.vds[data-theme] body :is(.dv-kpi-row, .rl-grid, #meta-kpis, .rl-sec, #dv-camps, #dv-attr-table-wrap, .funnel-premium-wrap, .funnel-crm-premium-wrap, .ihub-card) { background-image: var(--vds-panel-light) !important; }

/* ═══ TEMA CLARO OFICIAL (18/10/2026) — branco absoluto, preto como acento, zero amarelo ═══ */
/* marcador de seção (vermelho→laranja com glow) e ícones com gradiente dourado → preto sólido */
html.vds[data-theme="light"] body [style*="linear-gradient(180deg,#F05577,#F59E3F)"] { background: var(--vds-accent) !important; box-shadow: none !important; }
html.vds[data-theme="light"] body :is([style*="linear-gradient(135deg,var(--gold)"], [style*="linear-gradient(135deg,#EBC83F"]) { background: var(--vds-accent) !important; color: var(--vds-on-accent) !important; }
html.vds[data-theme="light"] body [style*="rgba(235,200,63"] { border-color: var(--vds-border-default) !important; }
html.vds[data-theme="light"] body [style*="background:linear-gradient(1"][style*="rgba(235,200,63"]:not([style*="#EBC83F"]):not([style*="var(--gold)"]) { background: var(--vds-surface-2) !important; }
/* "Atenção" funcional: laranja da paleta */
html.vds[data-theme="light"] body [style*="#F59E3F"]:not([style*="gradient"]) { color: var(--vds-warning) !important; }
html.vds[data-theme="light"] body .cfgp-item.miss { border-color: var(--vds-warning-bd) !important; }
/* --gold é PRETO no claro: inline "background:var(--gold);color:#000/#111/…" vira texto branco */
html.vds[data-theme="light"] body :is([style*="background:var(--gold)"], [style*="background: var(--gold)"]):not([id^="dv-attr-mode-"]):is([style*="color:#000"], [style*="color:#111"], [style*="color:#1A1410"], [style*="color:#1a1a1a"], [style*="color:#0A0A0A"]) { color: var(--vds-on-accent) !important; }
/* drawers fechados (fora da tela) não vazam sombra na borda direita */
html.vds[data-theme="light"] body :is(#bib-drawer, #dash-chat-drawer)[style*="translateX(100%)"] { box-shadow: none !important; }
html.vds[data-theme="light"] body :is(#bib-drawer, #dash-chat-drawer) { border-left-color: var(--vds-border-default) !important; }
/* cores "decorativas" claras demais para fundo branco → funcionais da paleta */
html.vds[data-theme="light"] body [style*="#1DCEA8"]:not([style*="background:#1DCEA8"]):not([style*="background:var(--green"]) { color: var(--vds-success-fg) !important; }
html.vds[data-theme="light"] body [style*="background:var(--green"][style*="color:#031"] { color: #FFFFFF !important; }
html.vds[data-theme="light"] body [style*="#4FA3F7"]:not([style*="background:#4FA3F7"]) { color: var(--vds-info-fg) !important; }
/* (18/10/2026, correção preto-no-preto) o código usa var(--on-accent, <cor original>), var(--lx-accent, <dourado original>),
   var(--lx-tab-fg, #fff) e var(--lx-tint, <tinta dourada>): só o CLARO define — no escuro vale o valor original. */
html.vds[data-theme="light"] body { --on-accent: #FFFFFF; --lx-accent: #111111; --lx-tab-fg: #111111; --lx-tint: #F2F2F2; }
/* contadores por canal: número neutro (o canal já está no rótulo); verde do WhatsApp legível */
html.vds[data-theme="light"] body :is(#dv-org-whatsapp, #dv-org-recurring) { color: var(--vds-text-primary) !important; }
html.vds[data-theme="light"] body :is([style*="color:#25d366"], [style*="color:#25D366"]):not(#dv-org-whatsapp) { color: var(--vds-success-fg) !important; }
