/* Tennis Best Ranking — stile provvisorio, in attesa della nuova grafica.
   Colori del logo: nero, giallo, azzurro. */
.tbr, .tbr-card {
	--tbr-ink: #111111;
	--tbr-yellow: #F2DC00;
	--tbr-cyan: #0DCAF2;
	--tbr-line: #e4e4e4;
	--tbr-muted: #5c5c5c;
	color: var(--tbr-ink);
	max-width: 960px;
	margin: 0 auto;
	padding: 0 16px;
	box-sizing: border-box;
}
.tbr *, .tbr-card * { box-sizing: border-box; }

.tbr-sr {
	position: absolute; width: 1px; height: 1px; overflow: hidden;
	clip: rect(0 0 0 0); white-space: nowrap;
}

/* Riga informativa sopra la classifica */
.tbr-meta {
	display: flex; flex-wrap: wrap; gap: 6px 16px; align-items: center;
	margin: 24px 0; padding: 12px 16px;
	background: var(--tbr-ink); color: #fff; font-size: 15px;
}
.tbr-meta__label {
	background: var(--tbr-yellow); color: var(--tbr-ink);
	font-weight: 800; text-transform: uppercase; letter-spacing: .04em;
	padding: 2px 10px;
}

/* Un gruppo per ogni best ranking */
.tbr-tier {
	display: grid; grid-template-columns: 72px 1fr; gap: 0 20px;
	padding: 18px 0; border-bottom: 1px solid var(--tbr-line);
}
.tbr .tbr-tier__rank {
	margin: 0; font-size: 44px; line-height: 1; font-weight: 900;
	font-variant-numeric: tabular-nums; text-align: right;
}
.tbr-tier--1 .tbr-tier__rank { color: var(--tbr-ink); background: var(--tbr-yellow); text-align: center; padding: 10px 0; }
.tbr-tier--top10 .tbr-tier__rank { color: var(--tbr-ink); border-right: 6px solid var(--tbr-cyan); padding-right: 12px; }
.tbr-tier__list {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 6px 24px;
}
.tbr-player { font-size: 17px; line-height: 1.4; }
.tbr-player a { color: var(--tbr-ink); font-weight: 700; text-decoration: none; }
.tbr-player a:hover, .tbr-player a:focus { text-decoration: underline; text-decoration-color: var(--tbr-cyan); text-decoration-thickness: 3px; }
.tbr-nat { font-size: 12px; color: var(--tbr-muted); letter-spacing: .05em; }
.tbr-now { font-size: 13px; color: var(--tbr-muted); white-space: nowrap; }

/* Scheda giocatore */
.tbr-card { margin-top: 8px; margin-bottom: 32px; }
.tbr-card__facts { font-size: 18px; color: var(--tbr-muted); margin: 0 0 16px; }
.tbr-card__boxes { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; max-width: 520px; }
.tbr-box { padding: 20px; border: 3px solid var(--tbr-ink); display: flex; flex-direction: column; }
.tbr-box--best { background: var(--tbr-yellow); }
.tbr-box--now { background: var(--tbr-cyan); }
.tbr-box__value { font-size: 56px; font-weight: 900; line-height: 1; font-variant-numeric: tabular-nums; }
.tbr-box__label { margin-top: 6px; font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.tbr-box__date { margin-top: 4px; font-size: 13px; }

@media (max-width: 600px) {
	.tbr-tier { grid-template-columns: 52px 1fr; gap: 0 12px; }
	.tbr .tbr-tier__rank { font-size: 32px; }
	.tbr-tier__list { grid-template-columns: 1fr; }
	.tbr-box__value { font-size: 44px; }
}
