/* ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════
   ANIMATIONS RÉDUITES (10/10, panneau Apparence : « Animations : Normales | Réduites »).
   html[data-motion="reduites"] : posé avant le rendu par index.html (localStorage « iku.motion »), en direct par
   window.ikuMotion (js/app.js). Le JS qui anime (count-up, graphiques ApexCharts, fondus de vue) lit window.ikuMotionReduite(),
   vrai aussi sous prefers-reduced-motion : la préférence du système garde ses propres règles, inchangées.
   • Durées ramenées à presque rien (et non « none ») : les animations et transitions se TERMINENT encore, donc animationend et
     transitionend arrivent toujours, et l'état final (animation-fill-mode: forwards) est posé d'emblée.
   • Une seule itération : les boucles (halos, chatoiements, indicateurs de chargement) s'arrêtent sur place.
   • Les délais d'animation tombent (une cascade d'apparitions s'affiche d'un bloc) ; les délais de transition, eux, restent :
     ce sont des temps d'intention (bulle d'aide au survol), pas du mouvement.
   Chargée après les autres feuilles (index.html).
   ═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════ */
html[data-motion="reduites"] *,
html[data-motion="reduites"] *::before,
html[data-motion="reduites"] *::after {
    animation-duration: .001ms !important;
    animation-delay: 0s !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
}
html[data-motion="reduites"] { scroll-behavior: auto !important; }
/*  Transitions de vue (fondu du hub au changement de formule, etc.) : le JS les saute déjà ; filet de sécurité. */
html[data-motion="reduites"]::view-transition-group(*),
html[data-motion="reduites"]::view-transition-old(*),
html[data-motion="reduites"]::view-transition-new(*) { animation: none !important; }

/*  Vignette trésorerie de l'écran d'accueil : même état figé que sous prefers-reduced-motion (css/entry.css) ; la courbe SMIL est
    arrêtée par ikuTzhReduce (app.js), qui lit aussi ce réglage. */
html[data-motion="reduites"] .tzh-lab { animation: none !important; opacity: 0 }
html[data-motion="reduites"] .tzh-l3 { opacity: 1 }
html[data-motion="reduites"] .tzh-hyp .tzh-box { animation: none !important; background: var(--brand); border-color: var(--brand) }
html[data-motion="reduites"] .tzh-hyp .tzh-box i { animation: none !important; opacity: 1 }

/*  Écran de démarrage (index.html) : le logo, l'anneau et le reflet de la barre restent immobiles. */
html[data-motion="reduites"] #app .boot-logo-wrap::before,
html[data-motion="reduites"] #app .boot-ring,
html[data-motion="reduites"] #app .boot-fill::after { animation: none !important; }

/*  « Animations » du panneau Apparence : un champ de la section « Affichage » depuis le 13/10 (styles dans analyses.css). */
