/* SAKURION - réservation en ligne, direction « B · clinique » (décision du 06/10/2026).
   Jetons et échelle de static/src/css/charte.css (chargée après cette feuille) : Poppins 200/300 pour les
   titres, Inter pour le reste, une seule échelle (13 / 15 / 16-17 / 24 / 28-40 / 38-64), rythme de 8 px,
   rayons de 2 px, aucune ombre, aucun aplat d'accent : l'accent ne dit qu'une chose, « ce que j'ai choisi ».
   Tous les sélecteurs commencent par #wrap.sk-page-reservation : ils passent devant le cadre du site et
   devant les règles générales de charte.css. */
.sk-page-reservation{
  --bk-ink:#141414; --bk-soft:#6b7075; --bk-line:#e1e2e1; --bk-paper:#f3f3f3; --bk-blue:#2e6fc0; --bk-white:#fff;
  --bk-title:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
  --bk-sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --bk-touch:48px;
}
#wrap.sk-page-reservation .sk-bk-main{display:block;background:var(--bk-white)}
#wrap.sk-page-reservation .sk-bk,#wrap.sk-page-reservation .sk-bk-hero{font-family:var(--bk-sans);font-weight:300;color:var(--bk-ink)}

/* ---------- en-tête de page ---------- */
#wrap.sk-page-reservation .sk-bk-hero.wrap{max-width:1360px;margin:0 auto;padding:64px 40px 32px}
#wrap.sk-page-reservation .sk-bk-h1{font-family:var(--bk-title);font-weight:200;font-size:var(--sk-fs-h1,64px);line-height:var(--sk-lh-h1,1.08);color:var(--bk-ink);margin:0 0 16px}
#wrap.sk-page-reservation .sk-bk-intro{font-size:var(--sk-fs-body,17px);line-height:var(--sk-lh-body,1.75);color:var(--bk-soft);max-width:560px;margin:0}

/* ---------- mise en page : carte à gauche, récapitulatif vivant à droite (bureau) ---------- */
#wrap.sk-page-reservation .sk-bk.wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;max-width:1360px;margin:0 auto;padding:0 40px 128px}
#wrap.sk-page-reservation .sk-bk-solo.wrap{max-width:800px;padding-top:64px}
#wrap.sk-page-reservation .sk-bk-card{position:relative;background:var(--bk-white);border:1px solid var(--bk-line);border-radius:2px;min-width:0}
#wrap.sk-page-reservation .sk-bk-head{display:flex;align-items:flex-end;gap:24px;padding:32px 32px 16px}
#wrap.sk-page-reservation .sk-bk-headtxt{display:flex;flex-direction:column;gap:8px;min-width:0}
#wrap.sk-page-reservation .sk-bk-count{font-size:13px;line-height:1.7;color:var(--bk-soft);font-variant-numeric:tabular-nums}
#wrap.sk-page-reservation .sk-bk-count:empty{display:none}
#wrap.sk-page-reservation .sk-bk-title{font-family:var(--bk-title);font-weight:300;font-size:var(--sk-fs-h2,40px);line-height:var(--sk-lh-h2,1.14);color:var(--bk-ink);margin:0;outline:none}
#wrap.sk-page-reservation .sk-bk-back{order:2;margin-left:auto;align-self:center;display:inline-flex;align-items:center;gap:8px;min-height:var(--bk-touch);font-family:var(--bk-sans);font-size:15px;font-weight:400;color:var(--bk-ink);background:none;border:1px solid var(--bk-line);border-radius:2px;padding:0 16px;cursor:pointer;transition:border-color .2s}
#wrap.sk-page-reservation .sk-bk-back:hover{border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;list-style:none;margin:0;padding:0 32px}
#wrap.sk-page-reservation .sk-bk-steps li{height:0;border-top:2px solid var(--bk-line)}
#wrap.sk-page-reservation .sk-bk-steps li.on{border-top-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-steps li.now{border-top-color:var(--bk-blue)}
#wrap.sk-page-reservation .sk-bk-body{padding:24px 32px 32px;min-height:224px}
#wrap.sk-page-reservation .sk-bk-muted{color:var(--bk-soft);font-size:15px;line-height:1.6}
#wrap.sk-page-reservation .sk-bk-note{font-size:13px;line-height:1.7;color:var(--bk-soft);margin:16px 0 0}
#wrap.sk-page-reservation .sk-bk-error{font-size:15px;line-height:1.6;color:var(--bk-ink);margin:16px 0 0;padding-left:16px;border-left:2px solid var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-error[hidden]{display:none}

/* ---------- 1. soins ---------- */
#wrap.sk-page-reservation .sk-bk-chips{position:sticky;top:76px;z-index:4;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin:0 0 8px;padding:4px;background:var(--bk-paper)}
#wrap.sk-page-reservation .sk-bk-chips::-webkit-scrollbar{display:none}
#wrap.sk-page-reservation .sk-bk-chip{flex:0 0 auto;min-height:var(--bk-touch);font-family:var(--bk-sans);font-size:15px;font-weight:400;color:var(--bk-soft);background:transparent;border:0;border-radius:2px;padding:0 16px;cursor:pointer;white-space:nowrap;transition:color .2s,background .2s}
#wrap.sk-page-reservation .sk-bk-chip:hover{color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-chip.on{background:var(--bk-white);color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-group{padding-top:32px;scroll-margin-top:160px}
#wrap.sk-page-reservation .sk-bk-gname{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-family:var(--bk-title);font-weight:300;font-size:24px;line-height:1.25;color:var(--bk-ink);margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-gname small{font-family:var(--bk-sans);font-weight:300;font-size:13px;line-height:1.7;color:var(--bk-soft);white-space:nowrap}
#wrap.sk-page-reservation .sk-bk-svc{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"n pr add" "d pr add";align-items:center;gap:4px 16px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--bk-line);border-radius:0;padding:16px 8px;margin:0;cursor:pointer;color:var(--bk-ink);font:inherit;transition:background .2s}
#wrap.sk-page-reservation .sk-bk-svc:hover{background:var(--bk-paper)}
#wrap.sk-page-reservation .sk-bk-svc .n{grid-area:n;font-size:17px;font-weight:400;line-height:1.4}
#wrap.sk-page-reservation .sk-bk-svc .d{grid-area:d;font-size:13px;line-height:1.7;color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-svc .pr{grid-area:pr;display:flex;flex-direction:column;align-items:flex-end;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
#wrap.sk-page-reservation .sk-bk-svc .p{font-size:17px;font-weight:400;line-height:1.4;color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-svc .was{font-size:13px;line-height:1.7;color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-svc .was s{color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-svc .off{color:var(--bk-blue);margin-left:8px}
#wrap.sk-page-reservation .sk-bk-svc .add{grid-area:add;display:flex;align-items:center;justify-content:center;width:var(--bk-touch);height:var(--bk-touch);border:1px solid var(--bk-ink);border-radius:2px;font-size:24px;font-weight:200;line-height:1;color:var(--bk-ink);transition:border-color .2s,color .2s}
#wrap.sk-page-reservation .sk-bk-svc .add svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.5}
#wrap.sk-page-reservation .sk-bk-svc.in{background:var(--bk-paper)}
#wrap.sk-page-reservation .sk-bk-svc.in .add{border-color:var(--bk-blue);color:var(--bk-blue)}

/* ---------- 2. date et heure ---------- */
#wrap.sk-page-reservation .sk-bk-select{margin-bottom:24px}
#wrap.sk-page-reservation .sk-bk-month{font-size:15px;line-height:1.6;color:var(--bk-soft);margin:0 0 8px}
#wrap.sk-page-reservation .sk-bk-days{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;padding:4px 4px 16px;margin:0 -4px}
#wrap.sk-page-reservation .sk-bk-day{flex:0 0 64px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:0;padding:8px 0;background:var(--bk-white);border:1px solid var(--bk-line);border-radius:2px;cursor:pointer;color:var(--bk-ink);font:inherit;transition:border-color .2s,color .2s}
#wrap.sk-page-reservation .sk-bk-day .w{font-size:13px;line-height:1.7;color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-day b{font-family:var(--bk-title);font-weight:300;font-size:24px;line-height:1.25;font-variant-numeric:lining-nums}
#wrap.sk-page-reservation .sk-bk-day .m{display:none}
#wrap.sk-page-reservation .sk-bk-day:hover{border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-day.on{border-color:var(--bk-blue);color:var(--bk-blue)}
#wrap.sk-page-reservation .sk-bk-day.on .w{color:var(--bk-blue)}
#wrap.sk-page-reservation .sk-bk-dayname{font-family:var(--bk-title);font-weight:300;font-size:24px;line-height:1.25;margin:16px 0 8px}
#wrap.sk-page-reservation .sk-bk-half{font-size:13px;line-height:1.7;color:var(--bk-soft);margin:16px 0 8px}
#wrap.sk-page-reservation .sk-bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
#wrap.sk-page-reservation .sk-bk-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;min-height:var(--bk-touch);padding:8px 4px;background:var(--bk-white);border:1px solid var(--bk-line);border-radius:2px;cursor:pointer;font-family:var(--bk-sans);font-size:17px;font-weight:400;line-height:1.4;color:var(--bk-ink);font-variant-numeric:tabular-nums;transition:border-color .2s,color .2s}
#wrap.sk-page-reservation .sk-bk-slot small{font-size:13px;line-height:1.7;color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-slot:hover{border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-slot.on{border-color:var(--bk-blue);color:var(--bk-blue)}
#wrap.sk-page-reservation .sk-bk-slot.on small{color:var(--bk-blue)}
#wrap.sk-page-reservation .sk-bk-skeleton{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:16px}
#wrap.sk-page-reservation .sk-bk-skeleton i{height:72px;border-radius:2px;background:var(--bk-paper)}

/* ---------- 3. coordonnées ---------- */
#wrap.sk-page-reservation .sk-bk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}
#wrap.sk-page-reservation .sk-bk-field{display:flex;flex-direction:column;gap:8px;padding-top:16px}
#wrap.sk-page-reservation .sk-bk-label{font-size:15px;font-weight:400;line-height:1.6;color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-label .req{font-size:13px;font-weight:300;color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-input{width:100%;min-height:var(--bk-touch);font-family:var(--bk-sans);font-size:16px;font-weight:400;line-height:1.5;color:var(--bk-ink);background:var(--bk-white);border:1px solid var(--bk-line);border-radius:2px;padding:8px 16px;outline:none;box-shadow:none;transition:border-color .2s;-webkit-appearance:none;appearance:none}
#wrap.sk-page-reservation .sk-bk-input::placeholder{color:var(--bk-soft);opacity:1}
#wrap.sk-page-reservation .sk-bk-input:hover{border-color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-input:focus{border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-input[aria-invalid="true"]{border-color:var(--bk-ink);border-width:2px}
#wrap.sk-page-reservation textarea.sk-bk-input{resize:vertical;min-height:96px;line-height:1.6}
#wrap.sk-page-reservation select.sk-bk-input{background-image:linear-gradient(45deg,transparent 50%,var(--bk-ink) 50%),linear-gradient(135deg,var(--bk-ink) 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 15px) 52%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
#wrap.sk-page-reservation .sk-bk-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}

/* ---------- 4. récapitulatif ---------- */
#wrap.sk-page-reservation .sk-bk-recap{border:1px solid var(--bk-line);border-radius:2px;padding:24px 24px 8px;background:var(--bk-white)}
#wrap.sk-page-reservation .sk-bk-recap-when{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}
#wrap.sk-page-reservation .sk-bk-rday{font-family:var(--bk-title);font-weight:300;font-size:24px;line-height:1.25}
#wrap.sk-page-reservation .sk-bk-hour{font-size:17px;font-weight:400;font-variant-numeric:tabular-nums}
#wrap.sk-page-reservation .sk-bk-recap-where{font-size:13px;line-height:1.7;color:var(--bk-soft);margin:8px 0 16px}
#wrap.sk-page-reservation .sk-bk-lines{list-style:none;margin:0;padding:0;border-top:1px solid var(--bk-line)}
#wrap.sk-page-reservation .sk-bk-lines li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 0;border-bottom:1px solid var(--bk-line);font-size:15px;line-height:1.6}
#wrap.sk-page-reservation .sk-bk-lines em{font-style:normal;font-size:13px;color:var(--bk-soft);margin-left:8px;white-space:nowrap}
#wrap.sk-page-reservation .sk-bk-lineend{display:inline-flex;align-items:center;gap:16px;white-space:nowrap}
#wrap.sk-page-reservation :is(.sk-bk-live,.sk-bk-sum) s{font-size:13px;color:var(--bk-soft);margin-right:4px}
#wrap.sk-page-reservation .sk-bk-rm{min-height:var(--bk-touch);font-family:var(--bk-sans);font-size:13px;font-weight:400;color:var(--bk-soft);background:none;border:0;padding:0 0 0 8px;cursor:pointer;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
#wrap.sk-page-reservation .sk-bk-rm:hover{color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0;font-size:15px;line-height:1.6;color:var(--bk-soft);border-bottom:1px solid var(--bk-line)}
#wrap.sk-page-reservation .sk-bk-row:last-child{border-bottom:none}
#wrap.sk-page-reservation .sk-bk-total{color:var(--bk-ink);font-size:17px;padding:16px 0}
#wrap.sk-page-reservation .sk-bk-total span:first-child{font-weight:400}
#wrap.sk-page-reservation .sk-bk-amt{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--bk-ink);font-weight:400}
#wrap.sk-page-reservation .sk-bk-amt s{font-size:13px;font-weight:300;color:var(--bk-soft);margin-right:8px}
#wrap.sk-page-reservation .sk-bk-policy{font-size:13px;line-height:1.7;color:var(--bk-soft);margin:24px 0 0;padding-left:16px;border-left:1px solid var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-check{display:flex;gap:16px;align-items:center;min-height:var(--bk-touch);margin-top:16px;font-size:15px;line-height:1.6;cursor:pointer}
#wrap.sk-page-reservation .sk-bk-check input{flex:0 0 20px;width:20px;height:20px;margin:0;accent-color:var(--bk-ink);cursor:pointer}
#wrap.sk-page-reservation .sk-bk-link{display:inline-flex;align-items:center;min-height:var(--bk-touch);margin-top:8px;font-family:var(--bk-sans);font-size:15px;font-weight:400;color:var(--bk-ink);background:none;border:0;padding:0;cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
#wrap.sk-page-reservation .sk-bk-link:hover{color:var(--bk-blue)}

/* ---------- 4. code promo / carte cadeau ---------- */
#wrap.sk-page-reservation .sk-bk-promo-row span:first-child{color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-promo{margin-top:16px}
#wrap.sk-page-reservation .sk-bk-promo .sk-bk-link{margin-top:0}
#wrap.sk-page-reservation .sk-bk-promo-on{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:8px 16px;border-radius:2px;background:var(--bk-paper);font-size:15px;color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-promo-on + .sk-bk-promo-on{margin-top:8px}
#wrap.sk-page-reservation .sk-bk-promo-form{display:flex;flex-direction:column;gap:8px}
#wrap.sk-page-reservation .sk-bk-promo-form[hidden]{display:none}
#wrap.sk-page-reservation .sk-bk-promo-line{display:flex;gap:8px}
#wrap.sk-page-reservation .sk-bk-promo-line .sk-bk-input{flex:1 1 auto;min-width:0;text-transform:uppercase}
#wrap.sk-page-reservation .sk-bk-promo-line .sk-bk-input::placeholder{text-transform:none}
#wrap.sk-page-reservation .sk-bk-promo-btn{flex:0 0 auto;min-height:var(--bk-touch);font-family:var(--bk-sans);font-size:15px;font-weight:400;color:var(--bk-ink);background:var(--bk-white);border:1px solid var(--bk-ink);border-radius:2px;padding:0 24px;cursor:pointer;transition:color .2s,border-color .2s}
#wrap.sk-page-reservation .sk-bk-promo-btn:hover:not(:disabled){color:var(--bk-blue);border-color:var(--bk-blue)}
#wrap.sk-page-reservation .sk-bk-promo-btn:disabled{opacity:.4;cursor:wait}
#wrap.sk-page-reservation .sk-bk-promo .sk-bk-error{margin-top:8px}
#wrap.sk-page-reservation .sk-bk-promo [hidden]{display:none!important}

/* ---------- pied de carte (résumé + action) ---------- */
#wrap.sk-page-reservation .sk-bk-foot{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 32px calc(16px + env(safe-area-inset-bottom,0px));background:var(--bk-white);border-top:1px solid var(--bk-line)}
#wrap.sk-page-reservation .sk-bk-foot[hidden]{display:none}
#wrap.sk-page-reservation .sk-bk-sum{display:flex;flex-direction:column;gap:0;min-width:0;font-size:13px;line-height:1.7;color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-sum strong{font-weight:400;color:var(--bk-ink);font-size:15px;line-height:1.6}
#wrap.sk-page-reservation .sk-bk-sum span,#wrap.sk-page-reservation .sk-bk-sum strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#wrap.sk-page-reservation .sk-bk-next{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--bk-touch);font-family:var(--bk-sans);font-size:15px;font-weight:400;line-height:1.2;color:var(--bk-ink);background:var(--bk-white);border:1px solid var(--bk-ink);border-radius:2px;padding:0 24px;cursor:pointer;text-decoration:none;transition:color .2s,border-color .2s,opacity .2s}
#wrap.sk-page-reservation .sk-bk-next:not(:disabled){color:var(--bk-blue);border-color:var(--bk-blue)}
#wrap.sk-page-reservation .sk-bk-next:hover:not(:disabled){color:var(--bk-ink);border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-next:disabled{color:var(--bk-soft);border-color:var(--bk-line);cursor:not-allowed}
#wrap.sk-page-reservation .sk-bk-danger,#wrap.sk-page-reservation .sk-bk-danger:not(:disabled){color:var(--bk-ink);border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk.busy .sk-bk-body{opacity:.55;pointer-events:none;transition:opacity .2s}

/* ---------- colonne droite : récapitulatif vivant + Treatwell ---------- */
#wrap.sk-page-reservation .sk-bk-aside{display:flex;flex-direction:column;gap:24px;min-width:0}
#wrap.sk-page-reservation .sk-bk-live{display:none}
#wrap.sk-page-reservation .sk-bk-live-h{font-family:var(--bk-title);font-weight:300;font-size:24px;line-height:1.25;margin:0 0 8px}
#wrap.sk-page-reservation .sk-bk-live ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--bk-line)}
#wrap.sk-page-reservation .sk-bk-live li{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--bk-line);font-size:15px;line-height:1.6}
#wrap.sk-page-reservation .sk-bk-live li span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}
#wrap.sk-page-reservation .sk-bk-live .k{color:var(--bk-soft)}
#wrap.sk-page-reservation .sk-bk-live .tot{color:var(--bk-ink);font-size:17px;font-weight:400}
#wrap.sk-page-reservation .sk-bk-live .sk-bk-note{margin-top:8px}
#wrap.sk-page-reservation .sk-bk-tw{display:flex;flex-direction:column;align-items:flex-start;gap:0;font-size:15px;line-height:1.6;color:var(--bk-soft);margin:0}
#wrap.sk-page-reservation .sk-bk-twlink{display:inline-flex;align-items:center;min-height:var(--bk-touch);font-size:15px;font-weight:400;color:var(--bk-ink);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
#wrap.sk-page-reservation .sk-bk-twlink:hover{color:var(--bk-blue)}

/* ---------- pages serveur : acompte, confirmation, annulation ---------- */
#wrap.sk-page-reservation .sk-bk-hold{font-size:15px;line-height:1.6;color:var(--bk-ink);margin:16px 0 0;padding:16px;border-radius:2px;background:var(--bk-paper)}
#wrap.sk-page-reservation .sk-bk-hold strong{font-weight:400}
#wrap.sk-page-reservation .sk-bk-payform{margin-top:24px}
#wrap.sk-page-reservation .sk-bk-payform .o_payment_form{font-family:var(--bk-sans);font-size:15px}
#wrap.sk-page-reservation .sk-bk-payform :is(.list-group,.card,.list-group-item,.card-body,.form-control,.form-select,.btn,.alert){border-radius:2px!important;box-shadow:none!important}
#wrap.sk-page-reservation .sk-bk-payform :is(.list-group-item,.card-body){padding:16px}
#wrap.sk-page-reservation .sk-bk-payform label{margin-bottom:4px}
#wrap.sk-page-reservation .sk-bk-payform :is(.o_payment_inline_form,[name="o_payment_inline_form"]){padding:8px 0}
#wrap.sk-page-reservation .sk-bk-payform :is(button[name="o_payment_submit_button"],.o_payment_submit_button){width:100%;min-height:var(--bk-touch);margin-top:16px;font-family:var(--bk-sans);font-size:15px;font-weight:400;color:var(--bk-blue);background:var(--bk-white);border:1px solid var(--bk-blue);border-radius:2px;transition:color .2s,border-color .2s}
#wrap.sk-page-reservation .sk-bk-payform :is(button[name="o_payment_submit_button"],.o_payment_submit_button):hover:not(:disabled){color:var(--bk-ink);border-color:var(--bk-ink);background:var(--bk-white)}
#wrap.sk-page-reservation .sk-bk-payform .list-group-item{border-color:var(--bk-line)!important}
#wrap.sk-page-reservation .sk-bk-payform .o_payment_option_label{display:inline-flex;align-items:center;min-height:var(--bk-touch);font-size:15px;font-weight:400;padding-left:8px}
#wrap.sk-page-reservation .sk-bk-payform .form-check-input{width:20px;height:20px;margin-top:0;border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-payform .form-check-input:checked{background-color:var(--bk-ink);border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-payform .gap-1 > span{border-radius:2px!important;box-shadow:none!important}
#wrap.sk-page-reservation .sk-bk-payform #o_payment_form .h4{font-family:var(--bk-title);font-weight:300;font-size:24px;line-height:1.25;color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-h{font-family:var(--bk-title);font-weight:300;font-size:var(--sk-fs-h2,40px);line-height:var(--sk-lh-h2,1.14);margin:0 0 16px}
#wrap.sk-page-reservation .sk-bk-ref{font-size:15px;line-height:1.6;color:var(--bk-soft);margin:0 0 24px}
#wrap.sk-page-reservation .sk-bk-ref strong{color:var(--bk-ink);font-weight:400;font-variant-numeric:tabular-nums}
#wrap.sk-page-reservation .sk-bk-done p{font-size:var(--sk-fs-body,17px);line-height:var(--sk-lh-body,1.75)}
#wrap.sk-page-reservation .sk-bk-done :is(.sk-bk-note,.sk-bk-policy){font-size:13px;line-height:1.7}
#wrap.sk-page-reservation .sk-bk-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
#wrap.sk-page-reservation .sk-bk-pill{display:inline-flex;align-items:center;min-height:var(--bk-touch);font-size:15px;font-weight:400;color:var(--bk-ink);border:1px solid var(--bk-line);border-radius:2px;padding:0 24px;text-decoration:none;transition:border-color .2s}
#wrap.sk-page-reservation .sk-bk-pill:hover{border-color:var(--bk-ink)}
#wrap.sk-page-reservation .sk-bk-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid var(--bk-line)}
#wrap.sk-page-reservation .sk-bk-actions .sk-bk-link{margin-top:0}
#wrap.sk-page-reservation .sk-bk-btn{text-decoration:none}
#wrap.sk-page-reservation .sk-bk-signoff{font-family:var(--bk-title);font-weight:300;font-size:24px;line-height:1.25;margin-top:32px;color:var(--bk-ink)}

/* ---------- focus clavier ---------- */
#wrap.sk-page-reservation .sk-bk :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--bk-blue);outline-offset:2px}

/* ---------- bureau : récapitulatif dans la colonne droite ---------- */
@media (min-width:1100px){
  #wrap.sk-page-reservation .sk-bk.wrap:not(.sk-bk-solo){grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:48px}
  #wrap.sk-page-reservation .sk-bk-aside{position:sticky;top:104px}
  #wrap.sk-page-reservation .sk-bk-live:not([hidden]){display:block;border:1px solid var(--bk-line);border-radius:2px;padding:24px}
}
/* ---------- téléphone et petite tablette ---------- */
@media (max-width:767px){
  #wrap.sk-page-reservation .sk-bk-hero.wrap{padding:40px 24px 24px}
  #wrap.sk-page-reservation .sk-bk.wrap{padding:0 0 96px;gap:24px}
  #wrap.sk-page-reservation .sk-bk-solo.wrap{padding-top:24px}
  #wrap.sk-page-reservation .sk-bk-card{border-left:none;border-right:none}
  #wrap.sk-page-reservation .sk-bk-head{padding:24px 24px 16px}
  #wrap.sk-page-reservation .sk-bk-steps{padding:0 24px}
  #wrap.sk-page-reservation .sk-bk-body{padding:24px 24px 32px}
  #wrap.sk-page-reservation .sk-bk-chips{top:64px}
  #wrap.sk-page-reservation .sk-bk-svc{padding:16px 0;gap:4px 16px}
  #wrap.sk-page-reservation .sk-bk-grid{grid-template-columns:minmax(0,1fr)}
  #wrap.sk-page-reservation .sk-bk-slots{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}
  #wrap.sk-page-reservation .sk-bk-foot{position:fixed;left:0;right:0;bottom:0;padding:8px 16px calc(8px + env(safe-area-inset-bottom,0px))}
  #wrap.sk-page-reservation .sk-bk-next{padding:0 16px}
  #wrap.sk-page-reservation .sk-bk-sum span,#wrap.sk-page-reservation .sk-bk-sum strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  #wrap.sk-page-reservation .sk-bk-aside{padding:0 24px}
  #wrap.sk-page-reservation .sk-bk-recap{padding:16px 16px 8px}
}
@media (max-width:767px){
  /* téléphone : le nom prend toute la largeur, le prix passe sous la durée */
  #wrap.sk-page-reservation .sk-bk-svc{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n add" "d add" "pr add"}
  #wrap.sk-page-reservation .sk-bk-svc .pr{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:0 8px;text-align:left;white-space:normal}
  #wrap.sk-page-reservation .sk-bk-svc .p{font-size:16px}
}
@media (max-width:374px){
  #wrap.sk-page-reservation .sk-bk-foot{gap:8px}
}
@media (prefers-reduced-motion:reduce){
  #wrap.sk-page-reservation .sk-bk *{transition:none!important;animation:none!important}
}

/* la barre de réservation est fixée en bas : le bouton « haut de page » du site passe au-dessus */
@media (max-width:767px){.sk-page-reservation .to-top,body:has(#sk-booking-app) .to-top{bottom:calc(88px + env(safe-area-inset-bottom,0px))!important}}
/* dialogue d'Odoo (carte refusée) : bouton à contour, rayon 2 px, pas le violet d'Odoo */
body:has(.sk-bk-pay) .modal .btn-primary{background:#fff;color:#141414;border:1px solid #141414;border-radius:2px;padding:12px 24px;font-family:"Inter",system-ui,sans-serif;font-size:15px;font-weight:400}
body:has(.sk-bk-pay) .modal-content{border-radius:2px;border:0;box-shadow:none}
