.seaneb-core-values-wrapper {
	position: relative;
	width: 100%;
	--cv-primary: var(--seaneb-primary, #8b5cf6); /* Fallback to theme primary */
}

/* === DESKTOP SYSTEM === */
.seaneb-cv-desktop {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	max-width: 800px;
	margin: 0 auto;
}

.seaneb-cv-svg-wrap {
	position: absolute;
	inset: 0;
}

.seaneb-cv-svg {
	width: 100%;
	height: 100%;
	display: block;
}

.cv-segment {
	transition: opacity 0.3s ease, transform 0.3s ease;
	transform-origin: center;
}

.cv-segment:hover {
	opacity: 0.9;
	transform: scale(1.02);
}

.cv-center-circle {
	filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.05));
}

.cv-center-text-overlay {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	z-index: 2;
	pointer-events: none;
	width: 40%;
}

.cv-center-txt {
	font-size: 2rem;
	font-weight: 700;
	color: #0f172a;
}

/* HTML Labels */
.seaneb-cv-labels {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.cv-label-item {
	position: absolute;
	left: var(--label-x, 50%);
	top: var(--label-y, 50%);
	width: 250px;
	pointer-events: auto;
	transition: margin-top 0.3s ease; /* Smooth collision shifting */
}

/* Anchor translations based on sector math */
.cv-label-item[data-side="right"] {
	transform: translate(0, -50%);
	text-align: left;
}

.cv-label-item[data-side="left"] {
	transform: translate(-100%, -50%);
	text-align: right;
}



/* Decorative Accent lines */
.cv-label-inner {
	position: relative;
	padding: 10px;
}

.cv-label-item[data-side="right"] .cv-label-inner {
	border-left: 3px solid var(--accent);
	padding-left: 18px;
}

.cv-label-item[data-side="left"] .cv-label-inner {
	border-right: 3px solid var(--accent);
	padding-right: 18px;
}



.cv-label-title {
	margin: 0 0 6px;
	font-size: 1.15rem;
	font-weight: 700;
	color: #0f172a;
}

.cv-label-desc {
	margin: 0;
	font-size: 0.95rem;
	color: #475569;
	line-height: 1.5;
}

/* Hide mobile on desktop */
.seaneb-cv-mobile {
	display: none;
}

/* === MOBILE SYSTEM === */
@media (max-width: 768px) {
	.seaneb-cv-desktop {
		display: none;
	}

	.seaneb-cv-mobile {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	.seaneb-cv-mobile-card {
		display: flex;
		align-items: flex-start;
		gap: 20px;
		background: #ffffff;
		padding: 24px;
		border-radius: 12px;
		box-shadow: 0 4px 25px rgba(0, 0, 0, 0.05);
	}

	.cv-mob-badge {
		width: 48px;
		height: 48px;
		border-radius: 12px;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.cv-mob-num {
		color: #ffffff;
		font-weight: 700;
		font-size: 1.2rem;
	}

	.cv-mob-content {
		flex-grow: 1;
	}

	.cv-mob-title {
		margin: 0 0 8px;
		font-size: 1.25rem;
		font-weight: 700;
		color: #0f172a;
	}

	.cv-mob-desc {
		margin: 0;
		color: #475569;
		line-height: 1.5;
	}
}
