/**
 * Página Jogos (/jogos/) — direcção 1b editorial (Claude Design, Out 2026).
 *
 * Folha da página (sem build): lê os tokens do :root (tailwind-src.css) com
 * recurso. Telemóvel < 768, tablet 768–1023, desktop ≥ 1024 (o cabeçalho do
 * site troca no mesmo ponto). A barra de dias fica fixa por baixo do
 * cabeçalho do site (--sp-site-header-offset). Sem filtros de modalidade,
 * escalões nem favoritos (decisões do Luís, 7 Out 2026).
 *
 * Adaptações ao desenho: letra só na escala do tema (os 7–10 px do protótipo
 * passam a 11, e o resultado de 30 a 32); o kicker laranja passa a
 * --sp-kicker-ink e os textos que estavam a #7C8AA5 com informação passam a
 * --sp-ink-muted (contraste AA).
 *
 * @package SuperPortistas
 */

/* ------------------------------------------------------------------ base */

.sp-jg {
	--jg-dias-h: 68px;
	--jg-mes-h: 26px;
	--jg-linha: var(--sp-surface-subtle, #eef2f7);
	--jg-fixo: var(--sp-site-header-offset, 3.5rem);
	color: var(--sp-ink, #0f172a);
	font-family: "Libre Franklin", ui-sans-serif, system-ui, sans-serif;
	background: var(--sp-surface-muted, #f4f7fb);
	padding-bottom: 8px;
}

.sp-jg [hidden] {
	display: none !important;
}

.sp-jg a:focus-visible,
.sp-jg button:focus-visible,
.sp-jg summary:focus-visible {
	outline: 2px solid var(--sp-porto, #004b9b);
	outline-offset: 2px;
	border-radius: 6px;
}

.sp-jg h1,
.sp-jg h2,
.sp-jg h3 {
	letter-spacing: normal;
}

.sp-jg-wrap {
	max-width: 72rem;
	margin: 0 auto;
	padding: 0 16px;
}

.sp-jg-so-largo,
.sp-jg-so-desktop {
	display: none !important;
}

@media (min-width: 640px) {
	.sp-jg-wrap {
		padding: 0 24px;
	}
}

@media (min-width: 768px) {
	.sp-jg {
		--jg-dias-h: 72px;
	}

	.sp-jg-so-movel {
		display: none !important;
	}

	.sp-jg-so-largo {
		display: revert !important;
	}
}

@media (min-width: 1024px) {
	.sp-jg-so-desktop {
		display: revert !important;
	}

	.sp-jg-ate-desktop {
		display: none !important;
	}
}

/* ------------------------------------------------------------- cabeçalho */

.sp-jg-cab {
	background: var(--sp-surface, #fff);
	padding-top: 14px;
}

.sp-jg-cab__linha {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 16px;
}

.sp-jg-cab__textos {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.sp-jg-cab__titulo {
	margin: 0;
	font: 600 32px/1.05 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-resumo {
	margin: 0;
	font: 400 15px/1.35 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-resumo__vivo {
	color: var(--sp-live, #dc2626);
	font-weight: 600;
}

.sp-jg-vistas {
	display: flex;
	gap: 18px;
	margin-top: 12px;
	border-bottom: 1px solid var(--sp-border, #dfe5ee);
	overflow-x: auto;
	scrollbar-width: none;
}

.sp-jg-vistas::-webkit-scrollbar {
	display: none;
}

.sp-jg-vista {
	flex: none;
	padding-bottom: 10px;
	margin-bottom: -1px;
	border-bottom: 2px solid transparent;
	font: 500 14px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
	text-decoration: none;
	white-space: nowrap;
}

.sp-jg-vista:hover {
	color: var(--sp-ink, #0f172a);
}

.sp-jg-vista.is-activa {
	color: var(--sp-porto, #004b9b);
	font-weight: 700;
	border-bottom-color: var(--sp-porto, #004b9b);
}

/* Sincronizar: no telemóvel é uma ligação ao lado do kicker. */
.sp-jg-sync {
	position: absolute;
	top: -2px;
	right: 0;
}

.sp-jg-sync__botao {
	display: flex;
	align-items: center;
	gap: 5px;
	list-style: none;
	cursor: pointer;
	font: 500 13px/1 "Libre Franklin", sans-serif;
	color: var(--sp-porto, #004b9b);
}

.sp-jg-sync__botao::-webkit-details-marker {
	display: none;
}

.sp-jg-sync__menu {
	position: absolute;
	right: 0;
	top: calc(100% + 8px);
	z-index: 40;
	width: 260px;
	display: flex;
	flex-direction: column;
	padding: 8px;
	background: var(--sp-surface, #fff);
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius, 12px);
	box-shadow: var(--sp-shadow-panel, 0 10px 30px rgba(6, 21, 43, 0.12));
}

.sp-jg-sync__menu a {
	padding: 10px;
	border-radius: 8px;
	font: 500 14px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-porto, #004b9b);
	text-decoration: none;
}

.sp-jg-sync__menu a:hover {
	background: var(--sp-surface-muted, #f4f7fb);
}

.sp-jg-sync__nota {
	margin: 4px 10px 6px;
	font: 400 12px/1.4 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

@media (min-width: 768px) {
	.sp-jg-cab {
		padding-top: 18px;
	}

	.sp-jg-cab__titulo {
		font-size: 40px;
	}

	.sp-jg-resumo {
		font-size: 16px;
	}

	.sp-jg-vistas {
		gap: 22px;
		margin-top: 16px;
	}

	.sp-jg-vista {
		font-size: 15px;
		padding-bottom: 12px;
	}

	.sp-jg-sync {
		position: relative;
		top: auto;
	}

	.sp-jg-sync__botao {
		height: 40px;
		padding: 0 14px;
		gap: 8px;
		border: 1px solid var(--sp-border, #dfe5ee);
		border-radius: var(--sp-radius-md, 10px);
		font-size: 14px;
		background: var(--sp-surface, #fff);
	}

	.sp-jg-sync__botao:hover {
		background: var(--sp-surface-muted, #f4f7fb);
	}
}

@media (min-width: 1024px) {
	.sp-jg-cab {
		padding-top: 24px;
	}

	.sp-jg-cab__titulo {
		font-size: 44px;
	}

	.sp-jg-vistas {
		gap: 26px;
		margin-top: 18px;
	}
}

/* -------------------------------------------------------- barra de dias */

.sp-jg-barra-dias {
	position: sticky;
	top: var(--jg-fixo);
	z-index: 20;
	background: var(--sp-surface, #fff);
	border-bottom: 1px solid var(--sp-border, #dfe5ee);
}

/* O período dos Resultados (não fixo). */
.sp-jg-barra-periodo {
	background: var(--sp-surface, #fff);
	border-bottom: 1px solid var(--sp-border, #dfe5ee);
	padding: 10px 0;
}

.sp-jg-barra-dias .sp-jg-wrap {
	padding: 0 10px;
}

/* Mês e ano do dia escolhido e o atalho «Hoje», por cima dos dias. */
.sp-jg-dias__topo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	height: var(--jg-mes-h);
	padding: 6px 4px 0;
}

.sp-jg-dias__mes {
	margin: 0;
	font: 600 13px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink-strong, #33415c);
	white-space: nowrap;
}

.sp-jg-dias__hoje {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	height: 22px;
	padding: 0 10px;
	border: 1px solid var(--sp-porto, #004b9b);
	border-radius: 11px;
	font: 600 12px/1 "Libre Franklin", sans-serif;
	color: var(--sp-porto, #004b9b);
	text-decoration: none;
	white-space: nowrap;
}

.sp-jg-dias__hoje:hover {
	background: var(--sp-porto-light, #e8f0fa);
}

.sp-jg-dias {
	display: flex;
	align-items: center;
	gap: 6px;
	height: var(--jg-dias-h);
}

.sp-jg-dias__lista {
	display: flex;
	flex: 1;
	gap: 6px;
	min-width: 0;
}

.sp-jg-dia {
	flex: 1;
	min-width: 0;
	height: 52px;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	border: 1px solid transparent;
	border-radius: var(--sp-radius-md, 10px);
	text-decoration: none;
	color: var(--sp-ink, #0f172a);
}

.sp-jg-dia--m {
	display: flex;
}

.sp-jg-dia:hover {
	background: var(--sp-surface-muted, #f4f7fb);
}

.sp-jg-dia__rotulo {
	font: 500 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--sp-ink-muted, #475569);
	white-space: nowrap;
}

.sp-jg-dia__num {
	font: 600 20px/1 "Source Serif 4", Georgia, serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink, #0f172a);
}

.sp-jg-dia.is-vazio .sp-jg-dia__num {
	color: var(--sp-ink-muted, #475569);
	font-weight: 400;
}

.sp-jg-dia__pontos {
	display: flex;
	gap: 2px;
	height: 4px;
	align-items: center;
}

.sp-jg-pt {
	display: inline-block;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: var(--sp-ink-soft, #7c8aa5);
}

.sp-jg-pt--vivo {
	background: var(--sp-live, #dc2626);
}

.sp-jg-pt--futebol {
	background: var(--sp-porto, #004b9b);
}

/* Ícones dos desportos do dia (o mês continua com pontos). */
.sp-jg-dia__icones {
	display: flex;
	align-items: center;
	gap: 2px;
	height: 12px;
	margin-top: 2px;
	color: var(--sp-porto, #004b9b);
}

.sp-jg-dia__icones .sp-jg-ico {
	flex: none;
}

.sp-jg-dia__mais {
	margin-left: 2px;
	font: 600 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: -0.02em;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-dia.is-vivo .sp-jg-dia__icones,
.sp-jg-dia.is-vivo .sp-jg-dia__mais {
	color: var(--sp-live, #dc2626);
}

.sp-jg-dia.is-escolhido {
	background: var(--sp-surface, #fff);
	border-color: var(--sp-border, #dfe5ee);
}

.sp-jg-dia.is-escolhido .sp-jg-dia__rotulo {
	color: var(--sp-ink-strong, #33415c);
}

.sp-jg-dia.is-hoje {
	background: var(--sp-surface, #fff);
	border-color: var(--sp-porto, #004b9b);
	box-shadow: 0 1px 3px rgba(0, 75, 155, 0.18);
}

.sp-jg-dia.is-hoje .sp-jg-dia__rotulo,
.sp-jg-dia.is-hoje .sp-jg-dia__num {
	color: var(--sp-porto, #004b9b);
}

.sp-jg-dia.is-hoje:not(.is-escolhido) {
	box-shadow: none;
}

.sp-jg-dias__seta,
.sp-jg-dias__cal {
	flex: none;
	width: 40px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-md, 10px);
	background: var(--sp-surface, #fff);
	color: var(--sp-porto, #004b9b);
}

.sp-jg-dias__seta:hover,
.sp-jg-dias__cal:hover {
	background: var(--sp-surface-muted, #f4f7fb);
}

@media (min-width: 768px) {
	.sp-jg-barra-dias .sp-jg-wrap {
		padding: 0 24px;
	}

	.sp-jg-dias,
	.sp-jg-dias__lista {
		gap: 8px;
	}

	.sp-jg-dia--t {
		display: flex;
	}

	.sp-jg-dias__seta.sp-jg-so-largo {
		display: flex !important;
	}

	.sp-jg-dias__cal {
		width: 44px;
	}
}

@media (min-width: 1024px) {
	.sp-jg-dia--d {
		display: flex;
	}
}

/* -------------------------------------------- «Actualizado há» e período */

.sp-jg-actualizado {
	display: none;
	margin-left: 8px;
	font: 400 12px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink-soft, #7c8aa5);
}

.sp-jg-actualizado::before {
	content: "· ";
}

@media (min-width: 1024px) {
	.sp-jg-actualizado:not([hidden]) {
		display: inline;
	}
}

.sp-jg-periodo {
	display: flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	overflow-x: auto;
	scrollbar-width: none;
}

.sp-jg-periodo::-webkit-scrollbar {
	display: none;
}

.sp-jg-esc {
	flex: none;
	height: 28px;
	padding: 0 10px;
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: 14px;
	background: var(--sp-surface, #fff);
	font: 500 12px/26px "Libre Franklin", sans-serif;
	color: var(--sp-ink-strong, #33415c);
	text-decoration: none;
	white-space: nowrap;
}

.sp-jg-esc:hover {
	background: var(--sp-surface-muted, #f4f7fb);
	color: var(--sp-ink, #0f172a);
}

.sp-jg-esc.is-activo {
	background: var(--sp-porto, #004b9b);
	border-color: var(--sp-porto, #004b9b);
	color: #fff;
	font-weight: 600;
}

/* ---------------------------------------------------------- corpo/grelha */

.sp-jg-corpo {
	padding-top: 12px;
	padding-bottom: 8px;
}

@media (max-width: 767px) {
	.sp-jg-wrap.sp-jg-corpo {
		padding-left: 12px;
		padding-right: 12px;
	}
}

.sp-jg-principal {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}

.sp-jg-lateral {
	display: none;
}

@media (min-width: 768px) {
	.sp-jg-corpo {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 240px;
		gap: 16px;
		align-items: start;
		padding-top: 16px;
		padding-bottom: 20px;
	}

	.sp-jg-lateral {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}
}

@media (min-width: 1024px) {
	.sp-jg-corpo {
		grid-template-columns: minmax(0, 1fr) var(--sp-aside-width, 21.25rem);
		gap: 24px;
		padding-top: 20px;
		padding-bottom: 32px;
	}

	.sp-jg-principal {
		gap: 12px;
	}

	.sp-jg-lateral {
		gap: 12px;
		position: sticky;
		top: calc(var(--jg-fixo) + var(--jg-mes-h) + var(--jg-dias-h) + 20px);
	}

	.sp-jg--resultados .sp-jg-lateral,
	.sp-jg--calendario .sp-jg-lateral {
		top: calc(var(--jg-fixo) + 20px);
	}

	.sp-jg-corpo--classif {
		grid-template-columns: 280px minmax(0, 1fr);
	}
}

.sp-jg-lista {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}

@media (min-width: 1024px) {
	.sp-jg-lista {
		gap: 12px;
	}
}

/* ---------------------------------------------------------------- cartões */

.sp-jg-cartao {
	background: var(--sp-surface, #fff);
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-xl, 14px);
	overflow: hidden;
}

.sp-jg-cartao__titulo {
	margin: 0;
	padding: 12px 14px 8px;
	font: 600 16px/1.15 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-rotulo {
	margin: 0;
	font: 600 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: var(--sp-tracking-kicker, 0.1em);
	text-transform: uppercase;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-ligacao {
	font: 500 12px/1 "Libre Franklin", sans-serif;
	color: var(--sp-porto, #004b9b);
	text-decoration: none;
	white-space: nowrap;
}

.sp-jg-ligacao:hover {
	text-decoration: underline;
}

.sp-jg-botao {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 36px;
	padding: 0 14px;
	border-radius: var(--sp-radius-md, 10px);
	background: var(--sp-porto, #004b9b);
	color: #fff;
	font: 600 13px/1 "Libre Franklin", sans-serif;
	text-decoration: none;
	white-space: nowrap;
}

.sp-jg-botao:hover {
	background: var(--sp-porto-hover, #003d7a);
	color: #fff;
}

.sp-jg-botao-ico {
	flex: none;
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-md, 10px);
	background: var(--sp-surface, #fff);
	color: var(--sp-porto, #004b9b);
	cursor: pointer;
}

.sp-jg-botao-ico:hover {
	background: var(--sp-surface-muted, #f4f7fb);
}

.sp-jg-botao-sec {
	height: 32px;
	padding: 0 12px;
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-sm, 8px);
	background: var(--sp-surface, #fff);
	font: 600 12px/1 "Libre Franklin", sans-serif;
	color: var(--sp-porto, #004b9b);
	cursor: pointer;
}

/* ---------------------------------------------------------- bloco ao vivo */

.sp-jg-vivo {
	position: relative;
	overflow: hidden;
	background: var(--sp-navy, #06152b);
	color: #fff;
	border-radius: var(--sp-radius-xl, 14px);
}

.sp-jg-vivo__link {
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: inherit;
}

.sp-jg-vivo__corpo {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 14px 16px;
}

.sp-jg-vivo__topo {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
}

.sp-jg-vivo__kicker {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	font: 700 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: var(--sp-tracking-kicker, 0.1em);
	text-transform: uppercase;
	color: var(--sp-on-navy-live, #fca5a5);
	white-space: nowrap;
}

.sp-jg-ponto-vivo {
	flex: none;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--sp-live, #dc2626);
	animation: sp-jg-pulso 1.6s ease-out infinite;
}

.sp-jg-vivo.is-parado .sp-jg-ponto-vivo {
	animation: none;
}

@keyframes sp-jg-pulso {
	0% {
		box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.6);
	}

	70% {
		box-shadow: 0 0 0 6px rgba(220, 38, 38, 0);
	}

	100% {
		box-shadow: 0 0 0 0 rgba(220, 38, 38, 0);
	}
}

.sp-jg-vivo__meta {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font: 400 12px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-on-navy-meta, #9fb0cc);
}

.sp-jg-vivo__jogo {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: 12px;
}

.sp-jg-vivo__equipa {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

.sp-jg-vivo__equipa--fora {
	justify-content: flex-end;
	text-align: right;
}

.sp-jg-vivo__nome {
	min-width: 0;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow-wrap: break-word;
	font: 400 16px/1.15 "Libre Franklin", sans-serif;
}

.sp-jg-vivo__nome.is-porto {
	font-weight: 700;
}

.sp-jg-vivo__placar {
	font: 700 32px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.sp-jg-vivo__traco {
	position: relative;
	top: -0.1em;
	padding: 0 6px;
	color: var(--sp-on-navy-meta, #9fb0cc);
}

.sp-jg-vivo--inferido .sp-jg-vivo__placar {
	color: var(--sp-on-navy-meta, #9fb0cc);
}

.sp-jg-vivo__rodape {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	font: 400 13px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-on-navy-text, #c9d4e6);
}

.sp-jg-vivo__evento {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	transition: opacity 0.16s;
}

.sp-jg-vivo__accoes {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: none;
	white-space: nowrap;
}

.sp-jg-vivo__ficha {
	position: relative;
	z-index: 2;
	color: #fff;
	font-weight: 600;
	text-decoration: none;
}

.sp-jg-vivo__ficha:hover {
	color: #fff;
	text-decoration: underline;
}

@media (min-width: 1024px) {
	.sp-jg-vivo {
		border-radius: var(--sp-radius-lg, 16px);
	}

	.sp-jg-vivo__corpo {
		gap: 14px;
		padding: 16px 20px 0;
	}

	.sp-jg-vivo__meta {
		font-size: 13px;
	}

	.sp-jg-vivo__jogo {
		gap: 16px;
	}

	.sp-jg-vivo__equipa {
		gap: 12px;
	}

	.sp-jg-vivo__nome {
		font-size: 20px;
	}

	.sp-jg-vivo__placar {
		font-size: 40px;
	}

	.sp-jg-vivo__traco {
		padding: 0 10px;
	}

	.sp-jg-vivo__rodape {
		margin: 0 -20px;
		padding: 12px 20px;
		background: var(--sp-navy-raised, #0c2344);
		border-top: 1px solid var(--sp-navy-line, #1e3d6b);
	}

	.sp-jg-vivo__accoes {
		gap: 16px;
	}
}

/* --------------------------------------------------------------- emblemas */

.sp-jg-emb {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--sp-porto-light, #e8f0fa);
	color: var(--sp-ink-strong, #33415c);
	font: 700 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: -0.06em;
	text-transform: uppercase;
}

.sp-jg-emb--porto {
	background: var(--sp-porto, #004b9b);
	color: #fff;
}

.sp-jg-emb--28 {
	width: 28px;
	height: 28px;
}

.sp-jg-emb--32 {
	width: 32px;
	height: 32px;
}

.sp-jg-emb--36 {
	width: 36px;
	height: 36px;
}

.sp-jg-emb--escuro {
	background: var(--sp-navy-badge, #1c2e4d);
	color: #fff;
}

.sp-jg-emb--escuro.sp-jg-emb--porto {
	background: #fff;
	color: var(--sp-porto, #004b9b);
}

.sp-jg-emb--logo {
	background: transparent;
}

.sp-jg-emb--logo.sp-jg-emb--escuro {
	background: #fff;
	padding: 3px;
}

.sp-jg-emb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

@media (min-width: 1024px) {
	.sp-jg-vivo .sp-jg-emb--28 {
		width: 36px;
		height: 36px;
	}
}

/* ------------------------------------------------------------------ grupo */

.sp-jg-grupo {
	background: var(--sp-surface, #fff);
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-xl, 14px);
	overflow: hidden;
}

.sp-jg-grupo__cab {
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 10px 14px 6px;
}

/* Logótipo da competição ou, sem ele, o ícone do desporto num quadrado. */
.sp-jg-grupo__marca {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: var(--sp-radius-xs, 6px);
	background: var(--sp-porto-light, #e8f0fa);
	color: var(--sp-porto, #004b9b);
}

.sp-jg-grupo__marca--logo {
	background: transparent;
}

.sp-jg-grupo__marca img {
	display: block;
	width: 20px;
	height: 20px;
	object-fit: contain;
}

.sp-jg-grupo__desporto {
	flex: none;
	display: inline-flex;
	color: var(--sp-ink-soft, #7c8aa5);
}

.sp-jg-grupo__jornada {
	flex: none;
	margin-left: auto;
	padding-left: 8px;
	font: 500 12px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink-muted, #475569);
	white-space: nowrap;
}

.sp-jg-sigla {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: var(--sp-radius-xs, 6px);
	background: var(--sp-porto-light, #e8f0fa);
	color: var(--sp-porto, #004b9b);
	font: 700 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: -0.04em;
}

.sp-jg-sigla--escura {
	background: var(--sp-navy, #06152b);
	color: #fff;
}

.sp-jg-sigla--grande {
	width: 32px;
	height: 32px;
	border-radius: var(--sp-radius-sm, 8px);
}

.sp-jg-grupo__nome {
	min-width: 0;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font: 600 16px/1.15 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-grupo__mais {
	display: block;
	width: 100%;
	padding: 12px 14px;
	border: 0;
	border-top: 1px solid var(--jg-linha);
	background: var(--sp-surface, #fff);
	font: 500 13px/1 "Libre Franklin", sans-serif;
	color: var(--sp-porto, #004b9b);
	text-align: left;
	cursor: pointer;
}

.sp-jg-grupo.is-aberto .sp-jg-grupo__mais {
	display: none;
}

@media (min-width: 768px) {
	.sp-jg-grupo__mais {
		display: none;
	}
}

@media (min-width: 1024px) {
	.sp-jg-grupo__cab {
		padding: 10px 16px 6px;
	}
}

/* O cabeçalho abre a página da competição (8 Out 2026): o ::after do <a>
   cobre o cabeçalho todo, por cima do logótipo e da jornada. */
.sp-jg-grupo--ligado .sp-jg-grupo__cab {
	position: relative;
}

.sp-jg-grupo__ligacao {
	color: inherit;
	text-decoration: none;
}

.sp-jg-grupo__ligacao::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

.sp-jg-grupo--ligado .sp-jg-grupo__cab:hover .sp-jg-grupo__ligacao {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sp-jg-grupo--ligado .sp-jg-grupo__cab:hover {
	background: var(--sp-surface-muted, #f4f7fb);
}

.sp-jg .sp-jg-grupo__ligacao:focus-visible {
	outline: none;
}

.sp-jg .sp-jg-grupo__ligacao:focus-visible::after {
	outline: 2px solid var(--sp-porto, #004b9b);
	outline-offset: -2px;
	border-radius: var(--sp-radius-xl, 14px) var(--sp-radius-xl, 14px) 0 0;
}

.sp-jg-grupo__seta {
	flex: none;
	margin-left: 6px;
	font: 400 20px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink-soft, #7c8aa5);
}

.sp-jg-grupo__jornada + .sp-jg-grupo__seta {
	margin-left: 2px;
}

.sp-jg-grupo__nome + .sp-jg-grupo__seta,
.sp-jg-grupo__desporto + .sp-jg-grupo__seta {
	margin-left: auto;
}

/* ------------------------------------------------------------------ linha */

.sp-jg-linha {
	position: relative;
	display: grid;
	grid-template-columns: 52px minmax(0, 1fr) auto 36px;
	grid-template-areas:
		"estado equipas placar lado"
		"parc parc parc parc";
	align-items: center;
	min-height: 64px;
	padding: 8px 10px 8px 14px;
	border-top: 1px solid var(--jg-linha);
	background: var(--sp-surface, #fff);
}

.sp-jg-linha--directo {
	background: var(--sp-live-row, #fff7f7);
}

.sp-jg-linha:not(.sp-jg-linha--directo):hover {
	background: var(--sp-surface-raised, #f8fafc);
}

.sp-jg-linha--extra {
	display: none;
}

.sp-jg-grupo.is-aberto .sp-jg-linha--extra {
	display: grid;
}

.sp-jg-linha__link {
	position: absolute;
	inset: 0;
	z-index: 1;
}

.sp-jg-linha__link:focus-visible {
	outline-offset: -3px !important;
	border-radius: 0 !important;
}

.sp-jg-linha__estado {
	grid-area: estado;
}

.sp-jg-linha__estado time {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.sp-jg-estado {
	font: 500 13px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink-strong, #33415c);
	white-space: nowrap;
}

.sp-jg-estado--vivo {
	font-weight: 700;
	color: var(--sp-live, #dc2626);
}

.sp-jg-linha__sub {
	font: 400 11px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink-muted, #475569);
	white-space: nowrap;
}

.sp-jg-linha__sub:empty {
	display: none;
}

.sp-jg-linha__equipas {
	grid-area: equipas;
	display: flex;
	flex-direction: column;
	gap: 7px;
	min-width: 0;
}

.sp-jg-equipa {
	display: flex;
	align-items: center;
	gap: 9px;
	min-width: 0;
	font: 400 15px/22px "Libre Franklin", sans-serif;
	color: var(--sp-ink, #0f172a);
}

.sp-jg-equipa--porto {
	font-weight: 700;
}

.sp-jg-equipa__nome {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sp-jg-equipa__nome--longo {
	display: none;
}

.sp-jg-linha__placar {
	grid-area: placar;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 7px;
	padding-right: 12px;
	font: 700 16px/22px "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-golos {
	position: relative;
	display: inline-block;
	min-width: 0.6em;
	min-height: 22px;
	overflow: hidden;
	text-align: right;
}

.sp-jg-linha__placar.is-directo,
.sp-jg-golos.is-ganha {
	color: var(--sp-ink, #0f172a);
}

.sp-jg-golos.is-perde {
	color: var(--sp-ink-muted, #475569);
	font-weight: 600;
}

.sp-jg-linha__lado {
	grid-area: lado;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

.sp-jg-linha__parciais {
	font: 400 12px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink-muted, #475569);
	white-space: nowrap;
}

.sp-jg-linha__parciais:empty,
.sp-jg-linha__parciais--lado,
.sp-jg-tv {
	display: none;
}

.sp-jg-linha__parciais--baixo {
	grid-area: parc;
	justify-self: end;
	padding: 4px 46px 2px 0;
}

.sp-jg-ved {
	width: 18px;
	height: 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	font: 700 11px/1 "Libre Franklin", sans-serif;
}

.sp-jg-ved:empty {
	visibility: hidden;
}

.sp-jg-ved--v {
	background: var(--sp-ved-v-bg, #dcfce7);
	color: var(--sp-ved-v, #15803d);
}

.sp-jg-ved--e {
	background: var(--sp-ved-e-bg, #e2e8f0);
	color: var(--sp-ved-e, #475569);
}

.sp-jg-ved--d {
	background: var(--sp-ved-d-bg, #fee2e2);
	color: var(--sp-ved-d, #dc2626);
}

.sp-jg-sino {
	position: relative;
	z-index: 2;
	width: 32px;
	height: 32px;
	margin: -7px 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: var(--sp-ink-soft, #7c8aa5);
	cursor: pointer;
}

.sp-jg-sino:hover {
	color: var(--sp-porto, #004b9b);
}

.sp-jg-sino--claro,
.sp-jg-sino--claro:hover {
	color: #fff;
}

.sp-jg-linha__ficha {
	position: relative;
	z-index: 2;
	font: 500 12px/1 "Libre Franklin", sans-serif;
	color: var(--sp-porto, #004b9b);
	text-decoration: none;
	white-space: nowrap;
}

.sp-jg-linha--resultados .sp-jg-linha__lado {
	flex-direction: row;
	gap: 10px;
}

.sp-jg-linha--resultados {
	grid-template-columns: 52px minmax(0, 1fr) auto auto;
}

@media (max-width: 767px) {
	.sp-jg-linha--resultados .sp-jg-linha__ficha {
		display: none;
	}
}

@media (min-width: 768px) {
	/* Tablet: os parciais (sets e períodos são compridos) ficam por baixo,
	   como no telemóvel, para não espremerem os nomes na coluna de 1fr. */
	.sp-jg-linha,
	.sp-jg-linha--resultados {
		grid-template-columns: 56px minmax(0, 1fr) 72px auto;
	}

	.sp-jg-linha--extra {
		display: grid;
	}

	.sp-jg-linha__parciais--baixo {
		padding-right: 96px;
	}

	.sp-jg-linha__lado {
		flex-direction: row;
		justify-content: flex-end;
		gap: 10px;
	}

	.sp-jg-tv {
		display: inline-flex;
		align-items: center;
		color: var(--sp-ink-muted, #475569);
	}

	.sp-jg-tv--sem {
		opacity: 0.25;
	}

	.sp-jg-tv__nome {
		display: none;
	}

	.sp-jg-sino {
		margin: -8px -6px -8px 0;
	}
}

@media (min-width: 1024px) {
	.sp-jg-linha {
		grid-template-columns: 64px minmax(0, 1fr) 80px 240px;
		grid-template-areas: "estado equipas placar lado";
		padding: 8px 12px 8px 16px;
	}

	.sp-jg-linha__parciais--baixo {
		display: none;
	}

	.sp-jg-linha__parciais--lado {
		display: inline;
	}

	.sp-jg-linha__parciais--lado:empty {
		display: none;
	}

	.sp-jg-linha--resultados {
		grid-template-columns: 64px minmax(0, 1fr) 80px 300px;
	}

	.sp-jg-linha__lado {
		gap: 12px;
	}

	.sp-jg-equipa__nome--curto {
		display: none;
	}

	.sp-jg-equipa__nome--longo {
		display: block;
	}

	.sp-jg-tv .sp-jg-ico {
		display: none;
	}

	.sp-jg-tv--sem {
		display: none;
	}

	.sp-jg-tv__nome {
		display: inline;
		font: 400 12px/1 "Libre Franklin", sans-serif;
		white-space: nowrap;
	}
}

/* Golo/ponto: o algarismo antigo sobe e sai, o novo entra de baixo (240 ms);
   a linha pisca a azul-claro e desvanece em 1,2 s. */
.sp-jg-dig--sai {
	position: absolute;
	inset: 0;
	animation: sp-jg-sai 0.24s ease-out forwards;
}

.sp-jg-dig--entra {
	display: inline-block;
	animation: sp-jg-entra 0.24s ease-out;
}

@keyframes sp-jg-sai {
	to {
		transform: translateY(-100%);
		opacity: 0;
	}
}

@keyframes sp-jg-entra {
	from {
		transform: translateY(100%);
		opacity: 0;
	}
}

.sp-jg-golo {
	animation: sp-jg-flash 1.2s ease-out;
}

@keyframes sp-jg-flash {
	from {
		background-color: var(--sp-porto-light, #e8f0fa);
	}
}

.sp-jg-vivo.sp-jg-golo {
	animation: sp-jg-flash-escuro 1.2s ease-out;
}

@keyframes sp-jg-flash-escuro {
	from {
		background-color: var(--sp-navy-line, #1e3d6b);
	}
}

/* ---------------------------------------------------------- dia sem jogos */

.sp-jg-proximo {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 18px 16px;
}


.sp-jg-proximo__jogo {
	margin: 0;
	font: 600 20px/1.2 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-proximo__det {
	margin: 0;
	font: 400 13px/1.4 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

/* Dia sem jogos: a mensagem, o convite da comunidade e o próximo jogo. */
.sp-jg-vazio {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.sp-jg-vazio__msg {
	margin: 0;
	padding: 4px 2px 0;
	font: 600 18px/1.3 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-vazio .sp-escrever-cta {
	margin: 0;
}

.sp-jg-vazio__proximo {
	margin: 0;
	padding: 0 2px;
	font: 500 14px/1.4 "Libre Franklin", sans-serif;
}

.sp-jg-vazio__proximo a {
	color: var(--sp-porto, #004b9b);
	text-decoration: none;
}

.sp-jg-vazio__proximo a:hover {
	text-decoration: underline;
}



.sp-jg-contagem {
	display: flex;
	gap: 6px;
}

.sp-jg-contagem__caixa {
	min-width: 44px;
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 6px 8px;
	border-radius: var(--sp-radius-sm, 8px);
	background: var(--sp-porto-light, #e8f0fa);
	text-align: center;
}

.sp-jg-contagem__caixa b {
	font: 700 18px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-porto, #004b9b);
}

.sp-jg-contagem__caixa span {
	font: 500 11px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink-strong, #33415c);
}

.sp-jg-seguir-item {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	min-height: 56px;
	padding: 8px 14px;
	border-top: 1px solid var(--jg-linha);
	color: inherit;
	text-decoration: none;
}

.sp-jg-seguir-item:hover {
	background: var(--sp-surface-raised, #f8fafc);
}

.sp-jg-seguir-item__quando,
.sp-jg-seguir-item__jogo {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.sp-jg-seguir-item__dia {
	font: 600 13px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink, #0f172a);
}

.sp-jg-seguir-item__hora {
	font: 400 12px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-seguir-item__nome,
.sp-jg-seguir-item__comp {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sp-jg-seguir-item__nome {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	font: 500 14px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-ink, #0f172a);
}

.sp-jg-seguir-item__nome .sp-jg-emb {
	flex: none;
}

.sp-jg-seguir-item__equipa {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sp-jg-seguir-item__nome.is-porto {
	font-weight: 600;
}

/* Os dois emblemas do próximo jogo (coluna lateral). */
.sp-jg-lateral__emblemas {
	gap: 4px;
	margin: 0;
}

.sp-jg-seguir-item__comp {
	font: 400 12px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-etiqueta {
	padding: 3px 5px;
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: 4px;
	background: var(--sp-surface-muted, #f4f7fb);
	font: 500 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--sp-ink-strong, #33415c);
	white-space: nowrap;
}

/* ------------------------------------------------------------- convite */

.sp-jg-convite {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border-radius: var(--sp-radius, 12px);
	background: var(--sp-porto-light, #e8f0fa);
}

.sp-jg-convite__icone {
	flex: none;
	width: 36px;
	height: 36px;
	border-radius: 9px;
}

.sp-jg-convite__texto {
	flex: 1;
	margin: 0;
	font: 400 13px/1.35 "Libre Franklin", sans-serif;
	color: var(--sp-ink-strong, #33415c);
}

.sp-jg-convite__texto b {
	color: var(--sp-ink, #0f172a);
}

.sp-jg-convite__accao {
	font: 600 13px/1 "Libre Franklin", sans-serif;
	color: var(--sp-porto, #004b9b);
	text-decoration: none;
	white-space: nowrap;
}

.sp-jg-convite--lateral {
	padding: 14px 16px;
	border-radius: var(--sp-radius-xl, 14px);
}

.sp-jg-convite--lateral .sp-jg-convite__icone {
	width: 44px;
	height: 44px;
	border-radius: 11px;
}

.sp-jg-lista > .sp-jg-convite.sp-jg-so-movel {
	display: flex;
}

@media (min-width: 768px) {
	.sp-jg-lista > .sp-jg-convite.sp-jg-so-movel {
		display: none;
	}
}

@media (min-width: 1024px) {
	.sp-jg-lateral .sp-jg-convite--lateral.sp-jg-so-desktop {
		display: flex !important;
	}
}

/* ------------------------------------------------------- coluna lateral */

.sp-jg-lateral__proximo {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 14px;
}

.sp-jg-lateral__jogo {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font: 600 18px/1.2 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-lateral__jogo .sp-jg-lateral__emblemas {
	display: none;
}

.sp-jg-lateral__det {
	margin: 0;
	font: 400 12px/1.45 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-lateral__proximo .sp-jg-contagem__caixa {
	flex: 1;
	min-width: 0;
	padding: 8px 4px;
}

.sp-jg-lateral__proximo .sp-jg-contagem__caixa b {
	font-size: 22px;
}

.sp-jg-lateral__accoes {
	gap: 8px;
}

.sp-jg-botao--largo {
	flex: 1;
	height: 38px;
}

@media (min-width: 1024px) {
	.sp-jg-lateral__proximo {
		padding: 16px;
	}

	.sp-jg-lateral__jogo {
		font-size: 20px;
	}

	.sp-jg-lateral__jogo .sp-jg-lateral__emblemas {
		display: inline-flex;
	}

	.sp-jg-lateral__det {
		font-size: 13px;
	}

	.sp-jg-lateral__accoes.sp-jg-so-desktop {
		display: flex !important;
	}

	.sp-jg-lateral__accoes .sp-jg-botao-ico {
		width: 38px;
		height: 38px;
	}
}

/* Mini-tabela. */
.sp-jg-mini__cab {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 8px;
	padding: 12px 14px 6px 0;
}

.sp-jg-mini__cab .sp-jg-cartao__titulo {
	padding: 0 0 0 14px;
	font-size: 15px;
}

.sp-jg-mini__tabela {
	width: 100%;
	border-collapse: collapse;
	font: 500 13px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
}

.sp-jg-mini__tabela thead th {
	padding: 0 4px 6px;
	font: 500 11px/1 "Libre Franklin", sans-serif;
	text-transform: uppercase;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-mini__tabela abbr,
.sp-jg-tabela__t abbr {
	text-decoration: none;
	border: 0;
}

.sp-jg-mini__tabela tbody tr {
	height: 36px;
	border-top: 1px solid var(--jg-linha);
}

.sp-jg-mini__tabela td,
.sp-jg-mini__tabela th {
	padding: 0 4px;
	text-align: left;
	font-weight: inherit;
}

.sp-jg-mini__tabela .sp-jg-col-pos {
	width: 22px;
	padding-left: 11px;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-mini__tabela .sp-jg-col-equipa {
	color: var(--sp-ink, #0f172a);
}

.sp-jg-mini__tabela .sp-jg-col-equipa .sp-jg-emb {
	display: none;
}

.sp-jg-mini__tabela .sp-jg-col-pts {
	width: 32px;
	padding-right: 14px;
	text-align: right;
}

.sp-jg-col-num {
	text-align: center !important;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-mini__tabela .sp-jg-col-extra {
	display: none;
}

.sp-jg-zona td:first-child {
	box-shadow: inset 3px 0 0 transparent;
}

.sp-jg-zona--lc td:first-child {
	box-shadow: inset 3px 0 0 var(--sp-zona-lc, #004b9b);
}

.sp-jg-zona--le td:first-child {
	box-shadow: inset 3px 0 0 var(--sp-zona-le, #0066cc);
}

.sp-jg-zona--co td:first-child {
	box-shadow: inset 3px 0 0 var(--sp-zona-co, #15803d);
}

.sp-jg-zona--po td:first-child {
	box-shadow: inset 3px 0 0 var(--sp-zona-po, #f59e0b);
}

.sp-jg-zona--d td:first-child {
	box-shadow: inset 3px 0 0 var(--sp-zona-d, #dc2626);
}

.sp-jg-zona.is-porto {
	background: var(--sp-porto-light, #e8f0fa);
	font-weight: 700;
}

@media (min-width: 1024px) {
	.sp-jg-mini__cab {
		padding: 14px 16px 8px 0;
	}

	.sp-jg-mini__cab .sp-jg-cartao__titulo {
		padding-left: 16px;
		font-size: 16px;
	}

	.sp-jg-mini__tabela tbody tr {
		height: 38px;
	}

	.sp-jg-mini__tabela .sp-jg-col-pos {
		padding-left: 13px;
	}

	.sp-jg-mini__tabela .sp-jg-col-pts {
		padding-right: 16px;
	}

	.sp-jg-mini__tabela .sp-jg-col-extra {
		display: table-cell;
		width: 32px;
	}

	.sp-jg-mini__tabela--colunas .sp-jg-col-equipa {
		display: flex;
		align-items: center;
		gap: 8px;
		height: 38px;
	}

	.sp-jg-mini__tabela .sp-jg-col-equipa .sp-jg-emb {
		display: inline-flex;
	}
}

/* Atalhos das modalidades. */
.sp-jg-atalhos {
	padding-bottom: 14px;
}

.sp-jg-atalhos .sp-jg-cartao__titulo {
	padding: 14px 16px 10px;
}

.sp-jg-atalhos__grelha {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px;
	padding: 0 16px;
}

.sp-jg-atalho {
	display: flex;
	align-items: center;
	gap: 8px;
	height: 40px;
	padding: 0 10px;
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-md, 10px);
	font: 500 13px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink, #0f172a);
	text-decoration: none;
}

.sp-jg-atalho svg {
	color: var(--sp-porto, #004b9b);
}

.sp-jg-atalho:hover {
	background: var(--sp-surface-muted, #f4f7fb);
}

@media (min-width: 1024px) {
	.sp-jg-lateral .sp-jg-atalhos.sp-jg-so-desktop {
		display: block !important;
	}
}

/* --------------------------------------------------------- aviso de rede */

.sp-jg-aviso {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 16px;
	background: var(--sp-surface, #fff);
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-xl, 14px);
}

.sp-jg-aviso__ico {
	flex: none;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--sp-radius-md, 10px);
	background: var(--sp-ved-d-bg, #fee2e2);
	color: var(--sp-live, #dc2626);
	font: 700 18px/1 "Libre Franklin", sans-serif;
}

.sp-jg-aviso__titulo {
	margin: 0 0 6px;
	font: 600 15px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-ink, #0f172a);
}

.sp-jg-aviso__texto {
	margin: 0 0 8px;
	font: 400 13px/1.4 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

/* -------------------------------------------------------------- esqueleto */

.sp-jg-esq__linha {
	display: grid;
	grid-template-columns: 52px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	min-height: 64px;
	padding: 8px 14px;
	border-top: 1px solid var(--jg-linha);
}

.sp-jg-esq__b {
	display: inline-block;
	border-radius: 6px;
	background: var(--jg-linha);
	animation: sp-jg-brilho 1.4s infinite;
}

.sp-jg-esq__sigla {
	width: 24px;
	height: 24px;
}

.sp-jg-esq__t1 {
	width: 140px;
	height: 12px;
}

.sp-jg-esq__hora {
	width: 32px;
	height: 10px;
}

.sp-jg-esq__eqs {
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.sp-jg-esq__eqs > span {
	display: flex;
	align-items: center;
	gap: 9px;
}

.sp-jg-esq__emb {
	width: 22px;
	height: 22px;
	border-radius: 50%;
}

.sp-jg-esq__n1 {
	width: 110px;
	height: 11px;
}

.sp-jg-esq__n2 {
	width: 80px;
	height: 11px;
}

.sp-jg-esq__res {
	width: 14px;
	height: 30px;
}

@keyframes sp-jg-brilho {
	0%,
	100% {
		opacity: 0.55;
	}

	50% {
		opacity: 1;
	}
}

/* ---------------------------------------------------------------- folhas */

.sp-jg-veu {
	position: fixed;
	inset: 0;
	/* Por cima do cabeçalho fixo do site (header-sticky.css). */
	z-index: 10000;
	background: rgba(6, 21, 43, 0.55);
}

.sp-jg-folha {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	display: flex;
	flex-direction: column;
	gap: 14px;
	max-height: 90vh;
	overflow-y: auto;
	padding: 10px 16px calc(24px + env(safe-area-inset-bottom, 0px));
	background: var(--sp-surface, #fff);
	border-radius: var(--sp-radius-2xl, 20px) var(--sp-radius-2xl, 20px) 0 0;
	box-shadow: 0 -8px 30px rgba(6, 21, 43, 0.18);
}

.sp-jg-folha:focus {
	outline: none;
}

.sp-jg-folha__pega {
	width: 36px;
	height: 4px;
	margin: 0 auto;
	border-radius: 2px;
	background: var(--sp-border, #dfe5ee);
}

.sp-jg-folha__cab {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.sp-jg-folha__titulo {
	margin: 0;
	font: 600 20px/1.2 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-convite--folha .sp-jg-convite__icone {
	width: 40px;
	height: 40px;
	border-radius: 10px;
}

.sp-jg-convite--folha .sp-jg-convite__texto {
	line-height: 1.4;
}

.sp-jg-lojas {
	display: flex;
	gap: 8px;
}

.sp-jg-loja {
	flex: 1;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--sp-radius, 12px);
	background: var(--sp-navy, #06152b);
	color: #fff;
	font: 600 14px/1 "Libre Franklin", sans-serif;
	text-decoration: none;
}

.sp-jg-loja:hover {
	background: var(--sp-navy-mid, #052d5e);
	color: #fff;
}

.sp-jg-folha__fechar {
	height: 44px;
	border: 0;
	background: transparent;
	font: 500 14px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
	cursor: pointer;
}

@media (min-width: 768px) {
	.sp-jg-folha {
		left: 50%;
		right: auto;
		top: 50%;
		bottom: auto;
		width: min(440px, 92vw);
		padding: 20px;
		border-radius: var(--sp-radius-2xl, 20px);
		transform: translate(-50%, -50%);
		box-shadow: var(--sp-shadow-modal, 0 20px 60px rgba(4, 15, 33, 0.45));
	}

	.sp-jg-folha__pega {
		display: none;
	}
}

/* ------------------------------------------------------------------- mês */

.sp-jg-mes {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.sp-jg-mes__cab {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.sp-jg-mes__nav {
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-md, 10px);
	color: var(--sp-porto, #004b9b);
}

.sp-jg-mes__titulo {
	margin: 0;
	font: 600 20px/1.2 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-mes__grelha {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.sp-jg-mes__semana {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 4px;
}

.sp-jg-mes__dsem {
	text-align: center;
	font: 500 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-mes__dsem abbr {
	text-decoration: none;
}

.sp-jg-mes__dia {
	height: 46px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 3px;
	border: 1px solid transparent;
	border-radius: var(--sp-radius-md, 10px);
	text-decoration: none;
}

.sp-jg-mes__dia:hover {
	background: var(--sp-surface-muted, #f4f7fb);
}

.sp-jg-mes__num {
	font: 600 15px/1 "Source Serif 4", Georgia, serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink, #0f172a);
}

.sp-jg-mes__dia.is-vazio .sp-jg-mes__num {
	color: var(--sp-ink-muted, #475569);
	font-weight: 400;
}

.sp-jg-mes__dia.is-escolhido {
	background: var(--sp-surface-muted, #f4f7fb);
}

.sp-jg-mes__dia.is-hoje {
	border-color: var(--sp-porto, #004b9b);
	background: var(--sp-porto-light, #e8f0fa);
}

.sp-jg-mes__dia.is-hoje .sp-jg-mes__num {
	color: var(--sp-porto, #004b9b);
}

.sp-jg-mes--grande .sp-jg-mes__dia {
	height: 64px;
}

.sp-jg-mes--grande .sp-jg-mes__num {
	font-size: 18px;
}

.sp-jg-cartao--mes {
	padding: 16px;
}

.sp-jg-legenda {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px;
	margin: 0;
	font: 400 11px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-legenda > span {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

.sp-jg-legenda .sp-jg-pt {
	width: 6px;
	height: 6px;
}

/* ------------------------------------------------------------ resultados */

.sp-jg-dia-res {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.sp-jg-dia-res + .sp-jg-dia-res {
	margin-top: 8px;
}

.sp-jg-dia-res__cab {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 10px;
}

.sp-jg-dia-res__titulo {
	margin: 0;
	font: 600 20px/1.2 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-dia-res__resumo {
	font: 400 13px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-balanco {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding-bottom: 16px;
}

.sp-jg-balanco .sp-jg-cartao__titulo {
	padding: 16px 16px 0;
}

.sp-jg-balanco__grelha {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	padding: 0 16px;
}

.sp-jg-balanco__caixa {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 10px;
	border-radius: var(--sp-radius-md, 10px);
}

.sp-jg-balanco__caixa b {
	font: 700 22px/1 "Libre Franklin", sans-serif;
}

.sp-jg-balanco__caixa span {
	font: 500 11px/1.2 "Libre Franklin", sans-serif;
}

.sp-jg-balanco__caixa--v {
	background: var(--sp-ved-v-bg, #dcfce7);
	color: var(--sp-ved-v, #15803d);
}

.sp-jg-balanco__caixa--v span {
	color: var(--sp-success-ink, #166534);
}

.sp-jg-balanco__caixa--e {
	background: var(--sp-ved-e-bg, #e2e8f0);
	color: var(--sp-ved-e, #475569);
}

.sp-jg-balanco__caixa--d {
	background: var(--sp-ved-d-bg, #fee2e2);
	color: var(--sp-ved-d, #dc2626);
}

.sp-jg-balanco__caixa--d span {
	color: var(--sp-danger-ink, #991b1b);
}

.sp-jg-balanco__nota {
	margin: 0;
	padding: 0 16px;
	font: 400 12px/1.4 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

@media (min-width: 1024px) {
	.sp-jg-balanco__caixa b {
		font-size: 26px;
	}
}

/* -------------------------------------------------------- classificações */

.sp-jg-comp-nav {
	display: flex;
	flex-direction: column;
	background: var(--sp-surface, #fff);
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-xl, 14px);
	overflow: hidden;
}

.sp-jg-comp-nav__seccao {
	margin: 0;
	padding: 12px 16px 6px;
	border-top: 1px solid var(--jg-linha);
	font: 600 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-comp-nav__seccao:first-child {
	border-top: 0;
}

.sp-jg-comp-nav__item {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 40px;
	padding: 6px 16px;
	font: 500 13px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-ink, #0f172a);
	text-decoration: none;
}

.sp-jg-comp-nav__item svg {
	color: var(--sp-porto, #004b9b);
}

.sp-jg-comp-nav__item:hover {
	background: var(--sp-surface-muted, #f4f7fb);
}

.sp-jg-comp-nav__item.is-activo {
	background: var(--sp-porto-light, #e8f0fa);
	color: var(--sp-porto, #004b9b);
	font-weight: 700;
}

.sp-jg-comp-escolha {
	position: relative;
}

.sp-jg-comp-escolha__botao {
	display: flex;
	align-items: center;
	gap: 8px;
	height: 40px;
	padding: 0 12px;
	border: 1px solid var(--sp-border, #dfe5ee);
	border-radius: var(--sp-radius-md, 10px);
	background: var(--sp-surface, #fff);
	font: 600 14px/1 "Libre Franklin", sans-serif;
	color: var(--sp-ink, #0f172a);
	list-style: none;
	cursor: pointer;
}

.sp-jg-comp-escolha__botao::-webkit-details-marker {
	display: none;
}

.sp-jg-comp-escolha__botao .sp-jg-ico {
	margin-left: auto;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-comp-nav--lista {
	margin-top: 6px;
}

.sp-jg-tabela__cab {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 14px 12px;
}

.sp-jg-tabela__titulo {
	margin: 0;
	font: 600 20px/1.15 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-tabela__meta {
	margin: 2px 0 0;
	font: 400 13px/1.3 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-tabela__vazia {
	margin: 0;
	padding: 0 14px 16px;
	font: 400 14px/1.4 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-tabela__rolo {
	overflow-x: auto;
}

.sp-jg-tabela__t {
	width: 100%;
	border-collapse: collapse;
	font: 500 14px/1 "Libre Franklin", sans-serif;
	font-variant-numeric: tabular-nums;
	color: var(--sp-ink, #0f172a);
}

.sp-jg-tabela__t thead th {
	padding: 8px 4px;
	border-top: 1px solid var(--jg-linha);
	font: 500 11px/1 "Libre Franklin", sans-serif;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--sp-ink-muted, #475569);
	text-align: left;
}

.sp-jg-tabela__t tbody tr {
	height: 44px;
	border-top: 1px solid var(--jg-linha);
}

.sp-jg-tabela__t td,
.sp-jg-tabela__t th {
	padding: 0 4px;
	font-weight: inherit;
	text-align: left;
}

.sp-jg-tabela__t .sp-jg-col-pos {
	width: 28px;
	padding-left: 9px;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-tabela__t tbody .sp-jg-col-equipa {
	display: flex;
	align-items: center;
	gap: 8px;
	height: 44px;
	max-width: 46vw;
}

.sp-jg-tabela__t .sp-jg-equipa__nome--curto,
.sp-jg-tabela__t .sp-jg-equipa__nome--longo {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sp-jg-tabela__t .sp-jg-equipa__nome--longo {
	display: none;
}

.sp-jg-tabela__t .sp-jg-col-num {
	width: 28px;
}

.sp-jg-tabela__t .sp-jg-col-pts {
	width: 36px;
	padding-right: 12px;
	text-align: right;
}

.sp-jg-col-forma {
	display: none;
}

.sp-jg-forma {
	display: inline-flex;
	gap: 4px;
	justify-content: flex-end;
}

.sp-jg-forma__l {
	width: 20px;
	height: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	font: 700 11px/1 "Libre Franklin", sans-serif;
	color: #fff;
}

.sp-jg-forma__l--v {
	background: var(--sp-ved-v, #15803d);
}

.sp-jg-forma__l--e {
	background: var(--sp-ved-e-bg, #e2e8f0);
	color: var(--sp-ved-e, #475569);
}

.sp-jg-forma__l--d {
	background: var(--sp-ved-d, #dc2626);
}

.sp-jg-forma--grande .sp-jg-forma__l {
	width: 26px;
	height: 26px;
}

.sp-jg-legenda--zonas {
	justify-content: flex-start;
	padding: 10px 12px;
	border-top: 1px solid var(--jg-linha);
}

.sp-jg-zona-cor {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 2px;
}

.sp-jg-zona-cor--lc {
	background: var(--sp-zona-lc, #004b9b);
}

.sp-jg-zona-cor--le {
	background: var(--sp-zona-le, #0066cc);
}

.sp-jg-zona-cor--co {
	background: var(--sp-zona-co, #15803d);
}

.sp-jg-zona-cor--po {
	background: var(--sp-zona-po, #f59e0b);
}

.sp-jg-zona-cor--d {
	background: var(--sp-zona-d, #dc2626);
}

.sp-jg-forma-porto {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 12px 14px;
}

.sp-jg-forma-porto__titulo {
	margin: 0;
	font: 600 14px/1.2 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-forma-porto__linha {
	display: flex;
	align-items: center;
	gap: 6px;
}

.sp-jg-forma-porto__nota {
	margin-left: auto;
	font: 400 12px/1.2 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

@media (min-width: 1024px) {
	.sp-jg-comp-nav.sp-jg-so-desktop {
		display: flex !important;
		align-self: start;
		position: sticky;
		top: calc(var(--jg-fixo) + 20px);
	}

	.sp-jg-tabela__cab {
		padding: 16px 20px 12px;
	}

	.sp-jg-tabela__titulo {
		font-size: 22px;
	}

	.sp-jg-tabela__t .sp-jg-col-pos {
		width: 36px;
		padding-left: 17px;
	}

	.sp-jg-tabela__t .sp-jg-col-num {
		width: 44px;
	}

	.sp-jg-tabela__t .sp-jg-col-pts {
		width: 56px;
		text-align: center;
		padding-right: 4px;
	}

	.sp-jg-tabela__t tbody .sp-jg-col-equipa {
		max-width: none;
	}

	.sp-jg-tabela__t .sp-jg-equipa__nome--curto {
		display: none;
	}

	.sp-jg-tabela__t .sp-jg-equipa__nome--longo {
		display: inline;
	}

	.sp-jg-col-forma {
		display: table-cell;
		width: 140px;
		padding-right: 20px !important;
		text-align: right !important;
	}

	.sp-jg-legenda--zonas {
		gap: 18px;
		padding: 12px 20px;
		font-size: 12px;
	}

	.sp-jg-zona-cor {
		width: 10px;
		height: 10px;
	}
}

/* A carregar o dia seguinte. */
[data-sp-jg-regiao="conteudo"].is-carregando {
	opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
	.sp-jg-ponto-vivo,
	.sp-jg-esq__b,
	.sp-jg-dig--entra {
		animation: none;
	}

	.sp-jg-dig--sai {
		display: none;
	}

	.sp-jg-vivo__evento {
		transition: none;
	}
}

/* --------------------------------------- página de uma competição (8 Out) */

.sp-jg-comp-migalhas ol {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin: 0 0 10px;
	padding: 0;
	list-style: none;
	font: 500 13px/1.3 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-comp-migalhas a {
	color: var(--sp-porto, #004b9b);
	text-decoration: none;
}

.sp-jg-comp-migalhas a:hover {
	text-decoration: underline;
}

.sp-jg-comp-cab__linha {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.sp-jg-comp-cab__marca {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: var(--sp-radius-md, 10px);
	background: var(--sp-navy, #06152b);
	color: #fff;
	font: 700 16px/1 "Libre Franklin", sans-serif;
	letter-spacing: -0.03em;
}

.sp-jg-comp-cab__marca--logo {
	background: var(--sp-surface, #fff);
	border: 1px solid var(--sp-border, #dfe5ee);
}

.sp-jg-comp-cab__marca img {
	display: block;
	width: 40px;
	height: 40px;
	object-fit: contain;
}

.sp-jg-comp-cab .sp-jg-cab__titulo {
	font-size: 28px;
	overflow-wrap: anywhere;
}

.sp-jg-comp-grelha {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding-top: 12px;
	padding-bottom: 24px;
}

.sp-jg-comp-jogos {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}

.sp-jg-comp-tabela,
.sp-jg-comp-noticias {
	min-width: 0;
}

.sp-jg-comp-grelha [id] {
	scroll-margin-top: calc(var(--jg-fixo) + 12px);
}

.sp-jg-comp-bloco .sp-jg-cartao__titulo {
	padding-bottom: 10px;
	border-bottom: 1px solid var(--jg-linha);
}

/* As linhas levam a data («10 Out» e «Sáb 18:00»): a coluna do estado alarga. */
.sp-jg-comp-jogos .sp-jg-linha {
	grid-template-columns: 64px minmax(0, 1fr) auto 36px;
}

.sp-jg-comp-jogos .sp-jg-linha--resultados {
	grid-template-columns: 64px minmax(0, 1fr) auto auto;
}

.sp-jg-comp-vazio {
	margin: 0;
	padding: 14px;
	font: 400 14px/1.4 "Libre Franklin", sans-serif;
	color: var(--sp-ink-muted, #475569);
}

.sp-jg-comp-noticias {
	margin-top: 6px;
}

.sp-jg-comp-noticias__titulo {
	margin: 0 0 12px;
	font: 600 22px/1.15 "Source Serif 4", Georgia, serif;
	color: var(--sp-navy, #06152b);
}

.sp-jg-sigla--logo {
	background: transparent;
}

.sp-jg-sigla--logo img {
	display: block;
	width: 28px;
	height: 28px;
	object-fit: contain;
}

@media (max-width: 767px) {
	.sp-jg-wrap.sp-jg-comp-grelha {
		padding-left: 12px;
		padding-right: 12px;
	}
}

@media (min-width: 768px) {
	.sp-jg-comp-cab .sp-jg-cab__titulo {
		font-size: 36px;
	}

	.sp-jg-comp-cab__marca {
		width: 60px;
		height: 60px;
	}

	.sp-jg-comp-cab__marca img {
		width: 46px;
		height: 46px;
	}

	.sp-jg-comp-grelha {
		gap: 16px;
		padding-top: 16px;
		padding-bottom: 32px;
	}

	.sp-jg-comp-jogos .sp-jg-linha,
	.sp-jg-comp-jogos .sp-jg-linha--resultados {
		grid-template-columns: 68px minmax(0, 1fr) 72px auto;
	}
}

/* Desktop: os jogos à esquerda, a tabela à direita, as notícias por baixo.
   Sem tabela, os próximos e os resultados lado a lado. */
@media (min-width: 1024px) {
	.sp-jg-comp-cab .sp-jg-cab__titulo {
		font-size: 40px;
	}

	.sp-jg-comp-grelha {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		grid-template-areas:
			"jogos tabela"
			"noticias noticias";
		align-items: start;
		gap: 24px;
		padding-top: 20px;
	}

	.sp-jg-comp-jogos {
		grid-area: jogos;
		gap: 16px;
	}

	.sp-jg-comp-tabela {
		grid-area: tabela;
		position: sticky;
		top: calc(var(--jg-fixo) + 16px);
	}

	.sp-jg-comp-noticias {
		grid-area: noticias;
		margin-top: 8px;
	}

	.sp-jg-comp-grelha--sem-tabela {
		grid-template-areas:
			"jogos jogos"
			"noticias noticias";
	}

	.sp-jg-comp-grelha--sem-tabela .sp-jg-comp-jogos {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		align-items: start;
	}

	/* Meia largura: a linha do desktop (64/1fr/80/240) não cabe; à direita
	   fica o canal, o V/E/D e a ficha. */
	.sp-jg-comp-jogos .sp-jg-linha,
	.sp-jg-comp-jogos .sp-jg-linha--resultados {
		grid-template-columns: 70px minmax(0, 1fr) 72px auto;
	}

	.sp-jg-comp-cab__marca {
		width: 64px;
		height: 64px;
	}

	.sp-jg-comp-cab__marca img {
		width: 50px;
		height: 50px;
	}
}
