.stodola-booked-dates {
	--stodola-booked-dates-accent: #8a643f;
	--stodola-booked-dates-accent-soft: #f3eadf;
	--stodola-booked-dates-border: #e7ded3;
	--stodola-booked-dates-text: #2c2520;
	--stodola-booked-dates-muted: #77695e;
	--stodola-booked-dates-bg: #fffaf4;
	--stodola-booked-dates-card: #ffffff;
	color: var(--stodola-booked-dates-text);
	margin: 2rem 0;
	max-width: 100%;
}

.stodola-booked-dates__title {
	color: var(--stodola-booked-dates-text);
	font-size: clamp(1.6rem, 2.5vw, 2.2rem);
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.2;
	margin: 0 0 1.25rem;
}

.stodola-booked-dates__grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	max-width: 100%;
}

.stodola-booked-dates__month {
	background: var(--stodola-booked-dates-card);
	border: 1px solid var(--stodola-booked-dates-border);
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(82, 61, 42, 0.08);
	min-width: 0;
	overflow-wrap: anywhere;
	padding: 1.1rem;
	position: relative;
}

.stodola-booked-dates__month::before {
	background: var(--stodola-booked-dates-accent);
	border-radius: 999px;
	content: "";
	height: 3px;
	left: 1.1rem;
	position: absolute;
	right: 1.1rem;
	top: 0.75rem;
}

.stodola-booked-dates__month--empty {
	background: var(--stodola-booked-dates-bg);
	box-shadow: none;
}

.stodola-booked-dates__month--empty::before {
	background: var(--stodola-booked-dates-accent-soft);
}

.stodola-booked-dates__month-title {
	color: var(--stodola-booked-dates-accent);
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.3;
	margin: 0.5rem 0 0.75rem;
}

.stodola-booked-dates__list {
	display: grid;
	gap: 0.55rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.stodola-booked-dates__item {
	border-top: 1px solid rgba(138, 100, 63, 0.14);
	color: var(--stodola-booked-dates-text);
	font-size: 0.96rem;
	line-height: 1.45;
	margin: 0;
	padding-top: 0.55rem;
}

.stodola-booked-dates__item:first-child {
	border-top: 0;
	padding-top: 0;
}

.stodola-booked-dates__date {
	font-weight: 700;
	white-space: nowrap;
}

.stodola-booked-dates__separator {
	color: var(--stodola-booked-dates-muted);
	margin: 0 0.2rem;
}

.stodola-booked-dates__reservation {
	color: var(--stodola-booked-dates-text);
}

.stodola-booked-dates__free {
	color: var(--stodola-booked-dates-muted);
	font-size: 0.96rem;
	font-style: italic;
	line-height: 1.45;
	margin: 0;
}

@media (max-width: 1100px) {
	.stodola-booked-dates__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 780px) {
	.stodola-booked-dates__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.stodola-booked-dates {
		margin: 1.5rem 0;
	}

	.stodola-booked-dates__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.stodola-booked-dates__month {
		padding: 1rem;
	}
}
