/* ============================================================
 * firefox-lite.css — Allègement de rendu CIBLÉ FIREFOX (2026-07-28)
 * ============================================================
 * POURQUOI :
 *   Sur Firefox, `backdrop-filter` (l'effet « verre ») est rastérisé en
 *   quasi-logiciel ET re-calculé à CHAQUE frappe/scroll. Résultat mesuré
 *   (profils Firefox) : `Paint` = 1er poste de temps, ~38 ms/frame (le
 *   double du budget 16 ms) → scroll saccadé, et surtout SAISIE très
 *   poussive (chaque touche re-floute tout l'arrière-plan sous le verre).
 *   Chrome, lui, accélère tout ça en GPU (Paint ~337 ms sur 6,8 s) → aucun
 *   souci. Donc on NE touche PAS Chrome : ce fichier ne s'active que sous
 *   `html.is-firefox` (classe posée par la détection en tête d'index.html).
 *
 * STRATÉGIE (couche ADDITIVE, chargée en dernier → gagne la cascade ;
 *   n'édite aucun fichier existant, évite le piège des versions ?v=) :
 *   1. Couper le backdrop-filter partout           → fin de la latence de saisie.
 *   2. Rendre opaques les panneaux « verre »        → ils comptaient sur le flou
 *      (fond translucide ~rgba(255,255,255,.62)) pour être lisibles ; sans le
 *      flou ils deviennent transparents. On leur redonne la surface PLEINE du
 *      thème (`--vz-secondary-bg`, opaque en clair ET en sombre).
 *   3. Alléger les grosses ombres floues            → repeintes à chaque frame ;
 *      on garde une ombre légère. On NE touche PAS aux box-shadow de focus
 *      (accessibilité) : on cible seulement les conteneurs, pas `*`.
 *
 * ⚠️ Override direct sur les CLASSES (pas via `--vz-card-bg`) : la variable
 *   est verrouillée plus haut dans la cascade (redéfinir la variable n'a aucun
 *   effet — vérifié par sonde). Le fond direct sur la classe, lui, gagne.
 * ============================================================ */

/* 1. Le coupable n°1 (latence de saisie + coût de scroll) : le verre. */
html.is-firefox *,
html.is-firefox *::before,
html.is-firefox *::after {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* 2. Panneaux « verre » → fond plein adapté au thème (sinon transparents,
 *    car leur fond translucide comptait sur le flou pour être opaque). */
html.is-firefox .card,
html.is-firefox .sidebar-mega-panel,
html.is-firefox .sidebar-mega-body,
html.is-firefox .dropdown-menu,
html.is-firefox .offcanvas,
html.is-firefox .modal-content,
html.is-firefox .popover,
html.is-firefox #aide-agent-panel,
html.is-firefox .ors-ac-wrap {
  background: var(--vz-secondary-bg, #ffffff) !important;
}

/* 2b. Chrome FLOTTANT qui recouvre le contenu (sidebar, topbar, barre de
 *     favoris, widget de chat) : translucide (rgba .55) + verre → sans le flou
 *     on voit le contenu à travers (bug : sidebar ouverte au burger = texte du
 *     contenu qui transparaît). Le fond plein est indispensable ici. */
html.is-firefox .app-menu,
html.is-firefox .navbar-brand-box,
html.is-firefox #page-topbar,
html.is-firefox #upme-fav-bar,
html.is-firefox .upmecw-panel,
html.is-firefox .upmecw-prev {
  background: var(--vz-secondary-bg, #ffffff) !important;
}

/* 3. Grosses ombres floues = 2e poste de peinture au scroll (mesuré : 545
 *    ombres lourdes, dominante = flou 22px sur ~250 éléments, une à 38px sur 46).
 *    Ces grands rayons de flou sont repeints à CHAQUE frame de scroll et Firefox
 *    les rastérise lentement. On les neutralise PARTOUT (rendu + plat, validé),
 *    puis (a) on re-pose une ombre LÉGÈRE sur les conteneurs pour garder du
 *    relief, (b) on RESTAURE un anneau de focus (accessibilité clavier — sinon
 *    le nuke emporterait aussi les rings de focus Bootstrap qui sont des
 *    box-shadow). Chrome garde toutes ses ombres (classe is-firefox absente). */
html.is-firefox * {
  box-shadow: none !important;
}
/* (a) relief léger sur les conteneurs (spécificité > le nuke universel) */
html.is-firefox .card,
html.is-firefox .settings-card,
html.is-firefox .modal-content,
html.is-firefox .dropdown-menu,
html.is-firefox .offcanvas,
html.is-firefox .sidebar-mega-panel,
html.is-firefox #aide-agent-panel {
  box-shadow: 0 1px 3px rgba(0, 0, 0, .14) !important;
}
/* (b) anneau de focus clavier restauré (posé en dernier → gagne même sur un
 *     conteneur focalisé) */
html.is-firefox :focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(var(--vz-primary-rgb, 64, 81, 137), .5) !important;
}
