/**
 * UNSA Outils — mode accessibilité (classe sur html : .unsa-wcag-enabled).
 * WCAG 2.1 / 2.2 AA : cibles tactiles, lisibilité, focus, contrastes, mouvement réduit.
 *
 * Convention refactor : migrer progressivement les blocs « .unsa-wcag-enabled » inline
 * des fichiers outil-*.php vers ce fichier en préfixant les sélecteurs par html.unsa-wcag-enabled.
 */
:root {
    --unsa-a11y-font: 1rem;
    --unsa-a11y-control-min: 44px;
    --unsa-a11y-focus: 0 0 0 3px rgba(234, 81, 153, 0.45);
    /* Mobile outils (aligné coque [unsa_outils] @ 782px) — référence pour doc / futurs calc() */
    --unsa-tools-mobile-max: 782px;
    --unsa-tools-tap-min: 44px;
}

/**
 * Tableaux larges : scroll horizontal local (évite de casser la page sur mobile).
 * Usage : <div class="unsa-outils-table-scroll">…<table>…</table></div>
 */
.unsa-outils-table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    max-width: 100%;
}
.unsa-outils-table-scroll table {
    min-width: 0;
}

@media (prefers-reduced-motion: reduce) {
    .unsa-outils-page-layout,
    .unsa-outils-page-layout *,
    .unsa-outil-modal,
    .unsa-outil-modal *,
    .unsa-convertisseur-front,
    .unsa-convertisseur-front * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-convertisseur-title,
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-tool-block h3 {
    color: #1f2937;
    font-size: 1.25rem;
}
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-convertisseur-intro,
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-tool-meta {
    color: #374151;
    font-size: 1rem;
}
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-tool-hint {
    color: #4b5563;
    font-size: 0.9375rem;
}
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-tool-block th,
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-tool-block td {
    color: #1f2937;
    font-size: 1rem;
}
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-tool-block input[type="number"] {
    font-size: 1rem;
    min-height: var(--unsa-a11y-control-min);
    padding: 10px 12px;
}
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-convertisseur-print-btn {
    min-height: var(--unsa-a11y-control-min);
    padding: 12px 20px;
    font-size: 1rem;
}
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-convertisseur-print-btn:focus {
    outline: none;
    box-shadow: var(--unsa-a11y-focus);
}
html.unsa-wcag-enabled .unsa-convertisseur-front .unsa-tool-block input:focus {
    outline: none;
    box-shadow: 0 0 0 2px rgba(234, 81, 153, 0.35);
    border-color: #ea5199;
}

/* Région live convertisseur : hors écran mais lue par les AT */
.unsa-convertisseur-live {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* —— Outils sans bloc WCAG inline (même gabarit que CDI / mensualisation) —— */
html.unsa-wcag-enabled .unsa-mam label,
html.unsa-wcag-enabled .unsa-rs label,
html.unsa-wcag-enabled .unsa-ir80 label {
    font-size: 1rem;
    color: #1a1a1a;
}
html.unsa-wcag-enabled .unsa-mam input[type="text"],
html.unsa-wcag-enabled .unsa-mam input[type="number"],
html.unsa-wcag-enabled .unsa-mam input[type="date"],
html.unsa-wcag-enabled .unsa-mam select,
html.unsa-wcag-enabled .unsa-rs input[type="text"],
html.unsa-wcag-enabled .unsa-rs input[type="number"],
html.unsa-wcag-enabled .unsa-rs select,
html.unsa-wcag-enabled .unsa-ir80 input[type="text"],
html.unsa-wcag-enabled .unsa-ir80 input[type="number"],
html.unsa-wcag-enabled .unsa-ir80 input[type="date"] {
    font-size: 1rem;
    min-height: var(--unsa-a11y-control-min);
    padding: 10px 12px;
}
html.unsa-wcag-enabled .unsa-mam .unsa-mam-btn,
html.unsa-wcag-enabled .unsa-mam .unsa-mam-btn-nav,
html.unsa-wcag-enabled .unsa-mam .unsa-mam-btn-prev,
html.unsa-wcag-enabled .unsa-mam .unsa-mam-btn-next,
html.unsa-wcag-enabled .unsa-rs .unsa-rs-btn,
html.unsa-wcag-enabled .unsa-ir80 .unsa-ir80-btn,
html.unsa-wcag-enabled .unsa-ir80 button[type="button"] {
    min-height: var(--unsa-a11y-control-min);
    padding: 12px 20px;
    font-size: 1rem;
}
html.unsa-wcag-enabled .unsa-mam .unsa-mam-step {
    min-height: var(--unsa-a11y-control-min);
    padding: 10px 14px;
    font-size: 1rem;
}
html.unsa-wcag-enabled .unsa-mam .unsa-mam-btn:focus,
html.unsa-wcag-enabled .unsa-mam .unsa-mam-btn-nav:focus,
html.unsa-wcag-enabled .unsa-rs .unsa-rs-btn:focus,
html.unsa-wcag-enabled .unsa-ir80 .unsa-ir80-btn:focus,
html.unsa-wcag-enabled .unsa-ir80 button:focus {
    outline: none;
    box-shadow: var(--unsa-a11y-focus);
}

html.unsa-wcag-enabled .unsa-contacts-region-wrap .unsa-contacts-region-print-btn,
html.unsa-wcag-enabled .unsa-contacts-region-wrap .filter-input,
html.unsa-wcag-enabled .unsa-contacts-region-wrap .unsa-contacts-region-toggle-label {
    font-size: 1rem;
}
html.unsa-wcag-enabled .unsa-contacts-region-wrap .unsa-contacts-region-print-btn {
    min-height: var(--unsa-a11y-control-min);
    padding: 12px 20px;
}
html.unsa-wcag-enabled .unsa-contacts-region-wrap .filter-input {
    min-height: var(--unsa-a11y-control-min);
    padding: 10px 12px;
}
html.unsa-wcag-enabled .unsa-contacts-region-wrap .unsa-contacts-region-show-all {
    width: 22px;
    height: 22px;
}
html.unsa-wcag-enabled .unsa-contacts-region-wrap .filter-table {
    font-size: 1rem;
}

html.unsa-wcag-enabled .unsa-simulateur-cmg table,
html.unsa-wcag-enabled .unsa-outil-impots table {
    font-size: 1rem;
}
html.unsa-wcag-enabled .unsa-simulateur-cmg input[type="number"],
html.unsa-wcag-enabled .unsa-simulateur-cmg input[type="text"],
html.unsa-wcag-enabled .unsa-outil-impots input[type="number"],
html.unsa-wcag-enabled .unsa-outil-impots input[type="text"],
html.unsa-wcag-enabled .unsa-outil-impots select {
    font-size: 1rem;
    min-height: var(--unsa-a11y-control-min);
    padding: 10px 12px;
}
html.unsa-wcag-enabled .unsa-simulateur-cmg .unsa-cmg-print-btn,
html.unsa-wcag-enabled .unsa-outil-impots .unsa-outil-impots-print-btn {
    min-height: var(--unsa-a11y-control-min);
    padding: 12px 20px;
    font-size: 1rem;
}
html.unsa-wcag-enabled .unsa-simulateur-cmg .unsa-cmg-print-btn:focus,
html.unsa-wcag-enabled .unsa-outil-impots .unsa-outil-impots-print-btn:focus {
    outline: none;
    box-shadow: var(--unsa-a11y-focus);
}

/* Modale hub : focus visible renforcé (complète les styles inline catalogue) */
html.unsa-wcag-enabled .unsa-outil-modal.unsa-outil-modal-open .unsa-outil-modal-close,
html.unsa-wcag-enabled .unsa-outil-modal.unsa-outil-modal-open .unsa-outil-modal-print {
    min-width: var(--unsa-a11y-control-min);
    min-height: var(--unsa-a11y-control-min);
}
