/* Controle compartilhado de tema. */
.theme-toggle {
  width: auto;
  min-width: 36px;
  padding: 0 10px;
  gap: 7px;
  white-space: nowrap;
  font-family: inherit;
}

.theme-toggle-label {
  font-size: 11px;
  font-weight: 800;
}

.theme-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.theme-icon-sun {
  display: none;
}

html[data-theme="dark"] .theme-icon-moon {
  display: none;
}

html[data-theme="dark"] .theme-icon-sun {
  display: block;
}

.theme-toggle-login {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 1500;
  min-height: 40px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
  color: var(--text-2);
  box-shadow: 0 6px 20px rgba(11, 31, 58, .16);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.theme-toggle-login:hover {
  border-color: var(--border-strong, var(--border));
  color: var(--text-1);
}

/* Paleta escura ATHAM. */
html[data-theme="dark"] {
  color-scheme: dark;
  --navy: #76afea;
  --navy-mid: #285b91;
  --navy-light: #9ac8f4;
  --accent: #d7b878;
  --accent-dark: #bd9550;
  --accent-pale: #332918;
  --bg: #0c121b;
  --surface: #151e2b;
  --surface-2: #1b2635;
  --surface-3: #243244;
  --border: #2e3c4f;
  --border-mid: #40516a;
  --border-strong: #60748f;
  --text-1: #f3f6fa;
  --text-2: #c4cfdd;
  --text-3: #96a6bb;
  --green: #72d6a8;
  --green-bg: #12382b;
  --green-border: #28624d;
  --red: #ff9187;
  --red-bg: #421d24;
  --red-border: #7b3940;
  --amber: #f4bd62;
  --amber-bg: #422f12;
  --orange: #f48d62;
  --orange-bg: #422d12;
  --violet: #c3a5ff;
  --violet-bg: #30254b;
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, .28);
  --shadow-sm: 0 4px 14px rgba(0, 0, 0, .3);
  --shadow-md: 0 14px 36px rgba(0, 0, 0, .38);
  --focus-ring: 0 0 0 3px rgba(118, 175, 234, .25);
}

html[data-theme="dark"],
html[data-theme="dark"] body {
  background: #0c121b;
  color: var(--text-1);
}

html[data-theme="dark"] body {
  background:
    radial-gradient(circle at 85% 0, rgba(215, 184, 120, .08), transparent 28rem),
    var(--bg);
}

html[data-theme="dark"] ::selection {
  background: rgba(215, 184, 120, .35);
  color: #fff;
}

html[data-theme="dark"] .sidebar,
html[data-theme="dark"] .login-panel,
html[data-theme="dark"] #loader {
  background-color: #08182d;
}

html[data-theme="dark"] .topbar {
  background: rgba(21, 30, 43, .96);
  border-bottom-color: var(--border-mid);
  box-shadow: var(--shadow-sm);
}

html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .tb-btn,
html[data-theme="dark"] .btn-ghost {
  background: var(--surface-2);
  border-color: var(--border-mid);
  color: var(--text-2);
}

html[data-theme="dark"] .theme-toggle:hover,
html[data-theme="dark"] .tb-btn:hover,
html[data-theme="dark"] .btn-ghost:hover {
  background: var(--surface-3);
  border-color: var(--border-strong);
  color: var(--text-1);
}

html[data-theme="dark"] .tb-av,
html[data-theme="dark"] .pc-av,
html[data-theme="dark"] .msg-av,
html[data-theme="dark"] .cfg-card-ic,
html[data-theme="dark"] .sim-card-ic,
html[data-theme="dark"] .ss-check {
  background: linear-gradient(135deg, #285b91, #163a68);
  color: var(--accent);
}

html[data-theme="dark"] .card,
html[data-theme="dark"] .db-kpi,
html[data-theme="dark"] .cl-stat,
html[data-theme="dark"] .cf-card,
html[data-theme="dark"] .cf-side-card,
html[data-theme="dark"] .cd-card,
html[data-theme="dark"] .cd-side-card,
html[data-theme="dark"] .pend-card,
html[data-theme="dark"] .cont-card,
html[data-theme="dark"] .fin-card,
html[data-theme="dark"] .ag-stat,
html[data-theme="dark"] .alerta-card,
html[data-theme="dark"] .hist-filtro,
html[data-theme="dark"] .rel-filtro,
html[data-theme="dark"] .rel-kpi,
html[data-theme="dark"] .v-block,
html[data-theme="dark"] .cm-total-box,
html[data-theme="dark"] .aud-filters,
html[data-theme="dark"] .cfg-card,
html[data-theme="dark"] .flx-intro,
html[data-theme="dark"] .flx-card,
html[data-theme="dark"] .flx-vis,
html[data-theme="dark"] .msg-row,
html[data-theme="dark"] .box,
html[data-theme="dark"] .p-card {
  background: var(--surface) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-1);
  box-shadow: var(--shadow-sm);
}

html[data-theme="dark"] .card-hd,
html[data-theme="dark"] .pc-ft,
html[data-theme="dark"] .doc-item-hd,
html[data-theme="dark"] .doc-item-waiting,
html[data-theme="dark"] .ag-sec-hd,
html[data-theme="dark"] .ac-date,
html[data-theme="dark"] .v-header,
html[data-theme="dark"] .client-group-hd,
html[data-theme="dark"] .kb-col-hd,
html[data-theme="dark"] .p-ft {
  background: linear-gradient(180deg, var(--surface-2), var(--surface)) !important;
  border-color: var(--border-mid) !important;
}

html[data-theme="dark"] .card-body,
html[data-theme="dark"] .pend-card .pc-body,
html[data-theme="dark"] .doc-item,
html[data-theme="dark"] .doc-item-actions,
html[data-theme="dark"] .modal-body,
html[data-theme="dark"] .modal-ft {
  background: var(--surface);
  border-color: var(--border);
}

html[data-theme="dark"] .filter-bar,
html[data-theme="dark"] .fase-tabs,
html[data-theme="dark"] .op-tabs,
html[data-theme="dark"] .msg-tabs,
html[data-theme="dark"] .rel-tabs,
html[data-theme="dark"] .sub-tabs,
html[data-theme="dark"] .modal-sub-tabs {
  background: var(--surface-2);
  border-color: var(--border-mid);
}

/* .rel-tab/.sub-tab, ao contrario de fase-tab/op-tab/msg-tab, tem
   background:#fff fixo no estado padrao (nao so no hover/active). */
html[data-theme="dark"] .rel-tab,
html[data-theme="dark"] .sub-tab {
  background: var(--surface-2) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-2) !important;
}

html[data-theme="dark"] .fase-tab:hover,
html[data-theme="dark"] .op-tab:hover,
html[data-theme="dark"] .msg-tab:hover,
html[data-theme="dark"] .rel-tab:hover,
html[data-theme="dark"] .sub-tab:hover,
html[data-theme="dark"] .modal-sub-tab:hover {
  background: var(--surface-3);
  color: var(--text-1);
}

html[data-theme="dark"] .fase-tab.active,
html[data-theme="dark"] .op-tab.active,
html[data-theme="dark"] .msg-tab.active,
html[data-theme="dark"] .rel-tab.active,
html[data-theme="dark"] .sub-tab.active,
html[data-theme="dark"] .modal-sub-tab.active {
  background: #285b91 !important;
  border-color: #4d82bb !important;
  color: #fff !important;
}

html[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .cl-search,
html[data-theme="dark"] .cf-input,
html[data-theme="dark"] .cf-select,
html[data-theme="dark"] .kb-column-filter,
html[data-theme="dark"] .kb-filter-input,
html[data-theme="dark"] .kb-filter-select,
html[data-theme="dark"] .kb-select {
  background: var(--surface-2) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-1) !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .24);
}

html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder {
  color: var(--text-3);
  opacity: .82;
}

html[data-theme="dark"] input:focus,
html[data-theme="dark"] select:focus,
html[data-theme="dark"] textarea:focus,
html[data-theme="dark"] .cl-search:focus-within {
  background: var(--surface-3) !important;
  border-color: var(--navy-light) !important;
  box-shadow: var(--focus-ring) !important;
}

html[data-theme="dark"] input[type="checkbox"],
html[data-theme="dark"] input[type="radio"] {
  accent-color: #76afea;
}

html[data-theme="dark"] table,
html[data-theme="dark"] .rt,
html[data-theme="dark"] .aud-table,
html[data-theme="dark"] .cm-tbl,
html[data-theme="dark"] .tbl-wrap {
  background: var(--surface) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-1);
}

html[data-theme="dark"] thead th,
html[data-theme="dark"] .db-table thead th,
html[data-theme="dark"] .rt th,
html[data-theme="dark"] .aud-table th,
html[data-theme="dark"] .modal-table th {
  background: var(--surface-2) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-2) !important;
}

html[data-theme="dark"] tbody td,
html[data-theme="dark"] .rt td,
html[data-theme="dark"] .aud-table td,
html[data-theme="dark"] .modal-table td {
  border-color: var(--border) !important;
}

html[data-theme="dark"] tbody tr:hover td,
html[data-theme="dark"] .rt tr:hover td,
html[data-theme="dark"] .aud-table tr:hover td,
html[data-theme="dark"] .cm-tbl tr:hover td,
html[data-theme="dark"] .row-clickable:hover td {
  background: var(--surface-3) !important;
}

html[data-theme="dark"] .btn-primary,
html[data-theme="dark"] .btn-login,
html[data-theme="dark"] .btn-f,
html[data-theme="dark"] .btn-filter,
html[data-theme="dark"] .btn-save,
html[data-theme="dark"] .btn-reenviar,
html[data-theme="dark"] .btn-upload,
html[data-theme="dark"] .btn-abrir-cad,
html[data-theme="dark"] .btn-card-send,
html[data-theme="dark"] .btn-ag.primary,
html[data-theme="dark"] .anexo-btn,
html[data-theme="dark"] .doc-action-btn.primary,
html[data-theme="dark"] .kb-modal-ft .btn-confirm-ok,
html[data-theme="dark"] .aud-pagination .current,
html[data-theme="dark"] .ag-pager span.cur,
html[data-theme="dark"] .sv-row button,
html[data-theme="dark"] .vd-row button,
html[data-theme="dark"] .db-qa-btn:hover,
html[data-theme="dark"] .kb-action-btn:hover,
html[data-theme="dark"] .btn-detalhe:hover {
  background: linear-gradient(180deg, #326aa4, #214b79) !important;
  border-color: #4d82bb !important;
  color: #fff !important;
}

html[data-theme="dark"] .flx-vis tbody tr:hover {
  background: var(--surface-2) !important;
}

html[data-theme="dark"] .fase-section-hd,
html[data-theme="dark"] .flx-node-start,
html[data-theme="dark"] .flx-vis thead th,
html[data-theme="dark"] .cm-tbl th,
html[data-theme="dark"] .cl-stat-ic,
html[data-theme="dark"] .cf-card-ic,
html[data-theme="dark"] .cd-card-ic,
html[data-theme="dark"] .ag-sec-badge,
html[data-theme="dark"] .hist-dot.dot-fase,
html[data-theme="dark"] .chat-sent,
html[data-theme="dark"] .kb-focus-btn:hover,
html[data-theme="dark"] .kb-focus-btn.is-active,
html[data-theme="dark"] [data-tip]:hover::after {
  background: #285b91 !important;
  border-color: #4d82bb !important;
  color: #fff !important;
}

html[data-theme="dark"] .flx-section-h .flx-num,
html[data-theme="dark"] .msg-badge,
html[data-theme="dark"] .msg-tab .tab-pip,
html[data-theme="dark"] .tel-chip.principal,
html[data-theme="dark"] .convenio-badge.found {
  background: #214b79 !important;
  border-color: #4d82bb !important;
  color: var(--accent) !important;
}

html[data-theme="dark"] .sim-step.active .sim-step-num {
  background: #285b91 !important;
  border-color: #285b91 !important;
}

html[data-theme="dark"] .btn-cancel,
html[data-theme="dark"] .btn-clear,
html[data-theme="dark"] .btn-outline,
html[data-theme="dark"] .btn-xl,
html[data-theme="dark"] .btn-detalhe,
html[data-theme="dark"] .pg-btn,
html[data-theme="dark"] .cl-btn,
html[data-theme="dark"] .anexo-btn-sm,
html[data-theme="dark"] .kb-action-btn,
html[data-theme="dark"] .cm-edit-btn,
html[data-theme="dark"] .doc-action-btn {
  background: var(--surface-2) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-2) !important;
}

html[data-theme="dark"] .btn-danger,
html[data-theme="dark"] .msg-error,
html[data-theme="dark"] .kb-toast.error,
html[data-theme="dark"] .dpill-rejeitado,
html[data-theme="dark"] .rej-badge {
  background: var(--red-bg) !important;
  border-color: #7b3940 !important;
  color: var(--red) !important;
}

html[data-theme="dark"] .btn-success,
html[data-theme="dark"] .msg-success,
html[data-theme="dark"] .kb-toast.success,
html[data-theme="dark"] .dpill-validado {
  background: var(--green-bg) !important;
  border-color: #28624d !important;
  color: var(--green) !important;
}

html[data-theme="dark"] .msg-info,
html[data-theme="dark"] .fase-info-banner,
html[data-theme="dark"] .msg-vinculo {
  background: #142f4d !important;
  border-color: #315f8f !important;
  color: #9ac8f4 !important;
}

html[data-theme="dark"] .badge-vendedor,
html[data-theme="dark"] .badge-diamante,
html[data-theme="dark"] .b-blue,
html[data-theme="dark"] .tipo-simulacao_gerada,
html[data-theme="dark"] .ag-stat-icon.blue,
html[data-theme="dark"] .ag-sec-icon.blue {
  background: #142f4d;
  border-color: #315f8f;
  color: #9ac8f4;
}

html[data-theme="dark"] .badge-supervisor,
html[data-theme="dark"] .tag-violet,
html[data-theme="dark"] .dpill-enviado,
html[data-theme="dark"] .tipo-prazo_portabilidade,
html[data-theme="dark"] .tipo-lembrete {
  background: var(--violet-bg);
  border-color: #5a4686;
  color: var(--violet);
}

html[data-theme="dark"] .badge-coordenador,
html[data-theme="dark"] .badge-bronze,
html[data-theme="dark"] .badge-ouro,
html[data-theme="dark"] .tag-warn,
html[data-theme="dark"] .env-badge,
html[data-theme="dark"] .b-orange,
html[data-theme="dark"] .kb-toast.warning,
html[data-theme="dark"] .ag-stat-icon.amber,
html[data-theme="dark"] .urgencia.amber,
html[data-theme="dark"] .tipo-taxa_pendente {
  background: var(--amber-bg);
  border-color: #765520;
  color: var(--amber);
}

html[data-theme="dark"] .badge-gerente,
html[data-theme="dark"] .badge-ativo,
html[data-theme="dark"] .tag-ok,
html[data-theme="dark"] .b-green,
html[data-theme="dark"] .urgencia.green {
  background: var(--green-bg);
  border-color: #28624d;
  color: var(--green);
}

html[data-theme="dark"] .btn-ag.success {
  background: var(--green-bg) !important;
  border-color: var(--green-border) !important;
  color: var(--green) !important;
}
html[data-theme="dark"] .btn-ag.success:hover { background: var(--green-border) !important; }

html[data-theme="dark"] .btn-ag.warning {
  background: var(--amber-bg) !important;
  border-color: #765520 !important;
  color: var(--amber) !important;
}
html[data-theme="dark"] .btn-ag.warning:hover { background: #765520 !important; }

html[data-theme="dark"] .badge-administrador,
html[data-theme="dark"] .badge-inativo,
html[data-theme="dark"] .b-red,
html[data-theme="dark"] .ag-stat-icon.red,
html[data-theme="dark"] .urgencia.red {
  background: var(--red-bg);
  border-color: #7b3940;
  color: var(--red);
}

html[data-theme="dark"] .badge-operacional,
html[data-theme="dark"] .badge-prata,
html[data-theme="dark"] .b-gray,
html[data-theme="dark"] .dpill-pendente,
html[data-theme="dark"] .tag {
  background: var(--surface-3);
  border-color: var(--border-mid);
  color: var(--text-2);
}

html[data-theme="dark"] .modal-box,
html[data-theme="dark"] .kb-modal,
html[data-theme="dark"] .cm-modal,
html[data-theme="dark"] .op-modal,
html[data-theme="dark"] .ag-modal,
html[data-theme="dark"] .kb-side-panel,
html[data-theme="dark"] .cont-side-panel {
  background: var(--surface) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-1);
  box-shadow: 0 24px 68px rgba(0, 0, 0, .55);
}

html[data-theme="dark"] .modal-hd,
html[data-theme="dark"] .kb-modal-hd,
html[data-theme="dark"] .cm-modal-hd,
html[data-theme="dark"] .op-modal-hd,
html[data-theme="dark"] .kb-sp-hd {
  background: var(--surface-2);
  border-color: var(--border-mid) !important;
}

html[data-theme="dark"] .kb-col {
  background: linear-gradient(180deg, var(--kb-col-soft) 0%, var(--surface-2) 18%, var(--surface-2) 100%);
  border-color: var(--border-mid);
  box-shadow: var(--shadow-sm);
}

html[data-theme="dark"] .kb-col-body {
  background: rgba(12, 18, 27, .38);
}

html[data-theme="dark"] .kb-empty,
html[data-theme="dark"] .pend-empty,
html[data-theme="dark"] .ag-empty,
html[data-theme="dark"] .modal-empty {
  background: var(--surface-2) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-3);
}

html[data-theme="dark"] .msg-row.unread {
  background: #152a43 !important;
  border-left-color: #76afea !important;
}

html[data-theme="dark"] .tel-item,
html[data-theme="dark"] .vd-chip,
html[data-theme="dark"] .sv-chip,
html[data-theme="dark"] .chat-recv,
html[data-theme="dark"] .obs-card,
html[data-theme="dark"] .cfg-card-count {
  background: var(--surface-2) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-2);
}

html[data-theme="dark"] .av,
html[data-theme="dark"] .db-av {
  background: var(--surface-3);
  border-color: var(--border-mid);
  color: var(--navy-light);
}

html[data-theme="dark"] .db-pipe-track {
  background: var(--surface-3);
}

html[data-theme="dark"] .flx-node-white,
html[data-theme="dark"] .flx-node-decision {
  background: var(--surface) !important;
  color: var(--navy-light) !important;
  border-color: #4d82bb !important;
}

/* .resumo-card usa gradiente navy fixo (nao token) para ficar igual nos
   dois temas; sem borda, ele se perde contra o fundo escuro da pagina. */
html[data-theme="dark"] .resumo-card {
  border: 1px solid var(--border-mid);
  box-shadow: var(--shadow-sm);
}

html[data-theme="dark"] .lane-vendedor .flx-body { background: #132a43; border-color: #315b87; }
html[data-theme="dark"] .lane-ops .flx-body { background: #241d3c; border-color: #5b4788; }
html[data-theme="dark"] .lane-gerente .flx-body { background: #102d35; border-color: #276071; }
html[data-theme="dark"] .lane-sistema .flx-body { background: #123126; border-color: #2c6d51; }
html[data-theme="dark"] .lane-supervisor .flx-body { background: #102f30; border-color: #286b68; }
html[data-theme="dark"] .lane-admin .flx-body { background: var(--surface-2); border-color: var(--border-mid); }

/* Compatibilidade com superficies e estados definidos inline nos templates. */
html[data-theme="dark"] [style*="background:#fff" i],
html[data-theme="dark"] [style*="background: #fff" i],
html[data-theme="dark"] [style*="background:white" i],
html[data-theme="dark"] [style*="background: white" i] {
  background: var(--surface) !important;
  border-color: var(--border-mid) !important;
}

html[data-theme="dark"] [style*="background:var(--navy)" i],
html[data-theme="dark"] [style*="background: var(--navy)" i] {
  background: #285b91 !important;
  border-color: #4d82bb !important;
}

html[data-theme="dark"] [style*="background:#fafbfc" i],
html[data-theme="dark"] [style*="background:#f8fafc" i],
html[data-theme="dark"] [style*="background:#f4f6f9" i],
html[data-theme="dark"] [style*="background:#f3f4f6" i] {
  background: var(--surface-2) !important;
  border-color: var(--border) !important;
}

html[data-theme="dark"] [style*="background:#fffbeb" i],
html[data-theme="dark"] [style*="background:#fff7ed" i],
html[data-theme="dark"] [style*="background:#fef3c7" i] {
  background: var(--amber-bg) !important;
  border-color: #765520 !important;
  color: var(--amber) !important;
}

html[data-theme="dark"] [style*="background:#eff6ff" i],
html[data-theme="dark"] [style*="background:#f0f9ff" i],
html[data-theme="dark"] [style*="background:#dbeafe" i] {
  background: #142f4d !important;
  border-color: #315f8f !important;
  color: #9ac8f4 !important;
}

html[data-theme="dark"] [style*="background:#f0fdf4" i],
html[data-theme="dark"] [style*="background:#ecfdf5" i],
html[data-theme="dark"] [style*="background:#dcfce7" i] {
  background: var(--green-bg) !important;
  border-color: #28624d !important;
  color: var(--green) !important;
}

html[data-theme="dark"] [style*="background:#fef2f2" i],
html[data-theme="dark"] [style*="background:#fff5f5" i],
html[data-theme="dark"] [style*="background:#fee2e2" i] {
  background: var(--red-bg) !important;
  border-color: #7b3940 !important;
  color: var(--red) !important;
}

html[data-theme="dark"] [style*="background:#f5f3ff" i],
html[data-theme="dark"] [style*="background:#faf5ff" i] {
  background: var(--violet-bg) !important;
  border-color: #5a4686 !important;
  color: var(--violet) !important;
}

/* Ciano e verde-água — reaproveita os mesmos tons das faixas
   .lane-gerente/.lane-supervisor de core/fluxo.html. */
html[data-theme="dark"] [style*="background:#ecfeff" i],
html[data-theme="dark"] [style*="background:#cffafe" i] {
  background: #102d35 !important;
  border-color: #276071 !important;
  color: #7fd4e6 !important;
}

html[data-theme="dark"] [style*="background:#f0fdfa" i] {
  background: #102f30 !important;
  border-color: #286b68 !important;
  color: #6fc2ba !important;
}

html[data-theme="dark"] [style*="background:#f1f5f9" i] {
  background: var(--surface-2) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-2) !important;
}

html[data-theme="dark"] [style*="color:#334155" i] {
  color: var(--text-2) !important;
}

html[data-theme="dark"] [style*="color:var(--navy)" i],
html[data-theme="dark"] [style*="color: var(--navy)" i],
html[data-theme="dark"] [style*="color:#1d4ed8" i],
html[data-theme="dark"] [style*="color:#1e40af" i],
html[data-theme="dark"] [style*="color:#0284c7" i] {
  color: var(--navy-light) !important;
}

html[data-theme="dark"] [style*="color:#92400e" i],
html[data-theme="dark"] [style*="color:#b45309" i],
html[data-theme="dark"] [style*="color:#d97706" i] {
  color: var(--amber) !important;
}

html[data-theme="dark"] [style*="color:#166534" i],
html[data-theme="dark"] [style*="color:#065f46" i] {
  color: var(--green) !important;
}

html[data-theme="dark"] [style*="color:#b91c1c" i],
html[data-theme="dark"] [style*="color:#991b1b" i],
html[data-theme="dark"] [style*="color:#c53030" i],
html[data-theme="dark"] [style*="color:#dc2626" i] {
  color: var(--red) !important;
}

html[data-theme="dark"] [style*="color:#7c3aed" i],
html[data-theme="dark"] [style*="color:#6d28d9" i] {
  color: var(--violet) !important;
}

/* operacional/pendencias.html — classes locais sem cobertura previa. */
html[data-theme="dark"] .pip-pendente {
  background: var(--border-mid);
}

html[data-theme="dark"] .dst-enviado,
html[data-theme="dark"] .aguardando-val {
  background: var(--violet-bg) !important;
  border-color: #5a4686 !important;
  color: var(--violet);
}

html[data-theme="dark"] .btn-val-ok:hover { background: var(--green-border) !important; }
html[data-theme="dark"] .btn-val-no:hover { background: var(--red-border) !important; }

html[data-theme="dark"] .acao-necessaria {
  background: var(--amber-bg) !important;
  border-left-color: var(--amber) !important;
}
html[data-theme="dark"] .acao-necessaria .acao-txt { color: var(--amber) !important; }

html[data-theme="dark"] .alerta-banner.amber .alerta-hd,
html[data-theme="dark"] .alerta-banner.amber .alerta-body {
  background: var(--amber-bg) !important;
}
html[data-theme="dark"] .alerta-banner.amber .alerta-titulo,
html[data-theme="dark"] .alerta-banner.amber .alerta-count,
html[data-theme="dark"] .alerta-banner.amber .alerta-chip {
  color: var(--amber) !important;
}
html[data-theme="dark"] .alerta-banner.amber .alerta-count,
html[data-theme="dark"] .alerta-banner.amber .alerta-chip {
  background: #765520 !important;
  border-color: #765520 !important;
}

html[data-theme="dark"] .tipo-docs_pendentes {
  background: var(--orange-bg) !important;
  border-color: #763920 !important;
  color: var(--orange) !important;
}

html[data-theme="dark"] .alerta-banner.orange .alerta-hd,
html[data-theme="dark"] .alerta-banner.orange .alerta-body {
  background: var(--orange-bg) !important;
}
html[data-theme="dark"] .alerta-banner.orange .alerta-titulo,
html[data-theme="dark"] .alerta-banner.orange .alerta-count,
html[data-theme="dark"] .alerta-banner.orange .alerta-chip {
  color: var(--orange) !important;
}
html[data-theme="dark"] .alerta-banner.orange .alerta-count,
html[data-theme="dark"] .alerta-banner.orange .alerta-chip {
  background: #763920 !important;
  border-color: #763920 !important;
}

/* Login. */
html[data-theme="dark"] .login-form-side {
  background:
    radial-gradient(circle at 100% 0, rgba(215, 184, 120, .09), transparent 24rem),
    var(--bg);
}

html[data-theme="dark"] .lf-wrap {
  background: var(--surface);
  border-color: var(--border-mid);
  box-shadow: 0 20px 52px rgba(0, 0, 0, .46);
}

html[data-theme="dark"] .input-shell input {
  background: var(--surface-2) !important;
  border-color: var(--border-mid) !important;
  color: var(--text-1) !important;
}

html[data-theme="dark"] .input-shell input:focus {
  background: var(--surface-3) !important;
  border-color: var(--navy-light) !important;
  box-shadow: var(--focus-ring) !important;
}

html[data-theme="dark"] .forgot {
  color: var(--navy-light);
}

html[data-theme="dark"] .lf-footer {
  border-color: var(--border-mid);
}

@media (max-width: 768px) {
  .theme-toggle-label {
    display: none;
  }

  .theme-toggle {
    width: 36px;
    padding: 0;
  }

  .theme-toggle-login {
    top: 14px;
    right: 14px;
  }

  html[data-theme="dark"] .db-table tbody tr {
    background: var(--surface) !important;
    border-color: var(--border-mid) !important;
  }
}

@media (max-width: 480px) {
  .theme-toggle-login {
    min-height: 36px;
  }
}
