
.scb-booking-form-wrap{
  --scb-bg: #ffffff;
  --scb-surface: #ffffff;
  --scb-text: #101828;
  --scb-muted: #667085;
  --scb-border: #d0d5dd;
  --scb-input-bg: #ffffff;
  --scb-button-bg: var(--scb-brand, #101820);
  --scb-button-text: #ffffff;
  --scb-focus: #2e90fa;
  --scb-success-bg: #d1f7d6;
  --scb-success-border: #95d99d;
  --scb-error-bg: #ffe1e1;
  --scb-error-border: #e0a0a0;
  max-width: 760px;
  margin: 0 auto;
  color: var(--scb-text);
}

.scb-theme-light{
  --scb-bg: #ffffff;
  --scb-surface: #ffffff;
  --scb-text: #101828;
  --scb-muted: #667085;
  --scb-border: #d0d5dd;
  --scb-input-bg: #ffffff;
  --scb-button-bg: var(--scb-brand, #101820);
  --scb-button-text: #ffffff;
  --scb-focus: #2e90fa;
}

.scb-theme-dark{
  --scb-bg: rgba(8, 15, 28, 0.92);
  --scb-surface: rgba(10, 17, 30, 0.86);
  --scb-text: #f8fafc;
  --scb-muted: #cbd5e1;
  --scb-border: rgba(255,255,255,.22);
  --scb-input-bg: rgba(255,255,255,.06);
  --scb-button-bg: #ffffff;
  --scb-button-text: #101820;
  --scb-focus: #7cc4ff;
  --scb-success-bg: rgba(26, 77, 46, 0.88);
  --scb-success-border: #72d489;
  --scb-error-bg: rgba(101, 24, 24, 0.88);
  --scb-error-border: #f0a5a5;
}

.scb-theme-auto{
  --scb-bg: rgba(255,255,255,0.12);
  --scb-surface: rgba(255,255,255,0.08);
  --scb-text: #ffffff;
  --scb-muted: rgba(255,255,255,0.82);
  --scb-border: rgba(255,255,255,.28);
  --scb-input-bg: rgba(255,255,255,.05);
  --scb-button-bg: #ffffff;
  --scb-button-text: #163866;
  --scb-focus: #9bd0ff;
  --scb-success-bg: rgba(26, 77, 46, 0.88);
  --scb-success-border: #72d489;
  --scb-error-bg: rgba(101, 24, 24, 0.88);
  --scb-error-border: #f0a5a5;
}

@media (prefers-color-scheme: light){
  .scb-theme-auto{
    --scb-bg: #ffffff;
    --scb-surface: #ffffff;
    --scb-text: #101828;
    --scb-muted: #667085;
    --scb-border: #d0d5dd;
    --scb-input-bg: #ffffff;
    --scb-button-bg: var(--scb-brand, #101820);
    --scb-button-text: #ffffff;
    --scb-focus: #2e90fa;
    --scb-success-bg: #d1f7d6;
    --scb-success-border: #95d99d;
    --scb-error-bg: #ffe1e1;
    --scb-error-border: #e0a0a0;
  }
}

.scb-booking-form{
  display:grid;
  grid-template-columns: 1fr;
  gap:18px;
  background: var(--scb-bg);
  border: 1px solid var(--scb-border);
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 12px 32px rgba(0,0,0,.08);
  backdrop-filter: blur(8px);
}

.scb-booking-form label,
.scb-booking-form legend{
  display:block;
  font-weight:600;
  color: var(--scb-text);
}

.scb-booking-form input,
.scb-booking-form select,
.scb-booking-form textarea{
  width:100%;
  box-sizing:border-box;
  margin-top:8px;
  padding:13px 14px;
  border:1px solid var(--scb-border);
  border-radius:12px;
  background: var(--scb-input-bg);
  color: var(--scb-text);
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.scb-booking-form input::placeholder,
.scb-booking-form textarea::placeholder{color: var(--scb-muted);opacity:1;}
.scb-booking-form input:focus,
.scb-booking-form select:focus,
.scb-booking-form textarea:focus{
  outline:none;
  border-color: var(--scb-focus);
  box-shadow: 0 0 0 3px rgba(46,144,250,.18);
}
.scb-booking-form textarea{min-height:110px;resize:vertical}
.scb-booking-form fieldset{
  border:1px solid var(--scb-border);
  background: var(--scb-surface);
  border-radius:14px;
  padding:16px;
}
.scb-booking-form .scb-check{display:flex;gap:10px;align-items:flex-start;font-weight:400;color: var(--scb-text)}
.scb-booking-form .scb-check input{width:auto;margin:3px 0 0 0;flex:0 0 auto}
.scb-booking-form .scb-check a{color: inherit;text-decoration: underline}
.scb-booking-form button{
  padding:14px 22px;
  border:0;
  background:var(--scb-button-bg);
  color:var(--scb-button-text);
  cursor:pointer;
  font-weight:600;
  transition: transform .15s ease, opacity .15s ease, background-color .15s ease;
}
.scb-booking-form button:hover{opacity:.94;transform:translateY(-1px)}
.scb-style-rounded button{border-radius:999px}
.scb-style-square button{border-radius:0}
.scb-style-outline button{background:transparent;color:var(--scb-text);border:1px solid var(--scb-border);border-radius:999px}
.scb-success,.scb-error{
  padding:13px 14px;
  border-radius:12px;
  margin-bottom:18px;
  border:1px solid;
}
.scb-success{background:var(--scb-success-bg);border-color:var(--scb-success-border);color:var(--scb-text)}
.scb-error{background:var(--scb-error-bg);border-color:var(--scb-error-border);color:var(--scb-text)}
.scb-slot-help{display:block;margin-top:7px;font-weight:400;color:var(--scb-muted);line-height:1.45}
.scb-booking-form select:disabled,.scb-booking-form input:disabled,.scb-booking-form textarea:disabled{background:rgba(127,127,127,.10);color:var(--scb-muted);cursor:not-allowed}
@media (max-width: 640px){
  .scb-booking-form{padding:20px;border-radius:14px}
}


@media (min-width: 720px){
  .scb-layout-two-columns .scb-booking-form{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items:start;
  }
  .scb-layout-two-columns .scb-booking-form .scb-full,
  .scb-layout-two-columns .scb-booking-form button{
    grid-column: 1 / -1;
  }
}

.scb-layout-one-column .scb-booking-form{
  grid-template-columns: 1fr;
}

.scb-booking-form button{
  justify-self:start;
  min-width: 190px;
}

@media (max-width: 719px){
  .scb-booking-form button{
    width:100%;
  }
}


.scb-people-help{
  display:block;
  margin-top:7px;
  color:var(--scb-muted);
  font-weight:400;
  line-height:1.45;
}

.scb-extra-empty{margin:0;color:var(--scb-muted);font-weight:400;}

.scb-form-header{background:var(--scb-bg);border:1px solid var(--scb-border);border-radius:18px;padding:24px 28px;margin:0 0 18px;text-align:center;box-shadow:0 12px 32px rgba(0,0,0,.06);backdrop-filter:blur(8px)}
.scb-form-header h2{margin:0 0 8px;color:var(--scb-text);font-size:24px;line-height:1.2}
.scb-form-header p{margin:0;color:var(--scb-muted);font-size:15px;line-height:1.45}
.scb-booking-form button{background:var(--scb-button-bg);color:var(--scb-button-text)}


/* SportCore 1.0.23 button fix */
.scb-booking-form button[type="submit"]{
  background: var(--scb-custom-button-bg, var(--scb-brand, #101820)) !important;
  color: var(--scb-custom-button-text, #ffffff) !important;
  border: 1px solid var(--scb-custom-button-bg, var(--scb-brand, #101820)) !important;
}

.scb-booking-form button[type="submit"]:hover{
  background: var(--scb-custom-button-hover-bg, var(--scb-custom-button-bg, var(--scb-brand, #101820))) !important;
  color: var(--scb-custom-button-hover-text, var(--scb-custom-button-text, #ffffff)) !important;
  border-color: var(--scb-custom-button-hover-bg, var(--scb-custom-button-bg, var(--scb-brand, #101820))) !important;
}

.scb-style-rounded .scb-booking-form button[type="submit"]{
  border-radius: 999px !important;
}

.scb-style-square .scb-booking-form button[type="submit"]{
  border-radius: 0 !important;
}

.scb-style-outline .scb-booking-form button[type="submit"]{
  background: transparent !important;
  color: var(--scb-custom-button-bg, var(--scb-brand, #101820)) !important;
  border: 1px solid var(--scb-custom-button-bg, var(--scb-brand, #101820)) !important;
}

.scb-style-outline .scb-booking-form button[type="submit"]:hover{
  background: var(--scb-custom-button-hover-bg, var(--scb-custom-button-bg, var(--scb-brand, #101820))) !important;
  color: var(--scb-custom-button-hover-text, #ffffff) !important;
  border-color: var(--scb-custom-button-hover-bg, var(--scb-custom-button-bg, var(--scb-brand, #101820))) !important;
}

.scb-waitlist-box{
  margin-top:22px;
  padding:22px;
  border:1px solid rgba(0,0,0,.12);
  border-radius:16px;
  background:rgba(255,255,255,.92);
}
.scb-waitlist-box h3{margin:0 0 8px}
.scb-waitlist-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:18px;
}
.scb-waitlist-form .scb-full{grid-column:1/-1}
@media(max-width:760px){
  .scb-waitlist-form{grid-template-columns:1fr}
}
