/* Compléments propres à AFH Formulaires. */
.afhf-piege{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-conditional-hide{display:none!important}
div.wpforms-container-full .wpforms-form .wpforms-image-choices-item label{cursor:pointer}
div.wpforms-container-full .wpforms-form .wpforms-submit-spinner{margin-left:.5em;vertical-align:middle}

/* L'indicateur d'étapes en bulles : une seule ligne, reliée par un trait qui
   se colore à mesure qu'on avance (11/10/2026). */
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.afhf-bulles{display:flex!important;justify-content:space-between;align-items:flex-start;position:relative;margin:0 0 28px!important;padding:0!important;border:0!important;overflow:visible}
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.afhf-bulles::before,
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.afhf-bulles::after{content:"";position:absolute;top:15px;left:16px;height:3px;border-radius:2px;z-index:0}
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.afhf-bulles::before{right:16px;background:#dfe3e8}
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.afhf-bulles::after{width:calc((100% - 32px) * var(--afhf-avancement-n, 0));background:var(--afhf-couleur,#72b239);transition:width .3s ease}
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.afhf-bulles .wpforms-page-indicator-page{float:none!important;width:auto!important;margin:0!important;padding:0!important;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;flex:0 0 auto;text-align:center}
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.afhf-bulles .wpforms-page-indicator-page-number{width:32px!important;height:32px!important;line-height:32px!important;border-radius:50%!important;margin:0!important;padding:0!important;display:block;text-align:center;font-size:15px;font-weight:600;color:#fff;background-color:#c9ced6;box-shadow:0 0 0 4px #fff}
div.wpforms-container-full .wpforms-form .wpforms-page-indicator.afhf-bulles .wpforms-page-indicator-page-title{display:block;margin-top:6px;font-size:12px;line-height:1.3;max-width:90px}

/* Bulle d'information du revenu fiscal de référence (18/10/2026) : pastille
   « i » à côté de l'intitulé ; le texte s'ouvre au survol, au toucher (focus)
   ou au clavier ; le toucher ouvre et referme (afh-formulaires.js). */
div.wpforms-container-full .wpforms-form .afhf-info{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:6px;border-radius:50%;background:#0B3A6E;color:#fff;font:italic 700 12px/1 Georgia,serif;cursor:help;vertical-align:middle;outline:none}
div.wpforms-container-full .wpforms-form .afhf-info:focus-visible{box-shadow:0 0 0 3px rgba(11,58,110,.35)}
div.wpforms-container-full .wpforms-form .afhf-info .afhf-info-texte{display:none;position:absolute;z-index:50;left:-12px;top:calc(100% + 10px);width:320px;max-width:calc(100vw - 32px);padding:12px 14px;border-radius:10px;background:#0B3A6E;color:#fff;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;font-size:14px;line-height:1.5;font-weight:400;font-style:normal;text-align:left;white-space:normal;box-shadow:0 8px 24px rgba(0,0,0,.2);cursor:default}
div.wpforms-container-full .wpforms-form .afhf-info .afhf-info-texte::before{content:"";position:absolute;bottom:100%;left:16px;border:7px solid transparent;border-bottom-color:#0B3A6E}
@media (hover:hover){div.wpforms-container-full .wpforms-form .afhf-info:hover .afhf-info-texte{display:block}}
div.wpforms-container-full .wpforms-form .afhf-info:focus-visible .afhf-info-texte,
div.wpforms-container-full .wpforms-form .afhf-info.afhf-ouverte .afhf-info-texte{display:block}
@media (max-width:600px){div.wpforms-container-full .wpforms-form .afhf-info .afhf-info-texte{position:fixed;left:12px;right:12px;bottom:12px;top:auto;width:auto;max-width:none;padding:16px 18px;font-size:15px;box-shadow:0 -4px 28px rgba(0,0,0,.28)}div.wpforms-container-full .wpforms-form .afhf-info .afhf-info-texte::before{display:none}}

/* Mode simulateur (20/10/2026) : réponses déjà données masquées, encadré « Votre simulation » */
.afhf-simulateur .afhf-deja{display:none!important}
.afhf-recap{position:relative;margin:0 0 22px;padding:20px 22px 18px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);overflow:hidden;color:#d5def0;text-align:left}
.afhf-recap::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--afhf-c,#3a74e0)}
.afhf-recap .afhf-recap-k{margin:0 0 10px;font:600 12px/1.2 'IBM Plex Mono',ui-monospace,monospace!important;letter-spacing:.12em;text-transform:uppercase;color:#f39321}
.afhf-recap .afhf-recap-h{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 4px}
.afhf-recap .afhf-recap-col{font:800 40px/1 'Bricolage Grotesque','Arial Narrow',sans-serif!important;letter-spacing:-.03em;color:var(--afhf-c,#3a74e0)}
.afhf-recap .afhf-recap-tag{font:700 12px/1 'IBM Plex Mono',ui-monospace,monospace!important;letter-spacing:.08em;text-transform:uppercase;color:#1a1205;background:#f39321;padding:8px 11px;border-radius:999px}
.afhf-recap .afhf-recap-amt{margin:6px 0 12px;font:800 26px/1.15 'Bricolage Grotesque','Arial Narrow',sans-serif!important;color:#fff}
.afhf-recap ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
.afhf-recap li{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;font-size:15px}
.afhf-recap li span{font-size:12.5px;color:#9db0cf}
.afhf-recap li b{color:#fff;font-weight:600}
.afhf-recap .afhf-recap-pied{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.12)}
.afhf-recap .afhf-recap-pied p{margin:0;color:#fff;font-weight:600;font-size:15.5px}
.afhf-recap .afhf-recap-pied a{color:#f39321!important;font-size:14px;font-weight:600;text-decoration:none}
.afhf-recap .afhf-recap-pied a:hover{text-decoration:underline}
@media (max-width:600px){.afhf-recap ul{grid-template-columns:minmax(0,1fr)}.afhf-recap .afhf-recap-col{font-size:34px}}
