/**
 * INCA Events sidebar styling.
 *
 * @package INCA_Events
 */

.inca-upcoming-events {
	margin: 0 0 1.5em;
}

.inca-upcoming-events ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* CSS grid: mobile = 1 column; tablet ≤3 cols; desktop = attribute */
.inca-upcoming-events .inca-event-list {
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 768px) {
	.inca-upcoming-events.inca-events-grid .inca-event-list {
		grid-template-columns: repeat(var(--inca-cols-tablet, 1), minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.inca-upcoming-events.inca-events-grid .inca-event-list {
		grid-template-columns: repeat(var(--inca-cols-desktop, 1), minmax(0, 1fr));
	}
}

.inca-upcoming-events .event-item {
	display: flex;
	align-items: flex-start;
	gap: 0.75em;
	margin-bottom: 0;
}

.inca-upcoming-events .event-icon {
	width: 70px;
	height: 70px;
	flex-shrink: 0;
	object-fit: cover;
}

.inca-upcoming-events .event-details {
	flex: 1;
	min-width: 0;
}

.inca-upcoming-events .event-title {
	display: block;
	font-weight: 600;
	margin-bottom: 0.25em;
}

.inca-upcoming-events .event-date {
	display: block;
	font-size: 0.9em;
}

.inca-upcoming-events .view-all-events {
	margin-top: 0.75em;
	font-size: 0.95em;
}
