/**
 * Harmonisation des couleurs de texte — clair / sombre / informaticien.
 * Corrige texte noir sur fond noir, clair sur clair, Bootstrap legacy, etc.
 */

[data-theme="dark"] {
  --agenla-text-strong: #f1f5f9;
  --agenla-text-on-surface: #e2e8f0;
  --agenla-text-on-accent: #ffffff;
  --agenla-link: #93c5fd;
  --agenla-link-hover: #bfdbfe;
}

[data-theme="light"] {
  --agenla-text-strong: #1e293b;
  --agenla-text-on-surface: #334155;
  --agenla-text-on-accent: #ffffff;
  --agenla-link: var(--agenla-primary);
  --agenla-link-hover: var(--agenla-primary-dark);
}

[data-theme="informaticien"] {
  --agenla-text-strong: #f1f5f9;
  --agenla-text-on-surface: #e0e6ed;
  --agenla-text-on-accent: #0a0e27;
  --agenla-link: #00d4ff;
  --agenla-link-hover: #67e8f9;
}

[data-theme="dark"] body,
[data-theme="informaticien"] body {
  color: var(--agenla-text);
}

[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6,
[data-theme="informaticien"] h1,
[data-theme="informaticien"] h2,
[data-theme="informaticien"] h3,
[data-theme="informaticien"] h4,
[data-theme="informaticien"] h5,
[data-theme="informaticien"] h6 {
  color: var(--agenla-text-strong);
}

[data-theme="dark"] p,
[data-theme="dark"] li,
[data-theme="dark"] dd,
[data-theme="dark"] dt,
[data-theme="dark"] label,
[data-theme="dark"] .form-label,
[data-theme="informaticien"] p,
[data-theme="informaticien"] li,
[data-theme="informaticien"] label,
[data-theme="informaticien"] .form-label {
  color: var(--agenla-text-on-surface);
}

[data-theme="dark"] a:not(.btn):not(.ad-btn):not(.ad-nav-link):not(.nav-link),
[data-theme="informaticien"] a:not(.btn):not(.ad-btn):not(.ad-nav-link):not(.nav-link) {
  color: var(--agenla-link);
}

[data-theme="dark"] a:not(.btn):not(.ad-btn):hover,
[data-theme="informaticien"] a:not(.btn):not(.ad-btn):hover {
  color: var(--agenla-link-hover);
}

[data-theme="dark"] .text-dark,
[data-theme="informaticien"] .text-dark {
  color: var(--agenla-text-strong) !important;
}

[data-theme="dark"] .text-muted,
[data-theme="dark"] .text-secondary,
[data-theme="dark"] .text-body-secondary,
[data-theme="informaticien"] .text-muted,
[data-theme="informaticien"] .text-secondary {
  color: var(--agenla-text-muted) !important;
}

[data-theme="dark"] .text-light,
[data-theme="informaticien"] .text-light {
  color: var(--agenla-text-strong) !important;
}

[data-theme="dark"] .bg-white,
[data-theme="dark"] .bg-light,
[data-theme="informaticien"] .bg-white,
[data-theme="informaticien"] .bg-light {
  background-color: var(--agenla-surface) !important;
  color: var(--agenla-text);
}

[data-theme="dark"] .card,
[data-theme="dark"] .modal-content,
[data-theme="dark"] .dropdown-menu,
[data-theme="informaticien"] .card,
[data-theme="informaticien"] .modal-content {
  background-color: var(--agenla-surface);
  border-color: var(--agenla-border);
  color: var(--agenla-text);
}

[data-theme="dark"] .card-header,
[data-theme="dark"] .card-footer,
[data-theme="informaticien"] .card-header,
[data-theme="informaticien"] .card-footer {
  background-color: var(--agenla-surface-2);
  border-color: var(--agenla-border);
  color: var(--agenla-text);
}

[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select,
[data-theme="dark"] textarea.form-control,
[data-theme="informaticien"] .form-control,
[data-theme="informaticien"] .form-select {
  background-color: var(--agenla-surface-2);
  border-color: var(--agenla-border);
  color: var(--agenla-text);
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus,
[data-theme="informaticien"] .form-control:focus,
[data-theme="informaticien"] .form-select:focus {
  background-color: var(--agenla-surface);
  color: var(--agenla-text);
  border-color: var(--agenla-primary);
}

[data-theme="dark"] .form-control::placeholder,
[data-theme="informaticien"] .form-control::placeholder {
  color: var(--agenla-text-muted);
  opacity: 1;
}

[data-theme="dark"] .form-control:disabled,
[data-theme="dark"] .form-select:disabled,
[data-theme="informaticien"] .form-control:disabled,
[data-theme="informaticien"] .form-select:disabled {
  background-color: var(--agenla-surface);
  color: var(--agenla-text-muted);
}

[data-theme="dark"] .input-group-text,
[data-theme="informaticien"] .input-group-text {
  background-color: var(--agenla-surface-2);
  border-color: var(--agenla-border);
  color: var(--agenla-text-muted);
}

[data-theme="dark"] .table,
[data-theme="informaticien"] .table {
  --bs-table-color: var(--agenla-text);
  --bs-table-bg: transparent;
  --bs-table-border-color: var(--agenla-border);
  --bs-table-striped-bg: rgba(255, 255, 255, 0.04);
  --bs-table-hover-bg: rgba(255, 255, 255, 0.06);
  color: var(--agenla-text);
}

[data-theme="dark"] .list-group-item,
[data-theme="informaticien"] .list-group-item {
  background-color: var(--agenla-surface);
  border-color: var(--agenla-border);
  color: var(--agenla-text);
}

[data-theme="dark"] .alert-info,
[data-theme="informaticien"] .alert-info {
  background-color: rgba(59, 130, 246, 0.15);
  border-color: rgba(59, 130, 246, 0.35);
  color: var(--agenla-text-strong);
}

[data-theme="dark"] .alert-warning,
[data-theme="informaticien"] .alert-warning {
  background-color: rgba(245, 158, 11, 0.15);
  border-color: rgba(245, 158, 11, 0.35);
  color: #fde68a;
}

[data-theme="dark"] .alert-success,
[data-theme="informaticien"] .alert-success {
  background-color: rgba(34, 197, 94, 0.15);
  border-color: rgba(34, 197, 94, 0.35);
  color: #bbf7d0;
}

[data-theme="dark"] .alert-danger,
[data-theme="informaticien"] .alert-danger {
  background-color: rgba(239, 68, 68, 0.15);
  border-color: rgba(239, 68, 68, 0.35);
  color: #fecaca;
}

[data-theme="dark"] .btn-close,
[data-theme="informaticien"] .btn-close {
  filter: invert(1) grayscale(100%) brightness(200%);
}

[data-theme="dark"] .ts-control,
[data-theme="informaticien"] .ts-control {
  background-color: var(--agenla-surface-2);
  border-color: var(--agenla-border);
  color: var(--agenla-text);
}

[data-theme="dark"] .ts-dropdown,
[data-theme="informaticien"] .ts-dropdown {
  background: var(--agenla-surface);
  border-color: var(--agenla-border);
  color: var(--agenla-text);
}

[data-theme="dark"] .ts-dropdown .option,
[data-theme="informaticien"] .ts-dropdown .option {
  color: var(--agenla-text);
}
