/* pilotrh-jetons.css */
/* ==========================================================================
   V131 - Identité visuelle PILOT'RH : jetons de design (variables --pr-…).
   Ajouté automatiquement en tête de chaque regroupement CSS (pilotrh_css()).
   Les composants communs (boutons, bannières, en-tête) sont dans
   css/pilotrh-identite.css, chargé en dernier par includes/header.php.
   ========================================================================== */
:root {
  /* Couleurs de marque : marine + violet */
  --pr-navy: #1b155f;          --pr-navy-rgb: 27 21 95;        /* fonds sombres (pied de page, bandeaux) */
  --pr-ink: #121d5a;           --pr-ink-rgb: 18 29 90;         /* texte principal et titres */
  --pr-violet-900: #29217f;    --pr-violet-900-rgb: 41 33 127; /* texte fort, survol */
  --pr-violet: #5136d9;        --pr-violet-rgb: 81 54 217;     /* accent : liens, éléments actifs */
  --pr-violet-500: #6337f4;    --pr-violet-500-rgb: 99 55 244; /* fin du dégradé */
  --pr-violet-300: #aaa5f2;    --pr-violet-300-rgb: 170 165 242; /* accent clair, sur fond sombre */
  --pr-violet-200: #d0cff3;    --pr-violet-200-rgb: 208 207 243;
  --pr-violet-100: #eeefff;    --pr-violet-100-rgb: 238 239 255; /* fonds teintés */
  /* Dégradés signature bleu → violet (uniquement dans les dégradés, jamais en aplat) */
  --pr-blue: #2a72dc;          --pr-blue-rgb: 42 114 220;
  --pr-magenta: #a52bd9;       --pr-magenta-rgb: 165 43 217;
  /* Boutons principaux et bandeaux : texte blanc lisible sur toute la longueur (≥ 4,5:1) */
  --pr-gradient: linear-gradient(110deg, var(--pr-blue), var(--pr-violet-500) 60%, var(--pr-magenta));
  /* Mots mis en valeur dans les titres (texte en dégradé, grands caractères) */
  --pr-gradient-text: linear-gradient(100deg, #087bff, #354aff 52%, #9900e9);

  /* Neutres */
  --pr-surface: #ffffff;       --pr-surface-rgb: 255 255 255;
  --pr-surface-alt: #f4f7ff;   --pr-surface-alt-rgb: 244 247 255; /* fonds de section et de bannière */
  --pr-line: #dde2f3;          --pr-line-rgb: 221 226 243;     /* bordures, séparateurs */
  --pr-subtle: #646c90;        --pr-subtle-rgb: 100 108 144;   /* mentions, texte tertiaire (contraste ≥ 4,5:1 sur les fonds clairs) */
  --pr-muted: #535d83;         --pr-muted-rgb: 83 93 131;      /* texte secondaire */
  --pr-on-dark: #e9e9ff;       --pr-on-dark-rgb: 233 233 255;  /* texte sur fond sombre */

  /* États (le vert-sarcelle est réservé au succès) */
  --pr-success: #176b5a;       --pr-success-rgb: 23 107 90;
  --pr-success-bg: #e4f4ef;    --pr-success-bg-rgb: 228 244 239;
  --pr-warning: #7d5700;       --pr-warning-rgb: 125 87 0;
  --pr-warning-bg: #fff4dc;    --pr-warning-bg-rgb: 255 244 220;
  --pr-error: #a32222;         --pr-error-rgb: 163 34 34;
  --pr-error-bg: #fdecec;      --pr-error-bg-rgb: 253 236 236;
  --pr-etoile: #e5a100;        --pr-etoile-rgb: 229 161 0;     /* étoiles des notes (témoignages) */

  /* Typographie (la police Inter n'est pas embarquée : pile système cohérente sinon) */
  --pr-font: "Inter", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Roboto, Arial, sans-serif;
  --pr-h1: clamp(2rem, 1.35rem + 2.1vw, 3.2rem);          /* 32 → 51 px */
  --pr-h1-banner: clamp(1.75rem, 1.3rem + 1.4vw, 2.5rem); /* 28 → 40 px, titres posés sur une image */
  --pr-h2: clamp(1.5rem, 1.25rem + 0.9vw, 2.1rem);        /* 24 → 34 px */
  --pr-h3: clamp(1.15rem, 1.08rem + 0.3vw, 1.3rem);       /* 18 → 21 px */

  /* Formes et mise en page */
  --pr-radius-sm: 10px;
  --pr-radius: 16px;
  --pr-radius-lg: 24px;
  --pr-radius-btn: 12px;
  --pr-bordure-bloc: 1.5px;                              /* contour en dégradé des blocs (pilotrh-identite.css) */
  --pr-container: 1200px;
  --pr-gutter: 24px;
  --pr-banner-gap: 24px;       /* espace entre l'en-tête et la bannière */
}
@media (max-width: 640px) { :root { --pr-gutter: 16px; --pr-banner-gap: 16px; } }

/* pilotrh-harmonie.css */
/* PILOT'RH V74 — palette de l'accueil, exclusivement sur quatre pages publiques. */
body.pr74-harmonie{--pr74-navy:var(--pr-violet-900);--pr74-ink:var(--pr-violet-900);--pr74-violet:var(--pr-violet);--pr74-blue:var(--pr-violet-300);--pr74-soft:var(--pr-surface-alt);--pr74-border:var(--pr-violet-100);--pr74-muted:var(--pr-muted);background:var(--pr-surface);color:var(--pr74-ink)}
.pr74-harmonie :is(.v35-page,.pr43-contact,.pr16-content){color:var(--pr74-ink)}
.pr74-harmonie :is(.v35-hero,.pr43-intro,.pr16-page-hero){background:radial-gradient(ellipse at 90% 18%,rgb(var(--pr-violet-rgb) / 0.16),transparent 43%),linear-gradient(115deg,var(--pr-surface) 0%,var(--pr-surface-alt) 52%,var(--pr-line) 100%);border-color:var(--pr74-border)}
.pr74-harmonie :is(.v35-page h1,.v35-page h2,.v35-card h3,.v47-card h2,.v47-card h3,.pr43-intro h1,.pr43-card h2,.pr16-hero-copy h1,.pr16-content h2){color:var(--pr74-ink)}
.pr74-harmonie :is(.v35-kicker,.v47-tag,.v47-card summary,.pr43-kicker,.pr16-eyebrow){color:var(--pr-violet)}
.pr74-harmonie :is(.v35-lead,.v35-section p,.v35-section li,.v35-card p,.pr43-intro p,.pr43-card p,.pr16-hero-copy p,.pr16-form-note){color:var(--pr74-muted)}
.pr74-harmonie :is(.v35-card,.v47-card,.pr43-card,.pr16-content .ag-panel){border-color:var(--pr74-border);background:var(--pr-surface);box-shadow:0 10px 30px rgb(var(--pr-violet-900-rgb) / 0.07)}
.pr74-harmonie :is(.v47-question,.v47-empty,.pr16-form-note){background:var(--pr-surface-alt);border-color:var(--pr-violet-300);color:var(--pr74-ink)}
.pr74-harmonie :is(.v47-card a,.v47-question-form label,.pr43-email,.pr43-form label,.pr16-secondary){color:var(--pr-violet-900)!important}
.pr74-harmonie :is(.v35-btn,.v47-search button,.v47-question-form button,.pr43-coral,.pr43-navy,.pr16-primary,.pr16-content button[type=submit],.pr16-content input[type=submit]){background:var(--pr-gradient);color:var(--pr-surface)!important;border-color:transparent;box-shadow:0 8px 22px rgb(var(--pr-violet-rgb) / 0.15)}
.pr74-harmonie :is(.v35-btn,.v47-search button,.v47-question-form button,.pr43-button,.pr16-primary,.pr16-content button[type=submit]):hover{filter:brightness(.93)}
.pr74-harmonie .v35-btn--outline{background:transparent;color:var(--pr-violet-900)!important;border:1px solid var(--pr-violet);box-shadow:none}
.pr74-harmonie :is(.v47-quick a,.v47-filters a){border-color:var(--pr-violet-300);color:var(--pr-violet-900);background:var(--pr-surface)}
.pr74-harmonie :is(.v47-filters .active,.v47-quick a:first-child){background:var(--pr-violet);color:var(--pr-surface)}
.pr74-harmonie :is(.v47-search input,.v47-question-form input,.v47-question-form textarea,.pr43-form input,.pr43-form select,.pr43-form textarea,.pr16-content input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.pr16-content select,.pr16-content textarea){border-color:var(--pr-line);background:var(--pr-surface);color:var(--pr-violet-900)}
.pr74-harmonie :is(input,textarea,select,button,a):focus-visible{outline:3px solid var(--pr-violet-300);outline-offset:3px}
.pr74-harmonie .v35-footercta{background:var(--pr-gradient)}
.pr74-harmonie .v35-footercta :is(h2,p){color:var(--pr-surface)}
.pr74-harmonie .pr43-contact{background:linear-gradient(180deg,var(--pr-surface-alt),var(--pr-surface) 45%)}
.pr74-harmonie .pr43-icon{background:var(--pr-line);color:var(--pr-violet)}
.pr74-harmonie .pr43-note,.pr74-harmonie .pr43-privacy{color:var(--pr-muted)}
.pr74-harmonie .pr16-art-circle{background:linear-gradient(145deg,var(--pr-line),var(--pr-violet-200))}
.pr74-harmonie .pr16-art-card{box-shadow:0 20px 60px rgb(var(--pr-violet-900-rgb) / 0.12);border-color:var(--pr-violet-100)}
.pr74-harmonie .pr16-art-card :is(strong,.pr16-art-icon){color:var(--pr-violet-900)}
.pr74-harmonie .pr16-art-card>span:last-child{color:var(--pr-muted)}
.pr74-harmonie .pr16-form-note{border-left-color:var(--pr-violet)}
.pr74-harmonie .pr16-form-note strong{color:var(--pr-violet-900)}
@media(max-width:680px){.pr74-harmonie .v35-hero{padding:26px 22px}.pr74-harmonie .v47-question{padding:22px}.pr74-harmonie .pr43-intro{padding-top:36px}}
@media(prefers-reduced-motion:reduce){.pr74-harmonie :is(button,a){transition:none}}

/* pilotrh-theme.css */
/* PILOT'RH V114 - harmonisation des pages publiques sur la palette de l'accueil V63. */
:root{--pr114-ink:var(--pr-ink);--pr114-deep:var(--pr-violet-900);--pr114-primary:var(--pr-violet);--pr114-purple:var(--pr-violet);--pr114-sky:var(--pr-violet-300);--pr114-muted:var(--pr-muted);--pr114-soft:var(--pr-surface-alt);--pr114-line:var(--pr-line);--pr114-gradient:var(--pr-gradient)}
body:not(.pr-admin-page){--pr59-deep:var(--pr-violet-900);--pr59-deeper:var(--pr-ink);--pr59-teal:var(--pr-violet-300);--pr59-coral:var(--pr-violet-300);--pr59-ink:var(--pr-ink);--pr59-text:var(--pr-muted);--pr59-border:var(--pr-violet-100);--pr59-soft:var(--pr-line);--primary:var(--pr-violet);--primary-color:var(--pr-violet);--accent:var(--pr-violet);--color-primary:var(--pr-violet);--color-accent:var(--pr-violet);accent-color:var(--pr-violet);color:var(--pr114-ink)}
body:not(.pr-admin-page) .pr-header{background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--pr-violet-100)!important;box-shadow:0 4px 24px rgb(var(--pr-violet-900-rgb) / 0.065)}
body:not(.pr-admin-page) .pr36-top{background:var(--pr-line)!important}
body:not(.pr-admin-page) .pr36-account,body:not(.pr-admin-page) .pr-nav a,body:not(.pr-admin-page) .pr36-expand{color:var(--pr-violet-900)!important}
body:not(.pr-admin-page) .pr-nav a:hover,body:not(.pr-admin-page) .pr36-account:hover{color:var(--pr-violet)!important}
body:not(.pr-admin-page) .pr36-submenu{background:var(--pr-surface)!important;border-color:var(--pr-line)!important;box-shadow:0 18px 38px rgb(var(--pr-violet-900-rgb) / 0.15)!important}
body:not(.pr-admin-page) .pr36-submenu a:hover{background:var(--pr-line)!important}
body:not(.pr-admin-page) .pr-nav .pr42-contact-button,body:not(.pr-admin-page) .pr-nav .pr-rdv-button{color:var(--pr-surface)!important;background:var(--pr114-gradient)!important;border-color:transparent!important;box-shadow:0 7px 20px rgb(var(--pr-violet-rgb) / 0.2)!important}
body:not(.pr-admin-page) .pr36-signature{color:var(--pr-violet-900)!important}
/* Do not touch photo banners: keep their own art direction and overlay geometry. */
body:not(.pr-admin-page) :is(main,.rv-main) :is(h1,h2,h3){color:var(--pr114-ink)}
body:not(.pr-admin-page) :is(main,.rv-main) a:not([class]):hover{color:var(--pr-violet)}
body:not(.pr-admin-page) :is(main,.rv-main) :is(input,textarea,select):focus-visible{outline:2px solid var(--pr-violet);outline-offset:2px;border-color:var(--pr-violet)}
body:not(.pr-admin-page) :is(main,.rv-main) :is(button,input[type=submit],input[type=button]):not(.is-secondary):not([class*=secondary]):not([class*=outline]){border-radius:10px}
body:not(.pr-admin-page) :is(main,.rv-main) :is(.rv86-primary,.rv-btn-primary,.btn-primary,.pr-btn-primary,.pr59-btn-primary){background:var(--pr114-gradient);color:var(--pr-surface);border-color:transparent;box-shadow:0 9px 22px rgb(var(--pr-violet-rgb) / 0.18)}
body:not(.pr-admin-page) :is(main,.rv-main) :is(.rv86-primary,.rv-btn-primary,.btn-primary,.pr-btn-primary,.pr59-btn-primary):hover{background:var(--pr-gradient);color:var(--pr-surface)}
body:not(.pr-admin-page) :is(main,.rv-main) :is(.rv86-access,.rv-card,.pr-card){border-color:var(--pr114-line);border-radius:16px}
body:not(.pr-admin-page) :is(main,.rv-main) :is(.rv86-kicker,.pr-kicker){color:var(--pr-violet)}
@media(max-width:760px){body:not(.pr-admin-page) :is(main,.rv-main) :is(input,select,textarea){max-width:100%}}

/* V116 - charte publique, surcharge ciblee apres V114. Administration exclue. */
:root{--pr116-navy:var(--pr-ink);--pr116-blue:var(--pr-violet);--pr116-violet:var(--pr-violet);--pr116-magenta:var(--pr-violet);--pr116-lavender:var(--pr-surface-alt);--pr116-border:var(--pr-line);--pr116-gradient:var(--pr-gradient)}
body:not(.pr-admin-page){--pr-teal:var(--pr-violet);--pr18-teal:var(--pr-violet);--pr18-deep:var(--pr-ink);--pr18-ink:var(--pr-ink);--pr18-sage:var(--pr-surface-alt);--pr18-coral:var(--pr-violet);--pr59-teal:var(--pr-violet);--pr59-coral:var(--pr-violet);--pr114-ink:var(--pr-ink);--pr114-deep:var(--pr-ink);--pr114-primary:var(--pr-violet);--pr114-gradient:var(--pr116-gradient);--primary:var(--pr-violet);--primary-color:var(--pr-violet);--accent:var(--pr-violet);accent-color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.pr-header .pr-brand-subtitle,.pr-header .pr-nav a,.pr-header .pr-menu-toggle){color:var(--pr116-navy)!important}
body:not(.pr-admin-page) :is(.pr-header .pr-nav a:hover,.pr-header .pr-nav a[aria-current=page]){background:var(--pr116-lavender)!important;color:var(--pr-violet)!important}
body:not(.pr-admin-page) :is(.pr18-footer.pr-footer,.pr-legal-next,.pr-cookie-banner){background:var(--pr-ink)!important;color:var(--pr-surface)!important}
body:not(.pr-admin-page) :is(.pr18-footer-contact,.pr18-mobile-rdv,.pr-cookie-banner button){background:var(--pr116-gradient)!important;color:var(--pr-surface)!important}
body:not(.pr-admin-page) :is(.pr18-faq-heading span,.pr18-faq summary:after,.pr18-faq details a,.pr-legal-kicker,.pr-legal-breadcrumb a,.pr-legal-toc a:hover,.pr-legal-section a,.pr-legal-next a,.rdv-privacy a,.pr23-back,.pr23-breadcrumb a,.pr23-help a,.pr23-support a){color:var(--pr-violet)!important}
body:not(.pr-admin-page) :is(.pr-legal-main,.pr23-account-page){color:var(--pr116-navy)}
body:not(.pr-admin-page) :is(.pr-legal-hero,.pr23-hero){background:linear-gradient(115deg,var(--pr-surface-alt),var(--pr-surface) 88%)!important;border-color:var(--pr116-border)!important}
body:not(.pr-admin-page) :is(.pr-legal-toc,.pr-legal-meta span,.pr-legal-number,.pr-legal-section code,.pr23-card-icon,.pr23-support,.pr23-help){background:var(--pr-surface-alt)!important;color:var(--pr-ink)!important;border-color:var(--pr116-border)!important}
body:not(.pr-admin-page) :is(.pr-legal-main h1,.pr-legal-main h2,.pr-legal-toc strong,.pr23-hero h1,.pr23-card h2,.pr23-support strong,.rdv-intro h1){color:var(--pr-ink)!important}
body:not(.pr-admin-page) :is(.pr23-eyebrow,.pr23-card-icon,.pr23-details dt){color:var(--pr-violet)!important}
body:not(.pr-admin-page) :is(.pr23-avatar,#buttonModifierMotDePasse,.pr-pill,.ag-btn:not(.ag-danger):not(.ag-secondary)){background:var(--pr116-gradient)!important;color:var(--pr-surface)!important;border-color:transparent!important}
body:not(.pr-admin-page) #buttonModifierMotDePasse:hover{filter:brightness(.92)}
body:not(.pr-admin-page) :is(.pr23-field input:focus,.pr-search:focus){outline-color:var(--pr-violet-300)!important;border-color:var(--pr-violet)!important}
body:not(.pr-admin-page) :is(.pr23-card,.pr23-field input,.pr18-faq details){border-color:var(--pr116-border)!important}
body:not(.pr-admin-page) :is(.pr23-show input,.rv-main input[type=checkbox],.rv-main input[type=radio]){accent-color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.pr-legal-notice){background:var(--pr-surface-alt)!important;border-left-color:var(--pr-violet)!important;color:var(--pr-violet-900)!important}
body:not(.pr-admin-page) .pr-legal-next a{background:var(--pr-surface)!important}
body:not(.pr-admin-page) .pr-cookie-banner a{color:var(--pr-violet-100)!important}
body:not(.pr-admin-page) :is(.pr23-account-page a,.pr-legal-main a,.rv-main a):focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}
@media(max-width:760px){body:not(.pr-admin-page) :is(.pr23-card,.pr-legal-main,.rv-main){min-width:0}body:not(.pr-admin-page) :is(.pr23-field input,.rv-main input,.rv-main select,.rv-main textarea){max-width:100%;box-sizing:border-box}}

/* V119 - ajustements cibles de la page Services RH V52 ; pas de modification des traitements. */
body:not(.pr-admin-page).v52-body{
 --v52-navy:var(--pr-ink);--v52-navy-2:var(--pr-violet-900);--v52-coral:var(--pr-violet);
 --v52-coral-dark:var(--pr-violet);--v52-cream:var(--pr-surface-alt);--v52-soft:var(--pr-surface-alt);
 --v52-line:var(--pr-line);--v52-text:var(--pr-ink);--v52-muted:var(--pr-muted);
}
body:not(.pr-admin-page).v52-body .v52-hero{background:linear-gradient(135deg,var(--pr-surface) 0%,var(--pr-surface-alt) 70%,var(--pr-line) 100%)}
body:not(.pr-admin-page).v52-body :is(.v52-btn-primary,.v52-cta-primary){background:var(--pr-gradient);border-color:transparent;color:var(--pr-surface)}
body:not(.pr-admin-page).v52-body :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}

/* V120: consolidation des composants publics historiques, sans regle globale de recoloration. */
body:not(.pr-admin-page) .pr23-account-page :is(.pr23-card,.pr23-hero,.pr23-support){border-color:var(--pr-line)}
body:not(.pr-admin-page) .pr23-account-page :is(.pr23-card a,.pr23-details a){color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.v46-shell,.v46-detail) :is(a,.v46-eyebrow){color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.v46-shell,.v46-detail) :is(h1,h2,h3){color:var(--pr-ink)}
body:not(.pr-admin-page) :is(.v46-shell,.v46-detail) :is(button,input[type=submit]):focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}
body:not(.pr-admin-page).pr74-prendre-rdv :is(input,select,textarea):focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}

/* V121 - correction des 7 pages publiques signalees; selecteurs confines aux pages. */
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie){color:var(--pr-ink)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) :is(.w34-crumb,.w34-crumb a,.w34-kicker){color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) :is(.w34-section h2,.w34-hero h1,.w34-hero h2){color:var(--pr-ink)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) :is(.w34-content p,.w34-hero p){color:var(--pr-muted)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) .w34-section{border-color:var(--pr-line)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) .w34-hero{background:var(--pr-surface-alt)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) .w34-cta{background:var(--pr-ink)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) .w34-btn{background:var(--pr-gradient);color:white}
body:not(.pr-admin-page) .v109-formations .v48-hero{background:var(--pr-surface-alt)}
body:not(.pr-admin-page) .v109-formations :is(.v48-hero h1,.v48-theme h2){color:var(--pr-ink)}
body:not(.pr-admin-page) .v109-formations .v48-eyebrow{color:var(--pr-violet)}
body:not(.pr-admin-page) .v109-formations .v48-btn{background:var(--pr-violet);color:white}
body:not(.pr-admin-page) .v109-formations .v48-btn.v48-outline{background:white;color:var(--pr-violet)!important;border-color:var(--pr-violet-300)}
body:not(.pr-admin-page) .v109-formations .v48-theme{border-color:var(--pr-line)}
body:not(.pr-admin-page) .rv85 :is(.rv85-hero,.rv85-panel){border-color:var(--pr-line)}
body:not(.pr-admin-page) .temo-page :is(a,button,input,textarea):focus-visible,
body:not(.pr-admin-page) .rv85 :is(a,button,input,select):focus-visible,
body:not(.pr-admin-page) .pr104-partners-page a:focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}
body:not(.pr-admin-page) .pr104-partners-page :is(.v47-tag,.v47-card a,.pr104-kicker){color:var(--pr-violet)}


/* pilotrh-rdv-creneaux.css */
/* V133 - Prendre RDV : choix d'un créneau (jours puis heures). Couleurs : jetons de pilotrh-jetons.css. */
.ag-form > :is(.rdv-creneaux, .rdv-sous-titre) { grid-column: 1 / -1; }
.rdv-creneaux { display: grid; gap: 16px; margin: 0 0 8px; padding: 22px; border: 1px solid var(--pr-line); border-radius: var(--pr-radius); background: var(--pr-surface-alt); min-width: 0; }
.rdv-creneaux legend, .rdv-sous-titre { display: flex; align-items: center; gap: 10px; padding: 0 6px; font-size: 18px; font-weight: 800; color: var(--pr-ink); }
.rdv-sous-titre { margin: 18px 0 4px; padding: 0; }
.rdv-etape { display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--pr-gradient); color: var(--pr-surface); font-size: 15px; }
.rdv-creneaux-info { margin: -6px 0 0; color: var(--pr-muted); font-size: 14px; }

/* Bandeau des jours (ajouté par le script) */
.rdv-jours { display: flex; gap: 10px; overflow-x: auto; padding: 4px 2px 10px; scroll-snap-type: x proximity; }
.rdv-jours button { display: grid; justify-items: center; gap: 2px; flex: 0 0 auto; min-width: 82px; padding: 10px 12px; border: 1.5px solid var(--pr-line); border-radius: var(--pr-radius-sm); background: var(--pr-surface); color: var(--pr-ink); font: inherit; cursor: pointer; scroll-snap-align: start; transition: border-color 0.15s ease, transform 0.15s ease; }
.rdv-jours button:hover { border-color: var(--pr-violet-300); transform: translateY(-1px); }
.rdv-jours button[aria-pressed="true"] { border-color: transparent; background: var(--pr-gradient); color: var(--pr-surface); }
.rdv-jours button small { font-size: 12px; font-weight: 700; text-transform: capitalize; }
.rdv-jours button strong { font-size: 22px; line-height: 1.1; }
.rdv-jours button em { font-style: normal; font-size: 11.5px; opacity: 0.85; }
.rdv-jours button:focus-visible, .rdv-heure input:focus-visible + span { outline: 3px solid rgb(var(--pr-violet-rgb) / 0.35); outline-offset: 2px; }

/* Heures d'un jour */
.rdv-jour h3 { margin: 0 0 10px; font-size: 16px; color: var(--pr-ink); }
.rdv-creneaux:not(.rdv-js) .rdv-jour + .rdv-jour { padding-top: 12px; border-top: 1px solid var(--pr-line); }
.rdv-heures { display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 10px; }
.rdv-heure { position: relative; margin: 0 !important; }
.rdv-heure input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.rdv-heure span { display: block; padding: 11px 8px; border: 1.5px solid var(--pr-line); border-radius: var(--pr-radius-sm); background: var(--pr-surface); color: var(--pr-violet-900); font-weight: 700; text-align: center; transition: border-color 0.15s ease, background 0.15s ease; }
.rdv-heure:hover span { border-color: var(--pr-violet-300); }
.rdv-heure input:checked + span { border-color: transparent; background: var(--pr-gradient); color: var(--pr-surface); box-shadow: 0 8px 18px rgb(var(--pr-violet-rgb) / 0.25); }

.rdv-aucun { display: flex !important; flex-direction: row !important; justify-content: flex-start !important; align-items: center !important; text-align: left; gap: 10px; margin: 0 !important; padding-top: 12px; border-top: 1px solid var(--pr-line); font-weight: 600 !important; color: var(--pr-muted); }
.rdv-aucun input { flex: none; width: 18px !important; height: 18px; min-height: 0 !important; margin: 0; padding: 0 !important; accent-color: var(--pr-violet); }
.rdv-aucun-creneau { margin: 0; color: var(--pr-muted); }
@media (max-width: 640px) {
  .rdv-creneaux { padding: 16px; }
  .rdv-heures { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

