/* Alericos · Flatpickr overrides */
:root{
  --dp-bg:#001219;
  --dp-surface:#002029;
  --dp-text:#e8f6fb;
  --dp-text-weak:#b9dbe7;
  --dp-accent:#219EBC;
  --dp-accent-dark:#023047;
  --dp-disabled-bg:#fcf8e3;   /* amarelo claro */
  --dp-disabled-text:#6b5b00; /* texto amarelado escuro p/ contraste */
  --dp-disabled-brd:rgba(0,0,0,.06);
}

/* Container e sombras */
.flatpickr-calendar{
  background:var(--dp-surface);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 30px rgba(0,0,0,.45);
}

/* Cabeçalho (mês/ano) e barra de dias da semana */
.flatpickr-months,
.flatpickr-weekdays{
  background:var(--dp-bg);
  color:var(--dp-text);
  border-bottom:1px solid rgba(255,255,255,.06);
}

/* Texto do mês (select) e do ano (input) */
.flatpickr-current-month,
.flatpickr-current-month .cur-month,
.flatpickr-current-month input.cur-year{
  color:var(--dp-text);
  font-weight:700;
  background:transparent;
  caret-color:var(--dp-text);
}

/* Dropdown de meses */
.flatpickr-current-month .flatpickr-monthDropdown-months{
  background:var(--dp-bg) !important;
  color:var(--dp-text) !important;
  border:1px solid rgba(255,255,255,.12);
  border-radius:6px;
  appearance:none; -webkit-appearance:none; -moz-appearance:none;
}
.flatpickr-monthDropdown-months option{
  background:var(--dp-surface);
  color:var(--dp-text);
}
.flatpickr-monthDropdown-months option:hover,
.flatpickr-monthDropdown-months option:checked{
  background:var(--dp-accent);
  color:#001219;
}

/* Setas anterior/próximo */
.flatpickr-prev-month, .flatpickr-next-month, .arrowUp, .arrowDown{ color:var(--dp-accent); }
.flatpickr-prev-month svg, .flatpickr-next-month svg{ fill:var(--dp-accent); }
.flatpickr-prev-month:hover svg, .flatpickr-next-month:hover svg{ fill:var(--dp-text); }

/* Cabeçalho dos dias (Dom, Seg, ...) */
.flatpickr-weekdays,
.flatpickr-weekdays .flatpickr-weekday{
  color:var(--dp-text) !important;
}

.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay{
  color:#ffffff !important;
  opacity:.5;
}

/* Dias */
.flatpickr-day{ color:var(--dp-text); }
.flatpickr-day:hover{ background:rgba(33,158,188,.15); }
.flatpickr-day.today{ border-color:var(--dp-accent); }
.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange{
  background:var(--dp-accent);
  border-color:var(--dp-accent);
  color:#001219;
}

/* Estado desabilitado */
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.flatpickr-disabled:focus{
  background:var(--dp-disabled-bg) !important;
  color:var(--dp-disabled-text) !important;
  border-color:var(--dp-disabled-brd) !important;
  box-shadow:inset 0 0 0 1px var(--dp-disabled-brd) !important;
  cursor:not-allowed !important;
  opacity:1 !important;
  pointer-events:none !important;
  transform:none !important;
}

/* Desabilitados de meses adjacentes */
.flatpickr-day.prevMonthDay.flatpickr-disabled,
.flatpickr-day.nextMonthDay.flatpickr-disabled{
  background:#fff7d6 !important;
  color:#7a6a00 !important;
  opacity:1 !important;
}

/* Proteção contra states quando desabilitado */
.flatpickr-day.flatpickr-disabled.flatpickr-today,
.flatpickr-day.flatpickr-disabled.selected{
  background:var(--dp-disabled-bg) !important;
  color:var(--dp-disabled-text) !important;
  border-color:var(--dp-disabled-brd) !important;
}

/* Timepicker (se usar) */
.flatpickr-time{ border-top:1px solid rgba(255,255,255,.08); }
.flatpickr-time .numInputWrapper input{ color:var(--dp-text); }
