/*
 * Availability calendar on the villa page (flatpickr, data from villajanthiel).
 * Layout based on villajanthiel's villa_detail.css. Available nights are green whatever the season, occupied nights grey.
 */
#availability-calendar-container {
	--available: #7ece44;
	--occupied: #e6e6e6;
	margin-bottom: 10px;
}

#availability-calendar-container .flatpickr-calendar {
	width: 100% !important;
	box-shadow: none;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #f3f3f3;
	padding: 6px;
}

#availability-calendar-container .flatpickr-months {
	display: flex;
	flex-direction: row;
}

#availability-calendar-container .flatpickr-current-month {
	font-size: 14px;
	font-weight: bold;
}

#availability-calendar-container .flatpickr-weekday {
	font-weight: bold;
	color: #333;
}

#availability-calendar-container .flatpickr-days,
#availability-calendar-container .dayContainer {
	width: 100%;
	min-width: 0;
	max-width: none;
}

#availability-calendar-container .flatpickr-day {
	flex-basis: 14.28%;
	max-width: none;
	height: 40px;
	line-height: 1.1;
	margin: 1px 0;
	border-radius: 3px;
	border: 1px solid #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	color: #222;
	box-sizing: border-box;
}

#availability-calendar-container .day-price {
	font-size: 10px;
	font-weight: normal;
	margin-top: 1px;
}

/* Available nights (every season class the script sets) */
#availability-calendar-container .flatpickr-day[class*="season-"] { background: var(--available); }

/* Occupied nights and days that cannot be selected */
#availability-calendar-container .flatpickr-day.occupied,
#availability-calendar-container .flatpickr-day.flatpickr-disabled,
#availability-calendar-container .flatpickr-day.flatpickr-disabled:hover {
	background: var(--occupied);
	color: #aaa;
	cursor: not-allowed;
}
#availability-calendar-container .flatpickr-day.occupied .day-price,
#availability-calendar-container .flatpickr-day.flatpickr-disabled .day-price {
	visibility: hidden;
}

/* Changeover days: arrival (morning free, night occupied) and departure (morning occupied, night free) */
#availability-calendar-container .flatpickr-day.turnover-checkin { background: linear-gradient(135deg, var(--available) 50%, var(--occupied) 50%); }
#availability-calendar-container .flatpickr-day.turnover-checkout { background: linear-gradient(135deg, var(--occupied) 50%, var(--available) 50%); }
#availability-calendar-container .flatpickr-day.turnover-checkin,
#availability-calendar-container .flatpickr-day.turnover-checkout {
	color: #222;
	cursor: pointer;
}

/* Days of the neighbouring months get the class "hidden", which Bootstrap 3 turns into display:none.
   They must keep their place in the grid, otherwise every day ends up under the wrong weekday. */
#availability-calendar-container .flatpickr-day.hidden {
	display: flex !important;
	visibility: hidden;
}

/* flatpickr adds an altInput next to the inline calendar (a div with Bootstrap's .form-control);
   the calendar itself is the input here */
#availability-calendar-container + .form-control {
	display: none !important;
}

/* Past days */
#availability-calendar-container .flatpickr-day.flatpickr-disabled.prevMonthDay,
#availability-calendar-container .flatpickr-day.flatpickr-disabled.nextMonthDay,
#availability-calendar-container .flatpickr-day.prevMonthDay,
#availability-calendar-container .flatpickr-day.nextMonthDay {
	visibility: hidden;
}

/* Selected period */
#availability-calendar-container .flatpickr-day:hover {
	border-color: #337ab7;
}
#availability-calendar-container .flatpickr-day.selected,
#availability-calendar-container .flatpickr-day.startRange,
#availability-calendar-container .flatpickr-day.endRange,
#availability-calendar-container .flatpickr-day.inRange {
	background: #337ab7 !important;
	border-color: #337ab7;
	color: #fff;
	box-shadow: none;
}
#availability-calendar-container .flatpickr-day.today {
	border-color: #333;
}

.calendar-hint {
	font-size: 13px;
	margin-bottom: 10px;
}

@media (max-width: 767px) {
	#availability-calendar-container .flatpickr-day {
		height: 38px;
	}
}

.prijs-additional h3 {
	font-size: 16px;
	margin-top: 0;
}

.prijs-additional p {
	font-size: 13px;
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.prijs-additional {
		margin-top: 15px;
	}
}
