/* Test aligné sur la landing retenue le 01/10/2026 : police système, un seul vert (#0e7a3c), noir,
   pas de surlignage ni de pastille de couleur. Le squelette, les cases et leur disposition ne changent pas. */
:root { --ink: #111; --muted: #444; --control-radius: 6px; --box-radius: 6px; --box-line: #b9c2bd; }
html body, html body *:not(svg):not(path) { font-family: Arial, Helvetica, sans-serif !important; letter-spacing: 0 !important; }
/* Le titre de la landing garde son léger resserrement (même coupe que la variante choisie) */
html body .dr.s .landing-panel h1.s-title, html body .dr.s .landing-panel h1.s-title * { letter-spacing: -.01em !important; }

/* Questions : gras noir à la taille du constat de la landing, sans surlignage */
.step-panel > legend { font-size: clamp(18px, min(5.9vw, 3.75svh), 26px); font-weight: 700; line-height: 1.2; color: var(--ink); }
.q-mark { padding: 0; background: none; }

/* Aides : texte simple, sans pastille */
.help-chip { padding: 0; border-radius: 0; color: var(--ink); background: none; font-weight: 400; }
.help-chip svg { fill: var(--accent); }

/* Libellés et champs */
.field > span:first-child, .choice-field > legend { font-weight: 700; color: var(--ink); }

/* Boutons plats comme sur la landing */
.next-button { border-radius: 6px; box-shadow: none; font-weight: 700; }
.back-button { border-radius: 6px; }

/* Bandeau, résultat et calcul */
.gain-band strong { font-weight: 700; }
.confirmation-saving { font-weight: 700; }
.site-header .brand span { font-weight: 700; }

/* Pas de mot seul : « En savoir plus » ne se coupe pas */
.consent-note a { white-space: nowrap; }

/* Tailles communes au test (mêmes paliers que la landing) */
:root { --t-l: clamp(18px, min(5.9vw, 3.75svh), 26px); --t-m: clamp(14px, min(4.4vw, 2.75svh), 18px); --t-s: clamp(12px, min(3.6vw, 2.2svh), 14px); }

/* Aides sous le titre : alignées sur le titre, sans retrait */
.step-panel .help-chip { padding: 0 !important; margin-left: 0 !important; background: none !important; }
.help-chip strong { font-weight: 700; text-decoration: none; }

/* Récapitulatif : libellés simples, détails en phrases, mêmes bordures que les cases */
.review-list { border: 2px solid var(--box-line) !important; border-radius: var(--box-radius) !important; }
.review-row-label { color: var(--ink) !important; font-weight: 700 !important; text-transform: none !important; }
.review-row strong { font-weight: 700; }
.review-row-detail { color: #444 !important; }
.review-edit { color: var(--accent) !important; }

/* Coordonnées : case et texte du consentement à la même taille, alignés sur les champs */
.contact-panel .consent-checkbox, .contact-panel .consent-checkbox span, .contact-panel .consent-note { font-size: clamp(11px, min(3.2vw, 1.9svh), 13px) !important; line-height: 1.3 !important; color: var(--ink) !important; }
.contact-panel .consent-checkbox strong { font-weight: 700; text-decoration: none; }
.contact-panel .consent-note { margin-top: 3px !important; margin-bottom: 0 !important; padding: 0 !important; color: #444 !important; text-indent: 0 !important; }
.contact-panel .consent-note a { color: inherit; }

/* Calcul : même mise en page que les questions (titre à gauche en haut) */
.calculation-loading { display: block !important; min-height: 0 !important; padding-top: 24px; text-align: left !important; }
.calculation-loading h2 { margin: 0 0 22px !important; font-size: var(--t-l) !important; font-weight: 700 !important; line-height: 1.2; text-align: left !important; justify-self: start !important; }
.calculation-steps { width: 100% !important; gap: 16px !important; }
.calculation-steps li { font-size: var(--t-m) !important; }
.calculation-found { display: block !important; width: 100% !important; justify-self: start !important; margin: 26px 0 0 !important; padding: 0 !important; background: none !important; border-radius: 0 !important; font-size: var(--t-m) !important; font-weight: 700 !important; text-align: left !important; }
.calculation-found strong { color: var(--accent); }

/* Résultat : l'annonce, puis la suite en étapes 1, 2, 3 comme sur la landing */
.result-simple { padding: 20px 0 16px !important; }
.result-simple .result-head { margin-bottom: 22px; }
.result-simple .result-lead { text-wrap: balance !important; margin: 0 !important; font-size: var(--t-l) !important; font-weight: 700 !important; line-height: 1.2; color: var(--ink); }
.result-simple .confirmation-saving { margin: 6px 0 4px !important; padding: 0 !important; color: var(--accent) !important; font-size: clamp(40px, min(13vw, 8svh), 58px) !important; font-weight: 700 !important; line-height: 1.05; text-align: left !important; }
.result-simple .confirmation-saving sup { color: var(--ink); font-size: .32em; }
.result-simple .confirmation-sub { font-weight: 400 !important; margin: 0 !important; font-size: var(--t-m) !important; line-height: 1.35; text-align: left !important; color: var(--ink); }
.result-simple .confirmation-sub strong { color: var(--accent); }
.result-steps { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
.result-steps li { display: grid; grid-template-columns: 1.1em minmax(0, 1fr); column-gap: .45em; align-items: start; font-size: var(--t-m); }
.result-steps b { font-size: 1.7em; font-weight: 700; line-height: .95; color: var(--accent); }
.result-steps strong { display: block; font-size: var(--t-m); font-weight: 700; line-height: 1.25; color: var(--ink); }
.result-steps em { display: block; margin-top: 3px; font-size: var(--t-s); font-style: normal; line-height: 1.35; color: #333; }
.result-steps a { color: inherit; }
.result-steps .dr-tp { white-space: nowrap; }
.result-steps .dr-tp img { vertical-align: -1px; }
.result-simple .result-legal { margin-top: 18px !important; font-size: 12px !important; color: #444 !important; }

/* Note sous « Reste à payer » pour les prêts relais et in fine (même style que la note du mois) */
.field-note { display: block; margin-top: 4px; color: #444; font-size: clamp(11px, min(3.2vw, 1.9svh), 13px); line-height: 1.3; }
