/*!
Theme Name: World Football Portal
Theme URI: https://worldfootballportal.com
Author: World Football Portal
Author URI: https://worldfootballportal.com
Description: FIFA World Cup 2026 theme. Fully responsive, translation-ready and multilingual (Polylang). Built for fixtures, standings, teams, players and live scores of the 2026 World Cup hosted by USA, Canada and Mexico.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: worldfootballportal
Tags: custom-menu, featured-images, translation-ready, sports, football, world-cup
*/

/* =========================================================
   World Cup 2026 — LIGHT "pitch" palette (on top of soccer.css)
   Host nations: USA / Canada / Mexico
   Bright, airy design: white/soft zem, pitch green brand,
   gold + teal + orange accents ("we are 26" feel)
   ========================================================= */
:root {
    --primary-color: #14271c;          /* dark text on light */
    --primary-light-color: #4a5a50;    /* muted text */
    --secondary-color: #F4B82E;        /* WC2026 gold accent */
    --accent-green: #11A861;           /* pitch green (brand) */
    --accent-green-dark: #0B7A47;
    --accent-teal: #15B7A6;            /* fresh teal accent */
    --accent-orange: #FF6A2C;          /* energetic orange accent */
    --accent-red: #E4002B;             /* host red */
    --light-color: #eef3ee;
    --grey-color: #7c8a82;
    --background-color: #f4f8f4;       /* soft pitch-light zem */
    --img-background-color: #eaf2ec;   /* alt section band */
    --light-background: #ffffff;       /* card surface */
    --line-color: #e2ebe4;
    --wc-gradient: linear-gradient(120deg, #11A861 0%, #15B7A6 55%, #0B7A47 100%);
    --wc-gradient-soft: linear-gradient(120deg, #eafaf1 0%, #e6f7f4 100%);
}

body { background-color: var(--background-color); color: var(--primary-color); }
a { color: var(--accent-green-dark); }

/* Top utility bar — light with green underline */
nav#top { background: #ffffff; border-bottom: 1px solid var(--line-color); padding: 7px 0; }
nav#top, nav#top a, nav#top span { color: var(--primary-light-color); }
nav#top a:hover { color: var(--accent-green); }

/* Header bar — clean white with subtle shadow */
header .slotmachine-main-menu,
header .slotmachine-nav-area,
.slotmachine-main-menu { background: #ffffff !important; }
header { background: #ffffff; border-bottom: 1px solid var(--line-color); box-shadow: 0 2px 18px rgba(17,168,97,.06); }
.header_menu > li > a { color: var(--primary-color); font-weight: 600; }
.header_menu > li > a:hover, .header_menu .current-menu-item > a { color: var(--accent-green); }
.header_menu .current-menu-item > a { position: relative; }
.header-search .form-control { background: #f3f7f3; color: var(--primary-color); border:1px solid var(--line-color); }
.header-search .form-control::placeholder { color: var(--grey-color); }
.wc-site-title { color: var(--primary-color); font-size:1.3rem; }
.wc-site-title strong span.accent { color: var(--accent-green); }
.header-search .btn-search .btn { background: var(--accent-green); color:#fff; }
.header-search .btn-search .btn:hover { background: var(--accent-green-dark); }
/* Dropdown submenus */
.header_menu .sub-menu, .header_menu .children { background:#ffffff; border:1px solid var(--line-color); box-shadow:0 10px 30px rgba(20,39,28,.12); }
.header_menu .sub-menu a { color: var(--primary-color); }
.header_menu .sub-menu a:hover { color: var(--accent-green); }

/* Accent buttons */
.btn-wc {
    display: inline-block;
    background: var(--secondary-color);
    color: #1a1405 !important;
    font-weight: 700;
    padding: 11px 24px;
    border-radius: 8px;
    border: 2px solid var(--secondary-color);
    transition: .25s;
    text-transform: uppercase;
    letter-spacing: .4px;
    box-shadow: 0 6px 16px rgba(244,184,46,.28);
}
.btn-wc:hover { background: #fff; color: #8a6500 !important; box-shadow: 0 6px 16px rgba(20,39,28,.10); }

.btn-wc-green { background: var(--accent-green); border-color: var(--accent-green); color:#fff !important; box-shadow: 0 6px 16px rgba(17,168,97,.28); }
.btn-wc-green:hover { background: #fff; color: var(--accent-green-dark) !important; }

.btn-wc-ghost { background: transparent; border-color: rgba(255,255,255,.7); color:#fff !important; box-shadow:none; }
.btn-wc-ghost:hover { background: #fff; color: var(--accent-green-dark) !important; }

/* Section headings */
.wc-section { padding: 60px 0; }
.wc-section-title { text-align:center; margin-bottom: 40px; }
.wc-section-title h2 { font-weight: 800; text-transform: uppercase; letter-spacing: 1px; }
.wc-section-title h2 span { color: var(--secondary-color); }
.wc-section-title p { color: var(--grey-color); max-width: 720px; margin: 12px auto 0; }

/* Hero */
.wc-hero {
    position: relative;
    background: var(--wc-gradient);
    padding: 96px 0 86px;
    text-align: center;
    border-bottom: 4px solid var(--secondary-color);
    overflow: hidden;
    color: #fff;
}
.wc-hero > .container { position: relative; z-index: 2; }
.wc-hero .wc-hero-bg { position:absolute; inset:0; z-index:1; width:100%; height:100%; object-fit:cover; opacity:.22; pointer-events:none; }
.wc-hero .wc-kicker { display:inline-block; background: rgba(255,255,255,.18); border:1px solid rgba(255,255,255,.4); color:#fff; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; font-size:.72rem; padding:7px 16px; border-radius:30px; margin-bottom:18px; }
.wc-hero h1 { font-size: 3.2rem; font-weight: 900; text-transform: uppercase; line-height: 1.05; color:#fff; text-shadow:0 4px 24px rgba(11,122,71,.4); }
.wc-hero h1 span { color: var(--secondary-color); }
.wc-hero p.lead { color: rgba(255,255,255,.92); font-size: 1.15rem; margin: 18px auto 28px; max-width: 720px; }
.wc-hero .host-flags { font-size: 1rem; color: rgba(255,255,255,.9); margin-top: 16px; }
@media (max-width: 767px){ .wc-hero h1 { font-size: 2.2rem; } }

/* Cards / widget wrappers */
.wc-card {
    background: var(--light-background);
    border: 1px solid var(--line-color);
    border-radius: 14px;
    padding: 18px;
    margin-bottom: 24px;
    box-shadow: 0 8px 24px rgba(20,39,28,.05);
    transition: transform .25s, box-shadow .25s;
}
.wc-card:hover { transform: translateY(-4px); box-shadow: 0 14px 34px rgba(17,168,97,.12); }
.wc-card h3 { font-weight: 700; margin-bottom: 14px; border-left: 4px solid var(--accent-green); padding-left: 10px; color: var(--primary-color); }
.wc-card h3 a { color: var(--primary-color); }
.wc-card h3 a:hover { color: var(--accent-green); }
.wc-card .post-excerpt { color: var(--primary-light-color); margin-bottom: 14px; }

/* Widget host so API-Sports widgets sit nicely on light theme */
.wc-widget { background: var(--light-background); border:1px solid var(--line-color); border-radius: 14px; padding: 10px; overflow: hidden; box-shadow: 0 8px 24px rgba(20,39,28,.05); }

/* Grid helper */
.wc-grid { display: grid; gap: 24px; }
.wc-grid-2 { grid-template-columns: repeat(2, 1fr); }
.wc-grid-3 { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 991px){ .wc-grid-2,.wc-grid-3 { grid-template-columns: 1fr; } }

/* WP core alignment / caption helpers */
.aligncenter { display:block; margin: 0 auto; }
.alignright { float:right; margin: 0 0 1em 1em; }
.alignleft { float:left; margin: 0 1em 1em 0; }
.wp-caption { max-width: 100%; }
.screen-reader-text { position:absolute; clip: rect(1px,1px,1px,1px); height:1px; width:1px; overflow:hidden; }

/* Language switcher (Polylang) — dropdown in top bar */
.wc-lang { position: relative; display: inline-block; text-align: left; font-size: .85rem; }
.wc-lang-toggle { display:inline-flex; align-items:center; gap:7px; cursor:pointer; background:#f3f7f3; border:1px solid var(--line-color); border-radius:30px; padding:5px 12px; color:var(--primary-color); font-weight:700; line-height:1; }
.wc-lang-toggle:hover { border-color: var(--accent-green); color: var(--accent-green); }
.wc-lang-toggle .wc-flag { font-size:1rem; }
.wc-lang-toggle .wc-caret { transition: transform .2s; font-size:.7rem; }
.wc-lang.open .wc-lang-toggle .wc-caret { transform: rotate(180deg); }
.wc-lang-menu { position:absolute; right:0; top:calc(100% + 8px); min-width:170px; background:#fff; border:1px solid var(--line-color); border-radius:12px; box-shadow:0 16px 40px rgba(20,39,28,.16); padding:6px; margin:0; list-style:none; opacity:0; visibility:hidden; transform:translateY(-6px); transition:all .18s; z-index:120; }
.wc-lang.open .wc-lang-menu { opacity:1; visibility:visible; transform:translateY(0); }
.wc-lang-menu li { margin:0; }
.wc-lang-menu a { display:flex; align-items:center; gap:10px; padding:9px 12px; border-radius:8px; color:var(--primary-color); font-weight:600; }
.wc-lang-menu a:hover { background:#eef7f0; color:var(--accent-green); }
.wc-lang-menu a.is-current { background:#e7f6ec; color:var(--accent-green-dark); }
.wc-lang-menu .wc-flag { font-size:1.1rem; }

/* ── Pagination ──────────────────────────────────────────── */
.wc-pagination {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	padding: 40px 0 24px;
}
.wc-pagination-info {
	font-size: .82rem;
	color: var(--primary-light-color);
	letter-spacing: .04em;
	text-transform: uppercase;
}
.wc-pagination ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 6px;
	list-style: none;
	margin: 0;
	padding: 0;
}
/* every page number / dot */
.wc-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	min-width: 44px;
	height: 44px;
	padding: 0 14px;
	border: 2px solid #dde4de;
	border-radius: 10px;
	background: #fff;
	color: var(--primary-color);
	font-size: .9rem;
	font-weight: 600;
	text-decoration: none;
	transition: background .18s, border-color .18s, color .18s, transform .12s, box-shadow .18s;
	white-space: nowrap;
	cursor: pointer;
}
.wc-pagination .page-numbers:hover {
	background: var(--light-color);
	border-color: var(--accent-green);
	color: var(--accent-green-dark);
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(17,168,97,.14);
}
/* active / current */
.wc-pagination .page-numbers.current {
	background: var(--accent-green);
	border-color: var(--accent-green);
	color: #fff;
	box-shadow: 0 4px 14px rgba(17,168,97,.30);
	transform: translateY(-1px);
	pointer-events: none;
}
/* prev / next pill buttons */
.wc-pagination .page-numbers.prev,
.wc-pagination .page-numbers.next {
	min-width: auto;
	padding: 0 18px;
	background: var(--primary-color);
	border-color: var(--primary-color);
	color: #fff;
	border-radius: 22px;
	font-size: .85rem;
	letter-spacing: .02em;
}
.wc-pagination .page-numbers.prev:hover,
.wc-pagination .page-numbers.next:hover {
	background: var(--accent-green-dark);
	border-color: var(--accent-green-dark);
	color: #fff;
}
/* dots */
.wc-pagination .page-numbers.dots {
	border-color: transparent;
	background: transparent;
	color: var(--primary-light-color);
	font-size: 1.1rem;
	pointer-events: none;
	min-width: 24px;
	padding: 0;
}
@media (max-width: 480px) {
	.wc-pagination .page-numbers { min-width: 38px; height: 38px; font-size: .82rem; padding: 0 10px; }
	.wc-pagination .page-numbers.prev,
	.wc-pagination .page-numbers.next { padding: 0 14px; }
}

/* Countdown — translucent glass on hero, light card elsewhere */
.wc-countdown { display:flex; gap:16px; justify-content:center; margin: 26px 0; flex-wrap:wrap; }
.wc-countdown div { background: rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.35); border-radius:14px; padding: 14px 20px; min-width: 86px; backdrop-filter: blur(4px); }
.wc-countdown .num { font-size: 2.1rem; font-weight: 900; color:#fff; display:block; line-height:1; }
.wc-countdown .lbl { font-size:.72rem; color: rgba(255,255,255,.85); text-transform:uppercase; letter-spacing:.5px; }
.wc-section .wc-countdown div { background:#fff; border:1px solid var(--line-color); box-shadow:0 8px 22px rgba(20,39,28,.06); }
.wc-section .wc-countdown .num { color: var(--accent-green); }
.wc-section .wc-countdown .lbl { color: var(--grey-color); }

/* =========================================================
   WC2026 redesign components (light theme)
   ========================================================= */

/* Section helpers */
.wc-section.alt { background: var(--img-background-color); }
.wc-section-title h2 { color: var(--primary-color); }
.wc-section-title h2 span { color: var(--accent-green); }
.wc-eyebrow { display:inline-block; color: var(--accent-orange); font-weight:800; letter-spacing:2px; text-transform:uppercase; font-size:.72rem; margin-bottom:10px; }

/* Hero CTA row */
.wc-hero .wc-cta { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* Live ticker strip under hero */
.wc-ticker { background: var(--primary-color); color:#fff; overflow:hidden; white-space:nowrap; }
.wc-ticker .wc-ticker-track { display:inline-block; padding:11px 0; animation: wc-ticker 32s linear infinite; }
.wc-ticker span { display:inline-block; padding:0 26px; font-weight:600; font-size:.9rem; border-right:1px solid rgba(255,255,255,.12); }
.wc-ticker b { color: var(--secondary-color); }
@keyframes wc-ticker { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* Stat band */
.wc-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.wc-stat { background:#fff; border:1px solid var(--line-color); border-radius:16px; padding:26px 18px; text-align:center; box-shadow:0 8px 24px rgba(20,39,28,.05); }
.wc-stat .wc-stat-num { font-size:2.6rem; font-weight:900; color:var(--accent-green); line-height:1; }
.wc-stat .wc-stat-lbl { color:var(--primary-light-color); text-transform:uppercase; letter-spacing:.6px; font-size:.78rem; margin-top:8px; }
.wc-stat.teal .wc-stat-num{color:var(--accent-teal)} .wc-stat.gold .wc-stat-num{color:var(--secondary-color)} .wc-stat.orange .wc-stat-num{color:var(--accent-orange)}
@media (max-width: 767px){ .wc-stats { grid-template-columns:repeat(2,1fr);} }

/* Host city cards */
.wc-hosts { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.wc-host { position:relative; border-radius:18px; overflow:hidden; min-height:210px; display:flex; align-items:flex-end; color:#fff; box-shadow:0 12px 30px rgba(20,39,28,.10); }
.wc-host img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.wc-host .wc-host-body { position:relative; z-index:2; padding:22px; width:100%; background:linear-gradient(180deg, transparent, rgba(8,26,18,.78)); }
.wc-host h3 { font-weight:800; margin:0 0 4px; color:#fff; }
.wc-host p { margin:0; font-size:.85rem; color:rgba(255,255,255,.85); }
.wc-host .wc-host-flag { position:absolute; top:14px; left:14px; z-index:2; font-size:1.6rem; }
@media (max-width: 767px){ .wc-hosts { grid-template-columns:1fr; } }

/* Format / path-to-final steps */
.wc-path { display:grid; grid-template-columns:repeat(6,1fr); gap:14px; }
.wc-path .wc-step { background:#fff; border:1px solid var(--line-color); border-top:4px solid var(--accent-green); border-radius:14px; padding:18px 14px; text-align:center; box-shadow:0 8px 22px rgba(20,39,28,.05); }
.wc-path .wc-step:nth-child(2){border-top-color:var(--accent-teal)} .wc-path .wc-step:nth-child(3){border-top-color:var(--secondary-color)}
.wc-path .wc-step:nth-child(4){border-top-color:var(--accent-orange)} .wc-path .wc-step:nth-child(5){border-top-color:var(--accent-red)} .wc-path .wc-step:nth-child(6){border-top-color:var(--accent-green-dark)}
.wc-path .wc-step .wc-step-n { font-size:.72rem; font-weight:800; color:var(--grey-color); letter-spacing:1px; }
.wc-path .wc-step h4 { font-weight:800; margin:6px 0 4px; font-size:.98rem; }
.wc-path .wc-step p { margin:0; font-size:.78rem; color:var(--primary-light-color); }
@media (max-width: 991px){ .wc-path { grid-template-columns:repeat(3,1fr);} }
@media (max-width: 575px){ .wc-path { grid-template-columns:repeat(2,1fr);} }

/* Category / blog tag pills + grid */
.wc-tagbar { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-bottom:34px; }
.wc-tagbar a { display:inline-flex; align-items:center; gap:7px; background:#fff; border:1px solid var(--line-color); border-radius:30px; padding:8px 16px; font-weight:700; font-size:.85rem; color:var(--primary-color); }
.wc-tagbar a:hover { border-color:var(--accent-green); color:var(--accent-green); }
.wc-tagbar a .dot { width:10px; height:10px; border-radius:50%; background:var(--accent-green); }

.wc-postcard { background:#fff; border:1px solid var(--line-color); border-radius:16px; overflow:hidden; box-shadow:0 8px 24px rgba(20,39,28,.05); transition:transform .25s, box-shadow .25s; display:flex; flex-direction:column; }
.wc-postcard:hover { transform:translateY(-4px); box-shadow:0 16px 36px rgba(17,168,97,.12); }
.wc-postcard .wc-thumb { display:block; aspect-ratio:16/9; overflow:hidden; background:var(--img-background-color); }
.wc-postcard .wc-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.wc-postcard .wc-postbody { padding:18px; display:flex; flex-direction:column; flex:1; }
.wc-postcard .wc-tag { align-self:flex-start; font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.6px; color:#fff; background:var(--accent-green); padding:4px 10px; border-radius:20px; margin-bottom:10px; }
.wc-postcard h3 { font-size:1.08rem; font-weight:800; margin:0 0 8px; line-height:1.3; }
.wc-postcard h3 a { color:var(--primary-color); } .wc-postcard h3 a:hover { color:var(--accent-green); }
.wc-postcard p { color:var(--primary-light-color); font-size:.9rem; margin:0 0 14px; }
.wc-postcard .wc-readmore { margin-top:auto; font-weight:800; color:var(--accent-green); font-size:.85rem; }
.wc-postmeta { font-size:.75rem; color:var(--grey-color); margin-bottom:6px; }

/* Single post hero / category banner */
.wc-page-banner { position:relative; border-radius:18px; overflow:hidden; color:#fff; padding:48px 32px; margin-bottom:30px; background:var(--wc-gradient); }
.wc-page-banner img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.28; }
.wc-page-banner .wc-pb-body { position:relative; z-index:2; }
.wc-page-banner h1 { color:#fff; font-weight:900; }
.wc-page-banner .wc-pb-kicker { display:inline-block; letter-spacing:2px; text-transform:uppercase; font-size:.72rem; font-weight:800; opacity:.92; margin-bottom:10px; }
.wc-page-banner p { position:relative; z-index:2; max-width:680px; margin:8px 0 0; font-size:1.05rem; opacity:.95; }

/* Active topic pill */
.wc-tagbar a.is-active { border-color:transparent; color:#fff; background:var(--accent-green); }
.wc-tagbar a.is-active .dot { background:#fff !important; }

/* Standalone post thumb + cover (cards reuse .wc-postcard .wc-thumb above) */
.wc-thumb { display:block; aspect-ratio:16/9; overflow:hidden; border-radius:14px; background:var(--img-background-color); }
.wc-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.wc-cover { display:block; width:100%; height:100%; }
.wc-cover svg { display:block; width:100%; height:100%; }

/* Standalone topic chip (single post / links) */
.wc-tag { display:inline-block; font-size:.7rem; font-weight:800; text-transform:uppercase; letter-spacing:.6px; color:#fff; background:var(--accent-green); padding:5px 12px; border-radius:20px; margin-bottom:12px; }
a.wc-tag { text-decoration:none; } a.wc-tag:hover { filter:brightness(1.07); color:#fff; }

/* Single-post cover hero */
.wc-single-cover { aspect-ratio:24/9; border-radius:16px; overflow:hidden; margin:0 0 22px; }

/* Tag-archive hero (uses the topic banner art) */
.wc-archive-hero { position:relative; display:flex; align-items:center; gap:26px; border-radius:18px; overflow:hidden; color:#fff; padding:40px 34px; margin-bottom:26px; }
.wc-archive-hero::before { content:""; position:absolute; inset:0; background-image:radial-gradient(circle at 86% 22%, rgba(255,255,255,.16) 0 3px, transparent 3px); background-size:42px 42px; opacity:.7; }
.wc-archive-ico { position:relative; z-index:2; width:104px; height:104px; flex:0 0 auto; border-radius:14px; object-fit:cover; box-shadow:0 8px 22px rgba(0,0,0,.18); }
.wc-archive-body { position:relative; z-index:2; }
.wc-archive-body .wc-pb-kicker { display:inline-block; letter-spacing:2px; text-transform:uppercase; font-size:.72rem; font-weight:800; opacity:.92; margin-bottom:8px; }
.wc-archive-body h1 { color:#fff; font-weight:900; margin:0; }
.wc-archive-body p { margin:8px 0 0; max-width:620px; opacity:.95; }
@media (max-width:575px){ .wc-archive-hero { flex-direction:column; text-align:center; gap:14px; } }

/* =========================================================
   Bracket / knockout page (CSV-driven)
   ========================================================= */
.wc-bracket-wrap { overflow-x:auto; padding:10px 0 26px; }
.wc-groups { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-bottom:40px; }
@media (max-width:991px){ .wc-groups{grid-template-columns:repeat(2,1fr)} }
@media (max-width:575px){ .wc-groups{grid-template-columns:1fr} }
.wc-group { background:#fff; border:1px solid var(--line-color); border-radius:14px; overflow:hidden; box-shadow:0 8px 22px rgba(20,39,28,.05); }
.wc-group h4 { background:var(--accent-green); color:#fff; margin:0; padding:8px 14px; font-weight:800; font-size:.95rem; display:flex; justify-content:space-between; }
.wc-group table { width:100%; border-collapse:collapse; font-size:.85rem; }
.wc-group td { padding:7px 12px; border-top:1px solid var(--line-color); background:#fff; }
.wc-group td.pts { text-align:right; font-weight:800; color:var(--accent-green-dark); }
.wc-group tr.qual td { background:#eafaf1; }
.wc-group .wc-team-flag { margin-right:7px; }
/* Neutralise the inherited dark even-row stripe (soccer.css tr:nth-child(even)) on light data tables. */
.wc-table tbody tr td { background:#fff; }
.wc-table tbody tr:nth-child(even) td { background:#f3f8f4; }

/* ---- Two-sided knockout bracket — FIFA wall-chart style ----
   Palette from 2.pptx slide 1: deep navy (#090D4D/#10164F), royal blue (#111DA4),
   bright red accent (#FD1742), maroon (#8A0528). */
.wc-knockout-panel {
	background:radial-gradient(1200px 520px at 50% -8%, #111DA4 0%, #10164F 42%, #090D4D 100%);
	border:1px solid #1b237a;
	border-radius:18px;
	padding:30px 26px 26px;
	margin-top:30px;
	box-shadow:0 20px 60px rgba(9,13,77,.45), inset 0 1px 0 rgba(255,255,255,.05);
	overflow-x:auto;
}
.wc-knockout-panel .wc-knockout-h2 { color:#fff; }
.wc-knockout-panel .wc-knockout-h2::after { background:#FD1742; }

.wc-bracket-2s {
	display:flex; align-items:stretch; justify-content:center;
	gap:8px; width:100%;
}
.wc-bracket-2s .wc-side { display:flex; align-items:stretch; gap:8px; flex:1; min-width:0; }
.wc-bracket-2s .wc-side-right { flex-direction:row; }

.wc-bracket-2s .wc-round {
	display:flex; flex-direction:column; justify-content:space-around;
	gap:10px; flex:1; min-width:0;
}
.wc-bracket-2s .wc-round-title {
	text-align:center; font-weight:800; text-transform:uppercase;
	font-size:.6rem; letter-spacing:.5px; color:#9aa3ff; margin-bottom:5px;
}

/* Centre column: trophy + Final */
.wc-bracket-2s .wc-center {
	display:flex; flex-direction:column; align-items:center; justify-content:center;
	flex:0 0 128px; min-width:128px; padding:0 2px;
}
.wc-bracket-2s .wc-trophy { font-size:2rem; line-height:1; margin-bottom:8px; filter:drop-shadow(0 4px 10px rgba(253,23,66,.5)); }
.wc-bracket-2s .wc-final-col { flex:0 0 auto; justify-content:flex-start; width:100%; }
.wc-bracket-2s .wc-final-title { color:#FD1742; font-size:.74rem; letter-spacing:1.5px; }

/* Tie cards on the dark panel */
.wc-bracket-2s .wc-tie {
	background:rgba(255,255,255,.06);
	border:1px solid rgba(255,255,255,.12);
	border-left:3px solid #FD1742;
	border-radius:8px; padding:5px 7px;
	box-shadow:0 6px 18px rgba(0,0,0,.25);
	backdrop-filter:blur(2px);
}
.wc-bracket-2s .wc-tie .wc-tie-row { display:flex; justify-content:space-between; align-items:center; gap:4px; padding:2px 0; font-size:.7rem; color:#e8eaff; }
.wc-bracket-2s .wc-tie .wc-tie-row span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.wc-bracket-2s .wc-tie .wc-tie-row.win { font-weight:800; color:#fff; }
.wc-bracket-2s .wc-tie .wc-tie-row .sc { font-weight:800; min-width:16px; text-align:right; color:#FD1742; }
.wc-bracket-2s .wc-tie .wc-tie-meta { font-size:.56rem; line-height:1.3; color:#8b93d6; margin-top:3px; border-top:1px dashed rgba(255,255,255,.14); padding-top:3px; }
.wc-bracket-2s .wc-tie.final {
	border:1px solid rgba(253,23,66,.55); border-left:4px solid #FD1742;
	background:linear-gradient(180deg, rgba(253,23,66,.18), rgba(138,5,40,.28));
	box-shadow:0 10px 28px rgba(253,23,66,.30);
}

.wc-bracket-note { font-size:.8rem; color:#9aa3ff; margin-top:16px; }

@media (max-width:991px){
	.wc-knockout-panel { padding:18px 10px; }
	/* On small screens, give the tree room and let the panel scroll horizontally. */
	.wc-bracket-2s { min-width:900px; }
}

/* Retheme the inherited gaming-template back-to-top button to the WC2026 palette. */
.scrollToTop.back-to-top {
	background: var(--accent-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 15l6-6 6 6'/%3E%3C/svg%3E") center/24px no-repeat;
	border-radius:50%;
	box-shadow:0 8px 20px rgba(17,168,97,.35);
}
.scrollToTop.back-to-top:hover { background-color:var(--accent-green-dark); }

/* Update timestamp / CSV badge */
.wc-updated { display:inline-flex; align-items:center; gap:8px; background:#eafaf1; color:var(--accent-green-dark); border-radius:30px; padding:6px 14px; font-size:.8rem; font-weight:700; }

/* =========================================================
   Stadium Elliptic Hero Image (blog posts)
   ========================================================= */
.wfp-stadium-ellipse {
	text-align: center;
	margin: 2rem auto 2.5rem;
	position: relative;
	display: inline-block;
	left: 50%;
	transform: translateX(-50%);
}
.wfp-stadium-ellipse img {
	width: 680px;
	max-width: 100%;
	height: 360px;
	object-fit: cover;
	display: block;
	clip-path: ellipse(48% 45% at 50% 50%);
	-webkit-clip-path: ellipse(48% 45% at 50% 50%);
}
.wfp-stadium-ellipse::after {
	content: '';
	position: absolute;
	inset: 0;
	border: 5px solid rgba(20, 39, 28, 0.12);
	border-radius: 50%;
	pointer-events: none;
	box-shadow: 0 0 0 8px rgba(255,255,255,0.18), inset 0 0 0 5px rgba(255,255,255,0.10);
}
.wfp-stadium-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 24px;
	margin: 1.5rem 0;
	padding: 1rem 1.4rem;
	background: var(--light-color);
	border-radius: 10px;
	font-size: .88rem;
}
.wfp-stadium-meta span { color: var(--primary-light-color); }
.wfp-stadium-meta strong { color: var(--primary-color); }
@media (max-width:600px) {
	.wfp-stadium-ellipse img { height: 220px; }
}

/* === WFP API PAGES === */
.wfp-page-main { max-width: 1200px; }
.wfp-page-title { font-size: 1.8rem; font-weight: 700; margin-bottom: 1.5rem; border-left: 4px solid var(--primary-color,#2e7d32); padding-left: 12px; }

/* Standings */
.wfp-group-block { margin-bottom: 2rem; }
.wfp-group-title { font-weight: 700; font-size: 1.1rem; background: var(--primary-color,#2e7d32); color: #fff; padding: 6px 14px; border-radius: 4px 4px 0 0; margin: 0; }
.wfp-standings-table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.wfp-standings-table th { background: #f5f5f5; padding: 6px 8px; text-align: center; font-weight: 600; }
.wfp-standings-table td { padding: 6px 8px; text-align: center; border-bottom: 1px solid #eee; }
.wfp-standings-table td.team-name { text-align: left; }
.wfp-standings-table .qualified td { background: #e8f5e9; }
.wfp-team-logo { width: 20px; height: 20px; object-fit: contain; vertical-align: middle; margin-right: 6px; }

/* Fixtures */
.wfp-group-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 1.5rem; }
.wfp-group-tab { padding: 4px 12px; border: 1px solid #ccc; border-radius: 20px; cursor: pointer; font-size: .85rem; background: #fff; }
.wfp-group-tab.active, .wfp-group-tab:hover { background: var(--primary-color,#2e7d32); color: #fff; border-color: var(--primary-color,#2e7d32); }
.wfp-date-group { margin-bottom: 1.5rem; }
.wfp-date-header { font-weight: 700; font-size: 1rem; padding: 6px 0; border-bottom: 2px solid var(--primary-color,#2e7d32); margin-bottom: .75rem; }
.wfp-fixture-card { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; padding: 10px 16px; border: 1px solid #eee; border-radius: 8px; margin-bottom: 8px; background: #fff; }
.wfp-fixture-card:hover { box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.wfp-fixture-team { display: flex; align-items: center; gap: 8px; width: 35%; }
.wfp-fixture-team.away { flex-direction: row-reverse; text-align: right; }
.wfp-fixture-score { text-align: center; min-width: 90px; }
.wfp-fixture-score .score { font-size: 1.4rem; font-weight: 700; }
.wfp-fixture-score .time { font-size: .85rem; color: #666; }
.wfp-fixture-score .live-badge { background: #e53935; color: #fff; font-size: .75rem; padding: 2px 8px; border-radius: 10px; display:inline-block; }
.wfp-fixture-venue { font-size: .78rem; color: #888; text-align: center; width: 100%; margin-top: 4px; }
.wfp-team-flag { width: 28px; height: 20px; object-fit: cover; border: 1px solid #eee; }

/* Live */
.wfp-live-header { display: flex; align-items: center; gap: 8px; margin-bottom: 1rem; }
.wfp-live-dot { width: 12px; height: 12px; background: #e53935; border-radius: 50%; animation: wfp-pulse 1.5s infinite; }
@keyframes wfp-pulse { 0%,100%{opacity:1} 50%{opacity:.3} }
.wfp-no-live { text-align: center; padding: 3rem; color: #666; font-size: 1.1rem; }

/* Top Scorers */
.wfp-scorers-table { width: 100%; border-collapse: collapse; }
.wfp-scorers-table th { background: var(--primary-color,#2e7d32); color: #fff; padding: 8px 12px; text-align: left; }
.wfp-scorers-table td { padding: 8px 12px; border-bottom: 1px solid #eee; }
.wfp-scorers-table tr:hover td { background: #f9f9f9; }
.wfp-player-photo { width: 32px; height: 32px; border-radius: 50%; object-fit: cover; }

/* Teams */
.wfp-teams-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 16px; }
@media(max-width:992px){.wfp-teams-grid{grid-template-columns:repeat(4,1fr);}}
@media(max-width:576px){.wfp-teams-grid{grid-template-columns:repeat(3,1fr);}}
.wfp-team-card { text-align: center; padding: 16px 8px; border: 1px solid #eee; border-radius: 8px; background: #fff; transition: box-shadow .2s; }
.wfp-team-card:hover { box-shadow: 0 4px 12px rgba(0,0,0,.1); }
.wfp-team-card img { width: 56px; height: 56px; object-fit: contain; margin-bottom: 8px; }
.wfp-team-card .team-name { font-size: .85rem; font-weight: 600; }
.wfp-team-card .team-code { font-size: .75rem; color: #888; }

/* H2H */
.wfp-h2h-form { display: flex; gap: 16px; align-items: flex-end; flex-wrap: wrap; margin-bottom: 2rem; }
.wfp-h2h-form select, .wfp-h2h-select { flex: 1; min-width: 200px; padding: 8px 12px; border: 1px solid #ccc; border-radius: 6px; font-size: 1rem; }
.wfp-h2h-form button, .wfp-h2h-btn { padding: 8px 24px; background: var(--primary-color,#2e7d32); color: #fff; border: none; border-radius: 6px; cursor: pointer; font-size: 1rem; }
.wfp-h2h-table { width: 100%; border-collapse: collapse; }
.wfp-h2h-table th { background: #333; color: #fff; padding: 8px 12px; }
.wfp-h2h-table td { padding: 8px 12px; border-bottom: 1px solid #eee; text-align: center; }
.wfp-h2h-win { font-weight: 700; color: var(--primary-color,#2e7d32); }

/* Competition / Predictions */
.wfp-format-cards { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-bottom: 2rem; }
@media(max-width:768px){.wfp-format-cards{grid-template-columns:1fr;}}
.wfp-format-card { border: 1px solid #eee; border-radius: 8px; padding: 16px; text-align: center; background: #fff; }
.wfp-format-card .icon { font-size: 2rem; margin-bottom: 8px; }
.wfp-format-card h4 { font-weight: 700; margin: 0 0 6px; }
.wfp-prediction-card { border: 1px solid #eee; border-radius: 8px; padding: 16px; margin-bottom: 12px; background: #fff; }
.wfp-pred-teams { font-weight: 700; margin-bottom: 8px; }
.wfp-pred-bars { display: flex; height: 24px; border-radius: 4px; overflow: hidden; margin-bottom: 6px; }
.wfp-pred-bars .home { background: #1565c0; }
.wfp-pred-bars .draw { background: #888; }
.wfp-pred-bars .away { background: #c62828; }
.wfp-pred-labels { display: flex; justify-content: space-between; font-size: .8rem; color: #555; }
.wfp-pred-advice { font-size: .85rem; color: #333; font-style: italic; margin-top: 6px; }

/* General no-data placeholder */
.wfp-no-data { text-align: center; padding: 2rem; color: #666; background: #f9f9f9; border-radius: 8px; border: 1px solid #eee; }

/* === WFP MATCH DETAIL PAGE === */
.wfp-match-hero { background: linear-gradient(135deg,#1b5e20,#2e7d32); color:#fff; border-radius:12px; padding:24px; margin-bottom:24px; }
.wfp-match-meta { display:flex; flex-wrap:wrap; gap:18px; justify-content:center; font-size:.85rem; opacity:.9; margin-bottom:16px; }
.wfp-match-meta span { white-space:nowrap; }
.wfp-match-scoreboard { display:grid; grid-template-columns: 1fr auto 1fr; align-items:center; gap:16px; }
.wfp-match-scoreboard .team { text-align:center; }
.wfp-match-scoreboard .team img { width:72px; height:72px; object-fit:contain; background:#fff; border-radius:50%; padding:6px; margin-bottom:6px; }
.wfp-match-scoreboard .team h2 { font-size:1.1rem; font-weight:700; margin:0; color:#fff; }
.wfp-match-scoreboard .score { text-align:center; }
.wfp-match-scoreboard .score .big { font-size:2.6rem; font-weight:800; line-height:1; }
.wfp-match-scoreboard .score .big.time { font-size:1.8rem; }
.wfp-match-scoreboard .score .badge { display:inline-block; margin-top:8px; padding:3px 10px; border-radius:12px; font-size:.75rem; font-weight:700; letter-spacing:.5px; }
.wfp-match-scoreboard .score .badge.live { background:#e53935; animation: wfp-pulse 1.5s infinite; }
.wfp-match-scoreboard .score .badge.ft { background:#424242; }
.wfp-match-scoreboard .score .badge.ns { background:rgba(255,255,255,.2); }

.wfp-section-title { font-size:1.2rem; font-weight:700; margin:1.5rem 0 1rem; padding-left:10px; border-left:4px solid var(--primary-color,#2e7d32); }

/* === GREEN PITCH === */
.wfp-pitch-wrap { background:#fff; border:1px solid #eee; border-radius:12px; padding:16px; margin-bottom:24px; }
.wfp-pitch-headerbar { display:flex; justify-content:space-between; align-items:center; padding:0 8px 12px; font-size:.9rem; }
.wfp-pitch-team { display:flex; align-items:center; gap:8px; }
.wfp-pitch-team strong { font-size:1rem; }
.wfp-formation { background:rgba(0,0,0,.07); padding:2px 8px; border-radius:10px; font-size:.8rem; font-weight:600; }
.wfp-pitch-vs { font-weight:800; color:#888; }

.wfp-pitch {
	position:relative;
	width:100%;
	aspect-ratio: 2 / 3;
	max-width:520px;
	margin:0 auto;
	background:
		linear-gradient(0deg, #2e7d32 0%, #388e3c 50%, #2e7d32 100%),
		repeating-linear-gradient(0deg, rgba(255,255,255,.04) 0 6%, transparent 6% 12%);
	background-blend-mode: overlay;
	border-radius:8px;
	overflow:hidden;
	box-shadow: inset 0 0 0 3px rgba(255,255,255,.85);
}
.wfp-pitch-lines { position:absolute; inset:0; }
.wfp-pitch-halfline { position:absolute; top:50%; left:0; right:0; height:2px; background:#fff; }
.wfp-pitch-centre { position:absolute; top:50%; left:50%; width:90px; height:90px; transform:translate(-50%,-50%); border:2px solid #fff; border-radius:50%; }
.wfp-pitch-box { position:absolute; left:50%; transform:translateX(-50%); width:55%; height:18%; border:2px solid #fff; }
.wfp-pitch-box.top { top:0; border-top:none; }
.wfp-pitch-box.bottom { bottom:0; border-bottom:none; }
.wfp-pitch-6yd { position:absolute; left:50%; transform:translateX(-50%); width:28%; height:8%; border:2px solid #fff; }
.wfp-pitch-6yd.top { top:0; border-top:none; }
.wfp-pitch-6yd.bottom { bottom:0; border-bottom:none; }

.wfp-pitch-player { position:absolute; transform:translate(-50%,-50%); text-align:center; width:64px; }
.wfp-pitch-circle { width:32px; height:32px; border-radius:50%; line-height:32px; font-weight:700; font-size:.85rem; color:#fff; margin:0 auto; box-shadow:0 2px 4px rgba(0,0,0,.3); border:2px solid #fff; }
.wfp-pitch-home .wfp-pitch-circle { background:#1565c0; }
.wfp-pitch-away .wfp-pitch-circle { background:#c62828; }
.wfp-pitch-name { font-size:.7rem; color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.7); margin-top:2px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.wfp-pitch-empty { text-align:center; padding:3rem; color:#666; background:#f5f5f5; border-radius:8px; }
.wfp-pitch-footerbar { display:flex; justify-content:space-between; padding-top:12px; font-size:.85rem; color:#555; }
.wfp-pitch-label { font-weight:600; color:#333; }

/* Subs */
.wfp-subs-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:24px; }
@media(max-width:768px){ .wfp-subs-row{ grid-template-columns:1fr; } }
.wfp-subs-block { background:#fff; border:1px solid #eee; border-radius:8px; padding:14px; }
.wfp-subs-block h4 { font-size:.95rem; font-weight:700; margin:0 0 10px; border-bottom:1px solid #eee; padding-bottom:6px; }
.wfp-subs-block ul { list-style:none; padding:0; margin:0; }
.wfp-subs-block li { padding:5px 0; font-size:.88rem; display:flex; align-items:center; gap:8px; }
.wfp-subs-block .num { width:26px; height:26px; line-height:26px; text-align:center; background:#f0f0f0; border-radius:4px; font-weight:700; font-size:.78rem; }
.wfp-subs-block .pos { margin-left:auto; font-size:.7rem; color:#999; }

/* Events */
.wfp-events-list { list-style:none; padding:0; margin:0 0 24px; }
.wfp-events-list li { padding:8px 12px; border-bottom:1px solid #eee; display:flex; align-items:center; gap:12px; }
.wfp-events-list .t { font-weight:700; min-width:36px; color:var(--primary-color,#2e7d32); }
.wfp-events-list .i { font-size:1.2rem; }
.wfp-events-list .d { flex:1; font-size:.88rem; }

/* Stats */
.wfp-stats-table { width:100%; border-collapse:collapse; margin-bottom:24px; }
.wfp-stats-table th { background:var(--primary-color,#2e7d32); color:#fff; padding:8px; text-align:center; }
.wfp-stats-table td { padding:8px; border-bottom:1px solid #eee; }
.wfp-stats-table td.num { width:25%; text-align:center; font-weight:700; font-size:1.05rem; }
.wfp-stats-table td.lbl { text-align:center; color:#666; font-size:.85rem; }

/* Make fixture cards clickable */
.wfp-fixture-card a.wfp-fixture-link { display:flex; align-items:center; justify-content:space-between; width:100%; color:inherit; text-decoration:none; }
.wfp-fixture-card a.wfp-fixture-link:hover { color:var(--primary-color,#2e7d32); }

/* === WFP TEAM PROFILE + HISTORY === */
.wfp-team-hero { display:flex; align-items:center; gap:24px; background:linear-gradient(135deg,#1b5e20,#2e7d32); color:#fff; border-radius:12px; padding:24px; margin-bottom:24px; }
.wfp-team-hero img { width:96px; height:96px; object-fit:contain; background:#fff; border-radius:50%; padding:8px; }
.wfp-team-hero h1 { font-size:1.8rem; font-weight:800; margin:0 0 8px; color:#fff; }
.wfp-team-meta { display:flex; flex-wrap:wrap; gap:16px; font-size:.9rem; opacity:.95; }
.wfp-team-meta span { white-space:nowrap; }

.wfp-history-stats { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; margin-bottom:20px; }
@media(max-width:768px){.wfp-history-stats{grid-template-columns:repeat(3,1fr);}}
.wfp-history-stats > div { text-align:center; padding:12px 6px; background:#f5f5f5; border-radius:8px; }
.wfp-history-stats .lbl { display:block; font-size:.72rem; color:#666; text-transform:uppercase; margin-bottom:4px; }
.wfp-history-stats .val { display:block; font-size:1.6rem; font-weight:800; color:#222; }
.wfp-history-stats .val.win { color:#2e7d32; }
.wfp-history-stats .val.draw { color:#888; }
.wfp-history-stats .val.loss { color:#c62828; }

.wfp-history-season { margin-bottom:20px; }
.wfp-history-season-title { font-size:1rem; font-weight:700; background:var(--primary-color,#2e7d32); color:#fff; padding:8px 14px; border-radius:6px 6px 0 0; margin:0; }
.wfp-history-table { width:100%; border-collapse:collapse; font-size:.88rem; background:#fff; border:1px solid #eee; border-top:none; }
.wfp-history-table th { background:#fafafa; padding:8px; text-align:left; font-weight:600; border-bottom:1px solid #eee; }
.wfp-history-table td { padding:8px; border-bottom:1px solid #f0f0f0; vertical-align:middle; }
.wfp-history-table tr:last-child td { border-bottom:none; }
.wfp-history-opp { display:flex; align-items:center; gap:8px; }
.wfp-history-opp .loc { font-size:.7rem; background:#eee; color:#444; padding:1px 6px; border-radius:3px; font-weight:700; }
.wfp-history-score { font-weight:700; text-align:center; min-width:80px; }
.wfp-tbd { color:#aaa; }

.wfp-res-badge { display:inline-block; width:24px; height:24px; line-height:24px; text-align:center; border-radius:50%; font-weight:700; font-size:.75rem; color:#fff; }
.wfp-res-badge.res-w { background:#2e7d32; }
.wfp-res-badge.res-d { background:#888; }
.wfp-res-badge.res-l { background:#c62828; }
.wfp-res-badge.res- { background:#bbb; color:#fff; }

/* Mini prediction on fixture cards */
.wfp-mini-pred { margin-top:4px; }
.wfp-mini-pred-bar { display:flex; height:4px; border-radius:2px; overflow:hidden; width:80px; margin:0 auto; }
.wfp-mini-pred-bar .h { background:#1565c0; }
.wfp-mini-pred-bar .d { background:#9e9e9e; }
.wfp-mini-pred-bar .a { background:#c62828; }
.wfp-mini-pct { font-size:.68rem; font-weight:700; padding:1px 5px; border-radius:8px; }
.wfp-mini-pct.home { background:rgba(21,101,192,.12); color:#1565c0; }
.wfp-mini-pct.away { background:rgba(198,40,40,.12); color:#c62828; }

/* Fix: override soccer.css global dark stripe (tr:nth-child(even) { background: #272727 }) */
.wfp-standings-table tr:nth-child(even) { background-color: #f9f9f9; }
.wfp-standings-table tr:nth-child(odd) { background-color: #fff; }
.wfp-standings-table .qualified td { background: #e8f5e9; }
.wfp-history-table tr:nth-child(even) { background-color: #f9f9f9; }
.wfp-history-table tr:nth-child(odd) { background-color: #fff; }
.wfp-scorers-table tr:nth-child(even) { background-color: #f9f9f9; }
.wfp-scorers-table tr:nth-child(odd) { background-color: #fff; }
.wfp-h2h-table tr:nth-child(even) { background-color: #f9f9f9; }
.wfp-h2h-table tr:nth-child(odd) { background-color: #fff; }
.wfp-stats-table tr:nth-child(even) { background-color: #f9f9f9; }
.wfp-stats-table tr:nth-child(odd) { background-color: #fff; }
.wfp-events-list li:nth-child(even) { background-color: #f9f9f9; }

/* === TOPBAR HORIZONTAL LANGUAGE BAR === */
.wfp-topbar { display:flex; align-items:center; justify-content:space-between; padding:4px 0; }
.wfp-topbar-email a { color:inherit; text-decoration:none; font-size:.82rem; opacity:.8; }
.wfp-topbar-email a:hover { opacity:1; }
.wfp-topbar-langs { display:flex; align-items:center; }

.wfp-lang-bar { display:flex; flex-wrap:nowrap; gap:2px; align-items:center; }
.wfp-lang-item { display:inline-flex; align-items:center; gap:3px; padding:3px 7px; border-radius:3px; text-decoration:none; color:inherit; font-size:.72rem; font-weight:500; white-space:nowrap; transition:background .15s,opacity .15s; opacity:.75; }
.wfp-lang-item:hover { opacity:1; background:rgba(255,255,255,.15); color:inherit; text-decoration:none; }
.wfp-lang-item.is-active { opacity:1; background:rgba(255,255,255,.2); font-weight:700; border-bottom:2px solid var(--accent-green,#2e7d32); }
.wfp-lang-flag { width:16px; height:11px; object-fit:cover; border-radius:1px; }
.wfp-lang-emoji { font-size:.9rem; line-height:1; }
.wfp-lang-code { letter-spacing:.3px; }

@media(max-width:992px) {
  .wfp-topbar { flex-direction:column; gap:4px; }
  .wfp-topbar-email { display:none; }
  .wfp-lang-bar { flex-wrap:wrap; justify-content:center; gap:1px; }
  .wfp-lang-item { padding:2px 5px; font-size:.68rem; }
  .wfp-lang-flag { width:14px; height:10px; }
}
