/* =====================================================================
   ACTAV — GABARIT DES OUTILS (simulateurs, calculateurs de délais, générateurs)
   Consigne du propriétaire du 01/10/2026, maquette « gabarit des outils Actav ».
   Classes, valeurs et ordre des blocs : ceux de la maquette. Portée : tout est
   écrit sous la racine .axo, rien ne s'applique ailleurs sur le site.

   Écarts voulus par rapport à la maquette (détail dans RAPPORT.md du dossier) :
   · H1 : taille unique du site (consigne « H1 » du 26/09/2026, variables --ax-h1-*) ;
   · champs de saisie à 16 px sur écran tactile (sous 16 px, Safari iPhone zoome) ;
   · cibles tactiles de 44 px (Retour, Passer, Modifier, Sources) sans changer le dessin ;
   · le thème pose des règles globales en !important sur <button> et <p> : les
     composants les neutralisent ici, d'où les !important et les sélecteurs doublés.
   ===================================================================== */

.axo{
  --navy:#0A1628;--blue:#0940D0;--blue-h:#0735B0;--link:#265EE3;--lime:#B1FE00;
  --bg:#FFFFFF;--soft:#F0F3F8;--soft2:#F7F9FC;--line:#E5E7EA;--lineb:#DEEAFC;--t2:#4A5568;--t3:#6B7280;--ink2:#374151;
  --t:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --b:'DM Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --axo-entete:69px;            /* hauteur de l'en-tête fixe du site (61 px jusqu'à 480 px) */
  --axo-conteneur:15px;         /* marge haute du conteneur Elementor des pages collées */
  --axo-band-decal:0px;--axo-band-h:42px;            /* hauteur VISIBLE du bandeau collé sous l'en-tête (mesurée par actav-outils.js) */
  display:block;width:100%;min-width:0;
  margin-top:calc(var(--axo-entete) - var(--axo-conteneur));
  background:var(--bg);color:var(--navy);
  font-family:var(--b);font-size:16px;line-height:1.5;
  -webkit-font-smoothing:antialiased;color-scheme:light;
  accent-color:var(--blue);caret-color:var(--blue);
}
@media (max-width:480px){.axo{--axo-entete:61px}}
/* Compte connecté à WordPress : la barre d'administration décale toute la page de 32 px (46 px jusqu'à 782 px), alors
   que l'en-tête fixe du site ne bouge pas (il passe devant elle : son gabarit a un z-index de 999 999, la barre de
   99 999, elle n'est donc jamais visible sur le site). Une bande blanche de 32 px séparait l'en-tête du bandeau, pour les
   seuls comptes connectés (relevé du propriétaire du 01/10/2026 ; un visiteur ne l'a jamais vue). Sur une page d'outil,
   ce décalage est retiré : le compte connecté voit la page comme un visiteur. Seconde règle écrite hors de la racine
   .axo ; elle ne s'applique qu'à une page qui porte un outil ET la classe admin-bar de WordPress. */
html:has(>body.admin-bar .axo:not([data-bloc])){margin-top:0!important}
/* Le widget qui porte l'outil. Seule règle écrite hors de la racine .axo : elle ne vise que ce widget. Sur 21 anciennes
   pages de simulateurs, le widget portait 67 px de marge haute et basse (réglage Elementor de l'ancien gabarit, qui
   dégageait ainsi l'en-tête fixe) ; le gabarit pose lui-même son décalage, ci-dessus : sans cette règle, 67 px de blanc
   séparaient l'en-tête du site du bandeau, et le bas de la page du pied (mesuré en aperçu le 01/10/2026). */
.elementor-widget-html:has(>.elementor-widget-container>.axo),.elementor-widget-html:has(>.axo){margin-top:0!important;margin-bottom:0!important}
.axo *,.axo *::before,.axo *::after{box-sizing:border-box}
.axo ::selection{background:#DCE7FF;color:var(--navy)}
.axo [hidden]{display:none!important}

/* ---------- Bases des composants (jamais l'article existant, laissé tel quel) ---------- */
.axo :is(.band,.hero,.side,.who-box,.toc-m,.axo-barre){font-family:var(--b);color:var(--navy)}
.axo :is(.band,.hero,.side,.who-box,.toc-m,.axo-barre) :is(p,li,span,small,strong,b,em,label,summary,a,button,input,select,textarea){font-family:var(--b)!important}
.axo :is(.band,.hero,.side,.who-box,.toc-m,.axo-barre) :is(h1,h2,h3,.logo,.big,.tt,.num){font-family:var(--t)!important}
/* Les anciennes pages gardent, avec leur article, les blocs <style> de leur ancien gabarit, dont des règles de balise
   nue (« strong{color:…} », « h2{border-bottom:…} ») qui s'appliquaient aux éléments du gabarit (mesuré le 01/10/2026,
   élément par élément, avec puis sans ces blocs : verif/outils/gabarit_e2e.mjs, « fuites »). Gras : la couleur de son
   conteneur, sauf règle du gabarit plus bas (:where() laisse cette ligne sous toute règle de composant). */
.axo :is(.band,.hero,.side,.who-box,.toc-m,.axo-barre) :where(strong,b){color:inherit}
.axo :is(.band,.hero,.side,.who-box,.toc-m) p{margin:0}
.axo :is(.band,.hero,.side,.who-box,.toc-m) a{color:var(--link);text-underline-offset:2px}
.axo :is(.band,.hero,.side,.who-box,.toc-m) a:hover{color:#1544C8}
.axo :is(.band,.hero,.side,.who-box,.toc-m,.axo-barre) :focus-visible{outline:2px solid var(--blue)!important;outline-offset:2px}
.axo .logo{font-family:var(--t);font-weight:800;font-size:19px;letter-spacing:-.5px;color:var(--navy);line-height:1}
.axo .logo i{font-style:normal;color:var(--blue)}

/* ---------- Bandeau Actav ---------- */
.axo .band{background:var(--soft);border-bottom:1px solid var(--lineb)}
.axo .band-in{max-width:1200px;margin:0 auto;padding:10px 20px;display:flex;gap:6px 14px;align-items:center;justify-content:center;flex-wrap:wrap;text-align:center}
.axo .band p{margin:0;font-size:14.5px;line-height:1.4;color:var(--navy)}
.axo .band .acc{color:var(--blue);font-weight:700}
.axo .band a{font-size:14px;font-weight:600;text-decoration:underline;white-space:nowrap}
/* Bandeau de TÊTE : il reste COLLÉ sous l'en-tête du site quand la page défile (demande du propriétaire du 01/10/2026 :
   « this should be under the header directly and also a sticky one » ; même comportement que le bandeau des articles,
   règle C82b de la couche de compatibilité). Sur une ligne (ordinateur : 42 px) il reste entier. Sur plusieurs lignes
   (téléphone, tablette : 80 à 125 px), une fois collé il glisse sous l'en-tête et ne laisse voir que la ligne du lien
   (classe band-mince et décalage --axo-band-decal posés par actav-outils.js) : c'est une transformation, la place du
   bandeau dans la page ne change pas, rien ne saute. La colonne collante, les ancres et le cadrage de la carte de
   l'outil descendent de la hauteur VISIBLE du bandeau collé (--axo-band-h). L'en-tête du site reste au-dessus (z-index
   1 000 sur son conteneur fixe) ; bandeau des cookies, bulle d'aide et barre fixe du téléphone aussi.
   Jamais le bandeau de pied (.band-pied) ni celui d'un fragment posé dans une autre page (.axo[data-bloc]). */
.axo:not([data-bloc])>.band:first-child{position:sticky;top:var(--axo-entete);z-index:40;transition:transform .2s ease}
.axo:not([data-bloc])>.band:first-child.band-mince{transform:translateY(calc(-1 * var(--axo-band-decal,0px)))}
@media (prefers-reduced-motion:reduce){.axo:not([data-bloc])>.band:first-child{transition:none}}
/* Toute ancre de la page (sommaire, « Voir comment le calcul est fait », FAQ) s'arrête sous l'en-tête ET sous le bandeau collé */
.axo:not([data-bloc]) [id]{scroll-margin-top:calc(var(--axo-entete) + var(--axo-band-h) + 16px)}
/* La carte de l'outil est la cible de « Générer ma lettre », « Faire le calcul »… Une ancienne règle du site, écrite par
   identifiant (« body #generateur{scroll-margin-top:92px} »), passe devant toute règle de classe : sans !important, la
   carte s'arrêtait 19 px SOUS le bandeau collé (mesuré le 01/10/2026). Règle portée par .axo .tool, plus bas. */

/* ---------- En-tête de l'outil ---------- */
/* Un ancien bloc de styles du site (« Hero 2 colonnes », imprimé sur toutes les pages) vise tout élément .hero :
   texte forcé en blanc, mot surligné en vert, quadrillage et halo en ::before et ::after, le tout en !important.
   Il est neutralisé ici pour l'en-tête des outils (sélecteurs plus précis, même importance). */
.axo .hero::before,.axo .hero::after{content:none!important;display:none!important}
.axo .hero{background:linear-gradient(180deg,var(--soft) 0%,#fff 100%);border-bottom:1px solid var(--line)}
.axo .hero h1 .hl,.axo .hero h1 span{color:inherit!important}
.axo .hero .head p.lead,.axo .hero details.how>p{color:var(--ink2)!important}
.axo .hero .tool p{color:var(--ink2)!important}
.axo .hero .tool p.sub,.axo .hero .tool p.fine,.axo .hero .tool p.noto,.axo .hero .tool p.noto-d,.axo .hero .tool details.src p,.axo .hero .tool .mail>p.ma{color:var(--t2)!important}
.axo .hero .tool p.err{color:#B42318!important}
.axo .hero .tool .total p,.axo .hero .tool .enc p{color:#1F2937!important}
.axo .hero .tool .mail>p,.axo .hero .tool .mail .ok{color:var(--navy)!important}
.axo .hero .tool .mail>p.ms{color:var(--ink2)!important}
.axo .hero .tool .doc p{color:#222!important}
.axo .hero-in{max-width:1200px;margin:0 auto;padding:14px 16px 36px;display:flex;flex-direction:column;gap:16px}
.axo .crumb{font-size:13px;line-height:1.4;color:var(--t2);display:flex;gap:4px 8px;flex-wrap:wrap;align-items:center}
.axo .crumb a{color:var(--t2);text-decoration:none}
.axo .crumb a:hover{color:var(--navy);text-decoration:underline}
.axo .crumb [aria-current]{color:var(--navy)}
.axo .stack{display:flex;flex-direction:column;gap:18px;align-items:center}
.axo .head{width:100%;max-width:860px;display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center}
.axo .badge{display:inline-flex;gap:8px;align-items:center;background:var(--lime);color:var(--navy);font-size:11px;line-height:1.3;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;padding:6px 12px;border-radius:100px;text-align:center}
.axo .hero h1{margin:0!important;padding:0;font-family:var(--t)!important;font-size:var(--ax-h1-size,clamp(30px,calc(1.8vw + 18px),44px))!important;line-height:var(--ax-h1-lh,1.2)!important;font-weight:800!important;letter-spacing:-1px;color:var(--navy)!important;text-wrap:balance;text-transform:none}
.axo .hl{background:linear-gradient(180deg,transparent 60%,var(--lime) 60%,var(--lime) 92%,transparent 92%);padding:0 4px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.axo details.how{max-width:720px;font-size:15.5px;line-height:1.6;color:var(--ink2)}
/* la main sur tout lien : Safari laisse « auto » sur un lien stylé en bouton */
.axo a[href]{cursor:pointer}
.axo details.how summary{cursor:pointer;list-style:none;display:inline}
.axo details.how summary::-webkit-details-marker{display:none}
.axo details.how summary::marker{content:""}
/* Le lien « Voir comment… » tient sa propre ligne : posé à la suite de l'accroche, il sautait d'une ligne à l'autre
   quand la police du site arrivait après le premier affichage (décalage mesuré : 0,12 sur ordinateur). */
.axo details.how .more{display:block;color:var(--link);font-weight:600;white-space:nowrap}
.axo details.how summary:hover .more{color:#1544C8}
.axo details.how[open] .more .chev{display:inline-block;transform:rotate(180deg)}
.axo details.how>p{margin:8px 0 0;text-wrap:pretty;font-size:15.5px;line-height:1.6;color:var(--ink2)}
.axo p.lead{max-width:720px;margin:0;font-size:15.5px;line-height:1.6;color:var(--ink2)}
.axo .chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:0;padding:0;list-style:none}
.axo .chips>*{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);font-size:12.5px;line-height:1.35;font-weight:600;color:var(--navy);padding:4px 10px;border-radius:100px;white-space:nowrap}
.axo .chips svg{flex:none}
.axo .author{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;font-size:13.5px;line-height:1.4;color:var(--t2)}
.axo .author .av{flex:none;width:30px;height:30px;border-radius:100px;background:var(--navy);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center}
.axo .author strong{color:var(--navy);font-weight:600}
/* Photo de la directrice de la publication à la place des initiales « MS » (retour du propriétaire du 01/10/2026) :
   la vignette publiée du site (celle des données Person). Les initiales restent dans la page, masquées à l'œil.
   La photo OUVRE la ligne, à gauche du texte, sur téléphone aussi (elle était seule, centrée au-dessus du texte). */
.axo .author{flex-wrap:nowrap;text-align:left}
.axo .author .av{width:36px;height:36px;background:var(--navy) url(/wp-content/uploads/2026/02/IMG_6105-150x150.jpg) center 22%/cover no-repeat;color:transparent;font-size:0;box-shadow:0 0 0 1px var(--line)}
.axo .author>:not(.av){min-width:0}

/* ---------- Carte de l'outil ---------- */
.axo .tool{width:100%;max-width:800px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(18px,3vw,28px) clamp(16px,3.4vw,32px);display:flex;flex-direction:column;gap:18px;box-shadow:0 8px 40px rgba(10,22,40,.08);scroll-margin-top:calc(var(--axo-entete) + var(--axo-band-h) + 16px)!important;text-align:left;min-width:0}
.axo .tool>*{min-width:0}
.axo .prog{display:flex;flex-direction:column;gap:8px}
.axo .prog-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.axo .prog-top strong{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--t2)}
.axo .prog-top span{font-size:12px;color:var(--t3);white-space:nowrap}
.axo .bar{height:4px;border-radius:100px;background:var(--line);overflow:hidden}
.axo .bar i{display:block;height:100%;background:var(--blue);border-radius:100px;transition:width 250ms ease}
.axo .q{display:flex;flex-direction:column;gap:6px}
.axo .kick{font-size:13px;line-height:1.4;font-weight:700;color:var(--link)}
.axo .tool h2{margin:0!important;padding:0;font-family:var(--t)!important;font-size:23px!important;line-height:1.3!important;font-weight:800!important;letter-spacing:-.3px;color:var(--navy)!important;text-wrap:balance;text-transform:none}
/* un ancien gabarit de simulateur trace un trait sous tout <h2> de la page (« h2{border-bottom:2px solid…} ») */
.axo .tool h2{border:0!important}
.axo .tool h2:focus{outline:none}
/* précision de fin de libellé d'un simulateur (unité, « facultatif », rappel entre parenthèses) : même texte, plus léger.
   En bloc en ligne : courte, elle reste sur la ligne du titre (« Prix d'achat (€) ») ; longue, elle passe entière à la
   ligne et garde son propre interligne (elle se coupait après « (la », avec l'interligne du titre). */
.axo .tool h2 small{display:inline-block;max-width:100%;vertical-align:baseline;font-family:var(--b);font-size:15px;line-height:1.45;font-weight:500;letter-spacing:0;color:var(--t2);text-wrap:pretty}
/* aucune césure automatique dans un titre d'écran (« station-nement », « conven-tionnelle » relevés à 390 px) */
.axo .tool h2{hyphens:manual!important;-webkit-hyphens:manual!important}
/* cibles de focus posées par le moteur (titre de l'écran, titre du résultat) : pas de contour, ce ne sont pas des commandes */
.axo [tabindex="-1"]:focus,.axo [tabindex="-1"]:focus-visible{outline:none!important}
.axo .sub{margin:0;font-size:13.5px;line-height:1.5;color:var(--t2)}
.axo .opts{display:flex;flex-direction:column;gap:9px}

/* Boutons de réponse : repos, survol, choisi (un seul signe quand c'est choisi, le contour).
   Sélecteurs doublés + !important : le thème force fond, bordure et couleur de tout <button>. */
.axo.axo .tool button.opt.opt{position:relative;display:flex;align-items:center;width:100%;min-height:48px;margin:0;padding:12px 16px 12px 48px;border-radius:12px;background:#fff!important;border:1.5px solid var(--line)!important;box-shadow:0 1px 2px rgba(10,22,40,.04);cursor:pointer;text-align:left;color:var(--navy)!important;font:inherit;font-weight:400;white-space:normal;text-transform:none;letter-spacing:0;transition:border-color 200ms ease,box-shadow 200ms ease,background-color 200ms ease;-webkit-tap-highlight-color:transparent}
.axo.axo .tool button.opt.opt:hover{border-color:var(--blue)!important;box-shadow:0 8px 24px rgba(38,94,227,.14);background:#fff!important;color:var(--navy)!important}
.axo.axo .tool button.opt.opt:active{background:#F5F8FF!important}
.axo .opt .dot{position:absolute;left:16px;top:50%;margin-top:-10px;width:20px;height:20px;border-radius:100px;border:1.5px solid var(--line);background:#fff;transition:box-shadow 160ms ease,border-color 160ms ease}
.axo .opt:hover .dot{border-color:#B9C6E4}
.axo .opt>span:last-child{display:block;min-width:0}
.axo .opt strong{font-size:15px;line-height:1.35;font-weight:700;display:block;color:var(--navy)}
.axo .opt small{font-size:13px;line-height:1.4;color:var(--t2);display:block;margin-top:2px}
.axo.axo .tool button.opt.opt[aria-pressed="true"],.axo.axo .tool button.opt.opt[aria-pressed="true"]:hover{background:#F5F8FF!important;border-color:var(--blue)!important;box-shadow:0 4px 20px rgba(38,94,227,.14)}
.axo .opt[aria-pressed="true"] .dot{border-color:var(--blue);box-shadow:inset 0 0 0 5px var(--blue)}
.axo .seg{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.axo.axo .tool .seg button.segb{min-height:44px;margin:0;padding:11px 8px;border-radius:10px;background:#fff!important;border:1.5px solid var(--line)!important;font:inherit;font-size:14px;line-height:1.3;font-weight:600;color:var(--navy)!important;cursor:pointer;white-space:normal;text-transform:none;letter-spacing:0;transition:border-color 200ms ease,background-color 200ms ease,color 200ms ease;-webkit-tap-highlight-color:transparent}
.axo.axo .tool .seg button.segb:hover{border-color:var(--blue)!important;background:#fff!important;color:var(--navy)!important}
.axo.axo .tool .seg button.segb[aria-pressed="true"],.axo.axo .tool .seg button.segb[aria-pressed="true"]:hover{background:#F5F8FF!important;border-color:var(--blue)!important;color:var(--blue)!important}

/* Champ unique */
.axo .field{display:flex;flex-direction:column;gap:6px;margin:0;font-size:14px;line-height:1.4;font-weight:600;color:var(--navy);text-align:left}
.axo .field>:is(input,select,textarea){width:100%;margin:0;font-family:var(--b)!important;font-size:15px;line-height:1.4;font-weight:400;padding:11px 12px;border:1.5px solid var(--line);border-radius:10px;color:var(--navy);background:#fff;min-height:44px;box-shadow:none;transition:border-color 160ms ease,box-shadow 160ms ease;appearance:auto}
.axo .field>textarea{min-height:112px;resize:vertical}
.axo .field>:is(input,select,textarea):hover{border-color:#C9D2E3}
.axo .field>:is(input,select,textarea):focus{outline:none!important;border-color:var(--blue);box-shadow:0 0 0 3px rgba(9,64,208,.1)}
.axo .field>:is(input,select,textarea)[aria-invalid="true"]{border-color:#B42318}
.axo .field>:is(input,textarea)::placeholder{color:#8A93A3;opacity:1}
.axo .field>span{font-size:12.5px;font-weight:400;color:var(--t2);line-height:1.5}
.axo .field>.enter{font-size:12px;color:var(--t3)}
.axo .duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
/* écran à plusieurs champs (thème regroupé) : le dernier champ d'un nombre impair prend la largeur ; le rappel de la touche Entrée ne se répète pas sous chaque champ */
.axo .duo{gap:14px 12px;align-items:start}
.axo .duo>.field:last-child:nth-child(odd){grid-column:1/-1}
.axo .duo .enter{display:none}
/* Lignes répétables (facture, devis) : une carte par ligne, la désignation sur toute la largeur, quantité et prix côte à côte */
.axo [data-libre]{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.axo .ligne{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft2)}
.axo .ligne>.field:first-child{grid-column:1/-1}
.axo.axo .tool .ligne>button.skip.skip{grid-column:1/-1;justify-self:start;padding:4px 0;min-height:32px}
.axo.axo .tool [data-libre]>button.skip.skip{align-self:flex-start}
.axo .checks{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;border:0}
.axo .check{position:relative;display:block;margin:0;padding:12px 16px 12px 46px;border:1.5px solid var(--line);border-radius:12px;background:#fff;font-size:14.5px;line-height:1.5;font-weight:500;color:var(--navy);cursor:pointer;transition:border-color 200ms ease,background-color 200ms ease}
.axo .check:hover{border-color:var(--blue)}
.axo .check input{position:absolute;left:16px;top:14px;width:18px;height:18px;margin:0;accent-color:var(--blue)}
.axo .check:has(input:checked){background:#F5F8FF;border-color:var(--blue)}
.axo .check small{display:block;margin-top:2px;font-size:13px;font-weight:400;color:var(--t2)}

/* Navigation de l'écran */
.axo .nav{display:flex;align-items:center;gap:4px 16px;flex-wrap:wrap;min-height:44px}
/* premier écran d'un choix sans « Passer » : la rangée est vide, elle ne réserve pas 62 px de blanc en bas de la carte */
.axo .nav:empty{display:none}
.axo.axo .tool button.back.back{border:none!important;background:none!important;margin:0;padding:12px 4px;min-height:44px;cursor:pointer;font:inherit;font-size:14.5px;line-height:1.3;font-weight:600;color:var(--t2)!important;border-radius:6px;text-transform:none;letter-spacing:0;white-space:nowrap}
.axo.axo .tool button.back.back:hover{color:var(--navy)!important;background:none!important}
.axo.axo .tool button.skip.skip{border:none!important;background:none!important;margin:0;padding:12px 4px;min-height:44px;cursor:pointer;font:inherit;font-size:13.5px;line-height:1.3;font-weight:600;color:var(--link)!important;border-radius:6px;text-transform:none;letter-spacing:0;text-align:left;white-space:normal}
.axo.axo .tool button.skip.skip:hover{color:#1544C8!important;background:none!important;text-decoration:underline;text-underline-offset:2px}
.axo.axo .tool button.go.go{margin:0 0 0 auto;background:var(--blue)!important;color:#fff!important;border:none!important;padding:13px 24px;min-height:46px;border-radius:8px;font:inherit;font-weight:700;font-size:15px;line-height:1.2;cursor:pointer;box-shadow:0 8px 24px rgba(9,64,208,.24);text-transform:none;letter-spacing:0;white-space:nowrap;transition:background-color 160ms ease}
.axo.axo .tool button.go.go:hover{background:var(--blue-h)!important;color:#fff!important}
.axo.axo .tool button.go.go:disabled{background:#9AA9CF!important;box-shadow:none;cursor:default}
/* FOCUS (clavier, ou appui selon le navigateur). La règle du thème « button:not(…):focus » (fond bleu, texte blanc,
   !important) a la même force que nos règles de base et sort après elles : sans les lignes ci-dessous, une réponse
   atteinte au clavier passait en bleu plein avec son libellé resté foncé (1,9:1, illisible), et « Retour », « Passer »,
   « Modifier » devenaient des pavés bleus. Le contour de focus (2 px bleu) reste le seul signe du focus. */
.axo.axo .tool button.opt.opt:focus{background:#fff!important;color:var(--navy)!important}
.axo.axo .tool button.opt.opt[aria-pressed="true"]:focus{background:#F5F8FF!important}
.axo.axo .tool .seg button.segb:focus{background:#fff!important;color:var(--navy)!important}
.axo.axo .tool .seg button.segb[aria-pressed="true"]:focus{background:#F5F8FF!important;color:var(--blue)!important}
.axo.axo .tool button.back.back:focus{background:none!important;color:var(--t2)!important}
.axo.axo .tool button.skip.skip:focus{background:none!important;color:var(--link)!important}
.axo.axo .tool button.edit.edit:focus{background:#fff!important;color:var(--navy)!important}
.axo.axo .tool button.go.go:focus{background:var(--blue)!important;color:#fff!important}
.axo.axo .tool .mail-row button.envoi:focus{background:var(--blue)!important;color:#fff!important}
.axo .err{margin:0;color:#B42318;font-size:13.5px;line-height:1.45;font-weight:600}
/* « Continuer » est présent sur tout écran à champ, à la souris comme au doigt (retour du propriétaire du 01/10/2026 :
   à la souris, un écran à champ unique n'avait aucun bouton). Le rappel « Validez avec la touche Entrée » ne s'affiche
   que là où il y a un clavier.
   Le premier écran des pages déjà en ligne est écrit dans la page : s'il porte encore l'ancien bouton « OK » réservé
   au tactile (classe go-tactile), il reste masqué à la souris le temps que le script le remplace. */
@media (hover:hover) and (pointer:fine){.axo .go-tactile{display:none!important}}
@media (hover:none),(pointer:coarse){
  .axo .field>.enter.si-clavier{display:none}
  .axo .field>:is(input,select,textarea),.axo .mail-row input{font-size:16px}
}

/* Encadré du milieu de parcours (un seul par visiteur, jamais bloquant) */
.axo .enc{border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:12px;border:1px solid var(--lineb);background:#F0F4FF}
.axo .enc .et{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue)}
.axo .enc strong.tt{font-family:var(--t)!important;font-size:17px;line-height:1.35;font-weight:800;color:var(--navy);display:block}
.axo .enc p{margin:0;font-size:14px;line-height:1.6;color:#1F2937}
.axo .enc p.seul{font-size:15px;line-height:1.6}
.axo .tool p.autre{margin:0;font-size:13.5px;line-height:1.5}
.axo .tool p.autre a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--link);text-decoration:none}
.axo .tool p.autre a:hover{color:#1544C8;text-decoration:underline;text-underline-offset:2px}
.axo .enc-ambre{background:#FFF7F0;border-color:#F5C9A8}
.axo .enc-ambre .et{color:#B45309}

/* ---------- Écran de résultat ---------- */
.axo .r-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.axo .r-head>span{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue);line-height:1.4}
.axo .r-head>span:focus{outline:none}
.axo.axo .tool button.edit.edit{display:inline-flex;gap:6px;align-items:center;margin:0;min-height:44px;background:#fff!important;border:1.5px solid var(--line)!important;border-radius:8px;padding:8px 12px;font:inherit;font-size:13px;line-height:1.3;font-weight:600;color:var(--navy)!important;cursor:pointer;text-transform:none;letter-spacing:0;white-space:nowrap;transition:border-color 160ms ease}
.axo.axo .tool button.edit.edit:hover{border-color:var(--blue)!important;background:#fff!important;color:var(--navy)!important}
.axo .total{background:#F0F4FF;border-left:4px solid var(--blue);border-radius:0 14px 14px 0;padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.axo .total .lab{font-size:13px;line-height:1.4;font-weight:700;color:var(--ink2)}
.axo .total .num{align-self:flex-start;max-width:100%;font-family:var(--t)!important;font-size:clamp(28px,4.4vw,42px);line-height:1.1;font-weight:800;letter-spacing:-1px;color:var(--navy);background:linear-gradient(180deg,transparent 58%,var(--lime) 58%,var(--lime) 92%,transparent 92%);padding:0 3px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.axo .total p{margin:0;font-size:14px;line-height:1.6;color:#1F2937}
/* Verdict en toutes lettres (plus long qu'une date ou un montant) : même bloc, corps réduit, sans surlignage */
/* « .num » existe aussi dans une ancienne feuille (frais de notaire : white-space:nowrap) ; « .tot » dans quinze */
.axo .total .num{white-space:normal}
.axo .detail .row.tot{margin:0;border-radius:0;border-right:0;border-bottom:0;border-left:0}
.axo .total .num.long{font-size:clamp(19px,2.6vw,24px);line-height:1.3;letter-spacing:-.3px;background:none;padding:0}
/* Délai expiré ou non conforme (ko), point à vérifier (alerte) : couleurs de la mise en garde et de l'erreur de la charte */
.axo .total.ko{background:#FFF7F0;border-left-color:#B42318}
.axo .total.ko .num{background:none;padding:0;color:#B42318}
.axo .total.alerte{background:#FFF7F0;border-left-color:#B45309}
.axo .total.alerte .num{background:none;padding:0}
.axo .total a{color:var(--link);font-weight:600;text-underline-offset:2px}
/* Référence de texte à la suite d'une phrase (art. 22 loi 1989, L.1237-13…) */
.axo .ref{display:inline-block;margin-left:2px;padding:0 7px;border-radius:6px;background:var(--soft);font-size:12px;line-height:1.6;font-weight:600;color:var(--t2);font-style:normal}
.axo .total .ref{background:#fff}
.axo .rep{display:flex;height:10px;border-radius:100px;overflow:hidden;background:var(--line);margin-top:6px}
.axo .rep i{display:block;height:100%}
.axo .rep i:nth-child(1){background:var(--blue)}
.axo .rep i:nth-child(2){background:#8FA9EE}
.axo .rep i:nth-child(3){background:#C9D6F5}
.axo .rep-l{display:flex;flex-wrap:wrap;gap:4px 16px;margin:6px 0 0;padding:0;list-style:none;font-size:12.5px;line-height:1.4;color:var(--ink2)}
.axo .rep-l li{display:inline-flex;align-items:center;gap:6px}
.axo .rep-l i{width:10px;height:10px;border-radius:3px;flex:none}
.axo .detail{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.axo .detail .th{background:var(--soft);padding:10px 16px;font-size:13px;line-height:1.4;font-weight:700;color:var(--navy)}
.axo .detail .row{display:flex;justify-content:space-between;gap:14px;padding:12px 16px;border-top:1px solid var(--line)}
.axo .detail .row>span{display:flex;flex-direction:column;gap:2px;min-width:0}
.axo .detail .row b{font-size:14.5px;line-height:1.4;font-weight:600;color:var(--navy)}
.axo .detail .row small{font-size:12.5px;line-height:1.45;color:var(--t2)}
.axo .detail .row>strong{flex:none;font-size:15px;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--navy);text-align:right;white-space:nowrap}
/* ligne de calcul en clair (détail d'un délai : report, jours comptés) */
.axo .detail .lc{margin:0;padding:10px 16px;border-top:1px solid var(--line);font-family:var(--b);font-size:13.5px;line-height:1.55;letter-spacing:0;color:var(--ink2)}
.axo .detail .tot{border-top:2px solid var(--navy);background:var(--soft2)}
.axo .detail .tot>strong:last-child{color:var(--blue)}
.axo .detail .cmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}
.axo .detail .cmp>div{padding:12px 16px;display:flex;flex-direction:column;gap:2px}
.axo .detail .cmp>div+div{border-left:1px solid var(--line)}
.axo .detail .cmp b{font-size:13px;font-weight:600;color:var(--ink2)}
.axo .detail .cmp strong{font-size:16px;font-variant-numeric:tabular-nums}
.axo .detail .cmp .best{background:#F5F8FF}
.axo .detail .cmp small{font-size:12.5px;color:var(--t2);line-height:1.45}
/* Chiffres clés d'un document (ancienneté, préavis, indemnité) : la valeur, puis ce qu'elle mesure */
.axo .faits{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
.axo .faits>div{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:12px;background:var(--soft2);border:1px solid var(--line);min-width:0}
.axo .faits strong{font-family:var(--t)!important;font-size:17px;line-height:1.3;font-weight:800;color:var(--navy);overflow-wrap:anywhere}
.axo .faits span{font-size:12.5px;line-height:1.45;color:var(--t2)}
.axo .fine{margin:0;font-size:12.5px;line-height:1.55;color:var(--t2)}
.axo .fine.hono{margin-top:-6px;text-align:center}
.axo .info{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:14px 16px;font-size:13.5px;line-height:1.6;color:#1F2937}
.axo .info>svg{flex:none;margin-top:2px}
.axo .info>span{min-width:0}
.axo .info strong.tt{display:block;font-size:14.5px;line-height:1.4;color:var(--navy);margin-bottom:2px}
.axo .info a{font-weight:600}
.axo .cta-card{border:1.5px solid var(--blue);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 32px rgba(38,94,227,.14);background:#fff}
.axo .cta-card .top{display:flex;gap:12px;align-items:flex-start}
.axo .cta-card .top>span:last-child{min-width:0;display:flex;flex-direction:column;gap:4px}
.axo .cta-card .ico{flex:none;width:38px;height:38px;border-radius:10px;background:#EEFFC2;display:grid;place-items:center}
.axo .cta-card strong.tt{font-family:var(--t)!important;font-size:17px;line-height:1.35;font-weight:800;color:var(--navy);display:block;text-wrap:balance}
.axo .cta-card p{margin:0;font-size:14px;line-height:1.6;color:var(--ink2)}
.axo .cta-card p.noto{color:var(--t2)}
.axo .tool a.btn.btn,.axo .axo-barre a.btn.btn{display:block;background:var(--blue)!important;color:#fff!important;padding:13px 16px;min-height:46px;border-radius:8px;border:0;font-family:var(--b)!important;font-weight:700;font-size:15px;line-height:1.35;text-align:center;text-decoration:none!important;transition:background-color 160ms ease}
.axo .tool a.btn.btn:hover,.axo .axo-barre a.btn.btn:hover{background:var(--blue-h)!important;color:#fff!important}
.axo .grey{background:var(--soft);border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:10px}
.axo .grey>strong{font-size:15px;line-height:1.4;color:var(--navy)}
.axo .grey .who{display:flex;gap:10px;align-items:center}
.axo .grey .who em{font-style:normal;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--link)}
.axo .grey p{margin:0;font-size:14px;line-height:1.6;color:var(--ink2)}
.axo .grey a,.axo .nsp a{font-size:14px;font-weight:700;color:var(--blue);text-decoration:none}
.axo .grey a:hover,.axo .nsp a:hover{color:var(--blue-h);text-decoration:underline;text-underline-offset:2px}
.axo .nsp{background:var(--soft);border-radius:14px;padding:16px 18px;display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap}
.axo .nsp strong{flex:1 1 200px;font-size:14.5px;line-height:1.5;color:var(--navy);font-weight:700}
.axo .nsp a{display:inline-flex;align-items:center;min-height:44px}
.axo p.noto-d{margin:0;font-size:12.5px;line-height:1.55;color:var(--t2)}
/* lien seul du tableau, sous la notoriété discrète (« NOTORIÉTÉ DISCRÈTE + lien ») : une ligne, sans encadré */
.axo p.lien-d{margin:-8px 0 0}
.axo p.lien-d a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:700;color:var(--blue);text-decoration:none}
.axo p.lien-d a:hover{color:var(--blue-h);text-decoration:underline;text-underline-offset:2px}
/* Liens utiles (générateurs gratuits liés à l'outil), sous le bloc de conversion */
.axo .links{display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.axo .links b{font-size:13px;line-height:1.4;font-weight:700;color:var(--navy);margin-bottom:4px}
.axo .links a{display:inline-flex;align-items:center;align-self:flex-start;min-height:36px;font-size:14px;line-height:1.45;font-weight:600;color:var(--link);text-decoration:none}
.axo .links a:hover{color:#1544C8;text-decoration:underline;text-underline-offset:2px}
/* Actions annexes du résultat (agenda, impression) */
.axo .acts-res{display:flex;flex-wrap:wrap;gap:0 20px;margin-top:-6px}
.axo .warn{background:#FFF7F0;border:1px solid #F5C9A8;border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:10px}
.axo .warn .wt{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#B45309}
.axo .warn ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:13.5px;line-height:1.6;color:#1F2937}
.axo .warn li{margin:0;padding:0;font-size:13.5px;line-height:1.6;color:#1F2937}
.axo .warn li::before,.axo .warn li::marker{content:none}
.axo .warn>p{margin:0;font-size:13.5px;line-height:1.6;color:#1F2937}
.axo .hero .tool .warn>p{color:#1F2937!important}
.axo .warn a{color:#8A3F06;text-decoration:underline}
.axo details.src{font-size:12px;line-height:1.55;color:var(--t2)}
.axo details.src summary{cursor:pointer;font-weight:600;color:var(--link);padding:8px 0;min-height:36px}
.axo details.src summary:hover{color:#1544C8}
.axo details.src p{margin:4px 0 0;font-size:12px;line-height:1.55;color:var(--t2)}
.axo .timeline{list-style:none;margin:0;padding:0}
.axo .timeline li{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;margin:0;padding:12px 16px;border-top:1px solid var(--line);font-size:14px;line-height:1.5}
.axo .timeline li::before,.axo .timeline li::marker{content:none}
.axo .timeline li:first-child{border-top:none}
.axo .timeline b{font-variant-numeric:tabular-nums;color:var(--navy);font-weight:700}
.axo .timeline span{color:var(--ink2)}
.axo .timeline li.cle{background:#F5F8FF}
.axo .timeline small{display:block;margin-top:2px;font-size:12.5px;line-height:1.5;color:var(--t2)}
.axo .doc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 24px;font-family:Georgia,'Times New Roman',serif!important;font-size:14px;line-height:1.6;color:#222;max-height:300px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#C6CEDB transparent}
.axo .doc :is(p,li,td,th,div,h1,h2,h3,h4){font-family:Georgia,'Times New Roman',serif!important;color:#222}
/* les éléments en ligne héritent de leur paragraphe : une valeur saisie dans un titre blanc sur bandeau marine reste blanche */
.axo .doc :is(span,b,strong,em,i,u,a){font-family:Georgia,'Times New Roman',serif!important;color:inherit}
.axo .doc .agx-blank{background:#EEF1F6;color:#4A5568;border-radius:3px;padding:0 6px;font-size:13px}
/* tableaux de l'aperçu : ceux du document (bandeaux, cadres de signature), sans les rayures ni les marges du thème */
.axo .doc table{width:100%;margin:0 0 10px;border-collapse:collapse;border:none;background:none}
.axo .doc :is(td,th){background-color:transparent;border:1px solid var(--line);padding:6px 10px;vertical-align:top;font-size:14px;line-height:1.5;text-align:left}
.axo .doc table p:last-child{margin-bottom:0}
.axo .doc p{margin:0 0 10px;font-size:14px;line-height:1.6}
.axo .doc:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.axo .doc-cap{margin:-8px 0 0;font-size:12.5px;line-height:1.5;color:var(--t2)}
.axo .mail{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.axo .mail>p{margin:0;font-size:14px;line-height:1.45;font-weight:600;color:var(--navy)}
/* titre du bloc d'envoi : sur téléphone il se coupait après « e- » (« …par e-/mail ») */
.axo .mail>p:not(.ms):not(.ma){text-wrap:balance}
.axo .nb{white-space:nowrap}
.axo .mail>p.ms{font-weight:400;font-size:13.5px;line-height:1.55;color:var(--ink2)}
.axo .mail>p.ma{font-weight:400;font-size:12.5px;line-height:1.5;color:var(--t2)}
.axo .mail-row{display:flex;gap:8px;flex-wrap:wrap}
.axo .mail-row input{flex:1 1 220px;min-width:0;margin:0;min-height:44px;border:1.5px solid var(--line);border-radius:10px;padding:10px 12px;font-size:15px;line-height:1.4;font-family:var(--b)!important;color:var(--navy);background:#fff;transition:border-color 160ms ease,box-shadow 160ms ease}
.axo .mail-row input::placeholder{color:#8A93A3;opacity:1}
.axo .mail-row input:focus{outline:none!important;border-color:var(--blue);box-shadow:0 0 0 3px rgba(9,64,208,.1)}
.axo .mail-row input[aria-invalid="true"]{border-color:#B42318}
.axo.axo .tool .mail-row button.envoi{flex:0 0 auto;margin:0;background:var(--blue)!important;color:#fff!important;border:none!important;border-radius:8px;padding:0 18px;min-height:44px;font:inherit;font-weight:700;font-size:14.5px;line-height:1.2;cursor:pointer;text-transform:none;letter-spacing:0;white-space:nowrap;transition:background-color 160ms ease}
.axo.axo .tool .mail-row button.envoi:hover{background:var(--blue-h)!important;color:#fff!important}
.axo.axo .tool .mail-row button.envoi:disabled{background:#9AA9CF!important;cursor:default}
.axo .mail label.cs{position:relative;display:block;margin:0;padding-left:26px;font-size:13px;line-height:1.5;font-weight:400;color:var(--t2);cursor:pointer}
.axo .mail label.cs input{position:absolute;left:0;top:2px;width:16px;height:16px;margin:0}
.axo .mail .ok{display:flex;gap:10px;align-items:flex-start;margin:0;padding:12px 14px;border-radius:10px;background:#EEFFC2;font-size:14px;line-height:1.5;font-weight:600;color:var(--navy)}
.axo .mail .ok svg{flex:none;margin-top:2px}
.axo .hp{position:absolute!important;left:-9999px!important;top:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.axo .indispo{border:1px dashed #C6CEDB;border-radius:12px;padding:16px 18px;font-size:14px;line-height:1.6;color:var(--ink2)}
.axo .indispo p{margin:0}
.axo .indispo p+p{margin-top:6px}

/* ---------- Carte Actav sous l'outil ---------- */
.axo .pub{width:100%;max-width:800px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;box-shadow:0 4px 20px rgba(38,94,227,.08);text-align:left}
.axo .pub span.tx{flex:1 1 280px;min-width:0;font-size:14px;line-height:1.5;color:var(--ink2)}
.axo .pub span.tx strong{color:var(--navy);font-weight:700}
.axo .pub .acts{display:flex;gap:8px;flex-wrap:wrap}
.axo a.b1.b1{display:inline-block;background:var(--blue);color:#fff!important;padding:9px 14px;border:1.5px solid var(--blue);border-radius:8px;font-family:var(--b)!important;font-weight:700;font-size:13.5px;line-height:1.35;text-decoration:none!important;transition:background-color 160ms ease,border-color 160ms ease}
.axo a.b1.b1:hover{background:var(--blue-h);border-color:var(--blue-h);color:#fff!important}
.axo a.b2.b2{display:inline-block;background:#fff;border:1.5px solid var(--line);color:var(--navy)!important;padding:9px 14px;border-radius:8px;font-family:var(--b)!important;font-weight:600;font-size:13.5px;line-height:1.35;text-decoration:none!important;transition:border-color 160ms ease,color 160ms ease}
.axo a.b2.b2:hover{border-color:var(--blue);color:var(--blue)!important}

/* ---------- Zone de l'article et colonne ---------- */
.axo main.seo{max-width:1200px;margin:0 auto;padding:44px 20px 40px;display:flex;flex-wrap:wrap;gap:44px;align-items:flex-start}
.axo main.seo>article{flex:999 1 560px;min-width:0}
/* L'article repris tel quel garde son enveloppe .actav-page, que la feuille générale traite comme une page entière
   (56 px en tête, 72 px en pied, gouttière). Dans le gabarit, l'air et la gouttière sont ceux de main.seo : sans cette
   règle, l'article démarrait 56 px sous le haut de la colonne et perdait 32 px de largeur utile sur téléphone. */
.axo main.seo>article>.actav-page{padding-top:0!important;padding-bottom:0!important}

/* ---------- Calculateurs de délais ---------- */
/* L'ancienne page posait l'article et sa colonne en grille : l'article prend ici toute la largeur de sa colonne. */
.axo[data-famille="delai"] main.seo>article>.actav-page{display:block!important;max-width:none!important;margin:0!important}
/* Le formulaire d'origine reste dans la page : c'est lui qui calcule (moteur inchangé). Il n'est pas affiché. */
.axo .axo-outil{width:100%;max-width:800px;scroll-margin-top:calc(var(--axo-entete) + var(--axo-band-h) + 16px)}
.axo .axo-moteur{display:none!important}
/* « En bref » de l'ancien héros, repris en tête de l'article (encadré de la maquette) */
.axo main.seo .dly-answer{max-width:none!important;margin:0 0 24px!important;background:#F0F4FF!important;border:0!important;border-left:4px solid var(--blue)!important;border-radius:0 14px 14px 0!important;padding:20px 22px!important;font-size:15.5px!important;line-height:1.65!important;color:#1F2937!important}
.axo main.seo .dly-answer :is(b,strong){color:var(--navy)!important}
.axo main.seo .dly-answer>b:first-child{display:block;margin-bottom:6px;font-size:11px;line-height:1.4;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--blue)!important}
.axo main.seo .dly-answer a{color:var(--link)!important;text-decoration:underline;text-underline-offset:2px}
/* « Citer cette page », gardé en bas de l'article */
.axo main.seo .dly-cite{margin:28px 0 0}
/* Tableau filtrable d'un calculateur (durées de conservation, prescriptions) dans la carte de l'outil */
.axo .tool .axo-table .dly-filter{margin:0 0 12px}
/* la recherche tient sa ligne (son texte d'exemple était coupé à côté des filtres) */
.axo .tool .axo-table .dly-filter input[type="search"]{flex:1 1 100%;min-width:0;font-family:var(--b)!important;font-size:15px}
.axo .tool .axo-table .dly-chip{min-height:36px;font-family:var(--b)!important}
/* le tableau défile dans la carte : le bloc de conversion et les sources restent à portée */
.axo .tool .axo-table .actav-table-wrap{margin:0;max-height:min(64vh,600px);overflow:auto;scrollbar-width:thin;scrollbar-color:#C6CEDB transparent}
.axo .tool .axo-table .actav-table-wrap :is(td,th){font-family:var(--b)!important}
.axo .tool .axo-table .actav-table-wrap thead th{position:sticky;top:0;z-index:1}
.axo .tool .axo-table .actav-table-wrap td a{display:inline-block;padding:3px 0}
.axo .tool .axo-table .dly-empty{font-family:var(--b);color:var(--t2)}
@media (hover:none),(pointer:coarse){.axo .tool .axo-table .dly-filter input[type="search"]{font-size:16px}}
/* Tableaux « en cartes » des pages de délais sous 640 px (une carte par ligne, libellé au-dessus de chaque valeur) :
   la feuille générale du site leur impose 520 px de large (règle des tableaux qui défilent), chaque carte sortait de
   l'écran et son texte était coupé à droite, dans la carte de l'outil comme dans l'article (relevé le 01/10/2026 à
   390 px, déjà vrai sur l'ancienne page). La carte reprend la largeur de son conteneur, le texte revient à la ligne. */
@media (max-width:640px){
  .axo .actav-table-wrap table:has(td[data-label]){min-width:0!important;width:100%!important}
  .axo .actav-table-wrap td[data-label]{overflow-wrap:anywhere}
}
/* Bandeau NOTORIÉTÉ (bloc du tableau v3.1) : en pied des pages sensibles, et sous la liste de la page d'accueil des calculateurs */
.axo .band.band-noto .band-in{padding:14px 20px;gap:8px 18px}
.axo .band.band-noto p{max-width:880px;font-size:14px;line-height:1.55;color:var(--ink2);text-wrap:pretty}
.axo .band.band-pied{border-bottom:0;border-top:1px solid var(--lineb);margin-top:8px}
/* fragment du gabarit posé dans une page qui n'est pas un outil : pas de décalage sous l'en-tête, pas de fond propre */
.axo[data-bloc]{margin-top:0;background:none}
.axo[data-bloc] .band{border-top:1px solid var(--lineb)}
.axo main.seo>aside{flex:1 1 280px;min-width:260px;align-self:stretch}
.axo .side{position:sticky;top:calc(var(--axo-entete) + var(--axo-band-h) + 20px);display:flex;flex-direction:column;gap:14px}
.axo a.active{text-decoration:none!important;color:var(--navy)!important;background:#fff;border:1.5px solid var(--blue);border-radius:14px;padding:16px 18px;display:flex;gap:12px;align-items:center;box-shadow:0 8px 32px rgba(38,94,227,.14);transition:background-color 160ms ease}
.axo a.active:hover{background:#F0F4FF;color:var(--navy)!important}
.axo .active .i{flex:none;width:36px;height:36px;border-radius:10px;background:var(--blue);display:grid;place-items:center}
.axo .active>span:last-child{min-width:0}
.axo .active strong{font-size:15px;line-height:1.35;display:block;color:var(--navy);font-weight:700}
.axo .active small{font-size:12.5px;line-height:1.4;color:var(--t2);display:block}
.axo .actav{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:10px;box-shadow:0 4px 20px rgba(38,94,227,.10)}
.axo .actav .big{font-family:var(--t)!important;font-size:16px;font-weight:800;line-height:1.35;color:var(--navy)}
.axo .actav p{margin:0;font-size:13px;line-height:1.55;color:var(--t2)}
.axo .actav a.b1.b1,.axo .actav a.b2.b2{display:block;text-align:center;font-size:14px;padding:11px}
.axo .toc{background:var(--soft2);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px;max-height:calc(100vh - var(--axo-entete) - var(--axo-band-h) - 330px);min-height:120px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#C6CEDB transparent}
.axo .toc em,.axo .toc-m summary{font-style:normal;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--t2)}
.axo .toc ol,.axo .toc-m ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}
.axo .toc li,.axo .toc-m li{margin:0;padding:0}
.axo .toc li::before,.axo .toc-m li::before,.axo .toc li::marker,.axo .toc-m li::marker{content:none}
.axo .toc a,.axo .toc-m a{display:block;padding:5px 0;font-size:13px;line-height:1.45;color:var(--ink2);text-decoration:none}
.axo .toc a:hover,.axo .toc-m a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.axo details.toc-m{display:none;background:var(--soft2);border-radius:14px;padding:4px 16px;margin:0 0 18px}
.axo details.toc-m summary{cursor:pointer;padding:12px 0;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}
.axo details.toc-m summary::-webkit-details-marker{display:none}
.axo details.toc-m summary::after{content:"";flex:none;width:8px;height:8px;border-right:2px solid var(--t2);border-bottom:2px solid var(--t2);transform:rotate(45deg);margin-right:4px;transition:transform 160ms ease}
.axo details.toc-m[open] summary::after{transform:rotate(-135deg)}
.axo details.toc-m ol{padding:0 0 12px}
.axo details.toc-m a{padding:9px 0;font-size:14px}
/* interligne propre aux deux blocs du gabarit posés DANS l'article : ils prenaient celui de l'ancienne enveloppe de
   l'article (1,6 sur trois anciens simulateurs, 1,75 ailleurs) */
.axo .who-box,.axo details.toc-m{line-height:1.75}
.axo .who-box{background:var(--soft);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:12px;margin:28px 0}
.axo .who-box .wt{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.axo .who-box .wt em{font-style:normal;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--link)}
.axo .who-box .big{font-family:var(--t)!important;font-size:19px;font-weight:800;line-height:1.3;color:var(--navy);text-wrap:balance}
.axo .who-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.axo .who-grid a{text-decoration:none!important;color:var(--navy)!important;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px;transition:border-color 160ms ease}
.axo .who-grid a:hover{border-color:var(--blue)}
.axo .who-grid strong{font-size:15px;line-height:1.35;color:var(--navy);font-weight:700}
.axo .who-grid span{font-size:13px;line-height:1.5;color:var(--t2)}
.axo .who-grid b{font-size:13px;line-height:1.4;color:var(--blue);font-weight:700}

/* ---------- Barre fixe sur téléphone et tablette (bloc « active ») ---------- */
.axo .axo-barre{display:none}
@media (max-width:904px){
  .axo main.seo{padding:28px 16px 32px;gap:24px}
  .axo main.seo>article>.actav-page{padding-left:0!important;padding-right:0!important}
  .axo main.seo>aside{flex-basis:100%;min-width:0;order:2}
  .axo .side{position:static}
  .axo .side>a.active,.axo .side>.actav,.axo .side>.toc{display:none}
  .axo details.toc-m{display:block}
  .axo .axo-barre{display:block;position:fixed;left:0;right:0;bottom:0;z-index:9990;background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(10,22,40,.10);padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));transform:translateY(110%);visibility:hidden;transition:transform 220ms cubic-bezier(.22,1,.36,1),visibility 0s linear 220ms}
  .axo .axo-barre.is-on{transform:none;visibility:visible;transition:transform 220ms cubic-bezier(.22,1,.36,1),visibility 0s}
  .axo .axo-barre a.active{box-shadow:none;border-radius:12px;padding:10px 14px;min-height:56px}
  .axo .axo-barre a.btn.btn{display:flex;align-items:center;justify-content:center;min-height:52px}
  html.axo-page #actav-biblio-fab,html.axo-page #acb-bubble{display:none!important}
  html.axo-page.axo-barre-on body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:600px){
  .axo .band-in{padding:9px 16px}
  .axo .band p{font-size:13.5px}
  .axo .pub{gap:12px}
  .axo .pub .acts{width:100%}
  .axo .detail .row{padding:12px 14px;gap:10px}
  .axo .detail .th{padding:10px 14px}
  .axo .timeline li{grid-template-columns:96px minmax(0,1fr);padding:12px 14px;gap:10px}
  .axo .doc{padding:18px 16px}
  .axo .mail-row button.envoi{flex:1 1 100%}
  .axo .duo{grid-template-columns:minmax(0,1fr)}
  .axo .detail .cmp{grid-template-columns:minmax(0,1fr)}
  .axo .detail .cmp>div+div{border-left:0;border-top:1px solid var(--line)}
}
@media (max-width:380px){
  .axo .hero-in{padding:12px 12px 28px}
  .axo .tool{border-radius:16px;padding:16px 14px}
  .axo .tool h2{font-size:21px!important}
  .axo .detail .row{flex-wrap:wrap}
  .axo .detail .row>strong{margin-left:auto}
  .axo .chips>*{white-space:normal;text-align:left}
  .axo .timeline li{grid-template-columns:minmax(0,1fr);gap:2px}
  /* carte de conversion : le pictogramme passe au-dessus du texte, qui reprend toute la largeur de la carte */
  .axo .cta-card .top{flex-direction:column;gap:10px}
}
@media (prefers-reduced-motion:reduce){
  .axo .opt,.axo .opt .dot,.axo .seg button,.axo .bar i,.axo .axo-barre,.axo .check,.axo .field>:is(input,select,textarea),.axo a,.axo button{transition:none!important}
}
@media print{
  .axo .band,.axo .pub,.axo .axo-barre,.axo main.seo>aside,.axo .mail,.axo .nav{display:none!important}
  .axo .tool{box-shadow:none;border-color:#999}
}
/* « Imprimer / PDF du résultat » : seule la carte de l'outil part à l'impression (le moteur pose la classe sur <html>
   le temps de l'impression). Tout élément qui ne contient pas la carte, n'est pas la carte et n'est pas dedans est retiré ;
   le pied d'impression d'un calculateur de délai (.dly-print-only) reste. */
@media print{
  html.axo-impression body *:not(:has(.tool)):not(.tool):not(.tool *):not(.dly-print-only):not(.dly-print-only *){display:none!important}
  html.axo-impression .axo{margin-top:0!important}
  html.axo-impression .axo .hero,html.axo-impression .axo .hero-in{padding:0!important;background:none!important}
  html.axo-impression .axo .tool{max-width:none!important;border:0!important;padding:0!important}
  html.axo-impression .axo .tool :is(.mail,.acts-res,.edit,.axo-moteur){display:none!important}
}

/* ---------- Simulateurs ---------- */
/* L'ancienne page posait l'article et sa colonne en grille (.layout-wrap, 1fr + 320 px) : dans le gabarit, l'article
   prend toute la largeur de sa colonne, sans les marges ni la gouttière de l'ancienne grille. */
.axo[data-famille="simulateur"] main.seo>article>.actav-sim{display:block!important;max-width:none!important;margin:0!important;padding:0!important}
.axo[data-famille="simulateur"] main.seo>article .layout-wrap{display:block!important;max-width:none!important;margin:0!important;padding:0!important}
.axo[data-famille="simulateur"] main.seo>article .layout-wrap>div{grid-column:auto!important}
.axo[data-famille="simulateur"] main.seo>article .article-col{max-width:none!important;margin:0!important;padding:0!important;min-width:0}
/* Titre de l'ancienne carte et sa phrase, repris en tête de l'article ; blocs de fin de page (sources, mention) */
.axo[data-famille="simulateur"] main.seo>article .axo-mode{margin:0 0 24px}
.axo[data-famille="simulateur"] main.seo>article .axo-mode>h2{margin-top:0!important}
.axo[data-famille="simulateur"] main.seo>article .axo-suite{margin-top:28px}
/* Une ligne de détail peut porter un texte (barème appliqué, régime retenu) et non un montant : elle revient à la ligne. */
.axo[data-famille="simulateur"] .detail .row>strong{white-space:normal;max-width:58%;overflow-wrap:anywhere}
/* Tableau d'origine repris dans le résultat (échéancier annuel d'un crédit) : replié, défilement horizontal si besoin */
.axo .tool details.tab{border:1px solid var(--line);border-radius:12px;padding:0 16px;background:#fff}
.axo .tool details.tab summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;line-height:1.4;font-weight:700;color:var(--navy);list-style:none}
.axo .tool details.tab summary::-webkit-details-marker{display:none}
.axo .tool details.tab summary::after{content:"";flex:none;width:8px;height:8px;border-right:2px solid var(--t2);border-bottom:2px solid var(--t2);transform:rotate(45deg);margin-right:4px;transition:transform 160ms ease}
.axo .tool details.tab[open] summary::after{transform:rotate(-135deg)}
.axo .tool details.tab .tab-in{overflow-x:auto;padding:0 0 14px;-webkit-overflow-scrolling:touch}
.axo .tool details.tab table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.4;font-variant-numeric:tabular-nums;margin:0}
.axo .tool details.tab :is(th,td){padding:8px 10px;text-align:right;border:0;border-bottom:1px solid var(--line);white-space:nowrap;color:var(--navy);background:none}
.axo .tool details.tab th{font-weight:700;color:var(--ink2);background:var(--soft2)}
.axo .tool details.tab :is(th,td):first-child{text-align:left}
