/* ============================================================
   GESTIVA · DARK MODE / MODE SOMBRE (COMPLET ET EXHAUSTIF)
   Design System sombre pour l'ensemble des modules Gestiva :
   Agenda, CRM, Ventes, Achats, Catalogue & Packs, Trésorerie,
   Espace RH, GMAO, Meet, Chat, Réglages, Rapports et Dashboard.
   ============================================================ */

/* ── 1. Tokens de design en mode sombre ───────────────────── */
:root[data-theme="dark"],
html[data-theme="dark"],
body[data-theme="dark"],
[data-theme="dark"] {
  /* Couleurs de surface et fonds */
  --bg:             #090e17;
  --surface:        #111827;
  --surface-alt:    #162032;
  --surface-hover:  #1e293b;

  /* Bordures */
  --border:         #243249;
  --border-light:   #1b263b;
  --border-focus:   #3b82f6;

  /* Typographie & Couleurs de texte */
  --txt:            #f8fafc;
  --txt-2:          #cbd5e1;
  --txt-muted:      #94a3b8;
  --txt-faint:      #64748b;

  /* Accent primaire & Dérivés */
  --primary:        #3b82f6;
  --primary-hover:  #60a5fa;
  --primary-light:  rgba(59, 130, 246, 0.16);
  --primary-border: rgba(59, 130, 246, 0.35);
  --primary-text:   #93c5fd;

  /* Accent secondaire */
  --secondary:      #e2e8f0;
  --secondary-hover:#ffffff;
  --secondary-light:#1e293b;

  /* Sémantique : Succès */
  --success:        #10b981;
  --success-hover:  #34d399;
  --success-light:  rgba(16, 185, 129, 0.16);
  --success-border: rgba(16, 185, 129, 0.35);
  --success-text:   #34d399;

  /* Sémantique : Attention / Warning */
  --warning:        #f59e0b;
  --warning-hover:  #fbbf24;
  --warning-light:  rgba(245, 158, 11, 0.16);
  --warning-border: rgba(245, 158, 11, 0.35);
  --warning-text:   #fbbf24;

  /* Sémantique : Danger / Erreur */
  --danger:         #ef4444;
  --danger-hover:   #f87171;
  --danger-light:   rgba(239, 68, 68, 0.16);
  --danger-border:  rgba(239, 68, 68, 0.35);
  --danger-text:    #f87171;

  /* Sémantique : Information */
  --info:           #0284c7;
  --info-hover:     #38bdf8;
  --info-light:     rgba(2, 132, 199, 0.16);
  --info-border:    rgba(2, 132, 199, 0.35);
  --info-text:      #38bdf8;

  /* Sémantique : Violet */
  --purple:         #a855f7;
  --purple-hover:   #c084fc;
  --purple-light:   rgba(168, 85, 247, 0.16);
  --purple-border:  rgba(168, 85, 247, 0.35);
  --purple-text:    #c084fc;

  /* Ombres sombres */
  --shadow-xs:  0 1px 2px rgba(0, 0, 0, 0.5);
  --shadow-sm:  0 1px 4px rgba(0, 0, 0, 0.45), 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-md:  0 4px 14px rgba(0, 0, 0, 0.55), 0 1px 3px rgba(0, 0, 0, 0.35);
  --shadow-lg:  0 10px 30px rgba(0, 0, 0, 0.65);
  --shadow-xl:  0 20px 50px rgba(0, 0, 0, 0.75);

  /* Sidebar */
  --sidebar-bg:       #0b1220;
  --sidebar-hover:    rgba(255, 255, 255, 0.08);
  --sidebar-text:     #94a3b8;
  --sidebar-border:   #1e293b;
}

/* ── 2. Fond de page, Shell & Scrollbars ───────────────────── */
html[data-theme="dark"],
body[data-theme="dark"],
[data-theme="dark"] body {
  background: var(--bg) !important;
  color: var(--txt) !important;
  color-scheme: dark;
}

[data-theme="dark"] .app-container,
[data-theme="dark"] .main-wrapper,
[data-theme="dark"] .main-content {
  background: var(--bg) !important;
  color: var(--txt) !important;
}

/* Scrollbars sombres */
[data-theme="dark"] ::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
[data-theme="dark"] ::-webkit-scrollbar-track {
  background: #090e17;
}
[data-theme="dark"] ::-webkit-scrollbar-thumb {
  background: #243249;
  border-radius: 4px;
}
[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
  background: #3b506f;
}

/* ── 3. Topbar Flottante & Capsules d'action ──────────────── */
[data-theme="dark"] .top-bar {
  background: rgba(9, 14, 23, 0.92) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-bottom: 1px solid rgba(36, 50, 73, 0.5) !important;
}

[data-theme="dark"] .top-brand-pill {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}
[data-theme="dark"] .top-brand-pill:hover {
  border-color: var(--primary) !important;
  box-shadow: 0 6px 20px rgba(59, 130, 246, 0.2) !important;
}
[data-theme="dark"] .brand-name-main {
  color: var(--txt) !important;
}
[data-theme="dark"] .brand-sec-badge {
  background: var(--primary-light) !important;
  color: var(--primary-text) !important;
  border-color: var(--primary-border) !important;
}

[data-theme="dark"] .top-nav-pills {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.4) !important;
}
[data-theme="dark"] .top-nav-pill {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .top-nav-pill:hover {
  color: var(--primary-hover) !important;
  background: var(--surface-alt) !important;
}
[data-theme="dark"] .top-nav-pill.active {
  background: linear-gradient(135deg, var(--primary), #1d4ed8) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.45) !important;
}
[data-theme="dark"] .top-nav-pill.active .top-nav-pill-icon {
  color: #ffffff !important;
}

[data-theme="dark"] .top-actions-island {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}
[data-theme="dark"] .top-search input {
  background: var(--surface-alt) !important;
  border-color: transparent !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .top-search input:focus {
  background: var(--surface) !important;
  border-color: var(--primary) !important;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2) !important;
}
[data-theme="dark"] .top-search > i {
  color: var(--txt-faint) !important;
}
[data-theme="dark"] .top-icon-btn {
  background: var(--surface-alt) !important;
  color: var(--txt-muted) !important;
  border-color: transparent !important;
}
[data-theme="dark"] .top-icon-btn:hover {
  background: var(--surface-hover) !important;
  color: var(--primary-hover) !important;
}

.theme-toggle-btn {
  transition: transform 0.25s ease, background-color 0.2s, color 0.2s;
}
.theme-toggle-btn:hover {
  transform: rotate(20deg);
}
[data-theme="dark"] .theme-toggle-btn i {
  color: #facc15 !important;
}

[data-theme="dark"] .user-avatar-badge {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}
[data-theme="dark"] .user-avatar-badge:hover {
  border-color: var(--primary) !important;
  box-shadow: 0 6px 20px rgba(59, 130, 246, 0.2) !important;
}
[data-theme="dark"] .user-meta-info strong {
  color: var(--txt) !important;
}
[data-theme="dark"] .user-meta-info span {
  color: var(--txt-muted) !important;
}

/* ── 4. Dropdowns (Utilisateur, Notifications, Recherche) ─── */
[data-theme="dark"] .user-dropdown,
[data-theme="dark"] .notification-dropdown,
[data-theme="dark"] .top-search-results,
[data-theme="dark"] .autocomplete-dropdown,
[data-theme="dark"] .attendee-suggestions,
[data-theme="dark"] .mention-suggestions {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.7) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .user-dropdown-header,
[data-theme="dark"] .notification-dropdown-header,
[data-theme="dark"] .user-dropdown-footer {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] #dropdownUserName {
  color: var(--txt) !important;
}
[data-theme="dark"] #dropdownUserEmail {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .user-dropdown-item {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .user-dropdown-item:hover {
  background: var(--surface-hover) !important;
  color: var(--primary-hover) !important;
}
[data-theme="dark"] .btn-user-logout {
  background: rgba(239, 68, 68, 0.12) !important;
  color: var(--danger-hover) !important;
  border-color: rgba(239, 68, 68, 0.25) !important;
}
[data-theme="dark"] .btn-user-logout:hover {
  background: var(--danger) !important;
  color: #ffffff !important;
}
[data-theme="dark"] .notification-dropdown {
  background: #1e293b !important;
  border-color: #334155 !important;
  box-shadow: 0 20px 48px -10px rgba(0, 0, 0, 0.6) !important;
}
[data-theme="dark"] .notification-dropdown-header,
[data-theme="dark"] .notification-dropdown-footer {
  background: #0f172a !important;
  border-color: #334155 !important;
}
[data-theme="dark"] .notif-filter-bar {
  background: #1e293b !important;
  border-color: #334155 !important;
}
[data-theme="dark"] .notification-card {
  background: #0f172a !important;
  border-color: #334155 !important;
}
[data-theme="dark"] .notification-card:hover {
  background: #1e293b !important;
  border-color: #475569 !important;
}
[data-theme="dark"] .notification-card.is-unread {
  background: rgba(37, 99, 235, 0.12) !important;
  border-color: #334155 #334155 #334155 #3b82f6 !important;
}
[data-theme="dark"] .notif-card-title {
  color: #f8fafc !important;
}
[data-theme="dark"] .notif-scope-badge,
[data-theme="dark"] .notif-metric-box {
  background: #1e293b !important;
  border-color: #334155 !important;
}
[data-theme="dark"] .notif-progress-track {
  background: #334155 !important;
}
[data-theme="dark"] .notif-readall-btn {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #e2e8f0 !important;
}
[data-theme="dark"] .notif-empty-icon {
  background: rgba(37, 99, 235, 0.2) !important;
}
[data-theme="dark"] .notification-item {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .notification-item:hover {
  background: var(--surface-alt) !important;
}
[data-theme="dark"] .notification-item.is-unread {
  background: rgba(59, 130, 246, 0.12) !important;
}
[data-theme="dark"] .notification-item strong {
  color: var(--txt) !important;
}
[data-theme="dark"] .top-search-result {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .top-search-result:hover,
[data-theme="dark"] .top-search-result[aria-selected="true"] {
  background: var(--surface-hover) !important;
  color: var(--txt) !important;
}

/* ── 5. Sidebar Gauche Flottante ─────────────────────────── */
[data-theme="dark"] .side-pill-island {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45), 0 2px 6px rgba(0, 0, 0, 0.3) !important;
}
[data-theme="dark"] .side-rail-btn {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .side-rail-btn:hover {
  background: var(--surface-alt) !important;
  color: var(--primary-hover) !important;
}
[data-theme="dark"] .side-rail-btn.active {
  background: linear-gradient(135deg, var(--primary), #1d4ed8) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 16px rgba(37, 99, 235, 0.45) !important;
}
[data-theme="dark"] .side-rail-tooltip {
  background: #1e293b !important;
  border-color: rgba(59, 130, 246, 0.35) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5) !important;
}

/* ── 6. Cartes, Tableaux & Filtres Communs ─────────────────── */
[data-theme="dark"] .card,
[data-theme="dark"] .dash-card,
[data-theme="dark"] .stat-card,
[data-theme="dark"] .kpi-card,
[data-theme="dark"] .hr-stat-card,
[data-theme="dark"] .ui-filter-bar,
[data-theme="dark"] .ui-modal-card,
[data-theme="dark"] .modal-card,
[data-theme="dark"] .modal-box {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}

[data-theme="dark"] .card-header,
[data-theme="dark"] .card-footer,
[data-theme="dark"] .ui-modal__header,
[data-theme="dark"] .ui-modal__footer,
[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}

[data-theme="dark"] .card-title,
[data-theme="dark"] .page-title,
[data-theme="dark"] .ui-modal__title,
[data-theme="dark"] .modal-title,
[data-theme="dark"] .kpi-val,
[data-theme="dark"] .stat-val,
[data-theme="dark"] .stat-value {
  color: var(--txt) !important;
}

/* Tableaux */
[data-theme="dark"] table,
[data-theme="dark"] .ui-table,
[data-theme="dark"] .acc-table,
[data-theme="dark"] .tasks-table,
[data-theme="dark"] .detail-lines-table,
[data-theme="dark"] .expense-lines-table {
  background: var(--surface) !important;
  color: var(--txt-2) !important;
}

[data-theme="dark"] table thead th,
[data-theme="dark"] .ui-table thead th,
[data-theme="dark"] .acc-table th,
[data-theme="dark"] .tasks-table thead th {
  background: var(--surface-alt) !important;
  color: var(--txt-muted) !important;
  border-color: var(--border) !important;
}

[data-theme="dark"] table tbody td,
[data-theme="dark"] .ui-table tbody td,
[data-theme="dark"] .acc-table td,
[data-theme="dark"] .tasks-table tbody td {
  border-color: var(--border-light) !important;
  color: var(--txt-2) !important;
  background: transparent !important;
}

[data-theme="dark"] table tbody tr:hover td,
[data-theme="dark"] .ui-table tbody tr:hover td,
[data-theme="dark"] .acc-table tr:hover td,
[data-theme="dark"] .tasks-table tbody tr:hover td {
  background: var(--surface-hover) !important;
}

/* Formulaires & Contrôles */
[data-theme="dark"] .form-input,
[data-theme="dark"] .ui-filter-control,
[data-theme="dark"] .ci-input,
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="tel"],
[data-theme="dark"] select,
[data-theme="dark"] textarea {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}

[data-theme="dark"] .form-input:focus,
[data-theme="dark"] .ui-filter-control:focus,
[data-theme="dark"] .ci-input:focus,
[data-theme="dark"] input:focus,
[data-theme="dark"] select:focus,
[data-theme="dark"] textarea:focus {
  background: var(--surface) !important;
  border-color: var(--primary) !important;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2) !important;
}

[data-theme="dark"] select option {
  background: var(--surface) !important;
  color: var(--txt) !important;
}

[data-theme="dark"] .form-label,
[data-theme="dark"] .filter-label,
[data-theme="dark"] .cf-label {
  color: var(--txt-muted) !important;
}

/* Filtres & Boutons */
[data-theme="dark"] .ui-filter-tab,
[data-theme="dark"] .ui-columns-btn {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .ui-filter-tab:not(.active):hover {
  background: var(--surface-hover) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .ui-filter-tabs {
  border-color: var(--border) !important;
}
[data-theme="dark"] .ui-columns-panel {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.6) !important;
}

[data-theme="dark"] .btn-outline,
[data-theme="dark"] .ui-btn-outline,
[data-theme="dark"] .btn-cancel,
[data-theme="dark"] .icon-btn,
[data-theme="dark"] .ui-action-btn {
  background: var(--surface-alt);
  border-color: var(--border);
  color: var(--txt-2);
}
[data-theme="dark"] .btn-outline:hover,
[data-theme="dark"] .ui-btn-outline:hover,
[data-theme="dark"] .btn-cancel:hover,
[data-theme="dark"] .icon-btn:hover,
[data-theme="dark"] .ui-action-btn:hover {
  background: var(--surface-hover);
  border-color: #3b506f;
  color: var(--txt);
}

/* ── Boutons d'actions colorés en mode sombre (Préservation des couleurs sémantiques) ── */
[data-theme="dark"] .ui-action-btn.ui-action-view,
[data-theme="dark"] .icon-btn.btn-view,
[data-theme="dark"] .icon-btn[title*="Consulter"],
[data-theme="dark"] .icon-btn[title*="Détail"],
[data-theme="dark"] .ui-action-view {
  background: rgba(37, 99, 235, 0.18) !important;
  border-color: rgba(59, 130, 246, 0.45) !important;
  color: #60a5fa !important;
}
[data-theme="dark"] .ui-action-btn.ui-action-view:hover,
[data-theme="dark"] .icon-btn.btn-view:hover,
[data-theme="dark"] .icon-btn[title*="Consulter"]:hover,
[data-theme="dark"] .icon-btn[title*="Détail"]:hover,
[data-theme="dark"] .ui-action-view:hover {
  background: rgba(37, 99, 235, 0.35) !important;
  border-color: #60a5fa !important;
  color: #bfdbfe !important;
}

[data-theme="dark"] .ui-action-btn.ui-action-edit,
[data-theme="dark"] .icon-btn.btn-edit,
[data-theme="dark"] .icon-btn[title*="Modifier"],
[data-theme="dark"] .icon-btn[title*="Ajuster"],
[data-theme="dark"] .ui-action-edit {
  background: rgba(245, 158, 11, 0.18) !important;
  border-color: rgba(245, 158, 11, 0.45) !important;
  color: #fbbf24 !important;
}
[data-theme="dark"] .ui-action-btn.ui-action-edit:hover,
[data-theme="dark"] .icon-btn.btn-edit:hover,
[data-theme="dark"] .icon-btn[title*="Modifier"]:hover,
[data-theme="dark"] .icon-btn[title*="Ajuster"]:hover,
[data-theme="dark"] .ui-action-edit:hover {
  background: rgba(245, 158, 11, 0.35) !important;
  border-color: #fbbf24 !important;
  color: #fef3c7 !important;
}

[data-theme="dark"] .ui-action-btn.ui-action-delete,
[data-theme="dark"] .icon-btn.text-red,
[data-theme="dark"] .icon-btn.btn-del,
[data-theme="dark"] .icon-btn.btn-delete,
[data-theme="dark"] .icon-btn[title*="Supprimer"],
[data-theme="dark"] .card-action-btn.btn-delete,
[data-theme="dark"] .btn-delete-avatar,
[data-theme="dark"] .btn-del-line,
[data-theme="dark"] .ui-action-delete {
  background: rgba(239, 68, 68, 0.18) !important;
  border-color: rgba(239, 68, 68, 0.45) !important;
  color: #f87171 !important;
}
[data-theme="dark"] .ui-action-btn.ui-action-delete:hover,
[data-theme="dark"] .icon-btn.text-red:hover,
[data-theme="dark"] .icon-btn.btn-del:hover,
[data-theme="dark"] .icon-btn.btn-delete:hover,
[data-theme="dark"] .icon-btn[title*="Supprimer"]:hover,
[data-theme="dark"] .card-action-btn.btn-delete:hover,
[data-theme="dark"] .btn-delete-avatar:hover,
[data-theme="dark"] .btn-del-line:hover,
[data-theme="dark"] .ui-action-delete:hover {
  background: rgba(239, 68, 68, 0.35) !important;
  border-color: #ef4444 !important;
  color: #fecaca !important;
}

[data-theme="dark"] .ui-action-btn.ui-action-duplicate,
[data-theme="dark"] .ui-action-btn.ui-action-event,
[data-theme="dark"] .ui-action-duplicate,
[data-theme="dark"] .ui-action-event {
  background: rgba(99, 102, 241, 0.18) !important;
  border-color: rgba(99, 102, 241, 0.45) !important;
  color: #818cf8 !important;
}
[data-theme="dark"] .ui-action-btn.ui-action-duplicate:hover,
[data-theme="dark"] .ui-action-btn.ui-action-event:hover,
[data-theme="dark"] .ui-action-duplicate:hover,
[data-theme="dark"] .ui-action-event:hover {
  background: rgba(99, 102, 241, 0.35) !important;
  border-color: #818cf8 !important;
  color: #c7d2fe !important;
}

[data-theme="dark"] .ui-action-btn.ui-action-toggle-on,
[data-theme="dark"] .ui-action-btn.ui-action-success,
[data-theme="dark"] .ui-action-toggle-on,
[data-theme="dark"] .ui-action-success {
  background: rgba(16, 185, 129, 0.18) !important;
  border-color: rgba(16, 185, 129, 0.45) !important;
  color: #34d399 !important;
}
[data-theme="dark"] .ui-action-btn.ui-action-toggle-on:hover,
[data-theme="dark"] .ui-action-btn.ui-action-success:hover,
[data-theme="dark"] .ui-action-toggle-on:hover,
[data-theme="dark"] .ui-action-success:hover {
  background: rgba(16, 185, 129, 0.35) !important;
  border-color: #34d399 !important;
  color: #a7f3d0 !important;
}

[data-theme="dark"] .ui-action-btn.ui-action-warning,
[data-theme="dark"] .ui-action-warning {
  background: rgba(245, 158, 11, 0.18) !important;
  border-color: rgba(245, 158, 11, 0.45) !important;
  color: #fbbf24 !important;
}
[data-theme="dark"] .ui-action-btn.ui-action-warning:hover,
[data-theme="dark"] .ui-action-warning:hover {
  background: rgba(245, 158, 11, 0.35) !important;
  border-color: #f59e0b !important;
}

[data-theme="dark"] .btn-status-won {
  background: rgba(16, 185, 129, 0.2) !important;
  border-color: rgba(16, 185, 129, 0.5) !important;
  color: #34d399 !important;
}
[data-theme="dark"] .btn-status-won:hover {
  background: rgba(16, 185, 129, 0.35) !important;
  color: #a7f3d0 !important;
}

[data-theme="dark"] .btn-status-lost {
  background: rgba(239, 68, 68, 0.2) !important;
  border-color: rgba(239, 68, 68, 0.5) !important;
  color: #f87171 !important;
}
[data-theme="dark"] .btn-status-lost:hover {
  background: rgba(239, 68, 68, 0.35) !important;
  color: #fecaca !important;
}

[data-theme="dark"] .btn-status-reopen {
  background: rgba(37, 99, 235, 0.2) !important;
  border-color: rgba(59, 130, 246, 0.5) !important;
  color: #60a5fa !important;
}
[data-theme="dark"] .btn-status-reopen:hover {
  background: rgba(37, 99, 235, 0.35) !important;
  color: #bfdbfe !important;
}

/* ── 7. AGENDA & TÂCHES (Spécifique) ───────────────────────── */
[data-theme="dark"] .agenda-workspace,
[data-theme="dark"] .tasks-workspace {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .agenda-toolbar,
[data-theme="dark"] .tasks-toolbar {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .current-period-title {
  color: var(--txt) !important;
}
[data-theme="dark"] .view-toggle-group {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .view-toggle-btn {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .view-toggle-btn.active {
  background: var(--surface) !important;
  color: var(--primary) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4) !important;
}
[data-theme="dark"] .agenda-body {
  background: var(--bg) !important;
}
[data-theme="dark"] .month-calendar-header,
[data-theme="dark"] .week-calendar-header,
[data-theme="dark"] .day-view-header {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .month-col-title,
[data-theme="dark"] .week-day-name {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .month-calendar-grid {
  background: var(--border) !important;
}
[data-theme="dark"] .month-day-cell {
  background: var(--surface) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .month-day-cell:hover {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .month-day-cell.other-month {
  background: var(--surface-alt) !important;
  color: var(--txt-faint) !important;
}
[data-theme="dark"] .month-day-cell.is-today,
[data-theme="dark"] .week-header-day.is-today {
  background: rgba(59, 130, 246, 0.15) !important;
}
[data-theme="dark"] .month-day-number,
[data-theme="dark"] .week-day-number {
  color: var(--txt) !important;
}
[data-theme="dark"] .week-calendar-scroll,
[data-theme="dark"] .day-calendar-scroll {
  background: var(--surface) !important;
}
[data-theme="dark"] .week-header-day,
[data-theme="dark"] .week-hour-slot,
[data-theme="dark"] .day-hour-slot {
  border-color: var(--border) !important;
}
[data-theme="dark"] .week-hour-slot:hover,
[data-theme="dark"] .day-hour-slot:hover {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .week-time-label,
[data-theme="dark"] .day-time-label {
  color: var(--txt-faint) !important;
  border-color: var(--border-light) !important;
}
[data-theme="dark"] .week-event-card,
[data-theme="dark"] .day-event-card {
  background: rgba(37, 99, 235, 0.22) !important;
  color: #bfdbfe !important;
  border-left-color: var(--primary) !important;
}
[data-theme="dark"] .agenda-loading-placeholder {
  background: rgba(9, 14, 23, 0.85) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .attendee-option:hover {
  background: var(--surface-hover) !important;
}

/* ── 8. RÉGLAGES & PRÉFÉRENCES (Spécifique) ────────────────── */
[data-theme="dark"] .pref-layout {
  color: var(--txt) !important;
}
[data-theme="dark"] .pref-nav-panel {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .pref-section-label {
  color: var(--txt-faint) !important;
}
[data-theme="dark"] .pref-tab-btn {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .pref-tab-btn:hover {
  background: var(--surface-hover) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .pref-tab-btn.active {
  background: rgba(59, 130, 246, 0.16) !important;
  color: var(--primary) !important;
  border-right-color: var(--primary) !important;
}
[data-theme="dark"] .pref-sub-nav {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .pref-sub-btn {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .pref-sub-btn:hover {
  color: var(--txt) !important;
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .pref-sub-btn.active {
  color: var(--primary) !important;
}
[data-theme="dark"] .pref-main-card,
[data-theme="dark"] .pref-card-header,
[data-theme="dark"] .pref-card-body {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .pref-card-breadcrumb {
  color: var(--txt) !important;
}
[data-theme="dark"] .pref-ur-subtab {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt-2) !important;
}
[data-theme="dark"] .pref-ur-subtab.active {
  background: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
}
[data-theme="dark"] #formCreatePrefUser input,
[data-theme="dark"] #formCreatePrefUser select {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .cf-row,
[data-theme="dark"] .ci-row,
[data-theme="dark"] .form-row-full {
  border-color: var(--border-light) !important;
}
[data-theme="dark"] .ci-icon {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] #hardwareTestInput {
  background: var(--surface-alt) !important;
  border-color: rgba(59, 130, 246, 0.4) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] #hardwareTestResult {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] #hardwareTestLogsContainer > div {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}

/* ── 9. CRM, COMPTES, CONTACTS & OPPORTUNITÉS (Spécifique) ── */
[data-theme="dark"] .contacts-page-toolbar,
[data-theme="dark"] .contacts-account-card,
[data-theme="dark"] .account-contact-card,
[data-theme="dark"] .activity-composer,
[data-theme="dark"] .activity-entry,
[data-theme="dark"] .comment-box,
[data-theme="dark"] .visibility-option {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}

[data-theme="dark"] .contacts-account-columns,
[data-theme="dark"] .contact-columns {
  background: var(--surface-alt) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .contact-row {
  border-color: var(--border-light) !important;
  color: var(--txt-2) !important;
}
[data-theme="dark"] .contact-person strong,
[data-theme="dark"] .account-heading h3,
[data-theme="dark"] .activity-entry strong {
  color: var(--txt) !important;
}
[data-theme="dark"] .comment-textarea {
  background: var(--surface) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .comment-textarea::placeholder {
  color: var(--txt-faint) !important;
}
[data-theme="dark"] .mention-suggestion {
  background: var(--surface) !important;
  color: var(--txt-2) !important;
}
[data-theme="dark"] .mention-suggestion:hover {
  background: var(--surface-hover) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .panel-empty,
[data-theme="dark"] .contacts-empty {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .visibility-option:hover,
[data-theme="dark"] .visibility-option.active {
  background: var(--surface-hover) !important;
  border-color: var(--primary) !important;
}
[data-theme="dark"] .contact-actions button {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--primary) !important;
}

/* ── CRM Opportunités (Kanban & Pipeline) ── */
[data-theme="dark"] .opportunity-workspace,
[data-theme="dark"] .opportunity-workspace.card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .opportunity-toolbar,
[data-theme="dark"] .opportunity-toolbar.card-header {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .opportunity-board-wrapper {
  background: var(--bg) !important;
}
[data-theme="dark"] .pipeline-column {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
}
[data-theme="dark"] .pipeline-column.drag-over {
  background: rgba(37, 99, 235, 0.12) !important;
  border-color: var(--primary) !important;
}
[data-theme="dark"] .pipeline-column-header {
  background: var(--surface) !important;
  border-bottom-color: var(--border) !important;
}
[data-theme="dark"] .pipeline-column-title {
  color: var(--txt) !important;
}
[data-theme="dark"] .pipeline-col-count {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .pipeline-column-amount {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .pipeline-column-footer {
  border-top-color: var(--border) !important;
}
[data-theme="dark"] .pipeline-add-card-btn,
[data-theme="dark"] .pipeline-add-stage-col {
  border-color: var(--border) !important;
  color: var(--txt-muted) !important;
  background: transparent !important;
}
[data-theme="dark"] .pipeline-add-card-btn:hover,
[data-theme="dark"] .pipeline-add-stage-col:hover {
  border-color: var(--primary) !important;
  color: var(--primary) !important;
  background: rgba(37, 99, 235, 0.15) !important;
}
[data-theme="dark"] .opportunity-card {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25) !important;
}
[data-theme="dark"] .opportunity-card:hover {
  background: var(--surface-hover) !important;
  border-color: #3b506f !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.45) !important;
}
[data-theme="dark"] .opp-card-title {
  color: var(--txt) !important;
}
[data-theme="dark"] .opp-card-customer,
[data-theme="dark"] .opp-card-contact,
[data-theme="dark"] .opp-card-meta {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .opp-card-amount {
  color: var(--txt) !important;
}
[data-theme="dark"] .opp-card-prob-badge {
  background: var(--surface) !important;
  color: var(--txt-2) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .card-action-btn {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .card-action-btn:hover {
  background: var(--surface-hover) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .pipeline-picker-button {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .pipeline-stages-badge {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .pipeline-picker-dropdown {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.55) !important;
}
[data-theme="dark"] .dropdown-header {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .dropdown-item {
  color: var(--txt) !important;
}
[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item.active {
  background: var(--surface-hover) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .dropdown-footer {
  border-top-color: var(--border) !important;
}
[data-theme="dark"] .dropdown-add-btn:hover {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .opp-filter-select,
[data-theme="dark"] .opp-search-wrap input {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .opportunity-table-wrapper {
  background: var(--surface) !important;
}
[data-theme="dark"] .opp-ui-table thead th {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .opp-ui-table tbody td {
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .opp-ui-table tbody tr:hover {
  background: var(--surface-hover) !important;
}
/* Modale détail opportunité */
[data-theme="dark"] .detail-modal-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .detail-header {
  border-bottom-color: var(--border) !important;
}
[data-theme="dark"] .detail-stepper-bar {
  background: var(--surface-alt) !important;
  border-bottom-color: var(--border) !important;
}
[data-theme="dark"] .detail-stage-pill {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .detail-stage-pill:hover {
  border-color: var(--primary) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .detail-stage-pill.active {
  background: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
}
[data-theme="dark"] .detail-section-card,
[data-theme="dark"] .detail-card,
[data-theme="dark"] .detail-sidebar-box {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .detail-info-row,
[data-theme="dark"] .detail-activity-item {
  border-color: var(--border) !important;
}

/* ── 10. CATALOGUE, ARTICLES & PACKS (Spécifique) ─────────── */
[data-theme="dark"] .pack-items-table-wrap {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .pack-items-table thead th {
  background: var(--surface-alt) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .pack-item-select,
[data-theme="dark"] .pack-item-qty,
[data-theme="dark"] .pack-item-price {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .pack-badge-composition {
  background: var(--surface-alt) !important;
  color: var(--txt-2) !important;
}

/* ── 11. TRÉSORERIE & NOTES DE FRAIS (Spécifique) ─────────── */
[data-theme="dark"] .expense-report-summary,
[data-theme="dark"] .expense-stat-card,
[data-theme="dark"] .expense-reports-table-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .expense-lines-table thead th,
[data-theme="dark"] .forecast-table thead th {
  background: var(--surface-alt) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .expense-lines-table tbody tr:hover {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .pay-summary-box.neutral {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}

/* ── 12. GMAO & MAINTENANCE INDUSTRIELLE (Spécifique) ─────── */
[data-theme="dark"] .gmao-detail-summary-grid,
[data-theme="dark"] .gmao-report-grid-3,
[data-theme="dark"] .gmao-report-grid-2,
[data-theme="dark"] .gmao-report-box {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .gmao-history-card,
[data-theme="dark"] .gmao-report-sheet,
[data-theme="dark"] .gmao-report-sign-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .gmao-report-sheet-brand {
  color: var(--txt) !important;
}

/* ── 13. CHAT INTERNE & MESSAGERIE (Page Dédiée Messenger & Widget) ──────── */
[data-theme="dark"] .chat-page-wrapper,
[data-theme="dark"] .chat-page-container,
[data-theme="dark"] .chat-sidebar-card,
[data-theme="dark"] .chat-main-card,
[data-theme="dark"] .chatbox-card,
[data-theme="dark"] .chat-card-top,
[data-theme="dark"] .chat-thread-container,
[data-theme="dark"] .chat-thread-header,
[data-theme="dark"] .chat-input-bar,
[data-theme="dark"] .cp-sidebar,
[data-theme="dark"] .cp-main,
[data-theme="dark"] .cp-info-sidebar {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .cp-sidebar-header,
[data-theme="dark"] .cp-convo-header,
[data-theme="dark"] .cp-input-bar,
[data-theme="dark"] .cp-info-header {
  border-color: var(--border) !important;
  background: var(--surface) !important;
}
[data-theme="dark"] .cp-title,
[data-theme="dark"] .cp-info-title,
[data-theme="dark"] .cp-info-name,
[data-theme="dark"] .cp-item-name,
[data-theme="dark"] .cp-empty-box h3 {
  color: var(--txt) !important;
}
[data-theme="dark"] .cp-presence-badge,
[data-theme="dark"] .cp-filter-segment,
[data-theme="dark"] .cp-info-details-box {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .cp-circle-action-btn,
[data-theme="dark"] .cp-head-action-btn {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-2) !important;
}
[data-theme="dark"] .cp-circle-action-btn:hover,
[data-theme="dark"] .cp-head-action-btn:hover {
  background: var(--surface-hover) !important;
  border-color: var(--primary) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .cp-search-input-box input,
[data-theme="dark"] .cp-input-field-wrap input {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .cp-search-input-box input:focus,
[data-theme="dark"] .cp-input-field-wrap input:focus {
  background: var(--surface) !important;
  border-color: var(--primary) !important;
}
[data-theme="dark"] .cp-seg-btn {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .cp-seg-btn.active {
  background: var(--surface) !important;
  color: var(--txt) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4) !important;
}
[data-theme="dark"] .cp-item:hover,
[data-theme="dark"] .chat-conv-item:hover {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .cp-item.active,
[data-theme="dark"] .chat-conv-item.active {
  background: rgba(37, 99, 235, 0.18) !important;
  border-color: rgba(59, 130, 246, 0.4) !important;
}
[data-theme="dark"] .cp-pinned-item {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .cp-pinned-item:hover {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .cp-pinned-item.active {
  background: rgba(37, 99, 235, 0.22) !important;
  border-color: var(--primary) !important;
}
[data-theme="dark"] .cp-messages-container {
  background: var(--bg) !important;
}
[data-theme="dark"] .chat-msg-peer,
[data-theme="dark"] .cp-msg-peer,
[data-theme="dark"] .chat-bubble.peer {
  background: var(--surface-alt) !important;
  color: var(--txt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .chat-input-field,
[data-theme="dark"] .chat-search-box input {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .chat-action-btn,
[data-theme="dark"] .cp-tool-btn {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .chat-action-btn:hover,
[data-theme="dark"] .cp-tool-btn:hover {
  background: var(--surface-hover) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .cp-detail-val {
  color: var(--txt) !important;
}
[data-theme="dark"] .cp-empty-box p,
[data-theme="dark"] .cp-item-sub,
[data-theme="dark"] .cp-item-time {
  color: var(--txt-muted) !important;
}

/* ── 14. GESTIVA MEET (Visioconférence) ────────────────────── */
[data-theme="dark"] .meet-section-card,
[data-theme="dark"] .meet-stat-card,
[data-theme="dark"] .meet-card,
[data-theme="dark"] .meet-action-box,
[data-theme="dark"] .meet-section,
[data-theme="dark"] .meet-modal-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3) !important;
}
[data-theme="dark"] .meet-section-header {
  border-bottom-color: var(--border) !important;
}
[data-theme="dark"] .meet-section-title,
[data-theme="dark"] .meet-stat-value,
[data-theme="dark"] .meet-item-title {
  color: var(--txt) !important;
}
[data-theme="dark"] .meet-section-sub,
[data-theme="dark"] .meet-stat-label,
[data-theme="dark"] .meet-item-meta,
[data-theme="dark"] .meet-empty {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .meet-item {
  border-color: var(--border-light) !important;
}
[data-theme="dark"] .meet-item:hover {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .btn-meet-icon-sm {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-2) !important;
}
[data-theme="dark"] .btn-meet-icon-sm:hover {
  background: var(--surface-hover) !important;
  border-color: var(--primary) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .btn-meet-start {
  background: var(--surface) !important;
  color: var(--primary) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3) !important;
}
[data-theme="dark"] .btn-join-code {
  background: var(--surface) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .meet-join-form input {
  background: rgba(255, 255, 255, 0.12) !important;
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
}
[data-theme="dark"] .meet-badge.ended {
  background: var(--surface-alt) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .meet-badge.waiting {
  background: rgba(245, 158, 11, 0.18) !important;
  color: #fbbf24 !important;
}
[data-theme="dark"] #meetInviteDropdown {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5) !important;
}
[data-theme="dark"] #meetSuccessModal .modal-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] #meetSuccessMeetingTitle {
  color: var(--txt) !important;
}
[data-theme="dark"] #meetSuccessLinkInput {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}

/* ── 15. ESPACE MANAGER (Abonnement, Contrats, Facturation & Tickets) ── */
[data-theme="dark"] .manager-content,
[data-theme="dark"] .manager-dynamic-view .card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .manager-content .card-header {
  border-bottom-color: var(--border) !important;
}
[data-theme="dark"] .manager-info {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .manager-info strong {
  color: var(--txt) !important;
}
[data-theme="dark"] .manager-info span,
[data-theme="dark"] .manager-info small {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .usage-box {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .usage-box-head {
  color: var(--txt) !important;
}
[data-theme="dark"] .usage-progress-track {
  background: var(--surface-alt) !important;
}
[data-theme="dark"] .usage-box-foot {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .module-toggle-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .module-toggle-card.is-active {
  background: var(--surface-alt) !important;
  border-color: rgba(59, 130, 246, 0.45) !important;
}
[data-theme="dark"] .module-toggle-name {
  color: var(--txt) !important;
}
[data-theme="dark"] .module-toggle-status,
[data-theme="dark"] .module-toggle-desc {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .plan-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .plan-card.current-plan {
  background: linear-gradient(180deg, rgba(37, 99, 235, 0.18) 0%, var(--surface) 40%) !important;
  border-color: var(--primary) !important;
}
[data-theme="dark"] .plan-card-name,
[data-theme="dark"] .plan-card-price {
  color: var(--txt) !important;
}
[data-theme="dark"] .plan-card-meta {
  border-bottom-color: var(--border) !important;
  color: var(--txt-2) !important;
}
[data-theme="dark"] .plan-card-features {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .plan-card-badge {
  background: var(--surface-alt) !important;
  color: var(--txt-2) !important;
}
[data-theme="dark"] .plan-card.current-plan .plan-card-badge {
  background: var(--primary) !important;
  color: #ffffff !important;
}
[data-theme="dark"] .manager-tab-pill {
  background: var(--surface-alt) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .sub-hero-btn {
  background: var(--surface) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .sub-hero-btn:hover {
  background: var(--surface-alt) !important;
}
[data-theme="dark"] .sla-item-card {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .sla-item-title {
  color: var(--txt) !important;
}
[data-theme="dark"] .sla-item-desc {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .sla-item-icon {
  background: rgba(37, 99, 235, 0.2) !important;
  color: #60a5fa !important;
}
[data-theme="dark"] .manager-preview-doc {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .manager-preview-head {
  border-bottom-color: var(--border) !important;
}
[data-theme="dark"] .manager-preview-clauses {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .manager-sign-box {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .manager-check-box {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .manager-switch-label {
  color: var(--txt) !important;
}
[data-theme="dark"] .manager-table thead th {
  background: var(--surface-alt) !important;
  color: var(--txt-muted) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .manager-table tbody td {
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .manager-table tbody tr:hover {
  background: var(--surface-hover) !important;
}

/* ── 16. ESPACE RAPPORTS & LIBRAIRIE ──────────────────────── */
[data-theme="dark"] .reports-search,
[data-theme="dark"] .report-library-card,
[data-theme="dark"] .report-filters,
[data-theme="dark"] .report-kpi {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .reports-search input,
[data-theme="dark"] .report-library-card strong,
[data-theme="dark"] .report-kpi strong,
[data-theme="dark"] .reports-toolbar h2 {
  color: var(--txt) !important;
}
[data-theme="dark"] .reports-category-btn:hover {
  background: var(--surface-hover) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .reports-category-btn.active {
  background: rgba(59, 130, 246, 0.16) !important;
  border-color: rgba(59, 130, 246, 0.35) !important;
  color: var(--primary) !important;
}

/* ── 17. MON PROFIL & UTILISATEUR ─────────────────────────── */
[data-theme="dark"] .profile-sidebar,
[data-theme="dark"] .profile-content-card,
[data-theme="dark"] .profile-info-table {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .profile-sidebar-name,
[data-theme="dark"] .pane-title,
[data-theme="dark"] .profile-info-table td {
  color: var(--txt) !important;
}
[data-theme="dark"] .profile-nav-btn {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .profile-nav-btn:hover {
  background: var(--surface-hover) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .profile-nav-btn.active {
  background: rgba(59, 130, 246, 0.16) !important;
  color: var(--primary) !important;
}
[data-theme="dark"] .avatar-preview-box {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .avatar-file-label {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-2) !important;
}

/* ── 18. DOCUMENTS COMMERCIAUX & VENTES ───────────────────── */
[data-theme="dark"] .detail-action-bar,
[data-theme="dark"] .doc-info-box {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .doc-number,
[data-theme="dark"] .doc-info-box-val,
[data-theme="dark"] .detail-client-name,
[data-theme="dark"] .assoc-doc-main {
  color: var(--txt) !important;
}
[data-theme="dark"] .assoc-doc-row {
  background: var(--surface) !important;
  border-color: var(--border-light) !important;
}
[data-theme="dark"] .assoc-doc-row:hover {
  background: var(--surface-hover) !important;
}
[data-theme="dark"] .sched-info-banner {
  background: rgba(168, 85, 247, 0.14) !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #d8b4fe !important;
}

/* ── 19. RÈGLES UNIVERSELLES POUR STYLES EN LIGNE (INLINE) ── */
/* Intercepte tous les styles inline de fond clair/blanc résiduels dans les templates */
[data-theme="dark"] [style*="background: #fff"],
[data-theme="dark"] [style*="background:#fff"],
[data-theme="dark"] [style*="background: #ffffff"],
[data-theme="dark"] [style*="background:#ffffff"],
[data-theme="dark"] [style*="background: white"],
[data-theme="dark"] [style*="background:white"],
[data-theme="dark"] [style*="background-color: #fff"],
[data-theme="dark"] [style*="background-color:#fff"],
[data-theme="dark"] [style*="background-color: #ffffff"],
[data-theme="dark"] [style*="background-color:#ffffff"],
[data-theme="dark"] [style*="background-color: white"],
[data-theme="dark"] [style*="background-color:white"],
[data-theme="dark"] .bg-white {
  background: var(--surface) !important;
  color: var(--txt) !important;
}

[data-theme="dark"] [style*="background: #f8fafc"],
[data-theme="dark"] [style*="background:#f8fafc"],
[data-theme="dark"] [style*="background: #f1f5f9"],
[data-theme="dark"] [style*="background:#f1f5f9"],
[data-theme="dark"] [style*="background: #fafafa"],
[data-theme="dark"] [style*="background:#fafafa"],
[data-theme="dark"] [style*="background-color: #f8fafc"],
[data-theme="dark"] [style*="background-color:#f8fafc"],
[data-theme="dark"] [style*="background-color: #f1f5f9"],
[data-theme="dark"] [style*="background-color:#f1f5f9"],
[data-theme="dark"] .bg-light {
  background: var(--surface-alt) !important;
  color: var(--txt-2) !important;
}

/* Texte sombre inline adapté en mode sombre */
[data-theme="dark"] [style*="color: #0f172a"],
[data-theme="dark"] [style*="color:#0f172a"],
[data-theme="dark"] [style*="color: #1e293b"],
[data-theme="dark"] [style*="color:#1e293b"],
[data-theme="dark"] [style*="color: #334155"],
[data-theme="dark"] [style*="color:#334155"],
[data-theme="dark"] [style*="color: #374151"],
[data-theme="dark"] [style*="color:#374151"],
[data-theme="dark"] [style*="color: #475569"],
[data-theme="dark"] [style*="color:#475569"] {
  color: var(--txt) !important;
}

/* Bordures claires inline adaptées */
[data-theme="dark"] [style*="border: 1px solid #e2e8f0"],
[data-theme="dark"] [style*="border:1px solid #e2e8f0"],
[data-theme="dark"] [style*="border: 1.5px solid #e2e8f0"],
[data-theme="dark"] [style*="border:1.5px solid #e2e8f0"],
[data-theme="dark"] [style*="border-bottom: 1px solid #e2e8f0"],
[data-theme="dark"] [style*="border-bottom:1px solid #e2e8f0"],
[data-theme="dark"] [style*="border-top: 1px solid #e2e8f0"],
[data-theme="dark"] [style*="border-top:1px solid #e2e8f0"] {
  border-color: var(--border) !important;
}

/* ── 20. TABLEAU DE BORD (Dashboard FinTech) ── */
[data-theme="dark"] .dash-hero-header .dash-greeting-title {
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-hero-header .dash-greeting-sub {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .dash-greeting-badge {
  background: rgba(37, 99, 235, 0.16) !important;
  border-color: rgba(59, 130, 246, 0.35) !important;
  color: #60a5fa !important;
}
[data-theme="dark"] .dash-pill-group {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .dash-pill-btn {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .dash-pill-btn:hover {
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-pill-btn.active {
  background: var(--surface) !important;
  color: #60a5fa !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.45) !important;
}
[data-theme="dark"] .dash-action-icon-btn {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-2) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3) !important;
}
[data-theme="dark"] .dash-action-icon-btn:hover {
  background: var(--surface-hover) !important;
  color: #60a5fa !important;
  border-color: var(--primary) !important;
}

/* Cartes & En-têtes du Dashboard */
[data-theme="dark"] .dash-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-card:hover {
  border-color: #3b506f !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.5) !important;
}
[data-theme="dark"] .dash-card-header-clean {
  background: transparent !important;
  border: none !important;
}
[data-theme="dark"] .dash-card-heading {
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-card-subtext {
  color: var(--txt-muted) !important;
}

/* Colonne 1 : Solde Global & Wallets */
[data-theme="dark"] .dash-label-sub {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .dash-period-tag {
  color: var(--txt-faint) !important;
}
[data-theme="dark"] .dash-currency-badge {
  background: var(--surface-alt) !important;
  border: 1px solid var(--border) !important;
  color: var(--txt-2) !important;
}
[data-theme="dark"] .dash-mega-number {
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-mega-number .dash-curr-unit {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .dash-trend-tag.positive {
  background: rgba(16, 185, 129, 0.16) !important;
  color: #34d399 !important;
}
[data-theme="dark"] .dash-trend-tag.negative {
  background: rgba(239, 68, 68, 0.16) !important;
  color: #f87171 !important;
}
[data-theme="dark"] .dash-action-pill-dark {
  background: var(--primary) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35) !important;
}
[data-theme="dark"] .dash-action-pill-dark:hover {
  background: var(--primary-hover) !important;
}
[data-theme="dark"] .dash-action-pill-outline {
  background: var(--surface-alt) !important;
  border: 1.5px solid var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-action-pill-outline:hover {
  background: var(--surface-hover) !important;
  border-color: var(--primary) !important;
  color: #60a5fa !important;
}
[data-theme="dark"] .dash-wallets-section {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .dash-wallets-header {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .dash-wallet-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .dash-wallet-card:hover {
  border-color: #3b506f !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35) !important;
}
[data-theme="dark"] .wallet-curr {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .wallet-val {
  color: var(--txt) !important;
}

/* Colonne 2 : Micro-cartes & Métriques */
[data-theme="dark"] .dash-metric-mini-card {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .mini-card-title {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .mini-card-amount {
  color: var(--txt) !important;
}
[data-theme="dark"] .mini-icon.icon-amber {
  background: rgba(245, 158, 11, 0.16) !important;
  color: #fbbf24 !important;
}
[data-theme="dark"] .mini-icon.icon-blue {
  background: rgba(37, 99, 235, 0.16) !important;
  color: #60a5fa !important;
}
[data-theme="dark"] .mini-icon.icon-purple {
  background: rgba(139, 92, 246, 0.16) !important;
  color: #c084fc !important;
}
[data-theme="dark"] .mini-icon.icon-green {
  background: rgba(16, 185, 129, 0.16) !important;
  color: #34d399 !important;
}

/* Colonne 3 : Graphique Flux Financiers */
[data-theme="dark"] .dash-card-chart {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .legend-chip {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .chip-dark {
  background: #64748b !important;
}
[data-theme="dark"] .bar-pill-exp {
  background: linear-gradient(180deg, #64748b 0%, #334155 100%) !important;
}
[data-theme="dark"] .bar-month-lbl {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .dash-chart-footer-metrics {
  border-top-color: var(--border) !important;
}
[data-theme="dark"] .chart-foot-item .foot-label {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .chart-foot-item .foot-val.text-dark {
  color: var(--txt) !important;
}

/* Section Inférieure : Objectifs & Raccourcis */
[data-theme="dark"] .dash-card-spending {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .spending-badge-pill {
  background: rgba(37, 99, 235, 0.18) !important;
  border: 1px solid rgba(59, 130, 246, 0.35) !important;
  color: #60a5fa !important;
}
[data-theme="dark"] .spending-progress-box {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .spending-mini-label {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .spending-current-val {
  color: var(--txt) !important;
}
[data-theme="dark"] .spending-target-val {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .spending-bar-track {
  background: var(--border) !important;
}
[data-theme="dark"] .spending-progress-sub {
  color: var(--txt-2) !important;
}
[data-theme="dark"] .dash-fast-shortcuts {
  color: var(--txt) !important;
}
[data-theme="dark"] .fast-shortcuts-title {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .fast-shortcut-item {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .fast-shortcut-item:hover {
  background: var(--surface-hover) !important;
  border-color: var(--primary) !important;
  color: #60a5fa !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35) !important;
}
[data-theme="dark"] .f-icon.f-blue    { background: rgba(37, 99, 235, 0.16) !important; color: #60a5fa !important; }
[data-theme="dark"] .f-icon.f-green   { background: rgba(16, 185, 129, 0.16) !important; color: #34d399 !important; }
[data-theme="dark"] .f-icon.f-amber   { background: rgba(245, 158, 11, 0.16) !important; color: #fbbf24 !important; }
[data-theme="dark"] .f-icon.f-purple  { background: rgba(139, 92, 246, 0.16) !important; color: #c084fc !important; }
[data-theme="dark"] .f-icon.f-emerald { background: rgba(16, 185, 129, 0.16) !important; color: #34d399 !important; }
[data-theme="dark"] .f-icon.f-indigo  { background: rgba(99, 102, 241, 0.16) !important; color: #818cf8 !important; }

/* Section Inférieure : Dernières Opérations & Tableau */
[data-theme="dark"] .dash-card-activities {
  background: var(--surface) !important;
  border-color: var(--border) !important;
}
[data-theme="dark"] .dash-search-input-wrap input {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-search-input-wrap input:focus {
  background: var(--surface) !important;
  border-color: var(--primary) !important;
  color: var(--txt) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.2) !important;
}
[data-theme="dark"] .dash-filter-select {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-filter-select option {
  background: var(--surface) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-activities-table-wrap {
  border-color: var(--border) !important;
}
[data-theme="dark"] .dash-modern-table th {
  background: var(--surface-alt) !important;
  border-bottom-color: var(--border) !important;
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .dash-modern-table td {
  background: transparent !important;
  border-bottom-color: var(--border-light) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .dash-modern-table tr:hover td {
  background: var(--surface-hover) !important;
}

/* Badges du tableau */
[data-theme="dark"] .dash-table-badge.badge-tag-blue    { background: rgba(37, 99, 235, 0.18) !important; color: #60a5fa !important; }
[data-theme="dark"] .dash-table-badge.badge-tag-amber   { background: rgba(245, 158, 11, 0.18) !important; color: #fbbf24 !important; }
[data-theme="dark"] .dash-table-badge.badge-tag-red     { background: rgba(239, 68, 68, 0.18) !important; color: #f87171 !important; }
[data-theme="dark"] .dash-table-badge.badge-tag-green   { background: rgba(16, 185, 129, 0.18) !important; color: #34d399 !important; }
[data-theme="dark"] .dash-table-badge.badge-tag-neutral { background: var(--surface-alt) !important; color: var(--txt-2) !important; border: 1px solid var(--border) !important; }

/* Actions du tableau */
[data-theme="dark"] .table-action-link {
  background: var(--surface-alt) !important;
  color: var(--txt-2) !important;
  border: 1px solid var(--border) !important;
}
[data-theme="dark"] .table-action-link:hover {
  background: var(--primary) !important;
  color: #ffffff !important;
  border-color: var(--primary) !important;
}

/* Bandeau Top Clients */
[data-theme="dark"] .dash-top-clients-strip {
  border-top-color: var(--border) !important;
}
[data-theme="dark"] .strip-label {
  color: var(--txt-muted) !important;
}
[data-theme="dark"] .strip-client-pill {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt) !important;
}
[data-theme="dark"] .strip-client-pill:hover {
  background: var(--surface-hover) !important;
  border-color: var(--primary) !important;
}
[data-theme="dark"] .strip-client-pill strong {
  color: #60a5fa !important;
}

/* ════════════════════════════════════════════════════════════════════════
   COPILOTE DAF VIRTUEL IA · COCKPIT RADAR ANIMÉ (DARK MODE)
   ════════════════════════════════════════════════════════════════════════ */
[data-theme="dark"] .cfo-cockpit {
  background: linear-gradient(135deg, var(--surface) 0%, #111827 100%) !important;
  border-color: var(--border) !important;
  box-shadow: 0 10px 30px -6px rgba(0, 0, 0, 0.45) !important;
}

[data-theme="dark"] .cfo-main-title {
  color: var(--txt) !important;
}

[data-theme="dark"] .cfo-sub-tagline {
  color: var(--txt-muted) !important;
}

[data-theme="dark"] .cfo-shield-pill {
  background: rgba(16, 185, 129, 0.14) !important;
  color: #34d399 !important;
  border-color: rgba(16, 185, 129, 0.35) !important;
}

[data-theme="dark"] .cfo-flash-pill {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}

[data-theme="dark"] .cfo-flash-pill.pill-emerald > i { background: rgba(16, 185, 129, 0.16) !important; color: #34d399 !important; }
[data-theme="dark"] .cfo-flash-pill.pill-amber > i   { background: rgba(245, 158, 11, 0.16) !important; color: #fbbf24 !important; }
[data-theme="dark"] .cfo-flash-pill.pill-blue > i    { background: rgba(59, 130, 246, 0.16) !important; color: #60a5fa !important; }

[data-theme="dark"] .cfo-flash-pill .fp-lbl {
  color: var(--txt-muted) !important;
}

[data-theme="dark"] .cfo-flash-pill .fp-val {
  color: var(--txt) !important;
}

[data-theme="dark"] .cfo-flash-pill .fp-val small {
  color: var(--txt-muted) !important;
}

[data-theme="dark"] .cfo-studio-btn {
  background: rgba(79, 70, 229, 0.18) !important;
  color: #a5b4fc !important;
  border-color: rgba(99, 102, 241, 0.38) !important;
}

[data-theme="dark"] .cfo-studio-btn:hover {
  background: linear-gradient(135deg, #2563eb 0%, #4f46e5 100%) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}

[data-theme="dark"] .cfo-collapse-btn {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  color: var(--txt-2) !important;
}

[data-theme="dark"] .cfo-collapse-btn:hover {
  background: var(--surface-hover) !important;
  color: var(--txt) !important;
}

[data-theme="dark"] .cfo-cockpit-body {
  border-top-color: var(--border) !important;
}

[data-theme="dark"] .cfo-gauge-pod {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
}

[data-theme="dark"] .cfo-ring-track {
  stroke: rgba(148, 163, 184, 0.15) !important;
}

[data-theme="dark"] .cfo-ring-score {
  color: var(--txt) !important;
}

[data-theme="dark"] .cfo-ring-max,
[data-theme="dark"] .cfo-gauge-caption {
  color: var(--txt-muted) !important;
}

[data-theme="dark"] .cfo-health-status-pill.status-good {
  background: rgba(16, 185, 129, 0.16) !important;
  color: #34d399 !important;
  border-color: rgba(16, 185, 129, 0.35) !important;
}
[data-theme="dark"] .cfo-health-status-pill.status-warn {
  background: rgba(245, 158, 11, 0.16) !important;
  color: #fbbf24 !important;
  border-color: rgba(245, 158, 11, 0.35) !important;
}
[data-theme="dark"] .cfo-health-status-pill.status-crit {
  background: rgba(239, 68, 68, 0.16) !important;
  color: #f87171 !important;
  border-color: rgba(239, 68, 68, 0.35) !important;
}

[data-theme="dark"] .cfo-smart-card {
  background: var(--surface-alt) !important;
  border-color: var(--border) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
}

[data-theme="dark"] .cfo-smart-card:hover {
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.42) !important;
}

[data-theme="dark"] .cfo-smart-card.critical:hover { border-color: rgba(239, 68, 68, 0.55) !important; }
[data-theme="dark"] .cfo-smart-card.warning:hover  { border-color: rgba(245, 158, 11, 0.55) !important; }
[data-theme="dark"] .cfo-smart-card.info:hover     { border-color: rgba(59, 130, 246, 0.55) !important; }
[data-theme="dark"] .cfo-smart-card.success:hover  { border-color: rgba(16, 185, 129, 0.55) !important; }

[data-theme="dark"] .cfo-sc-cat {
  color: var(--txt-muted) !important;
}

[data-theme="dark"] .cfo-sc-icon-box.critical { background: rgba(239, 68, 68, 0.16) !important; color: #f87171 !important; }
[data-theme="dark"] .cfo-sc-icon-box.warning  { background: rgba(245, 158, 11, 0.16) !important; color: #fbbf24 !important; }
[data-theme="dark"] .cfo-sc-icon-box.info     { background: rgba(59, 130, 246, 0.16) !important; color: #60a5fa !important; }
[data-theme="dark"] .cfo-sc-icon-box.success  { background: rgba(16, 185, 129, 0.16) !important; color: #34d399 !important; }

[data-theme="dark"] .cfo-sc-badge.critical { background: rgba(239, 68, 68, 0.16) !important; color: #f87171 !important; border-color: rgba(239, 68, 68, 0.35) !important; }
[data-theme="dark"] .cfo-sc-badge.warning  { background: rgba(245, 158, 11, 0.16) !important; color: #fbbf24 !important; border-color: rgba(245, 158, 11, 0.35) !important; }
[data-theme="dark"] .cfo-sc-badge.info     { background: rgba(59, 130, 246, 0.16) !important; color: #60a5fa !important; border-color: rgba(59, 130, 246, 0.35) !important; }
[data-theme="dark"] .cfo-sc-badge.success  { background: rgba(16, 185, 129, 0.16) !important; color: #34d399 !important; border-color: rgba(16, 185, 129, 0.35) !important; }

[data-theme="dark"] .cfo-sc-subject {
  color: var(--txt-2) !important;
}

[data-theme="dark"] .cfo-sc-big-val.critical { color: #f87171 !important; }
[data-theme="dark"] .cfo-sc-big-val.warning  { color: #fbbf24 !important; }
[data-theme="dark"] .cfo-sc-big-val.info     { color: #60a5fa !important; }
[data-theme="dark"] .cfo-sc-big-val.success  { color: #34d399 !important; }

[data-theme="dark"] .cfo-sc-sub-pill {
  background: rgba(148, 163, 184, 0.12) !important;
  color: var(--txt-2) !important;
}

[data-theme="dark"] .cfo-sc-bar-track {
  background: rgba(148, 163, 184, 0.14) !important;
}

[data-theme="dark"] .cfo-sc-drawer-text {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--txt-2) !important;
}

[data-theme="dark"] .cfo-sc-footer {
  border-top-color: var(--border) !important;
}

[data-theme="dark"] .cfo-sc-hint {
  color: var(--txt-muted) !important;
}

[data-theme="dark"] .cfo-sc-action-btn.critical { background: rgba(239, 68, 68, 0.16) !important; color: #f87171 !important; }
[data-theme="dark"] .cfo-sc-action-btn.warning  { background: rgba(245, 158, 11, 0.16) !important; color: #fbbf24 !important; }
[data-theme="dark"] .cfo-sc-action-btn.info     { background: rgba(59, 130, 246, 0.16) !important; color: #60a5fa !important; }
[data-theme="dark"] .cfo-sc-action-btn.success  { background: rgba(16, 185, 129, 0.16) !important; color: #34d399 !important; }

[data-theme="dark"] .cfo-sc-action-btn.critical:hover { background: #dc2626 !important; color: #ffffff !important; }
[data-theme="dark"] .cfo-sc-action-btn.warning:hover  { background: #d97706 !important; color: #ffffff !important; }
[data-theme="dark"] .cfo-sc-action-btn.info:hover     { background: #2563eb !important; color: #ffffff !important; }
[data-theme="dark"] .cfo-sc-action-btn.success:hover  { background: #059669 !important; color: #ffffff !important; }

/* ── Comptabilité Générale & Relevés de Comptes (Dark Mode) ── */
[data-theme="dark"] .party-info-card,
[data-theme="dark"] .export-card,
[data-theme="dark"] .ledger-account-card {
  background: var(--surface, #1e293b) !important;
  border-color: var(--border, #334155) !important;
}
[data-theme="dark"] .ledger-account-header {
  background: rgba(15, 23, 42, 0.4) !important;
  border-color: var(--border, #334155) !important;
}
[data-theme="dark"] .ledger-account-header:hover {
  background: rgba(255, 255, 255, 0.03) !important;
}
[data-theme="dark"] .ledger-acc-num {
  background: var(--surface, #1e293b) !important;
  border-color: var(--border, #334155) !important;
  color: #60a5fa !important;
}
[data-theme="dark"] .ledger-acc-lib,
[data-theme="dark"] .party-name {
  color: #f8fafc !important;
}
[data-theme="dark"] .party-legal-pill {
  background: rgba(15, 23, 42, 0.7) !important;
  border-color: var(--border, #334155) !important;
  color: var(--txt-2, #cbd5e1) !important;
}

/* ── Facturation Électronique Maroc (Dark Mode) ─────────────── */
[data-theme="dark"] .dgi-company-audit-card {
  background: var(--surface, #1e293b) !important;
  border-color: var(--border, #334155) !important;
}

[data-theme="dark"] .dgi-audit-icon {
  background: rgba(59, 130, 246, 0.15) !important;
  color: #60a5fa !important;
}

[data-theme="dark"] .dgi-audit-title {
  color: #f8fafc !important;
}

[data-theme="dark"] .dgi-legal-item {
  background: rgba(15, 23, 42, 0.6) !important;
  border-color: var(--border, #334155) !important;
}

[data-theme="dark"] .dgi-legal-val {
  color: #f1f5f9 !important;
}

[data-theme="dark"] .dgi-seal-qr-pane {
  background: rgba(15, 23, 42, 0.6) !important;
  border-color: var(--border, #334155) !important;
}

[data-theme="dark"] .dgi-qr-frame {
  background: #ffffff !important;
  border-color: #475569 !important;
}

[data-theme="dark"] .dgi-visa-box {
  background: rgba(30, 58, 138, 0.3) !important;
  border-color: rgba(59, 130, 246, 0.4) !important;
  color: #93c5fd !important;
}

[data-theme="dark"] .dgi-hash-box {
  background: rgba(15, 23, 42, 0.8) !important;
  border-color: var(--border, #334155) !important;
  color: #e2e8f0 !important;
}

[data-theme="dark"] .dgi-cert-box {
  background: rgba(6, 78, 59, 0.25) !important;
  border-color: rgba(16, 185, 129, 0.4) !important;
}

[data-theme="dark"] .dgi-cert-title {
  color: #6ee7b7 !important;
}

[data-theme="dark"] .dgi-cert-status {
  color: #a7f3d0 !important;
}

[data-theme="dark"] .dgi-audit-score-banner {
  background: rgba(120, 53, 15, 0.25) !important;
  border-color: rgba(245, 158, 11, 0.4) !important;
}

[data-theme="dark"] .dgi-score-desc strong {
  color: #fde68a !important;
}

[data-theme="dark"] .dgi-score-desc p {
  color: #fcd34d !important;
}

[data-theme="dark"] .dgi-audit-item.pass {
  background: rgba(6, 78, 59, 0.25) !important;
  border-color: rgba(16, 185, 129, 0.35) !important;
  color: #6ee7b7 !important;
}

[data-theme="dark"] .dgi-audit-item.fail {
  background: rgba(127, 29, 29, 0.25) !important;
  border-color: rgba(239, 68, 68, 0.35) !important;
  color: #fca5a5 !important;
}

[data-theme="dark"] .ui-filter-search .ui-filter-control {
  background: var(--surface, #1e293b) !important;
  border-color: var(--border, #334155) !important;
  color: var(--txt, #f8fafc) !important;
}

[data-theme="dark"] .ui-filter-search .ui-filter-control::placeholder {
  color: var(--txt-muted, #64748b) !important;
}

[data-theme="dark"] .ui-filter-search > i {
  color: var(--txt-muted, #64748b) !important;
}

[data-theme="dark"] .ui-filter-search:focus-within > i {
  color: #60a5fa !important;
}

/* Approbations & Feuilles de temps Dark Mode */
[data-theme="dark"] .appr-tab-btn {
  color: var(--txt-muted, #94a3b8) !important;
}

[data-theme="dark"] .appr-tab-btn:hover {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.05) !important;
}

[data-theme="dark"] .appr-tab-btn.active {
  color: #60a5fa !important;
  border-bottom-color: #60a5fa !important;
}

[data-theme="dark"] .appr-tab-btn span {
  background: #1e293b !important;
  color: #94a3b8 !important;
}

[data-theme="dark"] .appr-tab-btn.active span {
  background: rgba(96, 165, 250, 0.15) !important;
  color: #93c5fd !important;
}

[data-theme="dark"] .ts-week-toolbar {
  background: var(--surface, #1e293b) !important;
  border-color: var(--border, #334155) !important;
}

[data-theme="dark"] .ts-week-label {
  color: var(--txt, #f8fafc) !important;
}

[data-theme="dark"] .ts-view-switch {
  background: #0f172a !important;
}

[data-theme="dark"] .ts-switch-btn {
  color: #94a3b8 !important;
}

[data-theme="dark"] .ts-switch-btn.active {
  background: #1e293b !important;
  color: #60a5fa !important;
}

[data-theme="dark"] .ts-grid-table th.th-total,
[data-theme="dark"] .ts-grid-table th.th-cost,
[data-theme="dark"] .ts-grid-table tfoot tr {
  background: #0f172a !important;
  border-color: #334155 !important;
}

[data-theme="dark"] .ts-grid-table td.cell-day.has-hours {
  background: rgba(96, 165, 250, 0.1) !important;
  color: #93c5fd !important;
}

[data-theme="dark"] .ts-grid-table th.th-day.is-today {
  background: rgba(96, 165, 250, 0.15) !important;
  color: #93c5fd !important;
}






