/* Prise de rendez-vous : styles de l'agenda (booking.js), repris du questionnaire de Geoffrey.
   Les couleurs viennent des variables CSS de la page (--ink, --paper, --surface, --line, --violet…). */
.booking{width:100%;max-width:520px;margin:24px auto 0;background:var(--surface);border:1.5px solid var(--line);border-top:4px solid var(--violet);border-radius:16px;padding:20px 20px 18px;text-align:left}
.booking h2{font-family:"Bricolage Grotesque","Public Sans",system-ui,sans-serif;font-size:19px;font-weight:800;margin:0 0 6px}
.booking p{margin:0 0 14px;color:var(--muted);font-size:15.5px}
#bookingMount{width:100%}
.booking.embedded{margin:4px 0 0;max-width:none}
.booking .book{display:block;width:100%;border:0;cursor:pointer;text-align:center;text-decoration:none;border-radius:14px;padding:14px 18px;background:var(--ink);color:var(--paper);font-weight:700;font-size:16.5px;margin-top:10px}
.booking .book:disabled{opacity:.6;cursor:wait}
.booking .book.ghost{background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}
.bk-days{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;margin:0 -2px 6px;scrollbar-width:thin}
.bk-days button{flex:none;border:1.5px solid var(--line);background:var(--paper);border-radius:12px;padding:9px 12px;font-weight:600;font-size:14.5px;cursor:pointer;white-space:nowrap}
.bk-days button[aria-selected="true"]{background:var(--violet);border-color:var(--violet);color:#fff}
.bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}
.bk-slots button{border:1.5px solid var(--line);background:var(--paper);border-radius:10px;padding:10px 4px;font-weight:700;font-size:15px;cursor:pointer;font-variant-numeric:tabular-nums}
.bk-slots button[aria-checked="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.bk-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px}
.bk-form label[hidden]{display:none}
.bk-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14.5px}
.bk-sel{font-weight:700;color:var(--ink)!important;font-size:16px!important;margin:0!important}
.bk-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bk-mode button{border:1.5px solid var(--line);background:var(--paper);border-radius:10px;padding:11px 6px;font-weight:600;cursor:pointer}
.bk-mode button[aria-checked="true"]{border-color:var(--violet);background:var(--violet-bg);color:var(--ink)}
.bk-err{color:var(--err)!important;font-weight:600;font-size:14.5px!important;margin:10px 0 0!important;min-height:0}
.bk-wait{margin:0!important}
.bk-ok p{margin:0 0 10px}
.bk-ok a:not(.book){color:var(--violet);font-weight:600;word-break:break-all}
.bk-okt{font-family:"Bricolage Grotesque","Public Sans",system-ui,sans-serif;font-size:20px;font-weight:800;color:var(--ok)!important}
.bk-ok .book{margin-top:8px}
.bk-slots button:disabled{opacity:.38;cursor:not-allowed;background:var(--line);border-color:var(--line);color:var(--muted)}
.bk-consent{flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:400!important;font-size:14.5px!important;color:var(--muted)}
.bk-consent input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--violet);flex:none}
.bk-form small{font-weight:600;color:var(--muted)}
.bk-inline{margin-top:18px}
.bk-inline h2{font-family:"Bricolage Grotesque","Public Sans",system-ui,sans-serif;font-size:19px;font-weight:800;margin:0 0 4px}
.bk-inline .hint{margin:0 0 6px}
