/*
 * GESTOR CLEAN | Configuration UX v1
 * Progressive answer validation, center-aligned CTA, accessible quantity
 * steppers. State and price calculation remain in the canonical booking flow.
 */
body.gc-booking-v81 #gc81-config-view .gc-config-back {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  padding:6px 2px!important;
  min-height:40px!important;
  max-width:100%!important;
  margin:0 0 8px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:var(--gc-primary,#0F7160)!important;
  font-weight:760!important;
  font-size:.78rem!important;
  line-height:1.35!important;
  text-align:left!important;
  cursor:pointer!important;
}
body.gc-booking-v81 #gc81-config-view .gc-config-back span {
  font-size:1.15rem!important;
  line-height:1!important;
}
body.gc-booking-v81 #gc81-config-view .gc-config-back:focus-visible {
  outline:3px solid var(--gc-primary,#0F7160)!important;
  outline-offset:3px!important;
  border-radius:5px!important;
}
body.gc-booking-v81 #gc81-config-view .gc-config-answer-progress {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:7px!important;
  margin:6px 0 13px!important;
  padding:0!important;
  width:100%!important;
  box-sizing:border-box!important;
}
body.gc-booking-v81 #gc81-config-view .gc-config-progress-label {
  color:var(--gc-muted,#536C64)!important;
  font-size:.68rem!important;
  font-weight:690!important;
  letter-spacing:.005em!important;
  line-height:1.35!important;
}
body.gc-booking-v81 #gc81-config-view .gc-config-answer-progress.is-complete .gc-config-progress-label {
  color:var(--gc-primary,#0F7160)!important;
}
body.gc-booking-v81 #gc81-config-view .gc-config-progress-track {
  display:block!important;
  width:100%!important;
  height:4px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--gc-primary,#0F7160) 17%,transparent)!important;
  overflow:hidden!important;
}
body.gc-booking-v81 #gc81-config-view .gc-config-progress-track > span {
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:var(--gc-primary,#0F7160)!important;
  transition:width .17s ease!important;
}
body.gc-booking-v81 #questions .gc-question-stepper {
  display:grid!important;
  grid-template-columns:minmax(50px,1fr) minmax(72px,1.35fr) minmax(50px,1fr)!important;
  gap:5px!important;
  align-items:center!important;
  width:100%!important;
  max-width:100%!important;
  min-height:55px!important;
  padding:5px!important;
  box-sizing:border-box!important;
  border:1px solid var(--gc-line,#D4E1DC)!important;
  border-radius:13px!important;
  background:var(--gc-surface,#FFFFFF)!important;
  color:var(--gc-text,#16352E)!important;
}
body.gc-booking-v81 #questions .gc-question-stepper button {
  appearance:none!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  min-width:0!important;
  height:45px!important;
  min-height:45px!important;
  padding:0!important;
  border-radius:10px!important;
  font-size:1.27rem!important;
  font-weight:830!important;
  line-height:1!important;
  cursor:pointer!important;
}
body.gc-booking-v81 #questions .gc-question-stepper-minus {
  color:var(--gc-text,#16352E)!important;
  background:color-mix(in srgb,var(--gc-primary,#0F7160) 6%,var(--gc-surface,#FFFFFF))!important;
  border:1px solid var(--gc-line,#DAE2DD)!important;
}
body.gc-booking-v81 #questions .gc-question-stepper-plus {
  color:var(--gc-on-primary,#FFFFFF)!important;
  -webkit-text-fill-color:var(--gc-on-primary,#FFFFFF)!important;
  background:var(--gc-primary,#0F7160)!important;
  border:1px solid var(--gc-primary,#0F7160)!important;
}
body.gc-booking-v81 #questions .gc-question-stepper button:disabled {
  opacity:.33!important;
  cursor:not-allowed!important;
  filter:grayscale(.3)!important;
}
body.gc-booking-v81 #questions input.gc-question-stepper-input {
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:45px!important;
  min-height:45px!important;
  margin:0!important;
  padding:3px 0!important;
  box-sizing:border-box!important;
  border:0!important;
  box-shadow:none!important;
  outline-offset:1px!important;
  background:transparent!important;
  color:var(--gc-text,#16352E)!important;
  -webkit-text-fill-color:var(--gc-text,#16352E)!important;
  text-align:center!important;
  font-size:1.24rem!important;
  font-weight:830!important;
  font-variant-numeric:tabular-nums!important;
  appearance:textfield!important;
}
body.gc-booking-v81 #questions input.gc-question-stepper-input::-webkit-outer-spin-button,
body.gc-booking-v81 #questions input.gc-question-stepper-input::-webkit-inner-spin-button {
  -webkit-appearance:none!important;
  margin:0!important;
}
body.gc-booking-v81 #questions .gc-question-stepper button:focus-visible,
body.gc-booking-v81 #questions input.gc-question-stepper-input:focus-visible {
  outline:3px solid var(--gc-primary,#0F7160)!important;
  outline-offset:1px!important;
}
body.gc-booking-v81[data-gc-public-template="immersive"] #questions .gc-options > .gc-option:last-child:nth-child(odd) {
  grid-column:1 / -1!important;
}
body.gc-booking-v81[data-gc-public-template="immersive"]:not(.gc85-identification) #gc81-config-view {
  min-width:0!important;
  padding-bottom:18px!important;
}
body.gc-booking-v81[data-gc-public-template="immersive"]:not(.gc85-identification) #gc81-config-view .gc-config-back {
  color:var(--gc82-catalog-muted,#CBEBE2)!important;
  -webkit-text-fill-color:var(--gc82-catalog-muted,#CBEBE2)!important;
}
body.gc-booking-v81[data-gc-public-template="immersive"]:not(.gc85-identification) #gc81-config-view .gc-config-progress-label {
  color:var(--gc82-catalog-muted,#CBEBE2)!important;
  -webkit-text-fill-color:var(--gc82-catalog-muted,#CBEBE2)!important;
}
body.gc-booking-v81[data-gc-public-template="immersive"]:not(.gc85-identification) #gc81-config-view .gc-config-answer-progress.is-complete .gc-config-progress-label {
  color:var(--gc91-highlight,#AFF5D3)!important;
  -webkit-text-fill-color:var(--gc91-highlight,#AFF5D3)!important;
}
/* The Back action is accessible beside the configuration title. The sticky
 * footer can devote its whole center axis to the primary CTA. */
body.gc-booking-v81 .sticky.gc-actions.gc-config-action-footer > .gc-actions-inner {
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  width:min(100%,700px)!important;
  max-width:700px!important;
  margin:0 auto!important;
  justify-content:center!important;
  align-items:center!important;
}
body.gc-booking-v81 .sticky.gc-actions.gc-config-action-footer #next {
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  justify-self:center!important;
  text-align:center!important;
  transition:opacity .14s ease,filter .14s ease!important;
}
body.gc-booking-v81 .sticky.gc-actions.gc-config-action-footer #next:disabled {
  opacity:.39!important;
  filter:saturate(.35)!important;
  box-shadow:none!important;
  cursor:not-allowed!important;
}
@media(max-width:599px){
  body.gc-booking-v81[data-gc-public-template="immersive"]:not(.gc85-identification) #gc81-config-view {
    padding-bottom:24px!important;
  }
  body.gc-booking-v81 .sticky.gc-actions.gc-config-action-footer {
    padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;
  }
  body.gc-booking-v81 #questions .gc-question-stepper {
    min-height:54px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.gc-booking-v81 #gc81-config-view .gc-config-progress-track > span,
  body.gc-booking-v81 .sticky.gc-actions.gc-config-action-footer #next {
    transition:none!important;
  }
}
