/**
 * SP Category Slider - front-end styles
 * Inherits theme font automatically (no font-family declared on text).
 * Colours come from CSS variables injected by the plugin (Astra customizer values).
 */

.spcs-wrapper {
	width: 100%;
	margin: 0 auto;
	padding: 10px 0;
}

/* Slider track */
.spcs-slider .splide__track {
	overflow: hidden;
}

.spcs-slider .splide__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.spcs-slide {
	list-style: none;
	margin: 0;
}

/* Each item = circle + label, vertically stacked and centered */
.spcs-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	text-align: center;
	text-decoration: none;
	gap: 10px;
	padding: 4px;
	/* inherit theme font + colour */
	font-family: inherit;
	color: var(--spcs-primary, #3C0008);
}

.spcs-item:hover,
.spcs-item:focus {
	text-decoration: none;
}

/* The circular thumbnail */
.spcs-circle {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 110px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	overflow: hidden;
	background: #f3f3f3;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.spcs-item:hover .spcs-circle {
	transform: translateY(-3px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}

.spcs-circle img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Label under the circle */
.spcs-label {
	font-family: inherit;
	color: var(--spcs-primary, #3C0008);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.3px;
	text-transform: uppercase;
	text-decoration: none;
}

.spcs-item,
.spcs-item:hover,
.spcs-item:focus,
.spcs-item .spcs-label {
	text-decoration: none !important;
}

/* ---- The built-in NEW badge ---- */
.spcs-circle--new {
	background: transparent;
	box-shadow: none;
}

.spcs-badge {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: var(--spcs-primary, #3C0008);
	border: 3px dashed var(--spcs-accent, #F5F5DC);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.spcs-badge__text {
	font-family: inherit;
	color: var(--spcs-accent, #F5F5DC);
	font-weight: 800;
	font-size: 20px;
	letter-spacing: 1px;
}

/* Responsive label sizing */
@media (max-width: 1024px) {
	.spcs-label { font-size: 13px; }
	.spcs-badge__text { font-size: 18px; }
}

@media (max-width: 600px) {
	.spcs-circle { max-width: 130px; }
	.spcs-label { font-size: 13px; }
	.spcs-badge__text { font-size: 22px; }
}
