/* ═══════════════════════════════════════════════════════════
   VISUAL FIXES v5 — Correcciones quirúrgicas por ID
   Omni CRM Pro · Junio 2026
   
   ESTRATEGIA: Todo por ID. Nada global que rompa.
   Estilo de modales: limpio como "Nuevo Cliente"
   (sin gradiente, fondo blanco, header con borde inferior)
   ═══════════════════════════════════════════════════════════ */


/* ══ A. MODALES — Contenedor interno #1E293B → blanco ═════
   Cada modal se ataca por ID → hijo directo (inner box).
   Seguro: no afecta nada fuera del modal. ═══════════════ */

#modal-gasto > div[style*="background:#1E293B"],
#modal-costeo-ficha > div[style*="background:#1E293B"],
#modal-costeo-detalle > div[style*="background:#1E293B"],
#modal-costeo-lote > div[style*="background:#1E293B"],
#modal-costeo-add-mat > div[style*="background:#1E293B"],
#modal-costeo-add-mo > div[style*="background:#1E293B"],
#modal-costeo-add-ind > div[style*="background:#1E293B"],
#modal-costeo-margen > div[style*="background:#1E293B"],
#modal-costeo-selector-mat > div[style*="background:#1E293B"],
#modal-op-nueva > div[style*="background:#1E293B"],
#modal-op-completar > div[style*="background:#1E293B"],
#modal-cp-nueva > div[style*="background:#1E293B"],
#modal-cp-pago > div[style*="background:#1E293B"],
#modal-cp-detalle > div[style*="background:#1E293B"],
#modal-proy-form > div[style*="background:#1E293B"],
#modal-proy-detalle > div[style*="background:#1E293B"],
#modal-proy-fase > div[style*="background:#1E293B"],
#modal-proy-gasto > div[style*="background:#1E293B"],
#modal-proy-material > div[style*="background:#1E293B"],
#modal-proy-oc-urgente > div[style*="background:#1E293B"],
#modal-proy-cierre > div[style*="background:#1E293B"],
#modal-proy-garantia > div[style*="background:#1E293B"],
#modal-crear-proy-desde-cot > div[style*="background:#1E293B"],
#modal-vincular-factura > div[style*="background:#1E293B"],
#modal-agregar-fase > div[style*="background:#1E293B"],
#modal-crm-cotizacion > div[style*="background:#1E293B"],
#modal-crm-workflow > div[style*="background:#1E293B"],
#modal-nueva-actividad > div[style*="background:#1E293B"],
#modal-importar-leads > div[style*="background:#1E293B"],
#modal-vendedor > div[style*="background:#1E293B"],
#modal-segmento > div[style*="background:#1E293B"],
#modal-sequence > div[style*="background:#1E293B"],
#modal-booking > div[style*="background:#1E293B"],
#modal-reporte > div[style*="background:#1E293B"],
#modal-oc-recepcion > div[style*="background:#1E293B"],
#modal-compartir > div[style*="background:#1E293B"],
#modal-orden-detalle > div[style*="background:#1E293B"],
#modal-orden-adicion > div[style*="background:#1E293B"],
#modal-orden-adicion-confirmar > div[style*="background:#1E293B"],
#modal-gastos-presupuestos > div[style*="background:#1E293B"],
#modal-conciliacion-bancaria > div[style*="background:#1E293B"],
#modal-concil-importar > div[style*="background:#1E293B"],
#modal-concil-cheque > div[style*="background:#1E293B"],
#modal-concil-nota > div[style*="background:#1E293B"],
#modal-concil-transfer > div[style*="background:#1E293B"],
#modal-nuevo-usuario > div[style*="background:#1E293B"],
#modal-nueva-empresa > div[style*="background:#1E293B"],
#modal-nuevo-plan > div[style*="background:#1E293B"],
#modal-cc-centro > div[style*="background:#1E293B"],
#modal-cc-prorrateo > div[style*="background:#1E293B"] {
  background: #ffffff !important;
  border: 1px solid var(--line, #e2e8f0) !important;
  color: var(--body, #334155) !important;
}

/* Modal costeo inner (usa margin:auto, no hijo directo del overlay) */
#modal-costeo-ficha [style*="background:#1E293B"],
#modal-costeo-detalle [style*="background:#1E293B"] {
  background: #ffffff !important;
  border: 1px solid var(--line, #e2e8f0) !important;
}

/* modal-nueva-venta: usa background:#0F172A */
#modal-nueva-venta [style*="background:#0F172A"] {
  background: #ffffff !important;
  border-bottom: 1px solid var(--line, #e2e8f0) !important;
  color: var(--body, #334155) !important;
}
#modal-nueva-venta [style*="color:#0F172A"] { color: var(--ink, #1e293b) !important; }
#modal-nueva-venta [style*="color:#94A3B8"] { color: var(--muted, #64748b) !important; }


/* ══ B. MODAL HEADERS — Gradiente → limpio (como Nuevo Cliente) ══
   El header con gradiente se vuelve blanco con borde inferior.
   Texto del título → oscuro. Subtítulo → gris. */

#modal-gasto [style*="background:linear-gradient"],
#modal-costeo-ficha [style*="background:linear-gradient"],
#modal-costeo-detalle [style*="background:linear-gradient"],
#modal-op-nueva [style*="background:linear-gradient"],
#modal-op-completar [style*="background:linear-gradient"],
#modal-cp-nueva [style*="background:linear-gradient"],
#modal-cp-pago [style*="background:linear-gradient"],
#modal-proy-form [style*="background:linear-gradient"],
#modal-proy-detalle [style*="background:linear-gradient"],
#modal-crm-cotizacion [style*="background:linear-gradient"],
#modal-crm-workflow [style*="background:linear-gradient"],
#modal-nueva-actividad [style*="background:linear-gradient"],
#modal-importar-leads [style*="background:linear-gradient"],
#modal-vendedor [style*="background:linear-gradient"],
#modal-segmento [style*="background:linear-gradient"],
#modal-sequence [style*="background:linear-gradient"],
#modal-booking [style*="background:linear-gradient"],
#modal-reporte [style*="background:linear-gradient"],
#modal-oc-recepcion [style*="background:linear-gradient"],
#modal-compartir [style*="background:linear-gradient"],
#modal-orden-detalle [style*="background:linear-gradient"],
#modal-gastos-presupuestos [style*="background:linear-gradient"],
#modal-conciliacion-bancaria [style*="background:linear-gradient"],
#modal-nuevo-usuario [style*="background:linear-gradient"],
#modal-nueva-empresa [style*="background:linear-gradient"],
#modal-nuevo-plan [style*="background:linear-gradient"],
#modal-cc-centro [style*="background:linear-gradient"],
#modal-cc-prorrateo [style*="background:linear-gradient"],
#modal-agregar-fase [style*="background:linear-gradient"],
#modal-crear-proy-desde-cot [style*="background:linear-gradient"],
#modal-vincular-factura [style*="background:linear-gradient"],
#modal-proy-fase [style*="background:linear-gradient"],
#modal-proy-gasto [style*="background:linear-gradient"],
#modal-proy-material [style*="background:linear-gradient"],
#modal-proy-cierre [style*="background:linear-gradient"],
#modal-proy-garantia [style*="background:linear-gradient"],
#modal-costeo-lote [style*="background:linear-gradient"],
#modal-orden-adicion [style*="background:linear-gradient"],
#modal-costeo-add-mat [style*="background:linear-gradient"],
#modal-costeo-add-mo [style*="background:linear-gradient"],
#modal-costeo-add-ind [style*="background:linear-gradient"] {
  background: #ffffff !important;
  border-bottom: 1px solid var(--line, #e2e8f0) !important;
}

/* Títulos dentro de modal headers → oscuro */
[id^="modal-"] > div > [style*="background:linear-gradient"] h2,
[id^="modal-"] > div > [style*="background:linear-gradient"] h3,
[id^="modal-"] > div [style*="background:linear-gradient"] h2,
[id^="modal-"] > div [style*="background:linear-gradient"] h3 {
  color: var(--ink, #1e293b) !important;
}
[id^="modal-"] > div > [style*="background:linear-gradient"] > p,
[id^="modal-"] > div [style*="background:linear-gradient"] > p {
  color: var(--muted, #64748b) !important;
}
/* Solo divs de texto con color:#fff → oscuro (NO botones) */
[id^="modal-"] [style*="background:linear-gradient"] > div > div[style*="color:#fff"],
[id^="modal-"] [style*="background:linear-gradient"] > div > div[style*="color: #fff"] {
  color: var(--ink, #1e293b) !important;
}
/* Botón Cerrar en headers de modal → gris sutil */
[id^="modal-"] [style*="background:linear-gradient"] button[style*="font-size:18px"],
[id^="modal-"] [style*="background:linear-gradient"] button[style*="font-size:20px"] {
  color: var(--muted, #64748b) !important;
}

/* JS _mkModal → header limpio y título oscuro */
[id^="modal-"] > div[style*="background:#ffffff"] > [style*="background:linear-gradient"] {
  background: #ffffff !important;
  border-bottom: 1px solid var(--line, #e2e8f0) !important;
}
[id^="modal-"] > div > [style*="background:linear-gradient"] > div > [style*="color:#ffffff"],
[id^="modal-"] > div > [style*="background:linear-gradient"] > div > [style*="color:#fff"] {
  color: var(--ink, #1e293b) !important;
}
[id^="modal-"] > div > [style*="background:linear-gradient"] > div > [style*="color:rgba(255,255,255"] {
  color: var(--muted, #64748b) !important;
}

/* Solo botones de Cancelar con fondo oscuro explícito */
[id^="modal-"] button[style*="background:#1E293B"] {
  background: var(--bg-subtle, #f1f5f9) !important;
  color: var(--body, #334155) !important;
  border: 1px solid var(--line, #e2e8f0) !important;
}

/* Sticky headers dentro de modales */
[id^="modal-"] [style*="background:#1E293B"][style*="sticky"],
[id^="modal-"] [style*="background:#0F172A"][style*="sticky"] {
  background: #ffffff !important;
  border-bottom: 1px solid var(--line, #e2e8f0) !important;
}


/* ══ C. TEXTOS — Colores claros sobre fondo claro ═════════ */

[id^="modal-"] [style*="color:#F1F5F9"],
[id^="modal-"] [style*="color:#f1f5f9"] { color: var(--ink, #1e293b) !important; }
[id^="modal-"] [style*="color:#F8FAFC"] { color: var(--ink, #1e293b) !important; }
[id^="modal-"] [style*="color:#CBD5E1"],
[id^="modal-"] [style*="color:#cbd5e1"] { color: var(--muted, #64748b) !important; }
[id^="modal-"] [style*="color:#94A3B8"] { color: var(--muted, #64748b) !important; }
[id^="modal-"] [style*="color:#6EE7B7"] { color: var(--success, #059669) !important; }

/* Bordes blancos transparentes en modales */
[id^="modal-"] [style*="border:1px solid rgba(255,255,255,"],
[id^="modal-"] [style*="border-bottom:1px solid rgba(255,255,255,"] {
  border-color: var(--line, #e2e8f0) !important;
}


/* ══ D. ACTIVIDADES — Columnas sin color ══════════════════ */

#act-col-vencidas { background: #ffffff !important; border: 1px solid var(--line, #e2e8f0) !important; }
#act-col-vencidas h3 { color: var(--danger, #dc2626) !important; }
#act-col-hoy { background: #ffffff !important; border: 1px solid var(--line, #e2e8f0) !important; }
#act-col-hoy h3 { color: var(--warning, #d97706) !important; }
#act-col-proximas { background: #ffffff !important; border: 1px solid var(--line, #e2e8f0) !important; }
/* Cards dentro — ya son blancas, bordes sutil */
#act-col-vencidas [style*="border:1px solid #FECDD3"] { border-color: var(--line, #e2e8f0) !important; }
#act-col-hoy [style*="border:1px solid #FDE68A"] { border-color: var(--line, #e2e8f0) !important; }


/* ══ E. DASHBOARD-BI ══════════════════════════════════════ */

#view-dashboard-bi { background: var(--bg-page, #f8fafc) !important; }
#bi-ba-section, #bi-ejecutivo-section { background: var(--surface, #ffffff) !important; border: 1px solid var(--line, #e2e8f0) !important; }
#bi-ba-section h2, #bi-ba-section h3, #bi-ba-section h4 { color: var(--ink, #1e293b) !important; }
#bi-ba-section p { color: var(--body, #334155) !important; }
#bi-ejecutivo-section h2, #bi-ejecutivo-section h3 { color: var(--ink, #1e293b) !important; }
#view-dashboard-bi [id^="widget-"] { background: var(--surface, #ffffff) !important; border: 1px solid var(--line, #e2e8f0) !important; }
#exec-drill-panel { background: var(--surface, #ffffff) !important; border: 1px solid var(--line, #e2e8f0) !important; }
#view-dashboard-bi select, #view-dashboard-bi input[type="date"] { background: var(--surface, #ffffff) !important; border: 1px solid var(--line-strong, #cbd5e1) !important; color: var(--ink, #1e293b) !important; }
#view-dashboard-bi select option { background: var(--surface, #ffffff) !important; color: var(--ink, #1e293b) !important; }
.chart-card { background: var(--surface, #ffffff) !important; border: 1px solid var(--line, #e2e8f0) !important; }
.chart-card h4 { color: var(--ink, #1e293b) !important; }
.enterprise-table th { color: var(--muted, #64748b) !important; background: var(--bg-subtle, #f1f5f9) !important; }
.enterprise-table td { color: var(--body, #334155) !important; border-bottom: 1px solid var(--line, #e2e8f0) !important; }
#view-dashboard-bi [style*="color:#F1F5F9"] { color: var(--ink, #1e293b) !important; }
#view-dashboard-bi [style*="color:#94A3B8"] { color: var(--muted, #64748b) !important; }
#view-dashboard-bi button[style*="background:rgba(255,255,255,.1)"] { background: var(--bg-subtle, #f1f5f9) !important; color: var(--muted, #64748b) !important; }
#view-dashboard-bi [style*="background:rgba(255,255,255,.0)"] { background: var(--bg-subtle, #f1f5f9) !important; }
#view-dashboard-bi [style*="border-bottom:1px solid rgba(255,255,255,"] { border-bottom-color: var(--line, #e2e8f0) !important; }
#bi-ranking-clientes-list [style*="color:var(--faint)"] { color: var(--body, #334155) !important; }
#bi-ba-section [style*="background:rgba(245,158,11,"] { background: var(--warning-soft, #fffbeb) !important; }
#bi-ba-section [style*="background:rgba(239,68,68,"] { background: var(--danger-soft, #fef2f2) !important; }
#bi-ba-section [style*="background:rgba(16,185,129,"] { background: var(--success-soft, #ecfdf5) !important; }


/* ══ F. TESORERÍA ═════════════════════════════════════════ */

#fiscal-dark-panel { background: var(--surface, #ffffff) !important; border: 1px solid var(--line, #e2e8f0) !important; }
#fiscal-dark-panel h3 { color: var(--ink, #1e293b) !important; }
#fiscal-dark-panel select { background: var(--surface, #ffffff) !important; border: 1px solid var(--line-strong, #cbd5e1) !important; color: var(--ink, #1e293b) !important; }
#fiscal-dark-panel [style*="color:#F1F5F9"] { color: var(--ink, #1e293b) !important; }
#fiscal-dark-panel [style*="color:#CBD5E1"] { color: var(--muted, #64748b) !important; }
#pe-drilldown-panel { background: var(--surface, #ffffff) !important; border: 1px solid var(--line, #e2e8f0) !important; }


/* ══ G. CLIENTES ══════════════════════════════════════════ */

#cl-lista-body > div { border-bottom: 1px solid var(--line, #e2e8f0) !important; }
#cl-lista-body > div:hover { background: var(--bg-subtle, #f1f5f9) !important; }
#view-clientes button[style*="background:#1E293B"] { background: var(--surface, #ffffff) !important; color: var(--body, #334155) !important; border: 1px solid var(--line-strong, #cbd5e1) !important; }


/* ══ H. AGENT ═════════════════════════════════════════════ */

.agent-tab-btn { color: var(--muted, #64748b) !important; }
.active-agent-tab { color: var(--primary, #2563eb) !important; border-bottom-color: var(--primary, #2563eb) !important; }
#agent-config-grid > div { border: 1px solid var(--line, #e2e8f0) !important; background: var(--surface, #ffffff) !important; }
#agent-config-grid [style*="color:#F1F5F9"] { color: var(--ink, #1e293b) !important; }
#agent-config-grid [style*="color:#818CF8"] { color: var(--primary, #2563eb) !important; }
#agent-config-grid [style*="color:#475569"] { color: var(--body, #334155) !important; }
#agent-config-grid [style*="border:1px solid rgba(255,255,255"] { border-color: var(--line, #e2e8f0) !important; }
#agent-config-grid textarea { background: var(--surface, #ffffff) !important; border-color: var(--line, #e2e8f0) !important; color: var(--body, #334155) !important; }
.kpi-card { background: var(--surface, #ffffff) !important; border: 1px solid var(--line, #e2e8f0) !important; }


/* ══ I. INBOX ═════════════════════════════════════════════ */

#view-inbox [style*="background:linear-gradient(135deg,#0F172A"] {
  background: var(--surface, #ffffff) !important;
  border: 1px solid var(--line, #e2e8f0) !important;
}
#view-inbox [style*="color:#F1F5F9"] { color: var(--ink, #1e293b) !important; }


/* ══ J. IMPORTACIONES ═════════════════════════════════════ */

#view-importaciones > [style*="background:linear-gradient(135deg,#0F172A"] {
  background: var(--surface, #ffffff) !important;
  border: 1px solid var(--line, #e2e8f0) !important;
}
#view-importaciones [style*="color:#F1F5F9"] { color: var(--ink, #1e293b) !important; }
#view-importaciones [style*="color:#CBD5E1"] { color: var(--muted, #64748b) !important; }


/* ══ K. COMPETENCIA ═══════════════════════════════════════ */
/* Header OMNI Intelligence ya es blanco en el HTML — no se necesita override */


/* ══ L. EXÓGENA ═══════════════════════════════════════════ */

#view-exogena [style*="background:#1E293B"] {
  background: var(--surface, #ffffff) !important;
  border: 1px solid var(--line, #e2e8f0) !important;
}
#view-exogena strong[style*="color:#F1F5F9"] { color: var(--ink, #1e293b) !important; }


/* ══ M. SETTINGS ══════════════════════════════════════════ */

#view-settings [style*="background:#0F172A"][style*="border-radius:14px"] {
  background: var(--surface, #ffffff) !important;
  border: 1px solid var(--danger-border, #fca5a5) !important;
}
#view-settings [style*="background:#0F172A"][style*="border-radius:6px"] {
  background: var(--bg-subtle, #f1f5f9) !important;
  color: var(--body, #334155) !important;
}
#view-settings [style*="background:#0F172A"][style*="border-radius:8px"]:not(#matias-logs-content) {
  background: var(--bg-subtle, #f1f5f9) !important;
  color: var(--body, #334155) !important;
}
#view-settings [style*="color:#F1F5F9"] { color: var(--ink, #1e293b) !important; }


/* ══ N. WORKSPACE VENDEDOR ════════════════════════════════ */

#view-workspace-vendedor button[style*="background:#0F172A"] {
  background: var(--surface, #ffffff) !important;
  color: var(--body, #334155) !important;
  border: 1px solid var(--line-strong, #cbd5e1) !important;
}
#view-workspace-vendedor [style*="background:#0F172A"][style*="flex-shrink"] {
  background: var(--surface, #ffffff) !important;
  border-bottom: 1px solid var(--line, #e2e8f0) !important;
  color: var(--ink, #1e293b) !important;
}


/* ══ O. INSTALL BANNER ════════════════════════════════════ */
/* Banner ya tiene colores correctos en el HTML — no se necesita override */


/* ══ P. CxP TABLA ═════════════════════════════════════════ */

[style*="color:var(--warning-border)"] { color: var(--warning, #d97706) !important; }
[style*="color:var(--primary-border)"] { color: var(--primary, #2563eb) !important; }
[style*="color:var(--success-border)"] { color: var(--success, #059669) !important; }
[style*="color:var(--danger-border)"] { color: var(--danger, #dc2626) !important; }
#view-cuentas-pagar [style*="background:var(--ink)"] { background: var(--surface, #ffffff) !important; }
#view-cuentas-pagar [style*="background:var(--ink)"] * { color: var(--body, #334155) !important; }


/* ══ Q. NAVIGATION ════════════════════════════════════════ */

.nav-btn.active-nav-btn {
  background: rgba(37, 99, 235, .12) !important;
  color: var(--primary, #2563eb) !important;
  border-left: 3px solid var(--primary, #2563eb) !important;
  font-weight: 700 !important;
}


/* ══ FIN ══════════════════════════════════════════════════ */
