/* Pro Fade Barber booking-only light contrast theme.
   Scope is intentionally limited to body.booking-light and .bk-page so the
   main website and admin keep the existing dark design system. */

body.booking-light {
  background: #F7F5F0;
  color: #111111;
}

body.booking-light .bk-nav {
  background: #0A0A0A;
  border-bottom-color: #262626;
}
body.booking-light .bk-nav-back,
body.booking-light .bk-nav-link,
body.booking-light .bk-nav-help { color: #D7D7D7; }
body.booking-light .bk-nav-back:hover,
body.booking-light .bk-nav-link:hover { color: #FFFFFF; }
body.booking-light .bk-nav-help:hover { color: #C9A96A; }

body.booking-light .bk-page {
  --text: #111111;
  --text-muted: #5F5F5F;
  --text-soft: #444444;
  --surface: #FFFFFF;
  --surface2: #F2EFE9;
  --border: #D8D2C7;
  --gold: #C9A96A;
  --gold-light: #D4AD7A;
  background: #F7F5F0;
  color: #111111;
}

body.booking-light .bk-heading h1 {
  color: #111111;
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.035em;
}

body.booking-light .bk-card {
  background: #FFFFFF;
  border-color: #D8D2C7;
  box-shadow: 0 8px 24px rgba(17,17,17,0.05);
}

body.booking-light .bk-label {
  color: #333333;
  font-size: 12.5px;
  font-weight: 800;
  letter-spacing: 0.07em;
}
body.booking-light .bk-label span { color: #666666 !important; font-size: 11px !important; }

body.booking-light .bk-select {
  min-height: 48px;
  background-color: #FFFFFF;
  border-color: #BEB7AA;
  color: #111111;
  font-size: 16px;
  font-weight: 600;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23444' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}
body.booking-light .bk-select:focus {
  border-color: #C9A96A;
  box-shadow: 0 0 0 3px rgba(201,169,106,0.24);
}
body.booking-light .bk-select option { background: #FFFFFF; color: #111111; }

body.booking-light .bk-divider,
body.booking-light .bk-times-section { border-color: #E2DDD4; }
body.booking-light .bk-divider { background: #E2DDD4; }

body.booking-light .bk-barber-chip {
  min-height: 56px;
  background: #FFFFFF;
  border: 1.5px solid #BEB7AA;
  color: #222222;
  font-size: 15px;
  font-weight: 650;
}
body.booking-light .bk-barber-chip:hover {
  border-color: #C9A96A;
  background: #FBF8F1;
  color: #111111;
}
body.booking-light .bk-barber-chip.active {
  background: #F3E9D5;
  border: 2px solid #C9A96A;
  color: #111111;
  font-weight: 750;
  box-shadow: 0 0 0 2px rgba(201,169,106,0.12);
}
body.booking-light .bk-barber-chip-initials {
  background: #EEEAE2;
  color: #333333;
  font-size: 12px;
}
body.booking-light .bk-barber-chip--off { opacity: 0.52; }
body.booking-light .chip-off-label { color: #666666; font-size: 11.5px; }
body.booking-light .bk-barber-bio {
  background: #FBF6EC;
  border-color: #DEC89B;
  color: #555555;
  font-size: 13px;
}
body.booking-light .bk-barber-bio strong { color: #111111; font-size: 14px; }
body.booking-light .bk-group p[style*="font-size:11px"] { color: #666666 !important; font-size: 13px !important; line-height: 1.45; }

body.booking-light .calendar-nav { color: #111111; }
body.booking-light .calendar-month {
  color: #111111;
  font-size: 18px;
  font-weight: 800;
}
body.booking-light .calendar-nav button {
  min-width: 44px;
  min-height: 44px;
  background: #F2EFE9;
  border: 1px solid #D8D2C7;
  color: #111111;
}
body.booking-light .calendar-nav button:hover:not(:disabled) {
  border-color: #C9A96A;
  background: #FBF6EC;
}
body.booking-light .calendar-nav button:disabled { opacity: 0.35; }
body.booking-light .cal-header {
  color: #666666;
  font-size: 12px;
  font-weight: 750;
}
body.booking-light .cal-day {
  min-height: 44px;
  color: #111111;
  font-size: 15px;
  font-weight: 650;
  border: 1px solid transparent;
  border-radius: 8px;
}
body.booking-light .cal-day--avail {
  background: #FFFFFF;
  border-color: #D8D2C7;
  color: #111111;
}
body.booking-light .cal-day--avail:hover {
  background: #FBF6EC;
  border-color: #C9A96A;
}
body.booking-light .cal-day.today {
  box-shadow: inset 0 0 0 2px rgba(201,169,106,0.9);
}
body.booking-light .cal-day.selected,
body.booking-light .cal-day.today.selected {
  background: #C9A96A !important;
  border-color: #A8874B !important;
  color: #000000 !important;
  box-shadow: 0 0 0 2px rgba(201,169,106,0.22) !important;
  font-weight: 800 !important;
}
body.booking-light .cal-day.disabled,
body.booking-light .cal-day--off,
body.booking-light .cal-day--off:hover {
  background: #F2F0EC;
  border-color: transparent;
  color: #8A8A8A;
}
body.booking-light .cal-legend { color: #666666; font-size: 12px; }

body.booking-light .bk-times-label {
  color: #111111;
  font-size: 16px;
  font-weight: 800;
}
body.booking-light .bk-times-label span { color: #5F5F5F; font-size: 14px; }
body.booking-light .time-slot {
  min-height: 46px;
  background: #FFFFFF;
  border: 1.5px solid #BEB7AA;
  color: #111111;
  font-size: 16px;
  font-weight: 700;
  border-radius: 9px;
}
body.booking-light .time-slot:hover {
  border-color: #C9A96A;
  background: #FBF6EC;
}
body.booking-light .time-slot.selected {
  background: #C9A96A;
  border-color: #A8874B;
  color: #000000;
  font-weight: 800;
  box-shadow: 0 0 0 2px rgba(201,169,106,0.18);
}
body.booking-light .bk-no-slots,
body.booking-light .bk-times-loading,
body.booking-light #durationHint { color: #5F5F5F !important; font-size: 13.5px !important; }

body.booking-light .bk-footer {
  background: #FFFFFF;
  border-top-color: #D8D2C7;
  box-shadow: 0 -6px 20px rgba(17,17,17,0.06);
}
body.booking-light .bk-footer-summary { color: #555555; font-size: 14px; }
body.booking-light .bk-footer-summary strong { color: #111111; }
body.booking-light #continueBtn,
body.booking-light #confirmBtn,
body.booking-light .btn-primary {
  min-height: 48px;
  background: #C9A96A;
  color: #000000;
  font-size: 16px;
  font-weight: 800;
}
body.booking-light #continueBtn:hover:not(:disabled),
body.booking-light #confirmBtn:hover:not(:disabled),
body.booking-light .btn-primary:hover:not(:disabled) { background: #D4AD7A; }
body.booking-light .btn:disabled {
  opacity: 1;
  background: #E3E0DA;
  color: #858585;
  cursor: not-allowed;
  box-shadow: none;
}

body.booking-light .bk-back-btn,
body.booking-light .btn-secondary {
  background: #FFFFFF;
  border-color: #BEB7AA;
  color: #222222;
}
body.booking-light .bk-back-btn:hover,
body.booking-light .btn-secondary:hover { border-color: #C9A96A; color: #111111; }

body.booking-light .bk-summary-box,
body.booking-light .bk-success-summary {
  background: #FFFFFF;
  border-color: #D8D2C7;
  box-shadow: 0 6px 18px rgba(17,17,17,0.04);
}
body.booking-light .bk-summary-row + .bk-summary-row { border-top-color: #E7E2D9; }
body.booking-light .bk-summary-title { color: #555555; font-size: 12px; }
body.booking-light .bk-summary-service,
body.booking-light .bk-summary-when,
body.booking-light .bk-summary-val { color: #111111; }
body.booking-light .bk-summary-key,
body.booking-light .bk-summary-who { color: #5F5F5F; }
body.booking-light .bk-summary-who span { color: #333333; }
body.booking-light .bk-summary-price { color: #7A5A1C; }
body.booking-light .bk-summary-change { color: #7A5A1C; font-weight: 750; }

body.booking-light .bk-form-label {
  color: #333333;
  font-size: 14px;
  font-weight: 750;
}
body.booking-light .bk-form-input {
  min-height: 48px;
  background: #FFFFFF;
  border-color: #BEB7AA;
  color: #111111;
  font-size: 16px;
}
body.booking-light .bk-form-input::placeholder { color: #777777; opacity: 1; }
body.booking-light .bk-form-input:focus {
  border-color: #C9A96A;
  box-shadow: 0 0 0 3px rgba(201,169,106,0.20);
}
body.booking-light .bk-welcome-banner {
  background: #FBF6EC;
  border-color: #DEC89B;
  color: #684D19;
}
body.booking-light .bk-error {
  background: #FFF1F1;
  border-color: #E9B2B2;
  color: #A12626;
}
body.booking-light .bk-conflict {
  background: #FFF7E8;
  border-color: #E8C483;
  color: #4B390F;
}
body.booking-light .bk-conflict-msg { color: #6C4B0E; }

body.booking-light .bk-success-icon {
  background: #F3E9D5;
  border-color: #C9A96A;
  color: #684D19;
}
body.booking-light .bk-success-wrap h2 { color: #111111; }
body.booking-light .bk-success-sub { color: #5F5F5F; }
body.booking-light .bk-cancel-btn { color: #A12626; }

body.booking-light .bk-help-hint,
body.booking-light .bk-help-hint a { color: #5F5F5F; font-size: 13px; }
body.booking-light .bk-help-hint a:hover { color: #684D19; }

body.booking-light .bk-page a[style*="color:var(--text-muted)"],
body.booking-light .bk-page p[style*="color:var(--text-muted)"],
body.booking-light .bk-page span[style*="color:var(--text-muted)"] { color: #5F5F5F !important; }
body.booking-light .bk-page span[style*="color:var(--text)"] { color: #111111 !important; }

body.booking-light .cal-day:focus-visible,
body.booking-light .time-slot:focus-visible,
body.booking-light .bk-barber-chip:focus-visible,
body.booking-light .btn:focus-visible,
body.booking-light .bk-back-btn:focus-visible,
body.booking-light .bk-summary-change:focus-visible,
body.booking-light .bk-select:focus-visible,
body.booking-light .bk-form-input:focus-visible {
  outline: 3px solid rgba(201,169,106,0.65);
  outline-offset: 2px;
}

@media (max-width: 768px) {
  body.booking-light .bk-heading h1 { font-size: 25px; }
  body.booking-light .bk-card { padding: 18px; }
  body.booking-light .bk-label { font-size: 12px; }
}

@media (max-width: 360px) {
  body.booking-light .bk-card { padding: 12px; }
  body.booking-light .calendar-grid { gap: 2px; }
  body.booking-light .cal-day { min-height: 36px; font-size: 14px; }
  body.booking-light .calendar-nav button { min-width: 38px; min-height: 38px; }
}
