/**
 * ANEX II doughnut charts
 * Tokens from globals.css only.
 *
 * @package HelloElementorChild
 */

.hec-anex,
.hec-anex *,
.hec-anex *::before,
.hec-anex *::after {
	box-sizing: border-box;
}

.hec-anex {
	padding: var(--space-2xl) 0;
	font-family: var(--font-body);
	color: var(--color-ink);
	background-color: var(--color-frost);
}

.hec-anex__container {
	width: 100%;
	max-width: var(--container-max);
	margin: 0 auto;
	padding: 0 var(--space-md);
}

.hec-anex__card {
	position: relative;
	overflow: hidden;
	padding: var(--space-2xl);
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-medium);
}

.hec-anex__card::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 6px;
	background: linear-gradient(90deg, var(--color-sea), var(--color-gold));
}

.hec-anex__title {
	margin: 0 0 var(--space-2xl);
	font-family: var(--font-heading);
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	font-weight: var(--font-weight-extrabold);
	line-height: 1.2;
	text-align: center;
	color: var(--color-ink);
}

.hec-anex__section {
	margin-bottom: var(--space-2xl);
}

.hec-anex__section:last-of-type {
	margin-bottom: 0;
}

.hec-anex__caption {
	margin: 0 0 var(--space-lg);
	font-family: var(--font-heading);
	font-size: 0.98rem;
	font-weight: var(--font-weight-semibold);
	line-height: 1.5;
	color: var(--color-ink);
}

.hec-anex__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr));
	gap: var(--space-xl);
}

.hec-anex__grid--single {
	grid-template-columns: minmax(0, 640px);
	justify-content: center;
}

.hec-anex__box {
	display: flex;
	flex-direction: column;
	gap: var(--space-md);
	padding: var(--space-lg);
	background: var(--color-frost);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
}

.hec-anex__year {
	margin: 0;
	font-family: var(--font-heading);
	font-size: 1.25rem;
	font-weight: var(--font-weight-bold);
	text-align: center;
	color: var(--color-ink);
}

.hec-anex__canvas {
	position: relative;
	width: 100%;
	height: 300px;
	padding: var(--space-md);
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
}

.hec-anex__legend {
	display: flex;
	flex-direction: column;
	gap: var(--space-sm);
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.85rem;
	font-weight: var(--font-weight-semibold);
	line-height: 1.45;
	color: var(--color-ink);
}

.hec-anex__legend li {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
}

.hec-anex__legend i {
	flex: 0 0 14px;
	width: 14px;
	height: 14px;
	margin-top: 0.25rem;
	border: 1px solid var(--color-border);
	border-radius: 3px;
}

.hec-anex__footer {
	margin: var(--space-2xl) 0 0;
	padding-top: var(--space-md);
	border-top: 1px solid var(--color-border);
	font-size: 0.85rem;
	text-align: center;
	color: var(--color-muted-foreground);
}

@media (max-width: 768px) {
	.hec-anex__card {
		padding: var(--space-xl) var(--space-md);
	}

	.hec-anex__title {
		font-size: 1.75rem;
		margin-bottom: var(--space-xl);
	}

	.hec-anex__grid,
	.hec-anex__grid--single {
		grid-template-columns: 1fr;
	}
}
