/* Quiz INUAT. Identité d'inuat.fr : encre marine, bleu de la marque, Fraunces pour les titres,
   Instrument Sans pour le texte, angles arrondis. Téléphone d'abord.
   Aucun style n'est écrit dans les pages : la politique de sécurité du site les refuse. */

@font-face {
  font-family: "Fraunces"; font-style: normal; font-weight: 300 700; font-display: swap;
  src: url("../fonts/fraunces-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Instrument Sans"; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url("../fonts/instrument-sans-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  color-scheme: only light;
  --encre: #0e2444;
  --encre-2: #163663;
  --encre-douce: #4a5f86;
  --bleu: #2f6fdb;
  --bleu-fonce: #1f55b5;
  --ciel: #6ec1ff;
  --brume: #e8f1fd;
  --fond: #f4f7fb;
  --papier: #ffffff;
  --ligne: #d3deec;
  --ligne-forte: #a9bad3;
  --alerte: #a8231c;
  --alerte-fond: #fdeeed;
  --degrade: linear-gradient(135deg, #0e2444 0%, #163663 48%, #2f6fdb 100%);
  --ombre: 0 1px 2px rgba(14, 36, 68, 0.06), 0 14px 34px -20px rgba(14, 36, 68, 0.3);
  --r: 20px;
  --r-sm: 14px;
  --serif: "Fraunces", Georgia, "Times New Roman", serif;
  --sans: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --aise: cubic-bezier(0.2, 0.7, 0.2, 1);
  --colonne: 640px;
}

*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 96px; }
body { margin: 0; font-family: var(--sans); font-size: 1rem; line-height: 1.55; color: var(--encre); background: var(--fond); -webkit-font-smoothing: antialiased; }
h1, h2, h3 { font-family: var(--serif); font-weight: 600; line-height: 1.12; letter-spacing: -0.012em; margin: 0 0 0.5em; font-optical-sizing: auto; text-wrap: balance; }
p { margin: 0 0 1em; }
a { color: var(--bleu-fonce); }
button, input { font: inherit; color: inherit; }
:focus-visible { outline: 3px solid var(--ciel); outline-offset: 2px; }
[tabindex="-1"]:focus { outline: none; }

/* En-tête et colonne */
.tete { max-width: var(--colonne); margin: 0 auto; padding: 16px 16px 0; }
.marque { display: inline-flex; align-items: center; gap: 9px; font-family: var(--serif); font-weight: 700; font-size: 1.12rem; letter-spacing: 0.02em; color: var(--encre); }
.marque svg { width: 26px; height: 26px; flex: 0 0 auto; }
.page { max-width: var(--colonne); margin: 0 auto; padding: 4px 16px 48px; }
.page--large, .tete--large { max-width: 980px; }
.erreur-chargement { margin: 24px 0; padding: 14px 16px; border-radius: var(--r-sm); background: var(--alerte-fond); color: var(--alerte); font-weight: 600; }
.erreur-chargement--differee { visibility: hidden; animation: secours 0s linear 10s forwards; }
@keyframes secours { to { visibility: visible; } }

/* Accueil */
.accueil-tete { display: grid; grid-template-columns: 1fr auto; column-gap: 14px; align-items: start; padding: 26px 0 4px; }
.accueil-tete h1 { grid-column: 1; font-size: clamp(2.5rem, 1.6rem + 4.4vw, 3.7rem); line-height: 1.02; margin: 0 0 16px; }
.accroche { grid-column: 1 / -1; font-size: 1.15rem; line-height: 1.45; color: var(--encre-2); margin: 0 0 6px; max-width: 32ch; }
.adultes { grid-column: 1 / -1; font-size: 0.92rem; color: var(--encre-douce); margin: 0; }
.accueil-radar { grid-column: 2; grid-row: 1; width: 96px; height: 96px; margin-top: 2px; }
.deco-anneau { fill: none; stroke: var(--ligne-forte); stroke-width: 1; }
.deco-rayons line { stroke: var(--ligne); stroke-width: 1; }
.deco-trace { fill: none; stroke: var(--encre); stroke-width: 2.2; stroke-linejoin: round; }
.deco-point { fill: var(--bleu); }
body:not([data-etape="accueil"]) .accueil-tete { display: none; }
@media (max-width: 359px) { .accueil-radar { display: none; } }

.accueil { display: grid; gap: 22px; margin-top: 28px; }
.champs { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 12px; }
.champ { display: flex; flex-direction: column; gap: 6px; min-width: 0; margin: 0; padding: 0; border: 0; }
.champ--large { grid-column: 1 / -1; }
.champ > label, .champ > legend { font-weight: 600; font-size: 0.95rem; color: var(--encre-2); padding: 0; margin-bottom: 6px; }
.champ input[type="text"], .champ input[type="email"], .champ input[type="tel"] {
  width: 100%; min-height: 52px; border: 1.5px solid var(--ligne); border-radius: var(--r-sm);
  padding: 12px 14px; background: var(--papier); font-size: 1rem;
}
.champ input:focus { outline: 0; border-color: var(--bleu); box-shadow: 0 0 0 4px rgba(47, 111, 219, 0.18); }
.champ--erreur input[type="text"], .champ--erreur input[type="email"], .champ--erreur input[type="tel"] { border-color: var(--alerte); }
.champ--court input { max-width: 9rem; }
.erreur { margin: 2px 0 0; color: var(--alerte); font-size: 0.9rem; font-weight: 600; }

.segments { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.segment { position: relative; }
.segment input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.segment span { display: flex; align-items: center; justify-content: center; min-height: 52px; border: 1.5px solid var(--ligne); border-radius: var(--r-sm); background: var(--papier); font-weight: 600; }
.segment input:checked + span { background: var(--encre); border-color: var(--encre); color: #fff; }
.segment input:focus-visible + span { outline: 3px solid var(--ciel); outline-offset: 2px; }
.champ--erreur .segment span { border-color: var(--alerte); }

.info { background: var(--papier); border: 1px solid var(--ligne); border-radius: var(--r); padding: 18px 18px 4px; font-size: 0.9rem; line-height: 1.5; color: var(--encre-2); }
.info h2 { font-size: 1.15rem; margin-bottom: 10px; }
.resume-donnees { font-size: 0.95rem; line-height: 1.5; color: var(--encre-2); }
.resume-donnees p { margin: 0; }
.renvoi { display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; background: none; color: var(--bleu-fonce); font: inherit; font-size: 0.9rem; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.renvoi:focus-visible { outline: 3px solid var(--ciel); outline-offset: 2px; }
#donnees { margin-top: 36px; scroll-margin-top: 16px; }
details.info { padding: 6px 18px; }
details.info[open] { padding-bottom: 4px; }
.info__titre { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; list-style: none; cursor: pointer; }
.info__titre::-webkit-details-marker { display: none; }
.info__titre h2 { margin: 0; }
.info__titre::after { content: ""; flex: 0 0 auto; width: 9px; height: 9px; margin: 0 4px 4px 0; border-right: 2px solid var(--encre-douce); border-bottom: 2px solid var(--encre-douce); transform: rotate(45deg); transition: transform 0.15s var(--aise); }
details.info[open] > .info__titre { margin-bottom: 8px; }
details.info[open] > .info__titre::after { margin-bottom: 0; transform: rotate(-135deg); }
.info__titre:focus-visible { outline: 3px solid var(--ciel); outline-offset: 4px; border-radius: 8px; }
.accord { display: flex; gap: 12px; align-items: flex-start; font-weight: 600; cursor: pointer; line-height: 1.45; }
.accord input { width: 24px; height: 24px; margin: 1px 0 0; accent-color: var(--encre); flex: 0 0 auto; cursor: pointer; }
.piege { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Boutons */
.bouton {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 54px; padding: 0 26px;
  border: 0; border-radius: 999px; background: var(--degrade); color: #fff; font-weight: 600; font-size: 1.05rem;
  text-decoration: none; text-align: center; cursor: pointer; box-shadow: 0 12px 28px -16px rgba(14, 36, 68, 0.8);
  transition: transform 0.12s var(--aise), opacity 0.12s var(--aise);
}
.bouton:active { transform: scale(0.98); }
.bouton[aria-disabled="true"] { opacity: 0.5; box-shadow: none; }
.bouton--secondaire { background: var(--papier); color: var(--encre); border: 1.5px solid var(--ligne-forte); box-shadow: none; padding: 0 20px; }
.bouton--plein { width: 100%; }

/* Blocs de questions */
.bloc-tete { position: sticky; top: 0; z-index: 10; margin: 0 -16px; padding: 12px 16px 10px; background: rgba(244, 247, 251, 0.95); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.progression { height: 5px; border-radius: 999px; background: var(--ligne); overflow: hidden; }
.progression__barre { display: block; width: 100%; height: 100%; background: var(--bleu); transform-origin: left center; transform: scaleX(0); transition: transform 0.15s var(--aise); }
.progression__texte { margin: 8px 0 0; font-size: 0.85rem; font-weight: 600; color: var(--encre-douce); font-variant-numeric: tabular-nums; }
.bloc h2 { font-size: clamp(1.9rem, 1.5rem + 2vw, 2.5rem); margin: 14px 0 12px; }
.bloc__intro { color: var(--encre-douce); }
.legende-echelle { padding: 14px 16px; border-radius: var(--r-sm); background: var(--brume); font-size: 0.92rem; color: var(--encre-2); }
.legende-echelle p { margin: 0 0 6px; font-weight: 600; color: var(--encre); }
.legende-echelle ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 3px; }
.legende-echelle li { display: flex; gap: 10px; align-items: baseline; }
.legende-echelle b { flex: 0 0 1.3em; text-align: center; font-variant-numeric: tabular-nums; color: var(--encre); }

.questions { display: grid; gap: 34px; margin-top: 26px; }
.question { margin: 0; padding: 0; border: 0; min-width: 0; scroll-margin-top: 96px; }
.question__libelle { float: left; width: 100%; padding: 0; margin: 0 0 12px; font-weight: 600; font-size: 1.08rem; line-height: 1.4; }
.question__libelle + * { clear: both; }
.question__aide { margin: -4px 0 10px; font-size: 0.88rem; color: var(--encre-douce); }
.question .erreur { margin-top: 8px; }

.options { display: grid; gap: 8px; }
.option { position: relative; display: block; }
.option input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; z-index: 1; }
.option__texte {
  display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 12px 16px;
  border: 1.5px solid var(--ligne); border-radius: var(--r-sm); background: var(--papier); line-height: 1.35;
  transition: border-color 0.12s var(--aise), background-color 0.12s var(--aise);
}
.option__texte::before { content: ""; flex: 0 0 auto; width: 20px; height: 20px; border: 2px solid var(--ligne-forte); border-radius: 50%; background: var(--papier); }
.option input[type="checkbox"] + .option__texte::before { border-radius: 6px; }
.option input:checked + .option__texte { border-color: var(--bleu); background: var(--brume); }
.option input[type="radio"]:checked + .option__texte::before { border-color: var(--encre); background: var(--encre); box-shadow: inset 0 0 0 4px var(--papier); }
.option input[type="checkbox"]:checked + .option__texte::before {
  border-color: var(--encre);
  background: var(--encre) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px no-repeat;
}
.option input:focus-visible + .option__texte { outline: 3px solid var(--ciel); outline-offset: 2px; }
@media (hover: hover) { .option:hover .option__texte { border-color: var(--ligne-forte); } }
.question--erreur .option__texte, .question--erreur .echelle__case span { border-color: var(--alerte); }
.options--compact { grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); }
.options--compact .option__texte { min-height: 44px; padding: 8px 12px; }

.echelle { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; }
.echelle__case { position: relative; }
.echelle__case input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.echelle__case span {
  display: flex; align-items: center; justify-content: center; height: 54px; border: 1.5px solid var(--ligne);
  border-radius: var(--r-sm); background: var(--papier); font-weight: 600; font-size: 1.15rem; font-variant-numeric: tabular-nums;
}
.echelle__case input:checked + span { background: var(--encre); border-color: var(--encre); color: #fff; }
.echelle__case input:focus-visible + span { outline: 3px solid var(--ciel); outline-offset: 2px; }
.echelle__bornes, .curseur__bornes { display: flex; justify-content: space-between; gap: 16px; margin-top: 6px; font-size: 0.8rem; color: var(--encre-douce); }
.echelle__bornes span:last-child, .curseur__bornes span:last-child { text-align: right; }
.echelle__choix { min-height: 1.4em; margin: 6px 0 0; font-size: 0.92rem; font-weight: 600; color: var(--bleu-fonce); }

.option--bristol .option__texte { gap: 12px; padding-top: 10px; padding-bottom: 10px; }
.bristol__picto { flex: 0 0 auto; width: 56px; height: 28px; color: var(--encre-2); }
.bristol__fissure { stroke: var(--papier); stroke-width: 1.6; stroke-linecap: round; }
.option input:checked + .option__texte .bristol__fissure { stroke: var(--brume); }
.bristol__liquide { fill: currentColor; opacity: 0.55; }
.bristol__texte { display: flex; flex-direction: column; line-height: 1.3; }
.bristol__texte strong { font-size: 0.82rem; font-weight: 600; color: var(--encre-douce); }

.curseur { -webkit-appearance: none; appearance: none; display: block; width: 100%; height: 36px; margin: 4px 0 0; background: transparent; cursor: pointer; }
.curseur::-webkit-slider-runnable-track { height: 8px; border-radius: 999px; background: var(--ligne); }
.curseur::-moz-range-track { height: 8px; border-radius: 999px; background: var(--ligne); }
.curseur::-webkit-slider-thumb { -webkit-appearance: none; width: 30px; height: 30px; margin-top: -11px; border-radius: 50%; background: var(--encre); border: 3px solid var(--papier); box-shadow: 0 2px 8px rgba(14, 36, 68, 0.35); }
.curseur::-moz-range-thumb { width: 26px; height: 26px; border-radius: 50%; background: var(--encre); border: 3px solid var(--papier); box-shadow: 0 2px 8px rgba(14, 36, 68, 0.35); }
.curseur.vierge::-webkit-slider-thumb { opacity: 0; }
.curseur.vierge::-moz-range-thumb { opacity: 0; }
.curseur__valeur { margin: 8px 0 0; font-weight: 600; color: var(--bleu-fonce); font-variant-numeric: tabular-nums; }
.question--erreur .curseur::-webkit-slider-runnable-track { background: #f2c4c1; }

.bloc__etat { min-height: 1.4em; margin: 22px 0 0; font-weight: 600; color: var(--alerte); }
.barre {
  position: sticky; bottom: 0; z-index: 10; display: flex; gap: 10px; margin: 14px -16px 0;
  padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); background: rgba(244, 247, 251, 0.95);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border-top: 1px solid var(--ligne);
}
.barre .bouton { flex: 1 1 auto; }
.barre .bouton--secondaire { flex: 0 0 auto; }

/* Résultats */
.resultats h1 { font-size: clamp(2.3rem, 1.6rem + 3.4vw, 3.2rem); margin: 18px 0 16px; }
.alerte { margin: 18px 0 6px; padding: 14px 16px; border-radius: var(--r-sm); border-left: 5px solid var(--alerte); background: var(--alerte-fond); color: var(--encre); font-weight: 600; line-height: 1.45; }
.alerte p { margin: 0; }
.alerte p + p { margin-top: 8px; }
.phrases p { font-size: 1.1rem; color: var(--encre-2); margin-bottom: 0.7em; }
.phrases .phrase-motif { font-family: var(--serif); font-size: 1.6rem; font-weight: 500; line-height: 1.25; color: var(--encre); letter-spacing: -0.01em; }
.phrases .phrase-fin { font-weight: 600; color: var(--encre); }
.surface { background: var(--papier); border: 1px solid var(--ligne); border-radius: var(--r); box-shadow: var(--ombre); }
.radar-carte { margin-top: 26px; padding: 20px 16px 8px; }
.radar-carte h2 { font-size: 1.5rem; margin: 0 4px 2px; }
.radar { display: block; width: 100%; height: auto; max-width: 430px; margin: 4px auto 0; overflow: visible; }
.radar__anneau { stroke: var(--ligne); stroke-width: 1; }
.radar__anneau--2 { fill: #edf3fc; }
.radar__anneau--1 { fill: #f4f8fe; }
.radar__anneau--0 { fill: #fbfcff; }
.radar__rayon { stroke: var(--ligne-forte); stroke-width: 1; }
.radar__trace { fill: none; stroke: var(--encre); stroke-width: 2.5; stroke-linejoin: round; }
.radar__point { fill: var(--papier); stroke: var(--encre); stroke-width: 2.5; }
.radar__point--1 { fill: var(--bleu); }
.radar__point--2 { fill: var(--encre); }
.radar__libelle { font-family: var(--sans); font-size: 13px; font-weight: 600; fill: var(--encre-2); }
.radar__pct { font-weight: 700; fill: var(--bleu-fonce); }
.radar-legende { margin: 8px 4px 14px; font-size: 0.9rem; color: var(--encre-douce); }
.types { list-style: none; margin: 0 4px; padding: 0; border-top: 1px solid var(--ligne); }
.types li { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--ligne); }
.types li:last-child { border-bottom: 0; }
.types__nom { font-weight: 500; line-height: 1.35; }
.palier { flex: 0 0 auto; display: inline-block; padding: 4px 11px; border-radius: 999px; font-size: 0.85rem; font-weight: 600; white-space: nowrap; }
.palier--0 { background: #eef2f7; color: var(--encre-douce); }
.palier--1 { background: #dce8fc; color: var(--bleu-fonce); }
.palier--2 { background: var(--encre); color: #fff; }

/* Échelle client : orange puis rouge, pour que les niveaux 1 et 2 appellent l'action. Le compte rendu garde le bleu. */
.resultats .types li { flex-wrap: wrap; row-gap: 6px; }
.resultats .palier { flex: 0 1 auto; max-width: 100%; white-space: normal; border-radius: 12px; text-align: center; }
.resultats .palier--1 { background: #fff0dd; color: #8a4300; }
.resultats .palier--2 { background: var(--alerte); color: #fff; }
.resultats .jauge__seg--plein.jauge__seg--1 { background: #e07a1f; }
.resultats .jauge__seg--plein.jauge__seg--2 { background: var(--alerte); }
.resultats .radar__point--1 { fill: #e07a1f; }
.resultats .radar__point--2 { fill: var(--alerte); }
.jauges { display: grid; gap: 12px; margin-top: 14px; }
.jauge { padding: 16px 18px; box-shadow: none; }
.jauge__titre { margin: 0 0 10px; font-weight: 600; }
.jauge__barre { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; }
.jauge__seg { height: 10px; border-radius: 999px; background: var(--ligne); }
.jauge__seg--plein.jauge__seg--0 { background: var(--ligne-forte); }
.jauge__seg--plein.jauge__seg--1 { background: var(--bleu); }
.jauge__seg--plein.jauge__seg--2 { background: var(--encre); }
.jauge__valeur { margin: 8px 0 0; font-size: 0.95rem; color: var(--encre-2); }
.limites { margin-top: 28px; }
.limites h2 { font-size: 1.25rem; }
.limites p { color: var(--encre-douce); }
.note { font-size: 0.92rem; color: var(--encre-douce); }
.barre--resultats .bouton { width: 100%; }
@media (min-width: 720px) {
  .jauges { grid-template-columns: 1fr 1fr; }
  .barre--resultats { position: static; margin: 26px 0 0; padding: 0; background: none; border: 0; backdrop-filter: none; -webkit-backdrop-filter: none; }
  .barre--resultats .bouton { width: auto; min-width: 280px; }
}

/* Compte rendu pour les naturopathes */
.cr-tete { margin: 20px 0 6px; }
.cr-tete h1 { font-size: clamp(2rem, 1.5rem + 2.2vw, 2.8rem); }
.cr-avertissement { display: inline-block; padding: 8px 12px; border-radius: var(--r-sm); background: var(--brume); color: var(--encre-2); font-weight: 600; }
.bandeau { margin: 10px 0; padding: 10px 14px; border-radius: var(--r-sm); background: #fff4d6; color: #5c4600; font-weight: 600; }
.bandeau--erreur { background: var(--alerte-fond); color: var(--alerte); }
.cr-actions { margin: 6px 0 0; }
.cr-actions .bouton { min-height: 44px; }
.cr-section { margin-top: 34px; }
.cr-section > h2 { font-size: 1.45rem; padding-bottom: 8px; border-bottom: 2px solid var(--encre); }
.cr-section h3 { font-size: 1.1rem; }
.cr-fort { font-weight: 600; font-size: 1.05rem; }
.cr-bloc { margin-top: 18px; }
.fiche { display: grid; grid-template-columns: max-content 1fr; gap: 6px 18px; margin: 0; }
.fiche__ligne { display: contents; }
.fiche dt { color: var(--encre-douce); }
.fiche dd { margin: 0; font-weight: 600; }
.liste { margin: 6px 0 12px; padding-left: 1.2em; }
.liste li { margin: 3px 0; }
.cr-radar { padding: 12px 10px 4px; margin-bottom: 14px; }
.axes { display: grid; gap: 12px; }
.axe { padding: 16px; border: 1px solid var(--ligne); border-radius: var(--r-sm); background: var(--papier); }
.axe__tete { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin-bottom: 6px; }
.axe__tete h3 { margin: 0; font-family: var(--sans); font-size: 1.05rem; font-weight: 700; letter-spacing: 0; }
.axe__chiffres { color: var(--encre-douce); font-variant-numeric: tabular-nums; }
.axe__note { font-size: 0.9rem; color: var(--encre-douce); margin: 6px 0; }
.axe__sous-titre { margin: 10px 0 0; font-weight: 600; font-size: 0.92rem; }
.axe__plafond { margin: 6px 0; font-size: 0.9rem; font-weight: 600; color: #5c4600; }
.axe__explorer { margin: 8px 0 0; }
.saisie { margin-top: 18px; padding: 20px 18px; display: grid; gap: 18px; }
.saisie h2 { font-size: 1.35rem; margin: 0; }
.saisie > p { margin: 0; color: var(--encre-2); }
.severite { display: grid; grid-template-columns: repeat(11, minmax(0, 1fr)); gap: 5px; }
.severite .echelle__case span { height: 46px; font-size: 1rem; }
.saisie__boutons { display: flex; flex-wrap: wrap; gap: 10px; }
.reponses { margin: 0; padding-left: 1.6em; }
.reponses li { padding: 9px 0; border-bottom: 1px solid var(--ligne); }
.reponses__q { display: block; color: var(--encre-douce); font-size: 0.92rem; }
.reponses__r { display: block; font-weight: 600; }
@media (max-width: 520px) { .severite { grid-template-columns: repeat(6, 1fr); } .fiche { grid-template-columns: 1fr; gap: 0; } .fiche dd { margin-bottom: 8px; } }
@media (min-width: 860px) {
  .cr-types { display: grid; grid-template-columns: 380px 1fr; gap: 18px; align-items: start; }
  .reponses li { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
}

/* Relecture */
.cas-liste { list-style: none; margin: 0 0 8px; padding: 0; display: grid; gap: 8px; }
.cas-bouton { width: 100%; text-align: left; padding: 12px 14px; border: 1.5px solid var(--ligne); border-radius: var(--r-sm); background: var(--papier); cursor: pointer; line-height: 1.4; }
.cas-bouton[aria-pressed="true"] { border-color: var(--bleu); background: var(--brume); }
.relecture-zone { scroll-margin-top: 16px; }
.relecture-zone > h2 { margin-top: 30px; }
.relecture-resultats { padding: 0 14px 14px; border: 2px dashed var(--ligne-forte); border-radius: var(--r); }
.relecture-resultats .barre--resultats { position: static; margin: 20px 0 0; padding: 0; background: none; border: 0; backdrop-filter: none; -webkit-backdrop-filter: none; }
.questions-liste { margin-top: 40px; }
.questions-liste ol { padding-left: 1.6em; }
.questions-liste > ol > li { margin-bottom: 14px; }
.ql__question { margin: 0 0 4px; font-weight: 600; }
.ql__aide { margin: 0 0 4px; font-size: 0.88rem; color: var(--encre-douce); }
.ql__reponses { margin: 0; padding-left: 1.1em; color: var(--encre-2); font-size: 0.95rem; }

@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; scroll-behavior: auto !important; }
}

@media print {
  .tete, .cr-actions, .barre, .saisie, .bandeau#cr-envoi { display: none !important; }
  body { background: #fff; font-size: 11pt; }
  .page { max-width: none; padding: 0; }
  .surface, .axe { box-shadow: none; break-inside: avoid; }
  .cr-section { break-inside: auto; }
  a { color: inherit; text-decoration: none; }
}
