/* BLOXI Refonte — Prise de rendez-vous (snippet RDV 5067) : habillage aux couleurs et tailles de la refonte.
   Ne touche à aucune logique. Chargé par le thème uniquement sur les pages qui affichent [wpcode id="5067"]. */

/* 1. Couleurs de la refonte. Vert BLOXI par défaut (choix du mode, Connect), rouge Assist sur /prendre-rdv/assist/ */
html[data-theme] body #bxrdv{
  --bg:#f6f5f0;--elev:#ffffff;--card:#ffffff;--ink:#0b1118;--soft:#323c47;--muted:#56616d;
  --accent:#00774f;--accent-s:rgba(0,119,79,.09);--accent-r:rgba(0,119,79,.35);--on-accent:#fff;
  --connect:#00774f;--connect-s:rgba(0,119,79,.07);--connect-r:rgba(0,119,79,.3);
  --assist:#b8232f;--assist-s:rgba(184,35,47,.08);--assist-r:rgba(184,35,47,.3);
  --warn:#a16207;--warn-s:rgba(161,98,7,.08);--warn-r:rgba(161,98,7,.28);
  --bd:rgba(11,17,24,.14);--bds:rgba(11,17,24,.24);--bdf:rgba(11,17,24,.06);
  --shadow:0 18px 40px rgba(11,17,24,.07);
}
html[data-theme="dark"] body #bxrdv{
  --bg:#0a0e13;--elev:#131b24;--card:#131b24;--ink:#eef3f6;--soft:#c9d2da;--muted:#a3afbb;
  --accent:#00e5a0;--accent-s:rgba(0,229,160,.1);--accent-r:rgba(0,229,160,.35);--on-accent:#04140d;
  --connect:#00e5a0;--connect-s:rgba(0,229,160,.08);--connect-r:rgba(0,229,160,.3);
  --assist:#ff6f7a;--assist-s:rgba(255,111,122,.1);--assist-r:rgba(255,111,122,.3);
  --warn:#fbbf24;--warn-s:rgba(251,191,36,.1);--warn-r:rgba(251,191,36,.3);
  --bd:rgba(238,243,246,.14);--bds:rgba(238,243,246,.26);--bdf:rgba(238,243,246,.06);
  --shadow:0 18px 40px rgba(0,0,0,.35);
}
html[data-theme] body.page-id-5371 #bxrdv{--accent:#b8232f;--accent-s:rgba(184,35,47,.08);--accent-r:rgba(184,35,47,.35);--on-accent:#fff}
html[data-theme="dark"] body.page-id-5371 #bxrdv{--accent:#ff6f7a;--accent-s:rgba(255,111,122,.1);--accent-r:rgba(255,111,122,.35);--on-accent:#1d0205}

/* 2. Police du site partout, chiffres à chasse fixe ; colonne plus large, respiration */
html[data-theme] body #bxrdv,html[data-theme] body #bxrdv *{font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif!important}
html[data-theme] body #bxrdv{color:var(--ink);font-size:17px;line-height:1.55;font-variant-numeric:tabular-nums}
html[data-theme] body #bxrdv .rv-wrap{max-width:960px;padding:40px 18px 90px}
@media (min-width:900px){html[data-theme] body #bxrdv .rv-wrap{padding:64px 24px 110px}}
html[data-theme] body #bxrdv :focus-visible{outline:3px solid var(--accent);outline-offset:2px}

/* 3. En-tête : sur-titre à trait, grand titre, chapô */
html[data-theme] body #bxrdv .back{font-size:15px;color:var(--muted);margin-bottom:22px;text-decoration:underline;text-underline-offset:3px}
html[data-theme] body #bxrdv .back:hover{color:var(--ink)}
html[data-theme] body #bxrdv .eyebrow{display:flex;align-items:center;gap:14px;font-size:.8rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
html[data-theme] body #bxrdv .eyebrow::before{content:"";width:34px;height:1.5px;background:currentColor}
html[data-theme] body #bxrdv h1{font-size:clamp(2.2rem,6vw,3.6rem);font-weight:600;letter-spacing:-.04em;line-height:1.04;margin-bottom:16px}
html[data-theme] body #bxrdv h1 em{color:var(--accent)}
html[data-theme] body #bxrdv .lead{font-size:1.15rem;color:var(--soft);line-height:1.6;max-width:36em;margin-bottom:26px}

/* 4. Cartes d'étape */
html[data-theme] body #bxrdv .card{border-radius:24px;padding:24px 20px;margin-bottom:16px;border:1px solid var(--bd);box-shadow:var(--shadow)}
@media (min-width:700px){html[data-theme] body #bxrdv .card{padding:30px 32px}}
html[data-theme] body #bxrdv .step{font-size:1.2rem;font-weight:700;letter-spacing:-.01em;text-transform:none;color:var(--ink);margin-bottom:16px}
html[data-theme] body #bxrdv .hint{font-size:15px;color:var(--muted);margin-top:10px}
html[data-theme] body #bxrdv .grp{font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:18px 0 10px}
html[data-theme] body #bxrdv .grp:first-of-type{margin-top:0}

/* 5. Besoin : puces, précision, option */
html[data-theme] body #bxrdv .chips{gap:10px}
html[data-theme] body #bxrdv .chip{min-height:48px;padding:10px 18px;border-radius:999px;border:2px solid var(--bd);background:var(--bg);color:var(--ink);font-size:16px;font-weight:600}
html[data-theme] body #bxrdv .chip:hover{border-color:var(--accent-r)}
html[data-theme] body #bxrdv .chip.on{background:var(--accent-s);border-color:var(--accent);color:var(--ink)}
html[data-theme] body #bxrdv textarea,html[data-theme] body #bxrdv input[type="text"]{min-height:52px;border-radius:12px;border:2px solid var(--bd);background:var(--bg);color:var(--ink);font-size:16px;padding:12px 16px}
html[data-theme] body #bxrdv textarea{min-height:110px}
html[data-theme] body #bxrdv textarea:focus,html[data-theme] body #bxrdv input[type="text"]:focus{outline:none;border-color:var(--accent)}
html[data-theme] body #bxrdv .opt{border-radius:16px;padding:16px 18px;background:var(--connect-s);border:1px solid var(--connect-r)}
html[data-theme] body #bxrdv .opt .t{font-size:16px;font-weight:700;color:var(--ink)}
html[data-theme] body #bxrdv .opt .s{font-size:15px;color:var(--soft)}
html[data-theme] body #bxrdv .opt input{width:20px;height:20px;accent-color:var(--connect)}

/* 6. Code postal */
html[data-theme] body #bxrdv .cprow{gap:10px}
html[data-theme] body #bxrdv .cprow input{max-width:160px;font-size:1.25rem;font-weight:700;letter-spacing:.08em}
html[data-theme] body #bxrdv .cpok{display:flex;flex-wrap:wrap;gap:8px 12px;border-radius:14px;padding:12px 16px;font-size:16px;font-weight:600;background:rgba(0,119,79,.09);border:0;color:var(--ink)}
html[data-theme="dark"] body #bxrdv .cpok{background:rgba(0,229,160,.1)}
html[data-theme] body #bxrdv .cpok b{color:var(--ink)}
html[data-theme] body #bxrdv .cpok button{font-size:15px;color:var(--soft);text-decoration:underline;margin-left:auto}

/* 7. Jours et fenêtres, comme sur la page Assist */
html[data-theme] body #bxrdv .days{gap:10px;padding:4px 2px 8px}
html[data-theme] body #bxrdv .day{flex:0 0 86px;min-width:86px;border-radius:16px;border:2px solid var(--bd);background:var(--bg);padding:10px 6px;transition:border-color .2s,transform .3s}
html[data-theme] body #bxrdv .day .dw{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
html[data-theme] body #bxrdv .day .dn{font-size:2rem;font-weight:700;line-height:1.1;color:var(--ink)}
html[data-theme] body #bxrdv .day .dm{font-size:.9rem;color:var(--soft)}
html[data-theme] body #bxrdv .day .dc{font-size:.75rem;color:var(--muted);margin-top:2px}
html[data-theme] body #bxrdv .day:hover{border-color:var(--accent-r)}
html[data-theme] body #bxrdv .day.on{border-color:var(--accent);background:var(--accent-s);transform:translateY(-3px)}
html[data-theme] body #bxrdv .day.on .dn,html[data-theme] body #bxrdv .day.on .dc{color:var(--ink)}
html[data-theme] body #bxrdv .slots{gap:10px}
html[data-theme] body #bxrdv .slot{min-height:64px;border-radius:14px;border:2px solid var(--bd);background:var(--bg);padding:12px 16px;text-align:left}
html[data-theme] body #bxrdv .slot .sl{font-size:1.15rem;font-weight:700;color:var(--ink)}
html[data-theme] body #bxrdv .slot .ss{font-size:14px;color:var(--muted)}
html[data-theme] body #bxrdv .slot:hover{border-color:var(--accent-r)}
html[data-theme] body #bxrdv .slot.on{border-color:var(--accent);background:var(--accent)}
html[data-theme] body #bxrdv .slot.on .sl,html[data-theme] body #bxrdv .slot.on .ss{color:var(--on-accent)}

/* 8. Boutons */
html[data-theme] body #bxrdv .btn{min-height:56px;padding:14px 26px;border-radius:14px;font-size:1.05rem;font-weight:700;background:var(--accent);color:var(--on-accent);justify-content:center}
html[data-theme] body #bxrdv .btn:hover:not(:disabled){filter:brightness(1.08)}
html[data-theme] body #bxrdv .btn:disabled{opacity:.45}
html[data-theme] body #bxrdv .btn.ghost{background:transparent;color:var(--ink);border:2px solid var(--bds)}

/* 9. Messages, récapitulatif, confirmation */
html[data-theme] body #bxrdv .note{border-radius:16px;padding:14px 18px;font-size:15.5px;line-height:1.55}
html[data-theme] body #bxrdv .note.gold{background:var(--assist-s);border:1px solid var(--assist-r);color:var(--ink)}
html[data-theme] body #bxrdv .recap{border-radius:20px;padding:18px 20px;border:2px solid var(--accent-r);background:var(--elev)}
html[data-theme] body #bxrdv .recap .rt{font-size:1.1rem;font-weight:700}
html[data-theme] body #bxrdv .recap .rs{font-size:15px;color:var(--soft)}
html[data-theme] body #bxrdv .done{padding:40px 22px}
html[data-theme] body #bxrdv .done h2{font-size:clamp(1.8rem,4.5vw,2.6rem);font-weight:600;letter-spacing:-.03em}
html[data-theme] body #bxrdv .done p{font-size:1.05rem;color:var(--soft)}
html[data-theme] body #bxrdv .count{color:var(--accent)}
html[data-theme] body #bxrdv .rv-loading,html[data-theme] body #bxrdv .rv-empty{border-radius:20px;font-size:16px}
html[data-theme] body #bxrdv .rvsugg{border-radius:14px;border:1px solid var(--bd);background:var(--card);box-shadow:var(--shadow)}
html[data-theme] body #bxrdv .rvsugg div{font-size:16px;padding:12px 16px}

/* 10. Choix du mode (/prendre-rdv/) */
html[data-theme] body #bxrdv .hub{gap:14px}
html[data-theme] body #bxrdv .hcard{border-radius:24px;padding:26px 24px;box-shadow:var(--shadow)}
html[data-theme] body #bxrdv .hcard h2{font-size:1.4rem;font-weight:700;letter-spacing:-.02em}
html[data-theme] body #bxrdv .hcard p{font-size:16px;color:var(--soft)}
html[data-theme] body #bxrdv .tag{font-size:13px;border-radius:999px}
