/**
 * BSS Verified — Public Player Search styles (v17.26.7 Lambo polish).
 * Scoped under .bssv-ps so it can't leak into the host theme.
 * Premium hero · trust strip · search card · athlete card grid · tier-aware.
 */

/* ── Root container ─────────────────────────────────────────────────── */
.bssv-ps {
	--bss-ps-bg-base:     #05060A;
	--bss-ps-bg-1:        #0A0C14;
	--bss-ps-bg-2:        #0D1018;
	--bss-ps-glass:       rgba(13, 16, 24, 0.55);
	--bss-ps-glass-hi:    rgba(13, 16, 24, 0.72);
	--bss-ps-border:      rgba(255, 255, 255, 0.08);
	--bss-ps-border-hi:   rgba(255, 255, 255, 0.16);
	--bss-ps-text:        #F4F6FB;
	--bss-ps-text-muted:  #A8B0C7;
	--bss-ps-text-quiet:  #6C7591;
	--bss-ps-brand:       #E11D48;
	--bss-ps-brand-glow:  rgba(225, 29, 72, 0.55);
	--bss-ps-violet:      #6348C9;
	--bss-ps-verified:    #00D4FF;
	--bss-ps-verified-glow: rgba(0, 212, 255, 0.55);
	--bss-ps-elite:       #F7C645;
	--bss-ps-elite-glow:  rgba(247, 198, 69, 0.55);
	--bss-ps-radius:      18px;

	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	padding: 32px 28px 48px;
	color: var(--bss-ps-text);
	font-family: -apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', Roboto, sans-serif;
	background: linear-gradient(180deg, #050608 0%, var(--bss-ps-bg-1) 60%, #050608 100%);
	border-radius: 24px;
	border: 1px solid var(--bss-ps-border);
	box-shadow: 0 24px 80px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.04);
	overflow: hidden;
	isolation: isolate;
}

/* ── Decorative cinematic background ────────────────────────────────── */
.bssv-ps-bg {
	position: absolute; inset: 0;
	pointer-events: none;
	z-index: 0;
}
.bssv-ps-halo {
	position: absolute;
	width: 540px; height: 540px;
	border-radius: 50%;
	filter: blur(80px);
	opacity: 0.42;
	will-change: transform;
}
.bssv-ps-halo-a {
	top: -180px; right: -140px;
	background: radial-gradient(circle, var(--bss-ps-brand-glow) 0%, transparent 60%);
	animation: bssv-ps-drift-a 22s linear infinite;
}
.bssv-ps-halo-b {
	bottom: -200px; left: -160px;
	background: radial-gradient(circle, rgba(99, 72, 201, 0.55) 0%, transparent 60%);
	animation: bssv-ps-drift-b 28s linear infinite;
}
.bssv-ps-grain {
	position: absolute; inset: 0;
	background-image:
		repeating-linear-gradient(0deg, rgba(255,255,255,0.012) 0 1px, transparent 1px 3px),
		repeating-linear-gradient(90deg, rgba(255,255,255,0.012) 0 1px, transparent 1px 3px);
	mix-blend-mode: overlay;
	opacity: 0.55;
}
@keyframes bssv-ps-drift-a {
	0%   { transform: translate(0, 0) scale(1); }
	50%  { transform: translate(-30px, 30px) scale(1.08); }
	100% { transform: translate(0, 0) scale(1); }
}
@keyframes bssv-ps-drift-b {
	0%   { transform: translate(0, 0) scale(1); }
	50%  { transform: translate(40px, -30px) scale(1.10); }
	100% { transform: translate(0, 0) scale(1); }
}

/* All foreground children sit above the bg */
.bssv-ps > :not(.bssv-ps-bg) {
	position: relative;
	z-index: 1;
}

/* ── Hero ───────────────────────────────────────────────────────────── */
.bssv-ps-header {
	text-align: center;
	margin: 24px auto 28px;
	padding: 24px 12px;
	max-width: 920px;
}
.bssv-ps-eyebrow {
	display: inline-block;
	font: 800 11px/1 'Inter', sans-serif;
	letter-spacing: 0.30em;
	color: var(--bss-ps-elite);
	text-transform: uppercase;
	padding: 7px 16px;
	border: 1px solid rgba(247, 198, 69, 0.45);
	border-radius: 999px;
	background: rgba(247, 198, 69, 0.08);
	box-shadow: 0 0 22px rgba(247, 198, 69, 0.15);
	margin-bottom: 22px;
}
.bssv-ps-title {
	font: 900 clamp(40px, 6vw, 76px)/1.04 Georgia, 'Playfair Display', serif;
	letter-spacing: -0.025em;
	margin: 0 0 16px;
	color: var(--bss-ps-text);
	text-shadow: 0 8px 36px rgba(0, 0, 0, 0.6), 0 0 56px rgba(225, 29, 72, 0.18);
	max-width: 100%;
	white-space: normal;
	overflow: visible;
}
.bssv-ps-trust {
	font: 500 16px/1.5 'Inter', sans-serif;
	color: var(--bss-ps-text-muted);
	margin: 0 auto 28px;
	max-width: 640px;
	font-style: italic;
}

/* Trust strip — three cells */
.bssv-ps-trust-strip {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	max-width: 760px;
	margin: 0 auto;
	border: 1px solid rgba(0, 212, 255, 0.18);
	background: linear-gradient(180deg, rgba(20, 28, 48, 0.62) 0%, rgba(13, 16, 24, 0.62) 100%);
	border-radius: 14px;
	overflow: hidden;
	position: relative;
}
.bssv-ps-trust-strip::before {
	content: '';
	position: absolute;
	top: -1px; left: -1px; right: -1px;
	height: 3px;
	border-radius: 14px 14px 0 0;
	background: linear-gradient(90deg, var(--bss-ps-verified) 0%, var(--bss-ps-elite) 50%, var(--bss-ps-brand) 100%);
	opacity: 0.7;
}
.bssv-ps-trust-cell {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	padding: 18px 14px;
	border-right: 1px solid var(--bss-ps-border);
}
.bssv-ps-trust-cell:last-child { border-right: none; }
.bssv-ps-trust-num {
	display: inline-flex;
	align-items: baseline;
	font: 900 28px/1 'Inter', sans-serif;
	font-feature-settings: "tnum";
	color: var(--bss-ps-text);
	letter-spacing: -0.02em;
}
.bssv-ps-trust-cell:last-child .bssv-ps-trust-num {
	color: var(--bss-ps-verified);
}
.bssv-ps-trust-plus {
	font-size: 18px;
	font-weight: 800;
	color: var(--bss-ps-verified);
	margin-left: 1px;
}
.bssv-ps-trust-lbl {
	font: 800 10px/1.2 'Inter', sans-serif;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--bss-ps-text-muted);
	text-align: center;
}

/* ── Search card ────────────────────────────────────────────────────── */
.bssv-ps-search-section {
	max-width: 920px;
	margin: 0 auto;
}
.bssv-ps-search-card {
	background: var(--bss-ps-glass);
	backdrop-filter: blur(20px) saturate(1.4);
	-webkit-backdrop-filter: blur(20px) saturate(1.4);
	border: 1px solid var(--bss-ps-border);
	border-radius: var(--bss-ps-radius);
	padding: 24px;
	margin-bottom: 22px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.40), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
.bssv-ps-label {
	display: block;
	font: 800 10px/1 'Inter', sans-serif;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: var(--bss-ps-text-quiet);
	margin-bottom: 12px;
}
.bssv-ps-search-row {
	position: relative;
	display: flex;
	align-items: center;
	background: rgba(255, 255, 255, 0.04);
	border: 2px solid var(--bss-ps-border);
	border-radius: 999px;
	padding: 0 6px 0 18px;
	transition: border-color 220ms ease, background 220ms ease, box-shadow 220ms ease;
}
.bssv-ps-search-row:focus-within {
	border-color: rgba(225, 29, 72, 0.55);
	background: rgba(255, 255, 255, 0.06);
	box-shadow: 0 0 0 6px rgba(225, 29, 72, 0.12), 0 0 24px rgba(225, 29, 72, 0.18);
}
.bssv-ps-search-icon {
	display: inline-flex;
	color: var(--bss-ps-text-muted);
	flex-shrink: 0;
}
.bssv-ps-search-row:focus-within .bssv-ps-search-icon { color: var(--bss-ps-brand); }
.bssv-ps-input {
	flex: 1 1 auto;
	min-width: 0;
	font: 500 18px/1.4 'Inter', sans-serif;
	color: var(--bss-ps-text);
	background: transparent;
	border: 0;
	outline: none;
	padding: 18px 16px;
	-webkit-appearance: none;
}
.bssv-ps-input::placeholder { color: var(--bss-ps-text-quiet); }
.bssv-ps-input::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
	width: 18px; height: 18px;
	background: rgba(255,255,255,0.10);
	border-radius: 50%;
	cursor: pointer;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 6l12 12M18 6l-12 12' stroke='black' stroke-width='2' stroke-linecap='round'/></svg>") center / 12px no-repeat;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 6l12 12M18 6l-12 12' stroke='black' stroke-width='2' stroke-linecap='round'/></svg>") center / 12px no-repeat;
	background-color: rgba(255,255,255,0.5);
}

/* Quick-search chips */
.bssv-ps-chips {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 16px;
}
.bssv-ps-chips-lbl {
	font: 800 9px/1 'Inter', sans-serif;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--bss-ps-text-quiet);
	margin-right: 4px;
}
.bssv-ps-chip {
	appearance: none;
	border: 1px solid var(--bss-ps-border);
	background: rgba(255, 255, 255, 0.04);
	color: var(--bss-ps-text-muted);
	font: 700 12px/1 'Inter', sans-serif;
	letter-spacing: 0.04em;
	padding: 9px 14px;
	border-radius: 999px;
	cursor: pointer;
	transition: color 180ms ease, border-color 180ms ease, background 180ms ease, transform 180ms ease;
}
.bssv-ps-chip:hover {
	color: var(--bss-ps-text);
	border-color: var(--bss-ps-border-hi);
	background: rgba(255, 255, 255, 0.07);
	transform: translateY(-1px);
}

/* ── Results ────────────────────────────────────────────────────────── */
.bssv-ps-results {
	margin-top: 12px;
}
.bssv-ps-meta-top {
	margin: 0 0 14px;
	font: 600 11px/1 'Inter', sans-serif;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--bss-ps-text-quiet);
}
.bssv-ps-meta-top b { color: var(--bss-ps-text); font-weight: 800; }

/* Empty / loading / error */
.bssv-ps-empty,
.bssv-ps-loading,
.bssv-ps-error {
	background: var(--bss-ps-glass);
	backdrop-filter: blur(16px) saturate(1.3);
	-webkit-backdrop-filter: blur(16px) saturate(1.3);
	border: 1px solid var(--bss-ps-border);
	border-radius: 14px;
	padding: 36px 24px;
	text-align: center;
	color: var(--bss-ps-text-muted);
	font: 500 14px/1.6 'Inter', sans-serif;
}
.bssv-ps-empty-eyebrow {
	font: 800 10px/1 'Inter', sans-serif;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--bss-ps-elite);
	margin-bottom: 10px;
}
.bssv-ps-empty-title {
	font: 800 20px/1.3 'Inter', sans-serif;
	color: var(--bss-ps-text);
	margin-bottom: 8px;
	letter-spacing: -0.01em;
}
.bssv-ps-empty-title b { color: var(--bss-ps-brand); }
.bssv-ps-empty-sub {
	font: 500 14px/1.5 'Inter', sans-serif;
	color: var(--bss-ps-text-quiet);
}
.bssv-ps-empty-sub code,
.bssv-ps-empty code {
	font-family: ui-monospace, Menlo, monospace;
	font-size: 12px;
	background: rgba(0, 0, 0, 0.28);
	color: var(--bss-ps-elite);
	padding: 1px 6px;
	border-radius: 4px;
}
.bssv-ps-loading {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 28px 24px;
}
.bssv-ps-loading-text {
	font: 700 13px/1 'Inter', sans-serif;
	letter-spacing: 0.10em;
	text-transform: uppercase;
	color: var(--bss-ps-text-muted);
}
.bssv-ps-error { color: #ff6b85; border-color: rgba(255, 107, 133, 0.32); background: rgba(255, 107, 133, 0.08); }
.bssv-ps-spinner {
	display: inline-block;
	width: 18px; height: 18px;
	border: 2px solid rgba(255,255,255,0.15);
	border-top-color: var(--bss-ps-verified);
	border-radius: 50%;
	animation: bssv-ps-spin 0.7s linear infinite;
}
@keyframes bssv-ps-spin { to { transform: rotate(360deg); } }

/* Card grid */
.bssv-ps-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 14px;
}

/* ── Athlete card ───────────────────────────────────────────────────── */
.bssv-ps-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 22px 22px 18px;
	background: var(--bss-ps-glass);
	backdrop-filter: blur(20px) saturate(1.4);
	-webkit-backdrop-filter: blur(20px) saturate(1.4);
	border: 1px solid var(--bss-ps-border);
	border-radius: var(--bss-ps-radius);
	color: var(--bss-ps-text);
	text-decoration: none;
	overflow: hidden;
	transition: transform 220ms cubic-bezier(.2,.8,.2,1), border-color 220ms ease, background 220ms ease, box-shadow 220ms ease;
	isolation: isolate;
}
.bssv-ps-card-glow {
	position: absolute; inset: 0;
	pointer-events: none;
	z-index: 0;
	opacity: 0;
	transition: opacity 240ms ease;
	background: radial-gradient(ellipse 70% 60% at 50% 0%, rgba(225, 29, 72, 0.20), transparent 65%);
}
.bssv-ps-card:hover,
.bssv-ps-card:focus-visible {
	transform: translateY(-3px);
	border-color: rgba(225, 29, 72, 0.40);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(225, 29, 72, 0.20) inset;
	outline: none;
}
.bssv-ps-card:hover .bssv-ps-card-glow,
.bssv-ps-card:focus-visible .bssv-ps-card-glow { opacity: 1; }
.bssv-ps-card > :not(.bssv-ps-card-glow) { position: relative; z-index: 1; }

/* Card head row */
.bssv-ps-card-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 10px;
}
.bssv-ps-card-tier {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.bssv-ps-card-tier-lbl {
	font: 800 9px/1 'Inter', sans-serif;
	letter-spacing: 0.20em;
	text-transform: uppercase;
	color: var(--bss-ps-text-quiet);
}
.bssv-ps-card-rank {
	display: inline-block;
	font: 800 10px/1 'Inter', sans-serif;
	letter-spacing: 0.10em;
	text-transform: uppercase;
	color: var(--bss-ps-elite);
	padding: 5px 10px;
	border: 1px solid rgba(247, 198, 69, 0.45);
	border-radius: 999px;
	background: rgba(247, 198, 69, 0.08);
}

/* Identity */
.bssv-ps-card-identity { min-width: 0; }
.bssv-ps-card-name {
	font: 900 22px/1.15 'Inter', sans-serif;
	letter-spacing: -0.015em;
	color: var(--bss-ps-text);
	margin-bottom: 6px;
	overflow: visible;
	white-space: normal;
	word-break: normal;
	overflow-wrap: anywhere;
}
.bssv-ps-card-team {
	font: 700 11px/1.3 'Inter', sans-serif;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--bss-ps-text-muted);
	margin-bottom: 4px;
}
.bssv-ps-card-pid {
	font: 700 10px/1 ui-monospace, Menlo, monospace;
	letter-spacing: 0.10em;
	color: var(--bss-ps-text-quiet);
}

/* Stat row */
.bssv-ps-card-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	padding: 12px 0;
	border-top: 1px solid var(--bss-ps-border);
	border-bottom: 1px solid var(--bss-ps-border);
}
.bssv-ps-card-stats:has(.is-awards) { grid-template-columns: repeat(5, 1fr); }
.bssv-ps-card-stat {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	min-width: 0;
}
.bssv-ps-card-stat-num {
	font: 900 18px/1 'Inter', sans-serif;
	font-feature-settings: "tnum";
	color: var(--bss-ps-text);
	letter-spacing: -0.01em;
}
.bssv-ps-card-stat-lbl {
	font: 800 9px/1 'Inter', sans-serif;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--bss-ps-text-quiet);
}
.bssv-ps-card-stat.is-awards .bssv-ps-card-stat-num { color: var(--bss-ps-elite); }

/* CTA */
.bssv-ps-card-cta {
	font: 800 11px/1 'Inter', sans-serif;
	letter-spacing: 0.20em;
	text-transform: uppercase;
	color: var(--bss-ps-brand);
	text-align: right;
}

/* ── Tier-aware styling ─────────────────────────────────────────────── */
.bssv-ps-card.is-tier-free { /* default — already styled above */ }

.bssv-ps-card.is-tier-verified {
	border-color: rgba(0, 212, 255, 0.32);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.40), 0 0 0 1px rgba(0, 212, 255, 0.20) inset, 0 0 28px rgba(0, 212, 255, 0.15);
}
.bssv-ps-card.is-tier-verified .bssv-ps-card-glow {
	background: radial-gradient(ellipse 70% 60% at 50% 0%, rgba(0, 212, 255, 0.22), transparent 65%);
	opacity: 0.55;
}
.bssv-ps-card.is-tier-verified:hover {
	border-color: rgba(0, 212, 255, 0.55);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(0, 212, 255, 0.30) inset, 0 0 36px rgba(0, 212, 255, 0.30);
}
.bssv-ps-card.is-tier-verified:hover .bssv-ps-card-glow { opacity: 1; }
.bssv-ps-card.is-tier-verified .bssv-ps-card-cta { color: var(--bss-ps-verified); }

.bssv-ps-card.is-tier-elite {
	border-color: rgba(247, 198, 69, 0.40);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.40), 0 0 0 1px rgba(247, 198, 69, 0.25) inset, 0 0 32px rgba(247, 198, 69, 0.18);
}
.bssv-ps-card.is-tier-elite .bssv-ps-card-glow {
	background: radial-gradient(ellipse 70% 60% at 50% 0%, rgba(247, 198, 69, 0.26), transparent 65%);
	opacity: 0.65;
}
.bssv-ps-card.is-tier-elite:hover {
	border-color: rgba(247, 198, 69, 0.65);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(247, 198, 69, 0.45) inset, 0 0 44px rgba(247, 198, 69, 0.36);
}
.bssv-ps-card.is-tier-elite:hover .bssv-ps-card-glow { opacity: 1; }
.bssv-ps-card.is-tier-elite .bssv-ps-card-cta { color: var(--bss-ps-elite); }

/* ── Tier pills (in-card and elsewhere) ─────────────────────────────── */
.bssv-ps-tier {
	display: inline-flex;
	align-items: center;
	font: 800 9px/1 'Inter', sans-serif;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	padding: 5px 9px;
	border-radius: 999px;
	border: 1px solid var(--bss-ps-border);
	color: var(--bss-ps-text-muted);
	background: rgba(255, 255, 255, 0.04);
}
.bssv-ps-tier.is-elite {
	color: var(--bss-ps-elite);
	border-color: rgba(247, 198, 69, 0.45);
	background: rgba(247, 198, 69, 0.10);
}
.bssv-ps-tier.is-verified {
	color: var(--bss-ps-verified);
	border-color: rgba(0, 212, 255, 0.45);
	background: rgba(0, 212, 255, 0.10);
}
.bssv-ps-tier.is-free {
	color: var(--bss-ps-text-quiet);
}

/* ── Coming soon (flag OFF for non-admins) ──────────────────────────── */
.bssv-ps-coming-soon {
	max-width: 760px;
	margin: 0 auto 24px;
	background: var(--bss-ps-glass);
	backdrop-filter: blur(18px) saturate(1.4);
	-webkit-backdrop-filter: blur(18px) saturate(1.4);
	border: 1px solid var(--bss-ps-border);
	border-radius: var(--bss-ps-radius);
	padding: 56px 24px;
	text-align: center;
}
.bssv-ps-coming-eyebrow {
	font: 800 11px/1 'Inter', sans-serif;
	letter-spacing: 0.28em;
	color: var(--bss-ps-verified);
	margin-bottom: 16px;
}
.bssv-ps-coming-title {
	font: 800 clamp(22px, 3vw, 32px)/1.2 'Inter', sans-serif;
	letter-spacing: -0.01em;
	margin: 0 0 12px;
}
.bssv-ps-coming-body {
	font: 500 14px/1.5 'Inter', sans-serif;
	color: var(--bss-ps-text-muted);
	max-width: 460px;
	margin: 0 auto;
}

/* ── Admin info note ────────────────────────────────────────────────── */
.bssv-ps-admin-note {
	max-width: 920px;
	margin: 0 auto 18px;
	padding: 12px 16px;
	background: rgba(247, 198, 69, 0.08);
	border: 1px solid rgba(247, 198, 69, 0.32);
	border-radius: 10px;
	color: var(--bss-ps-text-muted);
	font: 500 12px/1.5 'Inter', sans-serif;
}
.bssv-ps-admin-note code {
	font-family: ui-monospace, Menlo, monospace;
	color: var(--bss-ps-elite);
	background: rgba(0, 0, 0, 0.30);
	padding: 1px 6px;
	border-radius: 4px;
}

/* ── Footer ─────────────────────────────────────────────────────────── */
.bssv-ps-footer {
	margin-top: 28px;
	text-align: center;
	color: var(--bss-ps-text-quiet);
}
.bssv-ps-footer small {
	font: 500 11px/1.5 'Inter', sans-serif;
	letter-spacing: 0.04em;
}

/* ── Mobile ─────────────────────────────────────────────────────────── */
@media (max-width: 720px) {
	.bssv-ps {
		padding: 18px 14px 28px;
		border-radius: 18px;
	}
	.bssv-ps-header { margin: 12px auto 22px; padding: 14px 6px; }
	.bssv-ps-eyebrow { font-size: 10px; padding: 6px 12px; letter-spacing: 0.24em; margin-bottom: 16px; }
	.bssv-ps-title { font-size: clamp(32px, 9vw, 48px); }
	.bssv-ps-trust { font-size: 14px; margin-bottom: 22px; }
	.bssv-ps-trust-strip {
		grid-template-columns: 1fr;
	}
	.bssv-ps-trust-cell {
		flex-direction: row;
		justify-content: center;
		gap: 12px;
		padding: 14px 14px;
		border-right: none;
		border-bottom: 1px solid var(--bss-ps-border);
	}
	.bssv-ps-trust-cell:last-child { border-bottom: none; }
	.bssv-ps-trust-num { font-size: 22px; }
	.bssv-ps-trust-lbl { text-align: left; }

	.bssv-ps-search-card { padding: 18px; }
	.bssv-ps-input { font-size: 16px; padding: 14px 12px; }
	.bssv-ps-search-row { padding: 0 4px 0 14px; }
	.bssv-ps-chips { gap: 6px; }
	.bssv-ps-chip { font-size: 11px; padding: 8px 12px; }

	.bssv-ps-list { grid-template-columns: 1fr; gap: 12px; }
	.bssv-ps-card { padding: 18px 18px 14px; }
	.bssv-ps-card-name { font-size: 20px; }
	.bssv-ps-card-stats { grid-template-columns: repeat(2, 1fr); gap: 10px; padding: 10px 0; }
	.bssv-ps-card-stats:has(.is-awards) { grid-template-columns: repeat(3, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
	.bssv-ps-card { transition: none; }
	.bssv-ps-spinner { animation: none; border-top-color: var(--bss-ps-text-muted); }
	.bssv-ps-halo-a, .bssv-ps-halo-b { animation: none !important; }
}

/* ====================================================================
 * v17.26.8 — Be Someone Rise logomark (cinematic background)
 * Sits inside .bssv-ps-bg behind the halos and grain. Subtle, blurred,
 * with a soft red drop-shadow halo and a slow pulse. Pure visual; never
 * intercepts pointer events; readability of hero text is unchanged.
 * ==================================================================== */
.bssv-ps-logomark {
	position: absolute;
	top: 40px;
	right: -120px;
	width: 760px;
	height: 760px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	opacity: 0.10;
	filter:
		blur(10px)
		drop-shadow(0 0 64px rgba(225, 29, 72, 0.22))
		drop-shadow(0 0 24px rgba(247, 198, 69, 0.12));
	pointer-events: none;
	z-index: 0;
	will-change: opacity, transform;
	animation: bssv-ps-logomark-pulse 14s ease-in-out infinite;
}

@keyframes bssv-ps-logomark-pulse {
	0%, 100% { opacity: 0.08; transform: scale(1); }
	50%      { opacity: 0.13; transform: scale(1.04); }
}

@media (max-width: 1024px) {
	.bssv-ps-logomark {
		width: 620px;
		height: 620px;
		right: -160px;
		top: 30px;
		opacity: 0.09;
	}
}
@media (max-width: 720px) {
	.bssv-ps-logomark {
		width: 480px;
		height: 480px;
		right: -180px;
		top: 20px;
		opacity: 0.07;
		filter: blur(8px) drop-shadow(0 0 40px rgba(225, 29, 72, 0.18));
	}
	@keyframes bssv-ps-logomark-pulse {
		0%, 100% { opacity: 0.06; transform: scale(1); }
		50%      { opacity: 0.10; transform: scale(1.03); }
	}
}

@media (prefers-reduced-motion: reduce) {
	.bssv-ps-logomark { animation: none; opacity: 0.09; }
}

/* ====================================================================
 * v17.26.9 — Pre-launch polish quartet
 * 1. Kill the white gap between site header and the search section by
 *    neutralizing common WP wrappers' top padding when our body class
 *    is present.
 * 2. Lock .bssv-ps stacking context so previous-section text can't bleed
 *    through behind the hero.
 * ==================================================================== */

/* Body class set by PHP filter when [bssv_player_search] is on the page */
body.bssv-ps-page .entry-content,
body.bssv-ps-page .page-content,
body.bssv-ps-page .site-main,
body.bssv-ps-page main.site-main,
body.bssv-ps-page #primary,
body.bssv-ps-page article.page,
body.bssv-ps-page .elementor-section.elementor-top-section:first-of-type,
body.bssv-ps-page .e-con.e-parent:first-of-type {
	padding-top: 0 !important;
	margin-top: 0 !important;
}
body.bssv-ps-page .bssv-ps {
	margin-top: 0 !important;
}

/* Search hub root — opaque background, isolation context */
.bssv-ps {
	position: relative !important;
	z-index: 5 !important;
}

/* ====================================================================
 * v17.26.10 — Public search page: stronger BB + bleed lockdown
 * Extends v17.26.9 by including Beaver Builder selectors and forcing a
 * dark body background. No theme/builder gap visible above or below.
 * ==================================================================== */

body.bssv-ps-page {
	background: #05060A !important;
}

body.bssv-ps-page .post-content,
body.bssv-ps-page .single-content,
body.bssv-ps-page .fl-builder-content,
body.bssv-ps-page .fl-builder-content-primary,
body.bssv-ps-page .fl-row,
body.bssv-ps-page .fl-row-full-width,
body.bssv-ps-page .fl-row-content,
body.bssv-ps-page .fl-row-content-wrap,
body.bssv-ps-page .fl-col,
body.bssv-ps-page .fl-col-content,
body.bssv-ps-page .fl-module,
body.bssv-ps-page .fl-module-content,
body.bssv-ps-page .fl-rich-text {
	padding-top: 0 !important;
	margin-top: 0 !important;
	background-color: transparent !important;
}
body.bssv-ps-page .fl-row,
body.bssv-ps-page .fl-row-content-wrap {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}
body.bssv-ps-page .bssv-ps {
	position: relative !important;
	z-index: 5 !important;
	isolation: isolate !important;
	overflow: hidden;
}

/* ====================================================================
 * v17.26.11 — Logomark <img> tag styling
 * The shortcode now renders a real <img class="bssv-ps-logomark-img">
 * inside .bssv-ps-bg. CSS sizes/positions it identically to the legacy
 * .bssv-ps-logomark div (kept above for older cached DOM). Slightly
 * higher opacity than v17.26.8 so the Rise glyph reads clearly while
 * staying behind all hero text.
 * ==================================================================== */
.bssv-ps-logomark-img {
	position: absolute;
	top: 40px;
	right: -120px;
	width: 760px;
	height: 760px;
	max-width: none;
	max-height: none;
	object-fit: contain;
	object-position: center center;
	opacity: 0.14;
	filter:
		blur(6px)
		drop-shadow(0 0 64px rgba(225, 29, 72, 0.28))
		drop-shadow(0 0 24px rgba(247, 198, 69, 0.16));
	pointer-events: none;
	z-index: 0;
	border: 0 !important;
	will-change: opacity, transform;
	animation: bssv-ps-logomark-pulse 14s ease-in-out infinite;
	display: block;
}

/* Bump default .bssv-ps-logomark opacity too (keeps old cached version visible) */
.bssv-ps-logomark { opacity: 0.14; }

/* Keep the pulse keyframes aligned with the bumped baseline */
@keyframes bssv-ps-logomark-pulse {
	0%, 100% { opacity: 0.12; transform: scale(1); }
	50%      { opacity: 0.18; transform: scale(1.04); }
}

@media (max-width: 1024px) {
	.bssv-ps-logomark-img {
		width: 620px;
		height: 620px;
		right: -160px;
		top: 30px;
		opacity: 0.12;
	}
}
@media (max-width: 720px) {
	.bssv-ps-logomark-img {
		width: 480px;
		height: 480px;
		right: -180px;
		top: 20px;
		opacity: 0.10;
		filter: blur(5px) drop-shadow(0 0 40px rgba(225, 29, 72, 0.20));
	}
}

@media (prefers-reduced-motion: reduce) {
	.bssv-ps-logomark-img { animation: none; opacity: 0.13; }
}

/* ════════════════════════════════════════════════════════════════════
 * v17.28 — FULL-BLEED PLAYER SEARCH HUB
 * Breaks .bssv-ps out of theme + Beaver Builder containers so the hero
 * spans 100vw edge-to-edge while inner content stays centered at a
 * comfortable reading width.
 * ═══════════════════════════════════════════════════════════════════ */

/* 1. Force every parent container on bssv-ps-page to full width.
 *    Beaver Builder, theme wrappers, content/main wrappers. */
body.bssv-ps-page .fl-content,
body.bssv-ps-page .fl-content-full,
body.bssv-ps-page .fl-row,
body.bssv-ps-page .fl-row-content,
body.bssv-ps-page .fl-row-content-wrap,
body.bssv-ps-page .fl-col,
body.bssv-ps-page .fl-col-content,
body.bssv-ps-page .fl-module,
body.bssv-ps-page .fl-module-content,
body.bssv-ps-page .fl-rich-text,
body.bssv-ps-page .container,
body.bssv-ps-page .site-main,
body.bssv-ps-page main.site-main,
body.bssv-ps-page #primary,
body.bssv-ps-page #content,
body.bssv-ps-page article,
body.bssv-ps-page .entry-content,
body.bssv-ps-page .post-content,
body.bssv-ps-page .single-content,
body.bssv-ps-page .page-content {
	max-width: 100% !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* 2. Hide the theme-rendered "Player Search" H1 — the shortcode owns the
 *    hero now. Multiple selectors because BB / theme can render it under
 *    different classes. */
body.bssv-ps-page .fl-post-title,
body.bssv-ps-page .fl-post-header,
body.bssv-ps-page .entry-title,
body.bssv-ps-page h1.entry-title,
body.bssv-ps-page .page-title,
body.bssv-ps-page .post-thumbnail,
body.bssv-ps-page header.entry-header {
	display: none !important;
}

/* 3. Make the .bssv-ps section TRULY full bleed (100vw with negative margins
 *    that escape any remaining centered container). */
.bssv-ps {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	border-radius: 0 !important;
	box-sizing: border-box;
	padding: 120px 0 100px !important;
	position: relative;
	overflow: hidden;
}
@media (max-width: 1024px) {
	.bssv-ps { padding: 96px 0 80px !important; }
}
@media (max-width: 720px) {
	.bssv-ps { padding: 64px 0 56px !important; }
}

/* 4. Constrain the inner content to a comfortable reading width and
 *    center it. Applied to the section's direct children that hold actual
 *    content (header, admin note, search section, footer, coming-soon).
 *    The .bssv-ps-bg layer behind stays full-bleed. */
.bssv-ps > .bssv-ps-header,
.bssv-ps > .bssv-ps-admin-note,
.bssv-ps > .bssv-ps-coming-soon,
.bssv-ps > .bssv-ps-search-section,
.bssv-ps > .bssv-ps-footer {
	max-width: 1280px;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 24px;
	padding-right: 24px;
	box-sizing: border-box;
	position: relative;
	z-index: 2;
}

/* Mobile: keep readable side padding, avoid horizontal scroll. */
@media (max-width: 720px) {
	.bssv-ps > .bssv-ps-header,
	.bssv-ps > .bssv-ps-admin-note,
	.bssv-ps > .bssv-ps-coming-soon,
	.bssv-ps > .bssv-ps-search-section,
	.bssv-ps > .bssv-ps-footer {
		padding-left: 18px;
		padding-right: 18px;
	}
}

/* 5. Background layers (gradient + halos + grain + logomark) stay
 *    inside the full-bleed section as absolute layers. */
.bssv-ps > .bssv-ps-bg {
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	max-width: none !important;
	border-radius: 0 !important;
}

/* 6. Belt-and-suspenders: prevent horizontal scroll on the page when
 *    100vw escapes a parent that isn't quite at viewport width. */
body.bssv-ps-page,
body.bssv-ps-page html {
	overflow-x: hidden;
}

/* ════════════════════════════════════════════════════════════════════
 * v17.29 — Search hub polish trio
 *  1. Admin preview → corner floating badge (admin-only, opacity 0.6)
 *  2. Premium search input (64px, focus glow, transition, "Press Enter" pill)
 *  3. Hook line — "Every athlete has a story. Find yours."
 * ═══════════════════════════════════════════════════════════════════ */

/* ── 1. ADMIN BADGE — corner floating ───────────────────────────── */
.bssv-ps-admin-note {
	position: fixed !important;
	bottom: 16px;
	right: 16px;
	left: auto !important;
	margin: 0 !important;
	padding: 8px 14px !important;
	max-width: 320px !important;
	width: auto !important;
	display: inline-flex !important;
	align-items: center;
	gap: 10px;
	border-radius: 999px !important;
	background: rgba(13, 16, 24, 0.86) !important;
	border: 1px solid rgba(244, 180, 62, 0.30) !important;
	color: #cbd5e0 !important;
	font-size: 11px !important;
	font-weight: 600;
	letter-spacing: 0.04em;
	white-space: nowrap;
	box-shadow: 0 8px 24px rgba(0,0,0,0.45);
	opacity: 0.6;
	z-index: 9999;
	transition: opacity 180ms ease, transform 180ms ease;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}
.bssv-ps-admin-note:hover {
	opacity: 1;
	transform: translateY(-2px);
}
.bssv-ps-admin-note-dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #34d399;
	box-shadow: 0 0 8px rgba(52, 211, 153, 0.7);
	flex-shrink: 0;
}
.bssv-ps-admin-note-label {
	color: #f4b43e;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 10px;
}
.bssv-ps-admin-note-meta {
	color: #9aa3ad;
	font-size: 10px;
	letter-spacing: 0.02em;
}
@media (max-width: 600px) {
	.bssv-ps-admin-note {
		bottom: 12px;
		right: 12px;
		max-width: calc(100vw - 24px) !important;
		font-size: 10px !important;
		padding: 6px 12px !important;
	}
}

/* ── 2. PREMIUM SEARCH INPUT ─────────────────────────────────────── */
.bssv-ps-input {
	height: 64px !important;
	font-size: 17px !important;
	padding: 0 140px 0 56px !important;  /* leave room for icon (left) + Press Enter pill (right) */
	border-radius: 16px !important;
	background: rgba(13, 16, 24, 0.78) !important;
	border: 1.5px solid rgba(255, 255, 255, 0.10) !important;
	color: #f4f5f7 !important;
	letter-spacing: 0.01em;
	transition: all 150ms ease !important;
	box-shadow:
		0 4px 16px rgba(0, 0, 0, 0.35),
		inset 0 0 0 0 rgba(225, 29, 72, 0);
}
.bssv-ps-input::placeholder {
	color: #6b7280;
	font-weight: 400;
	letter-spacing: 0.01em;
}
.bssv-ps-input:hover {
	border-color: rgba(255, 255, 255, 0.18) !important;
	background: rgba(15, 18, 28, 0.86) !important;
}
.bssv-ps-input:focus,
.bssv-ps-input:focus-visible {
	outline: none !important;
	border-color: rgba(225, 29, 72, 0.65) !important;
	background: rgba(15, 18, 28, 0.92) !important;
	box-shadow:
		0 4px 28px rgba(225, 29, 72, 0.28),
		inset 0 0 24px rgba(225, 29, 72, 0.10),
		0 0 0 4px rgba(225, 29, 72, 0.10) !important;
	transform: translateY(-1px);
}

/* Search-row: position context for icon + pill */
.bssv-ps-search-row {
	position: relative;
}
.bssv-ps-search-icon {
	position: absolute;
	left: 22px;
	top: 50%;
	transform: translateY(-50%);
	color: #9aa3ad;
	pointer-events: none;
	transition: color 150ms ease;
	z-index: 2;
}
.bssv-ps-input:focus + .bssv-ps-press-enter,
.bssv-ps-input:focus ~ .bssv-ps-press-enter {
	opacity: 1;
	border-color: rgba(225, 29, 72, 0.45);
	color: #f4f5f7;
}
.bssv-ps-input:focus ~ .bssv-ps-search-icon {
	color: #e11d48;
}

/* ── "Press Enter" hint pill ─────────────────────────────────────── */
.bssv-ps-press-enter {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.10);
	color: #9aa3ad;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	pointer-events: none;
	opacity: 0.7;
	transition: all 150ms ease;
	z-index: 2;
	white-space: nowrap;
}
.bssv-ps-press-enter kbd {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 5px;
	padding: 2px 7px;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
	font-size: 10px;
	font-weight: 700;
	color: #f4f5f7;
	letter-spacing: 0.02em;
}
@media (max-width: 600px) {
	.bssv-ps-input {
		height: 56px !important;
		font-size: 16px !important;
		padding: 0 16px 0 48px !important;
	}
	.bssv-ps-press-enter { display: none; }  /* hide on mobile to keep input clean */
}

/* ── 3. HOOK LINE — "Every athlete has a story. Find yours." ───── */
.bssv-ps-hook-line {
	font-style: italic;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.005em;
	color: #cbd5e0;
	opacity: 0.7;
	text-align: center;
	max-width: 540px;
	margin: 22px auto 0 !important;
	line-height: 1.5;
}
@media (max-width: 720px) {
	.bssv-ps-hook-line {
		font-size: 14px;
		margin-top: 18px !important;
		max-width: 90%;
	}
}

/* ════════════════════════════════════════════════════════════════════
 * v17.29.1 — Kill the white bar between site header and BSSV hero.
 * Beaver Builder + theme wrappers render a row ABOVE the .bssv-ps
 * section with white default backgrounds. v17.28's lockdown stripped
 * paddings/widths but not the row's bg color. This pass forces
 * transparency on every wrapper layer so the dark hero sits flush
 * under the site header.
 * ═══════════════════════════════════════════════════════════════════ */

/* Force dark body background — anything that escapes the section
 * lands on this color, not white. */
body.bssv-ps-page {
	background: #05060A !important;
}

/* Make every theme + BB wrapper layer transparent.
 * `header` is page-scoped (body.bssv-ps-page header) so we don't
 * touch the rest of the site. */
body.bssv-ps-page header,
body.bssv-ps-page .fl-builder-content,
body.bssv-ps-page .fl-builder-content-primary,
body.bssv-ps-page .fl-row,
body.bssv-ps-page .fl-row-content,
body.bssv-ps-page .fl-row-content-wrap,
body.bssv-ps-page .fl-col,
body.bssv-ps-page .fl-col-content,
body.bssv-ps-page .fl-module,
body.bssv-ps-page .fl-module-content,
body.bssv-ps-page .fl-rich-text,
body.bssv-ps-page .fl-content,
body.bssv-ps-page .container,
body.bssv-ps-page #content,
body.bssv-ps-page #primary,
body.bssv-ps-page .site-content,
body.bssv-ps-page main.site-main,
body.bssv-ps-page article,
body.bssv-ps-page .entry-content,
body.bssv-ps-page .post-content,
body.bssv-ps-page .single-content,
body.bssv-ps-page .page-content {
	background: transparent !important;
	background-color: transparent !important;
}

/* Zero top spacing on the row that contains the hero so there's no
 * gap between site header and the dark section. */
body.bssv-ps-page .fl-row,
body.bssv-ps-page .fl-row-content-wrap,
body.bssv-ps-page .fl-row-content,
body.bssv-ps-page .fl-col,
body.bssv-ps-page .fl-col-content,
body.bssv-ps-page .fl-module-content,
body.bssv-ps-page .fl-content,
body.bssv-ps-page article,
body.bssv-ps-page .entry-content {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Site header polish (page-scoped only) — gives the navbar the same
 * dark feel as the hero so the transition is seamless. */
body.bssv-ps-page header,
body.bssv-ps-page .fl-page-header,
body.bssv-ps-page .fl-page-bar,
body.bssv-ps-page .site-header {
	background: #05060A !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

/* ════════════════════════════════════════════════════════════════════
 * v17.29.2 — Fix logomark visibility.
 * v17.29.1's `body.bssv-ps-page header { background: #05060A }` rule
 * unintentionally matched the INNER <header class="bssv-ps-header"> —
 * the hero content header — making it a solid black rectangle that
 * blocked the right-side Rise logomark.
 *
 * Fix: explicitly override .bssv-ps-header (and other inner shortcode
 * content wrappers) back to transparent. The site-level header darken
 * stays in effect because the original v17.29.1 rule still applies to
 * theme/BB header containers.
 *
 * Z-index reaffirmed: bg/logomark = 0, content = 1+.
 * Readability comes from the .bssv-ps-bg gradient + halos, NOT from
 * any rectangular content block.
 * ═══════════════════════════════════════════════════════════════════ */

/* 1. Force inner shortcode content wrappers to be transparent so they
 *    can never paint a black rectangle over the bg/logomark. */
.bssv-ps,
.bssv-ps .bssv-ps-header,
body.bssv-ps-page .bssv-ps-header,
body.bssv-ps-page header.bssv-ps-header,
.bssv-ps .bssv-ps-search-section,
body.bssv-ps-page .bssv-ps-search-section {
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
}

/* 2. Restore the hero's vertical dark gradient — but as a layer INSIDE
 *    the bg, NOT as a paint on the bssv-ps wrapper itself. This way
 *    the logomark stays visible and we still get a darkening behind
 *    the centered text for readability. */
.bssv-ps > .bssv-ps-bg::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(60% 70% at 50% 50%, rgba(5, 6, 10, 0.55) 0%, rgba(5, 6, 10, 0.10) 55%, transparent 80%),
		linear-gradient(180deg, rgba(5, 6, 10, 0.55) 0%, rgba(10, 12, 20, 0.20) 40%, rgba(10, 12, 20, 0.20) 60%, rgba(5, 6, 10, 0.55) 100%);
	pointer-events: none;
	z-index: 1;
}

/* 3. Make sure logomark is not z-buried under the new gradient overlay. */
.bssv-ps-logomark-img,
.bssv-ps-logomark {
	z-index: 0 !important;
}
.bssv-ps > .bssv-ps-bg .bssv-ps-halo-a,
.bssv-ps > .bssv-ps-bg .bssv-ps-halo-b,
.bssv-ps > .bssv-ps-bg .bssv-ps-grain {
	z-index: 2;
}

/* 4. Z-index hierarchy reaffirmed for content children of .bssv-ps so
 *    nothing accidentally lands behind the bg layer. */
.bssv-ps > .bssv-ps-header,
.bssv-ps > .bssv-ps-search-section,
.bssv-ps > .bssv-ps-coming-soon,
.bssv-ps > .bssv-ps-admin-note,
.bssv-ps > .bssv-ps-footer {
	position: relative;
	z-index: 3;
}

/* 5. Belt-and-suspenders — if the theme/BB <header> selector from
 *    v17.29.1 applies a solid bg, it ONLY targets DIRECT-child site
 *    headers, not the inner .bssv-ps-header. */
body.bssv-ps-page > header,
body.bssv-ps-page .fl-page > header,
body.bssv-ps-page .site-header {
	background: #05060A !important;
}
/* (the original v17.29.1 rule still darkens .fl-page-header/.fl-page-bar) */

/* ════════════════════════════════════════════════════════════════════
 * v17.29.3 — Strong dark hero + ghosted logomark.
 *
 * v17.29.2's radial overlay was too transparent in the center → washed
 * gray feel. This pass:
 *   - Puts a SOLID #05060A base on .bssv-ps-bg
 *   - Stacks a strong ellipse + linear gradient on ::before
 *     (0.65 → 0.9 → solid)
 *   - Tones the logomark to a ghosted brand layer (0.12 opacity + 1px blur)
 *   - Re-asserts content above everything, transparent
 *
 * Net feel: premium dark UI. Logo = presence, not attention. Text pops.
 * ═══════════════════════════════════════════════════════════════════ */

/* 1. Solid dark base on the bg layer. */
.bssv-ps > .bssv-ps-bg,
.bssv-ps .bssv-ps-bg {
	background: #05060A !important;
	background-color: #05060A !important;
}

/* 2. Stack a strong layered gradient ON TOP of the bg.
 *    Override v17.29.2's lighter ::before with a darker, opaque-edge
 *    ellipse + linear stack. Center 0.65 → edges 0.9 → solid #05060A. */
.bssv-ps > .bssv-ps-bg::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 1;
	background:
		radial-gradient(ellipse at center, rgba(5, 6, 10, 0.65) 0%, rgba(5, 6, 10, 0.90) 60%, #05060A 100%),
		linear-gradient(to bottom, rgba(5, 6, 10, 0.85) 0%, rgba(5, 6, 10, 1) 100%) !important;
}

/* 3. Ghost the logomark. Override v17.27 + v17.27.1 placement rules.
 *    Opacity drops to 0.12, blur softens edges so it reads as a brand
 *    layer, not a feature. Pulse animation values tightened to keep
 *    it muted at all times. */
.bssv-ps-logomark-img,
.bssv-ps .bssv-ps-logomark-img,
.bssv-ps-logomark,
.bssv-ps .bssv-ps-logomark {
	opacity: 0.12 !important;
	filter: blur(1px) !important;
	z-index: 0 !important;
}

/* Tighten the existing pulse range so animation never bumps above 0.14. */
@keyframes bssv-ps-logomark-pulse {
	0%, 100% { opacity: 0.10; transform: scale(1); }
	50%      { opacity: 0.14; transform: scale(1.02); }
}

@media (max-width: 720px) {
	.bssv-ps-logomark-img,
	.bssv-ps-logomark {
		opacity: 0.08 !important;
		filter: blur(2px) !important;
	}
}

/* 4. Content above everything, transparent (re-assert v17.29.2 rules
 *    in case any later cascade tries to paint them). */
.bssv-ps .bssv-ps-header,
.bssv-ps .bssv-ps-search-section,
.bssv-ps .bssv-ps-coming-soon,
body.bssv-ps-page .bssv-ps-header,
body.bssv-ps-page .bssv-ps-search-section,
body.bssv-ps-page .bssv-ps-coming-soon {
	position: relative;
	z-index: 3;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
}

/* 5. Halos + grain still float above the gradient overlay so the
 *    cinematic motion stays alive — but well below content. */
.bssv-ps .bssv-ps-halo,
.bssv-ps .bssv-ps-halo-a,
.bssv-ps .bssv-ps-halo-b,
.bssv-ps .bssv-ps-grain {
	z-index: 2 !important;
}

/* ════════════════════════════════════════════════════════════════════
 * v17.29.4 — Restore subtle Rise watermark visibility.
 *
 * v17.29.3 placed the dark gradient overlay at z-index:1 OVER the
 * logomark at z-index:0 — fully obscuring it. This pass moves the
 * logomark to z-index:2 (alongside halos) so it floats ABOVE the
 * gradient, then pins opacity to 0.07 (~7%) for "presence not
 * attention" per spec.
 *
 * Do not touch:
 *   - .bssv-ps-bg solid base
 *   - .bssv-ps-bg::before dark gradient
 *   - search card / header / hero container
 *   - white bar lockdown / theme container fixes
 * ═══════════════════════════════════════════════════════════════════ */

.bssv-ps-logomark-img,
.bssv-ps .bssv-ps-logomark-img,
.bssv-ps-logomark,
.bssv-ps .bssv-ps-logomark {
	opacity: 0.07 !important;
	filter: blur(1px) !important;
	z-index: 2 !important;  /* float ABOVE the dark gradient overlay */
	mix-blend-mode: screen;  /* lets the dark bg keep its mood while the glyph reads */
}

/* Tighten the pulse to the 6-8% band so it never spikes louder. */
@keyframes bssv-ps-logomark-pulse {
	0%, 100% { opacity: 0.06; transform: scale(1); }
	50%      { opacity: 0.08; transform: scale(1.02); }
}

@media (max-width: 720px) {
	.bssv-ps-logomark-img,
	.bssv-ps-logomark {
		opacity: 0.05 !important;
		filter: blur(2px) !important;
	}
}

/* ════════════════════════════════════════════════════════════════════
 * v17.29.5 — Logomark slightly brighter.
 * Bump opacity 0.07 → 0.10, pulse 0.06–0.08 → 0.09–0.12, mobile 0.05 → 0.07.
 * Everything else from v17.29.4 (z-index, blur, blend-mode) preserved.
 * ═══════════════════════════════════════════════════════════════════ */

.bssv-ps-logomark-img,
.bssv-ps .bssv-ps-logomark-img,
.bssv-ps-logomark,
.bssv-ps .bssv-ps-logomark {
	opacity: 0.10 !important;
}

@keyframes bssv-ps-logomark-pulse {
	0%, 100% { opacity: 0.09; transform: scale(1); }
	50%      { opacity: 0.12; transform: scale(1.02); }
}

@media (max-width: 720px) {
	.bssv-ps-logomark-img,
	.bssv-ps-logomark {
		opacity: 0.07 !important;
	}
}

/* ════════════════════════════════════════════════════════════════════
 * v17.30.2 — Persistent Search SPA — inline profile mount + Back pill
 * ═══════════════════════════════════════════════════════════════════ */
.bssv-ps-inline-profile {
	display: none;
	max-width: 1280px;
	margin: 32px auto 0;
	padding: 0 24px;
	box-sizing: border-box;
	position: relative;
	z-index: 4;
}
.bssv-ps-inline-profile.is-active { display: block; }
.bssv-ps-inline-profile #bssv-at-dashboard[hidden] { display: none; }
.bssv-ps-inline-profile #bssv-at-dashboard { display: block; }

.bssv-ps-back-to-search {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 24px auto 8px;
	padding: 10px 18px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	color: #cbd5e0;
	font-family: 'Inter', -apple-system, sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	cursor: pointer;
	transition: all 150ms ease;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
}
.bssv-ps-back-to-search:hover {
	background: rgba(255, 255, 255, 0.10);
	border-color: rgba(247, 198, 69, 0.55);
	color: #F7C645;
	transform: translateX(-2px);
}

/* When a profile is loaded inline, collapse the search results block
 * to a small heading-only line — search bar stays at top, and the user
 * can click the back pill to expand again. */
body.bssv-ps-has-profile .bssv-ps-results .bssv-ps-list { display: none; }
body.bssv-ps-has-profile .bssv-ps-results .bssv-ps-meta-top { display: none; }

@media (max-width: 720px) {
	.bssv-ps-inline-profile { padding: 0 16px; margin-top: 24px; }
	.bssv-ps-back-to-search { margin-top: 18px; padding: 9px 14px; font-size: 12px; }
}

/* ════════════════════════════════════════════════════════════════════
 * v17.30.2.1 — LAMBO UI RESTORATION
 *
 * Re-asserts the v17.29.5 premium look on /player-search/ now that
 * admin-test.css is also loaded (for the inline profile SPA). All
 * rules use body.bssv-ps-page to win specificity battles against
 * admin-test.css's body-level overrides.
 *
 * Visual goals:
 *   1. Deep black base (#05060A) with layered gradient (no flat)
 *   2. Logomark at 8–10% opacity, blur 1px, mix-blend-mode screen
 *   3. Search card: rgba glass + backdrop blur + soft border + glow
 *   4. CTAs: gold gradient + glow + hover lift
 *   5. Cyan + pink glow accents (the Lambo signature)
 *   6. Vignette edges via stacked gradients
 * ═══════════════════════════════════════════════════════════════════ */

/* 1 — Hero base + layered gradient. Don't paint a flat black. */
body.bssv-ps-page .bssv-ps {
	background: #05060A !important;
	color: #F4F6FB !important;
	border-radius: 0 !important;
}
body.bssv-ps-page .bssv-ps > .bssv-ps-bg {
	background: #05060A !important;
	z-index: 0 !important;
}
body.bssv-ps-page .bssv-ps > .bssv-ps-bg::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 1;
	background:
		radial-gradient(ellipse at 50% 30%, rgba(225, 29, 72, 0.08) 0%, transparent 55%),
		radial-gradient(ellipse at 50% 70%, rgba(0, 212, 255, 0.06) 0%, transparent 55%),
		radial-gradient(ellipse at 50% 50%, rgba(5, 6, 10, 0.65) 0%, rgba(5, 6, 10, 0.92) 60%, #05060A 100%),
		linear-gradient(to bottom, rgba(5, 6, 10, 0.85) 0%, rgba(5, 6, 10, 1) 100%) !important;
}

/* Vignette edges */
body.bssv-ps-page .bssv-ps > .bssv-ps-bg::after {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 1;
	background: radial-gradient(ellipse at center, transparent 50%, rgba(0, 0, 0, 0.45) 100%);
	mix-blend-mode: multiply;
}

/* 2 — Logomark: ghosted brand layer (presence, not attention) */
body.bssv-ps-page .bssv-ps-logomark-img,
body.bssv-ps-page .bssv-ps-logomark {
	opacity: 0.10 !important;
	filter: blur(1px) !important;
	mix-blend-mode: screen !important;
	z-index: 2 !important;
}
@media (max-width: 720px) {
	body.bssv-ps-page .bssv-ps-logomark-img,
	body.bssv-ps-page .bssv-ps-logomark { opacity: 0.07 !important; filter: blur(2px) !important; }
}

/* 3 — Halos: cyan + pink accents (the Lambo signature) */
body.bssv-ps-page .bssv-ps-halo-a {
	background: radial-gradient(circle, rgba(225, 29, 72, 0.55) 0%, transparent 60%) !important;
	opacity: 0.45 !important;
}
body.bssv-ps-page .bssv-ps-halo-b {
	background: radial-gradient(circle, rgba(0, 212, 255, 0.42) 0%, transparent 60%) !important;
	opacity: 0.40 !important;
}

/* 4 — Search card: premium glass */
body.bssv-ps-page .bssv-ps-search-card {
	background: rgba(13, 16, 24, 0.62) !important;
	backdrop-filter: blur(22px) saturate(1.6) !important;
	-webkit-backdrop-filter: blur(22px) saturate(1.6) !important;
	border: 1px solid rgba(255, 255, 255, 0.10) !important;
	border-radius: 18px !important;
	padding: 28px !important;
	box-shadow:
		0 24px 64px rgba(0, 0, 0, 0.55),
		0 0 0 1px rgba(255, 255, 255, 0.04) inset,
		0 -1px 0 rgba(225, 29, 72, 0.12) inset !important;
	position: relative;
	overflow: hidden;
}
/* Soft glow edge along top of card */
body.bssv-ps-page .bssv-ps-search-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 10%;
	right: 10%;
	height: 1px;
	background: linear-gradient(90deg, transparent 0%, rgba(225, 29, 72, 0.55) 50%, transparent 100%);
	pointer-events: none;
}

/* 5 — Premium input: re-assert the focus-glow + lift from v17.29 */
body.bssv-ps-page .bssv-ps-input {
	background: rgba(13, 16, 24, 0.78) !important;
	border: 1.5px solid rgba(255, 255, 255, 0.10) !important;
	color: #F4F5F7 !important;
	transition: all 150ms ease !important;
}
body.bssv-ps-page .bssv-ps-input:focus,
body.bssv-ps-page .bssv-ps-input:focus-visible {
	border-color: rgba(225, 29, 72, 0.65) !important;
	background: rgba(15, 18, 28, 0.92) !important;
	box-shadow:
		0 4px 28px rgba(225, 29, 72, 0.32),
		inset 0 0 24px rgba(225, 29, 72, 0.10),
		0 0 0 4px rgba(225, 29, 72, 0.10) !important;
	transform: translateY(-1px);
}

/* 6 — Result cards: subtle border + hover lift + tier glows */
body.bssv-ps-page .bssv-ps-card {
	background: rgba(13, 16, 24, 0.55) !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 16px !important;
	transition: all 180ms ease !important;
	backdrop-filter: blur(14px) saturate(1.3);
	-webkit-backdrop-filter: blur(14px) saturate(1.3);
}
body.bssv-ps-page .bssv-ps-card:hover {
	transform: translateY(-2px);
	border-color: rgba(247, 198, 69, 0.45) !important;
	box-shadow:
		0 14px 40px rgba(0, 0, 0, 0.50),
		0 0 0 1px rgba(247, 198, 69, 0.20) inset,
		0 0 28px rgba(247, 198, 69, 0.18) !important;
}
body.bssv-ps-page .bssv-ps-card.is-tier-verified:hover {
	border-color: rgba(0, 212, 255, 0.55) !important;
	box-shadow:
		0 14px 40px rgba(0, 0, 0, 0.50),
		0 0 28px rgba(0, 212, 255, 0.20) !important;
}
body.bssv-ps-page .bssv-ps-card.is-tier-elite {
	border-color: rgba(247, 198, 69, 0.30) !important;
}
body.bssv-ps-page .bssv-ps-card.is-tier-elite:hover {
	border-color: rgba(247, 198, 69, 0.75) !important;
	box-shadow:
		0 14px 40px rgba(0, 0, 0, 0.55),
		0 0 32px rgba(247, 198, 69, 0.30) !important;
}

/* 7 — CTA energy: gold gradient + glow + hover lift on the back-pill,
 *     trust strip cells, and quick-search chips */
body.bssv-ps-page .bssv-ps-back-to-search {
	background: linear-gradient(135deg, rgba(247, 198, 69, 0.16) 0%, rgba(225, 29, 72, 0.10) 100%) !important;
	border: 1px solid rgba(247, 198, 69, 0.45) !important;
	color: #F7C645 !important;
	box-shadow: 0 6px 20px rgba(247, 198, 69, 0.18);
}
body.bssv-ps-page .bssv-ps-back-to-search:hover {
	background: linear-gradient(135deg, rgba(247, 198, 69, 0.26) 0%, rgba(225, 29, 72, 0.18) 100%) !important;
	border-color: rgba(247, 198, 69, 0.85) !important;
	color: #FFE2A1 !important;
	transform: translateY(-2px) translateX(-2px);
	box-shadow: 0 12px 28px rgba(247, 198, 69, 0.32);
}
body.bssv-ps-page .bssv-ps-chip {
	background: rgba(255, 255, 255, 0.04) !important;
	border: 1px solid rgba(255, 255, 255, 0.10) !important;
	color: #cbd5e0 !important;
	transition: all 180ms ease !important;
}
body.bssv-ps-page .bssv-ps-chip:hover {
	background: rgba(225, 29, 72, 0.14) !important;
	border-color: rgba(225, 29, 72, 0.55) !important;
	color: #F4F5F7 !important;
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(225, 29, 72, 0.20);
}

/* 8 — Trust strip: soft cyan accent on the trust pillars */
body.bssv-ps-page .bssv-ps-trust-strip {
	background: rgba(13, 16, 24, 0.45) !important;
	border: 1px solid rgba(0, 212, 255, 0.14) !important;
	border-radius: 14px !important;
	box-shadow: 0 0 24px rgba(0, 212, 255, 0.04);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

/* 9 — Hook line: italic muted accent (re-assert v17.29 styling) */
body.bssv-ps-page .bssv-ps-hook-line {
	color: #cbd5e0 !important;
	opacity: 0.72 !important;
	font-style: italic !important;
	text-align: center !important;
}

/* 10 — Inline profile mount on /player-search/: scope admin-test.css
 *      backgrounds so they don't paint a flat block over our hero look.
 *      Only the inline profile container shows the admin-test render. */
body.bssv-ps-page .bssv-ps-inline-profile {
	background: transparent !important;
}
body.bssv-ps-page .bssv-ps-inline-profile .bssv-at-h2 {
	border-radius: 18px !important;
	overflow: hidden;
}
