/**
 * BSS Verified — Public Search Monetization (v17.31)
 * Featured Athletes row, Leaderboard strip, verified card glow.
 * Color system: gold (achievements/verified), cyan (data), pink (energy).
 */

/* ── §4 — Featured Athletes ─────────────────────────────────── */
.bssv-mz-featured {
	margin: 32px auto 24px;
	max-width: 1280px;
	padding: 0 16px;
	color: #fff;
}
.bssv-mz-featured-inner {
	background:
		radial-gradient(700px 200px at 50% 0%, rgba(247,198,69,0.10), transparent 70%),
		linear-gradient(180deg, rgba(13,16,24,0.92) 0%, rgba(8,10,16,0.96) 100%);
	border: 1px solid rgba(247,198,69,0.25);
	border-radius: 20px;
	padding: 28px 24px;
	box-shadow: 0 18px 54px rgba(0,0,0,0.40);
}
.bssv-mz-featured-head {
	display: flex; align-items: baseline; gap: 12px;
	margin-bottom: 18px;
	flex-wrap: wrap;
}
.bssv-mz-featured-icon {
	font-size: 22px;
	color: #f7c645;
	filter: drop-shadow(0 0 10px rgba(247,198,69,0.6));
}
.bssv-mz-featured-title {
	font-family: 'Playfair Display', Georgia, serif;
	font-size: 24px; font-weight: 700; color: #fff;
}
.bssv-mz-featured-sub {
	font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
	color: rgba(255,255,255,0.50);
}
.bssv-mz-featured-row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
}
.bssv-mz-featured-card {
	position: relative;
	display: block;
	padding: 22px 20px;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(247,198,69,0.30);
	border-radius: 16px;
	color: #fff;
	text-decoration: none;
	overflow: hidden;
	box-shadow: 0 4px 14px rgba(0,0,0,0.30), 0 0 0 1px rgba(247,198,69,0.10);
	transition: transform .22s cubic-bezier(.2,.7,.3,1.3), box-shadow .22s ease, border-color .22s ease;
}
.bssv-mz-featured-card:hover {
	transform: translateY(-4px);
	border-color: rgba(247,198,69,0.55);
	box-shadow: 0 14px 36px rgba(247,198,69,0.22), 0 0 0 1px rgba(247,198,69,0.30);
}
.bssv-mz-featured-card-glow {
	position: absolute; inset: -1px;
	background: radial-gradient(420px 140px at 50% -20%, rgba(247,198,69,0.20), transparent 60%);
	pointer-events: none;
}
.bssv-mz-featured-card-tag {
	font-size: 10px; font-weight: 700;
	letter-spacing: 0.20em; color: #f7c645;
	margin-bottom: 8px;
}
.bssv-mz-featured-card-name {
	font-size: 18px; font-weight: 700; color: #fff;
	margin-bottom: 4px;
}
.bssv-mz-featured-card-team {
	font-size: 12px; color: rgba(255,255,255,0.62);
	margin-bottom: 14px;
}
.bssv-mz-featured-card-stats {
	display: flex; gap: 14px;
	border-top: 1px solid rgba(255,255,255,0.06);
	padding-top: 12px;
}
.bssv-mz-featured-card-stats span {
	display: flex; flex-direction: column;
	font-size: 11px; color: rgba(255,255,255,0.55);
	letter-spacing: 0.05em;
}
.bssv-mz-featured-card-stats b {
	font-size: 18px; font-weight: 700;
	color: #3fc7ff; line-height: 1.1;
}
.bssv-mz-featured-card-stats i {
	font-style: normal; font-size: 10px;
	letter-spacing: 0.10em; text-transform: uppercase;
}
.bssv-mz-featured-card-verified {
	margin-top: 10px;
	display: inline-block;
	font-size: 10px; font-weight: 700;
	letter-spacing: 0.14em; text-transform: uppercase;
	color: #f7c645;
	background: rgba(247,198,69,0.12);
	padding: 4px 10px; border-radius: 999px;
	border: 1px solid rgba(247,198,69,0.30);
}

/* ── §6 — Leaderboard Strip ─────────────────────────────────── */
.bssv-mz-leaderboard {
	margin: 0 auto 32px;
	max-width: 1280px;
	padding: 0 16px;
	color: #fff;
}
.bssv-mz-lb-inner {
	background: linear-gradient(135deg, rgba(63,199,255,0.05) 0%, rgba(255,95,168,0.05) 100%),
	            rgba(13,16,24,0.85);
	border: 1px solid rgba(63,199,255,0.20);
	border-radius: 16px;
	padding: 22px 22px;
}
.bssv-mz-lb-head { margin-bottom: 14px; }
.bssv-mz-lb-eyebrow {
	font-size: 11px; font-weight: 700;
	letter-spacing: 0.22em; text-transform: uppercase;
	color: #3fc7ff;
}
.bssv-mz-lb-row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 14px;
}
.bssv-mz-lb-card {
	position: relative;
	display: block;
	padding: 18px;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.10);
	border-radius: 14px;
	color: #fff;
	text-decoration: none;
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.bssv-mz-lb-card:hover {
	transform: translateY(-2px);
	border-color: rgba(63,199,255,0.50);
	box-shadow: 0 8px 24px rgba(63,199,255,0.18);
}
.bssv-mz-lb-card-label {
	font-size: 10px; font-weight: 700;
	letter-spacing: 0.18em; text-transform: uppercase;
	color: rgba(255,255,255,0.55);
	margin-bottom: 8px;
}
.bssv-mz-lb-card-name {
	font-size: 17px; font-weight: 700;
	color: #fff; margin-bottom: 8px;
}
.bssv-mz-lb-card-stat {
	display: flex; align-items: baseline; gap: 6px;
}
.bssv-mz-lb-card-stat b {
	font-family: 'Playfair Display', Georgia, serif;
	font-size: 28px; font-weight: 700;
	color: #3fc7ff; line-height: 1;
}
.bssv-mz-lb-card-stat i {
	font-style: normal; font-size: 10px;
	letter-spacing: 0.12em; text-transform: uppercase;
	color: rgba(255,255,255,0.55);
}
.bssv-mz-lb-card-badge {
	position: absolute; top: 14px; right: 14px;
	width: 22px; height: 22px;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 11px; font-weight: 700;
	color: #f7c645;
	background: rgba(247,198,69,0.14);
	border-radius: 50%;
	border: 1px solid rgba(247,198,69,0.40);
}

/* ── §5 — Verified card glow on existing search results ─────── */
.bssv-mz-card-verified-glow {
	position: relative;
	border-color: rgba(247,198,69,0.45) !important;
	box-shadow: 0 0 0 1px rgba(247,198,69,0.18), 0 14px 36px rgba(247,198,69,0.16) !important;
}
.bssv-mz-card-verified-glow::before {
	content: '';
	position: absolute;
	inset: -1px;
	border-radius: inherit;
	background: linear-gradient(135deg, rgba(247,198,69,0.18) 0%, rgba(255,95,168,0.10) 100%);
	z-index: 0;
	pointer-events: none;
	opacity: 0.6;
}

/* ── Mobile ─────────────────────────────────────────────────── */
@media (max-width: 720px) {
	.bssv-mz-featured-inner { padding: 20px 16px; }
	.bssv-mz-featured-row { grid-template-columns: 1fr; }
	.bssv-mz-lb-inner { padding: 16px 14px; }
	.bssv-mz-lb-row { grid-template-columns: 1fr; }
	.bssv-mz-featured-title { font-size: 20px; }
}
