.rdv-page{
  --r-sm:8px;--r-md:12px;--r-lg:16px;--r-plein:9999px;
  --ease-apple:cubic-bezier(0.25,0.1,0.25,1);--duree:250ms;
  --fond:#F4F6F8;--surface:#FFFFFF;--champ:#F8F9FB;--texte:#0B1030;--titre:#000324;--sourdine:#4A5170;--discret:#5B6280;--indice:#585F7A;
  --pale:#8E93A8;--trait:#C9CDD9;--trait-doux:#E3E6EE;--encre:#3A4163;--noir:#000324;--noir-survol:#12163A;--sur-noir:#FFFFFF;
  --case-fermee:#F1F2F6;--jour-choisi:#E6E8F0;--jour-choisi-bord:#000324;--survol:#EEF0F5;--ligne-courante:#EEF0F5;
  --actif-bascule:#E6E8F0;--focus:#000324;--erreur:#B42318;--succes:#067647;--badge:#E7F8EC;--point-actif:#000324;
  --verre:rgba(255,255,255,0.72);--ombre:0 8px 24px rgba(0,3,36,0.10);--ombre-bouton:0 2px 8px rgba(0,3,36,0.25);
  --chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%23000324' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  margin:0;min-height:100vh;background:var(--fond);color:var(--texte);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.43;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
  transition:background-color var(--duree) var(--ease-apple),color var(--duree) var(--ease-apple);
}
html[data-theme="sombre"] .rdv-page{
  --fond:#000324;--surface:#0A0E2E;--champ:#12163A;--texte:#E8ECF4;--titre:#F4F6F8;--sourdine:#A3AAC4;--discret:#9098B5;--indice:#8E96B3;
  --pale:#6B7294;--trait:#2A3060;--trait-doux:#1A1F4A;--encre:#6E76A8;--noir:#00FF41;--noir-survol:#00E637;--sur-noir:#000324;
  --case-fermee:#0E1236;--jour-choisi:#1A1F4A;--jour-choisi-bord:#00FF41;--survol:#12163A;--ligne-courante:#1A1F4A;
  --actif-bascule:#1A1F4A;--focus:#00FF41;--erreur:#FF7A6E;--succes:#00FF41;--badge:#0E2A1A;--point-actif:#00FF41;
  --verre:rgba(10,14,46,0.72);--ombre:0 8px 24px rgba(0,0,0,0.5);--ombre-bouton:0 2px 8px rgba(0,255,65,0.25);
  --chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%23E8ECF4' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  color-scheme:dark;
}
html[data-theme="sombre"]{background:#000324}
.rdv-carte,.rdv-champ,.rdv-telephone,.rdv-jour,.rdv-heure,.rdv-fleche,.rdv-format,.rdv-continuer,.rdv-avis,.rdv-deroulant,.rdv-etapes,.rdv-gauche,.rdv-pied{
  transition:background-color var(--duree) var(--ease-apple),border-color var(--duree) var(--ease-apple),color var(--duree) var(--ease-apple),
    box-shadow var(--duree) var(--ease-apple),transform var(--duree) var(--ease-apple)}
@media (prefers-reduced-motion:reduce){
  .rdv-page,.rdv-page *{transition:none !important;animation:none !important}
}
.rdv-page *,.rdv-page *::before,.rdv-page *::after{box-sizing:border-box}
.rdv [hidden]{display:none !important}
.rdv{max-width:1100px;margin:0 auto;padding:56px 16px 24px}
.rdv-page :focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.rdv-invisible{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ─────────── La carte ─────────── */
.rdv-carte{max-width:807px;margin:0 auto;background:var(--surface);color:var(--texte);border:1px solid var(--encre);border-radius:var(--r-lg)}
.rdv-carte.rdv-etape-deux{max-width:545px}
.rdv-etapes{display:flex;justify-content:center;gap:24px;padding:10px 16px;border-bottom:1px solid var(--encre);font-size:14px;line-height:20px}
.rdv-etape{display:inline-flex;align-items:center;gap:8px;color:var(--discret);white-space:nowrap}
.rdv-etape::before{content:"";width:7px;height:7px;border-radius:var(--r-plein);background:var(--encre)}
.rdv-etape-active::before{background:var(--point-actif)}
.rdv-etape-active{color:var(--texte)}
.rdv-etape-faite::before{content:"";width:9px;height:5px;border-radius:0;background:none;border:solid var(--pale);border-width:0 0 1.6px 1.6px;transform:rotate(-45deg) translateY(-2px)}
.rdv-corps{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:422px} /* corps de la référence : 422 px */
.rdv-etape-deux .rdv-corps{grid-template-columns:minmax(0,1fr);min-height:0}
.rdv-gauche{padding:24px;border-right:1px solid var(--encre);min-width:0}
.rdv-droite{padding:24px;min-width:0;position:relative}
.rdv-pied{display:flex;justify-content:center;align-items:center;gap:6px;padding:8px 16px;border-top:1px solid var(--encre);font-size:11px;font-weight:500;color:var(--texte)}
.rdv-pied-logo{display:block;width:84px;height:12px;background:var(--titre);-webkit-mask:url(/logo-marine.svg) no-repeat center/contain;mask:url(/logo-marine.svg) no-repeat center/contain}

/* ─────────── Colonne gauche (étape 1) ─────────── */
.rdv-gauche{padding-top:28px}
.rdv-gauche h1{font-size:20px;font-weight:600;line-height:24px;margin:0 0 12px;color:var(--titre)}
.rdv-sous-titre{font-size:14px;font-weight:700;line-height:17.5px;color:var(--sourdine);margin:0}
.rdv-description{font-size:14px;line-height:17.5px;color:var(--sourdine);margin:0 0 18px;overflow-wrap:anywhere}
.rdv-description strong{color:var(--sourdine);font-weight:700}
.rdv-bonjour{font-size:15px;font-weight:500;margin:0 0 16px}
.rdv-champ,.rdv-telephone{width:100%;min-height:40px;border:1px solid var(--encre);border-radius:var(--r-md);background:var(--champ);color:var(--texte);font:inherit;font-size:15px}
.rdv-champ{padding:9px 16px;display:block}
select.rdv-champ{appearance:none;-webkit-appearance:none;padding-right:40px;cursor:pointer;
  background-image:var(--chevron);
  background-repeat:no-repeat;background-position:right 14px center;background-size:14px}
textarea.rdv-champ{resize:vertical;min-height:84px}
.rdv-champ::placeholder,.rdv-telephone input::placeholder{color:var(--indice)}
.rdv-telephone{position:relative;display:flex;align-items:stretch;margin:0 0 16px}
.rdv-pays{display:flex;align-items:center;gap:6px;padding:0 10px;border:0;border-right:1px solid var(--encre);background:transparent;color:var(--texte);border-radius:var(--r-md) 0 0 var(--r-md);cursor:pointer;min-width:0}
.rdv-drapeau{font-size:17px;line-height:1}
.rdv-caret{width:0;height:0;border:4px solid transparent;border-top:5px solid var(--encre);margin-top:4px}
.rdv-pays[aria-expanded="true"] .rdv-caret{border-top-color:transparent;border-bottom:5px solid var(--encre);margin:0 0 4px}
.rdv-telephone input{flex:1;min-width:0;border:0;background:transparent;padding:9px 8px;font:inherit;font-size:15px;color:var(--texte)}
.rdv-page .rdv-telephone input:focus,.rdv-page .rdv-telephone input:focus-visible{outline:0}
.rdv-telephone:focus-within{box-shadow:0 0 0 1px var(--encre)}
#rdv-email-principal{margin:0 0 16px}
.rdv-noms{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 16px}
.rdv-consentement{font-size:13px;line-height:18px;color:var(--texte);margin:0 0 18px}
.rdv-consentement a{color:var(--texte);font-weight:600;text-decoration:underline;padding:6px 0}
.rdv-continuer{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:10px 20px;border:0;border-radius:var(--r-md);
  background:var(--noir);color:var(--sur-noir);font:inherit;font-size:15px;font-weight:500;line-height:20px;cursor:pointer;text-decoration:none}
.rdv-continuer:hover{background:var(--noir-survol)}
.rdv-continuer:active,.rdv-heure:active,.rdv-jour:active{transform:scale(0.98)}
.rdv-continuer[disabled]{opacity:.6;cursor:progress}
.rdv-secondaire{min-height:44px;padding:10px 16px;border:1px solid var(--encre);border-radius:var(--r-md);background:var(--surface);color:var(--texte);font:inherit;font-weight:500;cursor:pointer}
.rdv-message{margin:0 0 12px;font-size:13px;color:var(--erreur)}
.rdv-petit{font-size:12px;color:var(--sourdine)}
.rdv-lien{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;color:var(--texte);font-weight:600}
.rdv-pot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rdv-turnstile:empty{display:none}
.rdv-turnstile{margin:0 0 12px}
.rdv-question{display:block;margin:0 0 16px}
.rdv-secondaires{display:grid;grid-template-rows:0fr;visibility:hidden;opacity:0;transition:grid-template-rows var(--duree) var(--ease-apple),opacity var(--duree) var(--ease-apple),visibility 0s linear var(--duree)}
.rdv-secondaires>.rdv-secondaires-contenu{min-height:0;overflow:hidden}
.rdv-secondaires.rdv-deplie{grid-template-rows:1fr;visibility:visible;opacity:1;transition:grid-template-rows var(--duree) var(--ease-apple),opacity var(--duree) var(--ease-apple),visibility 0s}
.rdv-secondaires.rdv-deplie>.rdv-secondaires-contenu{overflow:visible}
@media (prefers-reduced-motion:reduce){.rdv-secondaires,.rdv-secondaires.rdv-deplie{transition:none}}
.rdv-libelle{display:block;font-size:14px;font-weight:600;margin:0 0 8px;color:var(--titre)}
.rdv-requis{color:var(--erreur);margin-left:3px}
.rdv-puces{display:flex;flex-wrap:wrap;gap:8px}
.rdv-puce{min-height:40px;padding:9px 14px;border:1px solid var(--encre);border-radius:var(--r-plein);background:var(--surface);color:var(--texte);font:inherit;font-size:14px;cursor:pointer}
.rdv-puce[aria-pressed="true"]{background:var(--noir);border-color:var(--noir);color:var(--sur-noir)}
.rdv-autre{margin-top:8px}
@keyframes rdv-clignote{0%,100%{box-shadow:0 0 0 0 transparent}50%{box-shadow:0 0 0 4px var(--focus)}}
.rdv-clignote{animation:rdv-clignote var(--duree) var(--ease-apple) 2}
@media (prefers-reduced-motion:reduce){.rdv-clignote{animation:none}.rdv-clignote:focus{box-shadow:0 0 0 2px var(--focus)}}
.rdv-disqualifie{border:1px solid var(--encre);border-radius:var(--r-md);padding:16px;background:var(--champ);color:var(--texte)}
.rdv-disqualifie p{margin:0 0 12px}

.rdv-deroulant{position:absolute;z-index:20;background:var(--surface);color:var(--texte);border-radius:var(--r-md);box-shadow:var(--ombre)}
.rdv-pays-deroulant{top:calc(100% + 6px);left:0;width:min(300px,100%);border:1px solid var(--trait-doux)}
.rdv-fuseau-deroulant{top:calc(100% + 6px);left:0;width:min(346px,calc(100vw - 40px));border:2px solid var(--focus)}
.rdv-recherche{display:flex;align-items:center;gap:8px;padding:8px 10px;color:var(--sourdine)}
.rdv-recherche input{flex:1;min-width:0;min-height:32px;padding:4px 10px;border:1px solid var(--encre);border-radius:var(--r-sm);font:inherit;font-size:14px;color:var(--texte);background:var(--surface)}
.rdv-recherche-cadre{border-bottom:1px solid var(--trait-doux)}
.rdv-recherche-cadre input{border-color:var(--trait)}
.rdv-options{list-style:none;margin:0;padding:0 0 6px;max-height:210px;overflow-y:auto}
.rdv-fuseau-deroulant .rdv-options{max-height:300px}
.rdv-option{display:flex;align-items:center;gap:8px;min-height:32px;padding:6px 12px;cursor:pointer;font-size:14px}
.rdv-option .rdv-option-code,.rdv-option .rdv-option-heure{color:var(--discret)}
.rdv-option .rdv-option-heure{margin-left:auto;color:var(--texte)}
.rdv-option[aria-selected="true"],.rdv-option.rdv-courante{background:var(--ligne-courante)}
.rdv-option.rdv-active{background:var(--survol);outline:1px solid var(--trait)}
.rdv-groupe{padding:10px 16px 4px;font-weight:700;font-size:14px;color:var(--titre)}
.rdv-fuseau-deroulant .rdv-option{padding:6px 16px}
.rdv-vide{padding:10px 16px;color:var(--discret)}

/* ─────────── Semaine, fuseau, heures ─────────── */
.rdv-evenement-titre{font-size:16px;font-weight:600;margin:0 0 6px;color:var(--titre)}
.rdv-cal-tete{display:flex;justify-content:space-between;align-items:center;margin:0 0 16px}
.rdv-mois{font-size:16px;font-weight:600;line-height:24px;margin:0;color:var(--titre)}
.rdv-mois::first-letter{text-transform:uppercase}
.rdv-cal-nav{display:flex;gap:8px}
.rdv-fleche{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--encre);border-radius:var(--r-sm);background:var(--surface);color:var(--texte);cursor:pointer}
.rdv-fleche[disabled]{border-color:var(--trait);color:var(--pale);cursor:default}
.rdv-semaine{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 16px}
.rdv-semaine.rdv-semaine-cinq{grid-template-columns:repeat(5,minmax(0,1fr))}
.rdv-jour{min-height:70px;min-width:0;padding:6px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1px solid var(--trait);border-radius:var(--r-md);
  background:var(--surface);color:var(--titre);font:inherit;font-size:14px;line-height:20px;cursor:pointer}
.rdv-jour .rdv-jour-num{font-weight:500}
.rdv-jour.rdv-ferme{background:var(--case-fermee);border-color:var(--trait-doux);color:var(--pale);cursor:default}
.rdv-jour.rdv-jour-choisi{background:var(--jour-choisi);border:2px solid var(--jour-choisi-bord)}
.rdv-jour:not(.rdv-ferme):not(.rdv-jour-choisi):hover{border-color:var(--encre)}
.rdv-reglages{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px}
.rdv-fuseau-bloc{position:relative;min-width:0}
.rdv-fuseau{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:2px 4px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--titre);font:inherit;font-size:14px;cursor:pointer}
.rdv-fuseau[aria-expanded="true"]{background:var(--survol)}
.rdv-format{display:inline-flex;flex:none;border:1px solid var(--encre);border-radius:var(--r-plein);overflow:hidden}
.rdv-format button{min-width:41px;min-height:30px;padding:0 8px;border:0;background:var(--surface);color:var(--discret);font:inherit;font-size:14px;cursor:pointer}
.rdv-format button+button{border-left:1px solid var(--trait)}
.rdv-format button[aria-pressed="true"]{background:var(--actif-bascule);color:var(--titre);font-weight:600}
.rdv-heures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:504px;overflow-y:auto;padding:1px 10px 1px 1px;margin-right:-10px;align-content:start}
.rdv-heure{min-height:40px;padding:8px 4px;border:1px solid var(--encre);border-radius:var(--r-md);background:var(--surface);color:var(--titre);font:inherit;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap}
.rdv-heure-apercu{cursor:default}
.rdv-heure:hover{background:var(--survol)}
.rdv-heure.rdv-confirmer{background:var(--noir);border-color:var(--noir);color:var(--sur-noir);box-shadow:var(--ombre-bouton)}
.rdv-aucune{grid-column:1 / -1;justify-self:center;margin:8px 0 24px;padding:14px 24px;max-width:304px;border:1px solid var(--encre);border-radius:var(--r-md);text-align:center;box-shadow:var(--ombre);color:var(--titre)}
.rdv-inactif .rdv-cal-tete,.rdv-inactif .rdv-semaine,.rdv-inactif .rdv-reglages,.rdv-inactif .rdv-heures{opacity:.3;pointer-events:none}
.rdv-inactif .rdv-jour.rdv-jour-choisi{background:var(--surface);border:1px solid var(--trait)}
.rdv-avis{display:none;position:absolute;left:50%;top:176px;transform:translateX(-50%);width:min(270px,88%);padding:12px;border:1px solid var(--encre);border-radius:var(--r-lg);
  background:var(--verre);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--titre);font-size:14px;line-height:20px;text-align:center;box-shadow:var(--ombre);z-index:5}
.rdv-avis p{margin:0}
.rdv-avis .rdv-continuer{margin-top:12px}
.rdv-inactif .rdv-avis{display:block}
.rdv-degrade-actif #rdv-avis-texte{display:none}

/* Questions du type d'événement et invités (étape 2). */
.rdv-questions-evenement{border-top:1px solid var(--encre);margin-top:16px;padding-top:16px}
.rdv-invites{border-top:1px solid var(--encre);margin-top:16px;padding-top:16px}
.rdv-invites-tete{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--discret);font-size:14px}
.rdv-info{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:var(--r-plein);background:var(--discret);color:var(--sur-noir);font-size:10px;font-weight:700;font-style:normal;cursor:help}
.rdv-invite{display:flex;gap:8px;margin:0 0 8px}
.rdv-invite .rdv-champ{flex:1;min-width:0}
.rdv-invite button{flex:none;width:40px;border:1px solid var(--encre);border-radius:var(--r-md);background:var(--surface);color:var(--sourdine);font:inherit;font-size:18px;cursor:pointer}
.rdv-invites-ajouter{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 12px;border:1px solid var(--encre);border-radius:var(--r-sm);background:var(--surface);color:var(--sourdine);font:inherit;font-size:14px;cursor:pointer}
.rdv-invites-ajouter[disabled]{opacity:.5;cursor:default}

/* ─────────── Merci ─────────── */
.rdv-merci{padding:40px 24px;text-align:center;max-width:560px;margin:0 auto}
.rdv-merci-icone{width:56px;height:56px;margin:0 auto 16px;border-radius:var(--r-plein);display:grid;place-items:center;background:var(--badge);color:var(--succes)}
.rdv-merci h2{font-size:22px;font-weight:600;margin:0 0 8px;color:var(--titre)}
.rdv-merci-texte{font-size:16px;font-weight:500;margin:0 0 6px}
.rdv-merci-meet{color:var(--sourdine);margin:0 0 20px;overflow-wrap:anywhere}
.rdv-merci-meet a{display:inline-flex;align-items:center;min-height:44px;color:var(--texte);font-weight:600}
.rdv-agenda{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 16px}
.rdv-agenda-bouton{min-height:44px;display:inline-flex;align-items:center;padding:10px 14px;border:1px solid var(--encre);border-radius:var(--r-md);background:var(--surface);color:var(--texte);font-weight:500;text-decoration:none}
.rdv-agenda-bouton:hover{background:var(--survol)}
.rdv-merci video{width:100%;max-width:100%;border-radius:var(--r-md);margin:12px 0;background:var(--noir)}
.rdv-preparation{text-align:left;margin-top:20px;border-top:1px solid var(--trait-doux);padding-top:20px}

@media (max-width:760px){
  .rdv-corps{grid-template-columns:minmax(0,1fr);min-height:0}
  .rdv-gauche{border-right:0;border-bottom:1px solid var(--encre)}
}
@media (max-width:640px){
  .rdv{padding:0}
  .rdv-carte{border:0;border-radius:0;min-height:100vh}
  .rdv-gauche{padding:24px 20px}
  .rdv-droite{padding:24px 20px}
  .rdv-etapes{gap:12px}
  .rdv-noms{gap:12px}
  .rdv-semaine{gap:4px}
  .rdv-jour{min-height:60px;font-size:13px}
  .rdv-heures{max-height:none;overflow:visible;gap:10px;margin-right:0;padding-right:1px}
  .rdv-heure{font-size:13px}
}
