.bk-dates__guests-btn {
	transition: all 0.3s;
}

.bk-dates__guests-btn:hover {
	color: #FFF !important;
	background: #000;
}

.bk-dates__guests {
	border-radius: 0px !important;
}

.flatpickr-calendar {
	border-radius: 16px !important;
	width: auto !important;
}

.booking__card .booking__date-picker:focus,
.booking__card .booking__input--range:focus {
	outline: none !important;
}

.flatpickr-day {
	width: 40px;
	height: 40px !important;
	border: none !important;
	border-radius: 0 !important;
}

.flatpickr-day:hover,
.flatpickr-day.selected:hover {
	background: #f5f5f4 !important;
	border-radius: 10px !important;
}

.flatpickr-day:hover {
	color: #FFFFFF !important;
}

.flatpickr-day.selected:hover {
	color: #1C1917 !important;
}

.flatpickr-month {
	margin-bottom: 15px !important;
}

.dayContainer {
	gap: 0 !important;
	justify-content: center !important;
}

.flatpickr-day.startRange {
	border-radius: 30px 0 0 30px !important;
	background: #1C1917 !important;
	color: #FFFFFF !important;
}

.flatpickr-day.endRange {
	background: #1C1917 !important;
	border-radius: 0 30px 30px 0px !important;
}

.flatpickr-day.inRange {
	border-radius: 0 !important;
	-webkit-box-shadow: -5px 0 0 #1c1917, 5px 0 0 #1c1917 !important;
	box-shadow: -5px 0 0 #1c1917, 5px 0 0 #1c1917 !important;
	background: #1c1917 !important;
	color: #fff !important;
}

.flatpickr-next-month,
.flatpickr-prev-month {
	padding: 0px !important;
	margin: 15px 0 0 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.flatpickr-current-month span.cur-month:hover {
	background: transparent !important;
}

.flatpickr-day.selected,
.flatpickr-day.startRange {
	background: #1c1917 !important;
	color: #FFFFFF !important;
}

.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)) {
	background: #1c1917 !important;
	color: #FFFFFF !important;
	box-shadow: none !important;
}

@media (max-width: 768px) {
	.bk-dates__calendars {
		padding: 15px 0px !important;
	}
}
.booking__input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
    border: 0;
  }
  
  .booking-card {
    position: sticky;
    top: 24px;
    border: 1px solid #E7E5E4;
    border-radius: 16px;
    padding: 24px;
    background: #fff;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
  }
  
  .booking-card {
    position: sticky;
    top: 24px;
    background: #fff;
    border: 1px solid #E7E5E4;
    border-radius: 16px;
    padding: 28px 24px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
  }
  
  /* ====== Даты ====== */
  .booking-card__dates {
    display: flex;
    border: 1px solid #D6D3D1;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 20px;
  }
  
  .booking-card__date-field {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 10px 14px;
    cursor: pointer;
    transition: background 0.15s;
  }
  
  .booking-card__date-field.is-active {
    background: #FAFAF9;
  }
  
  .booking-card__date-divider {
    width: 1px;
    background: #D6D3D1;
    flex-shrink: 0;
  }
  
  .booking-card__date-label {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #A8A29E;
    margin-bottom: 4px;
    transition: color 0.15s;
  }
  
  .booking-card__date-field.is-active .booking-card__date-label {
    color: #A6A09B;
  }
  
  .booking-card__date-value {
    font-size: 14px;
    color: #78716C;
    user-select: none;
  }
  
  .booking-card__date-value.has-value {
    color: #1C1917;
    font-weight: 500;
  }
  
  /* ====== Календарь ====== */
  .booking-calendar {
    margin-bottom: 24px;
  }
  
  .booking-calendar__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
  }
  
  .booking-calendar__month {
    font-size: 15px;
    font-weight: 600;
    color: #1C1917;
  }
  
  .booking-calendar__nav {
    display: flex;
    gap: 4px;
  }
  
  .booking-calendar__nav-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid #E7E5E4;
    border-radius: 8px;
    background: #fff;
    color: #57534E;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
  }
  
  .booking-calendar__nav-btn:hover {
    background: #F5F5F4;
    border-color: #D6D3D1;
  }
  
  .booking-calendar__weekdays {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    text-align: center;
    margin-bottom: 4px;
  }
  
  .booking-calendar__weekdays span {
    font-size: 11px;
    font-weight: 600;
    color: #A8A29E;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 4px 0;
  }
  
  .booking-calendar__grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0;
  }
  
  /* ====== Дни календаря ====== */
  .cal-day {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    border: none;
    background: transparent;
    font-size: 14px;
    color: #44403C;
    cursor: pointer;
    padding: 0;
    transition: color 0.12s;
    z-index: 1;
  }
  
  .cal-day::before {
    content: '';
    position: absolute;
    inset: 2px;
    border-radius: 50%;
    z-index: -1;
    transition: background 0.12s;
  }
  
  .cal-day:hover::before {
    background: #f4efe6;
  }
  
  /* Сегодня */
  .cal-day--today {
    font-weight: 700;
    color:#BA9F68;
  }
  
  /* Прошедшие */
  .cal-day--disabled {
    color: #D6D3D1;
    cursor: default;
    pointer-events: none;
  }
  
  .cal-day--disabled:hover::before {
    background: transparent;
  }
  
  /* Пустые */
  .cal-day--empty {
    visibility: hidden;
    pointer-events: none;
  }
  
  /* ====== Выбор диапазона ====== */
  
  /* Начало */
  .cal-day--start::before {
    background: #BA9F68;
  }
  
  .cal-day--start {
    color: #fff;
  }
  
  .cal-day--start:hover::before {
    background: #BA9F68;
  }
  
  /* Конец */
  .cal-day--end::before {
    background: #BA9F68;
  }
  
  .cal-day--end {
    color: #fff;
  }
  
  .cal-day--end:hover::before {
    background: #BA9F68;
  }
  
  /* Между датами */
  .cal-day--in-range {
    color: #fff;
  }
  
  .cal-day--in-range::before {
    background: #BA9F68;
    border-radius: 0;
    inset: 2px 0;
  }
  
  /* Скругления диапазона */
  .cal-day--start.cal-day--has-range::before {
    border-radius: 50% 0 0 50%;
    inset: 2px 0 2px 2px;
  }
  
  .cal-day--end.cal-day--has-range::before {
    border-radius: 0 50% 50% 0;
    inset: 2px 2px 2px 0;
  }
  
  /* Одна дата без диапазона */
  .cal-day--start:not(.cal-day--has-range)::before {
    border-radius: 50%;
  }
  
  @media (max-width: 991px) {
    .booking-card {
      position: static;
    }
  }
  
  @media (max-width: 767px) {
    .booking-card {
      padding: 24px 20px;
    }
  }
  
  @media (max-width: 991px) {
    .booking-card {
      position: static;
    }
  }
  
  @media (max-width: 767px) {
    .booking-card {
      border-radius: 0;
      margin: 0 -16px;
      padding: 20px 16px;
      border-left: none;
      border-right: none;
    }
  }