.flatpickr-calendar {
	border: 1px solid var(--line);
	border-radius: 20px;
	background: var(--bg-elev);
	box-shadow: var(--shadow-soft);
	font-family: 'Manrope', sans-serif;
	color: var(--text);
}

.flatpickr-months .flatpickr-month,
.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
	color: var(--text);
	fill: var(--text);
	font-weight: 700;
}

.flatpickr-weekdays {
	background: transparent;
}

span.flatpickr-weekday {
	color: var(--ink-soft);
	font-weight: 700;
}

.flatpickr-day {
	border-radius: 12px;
	color: var(--text);
	font-weight: 600;
}

.flatpickr-day:hover,
.flatpickr-day:focus,
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover {
	background: var(--theme);
	border-color: var(--theme);
	color: #102100;
}

.flatpickr-day.today {
	border-color: var(--theme-deep);
}

.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
	background: color-mix(in srgb, var(--theme) 16%, var(--bg-elev));
	color: var(--text);
}

.flatpickr-time input,
.flatpickr-time .flatpickr-am-pm {
	color: var(--text);
	font-weight: 700;
}

.flatpickr-time input:hover,
.flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time .flatpickr-am-pm:focus {
	background: color-mix(in srgb, var(--theme) 14%, transparent);
}

.flatpickr-prev-month:hover svg,
.flatpickr-next-month:hover svg {
	fill: var(--theme-deep);
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
	border-bottom-color: var(--theme-deep);
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
	border-top-color: var(--theme-deep);
}

.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
	display: none;
}
