/* En règle — généré depuis tokens.json par scripts/design_tokens.py ; ne pas modifier à la main */
:root,
[data-theme="light"] {
  --surface: #ffffff;
  --surface-alt: #f2f6f5;
  --ink: #14201e;
  --ink-muted: #46524f;
  --border: #d3dcda;
  --border-input: #5d6b68;
  --primary: #0b5f5a;
  --primary-hover: #074541;
  --on-primary: #ffffff;
  --primary-soft: #e3f1ef;
  --link: #0b5f5a;
  --link-visited: #5b3492;
  --focus-ring: #14201e;
  --focus-highlight: #ffd84d;
  --on-focus-highlight: #14201e;
  --concerne: #b45f06;
  --concerne-ink: #7a4300;
  --concerne-soft: #fff3e0;
  --libre: #2e8a50;
  --libre-ink: #1d6b3a;
  --libre-soft: #e8f4ec;
  --verifier: #2f6fbd;
  --verifier-ink: #1f5fa8;
  --verifier-soft: #e8f0fa;
  --error: #b3261e;
  --error-soft: #fdecea;
  --shadow-sticky: 0 -1px 0 #d3dcda, 0 -4px 16px rgba(20,32,30,0.08);
}
[data-theme="dark"] {
  --surface: #0f1716;
  --surface-alt: #17221f;
  --ink: #e8efed;
  --ink-muted: #a9b7b3;
  --border: #2c3a37;
  --border-input: #8a9a96;
  --primary: #5fc4b8;
  --primary-hover: #86d6cc;
  --on-primary: #062a27;
  --primary-soft: #12302d;
  --link: #7fd3c8;
  --link-visited: #c3a6ee;
  --focus-ring: #e8efed;
  --focus-highlight: #ffd84d;
  --on-focus-highlight: #14201e;
  --concerne: #f0a24a;
  --concerne-ink: #ffcf8a;
  --concerne-soft: #33240f;
  --libre: #5cbf7f;
  --libre-ink: #8fd6a6;
  --libre-soft: #12291b;
  --verifier: #6ea6e6;
  --verifier-ink: #9cc3f0;
  --verifier-soft: #13233a;
  --error: #ff9b92;
  --error-soft: #3a1513;
  --shadow-sticky: 0 -1px 0 #2c3a37, 0 -4px 16px rgba(0,0,0,0.4);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --surface: #0f1716;
    --surface-alt: #17221f;
    --ink: #e8efed;
    --ink-muted: #a9b7b3;
    --border: #2c3a37;
    --border-input: #8a9a96;
    --primary: #5fc4b8;
    --primary-hover: #86d6cc;
    --on-primary: #062a27;
    --primary-soft: #12302d;
    --link: #7fd3c8;
    --link-visited: #c3a6ee;
    --focus-ring: #e8efed;
    --focus-highlight: #ffd84d;
    --on-focus-highlight: #14201e;
    --concerne: #f0a24a;
    --concerne-ink: #ffcf8a;
    --concerne-soft: #33240f;
    --libre: #5cbf7f;
    --libre-ink: #8fd6a6;
    --libre-soft: #12291b;
    --verifier: #6ea6e6;
    --verifier-ink: #9cc3f0;
    --verifier-soft: #13233a;
    --error: #ff9b92;
    --error-soft: #3a1513;
    --shadow-sticky: 0 -1px 0 #2c3a37, 0 -4px 16px rgba(0,0,0,0.4);
  }
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-24: 96px;
  --radius-control: 6px;
  --radius-card: 12px;
  --radius-pill: 9999px;
  --control-height: 48px;
  --target-min: 44px;
  --choice-size: 32px;
  --border-input-width: 2px;
  --focus-width: 3px;
  --page-max: 960px;
  --measure: 640px;
  --font-sans: "Atkinson Hyperlegible Next", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-mono: "Atkinson Hyperlegible Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
}

/* Base : tout composant vit dans un conteneur .er */
.er{font-family:var(--font-sans);font-size:18px;line-height:28px;color:var(--ink);background:var(--surface);-webkit-text-size-adjust:100%}
.er,.er *,.er *::before,.er *::after{box-sizing:border-box}
.er h1,.er h2,.er h3,.er p,.er ul,.er ol,.er dl,.er dd,.er fieldset,.er legend{margin:0}
.er fieldset{border:0;padding:0;min-width:0}
.er legend{padding:0}
.er :focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:2px}
.er a{color:var(--link);text-decoration-line:underline;text-decoration-thickness:max(1px,.0625rem);text-underline-offset:.16em}
.er a:hover{text-decoration-thickness:max(3px,.1875rem)}
.er a:focus-visible{outline:3px solid transparent;background:var(--focus-highlight);color:var(--on-focus-highlight);box-shadow:0 -2px var(--focus-highlight),0 3px var(--focus-ring);text-decoration:none}
.er .er-sources a:visited{color:var(--link-visited)}
.er .er-masque{position:absolute!important;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.er .er-pile{display:flex;flex-direction:column;gap:var(--space-6);max-width:var(--measure)}
.er .er-num{font-variant-numeric:tabular-nums}
.er .er-insecable{white-space:nowrap}
.er .er-aide{font-size:16px;line-height:24px;color:var(--ink-muted)}
.er .er-glyphe{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (prefers-reduced-motion:reduce){.er *{transition:none!important;animation:none!important}}

/* Bouton */
.er .er-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-height);padding:var(--space-2) var(--space-6);border:2px solid transparent;border-radius:var(--radius-control);font:inherit;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}
.er .er-btn--primaire{background:var(--primary);color:var(--on-primary)}
.er .er-btn--primaire:hover{background:var(--primary-hover)}
.er .er-btn--secondaire{background:var(--surface);color:var(--primary);border-color:var(--primary)}
.er .er-btn--secondaire:hover{background:var(--primary-soft)}
.er .er-btn--plein{width:100%}
@media (min-width:48em){.er .er-btn--plein{width:auto}}
.er .er-retour{display:inline-flex;align-items:center;gap:var(--space-1);min-height:var(--target-min);font-size:16px;line-height:24px}
.er .er-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}
.er .er-barre{position:sticky;bottom:0;padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom,0px));background:var(--surface);box-shadow:var(--shadow-sticky)}

/* En-tête et pied */
.er .er-entete{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}
.er .er-marque{font-size:20px;line-height:28px;font-weight:700;color:var(--ink);text-decoration:none}
.er .er-prive{font-size:16px;line-height:24px;color:var(--ink-muted)}

/* Départ d'un outil */
.er .er-depart{display:flex;flex-direction:column;gap:var(--space-4);max-width:var(--measure)}
.er .er-depart h1{font-size:32px;line-height:40px;font-weight:700;text-wrap:balance}
.er .er-promesse{font-size:20px;line-height:30px}
.er .er-contrat,.er .er-prix-annonce{font-size:16px;line-height:24px;color:var(--ink-muted)}
@media (min-width:48em){.er .er-depart h1{font-size:44px;line-height:52px}}

/* Champs */
.er .er-champ{display:flex;flex-direction:column;gap:var(--space-2)}
.er .er-label{font-weight:700}
.er .er-input{width:100%;max-width:20.5em;min-height:var(--control-height);padding:var(--space-2) var(--space-3);border:var(--border-input-width) solid var(--border-input);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font:inherit}
.er .er-input:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:2px;box-shadow:inset 0 0 0 2px var(--border-input)}
.er .er-input--2{max-width:3.75em}
.er .er-input--4{max-width:5.5em}
.er .er-date{display:flex;flex-wrap:wrap;gap:var(--space-4)}
.er .er-date .er-champ{gap:var(--space-1)}
.er .er-date .er-label{font-weight:400;font-size:16px;line-height:24px}

/* Question et cartes de choix */
.er .er-question{display:flex;flex-direction:column;gap:var(--space-6);max-width:var(--measure)}
.er .er-etape{font-size:16px;line-height:24px;color:var(--ink-muted)}
.er .er-question legend{margin-bottom:var(--space-2)}
.er .er-question h1{font-size:28px;line-height:36px;font-weight:700;text-wrap:balance}
@media (min-width:48em){.er .er-question h1{font-size:36px;line-height:44px}}
.er .er-choix{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}
.er .er-carte-choix{display:flex;align-items:flex-start;gap:var(--space-3);min-height:var(--target-min);padding:var(--space-3) var(--space-4);border:1px solid var(--border-input);border-radius:var(--radius-control);background:var(--surface);cursor:pointer}
.er .er-carte-choix:has(input:checked){border-color:var(--primary);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}
.er .er-carte-choix input{appearance:none;-webkit-appearance:none;display:grid;place-content:center;width:var(--choice-size);height:var(--choice-size);flex:none;margin:-2px 0 0;border:var(--border-input-width) solid var(--border-input);border-radius:50%;background:var(--surface)}
.er .er-carte-choix input::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--primary);transform:scale(0)}
.er .er-carte-choix input:checked{border-color:var(--primary)}
.er .er-carte-choix input:checked::before{transform:scale(1)}
.er .er-carte-choix input:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:2px}
.er .er-carte-choix__texte{display:flex;flex-direction:column}
.er .er-carte-choix__titre{font-weight:700}
.er .er-carte-choix__desc{font-size:16px;line-height:24px;color:var(--ink-muted)}
.er .er-ou{font-size:16px;line-height:24px;color:var(--ink-muted)}

/* Erreurs */
.er .er-erreurs{display:flex;flex-direction:column;gap:var(--space-2);max-width:var(--measure);padding:var(--space-4) var(--space-6);border:4px solid var(--error);border-radius:var(--radius-control)}
.er .er-erreurs h2{font-size:24px;line-height:32px;font-weight:700}
.er .er-erreurs ul{display:flex;flex-direction:column;gap:var(--space-1);padding:0;list-style:none}
.er .er-erreurs a{color:var(--error);font-weight:700}
.er .er-champ--erreur{padding-left:var(--space-4);border-left:4px solid var(--error)}
.er .er-message-erreur{color:var(--error);font-weight:700}
.er .er-champ--erreur .er-input{border-color:var(--error)}

/* Verdict */
.er .er-verdict{display:flex;flex-direction:column;gap:var(--space-4);max-width:var(--measure);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}
.er .er-statut{display:inline-flex;align-self:flex-start;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:16px;line-height:24px;font-weight:700}
.er .er-statut--concerne{background:var(--concerne-soft);color:var(--concerne-ink)}
.er .er-statut--libre{background:var(--libre-soft);color:var(--libre-ink)}
.er .er-statut--verifier{background:var(--verifier-soft);color:var(--verifier-ink)}
.er .er-verdict h2{font-size:24px;line-height:32px;font-weight:700;text-wrap:balance}
@media (min-width:48em){.er .er-verdict h2{font-size:28px;line-height:36px}}
.er .er-chiffres{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}
.er .er-chiffres dt{font-size:16px;line-height:24px;color:var(--ink-muted)}
.er .er-chiffres dd{font-size:28px;line-height:36px;font-weight:700;font-variant-numeric:tabular-nums}

/* Échéancier */
.er .er-echeancier{display:flex;flex-direction:column;max-width:var(--measure);padding:0;list-style:none}
.er .er-echeance{display:grid;grid-template-columns:7.5rem 1fr;gap:var(--space-4);padding:var(--space-4) 0;border-top:1px solid var(--border)}
.er .er-echeance:last-child{border-bottom:1px solid var(--border)}
.er .er-echeance__date{font-family:var(--font-mono);font-size:16px;line-height:28px;font-variant-numeric:tabular-nums;color:var(--ink-muted)}
.er .er-echeance__titre{font-weight:700}
.er .er-echeance__note{font-size:16px;line-height:24px;color:var(--ink-muted)}
.er .er-echeance--passee .er-echeance__titre{font-weight:400;color:var(--ink-muted)}
.er .er-echeance--vous{padding-left:var(--space-3);padding-right:var(--space-3);border-top-color:transparent;border-radius:var(--radius-control);background:var(--concerne-soft)}
.er .er-echeance--vous+.er-echeance{border-top-color:transparent}
.er .er-echeance--vous .er-echeance__date{font-weight:700;color:var(--concerne-ink)}
@media (max-width:30em){.er .er-echeance{grid-template-columns:1fr;gap:var(--space-1)}}

/* Source */
.er .er-source{display:flex;flex-direction:column;gap:var(--space-3);max-width:var(--measure);padding:var(--space-4) var(--space-6);border-radius:var(--radius-card);background:var(--surface-alt);font-size:16px;line-height:24px}
.er .er-source__vigueur{font-weight:700}
.er .er-source__ref{font-family:var(--font-mono)}
.er .er-source ul{display:flex;flex-direction:column;gap:var(--space-1);padding-left:var(--space-6)}

/* Offre payante */
.er .er-offre{display:flex;flex-direction:column;gap:var(--space-4);max-width:var(--measure);padding:var(--space-6);border:2px solid var(--primary);border-radius:var(--radius-card);background:var(--surface)}
.er .er-offre h2{font-size:24px;line-height:32px;font-weight:700}
.er .er-offre__liste{display:flex;flex-direction:column;gap:var(--space-2);padding:0;list-style:none}
.er .er-offre__liste li{display:flex;align-items:flex-start;gap:var(--space-2)}
.er .er-offre__liste .er-glyphe{margin-top:4px;color:var(--primary)}
.er .er-prix-total{font-size:28px;line-height:36px;font-weight:700;font-variant-numeric:tabular-nums}
.er .er-prix-detail,.er .er-garantie{font-size:16px;line-height:24px;color:var(--ink-muted)}
.er .er-consentement{display:flex;align-items:flex-start;gap:var(--space-3);font-size:16px;line-height:24px;cursor:pointer}
.er .er-consentement input{appearance:none;-webkit-appearance:none;display:grid;place-content:center;width:var(--choice-size);height:var(--choice-size);flex:none;margin:0;border:var(--border-input-width) solid var(--border-input);border-radius:var(--radius-control);background:var(--surface)}
.er .er-consentement input::before{content:"";width:16px;height:9px;margin-top:-4px;border:solid var(--on-primary);border-width:0 0 3px 3px;transform:rotate(-45deg) scale(0)}
.er .er-consentement input:checked{border-color:var(--primary);background:var(--primary)}
.er .er-consentement input:checked::before{transform:rotate(-45deg) scale(1)}

/* Récapitulatif */
.er .er-recap{max-width:var(--measure)}
.er .er-recap__ligne{display:grid;grid-template-columns:1fr auto;gap:var(--space-1) var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}
.er .er-recap__ligne:first-child{border-top:1px solid var(--border)}
.er .er-recap dt{grid-column:1;font-weight:700}
.er .er-recap dd{grid-column:1}
.er .er-recap__modifier{display:inline-flex;align-items:flex-start;grid-column:2;grid-row:1/span 2;align-self:start;min-height:var(--target-min)}
@media (min-width:48em){.er .er-recap__ligne{grid-template-columns:2fr 3fr auto}.er .er-recap dd{grid-column:2;grid-row:1}.er .er-recap__modifier{grid-column:3;grid-row:1}}

/* Mise en page du site, en plus des jetons (docs/design/tokens.css) et des composants (docs/design/composants.css). */
@font-face{font-family:"Atkinson Hyperlegible Next";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/polices/AtkinsonHyperlegibleNext-Regular.woff2) format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible Next";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/polices/AtkinsonHyperlegibleNext-Bold.woff2) format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible Mono";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/polices/AtkinsonHyperlegibleMono-Regular.woff2) format("woff2")}

html{background:var(--surface);color-scheme:light dark}
:root[data-theme="light"]{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}
body.er{margin:0;min-height:100vh;display:flex;flex-direction:column}
.er [hidden]{display:none!important}
.er .page{width:100%;max-width:var(--page-max);margin:0 auto;padding:0 var(--space-4)}
@media (min-width:48em){.er .page{padding:0 var(--space-8)}}
.er .evitement{position:absolute;left:var(--space-4);top:-100px;z-index:10;padding:var(--space-2) var(--space-4);background:var(--surface);border-radius:var(--radius-control)}
.er .evitement:focus{top:var(--space-2)}

/* En-tête et pied de page */
.er .site-entete{border-bottom:1px solid var(--border)}
.er .site-entete .page{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-4);padding-top:var(--space-3);padding-bottom:var(--space-3)}
.er .site-pied{margin-top:auto;padding:var(--space-8) 0 var(--space-12);border-top:1px solid var(--border);background:var(--surface-alt);font-size:16px;line-height:24px}
.er .site-pied .page{display:flex;flex-direction:column;gap:var(--space-4)}
.er .site-pied ul{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin:0;padding:0;list-style:none}
.er .site-pied li a{display:inline-flex;align-items:center;min-height:var(--target-min)}
.er .site-pied p{color:var(--ink-muted)}
.er main{padding:var(--space-6) 0 var(--space-16)}
@media (min-width:48em){.er main{padding-top:var(--space-12)}}

/* Contenu rédigé sous l'outil */
.er .contenu{display:flex;flex-direction:column;gap:var(--space-12);margin-top:var(--space-12)}
.er .section{display:flex;flex-direction:column;gap:var(--space-4);max-width:var(--measure)}
.er .section h2{font-size:24px;line-height:32px;font-weight:700;text-wrap:balance}
@media (min-width:48em){.er .section h2{font-size:28px;line-height:36px}}
.er .section h3{font-size:20px;line-height:28px;font-weight:700}
.er .section ul,.er .section ol{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding-left:var(--space-6)}
.er .section p+p{margin-top:0}
.er .tableau-defile{max-width:100%;overflow-x:auto}
.er table{width:100%;border-collapse:collapse;font-size:16px;line-height:24px}
.er caption{text-align:left;font-weight:700;padding-bottom:var(--space-2)}
.er th,.er td{padding:var(--space-3) var(--space-3) var(--space-3) 0;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
.er th{font-weight:700}
.er td.date,.er .date-courte{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.er .faq{display:flex;flex-direction:column;border-top:1px solid var(--border)}
.er .faq details{border-bottom:1px solid var(--border)}
.er .faq summary{display:block;min-height:var(--target-min);padding:var(--space-3) var(--space-8) var(--space-3) 0;font-weight:700;cursor:pointer;list-style:none;position:relative}
.er .faq summary::-webkit-details-marker{display:none}
.er .faq summary::after{content:"";position:absolute;right:var(--space-2);top:50%;width:10px;height:10px;margin-top:-7px;border:solid var(--ink);border-width:0 2px 2px 0;transform:rotate(45deg)}
.er .faq details[open] summary::after{margin-top:-2px;transform:rotate(-135deg)}
.er .faq details>div{display:flex;flex-direction:column;gap:var(--space-3);padding:0 0 var(--space-4)}
.er .maj{font-size:16px;line-height:24px;color:var(--ink-muted)}

/* Outil en plusieurs écrans */
.er .outil{display:flex;flex-direction:column;gap:var(--space-6)}
.er .outil form{display:flex;flex-direction:column;gap:var(--space-6);max-width:var(--measure)}
.er .ecran{display:flex;flex-direction:column;gap:var(--space-6);max-width:var(--measure)}
.er .ecran:focus{outline:none}
.er .ecran h2.er-titre-question{font-size:28px;line-height:36px;font-weight:700;text-wrap:balance}
@media (min-width:48em){.er .ecran h2.er-titre-question{font-size:36px;line-height:44px}}
.er .ecran legend{margin-bottom:var(--space-2)}
.er .aide-depliable summary{display:inline-block;min-height:var(--target-min);padding:10px 0;color:var(--link);text-decoration:underline;text-underline-offset:.16em;cursor:pointer;font-size:16px;line-height:24px}
.er .aide-depliable>div{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);background:var(--surface-alt);font-size:16px;line-height:24px}
.er .case-option{display:flex;align-items:flex-start;gap:var(--space-3);font-size:16px;line-height:24px;cursor:pointer;min-height:var(--target-min);padding-top:var(--space-2)}
.er .case-option input{appearance:none;-webkit-appearance:none;display:grid;place-content:center;width:var(--choice-size);height:var(--choice-size);flex:none;margin:-4px 0 0;border:var(--border-input-width) solid var(--border-input);border-radius:var(--radius-control);background:var(--surface)}
.er .case-option input::before{content:"";width:16px;height:9px;margin-top:-4px;border:solid var(--on-primary);border-width:0 0 3px 3px;transform:rotate(-45deg) scale(0)}
.er .case-option input:checked{border-color:var(--primary);background:var(--primary)}
.er .case-option input:checked::before{transform:rotate(-45deg) scale(1)}
.er .case-option input:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:2px}
.er .resultat{display:flex;flex-direction:column;gap:var(--space-6);max-width:var(--measure)}
.er .resultat:focus{outline:none}
.er .resultat .er-verdict p+p{margin-top:0}
.er .a-faire{display:flex;flex-direction:column;gap:var(--space-3)}
.er .a-faire h3{font-size:20px;line-height:28px;font-weight:700}
.er .a-faire ul{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding-left:var(--space-6)}
.er .noscript{padding:var(--space-4);border-radius:var(--radius-control);background:var(--surface-alt)}

/* Carte grise schématique (aide « Où trouver la date ») */
.er .carte-grise{width:100%;max-width:320px;height:auto;color:var(--ink)}
.er .carte-grise .cadre{fill:var(--surface);stroke:var(--border-input);stroke-width:2}
.er .carte-grise .ligne{fill:var(--border)}
.er .carte-grise .case-b{fill:var(--concerne-soft);stroke:var(--concerne);stroke-width:2}
.er .carte-grise text{fill:currentColor;font-family:var(--font-mono);font-size:13px}

/* Accueil */
.er .accueil-intro{display:flex;flex-direction:column;gap:var(--space-4);max-width:var(--measure)}
.er .accueil-intro h1{font-size:32px;line-height:40px;font-weight:700;text-wrap:balance}
@media (min-width:48em){.er .accueil-intro h1{font-size:44px;line-height:52px}}
.er .accueil-intro p{font-size:20px;line-height:30px}
.er .liste-outils,.er .section .liste-outils{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--border);max-width:var(--measure)}
.er .liste-outils li{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}
.er .liste-outils a{font-size:20px;line-height:28px;font-weight:700}
.er .liste-outils p{color:var(--ink-muted)}
.er .page-texte{display:flex;flex-direction:column;gap:var(--space-8);max-width:var(--measure)}
.er .page-texte h1{font-size:32px;line-height:40px;font-weight:700;text-wrap:balance}
@media (min-width:48em){.er .page-texte h1{font-size:44px;line-height:52px}}
.er .page-texte dl{display:grid;grid-template-columns:1fr;gap:var(--space-1) var(--space-6);margin:0}
.er .page-texte dt{font-weight:700;margin-top:var(--space-3)}
@media (min-width:48em){.er .page-texte dl{grid-template-columns:14rem 1fr}.er .page-texte dt{margin-top:0}}

/* Adresse avec propositions (liste sous le champ) */
.er .combo{position:relative;max-width:var(--measure)}
.er .combo .er-input{max-width:100%}
.er .propositions{position:absolute;left:0;right:0;top:100%;z-index:5;margin:var(--space-1) 0 0;padding:0;list-style:none;border:var(--border-input-width) solid var(--border-input);border-radius:var(--radius-control);background:var(--surface);max-height:18rem;overflow-y:auto}
.er .propositions li{display:flex;align-items:center;min-height:var(--target-min);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);cursor:pointer}
.er .propositions li:last-child{border-bottom:0}
.er .propositions li[aria-selected="true"],.er .propositions li:hover{background:var(--primary-soft)}
.er .secours{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-card);background:var(--surface-alt)}
.er select.er-input{appearance:none;-webkit-appearance:none;padding-right:var(--space-8);background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.er .er-choix--ligne{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:30em){.er .er-choix--ligne{grid-template-columns:repeat(4,minmax(0,1fr))}}
.er .paiement-a-venir{padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);background:var(--surface-alt);font-size:16px;line-height:24px}
.er .a-faire ol{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding-left:var(--space-6)}
.er .section .er-echeancier{padding:0;gap:0}

.er .pile-champs{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-2) 0 var(--space-2) var(--space-4);border-left:2px solid var(--border)}
.er .er-echeance__date--texte{font-family:var(--font-sans)}

/* Commande, rétractation */
.er .commande{display:flex;flex-direction:column;gap:var(--space-6);max-width:var(--measure)}
.er .commande h1{font-size:32px;line-height:40px;font-weight:700;text-wrap:balance}
@media (min-width:48em){.er .commande h1{font-size:40px;line-height:48px}}
.er .commande h1:focus{outline:none}
.er .commande__livrables{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding-left:var(--space-6)}
.er .commande__prix{font-weight:700;font-variant-numeric:tabular-nums}
.er .commande__form{display:flex;flex-direction:column;gap:var(--space-6)}
.er .commande__accords{display:flex;flex-direction:column;gap:var(--space-4);margin:0;padding:0;border:0;min-width:0}
.er .commande__titre{font-size:24px;line-height:32px;font-weight:700}
.er .commande__note{font-size:16px;line-height:24px;color:var(--ink-muted)}
.er .commande__ferme{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-6);border:2px solid var(--primary);border-radius:var(--radius-card)}
.er .commande__ferme h2{font-size:24px;line-height:32px;font-weight:700}
.er .commande__ferme:focus,.er .commande__erreur:focus{outline:none}
.er .commande__erreur{padding:var(--space-3) var(--space-4);border-left:4px solid var(--error);background:var(--surface-alt)}
.er .er-consentement{min-height:var(--target-min)}
.er .er-consentement input{font-size:18px}
.er .pied-renoncer{color:var(--ink)}
.er .pied-renoncer a{display:inline-flex;align-items:center;min-height:var(--target-min);font-weight:700}

/* Document payé : lettre au vendeur */
.er .er-zone{max-width:100%;min-height:calc(3 * 28px + 2 * var(--space-2));resize:vertical;line-height:28px}
.er .document__attente{color:var(--ink-muted)}
.er .document__apercu{padding:var(--space-2) var(--space-4);border-left:4px solid var(--verifier,var(--primary));background:var(--surface-alt);font-weight:700}
.er .document__confirmation{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface-alt)}
.er .document__confirmation h2{font-size:20px;line-height:28px;font-weight:700}
.er .document__copie:empty{display:none}
.er .lettre{display:flex;flex-direction:column;gap:var(--space-4);max-width:var(--measure);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);font-size:16px;line-height:26px}
@media (min-width:48em){.er .lettre{padding:var(--space-12)}}
.er .lettre p{margin:0}
.er .lettre ul{margin:0;padding-left:var(--space-6)}
.er .lettre__destinataire{align-self:flex-end;text-align:left;min-width:50%}
.er .lettre__date{align-self:flex-end}
.er .lettre__signature{margin-top:var(--space-4)}
.er .lettre__apercu{font-weight:700;color:var(--error)}
@media print{
  @page{size:A4;margin:20mm}
  .er .site-entete,.er .site-pied,.er .evitement,.er [data-lettre] > :not([data-ecran="lettre"]),.er [data-ecran="lettre"] > :not(.lettre){display:none!important}
  .er main{padding:0}
  .er .page{padding:0;max-width:none}
  .er .lettre{border:0;padding:0;max-width:none;font-size:11pt;line-height:1.45;color:#000;background:#fff}
}
.er .er-carte-choix input{font-size:18px}
.er .document__titre{font-size:32px;line-height:40px;font-weight:700}
@media (min-width:48em){.er .document__titre{font-size:40px;line-height:48px}}
@media print{.er .document__titre{display:none!important}}
.er [data-focus][tabindex="-1"]:focus{outline:none}
.er .offre-extrait{display:flex;flex-direction:column;gap:var(--space-2);margin:0}
.er .offre-extrait figcaption{font-size:16px;line-height:24px;font-weight:700}
.er .offre-extrait blockquote{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:var(--space-3) var(--space-4);border-left:4px solid var(--border);background:var(--surface-alt);font-size:16px;line-height:24px}
.er .offre-extrait blockquote p{margin:0}
.er .dossier__partie{display:flex;flex-direction:column;gap:var(--space-4)}
.er .dossier__partie h3{font-size:24px;line-height:32px;font-weight:700}
.er .dossier__consigne{font-size:16px;line-height:24px}
.er .dossier__texte{margin:0;padding:var(--space-3) var(--space-4);border-left:4px solid var(--border);background:var(--surface-alt);font-size:16px;line-height:24px}
.er .dossier__pieces{margin:0;padding-left:var(--space-6);font-size:16px;line-height:24px}
.er .dossier__tableau td.nombre,.er .dossier__tableau tfoot td{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.er .dossier__tableau tfoot th,.er .dossier__tableau tfoot td{font-weight:700}
.er .revision{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:0 0 var(--space-4);border:0;border-bottom:1px solid var(--border);min-width:0}
.er .er-input--montant{max-width:9em}
@media print{
  .er [data-dossier] > :not([data-ecran="dossier"]),.er [data-ecran="dossier"] .er-actions,.er [data-ecran="dossier"] .document__copie,.er [data-ecran="dossier"] .maj{display:none!important}
  .er [aria-labelledby="titre-etape-tableau"],.er [aria-labelledby="titre-etape-commission"]{break-before:page}
  .er [aria-labelledby="titre-etape-lettre"] .dossier__consigne{display:none}
  .er .tableau-defile{overflow:visible}
  .er .dossier__tableau{font-size:9pt}
}
@media print{
  .er .dossier__partie h3{break-after:avoid}
  .er .dossier__tableau tfoot{display:table-row-group}
  body.impression-envoi .er-verdict,body.impression-envoi [aria-labelledby="titre-etape-commission"],body.impression-envoi [data-delais],body.impression-envoi .dossier__partie h3,body.impression-envoi .dossier__consigne{display:none!important}
}
@media print{
  .er .dossier__partie h3{break-after:avoid}
  .er .dossier__tableau tfoot{display:table-row-group}
  body.impression-envoi .er-verdict,body.impression-envoi [aria-labelledby="titre-etape-commission"],body.impression-envoi [data-delais],body.impression-envoi .dossier__partie h3,body.impression-envoi .dossier__consigne{display:none!important}
}
@media print{body.impression-envoi .col-revise{display:none!important}}
.er .dossier__methode{font-size:16px;line-height:24px}
.er .dossier__tableau .col-bail{display:none}
@media print{body.impression-envoi .dossier__tableau .col-bail{display:table-cell!important}body.impression-envoi .dossier__tableau .col-paye{display:none!important}}
.er .er-choix--classes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (min-width:30em){.er .er-choix--classes{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* Cases à cocher dans les cartes de choix (plusieurs réponses) : carré, coche dessinée. */
.er .er-carte-choix--case input{border-radius:var(--radius-control)}
.er .er-carte-choix--case input::before{width:14px;height:8px;border-radius:0;background:none;border-left:3px solid var(--primary);border-bottom:3px solid var(--primary);transform:translateY(-2px) rotate(-45deg) scale(0)}
.er .er-carte-choix--case input:checked::before{transform:translateY(-2px) rotate(-45deg) scale(1)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.er sup{line-height:0}
