/**
 * Système d'icônes EEC — trait linéaire, couleur via currentColor.
 *
 * Préfixes : .eec-ui-icon (alias .eec-icon), .eec-icon--*, .eec-ui-* utilitaires.
 *
 * @since 2.0.0
 */

:root {
	--eec-icon-xs: 14px;
	--eec-icon-sm: 16px;
	--eec-icon-md: 20px;
	--eec-icon-lg: 24px;
	--eec-icon-xl: 32px;
	--eec-icon-2xl: 48px;
	--eec-icon-3xl: 64px;
}

.eec-ui-icon,
.eec-icon {
	display: inline-block;
	vertical-align: middle;
	flex-shrink: 0;
	transition: color 0.2s ease, transform 0.2s ease;
}

.eec-icon--xs,
.eec-ui-icon--xs {
	width: var(--eec-icon-xs);
	height: var(--eec-icon-xs);
}

.eec-icon--sm,
.eec-ui-icon--sm {
	width: var(--eec-icon-sm);
	height: var(--eec-icon-sm);
}

.eec-icon--md,
.eec-ui-icon--md {
	width: var(--eec-icon-md);
	height: var(--eec-icon-md);
}

.eec-icon--lg,
.eec-ui-icon--lg {
	width: var(--eec-icon-lg);
	height: var(--eec-icon-lg);
}

.eec-icon--xl,
.eec-ui-icon--xl {
	width: var(--eec-icon-xl);
	height: var(--eec-icon-xl);
}

.eec-icon--2xl,
.eec-ui-icon--2xl {
	width: var(--eec-icon-2xl);
	height: var(--eec-icon-2xl);
}

.eec-icon--3xl,
.eec-ui-icon--3xl {
	width: var(--eec-icon-3xl);
	height: var(--eec-icon-3xl);
}

.eec-icon--blue,
.eec-ui-icon--blue {
	color: #0a2540;
}

.eec-icon--gold,
.eec-ui-icon--gold {
	color: #c9a961;
}

.eec-icon--white,
.eec-ui-icon--white {
	color: #ffffff;
}

.eec-icon--gray,
.eec-ui-icon--gray {
	color: #6b7280;
}

.eec-icon--dark,
.eec-ui-icon--dark {
	color: #1f2937;
}

.eec-icon-badge,
.eec-ui-icon-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #faf6e8;
	border: 1px solid #c9a961;
	color: #0a2540;
}

.eec-icon-badge--lg,
.eec-ui-icon-badge--lg {
	width: 56px;
	height: 56px;
}

.eec-icon-badge--blue,
.eec-ui-icon-badge--blue {
	background: #0a2540;
	border-color: #c9a961;
	color: #c9a961;
}

.eec-icon-badge--gold,
.eec-ui-icon-badge--gold {
	background: #c9a961;
	border-color: #0a2540;
	color: #0a2540;
}

.eec-icon-hover-scale:hover .eec-icon,
.eec-icon-hover-scale:hover .eec-ui-icon,
.eec-ui-hover-scale:hover .eec-icon,
.eec-ui-hover-scale:hover .eec-ui-icon {
	transform: scale(1.15);
}

.eec-icon-hover-rotate:hover .eec-icon,
.eec-icon-hover-rotate:hover .eec-ui-icon,
.eec-ui-hover-rotate:hover .eec-icon,
.eec-ui-hover-rotate:hover .eec-ui-icon {
	transform: rotate(15deg);
}

.eec-icon-missing,
.eec-ui-icon-missing {
	color: #c66;
	font-family: ui-monospace, monospace;
}

@media (prefers-reduced-motion: reduce) {
	.eec-icon,
	.eec-ui-icon,
	.eec-icon-hover-scale .eec-icon,
	.eec-icon-hover-scale .eec-ui-icon,
	.eec-ui-hover-scale .eec-icon,
	.eec-ui-hover-scale .eec-ui-icon,
	.eec-icon-hover-rotate .eec-icon,
	.eec-icon-hover-rotate .eec-ui-icon,
	.eec-ui-hover-rotate .eec-icon,
	.eec-ui-hover-rotate .eec-ui-icon {
		transition: none;
		transform: none !important;
	}
}

/* Utilitaires texte / fond (réf. eec_ui_get_utility_classes). */
.eec-ui-text--blue {
	color: #0a2540;
}

.eec-ui-text--gold {
	color: #c9a961;
}

.eec-ui-bg--blue {
	background-color: #0a2540;
	color: #faf6e8;
}

.eec-ui-bg--gold {
	background-color: #c9a961;
	color: #0a2540;
}

.eec-ui-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.6rem 1.2rem;
	border-radius: 6px;
	font-weight: 600;
	text-decoration: none;
	border: 1px solid transparent;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.eec-ui-btn--primary {
	background: #0a2540;
	color: #faf6e8;
	border-color: #c9a961;
}

.eec-ui-btn--gold {
	background: #c9a961;
	color: #0a2540;
	border-color: #0a2540;
}

@media (prefers-reduced-motion: reduce) {
	.eec-ui-btn {
		transition: none;
	}
}
