/* ==========================================================================
   SmileSavvy Dental Clinic — Flat Brand Flatpickr Theme
   Matches brand colors: #C9B59C, #D9CFC7, #EFE9E3, #4a3f36.
   No shadows, no gradients, clean flat layout.
   ========================================================================== */

.flatpickr-calendar {
  background: #ffffff !important;
  border: 1px solid #D9CFC7 !important;
  box-shadow: none !important;
  border-radius: 8px !important;
  color: #4a3f36 !important;
  font-family: inherit !important;
  padding: 0.75rem !important;
  width: 320px !important;
}

.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
  border-bottom-color: #ffffff !important;
}

.flatpickr-months {
  margin-bottom: 0.5rem !important;
}

.flatpickr-months .flatpickr-month {
  color: #4a3f36 !important;
  fill: #4a3f36 !important;
}

.flatpickr-current-month {
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: #4a3f36 !important;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
  border-bottom-color: #C9B59C !important;
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
  border-top-color: #C9B59C !important;
}

span.flatpickr-weekday {
  color: #8c7d72 !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
}

.flatpickr-day {
  color: #4a3f36 !important;
  border-radius: 6px !important;
  border: 1px solid transparent !important;
  font-weight: 500 !important;
  height: 38px !important;
  line-height: 38px !important;
  transition: all 0.15s ease !important;
}

.flatpickr-day:hover:not(.flatpickr-disabled) {
  background: #EFE9E3 !important;
  border-color: #C9B59C !important;
  color: #4a3f36 !important;
}

.flatpickr-day.today {
  border-color: #C9B59C !important;
}

.flatpickr-day.selected, 
.flatpickr-day.startRange, 
.flatpickr-day.endRange {
  background: #C9B59C !important;
  color: #ffffff !important;
  border-color: #C9B59C !important;
  box-shadow: none !important;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
  color: #bbb0a6 !important;
  opacity: 0.4 !important;
  cursor: not-allowed !important;
}

.flatpickr-time {
  border-top: 1px solid #D9CFC7 !important;
  margin-top: 0.5rem !important;
  padding-top: 0.5rem !important;
}

.flatpickr-time input {
  color: #4a3f36 !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
}

.flatpickr-time input:hover,
.flatpickr-time input:focus {
  background: #EFE9E3 !important;
}

.flatpickr-time .flatpickr-am-pm {
  color: #C9B59C !important;
  font-weight: 700 !important;
}

.flatpickr-time .flatpickr-time-separator {
  color: #8c7d72 !important;
}
