/*
 * Marketplace booking workflow only.
 *
 * This layer intentionally activates only after a marketplace professional has
 * been selected and the booking workflow is visible. The discovery catalogue
 * and direct-master booking keep their own visual systems.
 */

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])){
  --market-flow-ink:var(--public-ink,#271f1b);
  --market-flow-muted:var(--public-muted,#81766e);
  --market-flow-paper:var(--public-paper,#f8f4ee);
  --market-flow-card:var(--public-surface,#fffdfb);
  --market-flow-soft:var(--public-surface-soft,#f1e7dc);
  --market-flow-line:var(--public-line,rgba(96,76,61,.16));
  --market-flow-rose:var(--public-warm,#bd746f);
  --market-flow-rose-dark:#945954;
  --market-flow-sage:#7f9277;
  --market-flow-shadow:0 24px 68px rgba(58,43,29,.09);
  width:min(1320px,calc(100% - 32px))!important;
  max-width:1320px!important;
  min-width:0!important;
  margin:22px auto 72px!important;
  padding:0!important;
  display:block!important;
  overflow:visible!important;
  color:var(--market-flow-ink)!important;
  font-family:var(--public-font-body,Inter,Manrope,"Segoe UI",system-ui,sans-serif)!important;
  font-size:16px!important;
  line-height:1.5!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) *,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) *::before,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) *::after{
  box-sizing:border-box;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(div,section,article,aside,form,label,span){
  min-width:0;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) [hidden]{
  display:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(button,input,select,textarea,a){
  font:inherit;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(button,a,input,select,textarea):focus-visible{
  outline:3px solid color-mix(in srgb,var(--market-flow-rose) 42%,transparent)!important;
  outline-offset:3px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-shell{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
  padding:32px 36px 36px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(189,116,111,.08),transparent 28%),
    linear-gradient(145deg,#fffdfb 0%,#fffdfa 58%,#f8f0e7 100%)!important;
  box-shadow:var(--market-flow-shadow)!important;
  overflow:hidden!important;
}

/* Selected professional */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-bar{
  width:100%!important;
  min-height:78px!important;
  margin:0 0 24px!important;
  padding:14px 16px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:18px!important;
  background:rgba(255,253,251,.9)!important;
  box-shadow:0 10px 28px rgba(58,43,29,.055)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-profile{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-avatar{
  width:50px!important;
  height:50px!important;
  flex:0 0 50px!important;
  overflow:hidden!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:14px!important;
  background-color:var(--market-flow-soft)!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  color:var(--market-flow-ink)!important;
  display:grid!important;
  place-items:center!important;
  font-family:var(--public-font-display,"Cormorant Garamond",Georgia,serif)!important;
  font-size:24px!important;
  font-weight:600!important;
  line-height:1!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy{
  min-width:0!important;
  display:grid!important;
  gap:2px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy>span{
  color:var(--market-flow-rose-dark)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.13em!important;
  line-height:1.25!important;
  text-transform:uppercase!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy strong{
  max-width:780px;
  overflow:hidden;
  text-overflow:ellipsis;
  color:var(--market-flow-ink)!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.25!important;
  text-align:left!important;
  white-space:nowrap;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy small{
  max-width:780px;
  overflow:hidden;
  text-overflow:ellipsis;
  color:var(--market-flow-muted)!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.3!important;
  white-space:nowrap;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions{
  flex:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions :where(a,button){
  min-height:46px!important;
  padding:0 15px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--market-flow-ink)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.2!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  transition:border-color .2s,background .2s,transform .2s,box-shadow .2s!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions a{
  background:color-mix(in srgb,var(--market-flow-soft) 68%,#fff)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions .ui-icon{
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions :where(a,button):hover{
  border-color:color-mix(in srgb,var(--market-flow-rose) 58%,var(--market-flow-line))!important;
  background:#fffaf6!important;
  box-shadow:0 9px 20px rgba(58,43,29,.08)!important;
  transform:translateY(-1px)!important;
}

/* Four-step progress */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress{
  width:min(840px,100%)!important;
  max-width:840px!important;
  min-height:64px!important;
  margin:0 auto 34px!important;
  padding:7px 12px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.78)!important;
  box-shadow:0 12px 30px rgba(58,43,29,.06)!important;
  display:grid!important;
  grid-template-columns:auto minmax(28px,1fr) auto minmax(28px,1fr) auto minmax(28px,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  overflow:visible!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress]{
  width:auto!important;
  height:48px!important;
  min-height:48px!important;
  min-width:0!important;
  flex-basis:auto!important;
  padding:0 6px!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  color:var(--market-flow-muted)!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress]::after{
  display:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] b{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--market-flow-muted)!important;
  display:grid!important;
  place-items:center!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] em{
  min-width:0;
  color:inherit!important;
  font-size:14px!important;
  font-style:normal!important;
  font-weight:600!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].active{
  background:#fbf3ec!important;
  color:var(--market-flow-rose-dark)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].active b{
  border-color:var(--market-flow-rose)!important;
  background:var(--market-flow-rose)!important;
  color:#fff!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].completed{
  color:var(--market-flow-ink)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].completed b{
  border-color:color-mix(in srgb,var(--market-flow-sage) 48%,var(--market-flow-line))!important;
  background:#f1f5ee!important;
  color:var(--market-flow-sage)!important;
  font-size:0!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].completed b::after{
  content:"✓";
  font-size:14px;
  font-weight:800;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>i{
  width:100%!important;
  height:1px!important;
  min-width:0!important;
  flex:auto!important;
  background:var(--market-flow-line)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-mobile-step{
  display:none!important;
}

/* Shared step headings */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  margin:0!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading{
  margin:0 0 24px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading>span,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title>span{
  color:var(--market-flow-rose-dark)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
  line-height:1.35!important;
  text-transform:uppercase!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading h2,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title h3,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success h2{
  margin:8px 0 0!important;
  color:var(--market-flow-ink)!important;
  font-family:var(--public-font-display,"Cormorant Garamond",Prata,Georgia,serif)!important;
  font-size:clamp(42px,4.2vw,58px)!important;
  font-weight:500!important;
  letter-spacing:-.035em!important;
  line-height:1.02!important;
}

/* Service search, categories and cards */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools{
  width:100%!important;
  margin:0 0 22px!important;
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) auto!important;
  align-items:center!important;
  gap:14px 18px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools>label{
  width:100%!important;
  height:56px!important;
  min-height:56px!important;
  padding:0 17px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:13px!important;
  background:#fff!important;
  color:var(--market-flow-muted)!important;
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  box-shadow:0 7px 20px rgba(58,43,29,.035)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools>label .ui-icon{
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools input{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--market-flow-ink)!important;
  font-size:15px!important;
  outline:0!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools input::placeholder{
  color:#9b9189!important;
  opacity:1!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories{
  max-width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  overflow:visible!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories button{
  min-height:42px!important;
  padding:0 15px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#6f655e!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories button:hover,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories button.active{
  border-color:color-mix(in srgb,var(--market-flow-rose) 52%,var(--market-flow-line))!important;
  background:#fbf1e9!important;
  color:var(--market-flow-ink)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-options,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-options{
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-options .loading-card,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-options>.empty-state{
  grid-column:1/-1!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card{
  position:relative!important;
  width:100%!important;
  min-height:98px!important;
  margin:0!important;
  padding:15px 16px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:17px!important;
  background:#fff!important;
  color:var(--market-flow-ink)!important;
  box-shadow:0 9px 26px rgba(58,43,29,.035)!important;
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  gap:5px 14px!important;
  cursor:pointer!important;
  transition:border-color .2s,background .2s,box-shadow .2s,transform .2s!important;
  overflow:hidden!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card:hover{
  border-color:color-mix(in srgb,var(--market-flow-rose) 44%,var(--market-flow-line))!important;
  box-shadow:0 14px 32px rgba(58,43,29,.075)!important;
  transform:translateY(-1px)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card:has(input:checked){
  border-color:var(--market-flow-rose)!important;
  background:#fff9f4!important;
  box-shadow:0 0 0 3px rgba(189,116,111,.1),0 14px 34px rgba(58,43,29,.07)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card>input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card:focus-within{
  outline:3px solid color-mix(in srgb,var(--market-flow-rose) 38%,transparent)!important;
  outline-offset:2px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.option-service-icon,.option-photo,.option-avatar){
  grid-column:1!important;
  grid-row:1/3!important;
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  border:1px solid rgba(96,76,61,.08)!important;
  border-radius:14px!important;
  background:var(--market-flow-soft)!important;
  color:#846f64!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.option-service-icon,.option-photo,.option-avatar) :where(img,.ui-icon){
  max-width:100%!important;
  max-height:100%!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-service-icon .ui-icon{
  width:23px!important;
  height:23px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-service-copy{
  grid-column:2!important;
  grid-row:1/3!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-flow:row!important;
  align-content:center!important;
  gap:5px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-service-copy>strong,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-service-copy>small{
  grid-column:1!important;
  grid-row:auto!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card strong{
  min-width:0!important;
  overflow-wrap:anywhere!important;
  color:var(--market-flow-ink)!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.25!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-service-copy small,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card p{
  margin:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:var(--market-flow-muted)!important;
  font-size:12px!important;
  line-height:1.45!important;
  white-space:nowrap!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta{
  grid-column:3!important;
  grid-row:1/3!important;
  min-width:104px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  display:grid!important;
  grid-template-columns:auto 26px!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  justify-items:end!important;
  gap:4px 10px!important;
  color:var(--market-flow-muted)!important;
  font-size:13px!important;
  line-height:1.25!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta>span{
  grid-column:1!important;
  font-size:12px!important;
  white-space:nowrap!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta>b{
  grid-column:1!important;
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta>i{
  grid-column:2!important;
  grid-row:1/3!important;
  width:24px!important;
  height:24px!important;
  border:1.5px solid #aaa098!important;
  border-radius:50%!important;
  background:#fff!important;
  color:transparent!important;
  display:grid!important;
  place-items:center!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card:has(input:checked) .option-meta>i{
  border-color:var(--market-flow-sage)!important;
  background:var(--market-flow-sage)!important;
  color:#fff!important;
}

/* Calendar step */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="3"]>.panel-heading{
  display:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .direct-booking-layout{
  width:100%!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:22px!important;
  align-items:start!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .direct-booking-aside:not(:has(> :not([hidden]))){
  display:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .direct-booking-calendar{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:24px!important;
  background:var(--market-flow-card)!important;
  box-shadow:0 16px 42px rgba(58,43,29,.055)!important;
  overflow:hidden!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title{
  width:100%!important;
  min-height:178px!important;
  padding:34px 34px 30px!important;
  border-bottom:1px solid var(--market-flow-line)!important;
  background:linear-gradient(118deg,#fffaf5 0%,#f5e9dd 100%)!important;
  text-align:center!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title h3{
  font-size:clamp(44px,4.8vw,64px)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title p{
  max-width:650px!important;
  margin:10px auto 0!important;
  color:var(--market-flow-muted)!important;
  font-size:15px!important;
  line-height:1.55!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-calendar{
  width:100%!important;
  margin:0!important;
  padding:0 0 22px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:hidden!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar{
  width:100%!important;
  min-height:78px!important;
  padding:14px 24px!important;
  border-bottom:1px solid var(--market-flow-line)!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  align-items:center!important;
  gap:16px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar>button{
  width:48px!important;
  height:48px!important;
  min-height:48px!important;
  padding:0!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--market-flow-ink)!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar>button:last-child{
  justify-self:end!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar>button:hover:not(:disabled){
  border-color:var(--market-flow-rose)!important;
  background:#fff8f2!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar>button:disabled{
  opacity:.35!important;
  cursor:not-allowed!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-month-picker{
  width:min(340px,100%)!important;
  min-width:0!important;
  margin:auto!important;
  display:flex!important;
  justify-content:center!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.calendar-month-trigger,.calendar-month-picker>select){
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  padding:0 14px!important;
  border:1px solid transparent!important;
  border-radius:13px!important;
  background:#fffaf6!important;
  color:var(--market-flow-ink)!important;
  font-size:17px!important;
  font-weight:700!important;
  text-align:center!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-month-trigger{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-month-trigger strong{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:17px!important;
  white-space:nowrap!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-month-menu{
  z-index:80!important;
  width:min(420px,calc(100vw - 40px))!important;
  max-width:100%!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:17px!important;
  background:#fff!important;
  box-shadow:0 22px 60px rgba(58,43,29,.16)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation{
  width:100%!important;
  min-height:62px!important;
  padding:10px 24px!important;
  border-bottom:1px solid var(--market-flow-line)!important;
  display:grid!important;
  grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr)!important;
  align-items:center!important;
  gap:12px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation>button{
  min-width:0!important;
  min-height:42px!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:10px!important;
  background:#faf6f1!important;
  color:var(--market-flow-muted)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  font-size:13px!important;
  font-weight:600!important;
  cursor:pointer!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation>button:last-child{
  justify-self:end!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation>span{
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.3!important;
  text-align:center!important;
  white-space:nowrap!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-week{
  width:100%!important;
  padding:18px 24px!important;
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:9px!important;
  overflow:visible!important;
  touch-action:pan-y!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.availability-day,.availability-day.day-heading){
  width:100%!important;
  min-width:0!important;
  min-height:108px!important;
  padding:11px 5px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--market-flow-ink)!important;
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  gap:3px!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day:hover:not(:disabled):not(.is-full),
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day.selected{
  border-color:var(--market-flow-rose)!important;
  background:#fff5ee!important;
  color:var(--market-flow-rose-dark)!important;
  box-shadow:0 0 0 3px rgba(189,116,111,.08)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day:disabled,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day.is-disabled,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day.is-full{
  opacity:.46!important;
  cursor:not-allowed!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day>header{
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day :where(span,small){
  color:inherit!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.2!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day strong{
  color:inherit!important;
  font-family:var(--public-font-display,"Cormorant Garamond",Georgia,serif)!important;
  font-size:29px!important;
  font-weight:500!important;
  line-height:1!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day i{
  color:inherit!important;
  font-size:10px!important;
  font-style:normal!important;
  line-height:1.25!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times{
  width:auto!important;
  margin:0 24px 18px!important;
  padding:22px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:18px!important;
  background:#fffcf9!important;
  box-shadow:0 10px 28px rgba(58,43,29,.04)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times>header{
  margin:0 0 16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times>header span{
  color:var(--market-flow-rose-dark)!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times>header strong{
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
  font-weight:700!important;
  text-align:right!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-time-slots{
  width:100%!important;
  max-height:none!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  overflow:visible!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-time-slots>button,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-slot{
  width:100%!important;
  min-width:0!important;
  min-height:50px!important;
  padding:10px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.2!important;
  cursor:pointer!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.selected-time-slots>button,.week-slot):hover:not(:disabled){
  border-color:var(--market-flow-rose)!important;
  background:#fff7f1!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.selected-time-slots>button,.week-slot).selected{
  border-color:var(--market-flow-rose)!important;
  background:var(--market-flow-rose)!important;
  color:#fff!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-status{
  min-height:24px!important;
  margin:0!important;
  padding:0 24px!important;
  color:var(--market-flow-muted)!important;
  font-size:13px!important;
  line-height:1.5!important;
  text-align:center!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-waitlist{
  width:auto!important;
  margin:18px 24px 24px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:17px!important;
  background:#faf6f1!important;
  box-shadow:none!important;
  overflow:hidden!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro{
  min-height:78px!important;
  padding:14px 16px!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:13px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro>span{
  width:42px!important;
  height:42px!important;
  border-radius:12px!important;
  background:#f1e4da!important;
  color:var(--market-flow-rose-dark)!important;
  display:grid!important;
  place-items:center!important;
  box-shadow:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro strong{
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro p{
  margin:3px 0 0!important;
  color:var(--market-flow-muted)!important;
  font-size:12px!important;
  line-height:1.45!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro>button{
  min-height:44px!important;
  padding:0 15px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--market-flow-rose-dark)!important;
  font-size:13px!important;
  font-weight:700!important;
  cursor:pointer!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-waitlist form{
  padding:22px!important;
  border-top:1px solid var(--market-flow-line)!important;
  background:#fff!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-waitlist form>header strong{
  font-size:21px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-fields{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:13px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-fields label{
  color:var(--market-flow-muted)!important;
  font-size:13px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-fields input{
  width:100%!important;
  min-height:52px!important;
  padding:12px 14px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-consent p{
  color:var(--market-flow-muted)!important;
  font-size:12px!important;
  line-height:1.55!important;
}

/* Details step */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="4"]{
  width:min(980px,100%)!important;
  margin:0 auto!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-summary{
  width:100%!important;
  margin:0 0 22px!important;
  padding:22px 24px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:18px!important;
  background:#faf4ed!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:7px 24px!important;
  color:var(--market-flow-muted)!important;
  font-size:14px!important;
  line-height:1.45!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-summary>strong{
  grid-column:1/-1!important;
  margin-bottom:4px!important;
  color:var(--market-flow-ink)!important;
  font-family:var(--public-font-display,"Cormorant Garamond",Georgia,serif)!important;
  font-size:27px!important;
  font-weight:600!important;
  line-height:1.2!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="4"]>form{
  width:100%!important;
  padding:26px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 14px 36px rgba(58,43,29,.045)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:17px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label{
  min-width:0!important;
  display:grid!important;
  gap:8px!important;
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
  font-weight:700!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label small{
  color:var(--market-flow-muted)!important;
  font-size:12px!important;
  font-weight:500!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label.field-wide{
  grid-column:1/-1!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label :where(input,textarea){
  width:100%!important;
  min-width:0!important;
  min-height:56px!important;
  margin:0!important;
  padding:14px 15px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:13px!important;
  background:#fffdfb!important;
  color:var(--market-flow-ink)!important;
  font-size:15px!important;
  font-weight:500!important;
  outline:0!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label textarea{
  min-height:112px!important;
  resize:vertical!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label :where(input,textarea):focus{
  border-color:var(--market-flow-rose)!important;
  box-shadow:0 0 0 4px rgba(189,116,111,.1)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions{
  margin-top:22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions .button,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-calendar-actions .button{
  min-height:52px!important;
  padding:0 20px!important;
  border-radius:12px!important;
  font-size:14px!important;
  font-weight:700!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .button-dark,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions .button-dark{
  border-color:var(--market-flow-ink)!important;
  background:var(--market-flow-ink)!important;
  color:#fff!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .back-button{
  min-height:46px!important;
  margin:18px 0 0!important;
  padding:0 4px!important;
  border:0!important;
  background:transparent!important;
  color:var(--market-flow-muted)!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  font-size:14px!important;
  font-weight:700!important;
  cursor:pointer!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions .back-button{
  margin:0!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-error{
  color:#9a413c!important;
  font-size:13px!important;
  line-height:1.5!important;
}

/* Confirmation */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success{
  width:min(820px,100%)!important;
  margin:0 auto!important;
  padding:48px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 20px 55px rgba(58,43,29,.08)!important;
  color:var(--market-flow-ink)!important;
  text-align:center!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .success-icon{
  width:70px!important;
  height:70px!important;
  margin:0 auto 18px!important;
  border:1px solid rgba(127,146,119,.45)!important;
  border-radius:50%!important;
  background:#eef4eb!important;
  color:#5f7658!important;
  display:grid!important;
  place-items:center!important;
  font-size:26px!important;
  box-shadow:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success>.eyebrow{
  color:var(--market-flow-rose-dark)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success>p{
  color:var(--market-flow-muted)!important;
  font-size:15px!important;
  line-height:1.6!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card{
  width:100%!important;
  margin:26px auto 18px!important;
  padding:20px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:17px!important;
  background:#faf4ed!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card>span{
  color:var(--market-flow-rose-dark)!important;
  font-size:11px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card>strong{
  color:var(--market-flow-ink)!important;
  font-size:27px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card>button{
  min-height:44px!important;
  padding:0 16px!important;
  border-radius:11px!important;
  background:var(--market-flow-ink)!important;
  color:#fff!important;
  font-size:13px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card>p{
  color:var(--market-flow-muted)!important;
  font-size:12px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success-appointment{
  width:100%!important;
  margin:18px 0!important;
  padding:20px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:16px!important;
  background:#fffdfb!important;
  display:grid!important;
  gap:7px!important;
  color:var(--market-flow-muted)!important;
  font-size:14px!important;
  text-align:left!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success-appointment strong{
  color:var(--market-flow-ink)!important;
  font-size:16px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-calendar-actions{
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success-links{
  margin-top:20px!important;
  display:flex!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:12px 24px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success-links a{
  color:var(--market-flow-ink)!important;
  font-size:13px!important;
  font-weight:700!important;
  text-underline-offset:4px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success-notice{
  margin-top:20px!important;
  padding:14px!important;
  border-radius:12px!important;
  background:#f2eee8!important;
  color:var(--market-flow-muted)!important;
  font-size:13px!important;
}

/* Trust strip */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip{
  width:100%!important;
  margin:28px 0 0!important;
  padding:0 20px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:18px!important;
  background:rgba(255,253,251,.86)!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  overflow:hidden!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip>span{
  min-width:0!important;
  min-height:74px!important;
  padding:12px 24px!important;
  border-right:1px solid var(--market-flow-line)!important;
  color:var(--market-flow-muted)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  font-size:14px!important;
  line-height:1.35!important;
  text-align:left!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip>span:last-child{
  border-right:0!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip b{
  flex:none!important;
  color:var(--market-flow-ink)!important;
  font-family:var(--public-font-display,"Cormorant Garamond",Georgia,serif)!important;
  font-size:25px!important;
  font-weight:600!important;
  line-height:1!important;
  white-space:nowrap!important;
}

@media(max-width:980px){
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-shell{
    padding:26px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools{
    grid-template-columns:1fr!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories{
    justify-content:flex-start!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-options,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-options{
    grid-template-columns:1fr!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-week{
    gap:6px!important;
    padding-inline:16px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip>span{
    padding-inline:15px!important;
    font-size:13px!important;
  }
}

@media(max-width:680px){
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])){
    width:calc(100% - 16px)!important;
    margin:10px auto 88px!important;
    font-size:16px!important;
    overflow:visible!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-shell{
    padding:14px!important;
    border-radius:20px!important;
    overflow:hidden!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-bar{
    min-height:0!important;
    margin-bottom:14px!important;
    padding:12px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-avatar{
    width:44px!important;
    height:44px!important;
    flex-basis:44px!important;
    border-radius:12px!important;
    font-size:22px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-profile{
    gap:10px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy>span{
    font-size:9px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy strong{
    max-width:100%!important;
    font-size:14px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy small{
    max-width:100%!important;
    font-size:11px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions{
    gap:6px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions :where(a,button){
    min-height:44px!important;
    padding:0 12px!important;
    font-size:12px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress{
    width:100%!important;
    max-width:none!important;
    min-height:72px!important;
    margin:0 0 22px!important;
    padding:6px!important;
    border-radius:15px!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:3px!important;
    overflow:hidden!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>i{
    display:none!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress]{
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    padding:4px 2px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    text-align:center!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] b{
    width:27px!important;
    height:27px!important;
    flex-basis:27px!important;
    font-size:11px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].completed b::after{
    font-size:12px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] em{
    width:100%!important;
    overflow:hidden!important;
    color:inherit!important;
    font-size:10px!important;
    line-height:1.1!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading{
    margin-bottom:18px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading h2,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success h2{
    font-size:36px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading>span,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title>span{
    font-size:10px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools{
    margin-bottom:16px!important;
    gap:12px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools>label{
    height:52px!important;
    min-height:52px!important;
    padding-inline:14px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools input{
    font-size:14px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories button{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    padding:0 8px!important;
    font-size:12px!important;
    white-space:normal!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card{
    min-height:104px!important;
    padding:13px!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:6px 12px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.option-service-icon,.option-photo,.option-avatar){
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    border-radius:12px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-service-copy{
    grid-column:2!important;
    grid-row:1!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card strong{
    font-size:14px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-service-copy small,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card p{
    font-size:12px!important;
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta{
    grid-column:2!important;
    grid-row:2!important;
    min-width:0!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:auto auto 24px!important;
    grid-template-rows:auto!important;
    justify-content:start!important;
    justify-items:start!important;
    gap:8px 12px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta>span,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta>b,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta>i{
    grid-column:auto!important;
    grid-row:1!important;
    align-self:center!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .direct-booking-calendar{
    border-radius:18px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title{
    min-height:0!important;
    padding:26px 18px 24px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title h3{
    font-size:38px!important;
    line-height:1.04!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title p{
    margin-top:8px!important;
    font-size:14px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar{
    min-height:68px!important;
    padding:10px 12px!important;
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    gap:8px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar>button{
    width:44px!important;
    height:44px!important;
    min-height:44px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.calendar-month-trigger,.calendar-month-picker>select){
    min-height:44px!important;
    padding-inline:8px!important;
    font-size:15px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-month-trigger strong{
    font-size:15px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation{
    min-height:58px!important;
    padding:8px 12px!important;
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    gap:8px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation>button{
    width:44px!important;
    min-height:44px!important;
    padding:0!important;
    justify-self:center!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation>button>span:not(.ui-icon){
    display:none!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation>span{
    min-width:0!important;
    overflow:hidden!important;
    font-size:12px!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-week{
    padding:12px!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    overflow:hidden!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.availability-day,.availability-day.day-heading){
    min-height:94px!important;
    padding:9px 3px!important;
    border-radius:12px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day :where(span,small){
    font-size:10px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day strong{
    font-size:25px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day i{
    font-size:9px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times{
    margin:0 12px 14px!important;
    padding:16px 13px!important;
    border-radius:15px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times>header{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:4px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times>header strong{
    font-size:13px!important;
    text-align:left!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-time-slots{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-time-slots>button,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-slot{
    min-height:48px!important;
    padding:8px 4px!important;
    font-size:13px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-status{
    padding-inline:12px!important;
    font-size:12px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-waitlist{
    margin:14px 12px 16px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro{
    padding:13px!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    gap:10px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro>span{
    width:38px!important;
    height:38px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro strong{
    font-size:13px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro p{
    font-size:11px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro>button{
    grid-column:1/-1!important;
    width:100%!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-waitlist form{
    padding:16px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-fields{
    grid-template-columns:1fr!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="4"]>form{
    padding:18px 15px!important;
    border-radius:17px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-summary{
    padding:18px!important;
    grid-template-columns:1fr!important;
    font-size:13px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-summary>strong{
    grid-column:1!important;
    font-size:25px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label.field-wide{
    grid-column:1!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label{
    font-size:13px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label :where(input,textarea){
    min-height:52px!important;
    padding:12px 13px!important;
    font-size:14px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions{
    align-items:stretch!important;
    flex-direction:column-reverse!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions :where(.button,.back-button){
    width:100%!important;
    min-height:50px!important;
    justify-content:center!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success{
    padding:30px 16px!important;
    border-radius:19px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .success-icon{
    width:62px!important;
    height:62px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success>p{
    font-size:14px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-calendar-actions{
    grid-template-columns:1fr!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip{
    margin-top:18px!important;
    padding:0!important;
    grid-template-columns:1fr!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip>span{
    min-height:62px!important;
    padding:10px 16px!important;
    border-right:0!important;
    border-bottom:1px solid var(--market-flow-line)!important;
    justify-content:flex-start!important;
    font-size:13px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip>span:last-child{
    border-bottom:0!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip b{
    width:66px!important;
    font-size:23px!important;
  }
}

@media(max-width:560px){
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-bar{
    grid-template-columns:1fr!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions :where(a,button){
    width:100%!important;
    padding-inline:10px!important;
    white-space:normal!important;
  }
}

@media(max-width:420px){

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] em{
    font-size:9px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title h3{
    font-size:34px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card{
    grid-template-columns:minmax(0,1fr) auto!important;
    padding:16px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card>strong{
    min-width:0!important;
    overflow-wrap:anywhere!important;
    font-size:22px!important;
    letter-spacing:2px!important;
  }
}

@media(max-width:350px){
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])){
    width:calc(100% - 12px)!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-shell{
    padding:10px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress{
    min-height:68px!important;
    padding:4px 2px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress]{
    height:56px!important;
    min-height:56px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] b{
    width:25px!important;
    height:25px!important;
    flex-basis:25px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] em{
    font-size:8px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories{
    grid-template-columns:1fr!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar{
    padding-inline:8px!important;
    grid-template-columns:42px minmax(0,1fr) 42px!important;
    gap:5px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar>button{
    width:42px!important;
    height:42px!important;
    min-height:42px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-week{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    padding:9px!important;
    gap:6px!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-time-slots{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-waitlist{
    margin-right:9px!important;
    margin-left:9px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) *,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) *::before,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) *::after{
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important;
  }
}

/* Generic workflow validation and consent controls added by the shared markup. */
.booking-page.is-marketplace-booking .marketplace-selection-error,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-workflow-error{
  width:100%;
  margin:12px 0 0!important;
  padding:13px 15px!important;
  border:1px solid rgba(154,65,60,.22)!important;
  border-radius:12px!important;
  background:#fff3f1!important;
  color:#8d3935!important;
  font-size:13px!important;
  font-weight:650!important;
  line-height:1.45!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent{
  grid-column:1/-1!important;
  position:relative!important;
  padding:15px 16px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:13px!important;
  background:#faf6f1!important;
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr)!important;
  align-items:start!important;
  gap:11px!important;
  cursor:pointer!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent>input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent>span{
  width:22px!important;
  height:22px!important;
  border:1.5px solid #a99e95!important;
  border-radius:7px!important;
  background:#fff!important;
  display:grid!important;
  place-items:center!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent>input:checked+span{
  border-color:var(--market-flow-sage)!important;
  background:var(--market-flow-sage)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent>input:checked+span::after{
  content:"✓";
  color:#fff;
  font-size:14px;
  font-weight:800;
  line-height:1;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent>input:focus-visible+span{
  outline:3px solid rgba(189,116,111,.18)!important;
  outline-offset:3px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent>p{
  margin:0!important;
  color:var(--market-flow-muted)!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.55!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent a{
  color:var(--market-flow-ink)!important;
  font-weight:700!important;
  text-underline-offset:3px!important;
}

/* Apple-aligned booking workflow.
 * The discovery catalogue keeps its own layout; this layer starts only after a
 * professional has been selected and applies to service, time, details and
 * confirmation. */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])){
  --market-flow-ink:var(--apple-ink,#1d1d1f)!important;
  --market-flow-muted:var(--apple-muted,#6e6e73)!important;
  --market-flow-paper:var(--apple-page,#f5f5f7)!important;
  --market-flow-card:var(--apple-surface-solid,#fff)!important;
  --market-flow-soft:var(--apple-surface-muted,#f2f2f4)!important;
  --market-flow-line:var(--apple-line,rgba(29,29,31,.11))!important;
  --market-flow-rose:var(--apple-ink,#1d1d1f)!important;
  --market-flow-rose-dark:var(--apple-warm,#c57a74)!important;
  --market-flow-sage:var(--apple-accent,#71816b)!important;
  --market-flow-shadow:var(--apple-shadow-sm,0 1px 2px rgba(0,0,0,.03),0 10px 34px rgba(0,0,0,.045))!important;
  width:min(1320px,calc(100% - 40px))!important;
  margin:24px auto 68px!important;
  color:var(--market-flow-ink)!important;
  font-family:var(--apple-font,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(button,input,select,textarea,a,h1,h2,h3,h4,p,span,small,strong,em){
  font-family:var(--apple-font,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-shell{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-bar{
  min-height:76px!important;
  margin-bottom:16px!important;
  padding:12px 14px!important;
  border:1px solid rgba(255,255,255,.8)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.84)!important;
  box-shadow:0 12px 38px rgba(0,0,0,.055)!important;
  backdrop-filter:saturate(175%) blur(22px)!important;
  -webkit-backdrop-filter:saturate(175%) blur(22px)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-avatar{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  flex-basis:50px!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:50%!important;
  background-color:var(--market-flow-soft)!important;
  background-position:center!important;
  background-size:cover!important;
  color:var(--market-flow-ink)!important;
  box-shadow:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy>span{
  color:var(--market-flow-rose-dark)!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy strong{
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
  font-weight:650!important;
  letter-spacing:-.015em!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy small{color:var(--market-flow-muted)!important;font-size:11px!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-actions :where(a,button){
  min-height:44px!important;
  border-color:var(--market-flow-line)!important;
  border-radius:999px!important;
  background:var(--market-flow-soft)!important;
  color:var(--market-flow-ink)!important;
  font-size:11px!important;
  font-weight:620!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress{
  position:sticky!important;
  top:92px!important;
  z-index:45!important;
  width:min(760px,100%)!important;
  min-height:58px!important;
  margin:0 auto 24px!important;
  padding:6px!important;
  border:1px solid rgba(255,255,255,.8)!important;
  border-radius:19px!important;
  background:rgba(255,255,255,.84)!important;
  box-shadow:0 12px 38px rgba(0,0,0,.065)!important;
  backdrop-filter:saturate(175%) blur(22px)!important;
  -webkit-backdrop-filter:saturate(175%) blur(22px)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress]{
  min-height:44px!important;
  padding:0 12px!important;
  border-radius:13px!important;
  color:#86868b!important;
  gap:8px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] b{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  flex-basis:28px!important;
  border-color:var(--apple-line-strong,rgba(29,29,31,.18))!important;
  background:#fff!important;
  color:var(--market-flow-muted)!important;
  font-size:11px!important;
  font-weight:650!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] em{font-size:12px!important;font-weight:590!important;letter-spacing:-.01em!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].active{background:var(--market-flow-soft)!important;color:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].active b{border-color:var(--market-flow-ink)!important;background:var(--market-flow-ink)!important;color:#fff!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress].completed b{border-color:rgba(113,129,107,.28)!important;background:#edf2eb!important;color:#587052!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>i{background:var(--market-flow-line)!important}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading>span,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title>span,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success>.eyebrow{
  color:var(--market-flow-rose-dark)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.13em!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading h2,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title h3,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success h2{
  color:var(--market-flow-ink)!important;
  font-family:var(--apple-font,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif)!important;
  font-size:clamp(40px,5vw,62px)!important;
  font-weight:650!important;
  line-height:.98!important;
  letter-spacing:-.052em!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="1"]{
  width:min(1040px,100%)!important;
  margin:0 auto!important;
  padding:clamp(26px,4vw,46px)!important;
  border:1px solid var(--market-flow-line)!important;
  border-radius:var(--apple-radius-lg,32px)!important;
  background:#fff!important;
  box-shadow:var(--market-flow-shadow)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools>label{
  height:54px!important;
  min-height:54px!important;
  border-color:var(--apple-line-strong,rgba(29,29,31,.18))!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools input{color:var(--market-flow-ink)!important;font-size:14px!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools input::placeholder{color:#86868b!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories button{
  min-height:42px!important;
  border-color:var(--market-flow-line)!important;
  border-radius:999px!important;
  background:var(--market-flow-soft)!important;
  color:var(--market-flow-muted)!important;
  font-size:12px!important;
  font-weight:600!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories button:hover,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories button.active{
  border-color:var(--market-flow-ink)!important;
  background:var(--market-flow-ink)!important;
  color:#fff!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card{
  border-color:var(--market-flow-line)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:none!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card:hover{
  border-color:var(--apple-line-strong,rgba(29,29,31,.18))!important;
  box-shadow:0 10px 28px rgba(0,0,0,.055)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card:has(input:checked){
  border-color:var(--market-flow-ink)!important;
  background:#f7f7f9!important;
  box-shadow:0 0 0 1px var(--market-flow-ink)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.option-service-icon,.option-photo,.option-avatar){
  border-color:var(--market-flow-line)!important;
  border-radius:15px!important;
  background:var(--market-flow-soft)!important;
  color:var(--market-flow-ink)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card strong{font-weight:650!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-service-copy small,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card p{color:var(--market-flow-muted)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card .option-meta>i{border-color:var(--apple-line-strong,rgba(29,29,31,.18))!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card:has(input:checked) .option-meta>i{border-color:var(--market-flow-ink)!important;background:var(--market-flow-ink)!important}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .direct-booking-layout{width:min(1120px,100%)!important;margin:0 auto!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .direct-booking-calendar{
  border-color:var(--market-flow-line)!important;
  border-radius:var(--apple-radius-lg,32px)!important;
  background:#fff!important;
  box-shadow:var(--market-flow-shadow)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title{
  min-height:0!important;
  padding:clamp(32px,5vw,54px) clamp(22px,4vw,44px) 32px!important;
  border-color:var(--market-flow-line)!important;
  background:linear-gradient(145deg,#fff 0%,#f5f5f7 100%)!important;
  text-align:left!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title h3{max-width:760px!important;margin:9px 0 10px!important;text-align:left!important;text-wrap:balance!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title p{max-width:620px!important;margin:0!important;color:var(--market-flow-muted)!important;font-size:15px!important;text-align:left!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-calendar{background:#fff!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar{border-color:var(--market-flow-line)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-toolbar>button{border-color:var(--market-flow-line)!important;background:var(--market-flow-soft)!important;color:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.calendar-month-trigger,.calendar-month-picker>select){background:var(--market-flow-soft)!important;color:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-month-menu{border-color:var(--market-flow-line)!important;box-shadow:0 22px 64px rgba(0,0,0,.14)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation{border-color:var(--market-flow-line)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-navigation>button{background:var(--market-flow-soft)!important;color:var(--market-flow-muted)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.availability-day,.availability-day.day-heading){border-color:var(--market-flow-line)!important;background:#fff!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day:hover:not(:disabled):not(.is-full){border-color:var(--apple-line-strong,rgba(29,29,31,.18))!important;background:#fafafa!important;box-shadow:none!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day.selected{border-color:var(--market-flow-ink)!important;background:var(--market-flow-ink)!important;color:#fff!important;box-shadow:none!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day.selected :where(span,small,strong,i){color:#fff!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-day strong{font-family:var(--apple-font,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif)!important;font-weight:590!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times{border-color:var(--market-flow-line)!important;background:var(--market-flow-soft)!important;box-shadow:none!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times>header span{color:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-time-slots>button,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .week-slot{border-color:var(--market-flow-line)!important;border-radius:13px!important;background:#fff!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.selected-time-slots>button,.week-slot):hover:not(:disabled){border-color:var(--market-flow-ink)!important;background:#fff!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.selected-time-slots>button,.week-slot).selected{border-color:var(--market-flow-ink)!important;background:var(--market-flow-ink)!important;color:#fff!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-waitlist{border-color:var(--market-flow-line)!important;background:var(--market-flow-soft)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro>span{border-radius:50%!important;background:#fff!important;color:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .waitlist-intro>button{border-color:var(--market-flow-line)!important;border-radius:999px!important;background:#fff!important;color:var(--market-flow-ink)!important}

/* Personal details */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="4"]{width:min(980px,100%)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-summary{
  margin-bottom:16px!important;
  padding:22px 24px!important;
  border-color:var(--market-flow-line)!important;
  border-radius:20px!important;
  background:var(--market-flow-soft)!important;
  color:var(--market-flow-muted)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-summary>strong{
  color:var(--market-flow-ink)!important;
  font-family:var(--apple-font,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif)!important;
  font-size:24px!important;
  font-weight:650!important;
  letter-spacing:-.025em!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="4"]>form{
  padding:clamp(22px,4vw,38px)!important;
  border-color:var(--market-flow-line)!important;
  border-radius:var(--apple-radius-lg,32px)!important;
  background:#fff!important;
  box-shadow:var(--market-flow-shadow)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label{color:var(--market-flow-ink)!important;font-size:13px!important;font-weight:650!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label :where(input,textarea){
  min-height:54px!important;
  border-color:var(--apple-line-strong,rgba(29,29,31,.18))!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--market-flow-ink)!important;
  font-size:14px!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label textarea{min-height:112px!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label :where(input,textarea):focus{border-color:#0071e3!important;box-shadow:0 0 0 4px rgba(0,113,227,.12)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent{border-color:var(--market-flow-line)!important;border-radius:16px!important;background:var(--market-flow-soft)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-consent>input:checked+span{border-color:var(--market-flow-ink)!important;background:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions .button,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-calendar-actions .button{min-height:52px!important;border-radius:999px!important;font-size:13px!important;font-weight:650!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .button-dark,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions .button-dark{border-color:var(--market-flow-ink)!important;background:var(--market-flow-ink)!important}

/* Confirmation */
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success{
  width:min(820px,100%)!important;
  padding:clamp(28px,5vw,52px)!important;
  border-color:var(--market-flow-line)!important;
  border-radius:var(--apple-radius-lg,32px)!important;
  background:#fff!important;
  box-shadow:var(--market-flow-shadow)!important;
}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .success-icon{width:72px!important;height:72px!important;border:0!important;background:#edf2eb!important;color:#587052!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success>p{color:var(--market-flow-muted)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card,
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success-appointment{border-color:var(--market-flow-line)!important;border-radius:18px!important;background:var(--market-flow-soft)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-reference-card>button{border-radius:999px!important;background:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-calendar-actions .button-dark{background:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-calendar-actions .button-light{border-color:var(--apple-line-strong,rgba(29,29,31,.18))!important;background:var(--market-flow-soft)!important;color:var(--market-flow-ink)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success-notice{border-radius:15px!important;background:var(--market-flow-soft)!important;color:var(--market-flow-muted)!important}

.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip{
  margin-top:24px!important;
  border-color:var(--market-flow-line)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.8)!important;
  box-shadow:var(--market-flow-shadow)!important;
}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip>span{border-color:var(--market-flow-line)!important;color:var(--market-flow-muted)!important}
.booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip b{color:var(--market-flow-ink)!important;font-family:var(--apple-font,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif)!important;font-weight:650!important}

@media(max-width:980px){
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])){width:min(100% - 24px,900px)!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress{top:86px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-tools{grid-template-columns:1fr!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories{justify-content:flex-start!important}
}

@media(max-width:680px){
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])){width:calc(100% - 16px)!important;margin:12px auto 34px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-shell{padding:0!important;overflow:visible!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-bar{min-height:0!important;margin-bottom:10px!important;padding:10px!important;border-radius:18px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-avatar{width:44px!important;height:44px!important;min-width:44px!important;flex-basis:44px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy>span{font-size:8px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy strong{font-size:13px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-salon-copy small{font-size:9px!important}

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress{
    top:78px!important;
    width:100%!important;
    min-height:62px!important;
    margin:0 0 12px!important;
    padding:5px!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:3px!important;
    overflow:visible!important;
  }
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress]{width:100%!important;height:50px!important;min-height:50px!important;padding:3px 2px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;text-align:center!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] b{width:24px!important;height:24px!important;min-width:24px!important;flex-basis:24px!important;font-size:10px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] em{max-width:100%!important;overflow:hidden!important;font-size:9px!important;line-height:1.12!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>i{display:none!important}

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="1"]{padding:24px 15px!important;border-radius:24px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .panel-heading h2,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title h3,
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success h2{font-size:clamp(36px,11vw,46px)!important;line-height:1!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;scroll-snap-type:x proximity!important;scrollbar-width:none!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories::-webkit-scrollbar{display:none!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-service-categories button{flex:0 0 auto!important;width:auto!important;scroll-snap-align:start!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .option-card{min-height:96px!important}

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .direct-booking-calendar{border-radius:24px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title{padding:28px 18px 24px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .calendar-panel-title p{font-size:13px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-week{
    padding:14px 10px!important;
    display:grid!important;
    grid-template-columns:none!important;
    grid-auto-columns:78px!important;
    grid-auto-flow:column!important;
    gap:7px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
  }
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .availability-week::-webkit-scrollbar{display:none!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) :where(.availability-day,.availability-day.day-heading){min-width:78px!important;min-height:96px!important;scroll-snap-align:start!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-day-times{margin:0 10px 14px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-time-slots{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-waitlist{margin:14px 10px 16px!important}

  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-panel[data-step="4"]>form{padding:24px 16px!important;border-radius:24px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-summary{padding:18px!important;border-radius:17px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-grid{grid-template-columns:1fr!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .field-label.field-wide{grid-column:1!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions{align-items:stretch!important;flex-direction:column-reverse!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .form-actions :where(.button,.back-button){width:100%!important;justify-content:center!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-success{padding:30px 16px!important;border-radius:24px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-calendar-actions{grid-template-columns:1fr!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip{margin-top:16px!important;padding:6px 14px!important;grid-template-columns:1fr!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip>span{min-height:54px!important;padding:8px 2px!important;border-right:0!important;border-bottom:1px solid var(--market-flow-line)!important;font-size:11px!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip>span:last-child{border-bottom:0!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-trust-strip b{width:62px!important;font-size:20px!important}
}

@media(max-width:390px){
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .selected-time-slots{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .booking-page.is-marketplace-booking:has(.booking-shell:not([hidden])) .booking-progress>[data-progress] em{font-size:8px!important}
}
