/* Holiday Villam ortak takvim sınırları: tüm masaüstü ve mobil takvimlerde aynıdır. */
.booking-start,.booked-start,.option-start{background-image:linear-gradient(135deg,var(--hv-cal-free,#ecfdf5) 0 48%,rgba(255,255,255,.95) 48% 51%,var(--hv-cal-block,#ef4444) 51% 100%)!important}
.booking-end,.booked-end,.option-end{background-image:linear-gradient(135deg,var(--hv-cal-block,#ef4444) 0 48%,rgba(255,255,255,.95) 48% 51%,var(--hv-cal-free,#ecfdf5) 51% 100%)!important}
.option-start,.option-end{--hv-cal-block:#f6b93b}
.option.booking-start,.booking-start.option{--hv-cal-block:#f6b93b}.option.booking-end,.booking-end.option{--hv-cal-block:#f6b93b}
.booking-turnover{background-image:linear-gradient(135deg,var(--hv-cal-block,#ef4444) 0 47%,#fff 47% 50%,#073f52 50% 52%,#fff 52% 55%,var(--hv-cal-block,#ef4444) 55% 100%)!important}
.option.booking-turnover,.booking-turnover.option{--hv-cal-block:#f6b93b}
.calendar-pro-day.selected,.quick-calendar-day.selected,.v3-mini-calendar-day.selected,.calendar-day.selected{box-shadow:inset 0 0 0 2px #0f766e!important}
.calendar-pro-day.selected:not(.booked):not(.option):not(.maintenance),.quick-calendar-day.selected:not(.booked):not(.option):not(.maintenance),.v3-mini-calendar-day.selected-range:not(.booked):not(.option):not(.maintenance),.calendar-day.selected-range:not(.booked):not(.option):not(.maintenance),.sidebar-calendar-day.selected-range:not(.booked):not(.option):not(.maintenance){background:#dff6ec!important}
.calendar-pro-day.range-start,.calendar-pro-day.range-end,.v3-mini-calendar-day.selected,.calendar-day.selected{outline:2px solid #0f766e!important;outline-offset:-2px}
.calendar-day.checkin:not(.booked):not(.option):not(.maintenance),.v3-mini-calendar-day.selected-start:not(.booked):not(.option):not(.maintenance),.calendar-pro-day.range-start:not(.booked):not(.option):not(.maintenance){background-image:linear-gradient(135deg,#dff6ec 0 48%,#fff 48% 51%,#b8ead7 51% 100%)!important}
.calendar-day.checkout:not(.booked):not(.option):not(.maintenance),.v3-mini-calendar-day.selected-end:not(.booked):not(.option):not(.maintenance),.calendar-pro-day.range-end:not(.booked):not(.option):not(.maintenance){background-image:linear-gradient(135deg,#b8ead7 0 48%,#fff 48% 51%,#dff6ec 51% 100%)!important}
.calendar-day.checkin.checkout:not(.booked):not(.option):not(.maintenance),.v3-mini-calendar-day.selected-start.selected-end:not(.booked):not(.option):not(.maintenance){background:#dff6ec!important}
.calendar-month-grid .calendar-day.checkin::before,.calendar-month-grid .calendar-day.checkout::before,#calendar .calendar-day.checkin::before,#calendar .calendar-day.checkout::before{content:none!important;display:none!important}
.calendar-day.booked.selected-range,.calendar-day.option.selected-range,.sidebar-calendar-day.booked.selected-range,.sidebar-calendar-day.option.selected-range{border-color:rgba(15,118,110,.55)!important}
.calendar-day.invalid-range,.v3-mini-calendar-day.invalid-range,.calendar-pro-day.invalid-range{background:#fee2e2!important;border-color:#ef4444!important;color:#991b1b!important}
@media(max-width:900px){.booking-start,.booking-end,.booking-turnover,.booked-start,.booked-end,.option-start,.option-end,.calendar-day.checkin,.calendar-day.checkout,.v3-mini-calendar-day.selected-start,.v3-mini-calendar-day.selected-end{background-attachment:scroll!important}}

/* Villa detayındaki iki tarih seçicinin ortak seçim görünümü.
   Durum rengini değiştirmeden seçilen aralığı koyulaştırır. */
.calendar-day.selected-range,
.sidebar-calendar-day.selected-range{
  box-shadow:inset 0 0 0 999px rgba(3,47,46,.14)!important;
}

/* Seçimin başlangıç ve bitiş günleri her iki takvimde de çapraz görünür. */
.calendar-day.checkin,
.calendar-day.checkout,
.sidebar-calendar-day.checkin,
.sidebar-calendar-day.checkout{
  position:relative!important;
  isolation:isolate;
  overflow:hidden;
}
.calendar-day.checkin::after,
.calendar-day.checkout::after,
.sidebar-calendar-day.checkin::after,
.sidebar-calendar-day.checkout::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
}
.calendar-day.checkin > *,
.calendar-day.checkout > *,
.sidebar-calendar-day.checkin > *,
.sidebar-calendar-day.checkout > *{
  position:relative;
  z-index:1;
}
.calendar-day.checkin::after,
.sidebar-calendar-day.checkin::after{
  background:linear-gradient(135deg,transparent 0 48%,rgba(255,255,255,.9) 48% 51%,rgba(3,47,46,.16) 51% 100%);
}
.calendar-day.checkout::after,
.sidebar-calendar-day.checkout::after{
  background:linear-gradient(135deg,rgba(3,47,46,.16) 0 48%,rgba(255,255,255,.9) 48% 51%,transparent 51% 100%);
}
.calendar-day.checkin.checkout::after,
.sidebar-calendar-day.checkin.checkout::after{
  background:linear-gradient(135deg,rgba(3,47,46,.13) 0 48%,rgba(255,255,255,.9) 48% 52%,rgba(3,47,46,.13) 52% 100%);
}

@media(max-width:900px){
  .calendar-day.selected-range,
  .sidebar-calendar-day.selected-range{
    box-shadow:inset 0 0 0 999px rgba(3,47,46,.16)!important;
  }
}

/* Kayıtlı rezervasyon sınırları: ana ve form takviminde aynı yarım-gün görünümü. */
#calendar .calendar-day.booking-start,
#calendar .calendar-day.booked-start,
.sidebar-calendar .sidebar-calendar-day.booking-start,
.sidebar-calendar .sidebar-calendar-day.booked-start{
  background:linear-gradient(135deg,var(--hv-cal-free,#ecfdf5) 0 48%,#fff 48% 51%,var(--hv-cal-block,#ef4444) 51% 100%)!important;
}
#calendar .calendar-day.booking-end,
#calendar .calendar-day.booked-end,
.sidebar-calendar .sidebar-calendar-day.booking-end,
.sidebar-calendar .sidebar-calendar-day.booked-end{
  background:linear-gradient(135deg,var(--hv-cal-block,#ef4444) 0 48%,#fff 48% 51%,var(--hv-cal-free,#ecfdf5) 51% 100%)!important;
}
#calendar .calendar-day.booking-start::before,
#calendar .calendar-day.booking-end::before,
.sidebar-calendar .sidebar-calendar-day.booking-start::before,
.sidebar-calendar .sidebar-calendar-day.booking-end::before{
  content:none!important;
  display:none!important;
}

/* Mobil ana takvimde seçilen aralığı eski mobil kuralların üzerinde tut. */
@media(max-width:900px){
  #calendar .calendar-day.selected-range,
  .calendar-box #calendar .calendar-day.selected-range{
    box-shadow:inset 0 0 0 999px rgba(3,47,46,.22)!important;
    filter:saturate(.92) brightness(.91)!important;
  }
}
