[data-theme='dark'] {
  --app-bg: #0f172a;
  --app-surface: #1e293b;
  --app-surface-alt: #273449;
  --app-border: #334155;
  --app-text: #e2e8f0;
  --app-text-muted: #94a3b8;
  --app-heading: #7dd3fc;
  --app-input-bg: #1e293b;
  --app-hover: rgba(255, 255, 255, 0.06);
  --app-shadow: rgba(0, 0, 0, 0.35);

  color-scheme: dark;
}

/* Navbar oscuro */
[data-theme='dark'] .navbar-layout {
  --navbar-bg: #0f172a;
  --navbar-bg-hover: rgba(255, 255, 255, 0.08);
  --navbar-bg-active: rgba(125, 211, 252, 0.14);
  --navbar-text: rgba(226, 232, 240, 0.92);
  --navbar-border: rgba(148, 163, 184, 0.2);

  background: var(--app-bg);
}

[data-theme='dark'] .navbar {
  background: linear-gradient(180deg, #1e293b 0%, #0f172a 100%);
  border-right-color: var(--navbar-border);
}

[data-theme='dark'] .navbar-link.is-active,
[data-theme='dark'] .navbar-sublink.is-active {
  box-shadow: inset 3px 0 0 #38bdf8;
}

[data-theme='dark'] .navbar-brand img {
  background: #1e293b;
}

[data-theme='dark'] .navbar-theme-switch-track {
  background: rgba(255, 255, 255, 0.14);
}

[data-theme='dark'] .navbar-theme-switch.is-dark .navbar-theme-switch-track {
  background: rgba(15, 23, 42, 0.85);
}

[data-theme='dark'] body:has(.navbar-layout),
[data-theme='dark'] body:has(.navbar-layout) #root {
  background: var(--app-bg);
  color: var(--app-text);
}

[data-theme='dark'] .navbar-content {
  background: var(--app-bg);
  color: var(--app-text);
}

[data-theme='dark'] .tabla-total-row td {
  background: #172033;
  border-top-color: #475569;
}

[data-theme='dark'] .tabla-total-label,
[data-theme='dark'] .tabla-total-monto {
  color: #e2e8f0;
}

[data-theme='dark'] .prestamo-comentario-field {
  background: #111827;
  border-color: #334155;
}

[data-theme='dark'] .prestamo-comentario-field label {
  color: #bae6fd;
}

[data-theme='dark'] .caja-verificacion,
[data-theme='dark'] .caja-verificacion-desglose,
[data-theme='dark'] .caja-verificacion-filtros {
  background: var(--app-surface);
  border-color: var(--app-border);
}

[data-theme='dark'] .caja-verificacion-header h2,
[data-theme='dark'] .caja-verificacion-filtros-header strong {
  color: var(--app-heading);
}

[data-theme='dark'] .caja-verificacion-rapidos a,
[data-theme='dark'] .caja-verificacion-limpiar {
  background: var(--app-surface-alt);
  border-color: var(--app-border);
  color: #7dd3fc;
}

[data-theme='dark'] .caja-verificacion-table-wrap,
[data-theme='dark'] .caja-verificacion-table th,
[data-theme='dark'] .caja-verificacion-table td {
  border-color: var(--app-border);
}

[data-theme='dark'] .caja-verificacion-table thead th,
[data-theme='dark'] .caja-verificacion-table tfoot th {
  background: var(--app-surface-alt);
  color: var(--app-heading);
}

[data-theme='dark'] .navbar-content::-webkit-scrollbar-thumb {
  background: rgba(148, 163, 184, 0.35);
}

[data-theme='dark'] .navbar-mobile-bar {
  background: var(--app-surface);
  border-bottom-color: var(--app-border);
}

[data-theme='dark'] .navbar-mobile-toggle {
  background: var(--app-surface-alt);
  border-color: var(--app-border);
  color: var(--app-heading);
}

[data-theme='dark'] .navbar-mobile-brand span {
  color: var(--app-heading);
}

[data-theme='dark'] [class$='-content'] h1,
[data-theme='dark'] [class$='-content'] .dashboard-titulo,
[data-theme='dark'] [class*='-header'] h1 {
  color: var(--app-heading) !important;
}

[data-theme='dark'] [class$='-content'] p,
[data-theme='dark'] [class*='-subtitulo'],
[data-theme='dark'] [class*='-status']:not([class*='--error']) {
  color: var(--app-text-muted);
}

[data-theme='dark'] .dashboard-panel,
[data-theme='dark'] .dashboard-kpi,
[data-theme='dark'] [class$='-card'],
[data-theme='dark'] [class*='-panel'],
[data-theme='dark'] [class*='-filtros-panel'],
[data-theme='dark'] [class*='-table-wrap'],
[data-theme='dark'] [class*='-seccion'],
[data-theme='dark'] .auditoria-kpis article,
[data-theme='dark'] .auditoria-evento {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text);
}

[data-theme='dark'] [class*='-table'] th {
  background: var(--app-surface-alt) !important;
  color: var(--app-text-muted) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] [class*='-table'] td {
  border-color: var(--app-border) !important;
  color: var(--app-text);
  background: transparent !important;
}

[data-theme='dark'] [class*='-table'] tbody tr:hover td {
  background: var(--app-hover) !important;
}

[data-theme='dark'] .clientes-table tbody tr.clientes-row--aprobacion-pendiente td,
[data-theme='dark'] .grupos-table tbody tr.grupos-row--aprobacion-pendiente td {
  background: rgba(245, 158, 11, 0.14) !important;
  color: #fde68a !important;
  box-shadow: inset 4px 0 0 #f59e0b;
}

[data-theme='dark'] .clientes-table tbody tr.clientes-row--aprobacion-pendiente:hover td,
[data-theme='dark'] .grupos-table tbody tr.grupos-row--aprobacion-pendiente:hover td {
  background: rgba(245, 158, 11, 0.22) !important;
}

[data-theme='dark'] input:not([type='checkbox']):not([type='radio']):not([type='range']),
[data-theme='dark'] select,
[data-theme='dark'] textarea,
[data-theme='dark'] [class*='-search-input'],
[data-theme='dark'] [class*='-filtros-field'] input,
[data-theme='dark'] [class*='-filtros-field'] select {
  background: var(--app-input-bg) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] input::placeholder,
[data-theme='dark'] textarea::placeholder {
  color: #64748b;
}

[data-theme='dark'] [class*='-filtros-btn'],
[data-theme='dark'] [class*='-btn--secundario'],
[data-theme='dark'] [class*='-filtros-limpiar'],
[data-theme='dark'] .dashboard-filtros-btn,
[data-theme='dark'] .dashboard-accion {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-filtros-btn']:hover,
[data-theme='dark'] [class*='-btn--secundario']:hover,
[data-theme='dark'] .dashboard-accion:hover {
  background: var(--app-surface-alt) !important;
  border-color: #475569 !important;
}

[data-theme='dark'] .dashboard-fecha,
[data-theme='dark'] .dashboard-nota-periodo,
[data-theme='dark'] .dashboard-empty,
[data-theme='dark'] [class*='-empty'] {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .login-page {
  background: linear-gradient(135deg, #0c4a6e 0%, #0f172a 45%, #1e293b 100%);
}

[data-theme='dark'] .login-card {
  background: var(--app-surface);
  border-color: var(--app-border);
  box-shadow: 0 12px 40px var(--app-shadow);
}

[data-theme='dark'] .login-brand h2,
[data-theme='dark'] .login-brand p,
[data-theme='dark'] .login-field label {
  color: var(--app-text);
}

[data-theme='dark'] .login-field input {
  background: var(--app-input-bg);
  border-color: var(--app-border);
  color: var(--app-text);
}

[data-theme='dark'] .login-footer {
  color: var(--app-text-muted);
}

/* Dashboard */
[data-theme='dark'] .dashboard-toolbar,
[data-theme='dark'] .dashboard-filtros-panel {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] .dashboard-filtros-resumen,
[data-theme='dark'] .dashboard-subtitulo,
[data-theme='dark'] .dashboard-kpi-label,
[data-theme='dark'] .dashboard-kpi-detalle,
[data-theme='dark'] .dashboard-panel-count,
[data-theme='dark'] .dashboard-avance-detalle span {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .dashboard-filtros-resumen i,
[data-theme='dark'] .dashboard-link,
[data-theme='dark'] .dashboard-pendientes-bloque-header strong {
  color: #38bdf8 !important;
}

[data-theme='dark'] .dashboard-panel-header h2,
[data-theme='dark'] .dashboard-kpi-valor,
[data-theme='dark'] .dashboard-avance-detalle strong,
[data-theme='dark'] .dashboard-pendientes-bloque-header h3 {
  color: var(--app-heading) !important;
}

[data-theme='dark'] .dashboard-btn-password,
[data-theme='dark'] .dashboard-filtros-btn,
[data-theme='dark'] .dashboard-filtros-limpiar {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] .dashboard-btn-password:hover,
[data-theme='dark'] .dashboard-filtros-btn:hover,
[data-theme='dark'] .dashboard-filtros-btn.is-open {
  border-color: #38bdf8 !important;
  color: #38bdf8 !important;
}

[data-theme='dark'] .dashboard-kpi-icon-wrap {
  background: var(--app-surface-alt) !important;
}

[data-theme='dark'] .dashboard-pendientes-bloque {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] .dashboard-pendientes-lista li {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] .dashboard-pendientes-meta {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .dashboard-table th {
  background: var(--app-surface-alt) !important;
  color: var(--app-text-muted) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] .dashboard-table td {
  border-color: var(--app-border) !important;
  color: var(--app-text);
}

[data-theme='dark'] .dashboard-table tbody tr:hover {
  background: var(--app-hover) !important;
}

[data-theme='dark'] .dashboard-avance-ring {
  background: conic-gradient(#0284c7 var(--avance), #334155 0) !important;
}

[data-theme='dark'] .dashboard-avance-ring::before {
  background: var(--app-surface) !important;
}

[data-theme='dark'] .dashboard-avance-porcentaje {
  color: var(--app-heading) !important;
}

[data-theme='dark'] .dashboard-barra-header,
[data-theme='dark'] .dashboard-barra-header strong {
  color: var(--app-text) !important;
}

[data-theme='dark'] .dashboard-barra-track {
  background: var(--app-surface-alt) !important;
}

[data-theme='dark'] .dashboard-rol-badge {
  background: rgba(56, 189, 248, 0.15) !important;
  border-color: rgba(56, 189, 248, 0.35) !important;
  color: #7dd3fc !important;
}

[data-theme='dark'] .dashboard-accion i {
  color: #38bdf8 !important;
}

[data-theme='dark'] .dashboard-panel--prioridad {
  border-color: rgba(56, 189, 248, 0.35) !important;
}

[data-theme='dark'] .dashboard-status--error {
  background: rgba(220, 38, 38, 0.12) !important;
  border-color: rgba(248, 113, 113, 0.35) !important;
  color: #fca5a5 !important;
}

/* Modales y formularios */
[data-theme='dark'] [class*='-overlay'] {
  background: rgba(2, 6, 23, 0.78) !important;
}

[data-theme='dark'] [class*='-modal'],
[data-theme='dark'] [class*='-dialog'] {
  background: var(--app-surface) !important;
  border: 1px solid var(--app-border);
  color: var(--app-text);
  box-shadow: 0 16px 40px var(--app-shadow) !important;
}

[data-theme='dark'] [class*='-modal'] h2,
[data-theme='dark'] [class*='-modal'] label,
[data-theme='dark'] [class*='-field'] label {
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-modal-header'],
[data-theme='dark'] [class*='-actions'] {
  border-color: var(--app-border) !important;
}

[data-theme='dark'] [class*='-btn--secundario'],
[data-theme='dark'] [class*='-btn--cancelar'] {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-error']:not([class*='--error']) {
  color: #fca5a5 !important;
}

[data-theme='dark'] [class*='-status']:not([class*='--error']) {
  color: var(--app-text-muted);
}

[data-theme='dark'] .inactividad-modal {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] .inactividad-titulo {
  color: var(--app-heading) !important;
}

[data-theme='dark'] .inactividad-mensaje,
[data-theme='dark'] .inactividad-cuenta {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .inactividad-btn--secundario {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

/* ── Modo oscuro global (reportes, listados) ── */

[data-theme='dark'] .mod-content {
  background: var(--app-bg);
  color: var(--app-text);
}

[data-theme='dark'] .mod-header h1,
[data-theme='dark'] .mod-icon-wrap i {
  color: var(--app-heading) !important;
}

[data-theme='dark'] .mod-icon-wrap {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] .reporte-modulo-subtitulo {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .app-footer {
  background: var(--app-bg) !important;
  border-top-color: var(--app-border) !important;
  color: var(--app-text-muted) !important;
}

/* KPIs y tarjetas de resumen */
[data-theme='dark'] [class*='-kpi'],
[data-theme='dark'] [class*='-kpis'] > article,
[data-theme='dark'] [class*='-kpis'] > .reporte-cobranza-kpi {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  box-shadow: none !important;
  color: var(--app-text);
}

[data-theme='dark'] [class*='-kpi--destacado'],
[data-theme='dark'] [class*='-kpi--primary'] {
  background: linear-gradient(180deg, var(--app-surface-alt) 0%, var(--app-surface) 100%) !important;
  border-color: rgba(56, 189, 248, 0.35) !important;
}

[data-theme='dark'] [class*='-kpi-label'],
[data-theme='dark'] [class*='-kpi-meta'],
[data-theme='dark'] [class*='-kpi-detalle'] {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-kpi-value'],
[data-theme='dark'] [class*='-kpi-valor'] {
  color: var(--app-heading) !important;
}

[data-theme='dark'] [class*='-kpi-icon'],
[data-theme='dark'] [class*='-kpi-icon-wrap'] {
  background: var(--app-surface-alt) !important;
  color: var(--app-heading) !important;
}

/* Leyendas e info */
[data-theme='dark'] [class*='-leyenda'],
[data-theme='dark'] [class*='-info']:not([class*='-icon-wrap']):not([class*='-icon']) {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-leyenda'] strong,
[data-theme='dark'] [class*='-leyenda'] p strong {
  color: var(--app-heading) !important;
}

[data-theme='dark'] [class*='-leyenda'] p,
[data-theme='dark'] [class*='-status']:not([class*='--error']) {
  color: var(--app-text-muted) !important;
}

/* Encabezados de módulo con icono */
[data-theme='dark'] [class*='-header'] p,
[data-theme='dark'] [class*='-header'] .reporte-creditos-icon,
[data-theme='dark'] [class*='-icon-wrap'] {
  border-color: var(--app-border) !important;
}

[data-theme='dark'] [class*='-icon-wrap'] {
  background: var(--app-surface-alt) !important;
}

[data-theme='dark'] [class*='-icon-wrap'] i,
[data-theme='dark'] [class*='-header'] [class*='-icon'] {
  color: var(--app-heading);
}

/* Búsqueda y filtros */
[data-theme='dark'] [class*='-search']:not(input):not([class*='-input']) {
  background: var(--app-input-bg) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] [class*='-search'] i,
[data-theme='dark'] [class*='-search-label'] {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-panel-filtros'],
[data-theme='dark'] form[class*='-filtros'] {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  box-shadow: none !important;
}

[data-theme='dark'] [class*='-filtro-campo'] label,
[data-theme='dark'] [class*='-filtro-asesor'] label {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-contador'],
[data-theme='dark'] [class*='-resumen'],
[data-theme='dark'] [class*='-listado-resumen'] {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-contador'] strong,
[data-theme='dark'] [class*='-resumen'] strong {
  color: var(--app-heading) !important;
}

/* Botones secundarios */
[data-theme='dark'] [class*='-volver'],
[data-theme='dark'] [class*='-btn-limpiar'],
[data-theme='dark'] [class*='-filtros-limpiar'] {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-volver']:hover,
[data-theme='dark'] [class*='-btn-limpiar']:hover {
  border-color: rgba(56, 189, 248, 0.45) !important;
  color: var(--app-heading) !important;
}

[data-theme='dark'] [class*='-btn-filtrar']:not([class*='--secundario']) {
  filter: brightness(1.05);
}

/* Tablas — pie, totales y celdas */
[data-theme='dark'] [class*='-foot'] td,
[data-theme='dark'] [class*='-foot'] th,
[data-theme='dark'] tfoot td,
[data-theme='dark'] tfoot th {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-th-total'],
[data-theme='dark'] [class*='-td-total'] {
  background: rgba(56, 189, 248, 0.1) !important;
  color: var(--app-heading) !important;
}

[data-theme='dark'] [class*='-td-beneficiario'] strong,
[data-theme='dark'] [class*='-td-beneficiario'] {
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-td-asesor'],
[data-theme='dark'] [class*='-td-id'],
[data-theme='dark'] [class*='-td-meta'] {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-td-comision'] {
  color: #fdba74 !important;
}

[data-theme='dark'] [class*='-td-pagado-dif'] {
  color: #fdba74 !important;
}

/* Badges */
[data-theme='dark'] [class*='-badge--individual'],
[data-theme='dark'] .gestion-pago-badge--deposito,
[data-theme='dark'] .gestion-pago-badge--transferencia {
  background: rgba(56, 189, 248, 0.14) !important;
  border-color: rgba(56, 189, 248, 0.35) !important;
  color: #7dd3fc !important;
}

[data-theme='dark'] [class*='-badge--grupal'],
[data-theme='dark'] .gestion-pago-badge--yape,
[data-theme='dark'] .gestion-pago-badge--plin {
  background: rgba(167, 139, 250, 0.14) !important;
  border-color: rgba(167, 139, 250, 0.35) !important;
  color: #c4b5fd !important;
}

[data-theme='dark'] .gestion-pago-badge--efectivo {
  background: rgba(34, 197, 94, 0.14) !important;
  border-color: rgba(34, 197, 94, 0.35) !important;
  color: #86efac !important;
}

[data-theme='dark'] .gestion-pago-badge--default {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .reporte-cobranza-table tr.is-selected > td {
  background: rgba(56, 189, 248, 0.1);
}

[data-theme='dark'] .pagos-eliminar-seleccion-btn {
  background: rgba(248, 113, 113, 0.12);
  border-color: rgba(248, 113, 113, 0.4);
  color: #fecaca;
}

/* Acciones en tablas */
[data-theme='dark'] [class*='-detalle-btn'],
[data-theme='dark'] [class*='-accion-btn']:not([class*='--primary']),
[data-theme='dark'] .reporte-cobranza-accion-btn,
[data-theme='dark'] [class*='-card-btn']:not([class*='--primary']) {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-detalle-btn']:hover,
[data-theme='dark'] [class*='-accion-btn']:hover,
[data-theme='dark'] .reporte-cobranza-accion-btn:hover {
  background: var(--app-hover) !important;
  border-color: #475569 !important;
  color: var(--app-heading) !important;
}

/* Galería / tarjetas (modo oscuro) */
[data-theme='dark'] [class*='-vista-toggle'] {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] [class*='-vista-btn'] {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-vista-btn'].is-active {
  background: var(--app-surface) !important;
  color: var(--app-heading) !important;
  box-shadow: 0 1px 2px var(--app-shadow) !important;
}

[data-theme='dark'] [class*='-card-preview'],
[data-theme='dark'] [class*='-card-sin-preview'],
[data-theme='dark'] [class*='-thumb']:not(img) {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] [class*='-card-footer'],
[data-theme='dark'] [class*='-card-datos'] dt {
  border-color: var(--app-border) !important;
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-card-datos'] dd,
[data-theme='dark'] [class*='-card-tipo'],
[data-theme='dark'] [class*='-card-titulo'] a {
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-card-btn--primary'],
[data-theme='dark'] [class*='-btn-filtrar'] {
  background: #334155 !important;
  border-color: #475569 !important;
  color: #f1f5f9 !important;
}

[data-theme='dark'] [class*='-card-btn--primary']:hover,
[data-theme='dark'] [class*='-btn-filtrar']:hover {
  background: #1e293b !important;
}

/* Export Excel */
[data-theme='dark'] .excel-export-btn {
  background: rgba(34, 197, 94, 0.12) !important;
  border-color: rgba(34, 197, 94, 0.35) !important;
  color: #86efac !important;
}

[data-theme='dark'] .excel-export-btn:hover:not(:disabled) {
  background: rgba(34, 197, 94, 0.2) !important;
  border-color: rgba(34, 197, 94, 0.5) !important;
}

[data-theme='dark'] .excel-export-panel {
  background: #1e293b;
  border-color: #334155;
  box-shadow: 0 10px 24px rgba(2, 6, 23, 0.45);
}

[data-theme='dark'] .excel-export-panel-item {
  color: #e2e8f0;
}

[data-theme='dark'] .excel-export-panel-item:hover {
  background: #334155;
  color: #f8fafc;
}

[data-theme='dark'] .excel-export-panel-item .bi {
  color: #86efac;
}

/* Toasts */
[data-theme='dark'] .finangest-toast {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  box-shadow: 0 16px 40px var(--app-shadow) !important;
}

[data-theme='dark'] .finangest-toast-titulo {
  color: var(--app-heading) !important;
}

[data-theme='dark'] .finangest-toast-mensaje {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .finangest-toast-cerrar {
  color: var(--app-text-muted) !important;
}

/* Confirmación */
[data-theme='dark'] .confirmacion-modal {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] .confirmacion-header,
[data-theme='dark'] .confirmacion-actions {
  border-color: var(--app-border) !important;
}

[data-theme='dark'] .confirmacion-titulo,
[data-theme='dark'] .confirmacion-subtitulo {
  color: var(--app-text) !important;
}

[data-theme='dark'] .confirmacion-mensaje {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .confirmacion-btn--secundario {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

/* Detalle (modales ver) */
[data-theme='dark'] .ver-detalle-section {
  border-color: var(--app-border) !important;
}

[data-theme='dark'] .ver-detalle-section-title,
[data-theme='dark'] .ver-detalle-item dd {
  color: var(--app-text) !important;
}

[data-theme='dark'] .ver-detalle-item dt,
[data-theme='dark'] .ver-detalle-sin-archivos {
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] .ver-detalle-adjunto-link--documento {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

/* Avisos banner */
[data-theme='dark'] .avisos-asesor-desembolso,
[data-theme='dark'] .banner-asesor-documentos,
[data-theme='dark'] .banner-encargado-prestamos,
[data-theme='dark'] .aviso-encargado-banner {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text) !important;
}

/* Menús de acciones en tablas */
[data-theme='dark'] .modulo-acciones-panel,
[data-theme='dark'] [class*='-acciones-menu'],
[data-theme='dark'] .modulo-acciones-dropdown {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  box-shadow: 0 8px 24px var(--app-shadow) !important;
}

[data-theme='dark'] .modulo-acciones-item,
[data-theme='dark'] [class*='-acciones-item'],
[data-theme='dark'] .modulo-acciones-dropdown a,
[data-theme='dark'] .modulo-acciones-dropdown button {
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-acciones-item']:hover,
[data-theme='dark'] .modulo-acciones-dropdown a:hover,
[data-theme='dark'] .modulo-acciones-dropdown button:hover {
  background: var(--app-hover) !important;
}

/* Cobranza / reportes — filas alternas y estados */
[data-theme='dark'] [class*='-row--vencida'] td,
[data-theme='dark'] [class*='-row--atrasada'] td {
  background: rgba(239, 68, 68, 0.1) !important;
}

[data-theme='dark'] [class*='-empty'],
[data-theme='dark'] [class*='-vacio'] {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-status--error'] {
  background: rgba(220, 38, 38, 0.12) !important;
  border-color: rgba(248, 113, 113, 0.35) !important;
  color: #fca5a5 !important;
}

/* Paginación y tabs */
[data-theme='dark'] [class*='-tabs'] button,
[data-theme='dark'] [class*='-tab'] {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-tabs'] button.is-active,
[data-theme='dark'] [class*='-tab'].is-active {
  background: var(--app-surface-alt) !important;
  color: var(--app-heading) !important;
  border-color: rgba(56, 189, 248, 0.35) !important;
}

/* Navegación por secciones (clientes, grupos, etc.) */
[data-theme='dark'] [class*='-seccion-nav'] {
  background: var(--app-surface-alt) !important;
  border-color: var(--app-border) !important;
}

[data-theme='dark'] [class*='-seccion-nav-btn'] {
  background: transparent !important;
  border-color: transparent !important;
  color: var(--app-text-muted) !important;
}

[data-theme='dark'] [class*='-seccion-nav-btn']:hover {
  background: var(--app-hover) !important;
  color: var(--app-text) !important;
}

[data-theme='dark'] [class*='-seccion-nav-btn--activo'],
[data-theme='dark'] [class*='-seccion-nav-btn'].is-active {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  color: var(--app-heading) !important;
  box-shadow: 0 1px 2px var(--app-shadow) !important;
}

/* Formularios y secciones de alta/edición */
[data-theme='dark'] [class*='-form-section'],
[data-theme='dark'] [class*='-form-card'],
[data-theme='dark'] [class*='-form-panel'],
[data-theme='dark'] [class*='-fieldset'] {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  color: var(--app-text);
}

[data-theme='dark'] [class*='-form-section'] h2,
[data-theme='dark'] [class*='-form-section'] h3,
[data-theme='dark'] [class*='-form-card'] h2 {
  color: var(--app-heading) !important;
}

[data-theme='dark'] [class*='-form-hint'],
[data-theme='dark'] [class*='-form-help'],
[data-theme='dark'] [class*='-field-hint'] {
  color: var(--app-text-muted) !important;
}

/* Dashboard asesor */
[data-theme='dark'] .dashboard-panel--asesor-meta,
[data-theme='dark'] .dashboard-panel--cronograma {
  background: var(--app-surface) !important;
  border-color: var(--app-border) !important;
  box-shadow: none !important;
}

[data-theme='dark'] .dashboard-asesor-alerta--mora {
  background: rgba(239, 68, 68, 0.12) !important;
  border-color: rgba(248, 113, 113, 0.35) !important;
  color: #fca5a5 !important;
}

[data-theme='dark'] .dashboard-asesor-alerta--hoy {
  background: rgba(245, 158, 11, 0.12) !important;
  border-color: rgba(251, 191, 36, 0.35) !important;
  color: #fde68a !important;
}

[data-theme='dark'] .dashboard-asesor-alerta--ok {
  background: rgba(34, 197, 94, 0.12) !important;
  border-color: rgba(74, 222, 128, 0.35) !important;
  color: #86efac !important;
}

[data-theme='dark'] .dashboard-status--warn {
  background: rgba(245, 158, 11, 0.12) !important;
  border-color: rgba(251, 191, 36, 0.35) !important;
  color: #fde68a !important;
}

[data-theme='dark'] .dashboard-seccion-titulo,
[data-theme='dark'] .dashboard-panel-subtitulo {
  color: var(--app-heading) !important;
}

[data-theme='dark'] .dashboard-seccion-desc,
[data-theme='dark'] .dashboard-panel-nota {
  color: var(--app-text-muted) !important;
}

/* Estados y chips en listados */
[data-theme='dark'] [class*='-estado--activo'],
[data-theme='dark'] [class*='-badge--activo'],
[data-theme='dark'] [class*='-badge--aprobado'] {
  background: rgba(34, 197, 94, 0.12) !important;
  border-color: rgba(74, 222, 128, 0.35) !important;
  color: #86efac !important;
}

[data-theme='dark'] [class*='-estado--inactivo'],
[data-theme='dark'] [class*='-badge--inactivo'],
[data-theme='dark'] [class*='-badge--rechazado'] {
  background: rgba(148, 163, 184, 0.12) !important;
  border-color: rgba(148, 163, 184, 0.35) !important;
  color: #cbd5e1 !important;
}

[data-theme='dark'] [class*='-estado--pendiente'],
[data-theme='dark'] [class*='-badge--pendiente'] {
  background: rgba(245, 158, 11, 0.12) !important;
  border-color: rgba(251, 191, 36, 0.35) !important;
  color: #fde68a !important;
}

[data-theme='dark'] [class*='-estado--mora'],
[data-theme='dark'] [class*='-badge--mora'],
[data-theme='dark'] [class*='-badge--vencido'] {
  background: rgba(239, 68, 68, 0.12) !important;
  border-color: rgba(248, 113, 113, 0.35) !important;
  color: #fca5a5 !important;
}

/* Botones primarios de acción (agregar, guardar) — mantener contraste */
[data-theme='dark'] [class*='-agregar-btn'],
[data-theme='dark'] [class*='-btn--primary']:not([class*='--secundario']),
[data-theme='dark'] [class*='-filtros-aplicar'],
[data-theme='dark'] .dashboard-filtros-aplicar {
  box-shadow: 0 1px 2px var(--app-shadow);
}

[data-theme='dark'] [class*='-filtros-badge'],
[data-theme='dark'] [class*='-filtros-btn'].has-active {
  background: rgba(56, 189, 248, 0.2) !important;
  color: #7dd3fc !important;
}

[data-theme='dark'] .clientes-agregar-ficha-card {
  background: var(--app-surface);
  border-color: var(--app-border);
  border-top-color: #38bdf8;
}

[data-theme='dark'] .clientes-agregar-ficha-btn--guardar {
  background: #0284c7;
  border-color: #0369a1;
  color: #fff;
}

[data-theme='dark'] .clientes-agregar-ficha-tabs {
  border-bottom-color: var(--app-border);
}

[data-theme='dark'] .clientes-agregar-ficha-tabs button {
  color: var(--app-text-muted);
}

[data-theme='dark'] .clientes-agregar-ficha-tabs button:hover {
  color: var(--app-heading);
}

[data-theme='dark'] .clientes-agregar-ficha-tabs button.is-active {
  color: #7dd3fc;
  border-bottom-color: #38bdf8;
}

[data-theme='dark'] .clientes-agregar-ficha-row > label,
[data-theme='dark'] .clientes-agregar-ficha-label,
[data-theme='dark'] .clientes-agregar-ficha-check {
  color: var(--app-text-muted);
}

[data-theme='dark'] .clientes-agregar-ficha-row input:not([type='checkbox']):not([type='file']),
[data-theme='dark'] .clientes-agregar-ficha-row select,
[data-theme='dark'] .clientes-agregar-ficha-btn--atras {
  background: var(--app-surface-alt);
  border-color: var(--app-border);
  color: var(--app-text);
}

[data-theme='dark'] .clientes-agregar-ficha-row input:disabled,
[data-theme='dark'] .clientes-agregar-ficha-row select:disabled {
  background: #1e293b;
  color: var(--app-text-muted);
}
