/* Feuille de RÉCONCILIATION de marque — chargée EN DERNIER (RG-UI-006).
   Dispensée du rappel de première ligne (SPEC.md §2, point 5).

   RG-UI-007 — elle remappe les variables de Bootstrap sur la palette de marque, corrige
   NOMMÉMENT les fuites de la bibliothèque sur les classes partagées, et choisit des tons
   OPAQUES partout où un ton translucide tomberait sous le seuil de contraste.

   C'est la ligne de défense contre les collisions de noms de classes : la dernière
   déclaration l'emporte, et la marque doit l'emporter. */

/* ---------------------------------------------------------------- remappage Bootstrap */

:root {
  --bs-primary: var(--mib-prune);
  --bs-primary-rgb: 122, 17, 82;
  --bs-link-color: var(--mib-prune);
  --bs-link-hover-color: var(--mib-prune-sombre);
  --bs-body-color: var(--texte);
  --bs-body-bg: var(--fond-doux);
  --bs-border-color: var(--bordure);
  --bs-border-radius: var(--rayon);
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* ---------------------------------------------------------------- fuites nommées

   Bootstrap déclare `.badge`, `.table` et `.form-control` ; MIB-ERP porte ses propres
   `.badge` et `.grille`. Sans les trois blocs ci-dessous, un badge de statut hériterait du
   fond sombre de Bootstrap et son libellé deviendrait illisible. */

.badge {
  --bs-badge-color: inherit;
  --bs-badge-padding-x: 0.5rem;
  --bs-badge-padding-y: 0.1rem;
  --bs-badge-font-size: 0.85rem;
  --bs-badge-font-weight: 600;
  --bs-badge-border-radius: 1em;
  color: inherit;
  background-color: inherit;
}

/* Bootstrap remet `--bs-table-bg` à blanc sur chaque cellule : la couleur de ligne d'un refus
   au journal disparaîtrait. */
.grille { --bs-table-bg: transparent; }
.grille tbody tr { background-color: inherit; }

/* La bibliothèque pose `border-radius: 0` sur les boutons imbriqués dans un groupe ; nos
   actions en ligne ne sont pas un groupe. */
.en-ligne .bouton { border-radius: var(--rayon); }

/* ---------------------------------------------------------------- tons opaques

   Bootstrap emploie des fonds translucides (`rgba(…, .1)`) pour ses états. Sur le fond doux
   de l'application, le contraste tombe sous 4,5:1. Nos sept tons sémantiques sont donc
   OPAQUES, et ce bloc empêche la bibliothèque de les reprendre. */

.flash, .badge, .tuile-warn, .carte-secret, .carte-procedure {
  --bs-bg-opacity: 1;
  --bs-text-opacity: 1;
}

/* ---------------------------------------------------------------- impression */

@media print {
  .barre-haute, .menu, .pagination, .filtres, .entete-actions, .saut-contenu { display: none; }
  .page { display: block; }
  .conteneur { max-width: none; padding: 0; }
  .carte, .grille { border-color: #000; }
  body { background: #fff; }
}

/* ---------------------------------------------------------------- mouvement réduit */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
