/**
 * Premium Tournaments (2026-10-11): /premium/ + /premium/{slug}/.
 * Builds on cricket-hubs.css tokens (--psp-hb-*): cards carry their own
 * navy surface, so they read the same in dark and light mode.
 */

/* Outfit has no ₹ — borrow the rupee sign (only) from a system font. */
@font-face {
	font-family: 'PSP Rupee';
	src: local( 'Segoe UI' ), local( 'Roboto' ), local( 'Noto Sans' ), local( 'Helvetica Neue' ), local( 'Arial' );
	unicode-range: U+20B9;
}
.psp-premium-page {
	--psp-hb-display: 'PSP Rupee', 'Outfit', 'PT Sans', sans-serif;
}

.psp-premium {
	--pp-gold-1: #ffd27a;
	--pp-gold-2: #ffb020;
	--pp-silver: #cfd8e6;
	--pp-bronze: #e3a172;
	padding-bottom: 40px;
}

/* ---------- phase chip ---------- */

.psp-pchip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 11px;
	border-radius: 999px;
	font: 800 11.5px/1.2 var( --psp-hb-display );
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var( --psp-hb-ice );
	background: rgba( 234, 244, 255, 0.08 );
	border: 1px solid var( --psp-hb-line );
	white-space: nowrap;
}
.psp-pchip--open { color: #0c2a17; background: var( --psp-hb-good ); border-color: transparent; }
.psp-pchip--live { color: #fff; background: rgba( 255, 107, 107, 0.18 ); border-color: rgba( 255, 107, 107, 0.6 ); }
.psp-pchip--live i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var( --psp-hb-live );
	animation: psp-pp-pulse 1.4s ease-in-out infinite;
}
.psp-pchip--settled { color: var( --psp-hb-gold-ink ); background: var( --pp-gold-2 ); border-color: transparent; }
.psp-pchip--cancelled { color: var( --psp-hb-bad ); }
@keyframes psp-pp-pulse {
	50% { opacity: 0.3; transform: scale( 0.7 ); }
}

/* ---------- index cards ---------- */

.psp-pgrid {
	display: grid;
	grid-template-columns: repeat( auto-fill, minmax( 300px, 1fr ) );
	gap: 18px;
	margin-bottom: 10px;
}
.psp-pcard {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 20px;
	border-radius: 20px;
	overflow: hidden;
	isolation: isolate;
	color: var( --psp-hb-ice ) !important;
	text-decoration: none !important;
	background:
		radial-gradient( 120% 80% at 100% 0%, rgba( 255, 176, 32, 0.22 ), transparent 55% ),
		linear-gradient( 160deg, var( --psp-hb-navy-2 ), var( --psp-hb-deep ) );
	border: 1px solid rgba( 255, 176, 32, 0.28 );
	box-shadow: 0 16px 40px rgba( 0, 0, 0, 0.28 );
	transition: transform 0.25s var( --psp-hb-ease ), box-shadow 0.25s var( --psp-hb-ease ), border-color 0.25s ease;
	animation: psp-hb-rise 0.5s var( --psp-hb-ease ) both;
}
.psp-pcard::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image: var( --psp-pcard-img, none );
	background-size: cover;
	background-position: center;
	opacity: 0.22;
}
.psp-pcard:hover,
.psp-pcard:focus-visible {
	transform: translateY( -3px );
	border-color: rgba( 255, 176, 32, 0.6 );
	box-shadow: 0 22px 50px rgba( 0, 0, 0, 0.36 ), 0 0 0 1px rgba( 255, 176, 32, 0.2 );
}
.psp-pcard:focus-visible { outline: 2px solid var( --pp-gold-2 ); outline-offset: 3px; }
.psp-pcard--settled,
.psp-pcard--cancelled { border-color: var( --psp-hb-line ); }
.psp-pcard__top { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.psp-pcard__sponsor { font-size: 12.5px; color: var( --psp-hb-muted ); }
.psp-pcard__title { font-size: 23px; font-weight: 900; line-height: 1.15; }
.psp-pcard__tag { color: var( --psp-hb-muted ); font-size: 14.5px; }
.psp-pcard__pool {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 10px;
	padding: 12px 14px;
	border-radius: 14px;
	background: rgba( 5, 14, 28, 0.55 );
	border: 1px solid var( --psp-hb-line );
}
.psp-pcard__label { width: 100%; font-size: 11.5px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var( --pp-gold-1 ); }
.psp-pcard__pool b {
	font-family: var( --psp-hb-mono );
	font-size: 30px;
	background: linear-gradient( 90deg, var( --pp-gold-1 ), var( --pp-gold-2 ) );
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.psp-pcard__facts {
	display: grid;
	grid-template-columns: auto auto 1fr;
	gap: 14px;
	align-items: end;
	font-size: 12.5px;
	color: var( --psp-hb-muted );
}
.psp-pcard__facts > span:not( .psp-pcard__when ) { display: flex; flex-direction: column; }
.psp-pcard__facts b { font-size: 16px; color: var( --psp-hb-ice ); }
.psp-pcard__when { text-align: right; font-weight: 700; color: var( --pp-gold-1 ); }
.psp-pcard__cta { margin-top: 4px; justify-content: center; }

/* ---------- your entries ---------- */

.psp-pmine ul {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0 0 8px;
	padding: 0;
	list-style: none;
}
.psp-pmine li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	padding: 12px 16px;
	border-radius: 14px;
	background: linear-gradient( 180deg, var( --psp-hb-navy-2 ), var( --psp-hb-navy ) );
	border: 1px solid var( --psp-hb-line );
}
.psp-pmine li a { color: var( --psp-hb-ice ) !important; }
.psp-pstate {
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
	border: 1px solid var( --psp-hb-line );
}
.psp-pstate--pending { color: var( --pp-gold-1 ); border-color: rgba( 255, 176, 32, 0.5 ); }
.psp-pstate--confirmed { color: var( --psp-hb-good ); border-color: rgba( 79, 209, 139, 0.5 ); }
.psp-pstate--rejected { color: var( --psp-hb-bad ); border-color: rgba( 255, 143, 143, 0.5 ); }

/* ---------- how it works ---------- */

.psp-phow ol {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 220px, 1fr ) );
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: pp;
}
.psp-phow li {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 18px 18px 18px 64px;
	border-radius: 16px;
	background: linear-gradient( 180deg, var( --psp-hb-navy-2 ), var( --psp-hb-navy ) );
	border: 1px solid var( --psp-hb-line );
	counter-increment: pp;
}
.psp-phow li::before {
	content: counter( pp );
	position: absolute;
	left: 16px;
	top: 16px;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	font: 900 16px/1 var( --psp-hb-display );
	color: var( --psp-hb-gold-ink );
	background: var( --pp-gold-2 );
}
.psp-phow li span { font-size: 14px; color: var( --psp-hb-muted ); }

/* ---------- entry panel ---------- */

.psp-pentry {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 22px;
	border-radius: 20px;
	background:
		radial-gradient( 90% 70% at 0% 0%, rgba( 255, 176, 32, 0.16 ), transparent 60% ),
		linear-gradient( 160deg, var( --psp-hb-navy-2 ), var( --psp-hb-navy ) );
	border: 1px solid rgba( 255, 176, 32, 0.4 );
	box-shadow: 0 16px 40px rgba( 0, 0, 0, 0.22 );
	color: var( --psp-hb-ice );
}
.psp-pentry--confirmed { border-color: rgba( 79, 209, 139, 0.55 ); }
.psp-pentry h2 {
	margin: 0 !important;
	font: 900 26px/1.15 var( --psp-hb-display ) !important;
	color: var( --psp-hb-ice ) !important;
}
.psp-pentry p { margin: 0 !important; color: var( --psp-hb-muted ); }
.psp-pentry a:not( .psp-btn ) { color: var( --pp-gold-1 ) !important; }
.psp-pentry__row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 6px !important; }
.psp-pentry__note { color: var( --psp-hb-bad ) !important; }
.psp-pentry__msg:empty { display: none; }
.psp-pentry__msg { font-weight: 700; }
.psp-pentry__msg.is-error { color: var( --psp-hb-bad ) !important; }
.psp-pentry__msg.is-ok { color: var( --psp-hb-good ) !important; }

.psp-pme {
	display: grid;
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	gap: 10px;
	margin: 4px 0 0;
}
.psp-pme div {
	padding: 12px;
	border-radius: 12px;
	background: rgba( 5, 14, 28, 0.5 );
	border: 1px solid var( --psp-hb-line );
}
.psp-pme dt { font-size: 12px; color: var( --psp-hb-muted ); }
.psp-pme dd { margin: 2px 0 0; font: 800 22px/1.2 var( --psp-hb-mono ); color: var( --psp-hb-ice ); }

/* ---------- entry form ---------- */

.psp-pform { display: flex; flex-direction: column; gap: 10px; }
.psp-pform__methods {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 180px, 1fr ) );
	gap: 8px;
	margin: 0;
	padding: 0;
	border: 0;
}
.psp-pform__methods legend,
.psp-pform__label {
	margin-bottom: 4px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var( --pp-gold-1 );
}
.psp-pmethod {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 12px;
	border: 1px solid var( --psp-hb-line );
	background: rgba( 5, 14, 28, 0.45 );
	cursor: pointer;
	transition: border-color 0.2s ease, background 0.2s ease;
}
.psp-pmethod:has( input:checked ) { border-color: var( --pp-gold-2 ); background: rgba( 255, 176, 32, 0.1 ); }
.psp-pmethod.is-soon { opacity: 0.55; cursor: not-allowed; }
.psp-pmethod small { display: block; font-size: 11.5px; color: var( --psp-hb-muted ); }
.psp-pmethod input { accent-color: var( --pp-gold-2 ); }

.psp-ppay {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 16px;
	border-radius: 14px;
	background: rgba( 5, 14, 28, 0.55 );
	border: 1px dashed rgba( 255, 176, 32, 0.4 );
}
.psp-ppay__amount { display: flex; justify-content: space-between; align-items: baseline; }
.psp-ppay__amount span { color: var( --psp-hb-muted ); }
.psp-ppay__amount b { font: 800 26px/1 var( --psp-hb-mono ); color: var( --pp-gold-1 ); }
.psp-ppay__upi,
.psp-ppay__bank { display: flex; flex-direction: column; gap: 8px; }
.psp-ppay__copy { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.psp-ppay__copy code {
	padding: 6px 10px;
	border-radius: 8px;
	background: rgba( 234, 244, 255, 0.08 );
	color: var( --psp-hb-ice );
	font: 700 15px/1.3 var( --psp-hb-mono );
}
.psp-ppay__app { align-self: flex-start; }
.psp-ppay__qr { width: 180px; height: 180px; border-radius: 12px; background: #fff; padding: 8px; }
.psp-ppay__bank pre {
	margin: 0;
	padding: 10px 12px;
	border-radius: 10px;
	background: rgba( 234, 244, 255, 0.06 );
	color: var( --psp-hb-ice );
	font: 600 14px/1.5 var( --psp-hb-mono );
	white-space: pre-wrap;
}
.psp-pform input[type="text"] {
	width: 100%;
	min-height: 48px;
	padding: 10px 14px;
	border-radius: 12px;
	border: 1px solid rgba( 234, 244, 255, 0.2 );
	background: rgba( 5, 14, 28, 0.6 );
	color: var( --psp-hb-ice );
	font: 600 16px/1.3 var( --psp-hb-display );
}
.psp-pform input[type="text"]:focus {
	outline: none;
	border-color: var( --pp-gold-2 );
	box-shadow: 0 0 0 3px rgba( 255, 176, 32, 0.25 );
}
.psp-pform input[aria-invalid="true"] { border-color: var( --psp-hb-bad ); }
.psp-pcheck { display: flex; align-items: flex-start; gap: 10px; font-size: 14.5px; color: var( --psp-hb-ice ); cursor: pointer; }
.psp-pcheck input { width: 20px; height: 20px; margin-top: 1px; accent-color: var( --pp-gold-2 ); flex: none; }
.psp-pform__submit { align-self: flex-start; min-width: 220px; justify-content: center; }
.psp-pform__submit[disabled] { opacity: 0.6; cursor: progress; }

/* ---------- about / table / matches / rules ---------- */

.psp-pabout { color: var( --psp-hb-ice ); font-size: 16px; line-height: 1.6; }

.psp-ptable-wrap {
	overflow-x: auto;
	border-radius: 16px;
	border: 1px solid var( --psp-hb-line );
	background: linear-gradient( 180deg, var( --psp-hb-navy-2 ), var( --psp-hb-navy ) );
}
.psp-ptable { width: 100%; border-collapse: collapse; color: var( --psp-hb-ice ); font-size: 15px; }
.psp-ptable th {
	padding: 12px 14px;
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: left;
	color: var( --psp-hb-muted );
	border-bottom: 1px solid var( --psp-hb-line );
}
.psp-ptable td { padding: 11px 14px; border-bottom: 1px solid rgba( 234, 244, 255, 0.06 ); }
.psp-ptable .num { text-align: right; font-family: var( --psp-hb-mono ); }
.psp-ptable tr:last-child td { border-bottom: 0; }
.psp-ptable tr.is-paid td:first-child { box-shadow: inset 3px 0 0 var( --pp-gold-2 ); }
.psp-ptable tr.is-me { background: rgba( 58, 134, 224, 0.16 ); }
.psp-prank {
	display: inline-grid;
	place-items: center;
	min-width: 30px;
	height: 30px;
	padding: 0 6px;
	border-radius: 9px;
	font: 800 14px/1 var( --psp-hb-mono );
	background: rgba( 234, 244, 255, 0.07 );
}
.is-top-1 .psp-prank { background: linear-gradient( 135deg, var( --pp-gold-1 ), var( --pp-gold-2 ) ); color: var( --psp-hb-gold-ink ); }
.is-top-2 .psp-prank { background: var( --pp-silver ); color: #1c2533; }
.is-top-3 .psp-prank { background: var( --pp-bronze ); color: #2b1608; }
.psp-pyou {
	margin-left: 6px;
	padding: 2px 8px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	background: var( --psp-hb-blue );
	color: #fff;
}

.psp-pmatches { display: flex; flex-direction: column; gap: 8px; }
.psp-pmatch {
	display: grid;
	grid-template-columns: auto minmax( 0, 1fr ) auto;
	align-items: center;
	gap: 14px;
	padding: 12px 14px;
	border-radius: 14px;
	background: linear-gradient( 180deg, var( --psp-hb-navy-2 ), var( --psp-hb-navy ) );
	border: 1px solid var( --psp-hb-line );
}
.psp-pmatch--open { border-color: rgba( 255, 176, 32, 0.4 ); }
.psp-pmatch__teams { display: flex; }
.psp-pmatch__teams > * + * { margin-left: -8px; }
.psp-pmatch__name { display: flex; flex-direction: column; min-width: 0; color: var( --psp-hb-ice ); }
.psp-pmatch__name strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.psp-pmatch__name .psp-muted { font-size: 13px; }

.psp-prules {
	margin: 0;
	padding: 18px 18px 18px 40px;
	border-radius: 16px;
	background: linear-gradient( 180deg, var( --psp-hb-navy-2 ), var( --psp-hb-navy ) );
	border: 1px solid var( --psp-hb-line );
	color: var( --psp-hb-ice );
	font-size: 14.5px;
	line-height: 1.6;
}
.psp-prules li + li { margin-top: 6px; }

/* ---------- side: prizes + schedule ---------- */

.psp-pprizes__pool {
	font: 800 34px/1 var( --psp-hb-mono );
	background: linear-gradient( 90deg, var( --pp-gold-1 ), var( --pp-gold-2 ) );
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.psp-pprizes__list { display: flex; flex-direction: column; gap: 6px; margin: 4px 0 0; padding: 0; list-style: none; }
.psp-pprizes__list li {
	display: grid;
	grid-template-columns: 42px minmax( 0, 1fr ) auto;
	align-items: center;
	gap: 10px;
	font-size: 14px;
	color: var( --psp-hb-ice );
}
.psp-pprizes__pos { font-weight: 800; color: var( --psp-hb-muted ); }
.psp-pprizes__list li.is-top .psp-pprizes__pos { color: var( --pp-gold-1 ); }
.psp-pprizes__bar { position: relative; height: 6px; border-radius: 99px; background: rgba( 234, 244, 255, 0.07 ); overflow: hidden; }
.psp-pprizes__bar::after {
	content: "";
	position: absolute;
	inset: 0 auto 0 0;
	width: var( --w, 0% );
	border-radius: inherit;
	background: linear-gradient( 90deg, var( --pp-gold-2 ), var( --pp-gold-1 ) );
	transform-origin: left;
	animation: psp-pp-grow 0.9s var( --psp-hb-ease ) both;
}
.psp-pprizes__list b { font-family: var( --psp-hb-mono ); }
@keyframes psp-pp-grow {
	from { transform: scaleX( 0 ); }
}
.psp-pdates { display: flex; flex-direction: column; gap: 8px; margin: 0; }
.psp-pdates div { display: flex; justify-content: space-between; gap: 10px; font-size: 14px; }
.psp-pdates dt { color: var( --psp-hb-muted ); }
.psp-pdates dd { margin: 0; font-weight: 700; color: var( --psp-hb-ice ); text-align: right; }
.psp-pwhen { font-weight: 800; color: var( --pp-gold-1 ) !important; }

/* ---------- small screens ---------- */

@media ( max-width: 991px ) {
	.psp-premium--single.psp-hubbody--split { grid-template-columns: minmax( 0, 1fr ); }
	.psp-premium--single .psp-hubside { position: static; order: -1; }
}
@media ( max-width: 575px ) {
	.psp-pgrid { grid-template-columns: minmax( 0, 1fr ); }
	.psp-pentry { padding: 18px; }
	.psp-pentry h2 { font-size: 22px !important; }
	.psp-pme { grid-template-columns: minmax( 0, 1fr ) minmax( 0, 1fr ); }
	.psp-pme div:last-child { grid-column: 1 / -1; }
	.psp-ptable th:nth-child( 4 ),
	.psp-ptable td:nth-child( 4 ) { display: none; }
	.psp-ptable td,
	.psp-ptable th { padding: 10px; }
	.psp-pform__submit { width: 100%; }
	.psp-phow li { padding-left: 60px; }
}

@media ( prefers-reduced-motion: reduce ) {
	.psp-pcard,
	.psp-pprizes__bar::after,
	.psp-pchip--live i { animation: none; }
	.psp-pcard:hover { transform: none; }
}

/* ---------- light mode: text on the page itself ---------- */

html[data-theme="light"] .psp-premium .psp-pabout,
html[data-theme="light"] .psp-premium > .psp-empty strong { color: #0f2346; }
html[data-theme="light"] .psp-premium .psp-hubmain > .psp-muted,
html[data-theme="light"] .psp-premium > .psp-empty,
html[data-theme="light"] .psp-premium .psp-hubmain > .psp-empty { color: #4d5f80 !important; }

/* Parent theme + inline Customizer CSS style every <button> blue: keep ours. */
.psp-premium button.psp-btn--gold,
.psp-premium button.psp-btn--gold:hover,
.psp-premium button.psp-btn--gold:focus { background: var( --psp-hb-gold ) !important; color: var( --psp-hb-gold-ink ) !important; border-color: transparent !important; }
.psp-premium button.psp-btn--ghost,
.psp-premium button.psp-btn--ghost:hover,
.psp-premium button.psp-btn--ghost:focus { background: var( --psp-hb-glass ) !important; color: var( --psp-hb-ice ) !important; border: 1px solid rgba( 234, 244, 255, 0.2 ) !important; }

/* 18+ / loss notice (2026-10-11) */
.psp-prisk { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 24px; padding: 12px 16px; border: 1px solid rgba(245, 158, 11, .45); border-radius: 12px; background: rgba(245, 158, 11, .08); font-size: 14px; line-height: 1.5; }
.psp-prisk__badge { flex: none; display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; border: 2px solid #f59e0b; color: #f59e0b; font-weight: 800; font-size: 12px; }
.psp-hubbody--split > .psp-prisk { grid-column: 1 / -1; }

/* =====================================================================
 * Tournament page redesign (2026-10-11, mockup "Premium Tournament Page
 * Redesign"): hero + ticket, tabs, podium, inline picks, AI preview.
 * Every block carries its own navy surface (same in dark and light mode).
 * ===================================================================== */

.psp-pt-hero {
	position: relative;
	overflow: hidden;
	color: var( --psp-hb-ice );
	background:
		radial-gradient( 1200px 420px at 78% -10%, rgba( 255, 176, 32, 0.2 ), transparent 60% ),
		radial-gradient( 900px 400px at 0% 0%, rgba( 58, 134, 224, 0.22 ), transparent 60% ),
		var( --psp-hb-navy );
	border-bottom: 1px solid var( --psp-hb-line );
}
.psp-pt-hero::before { /* the tournament banner, faint, behind everything */
	content: "";
	position: absolute;
	inset: 0;
	background: var( --psp-pt-img, none ) center / cover no-repeat;
	opacity: 0.12;
	-webkit-mask-image: linear-gradient( 90deg, transparent, #000 70% );
	mask-image: linear-gradient( 90deg, transparent, #000 70% );
	pointer-events: none;
}
.psp-pt-hero__in {
	position: relative;
	max-width: 1240px;
	margin: 0 auto;
	padding: 36px 32px 40px;
	display: flex;
	flex-wrap: wrap;
	gap: 36px;
	align-items: center;
}
.psp-pt-hero__main { flex: 999 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.psp-pt-crumb { font-size: 13px; color: var( --psp-hb-muted ); }
.psp-pt-crumb a { color: var( --psp-hb-muted ) !important; text-decoration: none; }
.psp-pt-crumb a:hover { color: var( --psp-hb-ice ) !important; text-decoration: underline; }
.psp-pt-chips { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.psp-pt-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 12px;
	border-radius: 999px;
	border: 1px solid rgba( 234, 244, 255, 0.18 );
	font: 700 12px/1.2 var( --psp-hb-display );
	color: var( --psp-hb-ice );
}
.psp-pt-chip--mono, .psp-pt-chip--mono .psp-countdown { font-family: var( --psp-hb-mono ); }
.psp-pt-chip--ai { border-color: rgba( 58, 134, 224, 0.6 ); background: rgba( 58, 134, 224, 0.14 ); color: #cfe3ff; letter-spacing: 0.03em; }
.psp-pt-eyebrow { margin: 0 !important; font: 800 13px/1 var( --psp-hb-display ); letter-spacing: 0.14em; text-transform: uppercase; color: var( --psp-hb-gold ) !important; }
.psp-pt-title { margin: 0 !important; font: 900 clamp( 34px, 5vw, 62px ) / 1.03 var( --psp-hb-display ); letter-spacing: -0.02em; color: var( --psp-hb-ice ) !important; }
.psp-pt-sub { margin: 0 !important; max-width: 620px; font-size: 18px; line-height: 1.55; color: #c9d8ec !important; }
.psp-pt-stats { display: grid; grid-template-columns: repeat( 4, minmax( 0, 1fr ) ); gap: 12px; max-width: 720px; margin: 6px 0 0; }
.psp-pt-stats > div {
	display: flex;
	flex-direction: column-reverse;
	gap: 4px;
	padding: 14px 16px;
	border-radius: 14px;
	background: rgba( 234, 244, 255, 0.05 );
	border: 1px solid var( --psp-hb-line );
}
.psp-pt-stats dd { margin: 0; font: 700 25px/1.1 var( --psp-hb-mono ); color: var( --psp-hb-ice ); white-space: nowrap; }
.psp-pt-stats dd small { font-size: 15px; color: var( --psp-hb-muted ); }
.psp-pt-stats dt { font-size: 12.5px; color: var( --psp-hb-muted ); }
.psp-pt-stats .is-gold dd { color: var( --psp-hb-gold ); }

/* ticket: the entry panel, dressed as a ticket stub */
.psp-pt-ticket { flex: 1 1 340px; max-width: 420px; min-width: 0; }
.psp-pt-ticket .psp-pentry {
	margin: 0;
	padding: 24px;
	border-radius: 22px;
	background: linear-gradient( 160deg, #13294a, #0b1b33 );
	border: 1px solid rgba( 255, 176, 32, 0.45 );
	box-shadow: 0 30px 60px -20px rgba( 0, 0, 0, 0.7 ), 0 0 0 6px rgba( 255, 176, 32, 0.06 );
}
.psp-pt-ticket .psp-pentry > h2 { padding-bottom: 14px; border-bottom: 2px dashed rgba( 234, 244, 255, 0.16 ); }
.psp-pt-ticket .psp-pform__submit { align-self: stretch; min-width: 0; min-height: 52px; font-size: 17px; }
.psp-pt-ticket .psp-pentry--confirmed { border-color: rgba( 79, 209, 139, 0.6 ); }

/* body */
.psp-pt-body { max-width: 1240px; margin: 0 auto; padding: 24px 32px 48px; }
.psp-pt-body > .psp-prisk { margin-bottom: 26px; color: var( --psp-hb-ice ); background: rgba( 245, 158, 11, 0.1 ); }
.psp-pt-cols { display: flex; flex-wrap: wrap; gap: 28px; align-items: flex-start; }
.psp-pt-main { flex: 999 1 620px; min-width: 0; display: flex; flex-direction: column; gap: 22px; }
.psp-pt-side { flex: 1 1 300px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }

/* tabs (no JS = every panel shows, tabs hidden) */
.psp-pt-tabs { display: none; }
.psp-pt-tabs.is-ready {
	display: flex;
	gap: 6px;
	padding: 6px;
	border-radius: 16px;
	background: var( --psp-hb-navy );
	border: 1px solid var( --psp-hb-line );
	max-width: 100%;
	width: max-content;
	overflow-x: auto;
}
.psp-pt-tabs button {
	min-height: 44px;
	padding: 0 18px;
	border: 0;
	border-radius: 11px;
	background: transparent;
	color: var( --psp-hb-ice );
	font: 700 15px/1 var( --psp-hb-display );
	white-space: nowrap;
	cursor: pointer;
	transition: background 0.2s var( --psp-hb-ease ), color 0.2s var( --psp-hb-ease );
}
.psp-pt-tabs button:hover { background: rgba( 234, 244, 255, 0.07 ); }
.psp-pt-tabs button[aria-selected="true"] { background: var( --psp-hb-gold ); color: var( --psp-hb-gold-ink ); font-weight: 800; }
.psp-pt-tabs button:focus-visible { outline: 3px solid #9cc6ff; outline-offset: 2px; }
.psp-pt-tabs__n { margin-left: 6px; padding: 2px 8px; border-radius: 999px; background: #ff6b6b; color: #fff; font-size: 12px; }
.psp-pt-panel[hidden] { display: none !important; }
.psp-pt-panel { display: flex; flex-direction: column; gap: 14px; }

/* podium */
.psp-pt-podium { display: grid; grid-template-columns: repeat( 3, minmax( 0, 1fr ) ); gap: 14px; align-items: end; margin: 0; padding: 0; list-style: none; }
.psp-pt-podium__p {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	padding: 18px 12px;
	border-radius: 18px;
	text-align: center;
	color: var( --psp-hb-ice );
	background: linear-gradient( 180deg, #13294a, var( --psp-hb-navy ) );
	border: 1px solid var( --psp-hb-line );
	min-width: 0;
}
.psp-pt-podium__p--1 { padding-top: 34px; border: 2px solid var( --psp-hb-gold ); box-shadow: 0 20px 40px -18px rgba( 255, 176, 32, 0.55 ); }
.psp-pt-podium__p--2 { padding-top: 24px; border-color: rgba( 207, 216, 230, 0.5 ); }
.psp-pt-podium__p--3 { border-color: rgba( 227, 161, 114, 0.55 ); }
.psp-pt-podium__p.is-me { box-shadow: 0 0 0 3px #3a86e0; }
.psp-pt-podium__medal { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; font: 900 19px/1 var( --psp-hb-display ); background: var( --pp-silver ); color: var( --psp-hb-navy ); }
.psp-pt-podium__p--1 .psp-pt-podium__medal { background: linear-gradient( 180deg, var( --pp-gold-1 ), var( --pp-gold-2 ) ); color: var( --psp-hb-gold-ink ); }
.psp-pt-podium__p--3 .psp-pt-podium__medal { background: var( --pp-bronze ); color: var( --psp-hb-gold-ink ); }
.psp-pt-podium__name { font: 800 17px/1.2 var( --psp-hb-display ); max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.psp-pt-podium__pts { font: 700 13px/1 var( --psp-hb-mono ); color: var( --psp-hb-muted ); }
.psp-pt-podium__prize { margin-top: 4px; font: 700 21px/1 var( --psp-hb-mono ); color: var( --psp-hb-gold ); }

/* inline picks */
.psp-pt-note { margin: 0 !important; padding: 12px 16px; border-radius: 12px; background: #0f2a4d; border: 1px solid rgba( 58, 134, 224, 0.5 ); color: var( --psp-hb-ice ) !important; font-size: 14.5px; }
.psp-pt-note a { color: var( --pp-gold-1 ) !important; font-weight: 700; }
.psp-pt-picks { display: flex; flex-direction: column; gap: 12px; }
.psp-pt-match {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 18px;
	align-items: center;
	padding: 16px 18px;
	border-radius: 16px;
	color: var( --psp-hb-ice );
	background: var( --psp-hb-navy );
	border: 1px solid var( --psp-hb-line );
	transition: border-color 0.2s var( --psp-hb-ease ), transform 0.2s var( --psp-hb-ease );
}
.psp-pt-match--open:hover { border-color: rgba( 255, 176, 32, 0.45 ); transform: translateY( -1px ); }
.psp-pt-match__head { flex: 1 1 240px; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.psp-pt-match__meta { margin: 0 !important; display: flex; gap: 8px; align-items: center; font: 600 12.5px/1.2 var( --psp-hb-mono ); color: var( --psp-hb-muted ) !important; }
.psp-pt-state { padding: 3px 9px; border-radius: 999px; font: 800 11px/1.2 var( --psp-hb-display ); letter-spacing: 0.06em; text-transform: uppercase; background: rgba( 234, 244, 255, 0.12 ); color: var( --psp-hb-ice ); }
.psp-pt-state--open { background: var( --psp-hb-good ); color: #0c2a17; }
.psp-pt-state--resolved { background: var( --psp-hb-gold ); color: var( --psp-hb-gold-ink ); }
.psp-pt-match__teams { margin: 0 !important; display: flex; align-items: center; gap: 6px; font: 800 18px/1.2 var( --psp-hb-display ) !important; color: var( --psp-hb-ice ) !important; }
.psp-pt-match__teams > span:last-child { margin-left: 4px; min-width: 0; }
.psp-pt-match__link { font-size: 13px; font-weight: 700; color: var( --pp-gold-1 ) !important; }
.psp-pt-pick { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.psp-pt-pick__label { width: 48px; font-size: 12px; color: var( --psp-hb-muted ); }
.psp-pt-pick__msg { flex-basis: 100%; font-size: 12.5px; font-weight: 700; color: var( --psp-hb-good ); text-align: right; }
.psp-pt-pick__msg:empty { display: none; }
.psp-pt-opt {
	min-height: 44px;
	min-width: 64px;
	padding: 0 14px;
	border-radius: 12px;
	border: 1px solid rgba( 234, 244, 255, 0.24 );
	background: transparent;
	color: var( --psp-hb-ice );
	font: 800 14px/1 var( --psp-hb-display );
	cursor: pointer;
	transition: background 0.15s, border-color 0.15s, transform 0.15s;
}
.psp-pt-opt:not( :disabled ):hover { border-color: var( --psp-hb-gold ); transform: translateY( -1px ); }
.psp-pt-opt:active { transform: scale( 0.97 ); }
.psp-pt-opt:focus-visible { outline: 3px solid #9cc6ff; outline-offset: 2px; }
.psp-pt-opt:disabled { cursor: default; opacity: 0.75; }
.psp-pt-opt.is-mine { background: var( --psp-hb-gold ); border-color: var( --psp-hb-gold ); color: var( --psp-hb-gold-ink ); opacity: 1; }
.psp-pt-opt.is-mine::before { content: "\2713\00a0"; }
.psp-pt-opt.is-right { background: rgba( 79, 209, 139, 0.18 ); border-color: var( --psp-hb-good ); color: #8ff0b7; opacity: 1; }
.psp-pt-opt.is-wrong { background: rgba( 255, 107, 107, 0.14 ); border-color: rgba( 255, 107, 107, 0.6 ); color: #ffb4b4; text-decoration: line-through; opacity: 1; }
.psp-pt-opt.is-wrong::before { content: "\2715\00a0"; }
.psp-pt-opt.is-pending { opacity: 0.6; }
.psp-pt-more summary { cursor: pointer; padding: 10px 0; font-weight: 700; color: var( --pp-gold-1 ); }
.psp-pt-more[open] { display: flex; flex-direction: column; gap: 12px; }

/* AI preview */
.psp-pt-preview { padding: 22px 24px; border-radius: 18px; color: var( --psp-hb-ice ); background: linear-gradient( 135deg, rgba( 58, 134, 224, 0.2 ), rgba( 10, 30, 56, 0.96 ) ), var( --psp-hb-navy ); border: 1px solid rgba( 58, 134, 224, 0.45 ); }
.psp-pt-preview__eyebrow { margin: 0 !important; display: flex; gap: 8px; align-items: center; font: 800 12px/1 var( --psp-hb-display ); letter-spacing: 0.12em; text-transform: uppercase; color: #9cc6ff !important; }
.psp-pt-preview h2 { margin: 10px 0 8px !important; font: 800 22px/1.2 var( --psp-hb-display ) !important; color: var( --psp-hb-ice ) !important; }
.psp-pt-preview__body p { margin: 0 0 12px !important; font-size: 15.5px; line-height: 1.65; color: #c9d8ec !important; }
.psp-pt-preview__body p:last-child { margin-bottom: 0 !important; }

/* sidebar "You're in" card */
.psp-pt-card { padding: 20px 22px; border-radius: 18px; color: var( --psp-hb-ice ); background: var( --psp-hb-navy ); border: 1px solid var( --psp-hb-line ); }
.psp-pt-card--you { border-color: rgba( 58, 134, 224, 0.55 ); }
.psp-pt-card__eyebrow { margin: 0 !important; font: 800 12px/1 var( --psp-hb-display ); letter-spacing: 0.12em; text-transform: uppercase; color: #9cc6ff !important; }
.psp-pt-card h2 { margin: 10px 0 14px !important; font: 800 26px/1 var( --psp-hb-display ) !important; color: var( --psp-hb-ice ) !important; }
.psp-pt-card h2 small { font-size: 15px; color: var( --psp-hb-muted ); }
.psp-pt-you { display: grid; grid-template-columns: repeat( 3, minmax( 0, 1fr ) ); gap: 10px; margin: 0; }
.psp-pt-you div { display: flex; flex-direction: column-reverse; gap: 4px; }
.psp-pt-you dd { margin: 0; font: 700 19px/1 var( --psp-hb-mono ); }
.psp-pt-you dt { font-size: 12px; color: var( --psp-hb-muted ); }
.psp-pt-you .is-gold dd { color: var( --psp-hb-gold ); }
.psp-pt-card__cta { display: flex; justify-content: center; align-items: center; margin-top: 16px; min-height: 46px; border-radius: 12px; background: rgba( 255, 176, 32, 0.12 ); border: 1px solid rgba( 255, 176, 32, 0.5 ); font: 800 15px/1 var( --psp-hb-display ); color: var( --pp-gold-1 ) !important; text-decoration: none !important; }
.psp-pt-card__cta:hover { background: rgba( 255, 176, 32, 0.2 ); }

/* light mode: the only text that sits on the page itself */
html[data-theme="light"] .psp-pt-body > .psp-prisk { color: #3b2a05; background: #fff6e0; }
html[data-theme="light"] .psp-pt-more summary { color: #8a5a00; }

@media ( max-width: 760px ) {
	.psp-pt-hero__in { padding: 22px 16px 24px; gap: 20px; }
	.psp-pt-sub { font-size: 15.5px; }
	.psp-pt-stats { grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); gap: 8px; }
	.psp-pt-stats > div { padding: 11px 12px; }
	.psp-pt-stats dd { font-size: 20px; }
	.psp-pt-ticket { max-width: none; }
	.psp-pt-ticket .psp-pentry { padding: 18px; }
	.psp-pt-body { padding: 16px 16px 40px; }
	.psp-pt-tabs.is-ready { display: grid; grid-template-columns: repeat( 3, minmax( 0, 1fr ) ); width: auto; }
	.psp-pt-tabs button { padding: 0 6px; font-size: 13.5px; }
	.psp-pt-tabs__n { display: none; }
	.psp-pt-podium { gap: 8px; }
	.psp-pt-podium__p { padding: 14px 6px; }
	.psp-pt-podium__p--1 { padding-top: 24px; }
	.psp-pt-podium__name { font-size: 14px; }
	.psp-pt-podium__prize { font-size: 16px; }
	.psp-pt-match { padding: 14px; }
	.psp-pt-pick { width: 100%; display: grid; grid-template-columns: 52px repeat( 2, minmax( 0, 1fr ) ); }
	.psp-pt-pick__msg { grid-column: 1 / -1; }
}

@media ( prefers-reduced-motion: reduce ) {
	.psp-pt-match, .psp-pt-opt, .psp-pt-tabs button { transition: none; }
	.psp-pt-match--open:hover, .psp-pt-opt:not( :disabled ):hover { transform: none; }
}

/* ---------- Chrome QA fixes (2026-10-11) ---------- */

/* Gold tokens for the whole page: the hero sits outside .psp-premium, so
   the "Final" chip had no background. */
.psp-premium-page {
	--pp-gold-1: #ffd27a;
	--pp-gold-2: #ffb020;
	--pp-silver: #cfd8e6;
	--pp-bronze: #e3a172;
}

/* The parent theme's button[type="submit"] (blue) out-ranked .psp-btn--gold. */
.psp-pform button.psp-pform__submit.psp-btn--gold {
	background: var( --psp-hb-gold );
	border: 0;
	color: var( --psp-hb-gold-ink );
	box-shadow: 0 10px 24px -8px rgba( 255, 176, 32, 0.6 );
}
.psp-pform button.psp-pform__submit.psp-btn--gold:hover,
.psp-pform button.psp-pform__submit.psp-btn--gold:focus-visible { background: var( --pp-gold-1 ); color: var( --psp-hb-gold-ink ); }

/* "You're in" figures inside the narrow ticket: no mid-number wraps. */
.psp-pt-ticket .psp-pme { grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); }
.psp-pt-ticket .psp-pme div:last-child { grid-column: 1 / -1; }
.psp-pt-ticket .psp-pme dd { font-size: 20px; white-space: nowrap; }

/* Tabs land below the sticky site header when a link opens them. */
.psp-pt-tabs { scroll-margin-top: 150px; }

/* "Saving… / Saved" no longer pushes the buttons onto a new line. */
.psp-pt-pick { position: relative; }
.psp-pt-pick__msg {
	position: absolute;
	right: 0;
	bottom: calc( 100% + 2px );
	flex-basis: auto;
	font-size: 11.5px;
	white-space: nowrap;
	pointer-events: none;
}
@media ( max-width: 760px ) {
	.psp-pt-pick__msg { grid-column: auto; }
}

/* Light mode: notes that sit on the page itself. */
html[data-theme="light"] .psp-pt-panel > .psp-muted,
html[data-theme="light"] .psp-pt-panel > .psp-empty { color: #4d5f80 !important; }

/* Wallet QA (2026-10-11): a tall paid ticket no longer pushes the title to mid-hero. */
.psp-pt-hero__in { align-items: flex-start; }
@media ( min-width: 761px ) { .psp-pt-hero__main { padding-top: 6px; } }

/* ---------- 2026-10-12: points-only (free, no money) + premium look ---------- */
.is-points .psp-prize-bit { display: none !important; }
.psp-pt-hero.is-points .psp-pt-stats .is-gold dd { font-family: var( --psp-hb-display ); }
.psp-pt-hero.is-premium { box-shadow: inset 0 -3px 0 #ffb020; }
.psp-pt-hero.is-premium .psp-pt-eyebrow::before { content: "\265B\00a0"; }
.psp-pcard.is-premium { border-color: rgba( 255, 176, 32, 0.6 ) !important; box-shadow: 0 0 0 1px rgba( 255, 176, 32, 0.35 ), 0 18px 40px -20px rgba( 255, 176, 32, 0.5 ); }
.psp-pt-cards { display: flex; flex-direction: column; gap: 16px; }
.psp-pt-cards .proace-contest { margin: 0; }

/* =====================================================================
 * 2026-10-12 — Premium Tournaments index, paid only (approved mockup
 * "3 · Premium Tournaments — paid only") + match winners / grand prize.
 * ===================================================================== */

.psp-pi-hero {
	position: relative;
	color: var( --psp-hb-ice );
	background:
		radial-gradient( 1100px 500px at 75% -10%, rgba( 233, 180, 76, 0.18 ), transparent 60% ),
		radial-gradient( 800px 400px at 0% 0%, rgba( 58, 134, 224, 0.14 ), transparent 60% ),
		#040b17;
	border-bottom: 1px solid rgba( 233, 180, 76, 0.22 );
}
.psp-pi-hero__in { max-width: 1240px; margin: 0 auto; padding: 40px 32px 34px; display: flex; flex-wrap: wrap; gap: 28px; align-items: flex-end; justify-content: space-between; }
.psp-pi-hero__main { flex: 1 1 560px; min-width: 0; }
.psp-pi-seal-row { margin: 16px 0 10px !important; }
.psp-pi-seal {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 11px 5px 7px;
	border-radius: 999px;
	background: linear-gradient( 180deg, #ffe2a1, #e9b44c );
	color: #2a1a00;
	font: 800 11px/1 var( --psp-hb-display );
	letter-spacing: 0.1em;
	text-transform: uppercase;
	box-shadow: 0 4px 14px -4px rgba( 233, 180, 76, 0.6 );
}
.psp-pi-seal--icon { padding: 7px; }
.psp-pi-title { margin: 0 !important; font: 900 clamp( 36px, 5vw, 58px ) / 1 var( --psp-hb-display ) !important; letter-spacing: -0.02em; color: #fff !important; }
.psp-pi-sub { margin: 14px 0 0 !important; max-width: 640px; font-size: 17px; line-height: 1.55; color: #c9d6e8 !important; }
.psp-pi-stats { flex: 0 1 430px; margin: 0; display: grid; grid-template-columns: repeat( 3, minmax( 0, 1fr ) ); gap: 12px; }
.psp-pi-stats > div { display: flex; flex-direction: column-reverse; gap: 5px; padding: 16px; border-radius: 16px; background: rgba( 234, 244, 255, 0.05 ); border: 1px solid rgba( 234, 244, 255, 0.12 ); }
.psp-pi-stats > .is-gold { background: rgba( 233, 180, 76, 0.08 ); border-color: rgba( 233, 180, 76, 0.35 ); }
.psp-pi-stats dd { margin: 0; font: 700 24px/1 var( --psp-hb-mono ); color: #fff; white-space: nowrap; }
.psp-pi-stats .is-gold dd { color: #ffd27a; font-family: var( --psp-hb-display ); font-weight: 800; }
.psp-pi-stats dt { font: 600 12px/1.2 var( --psp-hb-display ); color: #8fa6c4; }
.psp-pi-stats .is-gold dt { color: #a99a7a; }

.psp-pi-body { max-width: 1240px; margin: 0 auto; padding: 22px 32px 72px; color: var( --psp-hb-ice ); }
.psp-pi-body > .psp-prisk { margin: 0; color: var( --psp-hb-ice ); }
.psp-pi-sec { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; margin: 44px 0 16px; }
.psp-pi-sec h2 { margin: 0 !important; font: 800 26px/1 var( --psp-hb-display ) !important; color: #fff !important; }
.psp-pi-sec span { font-size: 13.5px; color: #8fa6c4; }

/* buttons + pills */
.psp-pi-gold,
.psp-pi-ghost {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 22px;
	border-radius: 13px;
	font: 800 15px/1 var( --psp-hb-display );
	text-decoration: none !important;
	white-space: nowrap;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}
.psp-pi-gold { background: linear-gradient( 180deg, #ffd27a, #ffb020 ); color: #1a1200 !important; box-shadow: 0 12px 24px -10px rgba( 255, 176, 32, 0.8 ); }
.psp-pi-gold:hover { transform: translateY( -1px ); box-shadow: 0 16px 28px -10px rgba( 255, 176, 32, 0.95 ); }
.psp-pi-ghost { border: 1px solid rgba( 233, 180, 76, 0.5 ); color: #ffd27a !important; }
.psp-pi-ghost:hover { background: rgba( 233, 180, 76, 0.1 ); }
.psp-pi-gold:focus-visible,
.psp-pi-ghost:focus-visible { outline: 3px solid #9cc6ff; outline-offset: 2px; }
.psp-pi-pill { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 999px; font: 800 11px/1 var( --psp-hb-display ); letter-spacing: 0.08em; text-transform: uppercase; white-space: nowrap; }
.psp-pi-pill .psp-countdown, .psp-pi-pill .psp-countdown * { font: inherit; letter-spacing: 0.04em; color: inherit !important; }
.psp-pi-pill--open { background: rgba( 79, 209, 139, 0.16 ); color: #7ee3a8; border: 1px solid rgba( 79, 209, 139, 0.45 ); }
.psp-pi-pill--live { background: rgba( 255, 92, 92, 0.16 ); color: #ff9a9a; border: 1px solid rgba( 255, 92, 92, 0.5 ); }
.psp-pi-pill--res { background: rgba( 233, 180, 76, 0.14 ); color: #ffd27a; border: 1px solid rgba( 233, 180, 76, 0.45 ); }
.psp-pi-dot { width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.psp-pi-pill--live .psp-pi-dot { animation: psp-pp-pulse 1.4s ease-in-out infinite; }

/* your tournaments */
.psp-pi-mine { display: flex; flex-direction: column; gap: 10px; }
.psp-pi-mine__row {
	display: grid;
	grid-template-columns: auto minmax( 0, 1fr ) auto auto;
	gap: 18px;
	align-items: center;
	padding: 16px 20px;
	border-radius: 18px;
	background: #0b1b33;
	border: 1px solid rgba( 58, 134, 224, 0.4 );
	color: var( --psp-hb-ice ) !important;
	text-decoration: none !important;
	transition: border-color 0.2s ease, transform 0.2s ease;
}
.psp-pi-mine__row:hover { border-color: rgba( 233, 180, 76, 0.6 ); transform: translateY( -1px ); }
.psp-pi-mine__name b { display: block; font: 800 17px/1.2 var( --psp-hb-display ); color: #fff; }
.psp-pi-mine__name small { display: block; margin-top: 3px; font-size: 13px; color: #8fa6c4; }
.psp-pi-mine__k { text-align: right; }
.psp-pi-mine__k b { display: block; font: 700 20px/1 var( --psp-hb-mono ); color: #fff; white-space: nowrap; }
.psp-pi-mine__k b small { font-size: 13px; color: #8fa6c4; }
.psp-pi-mine__k > small { display: block; margin-top: 5px; font-size: 12px; color: #8fa6c4; white-space: nowrap; }
.psp-pi-mine__k.is-gold b { color: #ffd27a; font-family: var( --psp-hb-display ); font-weight: 800; }
.psp-pi-mine__k.is-gold > small { color: #a99a7a; }

/* open for entry: featured + side column */
.psp-pi-open { display: grid; grid-template-columns: minmax( 0, 1.35fr ) minmax( 0, 1fr ); gap: 22px; align-items: start; }
.psp-pi-open__side { display: flex; flex-direction: column; gap: 22px; }
.psp-pi-feature,
.psp-pi-card {
	border-radius: 22px;
	background: linear-gradient( 180deg, #15243e, #0b1a31 );
	box-shadow: 0 0 0 1.5px rgba( 233, 180, 76, 0.75 ), 0 24px 50px -28px rgba( 233, 180, 76, 0.4 );
	color: var( --psp-hb-ice );
	overflow: hidden;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.psp-pi-feature:hover,
.psp-pi-card:hover { transform: translateY( -2px ); box-shadow: 0 0 0 1.5px #ffd27a, 0 30px 56px -26px rgba( 233, 180, 76, 0.5 ); }
.psp-pi-feature__banner {
	position: relative;
	display: flex;
	align-items: flex-end;
	height: 150px;
	padding: 18px 22px;
	overflow: hidden;
	background: linear-gradient( 115deg, var( --c1 ) 0%, #0b1a31 50%, var( --c2 ) 125% );
	text-decoration: none !important;
}
.psp-pi-feature__banner img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.35; }
.psp-pi-feature__banner::after { content: ""; position: absolute; inset: 0; background: linear-gradient( 180deg, transparent 40%, rgba( 11, 26, 49, 0.85 ) ); }
.psp-pi-feature__vs { position: relative; z-index: 1; display: flex; align-items: center; gap: 12px; }
.psp-pi-feature__vs i { font: 900 20px/1 var( --psp-hb-display ); font-style: normal; color: #cfe0f5; }
.psp-pi-feature__vs small { margin-left: 6px; font: 800 11px/1 var( --psp-hb-display ); letter-spacing: 0.12em; text-transform: uppercase; color: #cfe0f5; }
.psp-pi-crest { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background-size: cover; background-position: center; box-shadow: inset 0 0 0 2px rgba( 255, 255, 255, 0.3 ), 0 6px 16px -6px rgba( 0, 0, 0, 0.6 ); font: 800 14px/1 var( --psp-hb-display ); color: #fff; }
.psp-pi-feature__banner .psp-pi-pill { position: absolute; z-index: 1; top: 16px; right: 16px; }
.psp-pi-feature__body { padding: 22px; display: flex; flex-direction: column; gap: 16px; }
.psp-pi-feature h3,
.psp-pi-card h3,
.psp-pi-done__card h3 { margin: 0 !important; font: 900 24px/1.1 var( --psp-hb-display ) !important; letter-spacing: -0.01em; }
.psp-pi-feature h3 a,
.psp-pi-card h3 a,
.psp-pi-done__card h3 a { color: #fff !important; text-decoration: none !important; }
.psp-pi-feature h3 a:hover,
.psp-pi-card h3 a:hover,
.psp-pi-done__card h3 a:hover { color: #ffd27a !important; }
.psp-pi-meta { margin: 6px 0 0 !important; font-size: 13px; line-height: 1.45; color: #b6a684 !important; }
.psp-pi-kpis { margin: 0; display: grid; grid-template-columns: repeat( auto-fit, minmax( 110px, 1fr ) ); gap: 14px; }
.psp-pi-kpis--2 { grid-template-columns: repeat( 2, minmax( 0, 1fr ) ); }
.psp-pi-kpis > div { display: flex; flex-direction: column-reverse; gap: 5px; min-width: 0; }
.psp-pi-kpis dd { margin: 0; font: 700 24px/1 var( --psp-hb-mono ); color: #fff; white-space: nowrap; }
.psp-pi-kpis dd small { font-size: 14px; color: #8fa6c4; }
.psp-pi-kpis .is-gold dd { color: #ffd27a; font-family: var( --psp-hb-display ); font-weight: 800; }
.psp-pi-kpis dt { font-size: 12px; color: #a99a7a; }
.psp-pi-spots > div { display: flex; justify-content: space-between; margin-bottom: 8px; font-size: 12.5px; font-weight: 600; color: #b6a684; }
.psp-pi-bar { display: block; height: 8px; border-radius: 99px; background: rgba( 234, 244, 255, 0.1 ); overflow: hidden; }
.psp-pi-bar i { display: block; height: 100%; min-width: 4px; border-radius: 99px; background: linear-gradient( 90deg, #e9b44c, #ffd27a ); }
.psp-pi-podium { margin: 0 !important; padding: 0 !important; list-style: none !important; display: grid; grid-template-columns: repeat( 3, minmax( 0, 1fr ) ); gap: 8px; }
.psp-pi-podium li { display: flex; align-items: center; gap: 10px; min-width: 0; margin: 0 !important; padding: 10px 12px; border-radius: 12px; background: rgba( 234, 244, 255, 0.05 ); }
.psp-pi-podium li > span:last-child { min-width: 0; }
.psp-pi-podium b { display: block; font: 800 13.5px/1.2 var( --psp-hb-display ); color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.psp-pi-podium small { display: block; margin-top: 3px; font: 700 11px/1 var( --psp-hb-mono ); color: #9fb3cf; }
.psp-pi-md { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; font: 900 13px/1 var( --psp-hb-display ); background: #cfd8e6; color: #0a1e38; }
.psp-pi-md--1 { background: linear-gradient( 180deg, #ffd27a, #ffb020 ); color: #1a1200; }
.psp-pi-md--3 { background: #e3a172; color: #1a1200; }
.psp-pi-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.psp-pi-actions .psp-pi-gold { flex: 1; }

.psp-pi-card { padding: 22px; display: flex; flex-direction: column; gap: 14px; }
.psp-pi-card__top { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.psp-pi-card__fee { font: 700 12px/1 var( --psp-hb-mono ); color: #b6a684; white-space: nowrap; }
.psp-pi-card .psp-pi-meta { margin-top: -6px !important; }
.psp-pi-grid { display: grid; grid-template-columns: repeat( auto-fill, minmax( 320px, 1fr ) ); gap: 22px; }

.psp-pi-how { padding: 22px; border-radius: 22px; background: #0b1b33; box-shadow: 0 0 0 1px rgba( 234, 244, 255, 0.14 ); color: var( --psp-hb-ice ); }
.psp-pi-how__h { margin: 0 0 12px !important; font: 800 11px/1 var( --psp-hb-display ); letter-spacing: 0.14em; text-transform: uppercase; color: #8ec1ff !important; }
.psp-pi-how ol { margin: 0 !important; padding-left: 20px !important; display: flex; flex-direction: column; gap: 8px; font-size: 14px; line-height: 1.5; color: #c9d6e8; }
.psp-pi-how li { margin: 0 !important; }
.psp-pi-how b { color: #fff; }

.psp-pi-done { display: grid; grid-template-columns: repeat( auto-fill, minmax( 280px, 1fr ) ); gap: 16px; }
.psp-pi-done__card { display: flex; flex-direction: column; gap: 10px; padding: 18px; border-radius: 18px; background: #0b1b33; border: 1px solid rgba( 234, 244, 255, 0.1 ); color: var( --psp-hb-ice ); }
.psp-pi-done__card h3 { font-size: 19px !important; }
.psp-pi-done__card p { margin: 0 !important; font-size: 13.5px; color: #9fb3cf !important; }
.psp-pi-done__card p b { color: #fff; }
.psp-pi-done__ph { display: flex; align-items: center; justify-content: center; min-height: 110px; margin: 0 !important; padding: 18px; border-radius: 18px; border: 1px dashed rgba( 234, 244, 255, 0.18 ); text-align: center; font-size: 13.5px; color: #8fa6c4 !important; }

.psp-pi-empty { margin-top: 30px; padding: 40px 28px; border-radius: 22px; text-align: center; background: linear-gradient( 180deg, #15243e, #0b1a31 ); box-shadow: 0 0 0 1.5px rgba( 233, 180, 76, 0.5 ); display: flex; flex-direction: column; align-items: center; gap: 14px; color: var( --psp-hb-ice ); }
.psp-pi-empty h2 { margin: 0 !important; font: 800 26px/1.15 var( --psp-hb-display ) !important; color: #fff !important; }
.psp-pi-empty p { margin: 0 !important; max-width: 560px; color: #c9d6e8 !important; }

/* tournament page: premium cards side by side, match winners, grand prize */
.psp-pt-cards { display: grid; grid-template-columns: repeat( auto-fill, minmax( 330px, 1fr ) ); gap: 22px; align-items: start; }
.psp-pt-cards > .psp-pt-more { grid-column: 1 / -1; }
.psp-pt-cards > .psp-pt-more[open] { display: grid; grid-template-columns: repeat( auto-fill, minmax( 330px, 1fr ) ); gap: 22px; }
.psp-pt-cards > .psp-pt-more > summary { grid-column: 1 / -1; }
.psp-pt-cards .proace-pcard { margin: 0; }
.psp-pt-crownn { font: 700 13px/1 var( --psp-hb-mono ); color: #ffd27a; white-space: nowrap; }

.psp-pt-mw { padding: 20px; border-radius: 20px; background: linear-gradient( 180deg, #15243e, #0b1a31 ); box-shadow: 0 0 0 1px rgba( 233, 180, 76, 0.45 ); color: var( --psp-hb-ice ); }
.psp-pt-mw__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 14px; margin-bottom: 14px; }
.psp-pt-mw__head h2 { margin: 0 !important; font: 800 20px/1 var( --psp-hb-display ) !important; color: #fff !important; }
.psp-pt-mw__head h2 span { color: #ffd27a; }
.psp-pt-mw__head p { margin: 0 !important; font-size: 13px; color: #b6a684 !important; }
.psp-pt-mw__list { margin: 0 !important; padding: 0 !important; list-style: none !important; display: flex; flex-direction: column; gap: 6px; }
.psp-pt-mw__row { display: grid; grid-template-columns: 28px minmax( 110px, 0.8fr ) minmax( 0, 1.6fr ) auto; gap: 12px; align-items: center; margin: 0 !important; padding: 10px 12px; border-radius: 12px; background: rgba( 234, 244, 255, 0.04 ); border: 1px solid transparent; }
.psp-pt-mw__row.is-won { background: rgba( 233, 180, 76, 0.07 ); }
.psp-pt-mw__row.is-mine { border-color: #ffb020; background: rgba( 255, 176, 32, 0.13 ); }
.psp-pt-mw__n { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: rgba( 234, 244, 255, 0.08 ); font: 800 12px/1 var( --psp-hb-display ); color: #9fb3cf; }
.psp-pt-mw__row.is-won .psp-pt-mw__n { background: linear-gradient( 180deg, #ffd27a, #ffb020 ); color: #1a1200; }
.psp-pt-mw__match b { display: block; font: 800 14.5px/1.2 var( --psp-hb-display ); color: #fff; }
.psp-pt-mw__match small { display: block; margin-top: 2px; font-size: 11.5px; color: #8fa6c4; }
.psp-pt-mw__who { min-width: 0; text-align: left; font-size: 13.5px; color: #c9d6e8; overflow: hidden; text-overflow: ellipsis; }
.psp-pt-mw__who b { color: #fff; }
.psp-pt-mw__who b.is-me { color: #ffd27a; }
.psp-pt-mw__who small { margin-left: 6px; font: 700 11.5px/1 var( --psp-hb-mono ); color: #9fb3cf; }
.psp-pt-mw__live { color: #ff9a9a; }
.psp-pt-mw__prize { font: 700 13.5px/1 var( --psp-hb-mono ); color: #ffd27a; white-space: nowrap; }
.psp-pt-mw__row.is-next .psp-pt-mw__prize,
.psp-pt-mw__row.is-live .psp-pt-mw__prize { color: #a99a7a; }
.psp-pt-mw__row.is-none .psp-pt-mw__prize { text-decoration: line-through; color: #6c7f99; }

.psp-pprizes__split { display: grid; gap: 8px; margin: 12px 0 4px; }
.psp-pprizes__split > div { display: grid; grid-template-columns: 1fr auto; gap: 2px 10px; padding: 10px 12px; border-radius: 12px; background: rgba( 234, 244, 255, 0.05 ); }
.psp-pprizes__split span { font-size: 13px; font-weight: 700; color: var( --psp-hb-ice ); }
.psp-pprizes__split b { grid-row: span 2; align-self: center; font: 700 18px/1 var( --psp-hb-mono ); color: #ffd27a; }
.psp-pprizes__split small { font-size: 11.5px; color: var( --psp-hb-muted ); }
.psp-pprizes__h { margin: 12px 0 4px !important; font: 800 11px/1 var( --psp-hb-display ); letter-spacing: 0.12em; text-transform: uppercase; color: var( --psp-hb-muted ) !important; }

html[data-theme="light"] .psp-pi-sec h2 { color: #0a1e38 !important; }
html[data-theme="light"] .psp-pi-sec span { color: #4a5f7c; }

@media ( max-width: 991px ) {
	.psp-pi-open { grid-template-columns: 1fr; }
	.psp-pi-hero__in { padding: 28px 18px 26px; }
	.psp-pi-body { padding: 18px 16px 60px; }
	.psp-pi-stats { flex-basis: 100%; }
}
@media ( max-width: 640px ) {
	.psp-pi-mine__row { grid-template-columns: auto minmax( 0, 1fr ) auto; gap: 12px; padding: 14px; }
	.psp-pi-mine__row > .psp-pi-mine__k:not( .is-gold ) { display: none; }
	.psp-pi-stats { gap: 8px; }
	.psp-pi-stats > div { padding: 12px; }
	.psp-pi-stats dd { font-size: 19px; }
	.psp-pi-podium { grid-template-columns: 1fr; }
	.psp-pi-feature__body,
	.psp-pi-card { padding: 18px; }
	.psp-pt-cards,
	.psp-pt-cards > .psp-pt-more[open] { grid-template-columns: 1fr; }
	.psp-pt-mw__row { grid-template-columns: 26px minmax( 0, 1fr ) auto; }
	.psp-pt-mw__who { grid-column: 2 / -1; grid-row: 2; }
	.psp-pt-mw__row .psp-pt-mw__prize { grid-column: 3; grid-row: 1; }
}
@media ( prefers-reduced-motion: reduce ) {
	.psp-pi-feature,
	.psp-pi-card,
	.psp-pi-mine__row,
	.psp-pi-gold { transition: none; }
	.psp-pi-feature:hover,
	.psp-pi-card:hover,
	.psp-pi-mine__row:hover,
	.psp-pi-gold:hover { transform: none; }
}

/* =====================================================================
 * 2026-10-12 — tournament page v2 (approved mockup P1/P2): one "Your
 * tournament" panel, Matches first, the prize share box, 3-step entry.
 * ===================================================================== */

/* Your tournament panel (inside the hero ticket) */
.psp-pyou__top { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.psp-pyou__top a { font-size: 12.5px; font-weight: 700; color: #ffd27a !important; text-decoration: none !important; }
.psp-pprog { display: grid; grid-template-columns: repeat( 4, minmax( 0, 1fr ) ); gap: 4px; margin: 14px 0 !important; padding: 0 !important; list-style: none !important; }
.psp-pprog li { margin: 0 !important; padding: 7px 2px; border-radius: 8px; background: rgba( 234, 244, 255, 0.06 ); color: #8fa6c4; text-align: center; font: 700 11.5px/1.2 var( --psp-hb-display ); }
.psp-pprog li.is-done { background: rgba( 79, 209, 139, 0.16 ); color: #7ee3a8; }
.psp-pprog li.is-now { background: #ffb020; color: #1a1200; }
.psp-pystats { display: grid; grid-template-columns: repeat( 3, minmax( 0, 1fr ) ); gap: 10px; margin: 0 0 14px; }
.psp-pystats > div { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.psp-pystats dd { margin: 0; font: 700 24px/1 var( --psp-hb-mono ); color: #fff; white-space: nowrap; }
.psp-pystats dt { font-size: 12px; color: #8fa6c4; }
.psp-pystats .is-gold dd { color: #ffd27a; font-family: var( --psp-hb-display ); font-weight: 800; }
.psp-pyou__cta { width: 100%; box-sizing: border-box; }
.psp-pyou__next { margin: 10px 0 0 !important; font-size: 12.5px; color: #8fa6c4 !important; }
.psp-pyou__next b { color: #fff; }
.psp-pt-ticket .psp-pentry > .psp-pprog + h2 { border-bottom: 0; padding-bottom: 0; }

/* Matches tab groups */
.psp-pt-group { margin: 6px 0 0 !important; font: 800 20px/1.1 var( --psp-hb-display ) !important; color: #fff !important; }
.psp-pt-group small { font: 600 13px/1 var( --psp-hb-mono ); color: #8fa6c4; }
html[data-theme="light"] .psp-pt-group { color: #0a1e38 !important; }
.psp-pt-mw.is-done-only { padding: 0; background: none; box-shadow: none; }
.psp-pt-mw.is-done-only .psp-pt-mw__head { display: none; }
.psp-pt-mw__row.is-mine .psp-pt-mw__prize { color: #ffd27a; font-weight: 800; }
.psp-pt-more > summary { cursor: pointer; font-weight: 700; color: #ffd27a; padding: 6px 0; }
.psp-pt-more[open] > .psp-pt-cards { margin-top: 12px; }

/* Prize share box (sidebar) */
.psp-pt-share { display: flex; flex-direction: column; gap: 12px; padding: 20px; border-radius: 20px; background: linear-gradient( 180deg, #15243e, #0b1a31 ); box-shadow: 0 0 0 1.5px rgba( 233, 180, 76, 0.7 ); color: var( --psp-hb-ice ); }
.psp-pt-share h2 { margin: 0 !important; font: 800 18px/1.2 var( --psp-hb-display ) !important; color: #fff !important; }
.psp-pt-share__bar { display: flex; height: 12px; border-radius: 99px; overflow: hidden; }
.psp-pt-share__bar span:first-child { background: #3a86e0; }
.psp-pt-share__bar span:last-child { flex: 1; background: linear-gradient( 90deg, #e9b44c, #ffd27a ); }
.psp-pt-share__part { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 12px; }
.psp-pt-share__part.is-match { background: rgba( 58, 134, 224, 0.12 ); }
.psp-pt-share__part.is-grand { background: rgba( 255, 176, 32, 0.1 ); }
.psp-pt-share__part > span { display: flex; flex-direction: column; gap: 2px; font-size: 13.5px; min-width: 0; }
.psp-pt-share__part small { font-size: 12px; color: #a9bdd6; }
.psp-pt-share__amt { font: 700 16px/1 var( --psp-hb-mono ); white-space: nowrap; }
.psp-pt-share__places { margin: 0 !important; padding: 0 !important; list-style: none !important; display: flex; flex-direction: column; gap: 6px; font-size: 13.5px; }
.psp-pt-share__places li { display: flex; justify-content: space-between; margin: 0 !important; }
.psp-pt-share__places li b { font-family: var( --psp-hb-mono ); }
.psp-pt-share__places li.is-me { color: #ffd27a; font-weight: 700; }
.psp-pt-share > p { margin: 0 !important; font-size: 12px; line-height: 1.45; color: #8fa6c4 !important; }

/* Rules in 4 lines */
.psp-pt-rules4 h2 { margin: 0 0 8px !important; font: 800 16px/1.2 var( --psp-hb-display ) !important; }
.psp-pt-rules4 ol { margin: 0 0 8px !important; padding-left: 18px !important; font-size: 13.5px; line-height: 1.55; }
.psp-pt-rules4 a { font-size: 13px; font-weight: 700; color: #ffd27a !important; }

/* Entry form steps */
.psp-pstep { display: flex !important; align-items: center; gap: 10px; margin: 14px 0 8px !important; padding: 0 !important; font: 800 15px/1.2 var( --psp-hb-display ) !important; color: #fff !important; float: none; width: 100%; }
.psp-pstep span { display: grid; place-items: center; width: 26px; height: 26px; flex: none; border-radius: 50%; background: #ffb020; color: #1a1200; font: 900 13px/1 var( --psp-hb-display ); }
.psp-pform__methods { border: 0 !important; padding: 0 !important; margin: 0 !important; }

/* Sticky "Enter" bar on phones (not entered yet) */
.psp-pt-sticky { display: none; }
@media ( max-width: 991px ) {
	.psp-pt-sticky { position: fixed; left: 0; right: 0; bottom: 64px; z-index: 40; display: flex; align-items: center; gap: 12px; padding: 10px 16px 12px; background: linear-gradient( 180deg, rgba( 4, 11, 23, 0 ), #040b17 32% ); }
	.psp-pt-sticky > div { flex: 1; display: flex; flex-direction: column; gap: 3px; }
	.psp-pt-sticky b { font: 700 16px/1 var( --psp-hb-mono ); color: #ffd27a; }
	.psp-pt-sticky small { font-size: 11.5px; color: #8fa6c4; }
	.psp-pystats dd { font-size: 20px; }
}
.psp-pt-mw__who { justify-self: start; }
.psp-pt-rules4 h2 { color: var( --psp-hb-ice ) !important; }
.psp-pform__methods legend.psp-pstep { text-transform: none !important; letter-spacing: 0 !important; font-size: 15px !important; color: #fff !important; }
