﻿/* ═══════════════════════════════════════════════════════════════
   Statscore Sports Data — frontend styles
   Tabela ligowa stylizowana jak sts-charts-modified (blog-sts theme)
   ═══════════════════════════════════════════════════════════════ */

/* ── Shared wrapper ──────────────────────────────────────────── */
.sts-wrapper {
	box-sizing: border-box;
	font-family: inherit;
}

/* ── Bloki Gutenberg: wyrównanie wide/full bez polegania na motywie ── */
.wp-block-statscore-standings,
.wp-block-statscore-fixtures,
.wp-block-statscore-results,
.wp-block-statscore-squad,
.wp-block-statscore-lineup,
.wp-block-statscore-matchstats,
.wp-block-statscore-livematch {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.wp-block-statscore-standings.alignwide,
.wp-block-statscore-fixtures.alignwide,
.wp-block-statscore-results.alignwide,
.wp-block-statscore-squad.alignwide,
.wp-block-statscore-lineup.alignwide,
.wp-block-statscore-matchstats.alignwide,
.wp-block-statscore-livematch.alignwide {
	width: 100vw !important;
	max-width: 100vw !important;
	position: relative !important;
	left: 50% !important;
	right: 50% !important;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
}

.wp-block-statscore-standings.alignfull,
.wp-block-statscore-fixtures.alignfull,
.wp-block-statscore-results.alignfull,
.wp-block-statscore-squad.alignfull,
.wp-block-statscore-lineup.alignfull,
.wp-block-statscore-matchstats.alignfull,
.wp-block-statscore-livematch.alignfull {
	width: 100vw !important;
	max-width: 100vw !important;
	position: relative !important;
	left: 50% !important;
	right: 50% !important;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
}

/* ══════════════════════════════════════════════════════════════
   RANKING WRAP (baza — z sts-charts/frontend.css)
   ══════════════════════════════════════════════════════════════ */
.sts-ranking-wrap {
	position: relative;
	overflow: clip; /* clip zamiast hidden — hidden blokuje position:sticky w potomkach */
	background: linear-gradient(to bottom right, #FFFFFF 0%, #D3DADF 55%, #F1F3F5 100%);
	padding: 25px 30px;
	border: 3px solid var(--sts-cp);
	border-radius: 22px;
	box-sizing: border-box;
	font-family: inherit;
}

.sts-ranking-wrap .sc-triangle {
	position: absolute;
	right: 0; bottom: 0;
	width: 220px; height: 220px;
	background: var(--sts-cl);
	clip-path: polygon(100% 0, 0 100%, 100% 100%);
	z-index: 0;
}

.sts-ranking-wrap .sc-inner {
	position: relative;
	z-index: 1;
}

.sts-ranking-wrap .sc-title {
	margin: 0;
	text-align: center;
	font-size: 34px;
	font-weight: 800;
	line-height: 1.15;
	color: #1a1a1a;
}

.sts-ranking-wrap .sc-title span {
	display: inline-block;
	padding: 0 5px 14px;
	border-bottom: 2px solid var(--sts-cp);
}

.sts-ranking-wrap .sc-wrap {
	max-width: min(90%, 1100px);
	margin: 18px auto 0;
	overflow-x: auto;
}

/* ── Statscore standings grid — scoped wyłącznie do .statscore-standings-widget ──
   Nie dotyka STS Charts (który ma te same klasy .sc-head/.sc-rows/.sc-row
   ale inną strukturę grida). Specyficzność 0,3,0 > sts-charts 0,2,0. */
.statscore-standings-widget.sts-ranking-wrap .sc-table {
	display: grid;
	grid-template-columns: var(--sts-grid);
	column-gap: 0;
	row-gap: 5px;
}

.statscore-standings-widget.sts-ranking-wrap .sc-head {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: subgrid;
	align-items: end;
	text-align: center;
	font-weight: 900;
	font-size: 13px;
	opacity: .85;
	margin-bottom: 0;
}

.statscore-standings-widget.sts-ranking-wrap .sc-head > div {
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Kolumna 2 (Drużyna/Zawodnik) — wyrównanie do lewej jak w komórkach danych */
.statscore-standings-widget.sts-ranking-wrap .sc-head > div:nth-child(2) {
	justify-content: flex-start;
	text-align: left;
}

.statscore-standings-widget.sts-ranking-wrap .sc-rows {
	display: contents;
}

.statscore-standings-widget.sts-ranking-wrap .sc-row {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: subgrid;
	align-items: center;
	gap: 0;
}

.sts-ranking-wrap .sc-cell {
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid rgba(var(--sts-cp-rgb), .28);
	border-radius: 12px;
	background: rgba(255,255,255,.35);
	padding: 0 10px;
	box-sizing: border-box;
	font-size: 15px;
	font-weight: 800;
	color: #000;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: center;
}

.sts-ranking-wrap .sc-source {
	width: 260px;
	max-width: 100%;
	margin: 20px auto 0;
	text-align: center;
	background: var(--sts-cp);
	color: #fff;
	border-radius: 14px;
	padding: 12px 18px;
	font-weight: 800;
	font-size: 15px;
	box-sizing: border-box;
}

.sts-ranking-wrap .sc-source a {
	color: #fff;
	text-decoration: none;
}

/* ── Motyw: blog-sts ─────────────────────────────────────────── */
.sts-ranking-wrap.theme-blog-sts {
	font-family: 'Roboto', Arial, sans-serif;
	background: linear-gradient(to bottom right, #ffffff 0%, #C8DCEF 55%, #EAF1F8 100%);
	border: 3px solid #f0a30a;
	border-radius: 14px;
	padding: 24px 20px 20px;
	isolation: isolate;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	box-shadow: 0 8px 25px rgba(0,0,0,.09);
}

/* Specyficzność 0,3,0 — przebija sts-charts width:fit-content (0,2,0) */
.statscore-standings-widget.sts-ranking-wrap.theme-blog-sts {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.sts-ranking-wrap.theme-blog-sts .sc-triangle {
	background: #1565C0;
	opacity: .12;
	width: 180px;
	height: 180px;
	z-index: 0;
}

.sts-ranking-wrap.theme-blog-sts .sc-inner {
	position: relative;
	z-index: 1;
}

.sts-ranking-wrap.theme-blog-sts .sc-wrap {
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.statscore-standings-widget.sts-ranking-wrap.theme-blog-sts .sc-wrap {
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.statscore-standings-widget.sts-ranking-wrap.theme-blog-sts .sc-table {
	min-width: 420px;
	width: 100%;
}

.sts-ranking-wrap.theme-blog-sts .sc-title {
	font-family: 'Roboto', Arial, sans-serif;
	font-size: clamp(0.9em, 2.5vw, 1.25em);
	font-weight: 900;
	letter-spacing: 0.3px;
	color: #212529;
	text-transform: uppercase;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.2;
}

.sts-ranking-wrap.theme-blog-sts .sc-title span {
	border-bottom: 3px solid #1565C0;
	padding-bottom: 10px;
}

.sts-ranking-wrap.theme-blog-sts .sc-head {
	font-family: 'Roboto', Arial, sans-serif;
	font-weight: 700;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #1565C0;
	opacity: 1;
	gap: 0;
	margin-bottom: 0;
}

.sts-ranking-wrap.theme-blog-sts .sc-table {
	column-gap: 0;
	row-gap: 5px;
}
/* Pierwszy wiersz (header) bez dodatkowego marginesu */
.sts-ranking-wrap.theme-blog-sts .sc-head { row-gap: 0; }
.sts-ranking-wrap.theme-blog-sts .sc-row  { align-items: stretch; }

.sts-ranking-wrap.theme-blog-sts .sc-cell {
	font-family: 'Roboto', Arial, sans-serif;
	font-weight: 400;
	font-size: 14px;
	color: #212529;
	background: rgba(255,255,255,.90);
	border-top: 2px solid rgba(21,101,192,.22);
	border-bottom: 2px solid rgba(21,101,192,.22);
	border-left: none;
	border-right: none;
	border-radius: 0;
	height: auto;
	min-height: 40px;
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
}

/* Pierwsza komórka (pozycja) — lewy border + zaokrąglenie */
.sts-ranking-wrap.theme-blog-sts .sc-cell:first-child {
	border-left: 2px solid rgba(21,101,192,.22);
	border-radius: 10px 0 0 10px;
	font-weight: 700;
	color: #1565C0;
}

/* Ostatnia komórka (punkty) — prawy border + złoty kolor */
.sts-ranking-wrap.theme-blog-sts .sc-cell:last-child {
	border-right: 2px solid rgba(21,101,192,.22);
	border-radius: 0 10px 10px 0;
	font-weight: 700;
	color: #f0a30a;
	font-size: 15px;
}

/* Komórka drużyny — wyrównanie do lewej */
.sts-ranking-wrap.theme-blog-sts .sc-cell--team {
	justify-content: flex-start;
	gap: 7px;
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
}

.sts-ranking-wrap.theme-blog-sts .sc-cell--team .team-name {
	font-weight: 600;
}

.sts-ranking-wrap.theme-blog-sts .sc-cell--team .correction {
	font-size: 11px;
	color: #c0392b;
	margin-left: 2px;
}

.sts-ranking-wrap.theme-blog-sts .statscore-logo {
	flex-shrink: 0;
	object-fit: contain;
}

/* Źródło — STS branding */
.sts-ranking-wrap.theme-blog-sts .sc-source {
	display: flex;
	align-items: center;
	gap: 10px;
	width: auto;
	max-width: 100%;
	margin: 16px 0 0;
	background: transparent;
	padding: 0;
	border-radius: 0;
	justify-content: flex-start;
}

.sts-ranking-wrap.theme-blog-sts .sc-source a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: #555;
	font-size: 12px;
}

.sts-ranking-wrap.theme-blog-sts .sc-source a img {
	display: block;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0,0,0,.15);
	flex-shrink: 0;
}

.sts-ranking-wrap.theme-blog-sts .sc-source a:hover,
.sts-ranking-wrap.theme-blog-sts .sc-source a:focus {
	opacity: .85;
	text-decoration: none;
}

/* Tooltips nagłówków kolumn — kursor */
.sts-ranking-wrap .sc-head [data-tooltip] {
	cursor: help;
}

/* Tooltip generowany przez statscore.js (position:fixed, append do body) */
.sts-col-tooltip {
	display: none;
	position: absolute; /* zmieniane na fixed przez JS */
	z-index: 99999;
	background: #1a1a1a;
	color: #fff;
	padding: 5px 10px;
	border-radius: 6px;
	font-size: 11px;
	font-weight: 500;
	font-family: 'Roboto', Arial, sans-serif;
	white-space: nowrap;
	pointer-events: none;
	line-height: 1.4;
	box-shadow: 0 2px 8px rgba(0,0,0,.30);
}

/* ── Zone row coloring — jeden ciągły gradient na cały wiersz ─── */
/* Gradient na .sc-row--zone, komórki transparentne → efekt ciągły */
.sts-ranking-wrap.theme-blog-sts .sc-row--zone {
	background: linear-gradient(
		90deg,
		rgba(var(--zone-rgb), .22) 0%,
		rgba(255,255,255, 0) 100%
	);
}

.sts-ranking-wrap.theme-blog-sts .sc-row--zone .sc-cell {
	background: transparent;
}

.sts-ranking-wrap.theme-blog-sts .sc-row--zone .sc-cell:first-child {
	border-left: 4px solid rgba(var(--zone-rgb), .65);
}


/* Legenda stref */
.sts-ranking-wrap.theme-blog-sts .statscore-zone-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 18px;
	margin: 12px 0 0;
	font-size: 12px;
	font-family: 'Roboto', Arial, sans-serif;
	color: #444;
}

.sts-ranking-wrap.theme-blog-sts .zone-item {
	display: flex;
	align-items: center;
	gap: 5px;
}

.sts-ranking-wrap.theme-blog-sts .zone-dot {
	width: 10px;
	height: 10px;
	border-radius: 3px;
	flex-shrink: 0;
}

/* ── Responsywność ───────────────────────────────────────────── */
@media (max-width: 1024px) {
	.sts-ranking-wrap { padding: 20px; }
	.sts-ranking-wrap .sc-title { font-size: 28px; }
	.sts-ranking-wrap .sc-head  { font-size: 12px; }
	.sts-ranking-wrap .sc-cell  { height: 38px; font-size: 14px; padding: 0 8px; }
}

@media (max-width: 720px) {
	.sts-ranking-wrap.theme-blog-sts {
		width: 100%;
		padding: 16px 12px 14px;
		box-sizing: border-box;
	}

	.sts-ranking-wrap.theme-blog-sts .sc-title {
		white-space: normal;
		font-size: 1em;
	}

	/* Poziomy scroll */
	.sts-ranking-wrap.theme-blog-sts .sc-wrap {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	/* Min-width na sc-table zapobiega zbijaniu się kolumn */
	.sts-ranking-wrap.theme-blog-sts .sc-table {
		min-width: 360px;
	}

	.sts-ranking-wrap.theme-blog-sts .sc-head > div,
	.sts-ranking-wrap.theme-blog-sts .sc-cell {
		overflow: hidden;
	}

	.sts-ranking-wrap.theme-blog-sts .sc-cell {
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100%;
		min-height: 36px;
		font-size: 12px;
		padding: 4px 6px;
		box-sizing: border-box;
	}

	/* Sticky kolumna 1 — pozycja (#) */
	.sts-ranking-wrap.theme-blog-sts .sc-head > div:first-child,
	.sts-ranking-wrap.theme-blog-sts .sc-row > .sc-cell:first-child {
		position: sticky;
		left: 0;
		z-index: 3;
		background: #ddeaf8;
	}

	/* Sticky kolumna 2 — drużyna */
	.sts-ranking-wrap.theme-blog-sts .sc-head > div:nth-child(2),
	.sts-ranking-wrap.theme-blog-sts .sc-row > .sc-cell:nth-child(2) {
		position: sticky;
		left: 50px;
		z-index: 3;
		background: #f0f7ff;
		justify-content: flex-start;
	}

	/* Zone rows na mobile: usuń gradient z wiersza, wszystkie komórki nieprzezroczyste
	   (gradient byłby widoczny za sticky kolumnami przy scrollu poziomym).
	   Kolor strefy nadal sygnalizowany przez lewy border pierwszej komórki. */
	.sts-ranking-wrap.theme-blog-sts .sc-row--zone {
		background: none;
	}
	.sts-ranking-wrap.theme-blog-sts .sc-row--zone .sc-cell {
		background: rgba(255, 255, 255, .90);
	}

	/* Sticky komórki zone rows — nadpisują regułę wyżej (wyższa specyficzność przez > i :first-child) */
	.sts-ranking-wrap.theme-blog-sts .sc-row--zone > .sc-cell:first-child {
		background: #ddeaf8;
	}
	.sts-ranking-wrap.theme-blog-sts .sc-row--zone > .sc-cell:nth-child(2) {
		background: #f0f7ff;
	}

	.sts-ranking-wrap.theme-blog-sts .sc-head { font-size: 10px; }
	.sts-ranking-wrap.theme-blog-sts .sc-rows { gap: 3px; }

	/* Scoped override — 0,4,0 bije sts-charts mobile grid-template-columns 0,3,0 */
	.statscore-standings-widget.sts-ranking-wrap.theme-blog-sts .sc-head,
	.statscore-standings-widget.sts-ranking-wrap.theme-blog-sts .sc-row {
		grid-template-columns: subgrid;
	}
	.statscore-standings-widget.sts-ranking-wrap.theme-blog-sts .sc-rows {
		display: contents;
	}
}

@media (max-width: 480px) {
	.sts-ranking-wrap.theme-blog-sts { padding: 12px 8px; border-width: 2px; }
	.sts-ranking-wrap.theme-blog-sts .sc-title { font-size: 0.85em; }
}

/* ══════════════════════════════════════════════════════════════
   TERMINARZ / WYNIKI — theme-blog-sts
   ══════════════════════════════════════════════════════════════ */

/* ── Container ───────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures {
	position: relative;
	background: linear-gradient(to bottom right, #ffffff 0%, #C8DCEF 55%, #EAF1F8 100%);
	border: 3px solid #f0a30a;
	border-radius: 14px;
	padding: 24px 20px 20px;
	box-shadow: 0 8px 25px rgba(0,0,0,.09);
	font-family: 'Roboto', Arial, sans-serif;
	font-size: 14px;
	line-height: 1.4;
	color: #212529;
	width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

/* Trójkąt dekoracyjny */
.statscore-widget.statscore-fixtures::after {
	content: '';
	position: absolute;
	right: 0; bottom: 0;
	width: 140px; height: 140px;
	background: #1565C0;
	opacity: .08;
	clip-path: polygon(100% 0, 0 100%, 100% 100%);
	pointer-events: none;
	z-index: 0;
}

/* Wszystkie dzieci nad trójkątem */
.statscore-widget.statscore-fixtures > * {
	position: relative;
	z-index: 1;
}

/* ── Tytuł ───────────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .statscore-title {
	font-family: 'Roboto', Arial, sans-serif;
	font-size: clamp(0.85em, 2.5vw, 1.1em);
	font-weight: 900;
	letter-spacing: 0.3px;
	color: #212529;
	text-transform: uppercase;
	margin: 0 0 16px;
	padding-bottom: 10px;
	border-bottom: 3px solid #1565C0;
	line-height: 1.2;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* ── Grupy dat ───────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .statscore-day-group + .statscore-day-group {
	margin-top: 14px;
}

.statscore-widget.statscore-fixtures .statscore-date-header {
	display: inline-block;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #1565C0;
	margin-bottom: 7px;
	padding: 2px 10px;
	background: rgba(21, 101, 192, .08);
	border: 1px solid rgba(21, 101, 192, .18);
	border-radius: 20px;
}

/* ── Lista wierszy (zastąpienie tabeli) ──────────────────────── */
.statscore-widget.statscore-fixtures .statscore-fixtures-list {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

/* ── Nagłówek rozgrywek (widok łączony kilku lig) ────────────── */
.statscore-widget.statscore-fixtures .statscore-comp + .statscore-comp {
	margin-top: 10px;
}

.statscore-widget.statscore-fixtures .statscore-comp-header {
	display: flex;
	align-items: center;
	gap: 7px;
	font-family: 'Roboto', Arial, sans-serif;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .4px;
	color: #0d47a1;
	text-transform: uppercase;
	padding: 5px 10px;
	margin: 0 0 5px;
	background: linear-gradient(90deg, rgba(21,101,192,.15), rgba(21,101,192,.02));
	border-left: 3px solid #f0a30a;
	border-radius: 6px;
	line-height: 1.25;
}

.statscore-widget.statscore-fixtures .statscore-comp-header::before {
	content: '';
	flex: 0 0 auto;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #1565C0;
}

/* ── Pojedynczy mecz ─────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .statscore-fixture {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center;
	min-height: 42px;
	background: rgba(255, 255, 255, .82);
	border: 1.5px solid rgba(21, 101, 192, .15);
	border-radius: 10px;
	overflow: hidden;
	transition: background .15s;
}

.statscore-widget.statscore-fixtures .statscore-fixture:hover {
	background: rgba(255, 255, 255, .97);
}

.statscore-widget.statscore-fixtures .statscore-fixture.status-finished {
	background: rgba(255, 255, 255, .55);
}

.statscore-widget.statscore-fixtures .statscore-fixture.status-in_progress {
	background: rgba(231, 76, 60, .04);
	border-color: rgba(231, 76, 60, .30);
}

/* Wspólny padding dla wszystkich sekcji wiersza */
.statscore-widget.statscore-fixtures .statscore-fixture > div {
	display: flex !important;
	padding: 8px;
	box-sizing: border-box;
	min-width: 0;
}

/* ── Runda ───────────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .fix-round {
	flex: 0 0 42px;
	text-align: center;
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .5px;
	color: #aaa;
	white-space: nowrap;
	overflow: hidden;
	line-height: 1.2;
}

/* ── Gospodarz ───────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .fix-home {
	flex: 1 1 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	text-align: right;
}

/* ── Wynik / Godzina ─────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .fix-score {
	flex: 0 0 82px;
	flex-shrink: 0;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 4px;
	white-space: nowrap;
}

/* ── Gość ────────────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .fix-away {
	flex: 1 1 0;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
}

/* ── Nazwy drużyn ────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .team-name {
	font-weight: 600;
	color: #212529;
	font-size: 13px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	min-width: 0;
	flex-shrink: 1;
}

/* ── Wynik i godzina ─────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .score {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	font-family: 'Roboto', Arial, sans-serif;
	font-size: 15px;
	font-weight: 800;
}

.statscore-widget.statscore-fixtures .score-time {
	font-family: 'Roboto', Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: #1565C0;
}

.statscore-widget.statscore-fixtures .score-sep  { margin: 0 1px; color: #bbb; }
.statscore-widget.statscore-fixtures .score-live { color: #e74c3c; }
.statscore-widget.statscore-fixtures .score-ft   { color: #212529; }

/* ── LIVE badge ──────────────────────────────────────────────── */
.badge-live {
	display: inline-block;
	font-size: 9px;
	font-weight: 800;
	background: #e74c3c;
	color: #fff;
	border-radius: 3px;
	padding: 1px 4px;
	letter-spacing: .5px;
	animation: statscore-pulse 1s infinite;
}

@keyframes statscore-pulse {
	0%, 100% { opacity: 1; }
	50%       { opacity: .4; }
}

/* ── Logo drużyny ────────────────────────────────────────────── */
.statscore-logo {
	display: block;
	object-fit: contain;
	flex-shrink: 0;
	width: 20px;
	height: 20px;
}

/* ── Pusta lista ─────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .statscore-empty {
	color: #999;
	font-style: italic;
	text-align: center;
	padding: 20px 0;
}

/* ── Stopka ──────────────────────────────────────────────────── */
.statscore-widget.statscore-fixtures .statscore-footer {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 16px 0 0;
}

.statscore-widget.statscore-fixtures .statscore-footer a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: #555;
	font-size: 12px;
}

.statscore-widget.statscore-fixtures .statscore-footer a img {
	display: block;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0,0,0,.15);
	flex-shrink: 0;
}

.statscore-widget.statscore-fixtures .statscore-footer a:hover { opacity: .85; }

/* ── Paginacja terminarza ────────────────────────────────────── */
.statscore-widget.statscore-fixtures .statscore-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	margin-top: 14px;
}

.statscore-widget.statscore-fixtures .sc-page-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	padding: 0;
	font-size: 20px;
	line-height: 1;
	color: #1565C0;
	background: rgba(21, 101, 192, .08);
	border: 1px solid rgba(21, 101, 192, .18);
	border-radius: 50%;
	cursor: pointer;
	transition: background .15s, opacity .15s;
}

.statscore-widget.statscore-fixtures .sc-page-btn:hover:not(:disabled) {
	background: rgba(21, 101, 192, .16);
}

.statscore-widget.statscore-fixtures .sc-page-btn:disabled {
	opacity: .35;
	cursor: default;
}

.statscore-widget.statscore-fixtures .sc-page-status {
	font-size: 12px;
	font-weight: 700;
	color: #1565C0;
	min-width: 90px;
	text-align: center;
}

/* ── Tablet (układ poziomy, bez rundy) ───────────────────────── */
@media (max-width: 720px) {
	.statscore-widget.statscore-fixtures {
		padding: 16px 12px 14px;
		border-width: 2px;
	}

	.statscore-widget.statscore-fixtures .statscore-title {
		white-space: normal;
		font-size: 0.9em;
	}

	.statscore-widget.statscore-fixtures .fix-round {
		display: none;
	}

	.statscore-widget.statscore-fixtures .fix-score {
		flex: 0 0 72px;
	}

	.statscore-widget.statscore-fixtures .team-name {
		font-size: 12px;
	}

	.statscore-widget.statscore-fixtures .score {
		font-size: 13px;
	}

	.statscore-widget.statscore-fixtures .score-time {
		font-size: 13px;
	}

	.statscore-widget.statscore-fixtures .statscore-logo {
		width: 16px;
		height: 16px;
	}
}

/* ── Mobile (układ pionowy: gospodarz / godzina / gość) ──────── */
@media (max-width: 640px) {
	.statscore-widget.statscore-fixtures {
		padding: 14px 10px 12px;
	}

	.statscore-widget.statscore-fixtures .statscore-fixtures-list {
		gap: 5px;
	}

	.statscore-widget.statscore-fixtures .statscore-fixture {
		flex-direction: column !important;
		align-items: stretch !important;
		min-height: unset !important;
		padding: 0 !important;
	}

	.statscore-widget.statscore-fixtures .statscore-fixture > div {
		flex: none !important;
		width: 100% !important;
		justify-content: center !important;
		padding: 4px 12px !important;
	}

	.statscore-widget.statscore-fixtures .fix-home {
		padding-top: 8px !important;
		padding-bottom: 3px !important;
	}

	.statscore-widget.statscore-fixtures .fix-score {
		flex: none !important;
		width: 100% !important;
		padding-top: 5px !important;
		padding-bottom: 5px !important;
		border-top: 1px solid rgba(21, 101, 192, .12) !important;
		border-bottom: 1px solid rgba(21, 101, 192, .12) !important;
	}

	.statscore-widget.statscore-fixtures .fix-away {
		flex-direction: row-reverse !important;
		padding-top: 3px !important;
		padding-bottom: 8px !important;
	}

	.statscore-widget.statscore-fixtures .score-time {
		font-size: 15px !important;
		font-weight: 800 !important;
		color: #1565C0 !important;
	}

	.statscore-widget.statscore-fixtures .score {
		font-size: 16px !important;
	}

	.statscore-widget.statscore-fixtures .team-name {
		font-size: 13px !important;
	}

	.statscore-widget.statscore-fixtures .statscore-logo {
		width: 18px !important;
		height: 18px !important;
	}
}


/* ── Error ───────────────────────────────────────────────────── */
.statscore-error {
	background: #fff3cd;
	border: 1px solid #ffc107;
	border-radius: 4px;
	padding: 10px 14px;
	color: #856404;
	font-size: 13px;
}

/* Wariant neutralny dla odwiedzających – bez "ostrzegawczej" żółci. */
.statscore-error--soft {
	background: #f6f7f8;
	border: 1px solid #e2e5e9;
	color: #6b7280;
	text-align: center;
}

/* Szczegół techniczny widoczny tylko dla edytorów. */
.statscore-error__debug {
	display: inline-block;
	margin-left: 4px;
	font-family: monospace;
	font-size: 11px;
	opacity: .7;
}

/* ── Admin panel ─────────────────────────────────────────────── */
.statscore-admin .statscore-tab-content { padding-top: 16px; }

.statscore-admin pre {
	background: #f5f5f5;
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 12px 16px;
	font-size: 13px;
	overflow-x: auto;
}

#sc-comp-results table,
#sc-seasons-results table,
#sc-standings-results table {
	margin-top: 12px;
}

/* ══════════════════════════════════════════════════════════════
   KADRA / SKŁAD MECZOWY — statscore-squad-widget / statscore-lineup-widget
   ══════════════════════════════════════════════════════════════ */

/* ── Wspólny kontener (ten sam styl co fixtures) ─────────────── */
.statscore-squad-widget,
.statscore-lineup-widget {
	position: relative;
	overflow: hidden;
	background: linear-gradient(to bottom right, #ffffff 0%, #C8DCEF 55%, #EAF1F8 100%);
	border: 3px solid #f0a30a;
	border-radius: 14px;
	padding: 24px 20px 20px;
	box-shadow: 0 8px 25px rgba(0,0,0,.09);
	font-family: 'Roboto', Arial, sans-serif;
	font-size: 14px;
	line-height: 1.4;
	color: #212529;
	width: 100%;
	box-sizing: border-box;
	isolation: isolate;
}

.statscore-squad-widget::after,
.statscore-lineup-widget::after {
	content: '';
	position: absolute;
	right: 0; bottom: 0;
	width: 150px; height: 150px;
	background: #1565C0;
	opacity: .10;
	clip-path: polygon(100% 0, 0 100%, 100% 100%);
	z-index: 0;
	pointer-events: none;
}

.statscore-squad-widget > *,
.statscore-lineup-widget > * {
	position: relative;
	z-index: 1;
}

.sq-triangle {
	position: absolute;
	right: 0; bottom: 0;
	width: 150px; height: 150px;
	background: #1565C0;
	opacity: .10;
	clip-path: polygon(100% 0, 0 100%, 100% 100%);
	z-index: 0;
	pointer-events: none;
}

.sq-inner {
	position: relative;
	z-index: 1;
	max-width: 960px;
	margin: 0 auto;
}

/* ── Tytuł ───────────────────────────────────────────────────── */
.sq-title {
	font-family: 'Roboto', Arial, sans-serif;
	font-size: clamp(0.9em, 2.5vw, 1.15em);
	font-weight: 900;
	letter-spacing: 0.3px;
	color: #212529;
	text-transform: uppercase;
	margin: 0 0 18px;
	padding-bottom: 10px;
	border-bottom: 3px solid #1565C0;
	line-height: 1.2;
	display: flex;
	align-items: baseline;
	gap: 10px;
	flex-wrap: wrap;
}

.sq-event-date {
	font-size: 11px;
	font-weight: 400;
	text-transform: none;
	color: #666;
	letter-spacing: 0;
}

/* ── Position badges ─────────────────────────────────────────── */
.sq-pos-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 20px;
	border-radius: 4px;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .3px;
	text-transform: uppercase;
	flex-shrink: 0;
	color: #fff;
}

.sq-pos-badge.pos-gk    { background: #2e7d32; }
.sq-pos-badge.pos-def   { background: #1565C0; }
.sq-pos-badge.pos-mid   { background: #e65100; }
.sq-pos-badge.pos-att   { background: #c62828; }
.sq-pos-badge.pos-coach { background: #4a148c; }
.sq-pos-badge.pos-unk   { background: #757575; }

/* ── Shared row ──────────────────────────────────────────────── */
.sq-row {
	display: grid;
	grid-template-columns: 30px 28px 1fr;
	align-items: center;
	gap: 8px;
	padding: 7px 10px;
	background: rgba(255,255,255,.82);
	border: 1.5px solid rgba(21,101,192,.15);
	border-radius: 8px;
	margin-bottom: 4px;
}

.sq-row:last-child { margin-bottom: 0; }

.sq-row--bench {
	background: rgba(255,255,255,.60);
	opacity: .85;
}

.sq-row--coach {
	background: rgba(74,20,140,.04);
	border-color: rgba(74,20,140,.18);
}

.sq-nr {
	font-size: 13px;
	font-weight: 800;
	color: #1565C0;
	text-align: center;
	line-height: 1;
}

.sq-name {
	font-size: 13px;
	font-weight: 500;
	color: #212529;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sq-empty {
	color: #999;
	font-style: italic;
	text-align: center;
	padding: 20px 0;
}

/* ── Squad: grupy pozycji ────────────────────────────────────── */
.sq-body {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.sq-rows {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4px;
}

.sq-group-header {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.2px;
	color: #1565C0;
	margin-bottom: 7px;
	padding-bottom: 5px;
	border-bottom: 1px solid rgba(21,101,192,.15);
}

.sq-group-label {
	flex: 1;
}

.sq-group-count {
	font-size: 10px;
	font-weight: 600;
	color: #999;
	background: rgba(21,101,192,.08);
	border-radius: 10px;
	padding: 1px 7px;
}

/* ── Lineup: dwie kolumny ────────────────────────────────────── */
.lineup-columns {
	display: grid;
	grid-template-columns: 1fr 1px 1fr;
	gap: 0 14px;
	margin-bottom: 16px;
}

.lineup-divider {
	background: rgba(21,101,192,.18);
	align-self: stretch;
	margin: 0;
}

.lineup-team-header {
	padding: 6px 0 9px;
	border-bottom: 2px solid #1565C0;
	margin-bottom: 8px;
}

.lineup-team-header--away {
	text-align: right;
}

.lineup-team-name {
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: .5px;
	color: #212529;
}

.lineup-section-label {
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #1565C0;
	padding: 9px 0 4px;
	opacity: .75;
}

/* Away team: odwrócona kolejność kolumn */
.lineup-away .sq-row {
	grid-template-columns: 1fr 28px 30px;
	direction: rtl;
}

.lineup-away .sq-name {
	direction: ltr;
	text-align: right;
}

.lineup-away .sq-nr,
.lineup-away .sq-pos-badge {
	direction: ltr;
}

/* ── Footer (STS) ────────────────────────────────────────────── */
.sq-footer {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 18px;
}

.sq-footer a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: #555;
	font-size: 12px;
}

.sq-footer a img {
	display: block;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0,0,0,.15);
	flex-shrink: 0;
}

.sq-footer a:hover { opacity: .85; }

.sq-footer-sep {
	color: #ccc;
	font-size: 13px;
	flex-shrink: 0;
}

/* ── Responsywność ───────────────────────────────────────────── */
@media (max-width: 720px) {
	.statscore-squad-widget,
	.statscore-lineup-widget {
		width: 100%;
		padding: 16px 12px 14px;
		border-width: 2px;
	}

	.lineup-columns {
		grid-template-columns: 1fr;
		gap: 20px 0;
	}

	.lineup-divider { display: none; }

	.lineup-away .sq-row {
		grid-template-columns: 30px 28px 1fr;
		direction: ltr;
	}

	.lineup-away .sq-name { text-align: left; }

	.sq-rows { grid-template-columns: 1fr; }
	.sq-name { font-size: 12px; }
	.sq-nr   { font-size: 12px; }
}

@media (max-width: 400px) {
	.statscore-squad-widget,
	.statscore-lineup-widget {
		padding: 12px 8px;
		border-width: 2px;
	}
}

/* ═══════════════════════════════════════════════
   SQUAD — avatar, age (bez flag)
═══════════════════════════════════════════════ */
.sq-row {
    display: grid;
    grid-template-columns: 30px 1fr auto;
    align-items: center;
    gap: 0 8px;
    padding: 7px 10px;
    background: rgba(255,255,255,.82);
    border: 1.5px solid rgba(21,101,192,.15);
    border-radius: 8px;
    margin-bottom: 0;
}
.sq-player-logo {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    object-fit: cover;
    background: #dce8f5;
}
.sq-player-initials {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #1565C0;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sq-age {
    font-size: 11px;
    color: #8899aa;
    min-width: 22px;
    text-align: right;
    white-space: nowrap;
}

/* ═══════════════════════════════════════════════
   LINEUP — team logos + pitch
═══════════════════════════════════════════════ */
.lineup-team-logo {
    width: 32px;
    height: 32px;
    object-fit: contain;
    vertical-align: middle;
    margin-right: 6px;
}

/* Pitch */
.lineup-pitch {
    display: grid;
    grid-template-columns: 1fr 2px 1fr;
    gap: 0;
    background: #2d5a27;
    background-image:
        linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
    background-size: 40px 40px;
    border: 2px solid rgba(255,255,255,.2);
    border-radius: 8px;
    margin-bottom: 20px;
    overflow: hidden;
    min-height: 320px;
}
.pitch-team {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 12px 8px;
}
.pitch-team.pitch-away {
    flex-direction: column-reverse;
}
.pitch-team-name {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: rgba(255,255,255,.6);
    text-align: center;
    padding: 4px 0;
}
.pitch-center-line {
    background: rgba(255,255,255,.25);
    width: 2px;
}
.pitch-row {
    display: flex;
    justify-content: space-evenly;
    gap: 4px;
    margin: 4px 0;
}
.pitch-player {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    min-width: 36px;
}
.pitch-jersey {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #c9a227;
    color: #0d1b2e;
    font-size: 11px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pitch-away .pitch-jersey {
    background: #e0e0e0;
    color: #0d1b2e;
}
.pitch-pname {
    font-size: 9px;
    color: #fff;
    text-align: center;
    line-height: 1.2;
    max-width: 50px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ═══════════════════════════════════════════════
   MATCH STATISTICS WIDGET
═══════════════════════════════════════════════ */
.statscore-matchstats-widget {
    position: relative;
    background: linear-gradient(135deg, #0d1b2e 0%, #1a3a6e 100%);
    border: 1px solid #c9a227;
    border-radius: 12px;
    overflow: hidden;
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif;
    color: #e8edf2;
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 2rem;
}
.ms-inner {
    padding: 20px 24px 16px;
    max-width: 960px;
    margin: 0 auto;
}
.ms-triangle {
    position: absolute;
    top: 0; right: 0;
    width: 0; height: 0;
    border-style: solid;
    border-width: 0 60px 60px 0;
    border-color: transparent #c9a227 transparent transparent;
    opacity: .35;
}
.ms-title {
    font-size: 1rem;
    font-weight: 700;
    color: #c9a227;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin: 0 0 16px;
    text-align: center;
}
.ms-title span {
    border-bottom: 2px solid #c9a227;
    padding-bottom: 4px;
}
.ms-header {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 8px;
    align-items: center;
    margin-bottom: 12px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: rgba(255,255,255,.5);
}
.ms-team-name.ms-home { text-align: right; color: #c9a227; }
.ms-team-name.ms-away { text-align: left;  color: #4fc3f7; }
.ms-stat-label { text-align: center; font-size: 10px; }
.ms-rows { display: flex; flex-direction: column; gap: 8px; }
.ms-row {
    display: grid;
    grid-template-columns: 44px 1fr 44px;
    align-items: center;
    gap: 8px;
}
.ms-val {
    font-size: 13px;
    font-weight: 700;
}
.ms-val-home { text-align: right; color: #c9a227; }
.ms-val-away { text-align: left;  color: #4fc3f7; }
.ms-bar-wrap { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.ms-stat-name {
    font-size: 10px;
    color: rgba(255,255,255,.55);
    text-align: center;
    line-height: 1;
}
.ms-bar {
    display: flex;
    width: 100%;
    height: 6px;
    border-radius: 3px;
    overflow: hidden;
    background: rgba(255,255,255,.1);
}
.ms-bar-home {
    background: #c9a227;
    border-radius: 3px 0 0 3px;
    transition: width .4s ease;
}
.ms-bar-away {
    background: #4fc3f7;
    border-radius: 0 3px 3px 0;
    transition: width .4s ease;
}
.ms-empty {
    text-align: center;
    color: rgba(255,255,255,.4);
    font-size: 13px;
    padding: 20px 0;
}
.ms-footer {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
    border-top: 1px solid rgba(201,162,39,.25);
    padding-top: 8px;
}
.ms-footer a {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    color: #c9a227;
    font-size: 12px;
}
.ms-footer a img {
    display: block;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0,0,0,.25);
    flex-shrink: 0;
}
.ms-footer a:hover { opacity: .85; }

/* ── Odstęp pod widgetami — oddziela treść pojawiającą się poniżej ──── */
.statscore-widget,
.statscore-standings-widget,
.statscore-squad-widget,
.statscore-lineup-widget,
.statscore-matchstats-widget,
.wp-block-statscore-livematch {
	margin-bottom: 40px;
}

/* ══════════════════════════════════════════════════════════════
   WYNIKI — karuzela kart (statscore/results)
   ══════════════════════════════════════════════════════════════ */
.statscore-widget.statscore-results {
	position: relative;
	width: 100%;
	box-sizing: border-box;
	font-family: 'Roboto', Arial, sans-serif;
	color: #1a1d20;
	background: none;
	border: 0;
	padding: 0;
	box-shadow: none;
	overflow: visible;
}

.statscore-widget.statscore-results .statscore-title {
	font-size: clamp(0.95em, 2.2vw, 1.15em);
	font-weight: 800;
	letter-spacing: .3px;
	text-transform: uppercase;
	color: #212529;
	margin: 0 0 14px;
	padding-bottom: 8px;
	border-bottom: 3px solid #1565C0;
	line-height: 1.2;
}

/* ── Carousel container ─────────────────────────────────────── */
.statscore-results .src-carousel {
	position: relative;
}

/* ── Track (przewijalny pas kart) ───────────────────────────── */
.statscore-results .src-track {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x proximity;
	padding: 4px 2px 14px;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: #c4cad0 transparent;
}

.statscore-results .src-track::-webkit-scrollbar { height: 8px; }
.statscore-results .src-track::-webkit-scrollbar-thumb {
	background: #c4cad0;
	border-radius: 4px;
}
.statscore-results .src-track::-webkit-scrollbar-track { background: transparent; }

/* Ukryty pasek przewijania (scrollbar="no") — karuzela nadal przewijalna strzałkami/dotykiem/kółkiem */
.statscore-results .src-track--no-scrollbar { scrollbar-width: none; }
.statscore-results .src-track--no-scrollbar::-webkit-scrollbar { display: none; }

/* ── Karta meczu ────────────────────────────────────────────── */
.statscore-results .src-card {
	scroll-snap-align: start;
	flex: 0 0 clamp(240px, 80%, 300px);
	max-width: 300px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid #e3e6ea;
	border-radius: 10px;
	padding: 14px 16px;
	transition: box-shadow .15s, border-color .15s;
}

.statscore-results .src-card:hover {
	border-color: #d0d6dc;
	box-shadow: 0 4px 14px rgba(0,0,0,.07);
}

/* ── Nagłówek karty ─────────────────────────────────────────── */
.statscore-results .src-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 12px;
}

.statscore-results .src-comp {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: #9aa3ad;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	min-width: 0;
}

.statscore-results .src-badge {
	flex: 0 0 auto;
	font-size: 11px;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 6px;
	white-space: nowrap;
}

.statscore-results .src-badge.is-finished { background: #eef0f2; color: #6b7177; }
.statscore-results .src-badge.is-upcoming { background: #eef0f2; color: #3a4047; }
.statscore-results .src-badge.is-live {
	background: #e74c3c;
	color: #fff;
	animation: statscore-pulse 1s infinite;
}

/* ── Drużyny ────────────────────────────────────────────────── */
.statscore-results .src-teams {
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.statscore-results .src-team {
	display: grid;
	grid-template-columns: 22px 1fr auto;
	align-items: center;
	gap: 10px;
}

.statscore-results .src-logo {
	width: 22px;
	height: 22px;
	object-fit: contain;
	border-radius: 3px;
	flex-shrink: 0;
}

.statscore-results .src-logo--ph {
	display: block;
	background: #eef0f2;
	border-radius: 50%;
}

.statscore-results .src-name {
	font-size: 15px;
	font-weight: 600;
	color: #1a1d20;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	min-width: 0;
}

.statscore-results .src-score {
	font-size: 16px;
	font-weight: 700;
	color: #1a1d20;
	text-align: right;
	min-width: 14px;
	font-variant-numeric: tabular-nums;
}

.statscore-results .src-score.is-blank {
	color: #b5bcc3;
	font-weight: 600;
}

/* ── Link „Przejdź do relacji” ──────────────────────────────── */
.statscore-results .src-link {
	margin-top: 12px;
	padding-top: 10px;
	border-top: 1px solid #eef0f2;
	text-align: right;
	font-size: 13px;
	font-weight: 500;
	color: #9aa3ad;
	text-decoration: none;
	transition: color .15s;
}

.statscore-results .src-link:hover,
.statscore-results .src-link:focus {
	color: #1565C0;
	text-decoration: none;
}

.statscore-results .src-link--disabled {
	color: #c4cad0;
	cursor: default;
}

/* ── Strzałki nawigacji ─────────────────────────────────────── */
.statscore-results .src-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 38px;
	height: 38px;
	padding: 0;
	border-radius: 50%;
	border: 1px solid #e3e6ea;
	background: #fff;
	box-shadow: 0 2px 10px rgba(0,0,0,.14);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	line-height: 1;
	color: #3a4047;
	transition: background .15s, opacity .15s;
}

.statscore-results .src-nav:hover { background: #f5f7f9; }
.statscore-results .src-nav[hidden] { display: none; }
.statscore-results .src-nav--prev { left: -8px; }
.statscore-results .src-nav--next { right: -8px; }

/* ── Stopka (STS) ───────────────────────────────────────────── */
.statscore-results .statscore-footer {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 10px 0 0;
}

.statscore-results .statscore-footer a {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: #555;
	font-size: 12px;
}

.statscore-results .statscore-footer a img {
	display: block;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0,0,0,.15);
	flex-shrink: 0;
}

.statscore-results .statscore-footer a:hover { opacity: .85; }

.statscore-results .statscore-empty {
	color: #999;
	font-style: italic;
	text-align: center;
	padding: 20px 0;
}

/* ── Mobile ─────────────────────────────────────────────────── */
@media (max-width: 600px) {
	.statscore-results .src-card {
		flex-basis: 82%;
		padding: 12px 14px;
	}
	.statscore-results .src-name  { font-size: 14px; }
	.statscore-results .src-score { font-size: 15px; }
	/* na mobile nawigacja przez swipe/scroll — strzałki ukryte */
	.statscore-results .src-nav { display: none !important; }
}

/* ═══════════════════════════════════════════════════════════════
   Dziś w STS TV — box „Dziś na antenie" ([sts_tv])
   ═══════════════════════════════════════════════════════════════ */
.statscore-sts-tv {
	box-sizing: border-box;
	max-width: 420px;
	background: #fff;
	border: 1px solid #e4e8ef;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 10px 30px -18px rgba(20, 40, 80, .35);
	font-family: inherit;
}
.statscore-sts-tv * { box-sizing: border-box; }

.statscore-sts-tv .sts-tv-head {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 14px 16px;
	background: #002BFF;                 /* niebieski STS */
	color: #fff;
}
.statscore-sts-tv .sts-tv-title {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.1;
	color: #fff;
}
.statscore-sts-tv .sts-tv-dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #ff2d46;
	box-shadow: 0 0 0 0 rgba(255, 45, 70, .6);
	animation: sts-tv-pulse 1.5s ease-out infinite;
}
@keyframes sts-tv-pulse {
	0%   { box-shadow: 0 0 0 0 rgba(255, 45, 70, .6); }
	70%  { box-shadow: 0 0 0 7px rgba(255, 45, 70, 0); }
	100% { box-shadow: 0 0 0 0 rgba(255, 45, 70, 0); }
}

.statscore-sts-tv .sts-tv-list {
	list-style: none;
	margin: 0;
	padding: 6px;
}
.statscore-sts-tv .sts-tv-row {
	display: grid;
	grid-template-columns: 52px 30px 1fr auto;
	align-items: center;
	gap: 12px;
	padding: 10px 10px;
	border-radius: 9px;
	transition: background .16s ease;
}
.statscore-sts-tv .sts-tv-row + .sts-tv-row { border-top: 1px solid #f0f2f6; }
.statscore-sts-tv .sts-tv-row:hover { background: #f5f8fd; }

.statscore-sts-tv .sts-tv-time {
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	color: #5a677d;
	font-size: 14px;
	text-align: center;
}
.statscore-sts-tv .sts-tv-now {
	color: #ff2d46;
	font-size: 11px;
	letter-spacing: .06em;
}
.statscore-sts-tv .sts-tv-row.is-live .sts-tv-time { color: #ff2d46; }

.statscore-sts-tv .sts-tv-sport {
	display: inline-grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border-radius: 8px;
	background: #eef2f9;
	color: #0b48e0;
}
.statscore-sts-tv .sts-tv-row.is-live .sts-tv-sport {
	background: rgba(255, 45, 70, .12);
	color: #ff2d46;
}

.statscore-sts-tv .sts-tv-main { min-width: 0; }
.statscore-sts-tv .sts-tv-match {
	display: block;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.25;
	color: #12203a;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.statscore-sts-tv .sts-tv-league {
	display: block;
	font-size: 11.5px;
	color: #8590a3;
}

.statscore-sts-tv .sts-tv-badge {
	background: #ff2d46;
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .05em;
	padding: 3px 7px;
	border-radius: 5px;
}

.statscore-sts-tv .sts-tv-empty { padding: 18px 16px; color: #8590a3; }

.statscore-sts-tv .sts-tv-more {
	display: block;
	padding: 12px 16px;
	border-top: 1px solid #eef1f6;
	color: #0b48e0;
	font-weight: 600;
	font-size: 13px;
	text-decoration: none;
}
.statscore-sts-tv .sts-tv-more:hover { background: #f5f8fd; text-decoration: underline; }

@media (max-width: 600px) {
	.statscore-sts-tv { max-width: 100%; }
	.statscore-sts-tv .sts-tv-row { grid-template-columns: 46px 28px 1fr auto; gap: 9px; }
}

/* ─── Hit dnia (shortcode [sts_hit] / blok statscore/sts-hit) ─────────── */

.sts-hit { position: relative; width: 100%; max-width: 100%; margin: 0 0 16px; border-radius: 16px; overflow: hidden; color: #fff; font-family: inherit; min-height: 340px; display: flex; flex-direction: column; background: radial-gradient(120% 130% at 18% 0%, rgba(96,140,255,.55), transparent 55%), linear-gradient(160deg, #1b4bff 0%, #002BFF 42%, #0019a6 100%); }
.sts-hit * { box-sizing: border-box; }
.sts-hit::before { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(115deg, rgba(255,255,255,.06) 0 2px, transparent 2px 34px); pointer-events: none; }
.sts-hit > * { position: relative; z-index: 1; }

.sts-hit-top { display: flex; align-items: center; gap: 10px; padding: 18px 22px; flex-wrap: wrap; }
.sts-hit-tag { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; background: #f0a30a; color: #05102b; padding: 5px 9px; border-radius: 6px; }
.sts-hit-live { display: inline-flex; align-items: center; gap: 7px; background: #ff2d46; color: #fff; font-weight: 700; font-size: 12px; letter-spacing: .06em; padding: 5px 10px; border-radius: 6px; text-transform: uppercase; }
.sts-hit-live .d { width: 8px; height: 8px; border-radius: 50%; background: #fff; animation: sts-hit-pulse 1.4s ease-out infinite; }
@keyframes sts-hit-pulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .35; transform: scale(.7); } }
.sts-hit-time { display: inline-flex; align-items: center; gap: 7px; background: rgba(255,255,255,.16); color: #fff; font-weight: 700; font-size: 12px; letter-spacing: .06em; padding: 5px 10px; border-radius: 6px; text-transform: uppercase; font-variant-numeric: tabular-nums; }
.sts-hit-league { margin-left: auto; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #fff; border: 1px solid rgba(255,255,255,.45); padding: 5px 10px; border-radius: 6px; }

.sts-hit-mid { flex: 1; display: grid; place-items: center; padding: 14px; }
.sts-hit-watch { display: inline-flex; align-items: center; gap: 11px; background: #f0a30a; color: #05102b; font-weight: 800; font-size: 18px; padding: 16px 30px; border-radius: 12px; text-decoration: none; box-shadow: 0 16px 38px -12px rgba(0,0,0,.5); transition: transform .18s ease, filter .18s; }
.sts-hit-watch:hover { transform: translateY(-2px); filter: brightness(1.05); color: #05102b; }

.sts-hit-teams { display: flex; align-items: center; gap: 14px; padding: 0 22px; }
.sts-hit-team { display: flex; align-items: center; gap: 11px; font-weight: 700; font-size: 20px; min-width: 0; }
.sts-hit-team.away { margin-left: auto; flex-direction: row-reverse; text-align: right; }
.sts-hit-crest { position: relative; width: 38px; height: 38px; border-radius: 8px; overflow: hidden; display: grid; place-items: center; font-size: 12px; font-weight: 700; color: #fff; flex: none; box-shadow: 0 0 0 1px rgba(255,255,255,.15); }
.sts-hit-crest img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 3px; background: inherit; }

.sts-hit-cta { display: flex; gap: 12px; padding: 18px 22px 22px; flex-wrap: wrap; }
.sts-hit-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; font-weight: 800; font-size: 16px; padding: 15px 26px; border-radius: 11px; cursor: pointer; text-decoration: none; transition: transform .16s ease, filter .18s; }
.sts-hit-btn--play { background: #fff; color: #05102b; box-shadow: 0 12px 26px -10px rgba(0,0,0,.5); }
.sts-hit-btn--play:hover { transform: translateY(-2px); filter: brightness(.96); color: #05102b; }
.sts-hit-btn--bet { background: #05123f; color: #fff; border: 1px solid rgba(255,255,255,.25); box-shadow: 0 12px 26px -12px rgba(0,0,0,.6); }
.sts-hit-btn--bet:hover { transform: translateY(-2px); background: #0a1c5e; color: #fff; }

@media (max-width: 600px) {
	.sts-hit-team { font-size: 16px; }
	.sts-hit-watch { font-size: 16px; padding: 14px 22px; }
	.sts-hit-btn { flex: 1; }
}

/* ─── Pasek promocyjny (shortcode [sts_promo]) ────────────────────────── */

.sts-promo { width: 100%; max-width: 100%; margin: 0 0 18px; border-radius: 16px; padding: 24px 26px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; color: #fff; font-family: inherit; background: linear-gradient(120deg, #002BFF 0%, #123bd6 100%); box-shadow: 0 14px 32px -16px rgba(0,43,255,.65); }
.sts-promo * { box-sizing: border-box; }
.sts-promo-text { flex: 1; min-width: 230px; }
.sts-promo-title { margin: 0 0 7px; font-size: 21px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; line-height: 1.15; }
.sts-promo-title span { color: #f0a30a; }
.sts-promo-sub { margin: 0; font-size: 15px; line-height: 1.45; color: rgba(255,255,255,.9); }
.sts-promo-btn { flex: none; display: inline-flex; align-items: center; gap: 8px; background: #f0a30a; color: #05102b; font-weight: 800; font-size: 16px; padding: 15px 30px; border-radius: 11px; text-decoration: none; box-shadow: 0 12px 28px -10px rgba(240,163,10,.75); transition: transform .16s ease, filter .18s; }
.sts-promo-btn:hover { transform: translateY(-2px); filter: brightness(1.05); color: #05102b; }

@media (max-width: 600px) {
	.sts-promo-btn { width: 100%; justify-content: center; }
}