/* ===================================================================
   PLAYER RANKINGS PAGE — light "Golden Boot Race" panel, driven by
   SportsPress's own player-points list (see page-player-rankings.php).
   Tokens scoped to .player-rankings-modern so they don't touch the
   rest of the site's (dark) design tokens.
=================================================================== */

.player-rankings-hero{ padding:70px 0 40px; text-align:center; }
.player-rankings-hero .kicker{ display:block; margin-bottom:10px; color:var(--lime); }
.player-rankings-hero h1{ font-size:clamp(36px,6vw,60px); margin:0 0 12px; }
.player-rankings-hero .sub{ max-width:520px; margin:0 auto; color:var(--muted); }

.player-rankings-modern{
	--pr-navy: #14205b;
	--pr-navy-deep: #0a1240;
	--pr-navy-soft: #eceffb;
	--pr-orange: #e8491d;
	--pr-gold: #d99f1f;
	--pr-silver: #9aa4c4;
	--pr-line: #e2e5f2;
	--pr-text: #1b2140;
	--pr-text-mute: #767d9c;

	padding:0 0 90px;
	font-family:'Inter', var(--body);
	color:var(--pr-text);
}

.player-rankings-modern .panel{
	background:#fff;
	border-radius:16px;
	border:1px solid var(--pr-line);
	box-shadow:0 20px 40px -26px rgba(20,32,91,0.28);
	overflow:hidden;
}

.player-rankings-modern .panel-head{
	display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
	padding:26px 28px 22px;
}
.player-rankings-modern .panel-head .title{ display:flex; flex-direction:column; gap:4px; }

.player-rankings-modern .panel-head .eyebrow{
	font-family:'Poppins', var(--body);
	font-size:11px; letter-spacing:1px; color:var(--pr-orange); font-weight:600;
	text-transform:none; background:none; border:0; box-shadow:none; padding:0; margin:0;
	display:inline; animation:none; backdrop-filter:none;
}
.player-rankings-modern .panel-head .eyebrow::before{ content:none; }

.player-rankings-modern .panel-head h2{
	font-family:'Oswald', var(--display); font-size:22px; font-weight:500; color:var(--pr-text); margin:0;
}

.player-rankings-modern .legend{
	display:flex; gap:16px;
	font-family:'JetBrains Mono', var(--mono); font-size:11px; color:var(--pr-text-mute);
}
.player-rankings-modern .legend span{ display:flex; align-items:center; gap:6px; }
.player-rankings-modern .dot{ width:8px; height:8px; border-radius:50%; }
.player-rankings-modern .dot.orange{ background:var(--pr-orange); }

.player-rankings-modern table{ width:100%; border-collapse:collapse; }

.player-rankings-modern thead th{
	text-align:center;
	font-family:'JetBrains Mono', var(--mono); font-size:11px; font-weight:500; letter-spacing:0.5px;
	color:var(--pr-text-mute);
	padding:12px 10px;
	border-top:1px solid var(--pr-line); border-bottom:1px solid var(--pr-line);
	background:var(--pr-navy-soft);
}
.player-rankings-modern thead th:first-child{ width:56px; }
.player-rankings-modern thead th.player-col{ text-align:left; }

.player-rankings-modern tbody td{
	text-align:center; padding:14px 10px; font-size:14.5px;
	border-bottom:1px solid var(--pr-line); color:var(--pr-text);
}
.player-rankings-modern tbody tr:last-child td{ border-bottom:none; }
.player-rankings-modern tbody tr{ position:relative; transition:background 0.15s ease; }
.player-rankings-modern tbody tr:hover{ background:#fafbff; }

.player-rankings-modern tbody tr::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:3px; }
.player-rankings-modern tbody tr.top1::before{ background:var(--pr-orange); }
.player-rankings-modern tbody tr.top2::before{ background:var(--pr-silver); }
.player-rankings-modern tbody tr.top3::before{ background:var(--pr-gold); }

.player-rankings-modern .rank-badge{
	width:26px; height:26px; border-radius:7px;
	display:inline-flex; align-items:center; justify-content:center;
	font-family:'JetBrains Mono', var(--mono); font-weight:700; font-size:12px;
	background:var(--pr-navy-soft); color:var(--pr-text-mute);
}
.player-rankings-modern tr.top1 .rank-badge{ background:var(--pr-orange); color:#fff; }
.player-rankings-modern tr.top2 .rank-badge{ background:var(--pr-silver); color:var(--pr-navy-deep); }
.player-rankings-modern tr.top3 .rank-badge{ background:var(--pr-gold); color:var(--pr-navy-deep); }

.player-rankings-modern .player-cell{
	display:flex; align-items:center; gap:12px; text-align:left; font-weight:500; font-size:15px;
}
.player-rankings-modern .avatar{
	width:34px; height:34px; border-radius:50%; flex-shrink:0;
	display:flex; align-items:center; justify-content:center;
	font-family:'JetBrains Mono', var(--mono); font-weight:700; font-size:11px; color:#fff;
}
.player-rankings-modern .player-name{ color:var(--pr-navy); }
.player-rankings-modern tr.top1 .player-name{ color:var(--pr-orange); font-weight:600; }

.player-rankings-modern .pts{
	font-family:'JetBrains Mono', var(--mono); font-weight:700; font-size:16px; color:var(--pr-navy);
}
.player-rankings-modern tr.top1 .pts{ color:var(--pr-orange); }
.player-rankings-modern .stat{ font-family:'JetBrains Mono', var(--mono); color:var(--pr-text-mute); }

.player-rankings-modern .no-rankings{ text-align:center; color:var(--pr-text-mute); padding:40px 0; }

/* ---------- Pagination ---------- */
.player-rankings-modern .pagination{
	display:flex; align-items:center; justify-content:space-between; padding:20px 28px; flex-wrap:wrap; gap:14px;
}
.player-rankings-modern .pages{
	display:flex; align-items:center; gap:6px;
	font-family:'JetBrains Mono', var(--mono); font-size:13px;
}
.player-rankings-modern .pages a, .player-rankings-modern .pages span.dots{
	display:inline-flex; align-items:center; justify-content:center;
	min-width:30px; height:30px; border-radius:7px;
	color:var(--pr-text-mute); text-decoration:none;
}
.player-rankings-modern .pages a:hover{ background:var(--pr-navy-soft); color:var(--pr-navy); }
.player-rankings-modern .pages a.active{ background:var(--pr-navy); color:#fff; font-weight:700; }
.player-rankings-modern .pages span.dots{ color:#c3c8de; }

.player-rankings-modern .next-btn{
	display:inline-flex; align-items:center; gap:6px;
	font-family:'Inter', var(--body); font-weight:600; font-size:13.5px;
	color:var(--pr-navy); text-decoration:none;
	padding:8px 16px; border-radius:8px; border:1px solid var(--pr-line);
	transition:background 0.15s ease;
}
.player-rankings-modern .next-btn:hover{ background:var(--pr-navy-soft); }

/* ---------- Tablet ---------- */
@media (max-width:840px){
	.player-rankings-modern thead th, .player-rankings-modern tbody td{ padding:12px 6px; font-size:13px; }
	.player-rankings-modern .player-cell{ font-size:13.5px; }
}

/* ---------- Mobile card layout ---------- */
@media (max-width:620px){
	.player-rankings-modern .panel-head{ padding:20px 18px 16px; }

	.player-rankings-modern thead{ display:none; }
	.player-rankings-modern table,
	.player-rankings-modern tbody,
	.player-rankings-modern tr{ display:block; width:100%; }

	.player-rankings-modern tbody tr{ padding:16px 18px; }
	.player-rankings-modern tbody td{ display:none; border-bottom:none; padding:0; }

	.player-rankings-modern td.player-col{ display:block; }
	.player-rankings-modern .player-cell{ margin-bottom:12px; }
	.player-rankings-modern .rank-badge{ margin-right:2px; }

	.player-rankings-modern .stat-row{
		display:flex !important; gap:16px;
		font-family:'JetBrains Mono', var(--mono); font-size:12.5px; color:var(--pr-text-mute);
	}
	.player-rankings-modern .stat-row div{ display:flex; flex-direction:column; gap:2px; }
	.player-rankings-modern .stat-row .label{ font-size:9px; letter-spacing:0.5px; }
	.player-rankings-modern .stat-row .value{ font-size:14px; color:var(--pr-text); font-weight:500; }
	.player-rankings-modern .stat-row .value.pts-val{ color:var(--pr-navy); font-weight:700; font-size:15px; }
	.player-rankings-modern tr.top1 .stat-row .value.pts-val{ color:var(--pr-orange); }

	.player-rankings-modern .pagination{ justify-content:center; padding:18px; }
	.player-rankings-modern .next-btn{ order:2; }
}

@media (min-width:621px){
	.player-rankings-modern .stat-row{ display:none; }
}
