/* style_a11y.css — couche d'accessibilité et de lisibilité (chargée EN DERNIER).
   Ne modifie pas la mise en page : focus visible, contraste, cibles tactiles, mouvement réduit. */

/* 1. Focus clavier visible partout (sans gêner la souris) */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible, [role="button"]:focus-visible {
    outline: 2px solid #ff4d44 !important;
    outline-offset: 2px !important;
    border-radius: 4px;
}
input:focus-visible, select:focus-visible, textarea:focus-visible { box-shadow: 0 0 0 4px rgba(255,77,68,.25) !important; }

/* 2. Lien d'évitement "Aller au contenu" (visible seulement au focus clavier) */
.gg-skip-link {
    position: fixed; top: -60px; left: 12px; z-index: 100000;
    background: #e10600; color: #fff; padding: 10px 16px; border-radius: 8px;
    font: 700 .85rem/1 'Inter', system-ui, sans-serif; text-decoration: none; transition: top .15s;
}
.gg-skip-link:focus { top: 12px; }
main:focus { outline: none; }

/* 3. Croix de la popup : <span> devenu <button> → on neutralise le style natif */
button.popup-close { background: none; border: 0; padding: 4px 8px; margin: -4px -8px; min-width: 44px; min-height: 44px; }

/* 4. Contraste (thème sombre uniquement : le thème clair a ses propres règles) */
html:not([data-theme='light']) .register-kicker { color: #ff5a50; }
html:not([data-theme='light']) input::placeholder,
html:not([data-theme='light']) textarea::placeholder { color: rgba(255,255,255,.58); opacity: 1; }

/* 5. Cibles tactiles confortables sur mobile (44 px) pour les boutons à icône */
@media (pointer: coarse) {
    #gg-theme-btn, .sidebar-toggle, .popup-btn, .modal-submit { min-width: 44px; min-height: 44px; }
}

/* 6. Respect du réglage système "réduire les animations" (toutes pages) */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important; animation-iteration-count: 1 !important;
        transition-duration: .01ms !important; scroll-behavior: auto !important;
    }
}
