/*
 * Revendication de fiche — composants propres à la page.
 *
 * Les champs de formulaire réutilisent les classes `dv-*` de devis.css, déjà
 * chargée sur cette page : les redéclarer sous un autre préfixe aurait
 * dupliqué 3 ko pour un rendu identique. Ne sont définis ici que les
 * composants absents ailleurs — fil d'étapes, récapitulatif de fiche,
 * encarts contextuels, écran de confirmation.
 *
 * Les couleurs viennent toutes de tokens.css. Aucune valeur en dur.
 */

/* ═════════ COLONNE ═════════ */
.rv-col{max-width:560px;margin:0 auto;padding-block:36px var(--sp-md,64px)}
.rv-head{text-align:center;margin-bottom:24px}
.rv-head h1{font-size:clamp(23px,3.4vw,28px);font-weight:700;letter-spacing:-.035em;line-height:1.14;color:var(--k8)}
.rv-head p{font-size:15px;color:var(--k5);line-height:1.55;margin-top:8px;max-width:46ch;margin-inline:auto}

/* ═════════ FIL D'ÉTAPES ═════════
   La 3e étape n'est pas une action du professionnel mais la nôtre. Elle est
   affichée quand même : masquer ce qui reste à faire donnerait l'illusion
   que l'envoi du formulaire ouvre l'accès. */
.rv-steps{display:flex;align-items:center;margin-bottom:18px}
.rv-stp{display:flex;align-items:center;gap:8px;flex:none}
.rv-stp-n{width:26px;height:26px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-family:'DM Mono',monospace;font-size:13px;font-weight:500;background:#fff;border:1.5px solid var(--k3);color:var(--k5)}
.rv-stp-t{font-size:14px;font-weight:600;color:var(--k5);letter-spacing:-.01em}
.rv-bar{flex:1;height:1.5px;background:var(--k2);margin:0 10px;min-width:12px}
.rv-stp[data-state="on"] .rv-stp-n{background:var(--co4);border-color:var(--co4);color:#fff}
.rv-stp[data-state="on"] .rv-stp-t{color:var(--k8)}
.rv-stp[data-state="done"] .rv-stp-n{background:var(--ok-solid,#0E7A45);border-color:var(--ok-solid,#0E7A45);color:#fff}
.rv-stp[data-state="done"] .rv-stp-t{color:var(--k6)}

/* ═════════ CARTE ═════════ */
.rv-card{background:#fff;border:1.5px solid var(--k2);border-radius:var(--r12);box-shadow:var(--sh2);padding:24px 24px 26px}
.rv-card+.rv-card{margin-top:14px}
.rv-card:focus{outline:none}
.rv-h{font-size:19px;font-weight:700;letter-spacing:-.028em;color:var(--k8);line-height:1.22}
.rv-x{font-size:14.5px;color:var(--k6);line-height:1.6;margin-top:8px}

/* ═════════ RÉCAPITULATIF DE FICHE ═════════ */
.rv-fiche{border:1.5px solid var(--l-edge,#CDE8E2);background:var(--l-tint,#EAF7F5);border-radius:var(--r8);padding:16px 17px;margin-top:18px}
.rv-fiche-n{font-size:16.5px;font-weight:700;letter-spacing:-.022em;color:var(--lp);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rv-fiche-m{font-family:'DM Mono',monospace;font-size:13.5px;color:#3C6660;line-height:1.65;margin-top:7px}
.rv-fiche-m i{font-size:14px;vertical-align:-2px;margin-right:5px;color:var(--lm)}
.rv-notme{font-size:14px;color:var(--k5);text-align:center;margin-top:14px}
.rv-notme a{font-weight:600;color:var(--co5);text-decoration:underline;text-underline-offset:2px}

/* ═════════ ENCARTS ═════════ */
.rv-ctx{display:flex;gap:10px;border-radius:var(--r8);padding:12px 14px;margin-top:16px;font-size:14px;line-height:1.55}
.rv-ctx>i{font-size:17px;flex:none;margin-top:1px}
.rv-ctx b{font-weight:700}
.rv-ctx a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.rv-ctx.warn{background:var(--yl0,#FFF8E9);border:1.5px solid var(--yl-edge,#F5DE9E);color:var(--yl6,#64410A)}
.rv-ctx.warn>i{color:var(--yl4,#C98617)}
.rv-ctx.info{background:var(--in-bg,#EEF4FF);border:1.5px solid var(--in-edge,#C7DBFF);color:var(--in-ink2,#1E3A6E)}
.rv-ctx.info>i{color:#3B82F6}
.rv-ctx.ok{background:var(--ok-bg,#ECFDF5);border:1.5px solid var(--ok-edge,#BFEBD0);color:var(--ok-ink2,#0B5C39)}
.rv-ctx.ok>i{color:var(--ok-solid,#0E7A45)}

/* Résumé d'erreurs */
.rv-alert{display:flex;gap:11px;background:var(--er-bg,#FFF1F2);border:1.5px solid var(--er-edge,#F5C2C0);border-radius:var(--r8);padding:13px 15px;margin-bottom:20px}
.rv-alert>i{font-size:19px;color:var(--er-dot,#D93025);flex:none;margin-top:1px}
.rv-alert-t{font-size:14.5px;font-weight:700;color:var(--er-tx,#B3261E);letter-spacing:-.01em}
.rv-alert ul{margin:6px 0 0 17px;padding:0}
.rv-alert li{font-size:14.5px;color:var(--er-tx,#B3261E);line-height:1.5}
.rv-alert a{color:inherit;text-decoration:underline;text-underline-offset:2px;font-weight:600}

/* ═════════ NAVIGATION ═════════ */
.rv-back{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;font-weight:600;color:var(--k5);background:none;border:none;cursor:pointer;padding:4px 0;margin-bottom:12px}
.rv-back:hover{color:var(--co5)}
.rv-back i{font-size:15.5px}
.rv-full{width:100%;justify-content:center;min-height:52px;margin-top:22px}

/* ═════════ CONFIRMATION ═════════ */
.rv-done{text-align:center}
.rv-done-i{width:56px;height:56px;border-radius:50%;background:var(--ok-bg,#ECFDF5);border:1.5px solid var(--ok-edge,#BFEBD0);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:28px;color:var(--ok-solid,#0E7A45)}
.rv-done h1{font-size:22px;font-weight:700;letter-spacing:-.03em;color:var(--k8);line-height:1.2}
.rv-done>p{font-size:15px;color:var(--k6);line-height:1.6;margin-top:10px}
.rv-next{text-align:left;border:1.5px solid var(--k2);border-radius:var(--r8);margin-top:20px;overflow:hidden}
.rv-next-l{display:flex;gap:11px;padding:13px 15px;font-size:14.5px;line-height:1.55;color:var(--k6)}
.rv-next-l+.rv-next-l{border-top:1px solid var(--k1)}
.rv-next-l>i{font-size:17px;color:var(--lm);flex:none;margin-top:1px}
.rv-next-l b{font-weight:600;color:var(--k8)}
.rv-acts{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:22px}

/* ═════════ MOBILE ═════════ */
@media (max-width:560px){
  .rv-col{padding-block:22px 72px}
  .rv-stp-t{display:none}
  .rv-bar{margin:0 6px}
  .rv-card{padding:20px 18px 22px}
  .rv-acts .btn{width:100%;justify-content:center}
}
