/* CERVOX — rubrique Back-up (/back-up/ et /en/backup/) uniquement.
   Mission 3. Portée limitée aux éléments préfixés cvx-backup-, et à l'en-tête des seules pages de la rubrique
   (classe cvx-backup-hd-solid ajoutée par cvx-backup.js).
   Aucune classe Tailwind nouvelle, aucune modification du bundle global, de cvx-nav.css ni de cvx-services.css.
   Jetons identiques à l'identité CERVOX : papier, encre, gris d'encre, violet #946DC8. */

.cvx-backup{
  --cvb-ink:#131210;
  --cvb-paper:#e9e8e4;
  --cvb-paper-2:#efeeea;
  --cvb-line:rgba(19,18,16,.12);
  --cvb-line-2:rgba(19,18,16,.24);
  --cvb-soft:rgba(19,18,16,.68);   /* texte secondaire : 5,9:1 sur papier */
  --cvb-muted:rgba(19,18,16,.62);  /* texte discret : 4,9:1 sur papier */
  --cvb-violet:#946DC8;
  --cvb-violet-ink:#6f4ea3;        /* violet lisible pour un texte sur papier */
  --cvb-danger:#9b2c1f;
  --cvb-sec:3.5rem;
  font-family:var(--font-sans),"Helvetica Neue",Arial,sans-serif;
  color:var(--cvb-ink);
}
@media (min-width:768px){.cvx-backup{--cvb-sec:4.5rem}}
@media (min-width:1024px){.cvx-backup{--cvb-sec:5.5rem}}
.cvx-backup *,.cvx-backup *::before,.cvx-backup *::after{box-sizing:border-box}
.cvx-backup [id]{scroll-margin-top:140px}
.cvx-backup img,.cvx-backup svg{max-width:100%}
.cvx-backup a{color:inherit}
.cvx-backup :focus-visible{outline:2px solid var(--cvb-violet);outline-offset:3px;border-radius:6px}
.cvx-backup-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- en-tête global : fond plein dès que la page défile (pages Back-up seulement) ---------- */
#cvx-header.cvx-backup-hd-solid{background:#e9e8e4;box-shadow:0 1px 0 rgba(19,18,16,.12)}
.cvx-ni.cvx-backup-ni-active>.pill-nav-link{background:rgba(0,0,0,.05);color:#131210}

/* ---------- gabarit ---------- */
.cvx-backup-wrap{max-width:1320px;margin:0 auto;padding:0 1.25rem}
@media (min-width:768px){.cvx-backup-wrap{padding:0 2rem}}
.cvx-backup-narrow{max-width:880px}
.cvx-backup-section{padding:var(--cvb-sec) 0 0}
.cvx-backup-section:last-of-type{padding-bottom:var(--cvb-sec)}
.cvx-backup-band{background:var(--cvb-paper-2);border-top:1px solid var(--cvb-line);border-bottom:1px solid var(--cvb-line);
  margin-top:var(--cvb-sec);padding:var(--cvb-sec) 0}
.cvx-backup-band + .cvx-backup-section{padding-top:var(--cvb-sec)}

/* ---------- barre de rubrique ---------- */
.cvx-backup-subnav{position:relative;z-index:40;margin-top:72px;border-bottom:1px solid var(--cvb-line);background:var(--cvb-paper)}
@media (min-width:768px){.cvx-backup-subnav{margin-top:84px}}
@media (min-width:1024px){.cvx-backup-subnav{position:sticky;top:var(--cvx-backup-hd,84px)}}
.cvx-backup-subnav-in{display:flex;align-items:center;gap:1rem;min-height:56px}
.cvx-backup-subnav-brand{flex:none;font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--cvb-muted);text-decoration:none;white-space:nowrap}
.cvx-backup-subnav-list{display:flex;align-items:center;gap:.25rem;margin:0;padding:0;list-style:none;
  overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:1 1 auto;min-width:0}
.cvx-backup-subnav-list::-webkit-scrollbar{display:none}
.cvx-backup-subnav-list a{display:inline-flex;align-items:center;min-height:40px;padding:0 .8rem;border-radius:9999px;
  font-size:14.5px;color:rgba(19,18,16,.78);text-decoration:none;white-space:nowrap}
.cvx-backup-subnav-list a:hover{background:rgba(0,0,0,.04);color:var(--cvb-ink)}
.cvx-backup-subnav-list a[aria-current="page"]{background:var(--cvb-ink);color:var(--cvb-paper)}
.cvx-backup-subnav .cvx-backup-subnav-cta{display:none}
@media (min-width:1024px){
  .cvx-backup-subnav .cvx-backup-subnav-cta{display:inline-flex;flex:none}
}
@media (max-width:767px){.cvx-backup-subnav-brand{display:none}}

/* ---------- fil d'Ariane ---------- */
.cvx-backup-crumbs{padding-top:1.25rem}
.cvx-backup-crumbs ol{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;font-size:13px;color:var(--cvb-muted)}
.cvx-backup-crumbs li+li::before{content:"›";margin-right:.35rem;color:var(--cvb-line-2)}
.cvx-backup-crumbs a{color:var(--cvb-muted);text-decoration:none}
.cvx-backup-crumbs a:hover{color:var(--cvb-ink);text-decoration:underline;text-underline-offset:3px}

/* ---------- hero ---------- */
.cvx-backup-hero{padding:2.5rem 0 0}
@media (min-width:1024px){.cvx-backup-hero{padding-top:3.5rem}}
.cvx-backup-hero-solo{padding-bottom:var(--cvb-sec)}
.cvx-backup-eyebrow{display:block;margin:0 0 1rem;font-family:var(--font-mono),ui-monospace,monospace;font-size:11.5px;
  letter-spacing:.08em;text-transform:uppercase;color:var(--cvb-violet-ink)}
.cvx-backup-h1{font-family:var(--font-cond),"Arial Narrow",sans-serif;font-weight:700;
  font-size:clamp(2.15rem,4.8vw,4.15rem);line-height:.98;letter-spacing:-.018em;margin:0;max-width:20ch;text-wrap:balance}
.cvx-backup-sub{margin:1.5rem 0 0;max-width:56ch;font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.5;color:var(--cvb-soft)}
.cvx-backup-act{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:2rem}
.cvx-backup-proof{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin:1.75rem 0 0;padding:1.25rem 0 0;list-style:none;
  border-top:1px solid var(--cvb-line);font-family:var(--font-mono),ui-monospace,monospace;font-size:12px;
  letter-spacing:.04em;text-transform:uppercase;color:var(--cvb-soft)}
.cvx-backup-proof li{display:flex;align-items:center;gap:.5rem}
.cvx-backup-proof li::before{content:"";width:6px;height:6px;border-radius:9999px;background:var(--cvb-violet);flex:none}

/* ---------- titres et textes ---------- */
.cvx-backup-h2{font-family:var(--font-cond),"Arial Narrow",sans-serif;font-weight:700;
  font-size:clamp(1.8rem,3.2vw,2.75rem);line-height:1.02;letter-spacing:-.014em;margin:0;max-width:26ch;text-wrap:balance}
.cvx-backup-h3{font-size:17px;font-weight:500;line-height:1.3;margin:0}
.cvx-backup-lead{margin:.9rem 0 0;max-width:60ch;font-size:clamp(1rem,1.25vw,1.1rem);line-height:1.55;color:var(--cvb-soft)}
.cvx-backup-text{margin:1rem 0 0;max-width:64ch;font-size:15.5px;line-height:1.6;color:var(--cvb-soft)}
.cvx-backup-text strong,.cvx-backup-lead strong{color:var(--cvb-ink);font-weight:500}
.cvx-backup-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:1.25rem;font-size:15px;font-weight:500;
  color:var(--cvb-ink);text-decoration:underline;text-decoration-color:var(--cvb-violet);text-underline-offset:4px}
.cvx-backup-link:hover{color:var(--cvb-violet-ink)}
.cvx-backup-note{margin:1rem 0 0;font-size:13.5px;line-height:1.5;color:var(--cvb-muted);max-width:70ch}

/* ---------- boutons ---------- */
.cvx-backup-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:50px;padding:.85rem 1.5rem;
  border-radius:9999px;border:0;cursor:pointer;background:var(--cvb-ink);color:var(--cvb-paper);font:inherit;font-size:15px;
  font-weight:500;line-height:1.2;text-decoration:none;transition:background-color .15s,color .15s,box-shadow .15s}
.cvx-backup .cvx-backup-btn{color:var(--cvb-paper)}
.cvx-backup-btn:hover{background:#2b2926}
.cvx-backup-btn-2{background:transparent;box-shadow:inset 0 0 0 1px rgba(19,18,16,.82)}
.cvx-backup .cvx-backup-btn-2{color:var(--cvb-ink)}
.cvx-backup-btn-2:hover{background:var(--cvb-ink);box-shadow:inset 0 0 0 1px var(--cvb-ink)}
.cvx-backup .cvx-backup-btn-2:hover{color:var(--cvb-paper)}
.cvx-backup-btn-sm{min-height:42px;padding:.55rem 1.1rem;font-size:14.5px}
.cvx-backup-btn:focus-visible{border-radius:9999px}
.cvx-backup-btn[disabled]{opacity:.5;cursor:not-allowed}
@media (max-width:639px){.cvx-backup-act .cvx-backup-btn{width:100%}}

/* ---------- grilles et cartes ---------- */
.cvx-backup-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.75rem}
@media (min-width:768px){.cvx-backup-grid-2,.cvx-backup-grid-3,.cvx-backup-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.cvx-backup-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cvx-backup-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.cvx-backup-card{display:flex;flex-direction:column;gap:.6rem;padding:1.35rem 1.35rem 1.4rem;border-radius:1rem;
  border:1px solid var(--cvb-line);background:rgba(255,255,255,.42)}
.cvx-backup-band .cvx-backup-card{background:var(--cvb-paper)}
.cvx-backup-card p{font-size:15px;line-height:1.55;color:var(--cvb-soft)}
.cvx-backup-card .cvx-backup-link{margin-top:auto;padding-top:.5rem}
.cvx-backup-card-k{font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--cvb-muted)}
a.cvx-backup-card{text-decoration:none;transition:border-color .15s,background-color .15s}
a.cvx-backup-card:hover{border-color:var(--cvb-ink);background:rgba(255,255,255,.7)}
.cvx-backup-card-accent{border-color:var(--cvb-violet);box-shadow:inset 0 0 0 1px var(--cvb-violet)}

/* ---------- listes ---------- */
.cvx-backup-qlist{counter-reset:q;list-style:none;margin:1.5rem 0 0;padding:0;border-top:1px solid var(--cvb-ink)}
.cvx-backup-qlist li{counter-increment:q;display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:.5rem;padding:1rem 0;
  border-bottom:1px solid var(--cvb-line);font-size:clamp(1.02rem,1.4vw,1.15rem);line-height:1.45}
.cvx-backup-qlist li::before{content:counter(q,decimal-leading-zero);font-family:var(--font-mono),ui-monospace,monospace;
  font-size:12px;letter-spacing:.06em;color:var(--cvb-violet-ink);padding-top:.25rem}
.cvx-backup-qlist strong{font-weight:500}
.cvx-backup-qlist span{display:block;margin-top:.25rem;font-size:15px;line-height:1.55;color:var(--cvb-soft)}
.cvx-backup-list{margin:1rem 0 0;padding:0;list-style:none;max-width:70ch}
.cvx-backup-list li{position:relative;padding:.55rem 0 .55rem 1.35rem;font-size:15.5px;line-height:1.55;color:var(--cvb-soft);
  border-bottom:1px solid var(--cvb-line)}
.cvx-backup-list li:last-child{border-bottom:0}
.cvx-backup-list li::before{content:"";position:absolute;left:0;top:1.15rem;width:7px;height:7px;border-radius:9999px;border:1px solid var(--cvb-ink)}
.cvx-backup-list strong{color:var(--cvb-ink);font-weight:500}
.cvx-backup-2col{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:1.5rem}
@media (min-width:1024px){.cvx-backup-2col{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem}}

/* ---------- tableaux (empilés en cartes sur mobile) ---------- */
.cvx-backup-table{width:100%;margin-top:1.5rem;border-collapse:collapse;font-size:15px;line-height:1.5}
.cvx-backup-table caption{text-align:left;font-size:13.5px;color:var(--cvb-muted);padding-bottom:.6rem}
.cvx-backup-table th,.cvx-backup-table td{text-align:left;vertical-align:top;padding:.85rem 1rem .85rem 0;border-bottom:1px solid var(--cvb-line)}
.cvx-backup-table thead th{font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;font-weight:400;letter-spacing:.08em;
  text-transform:uppercase;color:var(--cvb-muted);border-bottom:1px solid var(--cvb-ink)}
.cvx-backup-table tbody th{font-weight:500;color:var(--cvb-ink)}
.cvx-backup-table td{color:var(--cvb-soft)}
@media (max-width:767px){
  .cvx-backup-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .cvx-backup-table,.cvx-backup-table tbody,.cvx-backup-table tr,.cvx-backup-table th,.cvx-backup-table td{display:block;width:100%}
  .cvx-backup-table tr{padding:.9rem 1rem;margin-bottom:.75rem;border:1px solid var(--cvb-line);border-radius:.9rem;background:rgba(255,255,255,.42)}
  .cvx-backup-table th,.cvx-backup-table td{padding:.35rem 0;border:0}
  .cvx-backup-table tbody th{font-size:16px;padding-bottom:.5rem}
  .cvx-backup-table td[data-label]::before{content:attr(data-label);display:block;font-family:var(--font-mono),ui-monospace,monospace;
    font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--cvb-muted);margin-bottom:.1rem}
}
@media (min-width:768px){
  .cvx-backup-table-cmp th:first-child,.cvx-backup-table-cmp td:first-child{width:22%}
  .cvx-backup-table-cmp thead th:nth-child(3){color:var(--cvb-violet-ink)}
}

/* ---------- encadrés ---------- */
.cvx-backup-callout{margin-top:1.5rem;padding:1.15rem 1.25rem;border-radius:.9rem;border:1px solid var(--cvb-line-2);
  background:var(--cvb-paper-2);font-size:15px;line-height:1.55;color:var(--cvb-ink);max-width:70ch}
.cvx-backup-callout strong{font-weight:500}

/* ---------- étapes ---------- */
.cvx-backup-steps{list-style:none;margin:1.75rem 0 0;padding:0;display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--cvb-ink)}
@media (min-width:768px){.cvx-backup-steps{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}}
@media (min-width:1024px){.cvx-backup-steps-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cvx-backup-steps-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cvx-backup-steps li{padding:1.25rem 0 1.35rem;border-bottom:1px solid var(--cvb-line)}
.cvx-backup-step-n{display:block;font-family:var(--font-cond),"Arial Narrow",sans-serif;font-weight:700;font-size:2.2rem;line-height:1;margin-bottom:.75rem;color:var(--cvb-violet-ink)}
.cvx-backup-steps p{margin-top:.45rem;font-size:15px;line-height:1.55;color:var(--cvb-soft);max-width:42ch}

/* ---------- accordéons (détails secondaires et FAQ) ---------- */
.cvx-backup-acc{margin-top:1.5rem;border-top:1px solid var(--cvb-line-2);border-bottom:1px solid var(--cvb-line-2)}
.cvx-backup-acc summary,.cvx-backup-faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
  gap:1rem;padding:1.05rem 0;font-size:16px;font-weight:500;line-height:1.35}
.cvx-backup-acc summary::-webkit-details-marker,.cvx-backup-faq summary::-webkit-details-marker{display:none}
.cvx-backup-acc summary::after,.cvx-backup-faq summary::after{content:"+";flex:none;font-size:20px;line-height:1;color:var(--cvb-violet-ink);transition:transform .2s ease}
.cvx-backup-acc[open] summary::after,.cvx-backup-faq [open] summary::after{transform:rotate(45deg)}
.cvx-backup-acc .cvx-backup-table{margin-top:0;margin-bottom:1.25rem}
.cvx-backup-faq{margin-top:1.5rem;border-top:1px solid var(--cvb-ink);max-width:880px}
.cvx-backup-faq details{border-bottom:1px solid var(--cvb-line)}
.cvx-backup-faq summary h3{margin:0;font-size:16px;font-weight:500;line-height:1.35}
.cvx-backup-faq details p{margin:0 0 1.2rem;font-size:15px;line-height:1.6;color:var(--cvb-soft);max-width:66ch}
@media (prefers-reduced-motion:reduce){.cvx-backup-acc summary::after,.cvx-backup-faq summary::after{transition:none}}

/* ---------- bandeau d'appel à l'action ---------- */
.cvx-backup-ctaband{margin-top:var(--cvb-sec);margin-bottom:.5rem;padding:0 .5rem}
@media (min-width:768px){.cvx-backup-ctaband{padding:0 .75rem;margin-bottom:.75rem}}
.cvx-backup-ctaband-in{border-radius:28px;background:var(--cvb-ink);color:var(--cvb-paper);padding:3rem 1.5rem}
@media (min-width:768px){.cvx-backup-ctaband-in{border-radius:40px;padding:4rem 3rem}}
.cvx-backup-ctaband .cvx-backup-h2{color:var(--cvb-paper)}
.cvx-backup-ctaband .cvx-backup-lead{color:rgba(233,232,228,.72)}
.cvx-backup-ctaband .cvx-backup-btn{background:var(--cvb-paper);color:var(--cvb-ink)}
.cvx-backup-ctaband .cvx-backup-btn:hover{background:#fff}
.cvx-backup-ctaband .cvx-backup-btn-2{background:transparent;color:var(--cvb-paper);box-shadow:inset 0 0 0 1px rgba(233,232,228,.6)}
.cvx-backup-ctaband .cvx-backup-btn-2:hover{background:var(--cvb-paper);color:var(--cvb-ink)}
.cvx-backup-ctaband :focus-visible{outline-color:#fff}

/* ---------- badges de statut (texte toujours écrit) ---------- */
.cvx-backup-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .6rem;border-radius:9999px;font-size:13px;font-weight:500;
  line-height:1.3;border:1px solid var(--cvb-line-2);background:var(--cvb-paper);color:var(--cvb-ink);white-space:nowrap}
.cvx-backup-badge::before{content:"";width:7px;height:7px;border-radius:9999px;background:currentColor;opacity:.75}
.cvx-backup-badge-block{color:var(--cvb-danger);border-color:rgba(155,44,31,.35)}
.cvx-backup-badge-warn{color:#7a5300;border-color:rgba(122,83,0,.35)}
.cvx-backup-badge-check{color:var(--cvb-violet-ink);border-color:rgba(111,78,163,.35)}
.cvx-backup-badge-ok{color:#2f6b35;border-color:rgba(47,107,53,.35)}
.cvx-backup-badge-na,.cvx-backup-badge-nv{color:var(--cvb-soft)}

/* ---------- diagrammes ---------- */
.cvx-backup-fig{margin:2rem 0 0}
.cvx-backup-fig svg{display:block;width:100%;height:auto;font-family:var(--font-sans),"Helvetica Neue",Arial,sans-serif}
.cvx-backup-fig figcaption{margin-top:.75rem;font-size:13.5px;line-height:1.5;color:var(--cvb-muted);max-width:70ch}
.cvx-backup-fig-wide .cvx-backup-dg-n{display:none}
@media (max-width:767px){.cvx-backup-fig-wide .cvx-backup-dg-w{display:none}.cvx-backup-fig-wide .cvx-backup-dg-n{display:block;max-width:420px}}
.cvx-backup-fig-narrow svg{max-width:440px}
.cvx-backup-dg-box{fill:#efeeea;stroke:#131210;stroke-width:1.1}
.cvx-backup-dg-box-a{fill:rgba(148,109,200,.12);stroke:#946DC8;stroke-width:2}
.cvx-backup-dg-box-q{fill:none;stroke:rgba(19,18,16,.35);stroke-width:1;stroke-dasharray:4 4}
.cvx-backup-dg-band{fill:rgba(19,18,16,.05);stroke:none}
.cvx-backup-dg-line{fill:none;stroke:#131210;stroke-width:1.2}
.cvx-backup-dg-line-q{fill:none;stroke:rgba(19,18,16,.45);stroke-width:1.1;stroke-dasharray:5 4}
.cvx-backup-dg-line-a{fill:none;stroke:#946DC8;stroke-width:1.6}
.cvx-backup-dg-line-d{fill:none;stroke:#9b2c1f;stroke-width:1.6;stroke-dasharray:5 4}
.cvx-backup-dg-head{fill:#131210}
.cvx-backup-dg-head-a{fill:#946DC8}
.cvx-backup-dg-head-d{fill:#9b2c1f}
.cvx-backup-dg-t{fill:#131210;font-size:14px;font-weight:500}
.cvx-backup-dg-s{fill:rgba(19,18,16,.68);font-size:12px}
.cvx-backup-dg-k{fill:#6f4ea3;font-size:11px;letter-spacing:.08em;font-family:var(--font-mono),ui-monospace,monospace}
.cvx-backup-dg-d{fill:#9b2c1f;font-size:12px;font-weight:500}
.cvx-backup-dg-bar{fill:rgba(19,18,16,.14)}
.cvx-backup-dg-bar-a{fill:#946DC8}
.cvx-backup-dg-bar-d{fill:none;stroke:#9b2c1f;stroke-width:1.4;stroke-dasharray:4 3}

/* ---------- panneau du quiz ---------- */
/* z-index au-dessus du bandeau de consentement (9998) : le quiz ne s'ouvre automatiquement qu'après la réponse
   au bandeau ; ouvert volontairement, il le recouvre le temps de répondre, puis le bandeau réapparaît. */
.cvx-backup-quiz{position:fixed;z-index:9999;right:1rem;bottom:1rem;width:min(400px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);
  overflow:auto;border-radius:1.1rem;border:1px solid var(--cvb-line-2);background:var(--cvb-paper);
  box-shadow:0 24px 60px -24px rgba(0,0,0,.45);padding:1.25rem 1.25rem 1.35rem;transform:translateY(12px);opacity:0;visibility:hidden;
  transition:opacity .2s ease,transform .2s ease,visibility .2s}
.cvx-backup-quiz.is-open{opacity:1;transform:none;visibility:visible;transition:opacity .2s ease,transform .2s ease,visibility 0s}
/* l'attribut hidden l'emporte toujours sur les règles d'affichage de la rubrique (ex. formulaire en grille) */
.cvx-backup [hidden],.cvx-backup-sticky[hidden]{display:none!important}
@media (max-width:639px){.cvx-backup-quiz{right:.5rem;left:.5rem;bottom:.5rem;width:auto;max-height:80vh}}
@media (prefers-reduced-motion:reduce){.cvx-backup-quiz{transition:none}}
.cvx-backup-quiz-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.cvx-backup-quiz-title{margin:0;font-family:var(--font-cond),"Arial Narrow",sans-serif;font-weight:700;font-size:1.45rem;line-height:1.05}
.cvx-backup-quiz-x{flex:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin:-.4rem -.4rem 0 0;
  border:0;border-radius:9999px;background:transparent;cursor:pointer;font-size:22px;line-height:1;color:var(--cvb-ink)}
.cvx-backup-quiz-x:hover{background:rgba(0,0,0,.05)}
.cvx-backup-quiz p{margin-top:.6rem;font-size:15px;line-height:1.5;color:var(--cvb-soft)}
.cvx-backup-quiz .cvx-backup-act{margin-top:1rem}
.cvx-backup-quiz .cvx-backup-act .cvx-backup-btn{width:auto}

/* ---------- questionnaire pas à pas (quiz et prédiagnostic) ---------- */
.cvx-backup-q-prog{display:block;margin-top:1rem;font-family:var(--font-mono),ui-monospace,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--cvb-muted)}
.cvx-backup-q-bar{height:3px;margin-top:.5rem;border-radius:3px;background:var(--cvb-line);overflow:hidden}
.cvx-backup-q-bar span{display:block;height:100%;background:var(--cvb-violet);transition:width .2s ease}
.cvx-backup-q fieldset{margin:1rem 0 0;padding:0;border:0;min-width:0}
.cvx-backup-q legend{padding:0;font-size:clamp(1.1rem,1.6vw,1.3rem);font-weight:500;line-height:1.35;color:var(--cvb-ink)}
.cvx-backup-q-help{margin-top:.5rem;font-size:13.5px;color:var(--cvb-muted)}
.cvx-backup-q-opts{display:grid;gap:.5rem;margin-top:1rem}
.cvx-backup-q-opt{position:relative;display:flex;align-items:center;gap:.75rem;min-height:52px;padding:.7rem 1rem;border-radius:.8rem;
  border:1px solid var(--cvb-line-2);background:rgba(255,255,255,.5);cursor:pointer;font-size:15.5px;line-height:1.35}
.cvx-backup-q-opt:hover{border-color:var(--cvb-ink)}
.cvx-backup-q-opt input{flex:none;width:18px;height:18px;margin:0;accent-color:#131210}
.cvx-backup-q-opt:has(input:checked){border-color:var(--cvb-ink);box-shadow:inset 0 0 0 1px var(--cvb-ink);background:#fff}
.cvx-backup-q-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1.25rem}
.cvx-backup-q-err{margin-top:.6rem;font-size:13.5px;color:var(--cvb-danger)}
.cvx-backup-q-err[hidden]{display:none}
.cvx-backup-prediag{margin-top:2rem;max-width:760px;padding:1.5rem;border-radius:1.1rem;border:1px solid var(--cvb-line-2);background:rgba(255,255,255,.42)}
@media (min-width:768px){.cvx-backup-prediag{padding:2rem 2.25rem}}
.cvx-backup-result h2,.cvx-backup-result h3{margin:0}
.cvx-backup-result-block{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--cvb-line)}
.cvx-backup-result-block:first-of-type{border-top:0;padding-top:0}
.cvx-backup-result .cvx-backup-list li{color:var(--cvb-ink)}
.cvx-backup-result .cvx-backup-list li span{display:block;color:var(--cvb-soft);font-size:14.5px;margin-top:.15rem}
.cvx-backup-reco{margin-top:1rem;padding:1.25rem;border-radius:1rem;border:1px solid var(--cvb-violet);box-shadow:inset 0 0 0 1px var(--cvb-violet);background:var(--cvb-paper)}
.cvx-backup-reco p{font-size:15.5px;line-height:1.55;color:var(--cvb-ink)}
.cvx-backup-noscript{margin-top:1.5rem}

/* ---------- formulaires ---------- */
.cvx-backup-form{display:grid;gap:1.1rem;margin-top:1.5rem;max-width:720px}
.cvx-backup-formgrid{display:grid;gap:1.1rem}
@media (min-width:640px){.cvx-backup-formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cvx-backup-field label,.cvx-backup-field legend{display:block;font-size:14px;font-weight:500;line-height:1.35;margin-bottom:.4rem;padding:0;color:var(--cvb-ink)}
.cvx-backup-field fieldset{margin:0;padding:0;border:0;min-width:0}
.cvx-backup-req{font-weight:400;color:var(--cvb-muted)}
.cvx-backup-input{display:block;width:100%;min-height:48px;padding:.7rem .9rem;border:1px solid var(--cvb-line-2);border-radius:.7rem;
  background:#fff;font:inherit;font-size:16px;color:var(--cvb-ink)}
textarea.cvx-backup-input{min-height:120px;resize:vertical}
.cvx-backup-input::placeholder{color:rgba(19,18,16,.55)}
.cvx-backup-input:focus{outline:none;border-color:var(--cvb-violet);box-shadow:0 0 0 1px var(--cvb-violet)}
.cvx-backup-input[aria-invalid="true"]{border-color:var(--cvb-danger)}
.cvx-backup-hint{margin-top:.35rem;font-size:13px;line-height:1.45;color:var(--cvb-muted)}
.cvx-backup-checks{display:grid;gap:.4rem}
@media (min-width:640px){.cvx-backup-checks-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cvx-backup-check{display:flex;align-items:center;gap:.6rem;min-height:40px;padding:.45rem 0;font-size:15px;line-height:1.4;cursor:pointer}
.cvx-backup-check input{flex:none;width:18px;height:18px;margin:0;accent-color:#131210}
.cvx-backup-err{margin:.4rem 0 0;font-size:13.5px;line-height:1.4;color:var(--cvb-danger)}
.cvx-backup-err[hidden]{display:none}
.cvx-backup-errsum{padding:.9rem 1rem;border-radius:.8rem;border:1px solid rgba(155,44,31,.4);background:#fff;color:var(--cvb-danger);font-size:14.5px}
.cvx-backup-errsum[hidden]{display:none}
.cvx-backup-warn{font-size:13.5px;line-height:1.5;color:var(--cvb-ink);padding:.75rem 1rem;border-radius:.7rem;background:var(--cvb-paper-2);border:1px solid var(--cvb-line)}
.cvx-backup-legal{font-size:12.5px;line-height:1.5;color:var(--cvb-muted)}
.cvx-backup-legal a{color:var(--cvb-ink);text-decoration:underline;text-underline-offset:3px}
.cvx-backup-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cvx-backup-cond[hidden]{display:none}
.cvx-backup-ok{margin-top:1.5rem;padding:1.5rem;border-radius:1rem;background:var(--cvb-ink);color:var(--cvb-paper);max-width:720px}
.cvx-backup-ok[hidden]{display:none}
.cvx-backup-ok h2{margin:0;font-family:var(--font-cond),"Arial Narrow",sans-serif;font-weight:700;font-size:1.8rem;line-height:1.05;color:var(--cvb-paper)}
.cvx-backup-ok p{margin-top:.75rem;font-size:15.5px;line-height:1.55;color:rgba(233,232,228,.8)}
.cvx-backup-ok a{color:var(--cvb-paper)}
.cvx-backup-request{display:grid;grid-template-columns:1fr;gap:2.5rem;margin-top:2rem}
@media (min-width:1024px){.cvx-backup-request{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:4rem}}
.cvx-backup-request .cvx-backup-steps{grid-template-columns:1fr;margin-top:1rem}
.cvx-backup-request .cvx-backup-form{margin-top:0}

/* ---------- barre d'action mobile ---------- */
.cvx-backup-sticky{position:fixed;z-index:45;left:.75rem;right:.75rem;bottom:.75rem;display:none}
@media (max-width:1023px){.cvx-backup-sticky{display:block;transform:translateY(140%);visibility:hidden;transition:transform .2s ease,visibility .2s}}
.cvx-backup-sticky.is-visible{transform:none;visibility:visible}
.cvx-backup-sticky .cvx-backup-btn{width:100%;box-shadow:0 10px 30px -10px rgba(0,0,0,.45)}
@media (prefers-reduced-motion:reduce){.cvx-backup-sticky{transition:none}}

/* ---------- pied de page : colonne Back-up (pages Back-up seulement) ---------- */
@media (min-width:640px){.cvx-backup-ftgrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media (min-width:1024px){.cvx-backup-ftgrid{grid-template-columns:repeat(5,minmax(0,auto))!important}}
/* les cases à cocher et boutons radio restent alignés sur leur libellé dans un champ */
.cvx-backup-field .cvx-backup-check{display:flex;align-items:center;gap:.6rem;margin:0;font-size:15px;font-weight:400;line-height:1.4}
.cvx-backup-field legend{margin-bottom:.5rem}
