/* =========================================================
   Flatpickr — Tema Neutro BelezaAgenda
   ========================================================= */

.flatpickr-calendar {
  font-family: 'Inter', sans-serif;
  border-radius: 12px;
  border: 1px solid #e5e7eb;
  box-shadow: 0 8px 28px rgba(0,0,0,.10);
  overflow: hidden;
  width: 272px;
}
.flatpickr-calendar.arrowTop::before  { border-bottom-color: #e5e7eb; }
.flatpickr-calendar.arrowTop::after   { border-bottom-color: #fff; }
.flatpickr-calendar.arrowBottom::before { border-top-color: #e5e7eb; }
.flatpickr-calendar.arrowBottom::after  { border-top-color: #fff; }

/* ── Cabeçalho ─────────────────────────────────────────── */
.flatpickr-months {
  background: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
  padding: 4px 0;
  border-radius: 12px 12px 0 0;
}
.flatpickr-months .flatpickr-month {
  color: #111827;
  fill: #111827;
  height: 36px;
}
.flatpickr-current-month {
  color: #111827;
  font-size: .9rem;
  font-weight: 600;
  font-family: 'Inter', sans-serif;
  padding-top: 6px;
}
.flatpickr-current-month .cur-month { font-weight: 700; }
.flatpickr-current-month .cur-month:hover { background: #f3f4f6; }
.flatpickr-current-month .numInputWrapper { width: 60px; }
.flatpickr-current-month .numInputWrapper input {
  color: #111827;
  font-weight: 600;
  font-family: 'Inter', sans-serif;
}
.flatpickr-current-month .numInputWrapper span { border-color: #d1d5db; }
.flatpickr-current-month .numInputWrapper span svg { fill: #6b7280; }
.flatpickr-current-month .numInputWrapper span:hover { background: #f3f4f6; }

.flatpickr-prev-month,
.flatpickr-next-month {
  color: #6b7280 !important;
  fill: #6b7280 !important;
  padding: 8px 10px !important;
  border-radius: 8px;
  transition: background .15s;
}
.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
  background: #f3f4f6 !important;
  color: #111827 !important;
}
.flatpickr-prev-month:hover svg,
.flatpickr-next-month:hover svg { fill: #111827 !important; }

/* ── Dias da semana ────────────────────────────────────── */
.flatpickr-weekdays {
  background: #fff;
  padding: 6px 0 2px;
}
.flatpickr-weekday {
  color: #9ca3af;
  font-weight: 600;
  font-size: .72rem;
  font-family: 'Inter', sans-serif;
}

/* ── Dias ──────────────────────────────────────────────── */
.flatpickr-innerContainer { padding: 6px 8px 10px; }
.dayContainer { padding: 0; gap: 2px; }

.flatpickr-day {
  border-radius: 8px;
  font-family: 'Inter', sans-serif;
  font-size: .84rem;
  font-weight: 500;
  color: #374151;
  border: 1px solid transparent;
  height: 34px;
  line-height: 34px;
  max-width: 34px;
  transition: background .12s, color .12s;
}
.flatpickr-day:hover {
  background: #f3f4f6;
  border-color: #e5e7eb;
  color: #111827;
}

/* Hoje */
.flatpickr-day.today {
  border-color: #9ca3af;
  color: #111827;
  font-weight: 700;
}
.flatpickr-day.today:hover {
  background: #374151;
  border-color: #374151;
  color: #fff;
}

/* Selecionado */
.flatpickr-day.selected,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange,
.flatpickr-day.endRange:hover {
  background: #374151;
  border-color: #374151;
  color: #fff;
  font-weight: 600;
}

/* Intervalo */
.flatpickr-day.inRange {
  background: #f3f4f6;
  border-color: #f3f4f6;
  box-shadow: -5px 0 0 #f3f4f6, 5px 0 0 #f3f4f6;
  color: #374151;
}

/* Outros meses */
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay { color: #d1d5db; }

/* Desabilitado */
.flatpickr-day.disabled,
.flatpickr-day.disabled:hover {
  color: #e5e7eb;
  background: transparent;
}

/* ── Input ─────────────────────────────────────────────── */
.flatpickr-input { cursor: pointer !important; }
.flatpickr-input.active {
  border-color: #9ca3af !important;
  box-shadow: 0 0 0 3px rgba(107,114,128,.12) !important;
  background: #fff !important;
}
