/*
 * Compact frontend match list override.
 * Loaded after pool.css so the match renderer can be restyled without
 * rewriting the plugin's base stylesheet.
 */

.matchinfo.new-layout {
	width: 100%;
	display: block !important;
	margin: 0;
}

.matchinfo.new-layout div {
	padding: 0;
}

.matchinfo.new-layout .matchtype {
	margin: .7rem 0 .2rem;
	padding: .36rem .72rem;
	border: 1px solid #d8dde3;
	border-radius: 8px 8px 0 0;
	background: #eceff2;
	color: #2e353d;
	font-size: .88rem;
	font-weight: 700;
	line-height: 1.15;
}

.matchinfo.new-layout .match-card {
	display: block !important;
	flex: none !important;
	justify-content: flex-start !important;
	width: 100%;
	margin: 0;
	padding: .24rem .62rem;
	border-left: 1px solid #e1e5ea;
	border-right: 1px solid #e1e5ea;
	border-bottom: 1px solid #e1e5ea;
	border-radius: 0;
	background: #f9fafb;
	box-shadow: none;
}

.matchinfo.new-layout .match-row-main {
	display: grid;
	grid-template-columns: 106px 54px 6px minmax(92px, auto) 44px 12px 44px minmax(92px, auto) 54px 16px;
	align-items: center;
	column-gap: .1rem;
	min-height: 26px;
	white-space: nowrap;
	justify-content: center;
	width: fit-content;
	max-width: 100%;
	margin: 0 auto;
	text-align: left;
}

.matchinfo.new-layout .match-row-date,
.matchinfo.new-layout .match-row-time {
	margin: 0;
	font-size: .64rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	text-transform: none;
	color: #516074;
	text-align: left;
	white-space: nowrap;
	justify-self: start;
	align-self: center;
}

.matchinfo.new-layout .match-row-date {
	grid-column: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 106px;
}

.matchinfo.new-layout .match-row-time {
	grid-column: 2;
	max-width: 54px;
}

.matchinfo.new-layout .score-group {
	display: contents;
}

.matchinfo.new-layout .home-team {
	grid-column: 4;
	justify-content: flex-start;
}

.matchinfo.new-layout .team {
	display: flex;
	align-items: center;
	gap: .16rem;
	min-width: 0;
	width: auto;
	max-width: 100%;
	white-space: nowrap;
	justify-self: start;
}

.matchinfo.new-layout .away-team {
	grid-column: 8;
	justify-content: flex-start;
	text-align: left;
	padding-left: .04rem;
}

.matchinfo.new-layout .away-team .team-name {
	order: 2;
}

.matchinfo.new-layout .away-team .flag-wrap {
	order: 1;
}

.matchinfo.new-layout .flag-wrap {
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.matchinfo.new-layout .flag-wrap img.flag,
.matchinfo.new-layout img.flag {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.matchinfo.new-layout .team-name,
.matchinfo.new-layout .team-name a {
	display: block;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #2f343b;
	font-size: .73rem;
	font-weight: 500;
	line-height: 1.1;
	text-decoration: none;
}

.matchinfo.new-layout .score-line {
	display: contents;
}

.matchinfo.new-layout .score-box {
	display: flex;
	align-items: center;
	justify-content: center;
	justify-self: center;
	min-width: 0;
	width: 44px;
	max-width: 44px;
	height: 20px;
	padding: 0 .14rem;
	border: 1px solid #bcc6d1;
	border-radius: 4px;
	background: #e8edf2;
	color: #37414b;
	font-size: .68rem;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	box-shadow: none;
}

.matchinfo.new-layout .score-box.input-box {
	background: #ece4d0;
	border-color: #ccb98c;
}

.matchinfo.new-layout .match.open .score-box,
.matchinfo.new-layout .status-open + .match-icons .score-box {
	background: #dfeade;
	border-color: #b8d1b5;
	color: #2d6b42;
}

.matchinfo.new-layout .match.closed .score-box {
	background: #ece5d8;
	border-color: #d2c3a8;
	color: #6a5b3e;
}

.matchinfo.new-layout .input-box input.prediction {
	width: 100%;
	max-width: 24px;
	border: 0;
	padding: 0;
	background: transparent;
	color: inherit;
	font-size: .67rem;
	font-weight: 700;
	text-align: center;
	line-height: 1;
}

.matchinfo.new-layout .score-line .score-box:nth-child(1) {
	grid-column: 5;
}

.matchinfo.new-layout .versus {
	grid-column: 6;
	font-size: .52rem;
	font-weight: 700;
	color: #717982;
	text-transform: uppercase;
	text-align: center;
	justify-self: center;
}

.matchinfo.new-layout .score-line .score-box:nth-child(3),
.matchinfo.new-layout .score-line .score-box:last-child {
	grid-column: 7;
}

.matchinfo.new-layout .actual-result-inline {
	display: none;
}

.matchinfo.new-layout .match-row-side {
	grid-column: 9 / span 2;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: .1rem;
	min-width: 0;
	width: auto;
	white-space: nowrap;
	justify-self: start;
}

.matchinfo.new-layout .match-status {
	display: inline-flex;
	align-items: center;
	gap: .12rem;
	font-size: .5rem;
	font-weight: 700;
	letter-spacing: .02em;
	text-transform: uppercase;
	color: #6f7780;
	white-space: nowrap;
}

.matchinfo.new-layout .status-indicator {
	display: inline-block;
	width: 7px;
	height: 7px;
	border: 1px solid currentColor;
	border-radius: 50%;
}

.matchinfo.new-layout .status-open {
	color: #3f7a53;
}

.matchinfo.new-layout .status-locked {
	color: #8a6b4a;
}

.matchinfo.new-layout .match-icons {
	display: inline-flex;
	align-items: center;
	gap: .08rem;
	flex: 0 0 auto;
	white-space: nowrap;
}

.matchinfo.new-layout .match-icons a {
	line-height: 1;
	text-decoration: none;
	box-shadow: none;
}

.matchinfo.new-layout .match-icons img,
.matchinfo.new-layout .pie-chart-icon {
	display: block;
	width: 11px;
	height: 11px;
	object-fit: contain;
}

.matchinfo.new-layout .user-score {
	margin-left: .12rem;
	font-size: .54rem;
	font-weight: 700;
	color: #69717c;
	white-space: nowrap;
}

.matchinfo.new-layout .match-row-footer {
	display: none;
}

.matchinfo.new-layout .linked-question {
	margin: 0 0 .25rem;
	padding: .18rem .62rem .32rem;
	border-left: 1px solid #e1e5ea;
	border-right: 1px solid #e1e5ea;
	border-bottom: 1px solid #e1e5ea;
	background: #f9fafb;
}

@media (max-width: 900px) {
	.matchinfo.new-layout .match-row-main {
		grid-template-columns: 84px 42px 6px minmax(70px, auto) 38px 10px 38px minmax(70px, auto) 48px 14px;
		column-gap: .1rem;
	}

	.matchinfo.new-layout .score-box {
		width: 38px;
		max-width: 38px;
	}

	.matchinfo.new-layout .team-name,
	.matchinfo.new-layout .team-name a {
		font-size: .69rem;
	}
}

@media (max-width: 767px) {
	.matchinfo.new-layout .match-card,
	.matchinfo.new-layout .linked-question {
		padding-left: .45rem;
		padding-right: .45rem;
	}

	.matchinfo.new-layout .match-row-main {
		grid-template-columns: 1fr;
		row-gap: .2rem;
		white-space: normal;
		text-align: left;
		width: 100%;
		max-width: none;
		margin: 0;
	}

	.matchinfo.new-layout .match-row-meta,
	.matchinfo.new-layout .home-team,
	.matchinfo.new-layout .away-team,
	.matchinfo.new-layout .match-row-side,
	.matchinfo.new-layout .score-line .score-box:nth-child(1),
	.matchinfo.new-layout .score-line .score-box:nth-child(3),
	.matchinfo.new-layout .score-line .score-box:last-child,
	.matchinfo.new-layout .versus {
		grid-column: auto;
	}

	.matchinfo.new-layout .match-row-meta {
		text-align: left;
	}

	.matchinfo.new-layout .score-line {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: .22rem;
		flex-wrap: nowrap;
	}

	.matchinfo.new-layout .match-row-side {
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	.matchinfo.new-layout .team {
		white-space: normal;
	}

	.matchinfo.new-layout .match-row-date,
	.matchinfo.new-layout .match-row-time {
		max-width: none;
	}
}

/* Teams directory */
.football-pool.teams-directory {
	margin-top: 1.25rem;
}

.football-pool.single-team-page {
	margin-top: 1.25rem;
}

.football-pool.single-team-page .single-team-shell {
	width: min(100%, 1160px);
	margin: 0 auto;
}

.football-pool.single-team-page .single-team-card {
	padding: 1.4rem;
	border: 1px solid #dbe3dd;
	border-radius: 24px;
	background: linear-gradient(180deg, #ffffff 0%, #f5f8f5 100%);
	box-shadow: 0 18px 42px rgba(15, 41, 26, .08);
}

.football-pool.single-team-page .single-team-hero {
	display: grid;
	grid-template-columns: 144px minmax(0, 1fr);
	gap: 1.2rem;
	align-items: center;
	padding-bottom: 1.1rem;
	border-bottom: 1px solid #e1e8e2;
}

.football-pool.single-team-page .single-team-media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 144px;
	height: 144px;
	border-radius: 22px;
	background:
		radial-gradient(circle at 30% 30%, rgba(240, 211, 122, .2), rgba(240, 211, 122, 0) 55%),
		linear-gradient(180deg, #153c26 0%, #0b2417 100%);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
	overflow: hidden;
}

.football-pool.single-team-page .single-team-hero.has-flag .single-team-media {
	background: linear-gradient(180deg, #f7fbf7 0%, #edf3ee 100%);
	border: 1px solid #dbe3dd;
}

.football-pool.single-team-page .single-team-media a.thumb,
.football-pool.single-team-page .single-team-media a.thumb img,
.football-pool.single-team-page .single-team-media img {
	display: block;
	max-width: 100%;
	max-height: 100%;
}

.football-pool.single-team-page .single-team-media img.team-photo.thumb,
.football-pool.single-team-page .single-team-media img.team-photo,
.football-pool.single-team-page .single-team-media img.team-flag.thumb.team-list-flag {
	width: 100%;
	height: 100%;
	object-fit: contain;
	margin: 0;
	border: 0;
}

.football-pool.single-team-page .single-team-kicker {
	margin: 0 0 .35rem;
	font-size: .82rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #8c6a17;
}

.football-pool.single-team-page .single-team-name {
	margin: 0;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: .95;
}

.football-pool.single-team-page .single-team-name a {
	color: #20304a;
	text-decoration: none;
}

.football-pool.single-team-page .single-team-name a:hover {
	text-decoration: underline;
}

.football-pool.single-team-page .single-team-bio {
	margin: .7rem 0 0;
	max-width: 60ch;
	color: #51606f;
	font-size: 1rem;
	line-height: 1.7;
}

.football-pool.single-team-page .single-team-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin-top: 1.15rem;
}

.football-pool.single-team-page .single-team-fact {
	padding: 1rem 1.05rem;
	border: 1px solid #e1e8e2;
	border-radius: 18px;
	background: #fff;
}

.football-pool.single-team-page .single-team-label {
	display: block;
	margin-bottom: .45rem;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #6c7a6f;
}

.football-pool.single-team-page .single-team-value,
.football-pool.single-team-page .single-team-value a {
	color: #213126;
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
}

.football-pool.single-team-page .single-team-value a:hover,
.football-pool.single-team-page .team-stadium-list a:hover {
	text-decoration: underline;
}

.football-pool.single-team-page .team-stadium-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: .45rem;
}

.football-pool.single-team-page .team-stadium-list li {
	margin: 0;
	padding: .6rem .75rem;
	border-radius: 12px;
	background: #f5f8f5;
}

.football-pool.single-team-page .team-stadium-list a {
	color: #21304a;
	font-weight: 600;
	text-decoration: none;
}

.football-pool.single-team-page .single-team-matches {
	margin-top: 1.4rem;
}

.football-pool.single-team-page .single-team-matches h4 {
	margin: 0 0 .8rem;
	font-size: 1.55rem;
	color: #20304a;
}

.football-pool.single-team-page .single-team-backlink {
	margin: 1rem 0 0;
}

.football-pool.single-team-page .single-team-backlink a {
	color: #1d68c8;
	font-weight: 700;
	text-decoration: none;
}

.football-pool.single-team-page .single-team-backlink a:hover {
	text-decoration: underline;
}

.football-pool.teams-directory .team-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: .9rem;
}

.football-pool.teams-directory .team-directory-item {
	margin: 0;
	padding: 0;
}

.football-pool.teams-directory .team-directory-link {
	display: flex;
	align-items: center;
	gap: .9rem;
	min-height: 74px;
	padding: .95rem 1rem;
	border: 1px solid #dbe1e7;
	border-radius: 14px;
	background: linear-gradient(180deg, #ffffff 0%, #f7f9fb 100%);
	box-shadow: 0 1px 3px rgba(25, 35, 45, .05);
	text-decoration: none;
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease, background-color .15s ease;
}

.football-pool.teams-directory .team-directory-link:hover {
	transform: translateY(-1px);
	border-color: #c9d2dc;
	background: linear-gradient(180deg, #ffffff 0%, #f2f6fa 100%);
	box-shadow: 0 6px 18px rgba(25, 35, 45, .08);
}

.football-pool.teams-directory .team-directory-media {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	flex: 0 0 52px;
	border-radius: 12px;
	background: #eef3f7;
	overflow: hidden;
}

.football-pool.teams-directory img.team-photo.thumb.team-list,
.football-pool.teams-directory img.team-flag.thumb.team-list-flag {
	display: block;
	width: 38px;
	height: 38px;
	max-width: 38px;
	max-height: 38px;
	margin: 0;
	object-fit: contain;
	border: 0;
}

.football-pool.teams-directory .team-directory-body {
	display: flex;
	flex-direction: column;
	gap: .18rem;
	min-width: 0;
}

.football-pool.teams-directory .team-directory-name {
	display: block;
	color: #243041;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -.01em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.football-pool.teams-directory .team-directory-meta {
	display: block;
	color: #667281;
	font-size: .78rem;
	line-height: 1.35;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.football-pool.teams-directory .team-directory-item.favorite .team-directory-link {
	border-color: #d7c79d;
	background: linear-gradient(180deg, #fffdf5 0%, #f9f5e8 100%);
}

.football-pool.teams-directory .team-directory-item.favorite .team-directory-media {
	background: #f6edd3;
}

body .entry-content > h1:first-child,
body .entry-content > h2:first-child,
body .entry-content > h3:first-child {
	margin-bottom: .9rem;
}

@media (max-width: 980px) {
	.football-pool.teams-directory .team-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.football-pool.single-team-page .single-team-card {
		padding: 1rem;
		border-radius: 18px;
	}

	.football-pool.single-team-page .single-team-hero {
		grid-template-columns: 1fr;
		gap: .9rem;
		text-align: center;
	}

	.football-pool.single-team-page .single-team-media {
		width: 116px;
		height: 116px;
		margin: 0 auto;
	}

	.football-pool.single-team-page .single-team-bio {
		margin-left: auto;
		margin-right: auto;
	}

	.football-pool.single-team-page .single-team-details {
		grid-template-columns: 1fr;
	}

	.football-pool.teams-directory .team-list {
		grid-template-columns: 1fr;
		gap: .7rem;
	}

	.football-pool.teams-directory .team-directory-link {
		min-height: 66px;
		padding: .8rem .85rem;
	}

	.football-pool.teams-directory .team-directory-media {
		width: 46px;
		height: 46px;
		flex-basis: 46px;
	}

	.football-pool.teams-directory img.team-photo.thumb.team-list,
	.football-pool.teams-directory img.team-flag.thumb.team-list-flag {
		width: 34px;
		height: 34px;
		max-width: 34px;
		max-height: 34px;
	}

	.football-pool.teams-directory .team-directory-name {
		font-size: .95rem;
	}
}

/* Ranking page */
.fp-ranking-filter-form {
	margin: 1.1rem 0 1.4rem;
	width: min(100%, 1480px);
	margin-left: auto;
	margin-right: auto;
}

.fp-ranking-filter-bar {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 1.1rem;
	border-radius: 0;
	background:
		linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0)),
		linear-gradient(180deg, #153c26 0%, #07170d 100%);
	box-shadow: 0 16px 34px rgba(13, 48, 28, .14);
}

.fp-ranking-filter-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: .9rem;
	flex: 1 1 auto;
}

.fp-ranking-filter-field {
	display: flex;
	flex-direction: column;
	gap: .38rem;
	margin: 0;
	min-width: 0;
	color: #fff6d1;
}

.fp-ranking-filter-field label {
	display: block;
	margin: 0;
	font-size: .82rem;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #f0d37a;
}

.fp-ranking-filter-field select,
.fp-ranking-filter-field .ranking-select,
.fp-ranking-filter-field .league-select select {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	min-height: 48px;
	padding: .75rem .95rem;
	border: 1px solid rgba(240, 211, 122, .28);
	border-radius: 14px;
	background: rgba(255, 255, 255, .96);
	color: #213126;
	font-size: 1rem;
	line-height: 1.2;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4);
}

.fp-ranking-filter-field select:focus {
	outline: none;
	border-color: #f0d37a;
	box-shadow: 0 0 0 3px rgba(240, 211, 122, .18);
}

.fp-ranking-filter-actions {
	display: flex;
	align-items: end;
	flex: 0 0 auto;
}

.fp-ranking-filter-submit {
	min-width: 104px;
	height: 48px;
	padding: 0 1.15rem;
	border: 0;
	border-radius: 14px;
	background: linear-gradient(180deg, #f6c94f 0%, #d89d1b 100%);
	color: #1f1a08;
	font-size: 1rem;
	font-weight: 800;
	text-transform: lowercase;
	box-shadow: 0 12px 22px rgba(216, 157, 27, .22);
	cursor: pointer;
}

.fp-ranking-filter-submit:hover,
.fp-ranking-filter-submit:focus {
	background: linear-gradient(180deg, #f8d568 0%, #dda72c 100%);
}

.fp-ranking-shell {
	margin-top: 1.25rem;
	width: min(100%, 1480px);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.fp-ranking-hero {
	padding: clamp(1.1rem, 2.4vw, 2.15rem) clamp(.6rem, 2vw, 1.4rem) 1.35rem;
	border-radius: 0;
	background:
		radial-gradient(circle at 50% 0%, rgba(244, 208, 99, .22), rgba(244, 208, 99, 0) 34%),
		linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0)),
		linear-gradient(180deg, #153c26 0%, #07170d 100%);
	color: #fff6d1;
	box-shadow: 0 18px 40px rgba(6, 23, 13, .18);
	position: relative;
	overflow: hidden;
}

.fp-ranking-hero-copy {
	text-align: center;
	position: relative;
	z-index: 4;
	max-width: 980px;
	margin: 0 auto;
	padding: 0 .75rem clamp(3.35rem, 8vw, 5.6rem);
}

.fp-ranking-kicker {
	margin: 0;
	font-size: .84rem;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #f0d37a;
}

.fp-ranking-hero h2 {
	margin: .35rem auto 0;
	color: #fff;
	max-width: 12ch;
	font-size: clamp(1.75rem, 4.2vw, 3.55rem);
	line-height: 1.02;
	font-weight: 900;
	text-transform: uppercase;
}

.fp-podium-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: end;
	position: relative;
	z-index: 3;
	gap: clamp(.45rem, 1.35vw, 1.2rem);
	max-width: min(100%, 1000px);
	margin: -.35rem auto 0;
	padding-top: 0;
}

.fp-podium-card {
	position: relative;
	padding: clamp(2.55rem, 5.2vw, 4rem) clamp(.45rem, 1.2vw, 1.1rem) clamp(.7rem, 1.6vw, 1.2rem);
	border-radius: 18px 18px 0 0;
	text-align: center;
	border: 1px solid rgba(15, 23, 15, .12);
	border-bottom: 0;
	min-height: clamp(10.4rem, 22vw, 17.6rem);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	box-shadow: 0 10px 24px rgba(0, 0, 0, .12);
	overflow: visible;
	box-sizing: border-box;
	min-width: 0;
}

.fp-podium-card.second {
	background: linear-gradient(180deg, #f4f7fa 0%, #d7dde4 100%);
	color: #24313c;
	min-height: clamp(9.5rem, 19vw, 15.5rem);
}

.fp-podium-card.first {
	transform: translateY(clamp(-6px, -.7vw, -12px));
	padding-top: clamp(3rem, 5.9vw, 4.65rem);
	padding-bottom: clamp(.8rem, 1.7vw, 1.3rem);
	background: linear-gradient(180deg, #ffeaa2 0%, #e8c34d 100%);
	color: #2d2203;
	box-shadow: 0 20px 34px rgba(230, 190, 69, .28);
	min-height: clamp(11.25rem, 24.5vw, 19.2rem);
	z-index: 2;
}

.fp-podium-card.third {
	background: linear-gradient(180deg, #efcfb5 0%, #c98857 100%);
	color: #2f180d;
	min-height: clamp(9.5rem, 19vw, 15.5rem);
}

.fp-podium-medal {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(48px, 7vw, 88px);
	height: clamp(48px, 7vw, 88px);
	margin: 0 auto;
	border-radius: 50%;
	font-size: clamp(1.35rem, 2vw, 2.3rem);
	font-weight: 900;
	box-shadow: inset 0 0 0 clamp(4px, .55vw, 7px) rgba(255, 255, 255, .35), 0 10px 18px rgba(0, 0, 0, .12);
	position: absolute;
	top: clamp(-28px, -3vw, -42px);
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
}

.fp-podium-medal::before,
.fp-podium-medal::after {
	content: none;
	display: none;
}

.fp-place-1 {
	background: radial-gradient(circle at 30% 30%, #fff5bd, #d89d1b);
}

.fp-place-1::before,
.fp-place-1::after {
	background: linear-gradient(180deg, #e1b84a 0%, #9c6a11 100%);
}

.fp-place-2 {
	background: radial-gradient(circle at 30% 30%, #ffffff, #bcc5cf);
}

.fp-place-2::before,
.fp-place-2::after {
	background: linear-gradient(180deg, #b4bcc5 0%, #6f7781 100%);
}

.fp-place-3 {
	background: radial-gradient(circle at 30% 30%, #f5dcc8, #a86230);
}

.fp-place-3::before,
.fp-place-3::after {
	background: linear-gradient(180deg, #c58a5b 0%, #7b4320 100%);
}

.fp-podium-label {
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
	opacity: .85;
	display: none;
}

.fp-podium-avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: .1rem auto clamp(.35rem, 1vw, .7rem);
}

.fp-podium-avatar-image {
	width: clamp(34px, 5vw, 58px);
	height: clamp(34px, 5vw, 58px);
	border-radius: 50%;
	border: clamp(2px, .3vw, 3px) solid rgba(255, 255, 255, .58);
	object-fit: cover;
	box-shadow: 0 8px 18px rgba(0, 0, 0, .15);
	background: rgba(255, 255, 255, .8);
}

.fp-podium-card.first .fp-podium-avatar-image {
	width: clamp(38px, 5.65vw, 66px);
	height: clamp(38px, 5.65vw, 66px);
}

.fp-podium-name {
	margin: 0 0 clamp(.22rem, .7vw, .55rem);
	font-size: clamp(.72rem, 1.35vw, 1.05rem);
	line-height: 1.12;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: .01em;
	word-break: break-word;
	overflow-wrap: anywhere;
}

.fp-podium-name a {
	color: inherit;
	text-decoration: none;
}

.fp-podium-points {
	font-size: clamp(1.05rem, 2.35vw, 2.05rem);
	font-weight: 900;
	line-height: 1;
}

.fp-podium-meta {
	margin-top: clamp(.18rem, .6vw, .42rem);
	font-size: clamp(.58rem, .95vw, .78rem);
	font-weight: 700;
	opacity: .8;
}

.fp-ranking-panel {
	padding: 1.25rem;
	border: 1px solid #d9e1d9;
	border-top: 0;
	border-radius: 0 0 22px 22px;
	background: #f7fbf7;
	box-shadow: 0 16px 34px rgba(13, 48, 28, .1);
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.fp-ranking-empty {
	margin: 0;
	padding: 1rem 1.1rem;
	background: #fff;
	border: 1px solid #d9e1d9;
	border-radius: 16px;
	color: #2b3a31;
	font-weight: 700;
	text-align: center;
}

.fp-ranking-empty-hero {
	margin-top: 1rem;
}

.fp-ranking-empty-row td {
	padding: 0;
	border-bottom: 0;
	text-align: center;
}

.fp-ranking-empty-row .fp-ranking-empty {
	margin: 1rem;
}

.fp-ranking-content-wrap {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
}

.fp-ranking-search-wrap {
	margin-bottom: .9rem;
	width: 100%;
}

.fp-ranking-search {
	width: 100%;
	padding: .85rem 1rem;
	border: 1px solid #d2ddd2;
	border-radius: 14px;
	background: #fff;
	font-size: .95rem;
	line-height: 1.2;
}

.fp-ranking-search:focus {
	outline: none;
	border-color: #7ea06f;
	box-shadow: 0 0 0 3px rgba(126, 160, 111, .16);
}

.fp-ranking-table-wrap {
	overflow-x: auto;
	width: 100%;
}

.fp-ranking-table-wrap .fp-ranking-table,
table.pool-ranking.ranking-page.fp-ranking-table {
	width: 100% !important;
	min-width: 1120px;
	table-layout: auto;
	border-collapse: separate;
	border-spacing: 0;
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
}

.fp-ranking-table thead th {
	padding: 1rem 1.05rem;
	background: #0d4f24;
	color: #fff;
	text-align: left;
	font-size: .92rem;
	font-weight: 700;
}

.fp-ranking-table tbody td {
	padding: 1rem 1.05rem;
	border-bottom: 1px solid #e7ece7;
	font-size: 1rem;
	vertical-align: middle;
}

.fp-ranking-table tbody tr:last-child td {
	border-bottom: 0;
}

.fp-ranking-table tbody tr.currentuser {
	background: #f0f8ef;
}

.fp-rank {
	width: 110px;
}

.fp-rank-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #edf1ef;
	color: #29312d;
	font-weight: 800;
}

.fp-rank-1,
.fp-rank-2,
.fp-rank-3 {
	color: #2a2206;
}

.fp-rank-1 { background: #ebcc5e; }
.fp-rank-2 { background: #d8e0e8; }
.fp-rank-3 { background: #d7a57f; }

.fp-user a {
	color: #233126;
	font-weight: 700;
	text-decoration: none;
}

.fp-ranking-table th:nth-child(2),
.fp-ranking-table td.fp-user {
	min-width: 360px;
}

.fp-ranking-table th:nth-child(3),
.fp-ranking-table td.fp-points,
.fp-ranking-table th:nth-child(4),
.fp-ranking-table td.fp-correct {
	width: 180px;
}

.fp-user-inline {
	align-items: center;
	gap: 14px;
}

.fp-user-inline-copy {
	min-width: 0;
}

.fp-user a .fp-user-inline-copy {
	font-size: 1.05rem;
	line-height: 1.15;
}

.fp-user-inline-meta {
	display: block;
	margin-top: .22rem;
	font-size: .83rem;
	line-height: 1.3;
	color: #5c6f64;
}

.fp-user a:hover {
	text-decoration: underline;
}

.fp-points {
	font-weight: 800;
	color: #c59f28;
	font-size: 1.15rem;
}

.fp-correct {
	font-weight: 700;
	color: #27322d;
	font-size: 1.05rem;
}

.fp-daily-summary {
	margin-top: 1rem;
	padding: 1.1rem;
	border: 1px solid #d9e1d9;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 10px 24px rgba(13, 48, 28, .06);
}

.fp-daily-summary-head h3 {
	margin: 0;
	font-size: 1.25rem;
	line-height: 1.15;
	color: #153c26;
}

.fp-daily-summary-head p {
	margin: .35rem 0 0;
	color: #627468;
	font-size: .92rem;
}

.fp-daily-summary-cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: .75rem;
	margin-top: 1rem;
}

.fp-daily-summary-card {
	padding: .9rem .95rem;
	border-radius: 14px;
	background: linear-gradient(180deg, #f8fbf7 0%, #eef5ef 100%);
	border: 1px solid #dde6dd;
}

.fp-daily-summary-card span {
	display: block;
	font-size: .77rem;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: #6a7b70;
}

.fp-daily-summary-card strong {
	display: block;
	margin-top: .4rem;
	font-size: 1.12rem;
	line-height: 1.15;
	color: #0d4f24;
}

.fp-daily-performance {
	margin-top: 1rem;
}

.fp-daily-performance-head h4 {
	margin: 0 0 .7rem;
	font-size: 1rem;
	color: #153c26;
}

.fp-daily-performance-table-wrap {
	overflow-x: auto;
}

.fp-daily-performance-table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
	border: 1px solid #dde6dd;
	border-radius: 14px;
	overflow: hidden;
}

.fp-daily-performance-table thead th {
	padding: .85rem .95rem;
	background: #0d4f24;
	color: #fff;
	text-align: left;
	font-size: .88rem;
	font-weight: 800;
}

.fp-daily-performance-table tbody td {
	padding: .85rem .95rem;
	border-bottom: 1px solid #eef2ee;
	font-size: .95rem;
	color: #24313c;
}

.fp-daily-performance-table tbody tr:last-child td {
	border-bottom: 0;
}

@media (max-width: 767px) {
	.fp-ranking-filter-bar {
		flex-direction: column;
		align-items: stretch;
		padding: .9rem;
		border-radius: 0;
	}

	.fp-ranking-filter-fields {
		grid-template-columns: 1fr;
		gap: .75rem;
	}

	.fp-ranking-filter-actions {
		align-items: stretch;
	}

	.fp-ranking-filter-submit {
		width: 100%;
	}

	.fp-ranking-hero {
		padding: 1rem .55rem .95rem;
		border-radius: 0;
	}

	.fp-ranking-hero-copy {
		padding: 0 .15rem 2.7rem;
	}

	.fp-ranking-hero h2 {
		max-width: 12ch;
		font-size: clamp(1.1rem, 6.2vw, 1.75rem);
		line-height: 1.04;
	}

	.fp-podium-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: .38rem;
		max-width: 100%;
		margin-top: .1rem;
		padding-top: 0;
	}

	.fp-podium-card {
		min-height: 9.2rem;
		padding: 2.35rem .35rem .7rem;
		border-radius: 18px;
		border-bottom: 1px solid rgba(15, 23, 15, .12);
	}

	.fp-podium-card.first,
	.fp-podium-card.second,
	.fp-podium-card.third {
		min-height: 9.2rem;
	}

	.fp-podium-card.first {
		min-height: 10.3rem;
		padding-top: 2.7rem;
		padding-bottom: .78rem;
	}

	.fp-podium-medal {
		width: 46px;
		height: 46px;
		top: -18px;
		font-size: 1.2rem;
		box-shadow: inset 0 0 0 6px rgba(255, 255, 255, .34), 0 8px 16px rgba(0, 0, 0, .1);
	}

	.fp-podium-medal::before,
	.fp-podium-medal::after {
		display: none;
	}

	.fp-podium-avatar {
		margin: 0 auto .32rem;
	}

	.fp-podium-avatar-image,
	.fp-podium-card.first .fp-podium-avatar-image {
		width: 34px;
		height: 34px;
	}

	.fp-podium-name {
		margin-bottom: .2rem;
		font-size: .62rem;
		line-height: 1.15;
	}

	.fp-podium-points {
		font-size: .94rem;
	}

	.fp-podium-meta {
		font-size: .5rem;
	}

	.fp-ranking-panel {
		padding: .8rem;
		border-radius: 0 0 18px 18px;
		align-items: stretch;
	}

	.fp-ranking-table-wrap .fp-ranking-table,
	table.pool-ranking.ranking-page.fp-ranking-table {
		min-width: 0;
	}

	.fp-ranking-table thead th,
	.fp-ranking-table tbody td {
		padding: .7rem .75rem;
		font-size: .86rem;
	}

	.fp-ranking-table th:nth-child(2),
	.fp-ranking-table td.fp-user,
	.fp-ranking-table th:nth-child(3),
	.fp-ranking-table td.fp-points,
	.fp-ranking-table th:nth-child(4),
	.fp-ranking-table td.fp-correct {
		width: auto;
		min-width: 0;
	}

	.fp-user-inline {
		gap: 10px;
	}

	.fp-user a .fp-user-inline-copy {
		font-size: .95rem;
	}

	.fp-daily-summary {
		padding: .85rem;
		border-radius: 16px;
	}

	.fp-daily-summary-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.fp-daily-summary-card {
		padding: .75rem .8rem;
	}

	.fp-daily-summary-card strong {
		font-size: 1rem;
	}
}

/* Wide tournament/group layout */
.football-pool-layout.football-pool-layout-wide {
	width: min(100%, 1680px);
	margin: 0 auto;
}

.stadium-directory-page,
.stadium-detail-page {
	width: min(100%, 1480px);
	margin: 0 auto;
}

.stadium-directory-hero,
.stadium-detail-hero {
	position: relative;
	overflow: hidden;
	border-radius: 28px;
	padding: 2rem;
	background:
		radial-gradient(circle at top right, rgba(237, 201, 89, .22), rgba(237, 201, 89, 0) 28%),
		linear-gradient(135deg, #133a25 0%, #0a1f14 100%);
	color: #fff8df;
	box-shadow: 0 22px 44px rgba(8, 32, 20, .18);
}

.stadium-directory-kicker,
.stadium-detail-kicker {
	margin: 0 0 .55rem;
	font-size: .82rem;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #efcb67;
}

.stadium-directory-hero h1,
.stadium-detail-hero h1 {
	margin: 0;
	color: #fff;
	font-size: clamp(2.2rem, 4vw, 4rem);
	line-height: .96;
	text-transform: uppercase;
}

.stadium-directory-hero p,
.stadium-detail-hero .stadium.bio {
	margin: .8rem 0 0;
	max-width: 64ch;
	font-size: 1rem;
	line-height: 1.7;
	color: rgba(255, 248, 223, .9);
}

.stadium-directory-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 1.2rem;
	margin-top: 1.5rem;
}

.stadium-list.stadium-directory-grid div {
	clear: none;
	margin: 0;
}

.stadium-directory-card {
	display: grid;
	grid-template-rows: 180px 1fr;
	min-height: 100%;
	border: 1px solid rgba(17, 60, 38, .1);
	border-radius: 24px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 14px 30px rgba(11, 49, 32, .08);
	transition: transform .18s ease, box-shadow .18s ease;
}

.stadium-directory-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 38px rgba(11, 49, 32, .12);
}

.stadium-directory-media {
	display: block;
	background:
		linear-gradient(135deg, rgba(14, 93, 58, .14), rgba(232, 198, 88, .2)),
		#eef5f0;
}

.stadium-directory-media img.stadium-photo.stadium-list,
.stadium-detail-media img.stadium-photo {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.stadium-directory-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background:
		radial-gradient(circle at top, rgba(239, 203, 103, .4), rgba(239, 203, 103, 0) 42%),
		linear-gradient(135deg, #153c26, #0a1f14);
	color: #fff;
	font-size: 3.4rem;
	font-weight: 900;
	text-transform: uppercase;
}

.stadium-directory-copy {
	display: grid;
	gap: .65rem;
	padding: 1.15rem 1.2rem 1.25rem;
}

.stadium-directory-copy h2,
.stadium-directory-copy p {
	margin: 0;
}

.stadium-directory-copy h2 a {
	color: #173425;
	text-decoration: none;
	font-size: 1.45rem;
	line-height: 1.05;
}

.stadium-directory-copy h2 a:hover {
	color: #0f6a43;
}

.stadium-directory-copy p {
	font-size: .95rem;
	line-height: 1.6;
	color: #597062;
}

.stadium-detail-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr);
	gap: 1.5rem;
	align-items: stretch;
}

.stadium-detail-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.stadium-detail-media {
	min-height: 280px;
	border-radius: 22px;
	overflow: hidden;
	background: rgba(255,255,255,.08);
}

.stadium-detail-section {
	margin-top: 1.5rem;
	padding: 1.4rem;
	border-radius: 24px;
	background: #f7fbf7;
	box-shadow: 0 14px 30px rgba(11, 49, 32, .08);
}

.stadium-detail-section h4 {
	margin-top: 0;
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: .95rem;
	color: #0f6a43;
}

.stadium-directory-back {
	margin: 1rem 0 0;
}

.stadium-directory-back a {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	padding: .8rem 1.1rem;
	border-radius: 999px;
	background: #0f6a43;
	color: #fff;
	text-decoration: none;
	font-weight: 700;
}

.stadium-directory-back a:hover {
	background: #0c5635;
}

.football-pool-statistics-layout {
	padding-left: 1rem;
	padding-right: 1rem;
}

.football-pool-statistics-layout h1,
.football-pool-statistics-layout h2,
.football-pool-statistics-layout h3 {
	text-align: center;
}

.football-pool-statistics-layout table.matchinfo.statistics {
	width: min(100%, 980px);
	max-width: 980px;
	margin: 1.25rem auto 0;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 18px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 12px 28px rgba(11, 54, 31, .08);
}

.football-pool-statistics-layout table.matchinfo.statistics thead th {
	background: #114c2a;
	color: #fff;
	font-size: .95rem;
	font-weight: 700;
	line-height: 1.2;
	padding: .9rem 1rem;
	border-right: 1px solid rgba(255, 255, 255, .16);
}

.football-pool-statistics-layout table.matchinfo.statistics thead th:last-child {
	border-right: 0;
}

.football-pool-statistics-layout table.matchinfo.statistics tbody td {
	padding: .9rem 1rem;
	border-bottom: 1px solid #e3ebe4;
	font-size: .96rem;
	vertical-align: middle;
}

.football-pool-statistics-layout table.matchinfo.statistics tbody tr:last-child td {
	border-bottom: 0;
}

.football-pool-statistics-layout table.matchinfo.statistics tbody tr.currentuser {
	background: #eef7f0;
}

.football-pool-statistics-layout table.matchinfo.statistics td a {
	color: #183122;
	font-weight: 600;
	text-decoration: none;
}

.football-pool-statistics-layout table.matchinfo.statistics td a:hover {
	text-decoration: underline;
}

.football-pool-statistics-layout table.matchinfo.statistics td.score {
	font-weight: 800;
	color: #114c2a;
	text-align: center;
}

.football-pool-statistics-layout table.matchinfo.statistics td.home,
.football-pool-statistics-layout table.matchinfo.statistics td.away,
.football-pool-statistics-layout table.matchinfo.statistics td.match-hyphen {
	text-align: center;
}

.football-pool-statistics-layout .charts-container,
.football-pool-statistics-layout .pie-chart.stats-page {
	width: min(100%, 980px);
	margin-left: auto;
	margin-right: auto;
}

.football-pool-groups-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 1.25rem;
	align-items: start;
}

.football-pool-groups-grid > .ranking {
	width: 100%;
	max-width: none;
	margin: 0;
}

@media (max-width: 767px) {
	.football-pool-layout.football-pool-layout-wide {
		width: 100%;
	}

	.stadium-directory-hero,
	.stadium-detail-hero {
		padding: 1.25rem;
		border-radius: 22px;
	}

	.stadium-detail-hero {
		grid-template-columns: 1fr;
	}

	.stadium-detail-media {
		min-height: 220px;
	}

	.football-pool-statistics-layout {
		padding-left: .65rem;
		padding-right: .65rem;
	}

	.football-pool-statistics-layout table.matchinfo.statistics {
		width: 100%;
		max-width: none;
	}

	.football-pool-statistics-layout table.matchinfo.statistics thead th,
	.football-pool-statistics-layout table.matchinfo.statistics tbody td {
		padding: .72rem .7rem;
		font-size: .86rem;
	}

	.football-pool-groups-grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}
}
.matchinfo.new-layout.input .prediction-table-wrap{width:100%;overflow-x:auto;padding-bottom:.25rem;-webkit-overflow-scrolling:touch}.matchinfo.new-layout.input .matchtype{margin-top:1.5rem;text-transform:uppercase;letter-spacing:.08em}.matchinfo.new-layout.input .matchtype:first-child{margin-top:0}.matchinfo.new-layout.input .prediction-table-head,.matchinfo.new-layout.input .prediction-row-main{display:grid;grid-template-columns:minmax(108px,.92fr) 82px minmax(180px,1.35fr) 62px 40px 62px minmax(180px,1.35fr) minmax(152px,1fr);align-items:center;column-gap:.75rem;min-width:960px}.matchinfo.new-layout.input .prediction-table-head{margin:0 0 .45rem;padding:0 .85rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6f6547}.matchinfo.new-layout.input .prediction-head-score,.matchinfo.new-layout.input .prediction-head-versus{text-align:center}.matchinfo.new-layout.input .prediction-head-status{text-align:right}.matchinfo.new-layout.input .match-date-row{margin:.7rem 0 .4rem;padding:0 .2rem;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:#7b735d}.matchinfo.new-layout.input .match-card.prediction-row{margin:0 0 .55rem;padding:.7rem .85rem;border-radius:14px}.matchinfo.new-layout.input .prediction-row-main{row-gap:.35rem}.matchinfo.new-layout.input .prediction-cell{min-width:0}.matchinfo.new-layout.input .prediction-date,.matchinfo.new-layout.input .prediction-time{font-size:.82rem;font-weight:700;color:#4c4533}.matchinfo.new-layout.input .prediction-team{display:flex;align-items:center;gap:.55rem;min-width:0}.matchinfo.new-layout.input .prediction-team-away{justify-content:flex-end;text-align:right}.matchinfo.new-layout.input .prediction-team-away .team-name{order:1}.matchinfo.new-layout.input .prediction-team-away .flag-wrap{order:2}.matchinfo.new-layout.input .prediction-team .flag-wrap,.matchinfo.new-layout.input .prediction-team .flag,.matchinfo.new-layout.input .prediction-team img.flag{width:30px;height:30px;flex:0 0 30px}.matchinfo.new-layout.input .prediction-team .team-name{font-size:.96rem;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matchinfo.new-layout.input .prediction-score{text-align:center}.matchinfo.new-layout.input .prediction-score .score-box{min-width:48px;height:40px;padding:0 .3rem;margin:0 auto;border-radius:10px}.matchinfo.new-layout.input .prediction-score input.prediction{max-width:30px;height:38px;font-size:1rem;text-align:center}.matchinfo.new-layout.input .prediction-row.closed .prediction-score .score-box{background:#f6f1e4;color:#7a6e4d;border-color:rgba(122,110,77,.35)}.matchinfo.new-layout.input .prediction-placeholder{display:inline-block;min-width:1ch}.matchinfo.new-layout.input .prediction-versus{text-align:center}.matchinfo.new-layout.input .prediction-status-cell{display:flex;flex-direction:column;align-items:flex-end;gap:.18rem;text-align:right}.matchinfo.new-layout.input .prediction-note{font-size:.7rem;line-height:1.35;color:#6a624d}.matchinfo.new-layout.input .prediction-points{font-weight:700;color:#4c4533}.matchinfo.new-layout.input .prediction-mobile-label{display:none}.matchinfo.new-layout.input .match-icons{margin-top:.1rem}.fp-prediction-form div.buttonblock{display:flex;justify-content:flex-end}.fp-prediction-form div.buttonblock input[type=submit]{padding:.8rem 1.25rem;border:1px solid #d6c89e;border-radius:999px;background:#133a25;color:#fff8df;font-weight:700;letter-spacing:.02em}@media(max-width: 767px){.matchinfo.new-layout.input{width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box}.matchinfo.new-layout.input *,.matchinfo.new-layout.input *::before,.matchinfo.new-layout.input *::after{box-sizing:border-box}.matchinfo.new-layout.input .prediction-table-wrap{width:100%;max-width:100%;overflow-x:hidden;padding-bottom:0}.matchinfo.new-layout.input .prediction-table-head{display:none}.matchinfo.new-layout.input .match-date-row{margin:.55rem 0 .3rem;padding:0 .1rem;font-size:.78rem}.matchinfo.new-layout.input .match-card.prediction-row{width:100%;max-width:100%;padding:.65rem .7rem;margin-right:0;overflow:hidden}.matchinfo.new-layout.input .prediction-row-main{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) auto auto auto;grid-template-areas:"date date time time" "home hscore versus ascore" "away status status status";column-gap:.45rem;row-gap:.4rem}.matchinfo.new-layout.input .prediction-date{grid-area:date}.matchinfo.new-layout.input .prediction-time{grid-area:time;text-align:right}.matchinfo.new-layout.input .prediction-team-home{grid-area:home}.matchinfo.new-layout.input .prediction-home{grid-area:hscore}.matchinfo.new-layout.input .prediction-versus{grid-area:versus}.matchinfo.new-layout.input .prediction-away{grid-area:ascore}.matchinfo.new-layout.input .prediction-team-away{grid-area:away}.matchinfo.new-layout.input .prediction-status-cell{grid-area:status;align-items:flex-start;text-align:left}.matchinfo.new-layout.input .prediction-team,.matchinfo.new-layout.input .prediction-team-away{justify-content:flex-start;text-align:left;gap:.45rem}.matchinfo.new-layout.input .prediction-team-away .team-name,.matchinfo.new-layout.input .prediction-team-away .flag-wrap{order:initial}.matchinfo.new-layout.input .prediction-team .team-name{font-size:.95rem;white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word}.matchinfo.new-layout.input .prediction-team .flag-wrap,.matchinfo.new-layout.input .prediction-team .flag,.matchinfo.new-layout.input .prediction-team img.flag{width:26px;height:26px;flex-basis:26px}.matchinfo.new-layout.input .prediction-score .score-box{min-width:42px;width:42px;height:36px;padding:0 .2rem}.matchinfo.new-layout.input .prediction-score input.prediction{max-width:24px;height:34px;font-size:.95rem}.matchinfo.new-layout.input .prediction-versus .versus{font-size:.78rem}.matchinfo.new-layout.input .match-status{font-size:.66rem}.matchinfo.new-layout.input .prediction-note{font-size:.68rem}.matchinfo.new-layout.input .match-icons{justify-content:flex-start}}
.fp-home-leaderboard,.fp-home-leaderboard *,.fp-home-leaderboard *::before,.fp-home-leaderboard *::after{box-sizing:border-box}.fp-home-leaderboard{--fp-home-gold:#f2d05f;--fp-home-gold-deep:#c49a1e;--fp-home-green:#0d5d2f;--fp-home-green-deep:#073a1d;--fp-home-green-mid:#0f6a43;position:relative;width:min(100%,880px);margin:1.5rem auto}.fp-home-leaderboard-stage{position:relative;min-height:340px}.fp-home-leaderboard-slide{position:absolute;inset:0;opacity:0;transform:translateX(24px) scale(.98);pointer-events:none;transition:opacity .45s ease,transform .45s ease}.fp-home-leaderboard-slide.is-active{opacity:1;transform:translateX(0) scale(1);pointer-events:auto}.fp-home-leaderboard-card{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(150px,.7fr);align-items:stretch;overflow:hidden;min-height:280px;padding:1.05rem 1.05rem .95rem;border:3px solid rgba(242,208,95,.82);border-radius:30px;background:radial-gradient(circle at top left,rgba(255,255,255,.08),transparent 36%),radial-gradient(circle at bottom left,rgba(242,208,95,.1),transparent 32%),linear-gradient(120deg,var(--fp-home-green-deep) 0%,var(--fp-home-green-mid) 58%,#0a4b25 58%,#063618 100%);box-shadow:0 20px 44px rgba(8,47,24,.28),0 0 38px rgba(242,208,95,.18)}.fp-home-leaderboard-card::after{content:"";position:absolute;inset:0 auto 0 58%;width:40%;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0));border-radius:52% 0 0 52%;pointer-events:none}.fp-home-leaderboard-live{position:absolute;top:0;left:50%;z-index:2;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;min-width:210px;padding:.7rem 1.4rem;border-radius:999px;background:linear-gradient(135deg,#e9c94f,#c79f28);box-shadow:0 10px 22px rgba(199,159,40,.28);color:#0a2b17;font-size:.92rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.fp-home-leaderboard-copy,.fp-home-leaderboard-medal{position:relative;z-index:1}.fp-home-leaderboard-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding-top:.4rem}.fp-home-leaderboard-kicker{margin:0 0 .18rem;color:#f9f1c3;font-size:30px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.fp-home-leaderboard-title{margin:0;color:#fff;font-size:26px;line-height:1.02;font-weight:900;text-transform:uppercase}.fp-home-leaderboard-position{margin-top:.2rem;color:var(--fp-home-gold);font-size:30px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.fp-home-leaderboard-label{margin-top:.2rem;color:#f6dd77;font-size:30px;font-weight:700}.fp-home-leaderboard-username{width:100%;margin-top:.1rem;color:var(--fp-home-gold);font-size:28px;line-height:1.02;font-weight:900;text-transform:uppercase;word-break:break-word;text-wrap:balance}.fp-home-leaderboard-stats{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.45rem}.fp-home-leaderboard-stat{min-width:104px;padding:.45rem .55rem;border-radius:16px;background:rgba(255,255,255,.08);backdrop-filter:blur(4px)}.fp-home-leaderboard-stat span{display:block;margin-bottom:.14rem;color:rgba(255,255,255,.78);font-size:30px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.fp-home-leaderboard-stat strong{display:block;color:#fff;font-size:30px;line-height:1;font-weight:900}.fp-home-leaderboard-stat-points strong{color:var(--fp-home-gold);font-size:30px}.fp-home-leaderboard-medal{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding-left:.15rem}.fp-home-leaderboard-medal-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.34),rgba(255,255,255,.06) 48%,transparent 49%)}.fp-home-leaderboard-medal-svg{width:100%;height:100%;fill:var(--fp-home-gold);color:#08371c}.fp-home-leaderboard-medal-core{fill:rgba(255,255,255,.16)}.fp-home-leaderboard-medal-svg text{font-family:inherit;font-size:30px;font-weight:900;fill:currentColor}.fp-home-leaderboard-medal-caption{color:rgba(255,255,255,.8);font-size:30px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.fp-home-rank-2{--fp-home-gold:#d8dce4;--fp-home-gold-deep:#969ea9}.fp-home-rank-3{--fp-home-gold:#d8a06a;--fp-home-gold-deep:#9f5f2f}.fp-home-leaderboard-dots{display:flex;justify-content:center;align-items:center;gap:.6rem;margin-top:1rem}.fp-home-leaderboard-dot{width:12px;height:12px;padding:0;border:0;border-radius:999px;background:rgba(13,93,47,.22);cursor:pointer;transition:transform .25s ease,background .25s ease,box-shadow .25s ease}.fp-home-leaderboard-dot.is-active{transform:scale(1.18);background:#0f6a43;box-shadow:0 0 0 4px rgba(15,106,67,.15)}.fp-home-leaderboard-empty .fp-home-leaderboard-card-empty{padding:1.5rem 1.7rem;border:2px solid rgba(242,208,95,.38);border-radius:24px;background:linear-gradient(135deg,#0d5d2f,#073a1d);box-shadow:0 18px 36px rgba(8,47,24,.22);color:#fff;font-weight:700;text-align:center}@media (max-width:900px){.fp-home-leaderboard-stage{min-height:316px}.fp-home-leaderboard-card{grid-template-columns:minmax(0,1.35fr) minmax(118px,.62fr);min-height:258px;padding:.95rem .9rem .85rem;border-radius:26px}}@media (max-width:640px){.fp-home-leaderboard{width:min(100%,100%);margin:1.25rem auto}.fp-home-leaderboard-stage{min-height:332px}.fp-home-leaderboard-live{min-width:176px;padding:.62rem 1rem;font-size:.78rem}.fp-home-leaderboard-card{grid-template-columns:1fr;min-height:302px;padding:.9rem .85rem .9rem;text-align:center}.fp-home-leaderboard-card::after{inset:auto 0 0 0;width:100%;height:34%;border-radius:40px 40px 0 0}.fp-home-leaderboard-copy{align-items:center;padding-top:1rem}.fp-home-leaderboard-medal{flex-direction:row;justify-content:center;gap:.45rem;padding-left:0;margin-top:.55rem}.fp-home-leaderboard-medal-icon{width:58px;height:58px}.fp-home-leaderboard-stats{justify-content:center;width:100%;gap:.45rem;margin-top:.45rem}.fp-home-leaderboard-stat{min-width:0;flex:1 1 108px;padding:.5rem .55rem}}
