.afdc-rdv{--r-accent:var(--accent,#C4896B);--r-texte:var(--texte,#2C2320);--r-doux:var(--texte-doux,#7A6860);max-width:780px;margin:32px auto 0;text-align:left;color:var(--r-texte)}
.afdc-rdv__steps{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.afdc-rdv__step{background:#fff;border-radius:var(--rayon,12px);box-shadow:var(--ombre-legere,0 2px 20px rgba(0,0,0,.06));padding:26px 28px}
.afdc-rdv__step[hidden],.afdc-rdv [hidden]{display:none!important}
.afdc-rdv__label{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--r-doux);margin:0 0 16px;display:flex;align-items:center;gap:10px}
.afdc-rdv__label span{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--r-accent);color:#fff;font-size:.8rem;letter-spacing:0}
.afdc-rdv__services{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.afdc-rdv__service{position:relative;display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid #eadfd6;border-radius:10px;cursor:pointer;transition:border-color .2s,background .2s}
.afdc-rdv__service input{position:absolute;opacity:0;pointer-events:none}
.afdc-rdv__service:hover{border-color:var(--r-accent)}
.afdc-rdv__service:has(input:checked){border-color:var(--r-accent);background:#fbf3ee;box-shadow:inset 0 0 0 1px var(--r-accent)}
.afdc-rdv__service:has(input:focus-visible){outline:2px solid var(--r-accent);outline-offset:2px}
.afdc-rdv__service-name{font-weight:500}
.afdc-rdv__service-meta{font-size:.85rem;color:var(--r-doux)}
.afdc-rdv__cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;text-transform:capitalize;font-size:1.05rem}
.afdc-rdv__nav{width:38px;height:38px;border-radius:50%;border:1px solid #eadfd6;background:#fff;font-size:1.3rem;line-height:1;cursor:pointer;color:var(--r-texte)}
.afdc-rdv__nav:disabled{opacity:.3;cursor:default}
.afdc-rdv__grid-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}
.afdc-rdv__dow{font-size:.72rem;color:var(--r-doux);text-transform:uppercase;padding-bottom:4px}
.afdc-rdv__day{aspect-ratio:1;max-height:52px;border:0;border-radius:10px;background:transparent;color:#c9bdb5;font:inherit;cursor:default}
.afdc-rdv__day.is-open{background:#f6ece5;color:var(--r-texte);cursor:pointer;font-weight:500}
.afdc-rdv__day.is-open:hover{background:#efdccf}
.afdc-rdv__day.is-sel,.afdc-rdv__time.is-sel{background:var(--r-accent)!important;color:#fff!important}
.afdc-rdv__day-title{margin:0 0 10px;font-weight:500;text-transform:capitalize}
.afdc-rdv__times{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}
.afdc-rdv__time{padding:10px 0;border:1px solid #eadfd6;border-radius:30px;background:#fff;font:inherit;cursor:pointer;color:var(--r-texte)}
.afdc-rdv__time:hover{border-color:var(--r-accent)}
.afdc-rdv__loading,.afdc-rdv__empty{color:var(--r-doux);font-size:.92rem;margin:10px 0 0}
.afdc-rdv__recap{background:#fbf3ee;border-radius:10px;padding:10px 14px;margin:0 0 16px}
.afdc-rdv__form label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;color:var(--r-doux);margin-bottom:14px}
.afdc-rdv__form small{font-size:.78rem}
.afdc-rdv__grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.afdc-rdv__form input,.afdc-rdv__form select,.afdc-rdv__form textarea{font:inherit;color:var(--r-texte);padding:11px 14px;border:1px solid #eadfd6;border-radius:8px;background:#fff;width:100%}
.afdc-rdv__form input:focus,.afdc-rdv__form select:focus,.afdc-rdv__form textarea:focus{outline:none;border-color:var(--r-accent)}
.afdc-rdv__hp{position:absolute!important;left:-9999px}
.afdc-rdv__submit{display:inline-block;padding:14px 32px;border:0;border-radius:40px;background:var(--r-accent);color:#fff;font:inherit;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .2s}
.afdc-rdv__submit:hover{background:var(--accent-hover,#A86E50)}
.afdc-rdv__submit:disabled{opacity:.6}
.afdc-rdv__note{font-size:.85rem;color:var(--r-doux);margin:12px 0 0}
.afdc-rdv__error{color:#a33;margin:12px 0 0}
.afdc-rdv__done{background:#fff;border-radius:var(--rayon,12px);box-shadow:var(--ombre-legere);padding:40px 28px;text-align:center}
.afdc-rdv__done-title{font-family:var(--font-titre,'Cormorant Garamond',serif);font-size:1.9rem;font-style:italic;margin:0 0 8px;color:var(--r-accent)}
@media (max-width:600px){.afdc-rdv__step{padding:20px 16px}.afdc-rdv__grid{grid-template-columns:1fr}.afdc-rdv__grid-days{gap:4px}.afdc-rdv__services{grid-template-columns:1fr}}
