/*
 * VKM Chefetage events archive.
 * Owns .vkm-event-* archive/listing shells, filter bar, event cards, and
 * pagination for archives or shortcode-driven event lists.
 */
.vkm-event-shell {
	--vkm-event-bg: rgb(var(--bg, 11 11 11));
	--vkm-event-surface: rgb(var(--surface, 20 20 20));
	--vkm-event-card: rgb(var(--card, 30 30 30));
	--vkm-event-text: rgb(var(--text, 232 228 221));
	--vkm-event-muted: rgb(var(--text-muted, 138 133 128));
	--vkm-event-border: rgb(var(--border, 42 42 42));
	--vkm-event-brand: rgb(var(--brand, 195 167 128));
	--vkm-event-brand-soft: rgb(var(--brand-muted, 235 218 196));
	--vkm-event-brand-strong: rgb(var(--brand-strong, 160 132 93));
	max-width: 82.5rem;
	margin: 0 auto;
	padding: var(--space-3xl) 1.25rem 6rem;
	color: var(--vkm-event-text);
}

.vkm-event-archive-hero {
	border: 1px solid color-mix(in srgb, var(--vkm-event-brand) 25%, var(--vkm-event-border));
	border-radius: var(--radius);
	background:
		radial-gradient(circle at top left, color-mix(in srgb, var(--vkm-event-brand) 22%, transparent) 0%, transparent 42%),
		linear-gradient(180deg, color-mix(in srgb, var(--vkm-event-card) 92%, black), var(--vkm-event-surface));
	box-shadow: 0 1.75rem 5rem rgba(0, 0, 0, 0.24);
}


.vkm-event-archive-copy h1 {
	font-size: var(--fs-hero);
	line-height: var(--lh-h1);
	letter-spacing: -0.04em;
}

.vkm-event-archive-copy p {
	max-width: 48.75rem;
	color: var(--vkm-event-muted);
}

.vkm-event-filter-bar {
	grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
	border: 1px solid var(--vkm-event-border);
	border-radius: var(--radius);
	background: color-mix(in srgb, var(--vkm-event-card) 88%, transparent);
	backdrop-filter: blur(1.25rem);
}

.vkm-event-filter-field label {
	color: var(--vkm-event-muted);
	font-size: var(--fs-xs);
}

.vkm-event-filter-field select {
	border: 1px solid var(--vkm-event-border);
	border-radius: var(--radius);
	background: color-mix(in srgb, var(--vkm-event-surface) 92%, transparent);
	color: var(--vkm-event-text);
}

.vkm-event-link {
	transition: transform 0.22s ease, border-color 0.22s ease, background-color 0.22s ease;
}

.vkm-event-link:hover {
	transform: translateY(-1px);
}

.vkm-event-grid>* {
	flex: 1 1 calc(33.333% - 1rem);
	max-width: 27.5rem;
	width: 100%;
}

.vkm-event-card {
	border: 1px solid color-mix(in srgb, var(--vkm-event-brand) 16%, var(--vkm-event-border));
	border-radius: var(--radius);
	background: linear-gradient(180deg, color-mix(in srgb, var(--vkm-event-card) 96%, transparent), color-mix(in srgb, var(--vkm-event-surface) 92%, transparent));
	box-shadow: 0 1.125rem 3rem rgba(0, 0, 0, 0.22);
}

.vkm-event-card-media {
	background: linear-gradient(140deg, color-mix(in srgb, var(--vkm-event-brand) 26%, var(--vkm-event-card)), var(--vkm-event-surface));
}



.vkm-event-tag,
.vkm-event-badge,
.vkm-event-status {
	border: 1px solid var(--vkm-event-border);
	background: color-mix(in srgb, var(--vkm-event-surface) 90%, transparent);
	color: var(--vkm-event-text);
}

.vkm-event-tag.is-soft {
	color: var(--vkm-event-brand-soft);
}

.vkm-event-badge-highlight {
	border: 1px solid color-mix(in srgb, var(--vkm-event-brand) 55%, transparent);
	background: color-mix(in srgb, var(--vkm-event-brand) 15%, var(--vkm-event-surface));
}

.vkm-event-card-title,
.vkm-event-card-title a {
	color: var(--vkm-event-text);
}

.vkm-event-card-meta span {
	padding: var(--space-sm) var(--space-md);
	border: 1px solid color-mix(in srgb, var(--vkm-event-brand) 12%, var(--vkm-event-border));
	border-radius: var(--radius);
	background: color-mix(in srgb, var(--vkm-event-surface) 88%, transparent);
}

.vkm-event-empty-state {
	border: 1px solid color-mix(in srgb, var(--vkm-event-brand) 14%, var(--vkm-event-border));
	border-radius: var(--radius);
	background: linear-gradient(180deg, color-mix(in srgb, var(--vkm-event-card) 96%, transparent), color-mix(in srgb, var(--vkm-event-surface) 92%, transparent));
	box-shadow: 0 1.125rem 3rem rgba(0, 0, 0, 0.18);
}



.vkm-event-pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-sm);
	padding: 0;
	margin: 1.75rem 0 0;
	list-style: none;
}

.vkm-event-pagination a,
.vkm-event-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.75rem;
	min-height: 2.75rem;
	padding: 0 var(--space-md);
	border: 1px solid var(--vkm-event-border);
	border-radius: var(--radius);
	color: var(--vkm-event-text);
	text-decoration: none;
}

@media (max-width: 68.75rem) {
	.vkm-event-filter-bar {
		grid-template-columns: 1fr;
	}

	.vkm-event-grid>* {
		flex: 1 1 100%;
		max-width: 100%;
	}
}

@media (max-width: 48.875rem) {
	.vkm-event-shell {
		padding: var(--space-2xl) var(--space-md) 4.5rem;
	}

	.vkm-event-archive-hero,
	.vkm-event-empty-state {
		padding: var(--space-xl);
		border-radius: var(--radius);
	}

	.vkm-event-card-body {
		padding: 1.25rem;
	}

	.vkm-event-card-title,
	.vkm-event-card-title a,
	.vkm-event-empty-state h3 {
		font-size: var(--fs-h3);
	}
}
