/**
 * FP Accessibility — stili runtime frontend.
 * Scope tramite classi radice aggiunte dal JS (es. .fpa11y-focus-motion).
 */

/* Focus visibile da tastiera (WCAG 2.4.7) */
.fpa11y-focus-motion :focus-visible {
    outline: 3px solid #1a73e8 !important;
    outline-offset: 2px !important;
    border-radius: 2px;
}

/* Non mostrare l'outline per i click del mouse sui browser che supportano :focus-visible */
.fpa11y-focus-motion :focus:not(:focus-visible) {
    outline: none;
}

/* Skip-link reso visibile al focus, anche se il tema lo nasconde fuori schermo */
.fpa11y-focus-motion a.nectar-skip-to-content:focus,
.fpa11y-focus-motion a.skip-link:focus,
.fpa11y-focus-motion a[href="#content"]:focus {
    position: fixed !important;
    top: 8px !important;
    left: 8px !important;
    z-index: 100000 !important;
    width: auto !important;
    height: auto !important;
    padding: 10px 16px !important;
    clip: auto !important;
    clip-path: none !important;
    background: #1a73e8 !important;
    color: #fff !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    text-decoration: none !important;
}

/* Riduzione delle animazioni quando richiesto dall'utente (WCAG 2.3.3) */
@media (prefers-reduced-motion: reduce) {
    .fpa11y-focus-motion *,
    .fpa11y-focus-motion *::before,
    .fpa11y-focus-motion *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}
