/* Generic horizontal carousel: scroll-snap track, optional prev/next controls (shown by carousel.js). */
.ea-carousel__track {
	display: flex;
	gap: var(--wp--preset--spacing--40, 1.5rem);
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.ea-carousel__track:focus-visible {
	outline: 2px solid var(--wp--preset--color--purple, #443286);
	outline-offset: 3px;
}

.ea-carousel__slide {
	/* Contexts (e.g. a photo carousel) set --ea-carousel-slide-size. */
	flex: 0 0 var(--ea-carousel-slide-size, 100%);
	scroll-snap-align: start;
}

.ea-carousel__controls {
	display: flex;
	justify-content: center;
	gap: 0.5rem;
	margin-top: var(--wp--preset--spacing--30, 1rem);
}

.ea-carousel__controls[hidden] {
	display: none;
}

.ea-carousel__controls button {
	width: 2.75rem;
	height: 2.75rem;
	border: 1px solid var(--wp--preset--color--purple, #443286);
	border-radius: 999px;
	background: transparent;
	color: var(--wp--preset--color--purple, #443286);
	font-size: 1.25rem;
	cursor: pointer;
}

.ea-carousel__controls button:hover {
	background: var(--wp--preset--color--purple-100, #ece8f7);
}
