/**
 * TO Feature Glow Icon — scoped styles (.toaew-fgi / --toaew-fgi-*)
 */

.toaew-fgi {
	--toaew-fgi-icon: #1a1a2e;
	--toaew-fgi-icon-size: 40px;
	--toaew-fgi-glow-1: #ff4d6d;
	--toaew-fgi-glow-2: #c084fc;
	--toaew-fgi-glow-size: 140px;
	--toaew-fgi-glow-blur: 36px;
	--toaew-fgi-glow-opacity: 0.85;
	--toaew-fgi-title: #1a1a2e;
	--toaew-fgi-desc: #6b7280;

	width: 100%;
	max-width: 360px;
	margin: 0;
	text-align: center;
}

.toaew-fgi__media {
	display: flex;
	justify-content: center;
	margin-bottom: 20px;
}

.toaew-fgi__glow-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var( --toaew-fgi-glow-size );
	height: var( --toaew-fgi-glow-size );
}

.toaew-fgi__glow {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background:
		radial-gradient(
			circle at 50% 45%,
			var( --toaew-fgi-glow-1 ) 0%,
			var( --toaew-fgi-glow-2 ) 42%,
			transparent 72%
		);
	opacity: var( --toaew-fgi-glow-opacity );
	filter: blur( var( --toaew-fgi-glow-blur ) );
	transform: scale( 1.05 );
	pointer-events: none;
	z-index: 0;
}

.toaew-fgi__icon {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var( --toaew-fgi-icon );
	line-height: 1;
}

.toaew-fgi__icon i,
.toaew-fgi__icon svg {
	width: 1em;
	height: 1em;
	font-size: var( --toaew-fgi-icon-size );
	line-height: 1;
}

.toaew-fgi__icon svg {
	fill: currentColor;
}

.toaew-fgi__title {
	margin: 0 0 10px;
	color: var( --toaew-fgi-title );
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.02em;
}

.toaew-fgi__desc {
	margin: 0;
	color: var( --toaew-fgi-desc );
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.55;
}

@media ( prefers-reduced-motion: reduce ) {
	.toaew-fgi__glow {
		filter: blur( calc( var( --toaew-fgi-glow-blur ) * 0.7 ) );
	}
}
