/* === Ваши стили календаря (без изменений) === */
.flatpickr-calendar {
  font-family: 'Times New Roman', serif;
  border-radius: 16px;
  padding: 16px 20px;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.15);
  font-size: 15px;
  color: #006B81;
  width: auto !important;
}
.flatpickr-calendar.open { width: auto !important; }
.flatpickr-days .dayContainer {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  max-width: 100% !important;
  box-sizing: border-box;
}
.flatpickr-months { margin-bottom: 10px; }
.flatpickr-month { font-size: 18px; font-weight: bold; color: #006B81; }
.flatpickr-current-month input.cur-year { color: #006B81; font-family: 'Times New Roman', serif; }
.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month .flatpickr-monthDropdown-months option {
  color: #006B81; font-family: 'Times New Roman', serif; font-weight: bold;
}
.flatpickr-weekdays { font-family: 'Times New Roman', serif; color: #006B81; }
.flatpickr-weekday  { font-family: 'Times New Roman', serif; font-size: 13px; color: #006B81; }
.flatpickr-day {
  font-size: 15px; width: 32px; height: 32px; margin: 2px; line-height: 32px;
  border-radius: 6px; color: #006B81; transition: background .2s ease;
}
.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange {
  background: #006B81 !important; color: #fff !important; border: none;
}
.flatpickr-day.inRange { background-color: rgba(0,107,129,.15) !important; color: #006B81; }
.flatpickr-day.today { border: 1px solid #006B81; }
.flatpickr-day:not(.flatpickr-disabled):hover { background: rgba(0,107,129,.2); }
.flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay {
  visibility: hidden !important; pointer-events: none;
}
.flatpickr-day.flatpickr-disabled {
  color: #777 !important; background: none !important; cursor: not-allowed; opacity: .6;
}
.flatpickr-current-month { color: #006B81; }
.flatpickr-current-month input.cur-year { color: #006B81 !important; font-weight: bold; }
.flatpickr-prev-month, .flatpickr-next-month { fill: #006B81 !important; color: #006B81 !important; opacity: 1 !important; }
.flatpickr-monthDropdown-months, .flatpickr-monthDropdown-months option { color: #006B81 !important; }
/* Убираем круглый фон у стрелок при наведении */
.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
/* Заодно уберём возможную подсветку по фокусу */
.flatpickr-prev-month:focus,
.flatpickr-next-month:focus {
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

@media (max-width: 768px) {
  .flatpickr-calendar {
    position: absolute !important; right: 0 !important; left: unset !important; margin-right: 16px !important;
    width: auto !important; max-width: calc(100vw - 32px) !important; box-sizing: border-box; padding: 12px 14px; transform: none !important;
  }
  .flatpickr-month { font-size: 15px; color: #006B81; }
  .flatpickr-current-month input.cur-year { font-size: 20px; }
  .flatpickr-weekday { font-size: 12px !important; padding: 2px 0; }
  .flatpickr-day { width: 30px; height: 30px; font-size: 12px !important; line-height: 30px; margin: 1.5px; border-radius: 5px; color: #006B81; }
}
/* Кнопка “Обратный билет не нужен” */
.no-return-btn {
  margin-top: 8px; background: none; color: #006B81; text-align: center; cursor: pointer;
  font-size: 14px; font-family: 'Times New Roman', serif;
}

/* Кнопки очистки для дат */
  .date-clear-btn {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #999;
    cursor: pointer;
    user-select: none;
    display: none;          /* показываем только когда есть значение */
    z-index: 1001;
    line-height: 1;
  }
  .date-clear-btn:hover { color: #666; }
