/*
Theme Name: Premium Picks FC
Theme URI: https://premiumpicksfc.online
Description: Dark, prediction-focused WordPress theme. SEO-first, performance-optimized, multilingual-ready.
Author: Premium Picks FC
Version: 2.6.0
Text Domain: premiumpicks
Requires at least: 6.0
Requires PHP: 8.0
License: GPL-2.0-or-later
*/

/* ─── RESET ─── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
img{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}
a{text-decoration:none;color:inherit}
button{cursor:pointer;border:none;background:none;font:inherit;color:inherit}

/* ─── TOKENS ─── */
:root{
    --bg:#0b0f19;
    --bg-card:#111827;
    --bg-elevated:#161d2f;
    --border:#1e293b;
    --border-light:#283548;
    --text:#e2e8f0;
    --text-secondary:#94a3b8;
    --text-dim:#64748b;
    --accent:#22c55e;
    --accent-dim:rgba(34,197,94,.12);
    --accent-hover:#16a34a;
    --danger:#ef4444;
    --warn:#f59e0b;
    --radius:10px;
    --radius-sm:6px;
    --max-w:1140px;
    --font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    --font-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
    --accent-2:#06b6d4;
    --accent-2-dim:rgba(6,182,212,.12);
}

body{
    background:var(--bg);
    color:var(--text);
    font-family:var(--font);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
}

/* ─── UTILITY ─── */
.fc-wrap{max-width:var(--max-w);margin:0 auto;padding:0 1.25rem}
.fc-section{padding:2rem 0}
.fc-muted{color:var(--text-secondary)}
.fc-dim{color:var(--text-dim)}
.fc-accent{color:var(--accent)}

/* ─── HEADER ─── */
.fc-header{
    background:rgba(11,15,25,.85);
    backdrop-filter:blur(12px);
    border-bottom:1px solid var(--border);
    position:sticky;top:0;z-index:200;
    padding:.65rem 0;
}
.fc-header-inner{
    max-width:var(--max-w);margin:0 auto;padding:0 1.25rem;
    display:flex;align-items:center;justify-content:space-between;gap:1rem;
}
.fc-logo{display:flex;align-items:center;gap:.5rem;font-weight:800;font-size:1.15rem;color:var(--text);letter-spacing:-.02em}
.fc-logo-icon{
    width:32px;height:32px;border-radius:7px;background:var(--accent);
    display:grid;place-items:center;font-size:.65rem;font-weight:900;color:var(--bg);letter-spacing:-.03em;
}
.fc-nav{display:flex;align-items:center;gap:.15rem}
.fc-nav a{
    color:var(--text-secondary);padding:.45rem .7rem;border-radius:var(--radius-sm);
    font-size:.8rem;font-weight:500;transition:all .15s;white-space:nowrap;
}
.fc-nav a:hover,.fc-nav a.current{color:var(--text);background:rgba(255,255,255,.06)}
.fc-menu-toggle{display:none;font-size:1.3rem;padding:.25rem;color:var(--text)}

@media(max-width:768px){
    .fc-menu-toggle{display:block}
    .fc-nav{
        display:none;position:absolute;top:100%;left:0;right:0;
        background:var(--bg-card);border-bottom:1px solid var(--border);
        flex-direction:column;padding:.75rem 1.25rem;gap:0;
    }
    .fc-nav.open{display:flex}
    .fc-nav a{padding:.6rem 0;font-size:.9rem}
}

/* ─── LANGUAGE DROPDOWN v2.5.3 ─── */
.fc-lang-dropdown {
    position: relative;
    margin-left: .5rem;
}
.fc-lang-toggle {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: .35rem .6rem;
    border-radius: var(--radius-sm);
    border: 1px solid var(--border);
    background: transparent;
    color: var(--text-secondary);
    font-size: .75rem;
    font-weight: 700;
    cursor: pointer;
    transition: all .15s;
    letter-spacing: .04em;
}
.fc-lang-toggle:hover {
    border-color: var(--accent);
    color: var(--text);
}
.fc-lang-toggle svg { opacity: .5; transition: transform .15s; }
.fc-lang-menu.open + .fc-lang-toggle svg,
.fc-lang-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }

.fc-lang-menu {
    display: none;
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    min-width: 180px;
    max-height: 320px;
    overflow-y: auto;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    box-shadow: 0 8px 32px rgba(0,0,0,.4);
    z-index: 300;
    padding: 4px;
}
.fc-lang-menu.open { display: block; }

.fc-lang-option {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .5rem .65rem;
    border-radius: 4px;
    color: var(--text-secondary);
    font-size: .78rem;
    transition: all .12s;
    text-decoration: none;
}
.fc-lang-option:hover {
    background: rgba(255,255,255,.06);
    color: var(--text);
}
.fc-lang-option.active {
    background: var(--accent-dim);
    color: var(--accent);
}
.fc-lang-flag { flex-shrink: 0; border-radius: 2px; object-fit: cover; }
.fc-lang-name { flex: 1; font-weight: 500; }
.fc-lang-code {
    font-size: .65rem;
    font-weight: 700;
    color: var(--text-dim);
    letter-spacing: .04em;
}
.fc-lang-option.active .fc-lang-code { color: var(--accent); }

@media(max-width:768px) {
    .fc-lang-dropdown {
        margin-left: 0;
        margin-top: .35rem;
        padding-top: .5rem;
        border-top: 1px solid var(--border);
    }
    .fc-lang-menu {
        position: static;
        box-shadow: none;
        border: 1px solid var(--border);
        margin-top: 6px;
    }
}

/* ─── HERO ─── */
.fc-hero{
    text-align:center;padding:3.5rem 1.25rem 2rem;
    position:relative;overflow:hidden;
    max-width:var(--max-w);margin:0 auto;
}
.fc-hero::before{
    content:'';position:absolute;top:-80px;left:50%;transform:translateX(-50%);
    width:500px;height:250px;
    background:radial-gradient(ellipse,rgba(34,197,94,.1) 0%,transparent 70%);
    pointer-events:none;
}
.fc-hero h1{
    font-size:clamp(1.75rem,4.5vw,3rem);font-weight:800;
    letter-spacing:-.03em;line-height:1.1;margin-bottom:.75rem;
    position:relative;z-index:1;
}
.fc-hero h1 span{color:var(--accent)}
.fc-hero-sub{font-size:1rem;color:var(--text-secondary);max-width:520px;margin:0 auto 1.5rem}

/* ─── LEAGUE TABS ─── */
.fc-league-tabs-wrap{
    position:relative;overflow:hidden;
    max-width:var(--max-w);margin:0 auto;padding:0 1.25rem;
}
.fc-league-tabs-wrap::after{
    content:'';position:absolute;right:0;top:0;bottom:0;width:50px;
    background:linear-gradient(to right,transparent,var(--bg));
    pointer-events:none;z-index:2;
}
.fc-league-tabs{
    display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.75rem;
    scrollbar-width:none;-ms-overflow-style:none;
    padding-right:2.5rem;
}
.fc-league-tabs::-webkit-scrollbar{display:none}
.fc-league-tab{
    background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);
    padding:.4rem .85rem;font-size:.78rem;font-weight:600;color:var(--text-secondary);
    white-space:nowrap;transition:all .15s;display:inline-flex;align-items:center;gap:.35rem;
}
.fc-league-tab:hover,.fc-league-tab.active{
    border-color:var(--accent);color:var(--accent);background:var(--accent-dim);
}
.fc-league-tab img{width:16px;height:16px;object-fit:contain}

/* ─── MAIN GRID ─── */
.fc-grid-main{
    display:grid;grid-template-columns:1fr 300px;gap:1.5rem;
    max-width:var(--max-w);margin:0 auto;padding:0 1.25rem;
}
@media(max-width:900px){.fc-grid-main{grid-template-columns:1fr}}

/* ─── RESPONSIVE — TABLET ─── */
@media(max-width:768px){
    .fc-match-hero{padding:1.25rem}
    .fc-match-versus{gap:clamp(.5rem,3vw,1.5rem)}
    .fc-match-team img{width:44px;height:44px}
    .fc-match-team-name{font-size:.88rem}
    .fc-match-team-pct{font-size:1.1rem}
    .fc-match-vs strong{font-size:1.3rem}
    .fc-single-score{font-size:1.6rem}
    .fc-prob-bar{max-width:100%}
    .fc-hero-stats { gap: .75rem; }
    .fc-hero-stat-val { font-size: 1.25rem; }
    .fc-hero-stat-divider { height: 24px; }
}

/* ─── RESPONSIVE — MOBILE ─── */
@media(max-width:480px){
    /* Hero */
    .fc-hero{padding:1.75rem 1rem 1.25rem}
    .fc-hero h1{font-size:1.4rem}
    .fc-hero-sub{font-size:.82rem;margin-bottom:1rem}
    .fc-hero-stats { gap: .5rem; flex-wrap: wrap; justify-content: center; }
    .fc-hero-stat-val { font-size: 1.1rem; }
    .fc-hero-stat-lbl { font-size: .58rem; }
    .fc-hero-stat-divider { height: 20px; }
    .fc-hero-ctas { flex-direction: column; align-items: stretch; gap: .5rem; }
    .fc-hero-btn-primary, .fc-hero-btn-secondary { 
        text-align: center; 
        padding: .55rem 1rem; 
        font-size: .82rem; 
        display: block; 
    }

    /* Match cards */
    .fc-match-hero{padding:1rem .85rem}
    .fc-match-versus{gap:.5rem}
    .fc-match-team img{width:36px;height:36px}
    .fc-match-team-name{font-size:.78rem}
    .fc-match-team-pct{font-size:.95rem}
    .fc-match-vs{font-size:.75rem}
    .fc-match-vs strong{font-size:1.1rem}
    .fc-single-score{font-size:1.3rem}
    .fc-single-date{font-size:.72rem}
    .fc-single-time{font-size:.72rem}
    .fc-match-meta{font-size:.7rem;flex-wrap:wrap}
    .fc-match-meta img{width:16px;height:16px}

    .fc-prob-labels{font-size:.65rem}

    /* Section headers */
    .fc-section-header{flex-direction:column;gap:.35rem}
    .fc-section-header h2{font-size:1rem}

    /* League tabs — smaller on mobile */
    .fc-league-tabs-wrap { padding: 0 .75rem; }
    .fc-league-tab { padding: .35rem .6rem; font-size: .7rem; }
    .fc-league-tab img { width: 14px; height: 14px; }

    /* Breadcrumbs */
    .fc-breadcrumbs{font-size:.7rem;padding:.65rem 1rem 0}

    /* Footer */
    .fc-footer-inner{grid-template-columns:1fr;gap:1.25rem}
    .fc-footer-bottom{flex-direction:column;text-align:center;gap:.5rem}
    .fc-footer-disclaimer{max-width:100%}

    /* Sidebar */
    .fc-sidebar-card{padding:.85rem}
    .fc-sidebar-link{font-size:.78rem}

    /* Archive */
    .fc-archive-predictions-header h2{font-size:1.25rem}
    .fc-archive-predictions-subtitle{font-size:.82rem}

    /* How It Works */
    .fc-hiw-section { padding: 0 .75rem; }
    .fc-hiw-card { padding: 1rem; }
    .fc-hiw-card h3 { font-size: .88rem; }
    .fc-hiw-card p { font-size: .78rem; }
    .fc-hiw-icon { font-size: 1.5rem; }
}

/* ─── RESPONSIVE — SMALL PHONE ─── */
@media(max-width:380px){
    .fc-hero h1{font-size:1.2rem}
    .fc-hero-sub{font-size:.78rem}
    .fc-hero-stats { gap: .35rem; }
    .fc-hero-stat-val { font-size: 1rem; }
    .fc-hero-btn-primary, .fc-hero-btn-secondary { font-size: .78rem; padding: .5rem .85rem; }

    .fc-league-tab { padding: .3rem .5rem; font-size: .65rem; }
}

/* ─── SECTION HEADERS ─── */
.fc-section-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.25rem}
.fc-section-header h2{font-size:1.15rem;font-weight:700;color:var(--text)}
.fc-section-link{color:var(--accent);font-size:.8rem;font-weight:600}
.fc-section-link:hover{color:var(--accent-hover)}

/* ─── SIDEBAR ─── */
.fc-sidebar-card{
    background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);
    padding:1.1rem;margin-bottom:1rem;
}
.fc-sidebar-card h3{
    font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;
    color:var(--text-secondary);margin:0 0 .85rem;padding-bottom:.65rem;border-bottom:1px solid var(--border);
}
.fc-sidebar-link{
    display:flex;justify-content:space-between;align-items:center;
    padding:.5rem 0;border-bottom:1px solid var(--border);
    color:var(--text);font-size:.82rem;transition:color .15s;
}
.fc-sidebar-link:last-child{border-bottom:none}
.fc-sidebar-link:hover{color:var(--accent)}
.fc-sidebar-link span{color:var(--accent);font-size:.75rem}

/* ─── AD SLOTS ─── */
.fc-ad-slot{
    background:var(--bg-elevated);border:1px dashed var(--border);border-radius:var(--radius-sm);
    padding:1.5rem;text-align:center;color:var(--text-dim);font-size:.7rem;margin-bottom:1rem;
}

/* ─── FOOTER ─── */
.fc-footer{
    background:var(--bg-card);border-top:1px solid var(--border);
    margin-top:3rem;padding:2.5rem 0 1.25rem;
}
.fc-footer-inner{
    max-width:var(--max-w);margin:0 auto;padding:0 1.25rem;
    display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.75rem;
}
.fc-footer h4{
    font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;
    color:var(--text-secondary);margin-bottom:.85rem;
}
.fc-footer li{margin-bottom:.4rem}
.fc-footer a{color:var(--text-dim);font-size:.82rem;transition:color .15s}
.fc-footer a:hover{color:var(--accent)}
.fc-footer-bottom{
    max-width:var(--max-w);margin:1.5rem auto 0;padding:1.25rem 1.25rem 0;
    border-top:1px solid var(--border);font-size:.72rem;color:var(--text-dim);
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:.75rem;
}
.fc-footer-disclaimer{max-width:500px;line-height:1.5}

/* ─── BREADCRUMBS ─── */
.fc-breadcrumbs{
    max-width:var(--max-w);margin:0 auto;padding:.85rem 1.25rem 0;
    font-size:.78rem;color:var(--text-dim);
}
.fc-breadcrumbs a{color:var(--text-secondary);transition:color .15s}
.fc-breadcrumbs a:hover{color:var(--accent)}
.fc-breadcrumbs .sep{margin:0 .4rem;opacity:.5}

/* ─── PREDICTION SINGLE — MATCH HERO ─── */
.fc-match-hero{
    background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);
    padding:2rem;text-align:center;margin-bottom:1.75rem;
}
.fc-match-versus{
    display:flex;align-items:center;justify-content:center;gap:clamp(1rem,4vw,2.5rem);
    margin-bottom:1.25rem;
}
.fc-match-team{text-align:center;min-width:0}
.fc-match-team img{width:56px;height:56px;object-fit:contain;margin:0 auto .4rem}
.fc-match-team-name{font-weight:700;font-size:1rem;color:var(--text)}
.fc-match-team-pct{font-size:1.35rem;font-weight:800;margin-top:.2rem}
.fc-match-vs{color:var(--text-dim);font-size:.85rem}
.fc-match-vs strong{display:block;font-size:1.6rem;font-weight:800;margin-bottom:.15rem}

/* Single prediction — score & status */
.fc-single-score{
    font-size:2rem;font-weight:800;letter-spacing:.05em;line-height:1;margin-bottom:.25rem;
}
.fc-single-score-live{color:var(--danger)}
.fc-single-status{
    display:inline-flex;align-items:center;gap:4px;
    font-size:.65rem;font-weight:700;letter-spacing:.08em;
    padding:2px 10px;border-radius:3px;text-transform:uppercase;margin-bottom:.35rem;
}
.fc-single-status-ft{background:rgba(100,116,139,.15);color:#94a3b8}
.fc-single-status-live{
    background:rgba(239,68,68,.12);color:var(--danger);
    animation:fc-pulse 2s ease-in-out infinite;
}
.fc-single-status .fpe-live-dot{
    width:6px;height:6px;border-radius:50%;background:var(--danger);
    animation:fc-blink 1.2s ease-in-out infinite;
}
@keyframes fc-pulse{0%,100%{opacity:1}50%{opacity:.7}}
@keyframes fc-blink{0%,100%{opacity:1}50%{opacity:.3}}
.fc-single-date{font-size:.82rem;color:var(--text-dim);margin-top:.2rem}
.fc-single-time{color:var(--accent);font-weight:600;font-size:.8rem;margin-top:.15rem}
.fc-single-countdown{color:var(--accent);font-weight:600;font-size:.75rem;margin-top:.25rem}
.fc-match-meta{
    margin-top:.6rem;font-size:.78rem;color:var(--text-dim);
    display:flex;align-items:center;justify-content:center;gap:.5rem;
}
.fc-match-meta img{width:20px;height:20px;object-fit:contain}

/* prob bar in single */
.fc-prob-bar{max-width:450px;margin:0 auto}
.fc-prob-bar-visual{display:flex;height:10px;border-radius:5px;overflow:hidden;gap:2px}
.fc-prob-seg-h{background:linear-gradient(135deg,#22c55e,#16a34a)}
.fc-prob-seg-d{background:linear-gradient(135deg,#f59e0b,#d97706)}
.fc-prob-seg-a{background:linear-gradient(135deg,#ef4444,#dc2626)}
.fc-prob-labels{
    display:flex;justify-content:space-between;margin-top:.4rem;font-size:.72rem;
}

/* ─── AI ANALYSIS ─── */
.fpe-ai-analysis{
    background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--accent);
    border-radius:var(--radius);padding:1.35rem;margin:1.5rem 0;line-height:1.8;
}
.fpe-ai-analysis h3{
    font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);
    margin-bottom:.85rem;display:flex;align-items:center;gap:.4rem;
}
.fpe-ai-analysis h4.fpe-analysis-subheading{
    font-size:.82rem;font-weight:600;color:var(--text);
    margin:1.1rem 0 .35rem;padding-top:.75rem;
    border-top:1px solid var(--border);
}
.fpe-ai-analysis h4.fpe-analysis-subheading:first-of-type{
    border-top:none;margin-top:0;padding-top:0;
}
.fpe-ai-analysis p{color:var(--text-secondary);margin-bottom:.65rem;font-size:.9rem;line-height:1.8}
.fpe-ai-analysis p:last-child{margin-bottom:0}

/* ─── WP DEFAULT WIDGET OVERRIDE ─── */
.widget{
    background:var(--bg-card)!important;border:1px solid var(--border)!important;
    border-radius:var(--radius)!important;padding:1.1rem!important;margin-bottom:1rem!important;
    color:var(--text-secondary)!important;
}
.widget h2,.widget h3,.widget-title{
    font-size:.75rem!important;text-transform:uppercase!important;
    letter-spacing:.07em!important;color:var(--text-secondary)!important;
    margin:0 0 .85rem!important;padding-bottom:.65rem!important;
    border-bottom:1px solid var(--border)!important;
}
.widget a{color:var(--accent)!important}
.widget a:hover{color:var(--accent-hover)!important}
.widget ul{padding:0!important;margin:0!important;list-style:none!important}
.widget li{padding:.35rem 0;border-bottom:1px solid var(--border);font-size:.82rem}
.widget li:last-child{border-bottom:none}
.widget input[type="search"],.widget input[type="text"]{
    background:var(--bg)!important;border:1px solid var(--border)!important;
    color:var(--text)!important;padding:.5rem .75rem;border-radius:var(--radius-sm);
    width:100%;font-size:.85rem;
}
.widget input[type="submit"],.widget button{
    background:var(--accent)!important;color:var(--bg)!important;border:none!important;
    padding:.5rem 1rem;border-radius:var(--radius-sm);font-weight:600;font-size:.82rem;
    cursor:pointer;margin-top:.35rem;
}

/* ─── NAV PAGINATION ─── */
.nav-links{display:flex;gap:.35rem;justify-content:center;margin-top:1.5rem}
.nav-links a,.nav-links span{
    padding:.45rem .85rem;border-radius:var(--radius-sm);font-size:.82rem;
    border:1px solid var(--border);color:var(--text-secondary);
}
.nav-links a:hover,.nav-links .current{border-color:var(--accent);color:var(--accent)}

/* ─── LANG SWITCH ─── */
.fc-lang-switch{display:flex;gap:3px}
.fc-lang-switch a{
    padding:2px 6px;font-size:.65rem;border-radius:3px;border:1px solid var(--border);
    color:var(--text-dim);text-transform:uppercase;
}
.fc-lang-switch a.current-lang,.fc-lang-switch a:hover{border-color:var(--accent);color:var(--accent)}

/* ─── PREDICTION CONTENT (plugin HTML inside single) ─── */
.fc-prediction-content{color:var(--text)}
.fc-prediction-content h3{
    font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;
    color:var(--text-secondary);margin:0 0 .75rem;
}
.fc-prediction-content .fpe-prediction-card{max-width:100%}
.fc-prediction-content .fpe-advice-box,
.fc-prediction-content .fpe-probabilities,
.fc-prediction-content .fpe-goals-prediction,
.fc-prediction-content .fpe-comparison{
    background:var(--bg-card);border:1px solid var(--border);
    border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem;
}
.fc-prediction-content .fpe-advice-box{
    background:var(--accent-dim);border-color:var(--accent);
}
.fc-prediction-content .fpe-comparison-table{width:100%;border-collapse:collapse}
.fc-prediction-content .fpe-comparison-table th,
.fc-prediction-content .fpe-comparison-table td{
    padding:.5rem;text-align:center;border-bottom:1px solid var(--border);
    color:var(--text);font-size:.85rem;
}
.fc-prediction-content .fpe-comparison-table th{color:var(--text-secondary);font-weight:600}
.fc-prediction-content p{color:var(--text-secondary);margin-bottom:.5rem}

/* ─── NO MATCHES STATE ─── */
.fpe-no-matches{
    background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);
    padding:2.5rem 1.5rem;text-align:center;
}
.fpe-no-matches p{color:var(--text-dim);font-size:.9rem;margin:0}
/* ═══════════════════════════════════════════════════════════════
   PERFORMANCE PAGE — Theme Template Styles
   Added in v2.4.0
   ═══════════════════════════════════════════════════════════════ */

/* ─── HERO ─── */
.fc-perf-hero {
    text-align: center;
    padding: 3rem 1.25rem 1.5rem;
    max-width: var(--max-w);
    margin: 0 auto;
    position: relative;
}
.fc-perf-hero::before {
    content: '';
    position: absolute;
    top: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 400px;
    height: 200px;
    background: radial-gradient(ellipse, rgba(34,197,94,.08) 0%, transparent 70%);
    pointer-events: none;
}
.fc-perf-hero-inner { position: relative; z-index: 1; }
.fc-perf-hero-kicker {
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--accent);
    font-weight: 700;
    margin-bottom: .5rem;
}
.fc-perf-hero h1 {
    font-size: clamp(1.5rem, 3.5vw, 2.25rem);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.15;
    margin-bottom: .65rem;
}
.fc-perf-hero-sub {
    font-size: .9rem;
    color: var(--text-secondary);
    max-width: 520px;
    margin: 0 auto;
    line-height: 1.6;
}

/* ─── PERIOD TABS ─── */
.fc-perf-period-bar {
    max-width: var(--max-w);
    margin: 0 auto;
    padding: .25rem 1.25rem 0;
}
.fc-perf-period-inner {
    display: flex;
    gap: 2px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 4px;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.fc-perf-period-inner::-webkit-scrollbar { display: none; }
.fc-perf-period-tab {
    flex: 1;
    text-align: center;
    padding: .5rem .75rem;
    font-size: .78rem;
    font-weight: 600;
    color: var(--text-dim);
    border-radius: calc(var(--radius) - 3px);
    transition: all .15s;
    text-decoration: none;
    white-space: nowrap;
}
.fc-perf-period-tab:hover {
    color: var(--text);
    background: rgba(255,255,255,.04);
}
.fc-perf-period-tab.active {
    color: var(--bg);
    background: var(--accent);
    font-weight: 700;
}

/* ─── FILTER PILLS ─── */
.fc-perf-filters {
    max-width: var(--max-w);
    margin: 0 auto;
    padding: 0 1.25rem 1rem;
}
.fc-perf-filters-inner {
    display: flex;
    align-items: center;
    gap: .75rem;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding-bottom: .5rem;
}
.fc-perf-filters-inner::-webkit-scrollbar { display: none; }
.fc-perf-filter-label {
    font-size: .75rem;
    color: var(--text-dim);
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}
.fc-perf-filter-pills {
    display: flex;
    gap: .35rem;
    flex-wrap: nowrap;
}
.fc-perf-pill {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    padding: .35rem .75rem;
    font-size: .75rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
    transition: all .15s;
    text-decoration: none;
}
.fc-perf-pill:hover {
    border-color: var(--border-light);
    color: var(--text);
}
.fc-perf-pill.active {
    border-color: var(--accent);
    color: var(--accent);
    background: var(--accent-dim);
}
.fc-perf-pill img {
    width: 16px;
    height: 16px;
    object-fit: contain;
    flex-shrink: 0;
}

/* ─── STAT CARDS ─── */
.fc-perf-stat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: .85rem;
    margin-bottom: 1.75rem;
}
.fc-perf-stat-card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 1.25rem 1rem;
    text-align: center;
    transition: border-color .15s, box-shadow .15s;
}
.fc-perf-stat-card:hover {
    border-color: var(--border-light);
}
.fc-perf-stat-card.fc-perf-stat-main {
    border-color: var(--accent);
    border-width: 2px;
    box-shadow: 0 0 20px rgba(34,197,94,.06);
}
.fc-perf-stat-icon {
    font-size: 1.5rem;
    margin-bottom: .35rem;
    line-height: 1;
}
.fc-perf-stat-value {
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.1;
    color: var(--text);
    margin-bottom: .2rem;
}
.fc-perf-stat-value.fc-perf-good { color: var(--accent); }
.fc-perf-stat-value.fc-perf-avg  { color: var(--warn); }
.fc-perf-stat-label {
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--text-dim);
    font-weight: 600;
}
.fc-perf-stat-detail {
    font-size: .75rem;
    color: var(--text-secondary);
    margin-top: .25rem;
}

/* ─── SECTIONS ─── */
.fc-perf-section {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 1.25rem;
    margin-bottom: 1.5rem;
}
.fc-perf-section-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 1rem;
    padding-bottom: .65rem;
    border-bottom: 1px solid var(--border);
}
.fc-perf-section-header h2 {
    font-size: .75rem;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--text-dim);
    font-weight: 600;
    margin: 0;
}
.fc-perf-section-count {
    font-size: .72rem;
    color: var(--text-dim);
}

/* ─── LEAGUE BREAKDOWN ─── */
.fc-perf-league-grid {
    display: flex;
    flex-direction: column;
    gap: .55rem;
}
a.fc-perf-league-row {
    display: grid;
    grid-template-columns: 160px 1fr 50px 50px;
    align-items: center;
    gap: .75rem;
    padding: .4rem .5rem;
    border-radius: var(--radius-sm);
    transition: background .15s;
    text-decoration: none;
    color: inherit;
}
a.fc-perf-league-row:hover {
    background: rgba(255,255,255,.03);
}
.fc-perf-league-name {
    display: flex;
    align-items: center;
    gap: .4rem;
    font-size: .82rem;
    font-weight: 600;
    color: var(--text);
    min-width: 0;
}
.fc-perf-league-name img {
    flex-shrink: 0;
    border-radius: 2px;
}
.fc-perf-league-name span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.fc-perf-league-bar {
    height: 6px;
    background: rgba(255,255,255,.06);
    border-radius: 3px;
    overflow: hidden;
}
.fc-perf-league-fill {
    height: 100%;
    border-radius: 3px;
    transition: width .4s ease;
}
.fc-perf-league-fill.fc-perf-good-bg { background: var(--accent); }
.fc-perf-league-fill.fc-perf-avg-bg  { background: var(--warn); }
.fc-perf-league-pct {
    font-size: .8rem;
    font-weight: 700;
    color: var(--text);
    text-align: right;
}
.fc-perf-league-count {
    font-size: .72rem;
    color: var(--text-dim);
    text-align: right;
}

/* ─── RESULTS TABLE v2.5.0 ─── */
.fc-perf-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.fc-perf-table {
    width: 100%;
    border-collapse: collapse;
    font-size: .82rem;
}
.fc-perf-table-v2 {
    table-layout: auto;
}
.fc-perf-table th {
    text-align: left;
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--text-dim);
    padding: .5rem .5rem;
    border-bottom: 1px solid var(--border);
    font-weight: 600;
    white-space: nowrap;
}
/* Column widths v2.5.0 — auto layout with min/max */
.fc-perf-table-v2 .fc-col-date { width: 65px; }
.fc-perf-table-v2 .fc-col-match { min-width: 160px; }
.fc-perf-table-v2 .fc-col-score { width: 60px; text-align: center; }
.fc-perf-table-v2 .fc-col-predicted { min-width: 140px; }
.fc-perf-table-v2 .fc-col-result { width: 50px; text-align: center; }

.fc-perf-table td {
    padding: .7rem .5rem;
    border-bottom: 1px solid rgba(255,255,255,.04);
    color: var(--text);
    vertical-align: middle;
}
.fc-perf-table tr:last-child td { border-bottom: none; }

/* Hit/miss/na row indicator */
.fc-perf-hit td:first-child { border-left: 3px solid var(--accent); }
.fc-perf-miss td:first-child { border-left: 3px solid var(--danger); }
.fc-perf-na td:first-child { border-left: 3px solid var(--border); }
.fc-perf-na { opacity: .6; }

.fc-perf-date-cell {
    white-space: nowrap;
    color: var(--text-dim);
    font-size: .75rem;
}
.fc-perf-match-cell {
    display: flex;
    align-items: center;
    gap: .5rem;
    overflow: hidden;
    white-space: nowrap;
}
.fc-perf-league-icon {
    flex-shrink: 0;
    border-radius: 2px;
}
.fc-perf-match-teams a {
    color: var(--text);
    text-decoration: none;
}
.fc-perf-match-teams a:hover { color: var(--accent); }
.fc-perf-team-name { font-weight: 600; }
.fc-perf-vs {
    color: var(--text-dim);
    font-size: .7rem;
    margin: 0 .2rem;
}
.fc-perf-score-cell {
    white-space: nowrap;
    font-size: .88rem;
}
.fc-perf-predicted-cell {
    color: var(--text-secondary);
    font-size: .78rem;
}
.fc-perf-predicted-text {
    display: block;
    line-height: 1.4;
    word-break: break-word;
}
.fc-perf-badge, .fc-perf-badge-sm {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-weight: 800;
}
.fc-perf-badge {
    width: 26px;
    height: 26px;
    font-size: .72rem;
}
.fc-perf-badge-sm {
    width: 20px;
    height: 20px;
    font-size: .62rem;
}
.fc-perf-badge-hit {
    background: rgba(34,197,94,.15);
    color: var(--accent);
}
.fc-perf-badge-miss {
    background: rgba(239,68,68,.12);
    color: var(--danger);
}
.fc-perf-badge-na {
    background: transparent;
    color: var(--text-dim);
    font-size: .75rem;
}

/* ─── LOAD MORE ─── */
.fc-perf-load-more {
    text-align: center;
    padding-top: 1rem;
}
.fc-perf-btn {
    display: inline-block;
    background: var(--accent);
    color: var(--bg) !important;
    padding: .6rem 1.5rem;
    border-radius: var(--radius-sm);
    font-weight: 700;
    font-size: .82rem;
    text-decoration: none;
    transition: background .15s, transform .15s;
}
.fc-perf-btn:hover {
    background: var(--accent-hover);
    transform: translateY(-1px);
}

/* ─── PAGINATION v2.5.0 ─── */
.fc-perf-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    padding-top: 1.25rem;
    flex-wrap: wrap;
}
.fc-perf-page-btn {
    min-width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-sm);
    border: 1px solid var(--border);
    background: transparent;
    color: var(--text-secondary);
    font-size: .78rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    padding: 0 .5rem;
}
.fc-perf-page-btn:hover:not(:disabled) {
    border-color: var(--accent);
    color: var(--accent);
}
.fc-perf-page-btn.active {
    background: var(--accent);
    border-color: var(--accent);
    color: var(--bg);
    font-weight: 700;
}
.fc-perf-page-btn:disabled {
    opacity: .3;
    cursor: not-allowed;
}
.fc-perf-page-dots {
    color: var(--text-dim);
    font-size: .78rem;
    padding: 0 .15rem;
}
.fc-perf-page-info {
    font-size: .7rem;
    color: var(--text-dim);
    margin-left: .5rem;
}

/* ─── EMPTY STATE ─── */
.fc-perf-empty {
    text-align: center;
    padding: 3rem 1.5rem;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
}
.fc-perf-empty-icon {
    font-size: 2.5rem;
    margin-bottom: .75rem;
}
.fc-perf-empty h2 {
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: .5rem;
}
.fc-perf-empty p {
    color: var(--text-secondary);
    font-size: .88rem;
    max-width: 420px;
    margin: 0 auto 1.25rem;
    line-height: 1.6;
}

/* ─── METHODOLOGY ─── */
.fc-perf-methodology {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-left: 3px solid var(--accent);
    border-radius: var(--radius);
    padding: 1.25rem;
    margin-top: .5rem;
}
.fc-perf-methodology h3 {
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--accent);
    margin-bottom: .5rem;
}
.fc-perf-methodology p {
    font-size: .82rem;
    color: var(--text-secondary);
    line-height: 1.65;
    margin: 0;
}

/* ─── SIDEBAR STATS ─── */
.fc-perf-sidebar-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .5rem;
    text-align: center;
}
.fc-perf-sidebar-stat-val {
    display: block;
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--text);
    line-height: 1.2;
}
.fc-perf-sidebar-stat-val.fc-perf-good { color: var(--accent); }
.fc-perf-sidebar-stat-lbl {
    font-size: .62rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--text-dim);
}

/* ─── RESPONSIVE ─── */
@media (max-width: 768px) {
    .fc-perf-hero { padding: 2rem 1rem 1rem; }
    .fc-perf-hero h1 { font-size: 1.5rem; }

    .fc-perf-stat-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    a.fc-perf-league-row {
        grid-template-columns: 120px 1fr 42px 42px;
        gap: .4rem;
    }
    .fc-perf-league-name { font-size: .75rem; }
}

@media (max-width: 480px) {
    .fc-perf-stat-grid { grid-template-columns: 1fr 1fr; }
    .fc-perf-stat-value { font-size: 1.5rem; }

    .fc-perf-table { font-size: .75rem; }
    .fc-perf-table th, .fc-perf-table td { padding: .4rem .35rem; }
    .fc-perf-predicted-cell { font-size: .72rem; }
    .fc-perf-match-cell { gap: .3rem; }
    .fc-perf-league-icon { display: none; }

    .fc-perf-pagination { gap: .25rem; }
    .fc-perf-page-btn { min-width: 30px; height: 30px; font-size: .72rem; }
    .fc-perf-page-info { display: none; }
}

/* ═══════════════════════════════════════════════════════════════
   NEW TEMPLATES — v2.4.0
   Append this to the end of style.css
   ═══════════════════════════════════════════════════════════════ */

/* ─── GENERIC PAGE ─── */
.fc-page-content {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 2rem;
    line-height: 1.8;
}
.fc-page-content h1 {
    font-size: 1.5rem;
    font-weight: 800;
    margin-bottom: 1.25rem;
    padding-bottom: .85rem;
    border-bottom: 1px solid var(--border);
}
.fc-page-content h2 { font-size: 1.15rem; font-weight: 700; margin: 1.5rem 0 .75rem; }
.fc-page-content h3 { font-size: 1rem; font-weight: 600; margin: 1.25rem 0 .5rem; }
.fc-page-content p { color: var(--text-secondary); margin-bottom: .75rem; }
.fc-page-content a { color: var(--accent); text-decoration: underline; }
.fc-page-content a:hover { color: var(--accent-hover); }
.fc-page-content ul, .fc-page-content ol {
    padding-left: 1.5rem;
    margin-bottom: .75rem;
    color: var(--text-secondary);
}
.fc-page-content li { margin-bottom: .35rem; list-style: disc; }
.fc-page-content ol li { list-style: decimal; }

/* ─── 404 ─── */
.fc-404-wrap {
    text-align: center;
    max-width: 500px;
    margin: 0 auto;
    padding: 4rem 1.25rem;
}
.fc-404-icon {
    font-size: 3.5rem;
    margin-bottom: .75rem;
    opacity: .6;
}
.fc-404-wrap h1 {
    font-size: 1.75rem;
    font-weight: 800;
    margin-bottom: .65rem;
}
.fc-404-wrap p {
    color: var(--text-secondary);
    font-size: .9rem;
    margin-bottom: 1.5rem;
    line-height: 1.6;
}
.fc-404-actions {
    display: flex;
    gap: .65rem;
    justify-content: center;
    flex-wrap: wrap;
}
.fc-404-btn {
    display: inline-block;
    padding: .55rem 1.25rem;
    border-radius: var(--radius-sm);
    font-weight: 700;
    font-size: .82rem;
    border: 1px solid var(--border);
    color: var(--text-secondary);
    transition: all .15s;
}
.fc-404-btn:hover {
    border-color: var(--accent);
    color: var(--accent);
}
.fc-404-btn-primary {
    background: var(--accent);
    border-color: var(--accent);
    color: var(--bg) !important;
}
.fc-404-btn-primary:hover {
    background: var(--accent-hover);
    border-color: var(--accent-hover);
}

/* ─── SEARCH ─── */
.fc-search-header {
    margin-bottom: 1.5rem;
}
.fc-search-header h1 {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: .25rem;
}
.fc-search-count {
    font-size: .82rem;
    color: var(--text-dim);
}
.fc-search-card {
    display: block;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 1.1rem;
    margin-bottom: .75rem;
    transition: border-color .15s;
}
.fc-search-card:hover {
    border-color: var(--accent);
}
.fc-search-card-type {
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--text-dim);
    font-weight: 600;
    margin-bottom: .25rem;
}
.fc-search-card h2 {
    font-size: .95rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: .25rem;
}
.fc-search-card p {
    font-size: .82rem;
    color: var(--text-secondary);
    margin-bottom: .25rem;
}
.fc-search-card-date {
    font-size: .72rem;
    color: var(--text-dim);
}

/* ═══════════════════════════════════════════════════════════════
   PICKS OF THE DAY + HOME IMPROVEMENTS — v2.4.0
   ═══════════════════════════════════════════════════════════════ */

/* ─── HERO STATS ─── */
.fc-hero-stats {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
    margin: 1.5rem auto .75rem;
    max-width: 400px;
}
.fc-hero-stat { text-align: center; }
.fc-hero-stat-val {
    display: block;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--text);
    line-height: 1.1;
}
.fc-hero-stat-lbl {
    font-size: .65rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--text-dim);
    font-weight: 600;
}
.fc-hero-stat-divider {
    width: 1px;
    height: 32px;
    background: var(--border);
}

/* Hero CTAs */
.fc-hero-ctas {
    display: flex;
    gap: .65rem;
    justify-content: center;
    margin-top: 1.25rem;
    flex-wrap: wrap;
}
.fc-hero-btn-primary {
    background: var(--accent);
    color: var(--bg) !important;
    padding: .6rem 1.5rem;
    border-radius: var(--radius-sm);
    font-weight: 700;
    font-size: .85rem;
    transition: all .15s;
}
.fc-hero-btn-primary:hover { background: var(--accent-hover); transform: translateY(-1px); }
.fc-hero-btn-secondary {
    border: 1px solid var(--border);
    color: var(--text-secondary) !important;
    padding: .6rem 1.5rem;
    border-radius: var(--radius-sm);
    font-weight: 600;
    font-size: .85rem;
    transition: all .15s;
}
.fc-hero-btn-secondary:hover { border-color: var(--accent); color: var(--accent) !important; }

/* ─── HOW IT WORKS ─── */
.fc-hiw-section {
    max-width: var(--max-w);
    margin: 2rem auto 0;
    padding: 0 1.25rem;
}
.fc-hiw-inner {
    text-align: center;
    padding: 2.5rem 0;
    border-top: 1px solid var(--border);
}
.fc-hiw-inner h2 {
    font-size: 1.15rem;
    font-weight: 800;
    margin-bottom: .35rem;
}
.fc-hiw-sub {
    color: var(--text-secondary);
    font-size: .85rem;
    margin-bottom: 1.75rem;
}
.fc-hiw-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    text-align: center;
}
.fc-hiw-card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 1.25rem 1rem;
    transition: border-color .15s;
}
.fc-hiw-card:hover { border-color: var(--border-light); }
.fc-hiw-icon { font-size: 1.5rem; margin-bottom: .5rem; }
.fc-hiw-card h3 { font-size: .82rem; font-weight: 700; margin-bottom: .35rem; }
.fc-hiw-card p { font-size: .75rem; color: var(--text-secondary); line-height: 1.5; margin: 0; }
@media (max-width: 768px) { .fc-hiw-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .fc-hiw-grid { grid-template-columns: 1fr; } }

/* ─── PICKS OF THE DAY — HERO ─── */
.fc-picks-hero {
    text-align: center;
    padding: 2.5rem 1.25rem 1rem;
    max-width: var(--max-w);
    margin: 0 auto;
}
.fc-picks-hero-kicker {
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--accent);
    font-weight: 700;
    margin-bottom: .4rem;
}
.fc-picks-hero h1 {
    font-size: clamp(1.4rem, 3vw, 2rem);
    font-weight: 800;
    letter-spacing: -.02em;
    margin-bottom: .35rem;
}
.fc-picks-hero-sub {
    font-size: .88rem;
    color: var(--text-secondary);
}

/* ─── DATE NAVIGATION ─── */
.fc-picks-date-nav {
    max-width: var(--max-w);
    margin: 0 auto;
    padding: 0 1.25rem .75rem;
}
.fc-picks-date-nav-inner {
    display: flex;
    align-items: center;
    gap: .5rem;
}
.fc-picks-date-arrow {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid var(--border);
    color: var(--text-secondary);
    font-size: 1.1rem;
    flex-shrink: 0;
    transition: all .15s;
    text-decoration: none;
}
.fc-picks-date-arrow:hover { border-color: var(--accent); color: var(--accent); }
.fc-picks-date-tabs {
    display: flex;
    gap: 3px;
    flex: 1;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 3px;
    overflow-x: auto;
    scrollbar-width: none;
}
.fc-picks-date-tabs::-webkit-scrollbar { display: none; }
.fc-picks-date-tab {
    flex: 1;
    text-align: center;
    padding: .45rem .5rem;
    border-radius: calc(var(--radius) - 3px);
    text-decoration: none;
    color: var(--text-dim);
    transition: all .15s;
    min-width: 60px;
}
.fc-picks-date-tab:hover { color: var(--text); background: rgba(255,255,255,.04); }
.fc-picks-date-tab.active { color: var(--bg); background: var(--accent); font-weight: 700; }
.fc-picks-date-tab.is-today:not(.active) { color: var(--accent); }
.fc-picks-date-day {
    display: block;
    font-size: .6rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    opacity: .7;
}
.fc-picks-date-label {
    display: block;
    font-size: .78rem;
    font-weight: 600;
}

/* ─── STAT ROW ─── */
.fc-picks-stat-row {
    display: flex;
    gap: .5rem;
    margin-bottom: 1.25rem;
    flex-wrap: wrap;
}
.fc-picks-stat {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    padding: .65rem 1rem;
    text-align: center;
    flex: 1;
    min-width: 80px;
}
.fc-picks-stat-val {
    display: block;
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--text);
    line-height: 1.1;
}
.fc-picks-stat-lbl {
    font-size: .6rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--text-dim);
    font-weight: 600;
}

/* ─── SECTIONS ─── */
.fc-picks-section {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 1.25rem;
    margin-bottom: 1.25rem;
}
.fc-picks-section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    padding-bottom: .65rem;
    border-bottom: 1px solid var(--border);
}
.fc-picks-section-header h2 {
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--text-dim);
    font-weight: 600;
    margin: 0;
}
.fc-picks-section-badge {
    font-size: .62rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--accent);
    font-weight: 700;
    background: var(--accent-dim);
    padding: 3px 8px;
    border-radius: 3px;
}

/* ─── PICK CARD (banker) ─── */
.fc-picks-list { display: flex; flex-direction: column; gap: .65rem; }
.fc-pick-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: .85rem;
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-left: 3px solid var(--accent);
    border-radius: var(--radius-sm);
    transition: border-color .15s;
}
.fc-pick-card:hover { border-color: var(--accent); }
.fc-pick-card.fc-pick-finished { opacity: .75; }
.fc-pick-card.fc-pick-finished:hover { opacity: .9; }

/* Confidence ring */
.fc-pick-confidence { flex-shrink: 0; }
.fc-pick-conf-ring {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: conic-gradient(var(--accent) calc(var(--conf) * 3.6deg), var(--border) 0);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.fc-pick-conf-ring::before {
    content: '';
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    background: var(--bg-elevated);
}
.fc-pick-conf-ring span {
    position: relative;
    font-size: .7rem;
    font-weight: 800;
    color: var(--accent);
}

/* Match info */
.fc-pick-match { flex: 1; min-width: 0; }
.fc-pick-meta {
    display: flex;
    align-items: center;
    gap: .35rem;
    font-size: .68rem;
    color: var(--text-dim);
    margin-bottom: .25rem;
}
.fc-pick-meta img { border-radius: 2px; }
.fc-pick-time { margin-left: auto; color: var(--text-secondary); }
.fc-pick-teams {
    display: flex;
    align-items: center;
    gap: .35rem;
    font-size: .88rem;
}
.fc-pick-teams a { color: var(--text); text-decoration: none; display: flex; align-items: center; gap: .35rem; }
.fc-pick-teams a:hover { color: var(--accent); }
.fc-pick-team { font-weight: 600; }
.fc-pick-vs { color: var(--text-dim); font-size: .72rem; }
.fc-pick-score { font-weight: 800; font-size: .85rem; }
.fc-pick-score-live { color: var(--danger); }
.fc-pick-inline-score { font-weight: 700; font-size: .8rem; color: var(--text-secondary); }

/* Prediction */
.fc-pick-prediction {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: .5rem;
    max-width: 240px;
}
.fc-pick-advice {
    font-size: .75rem;
    color: var(--text-secondary);
    line-height: 1.3;
}
.fc-pick-result-badge {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .72rem;
    font-weight: 800;
    flex-shrink: 0;
}
.fc-pick-hit { background: rgba(34,197,94,.15); color: var(--accent); }
.fc-pick-miss { background: rgba(239,68,68,.12); color: var(--danger); }

/* Confidence badge in table */
.fc-picks-conf-cell { text-align: center; }
.fc-picks-conf-badge {
    font-size: .72rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 3px;
}
.fc-conf-high { background: rgba(34,197,94,.12); color: var(--accent); }
.fc-conf-med { background: rgba(245,158,11,.12); color: var(--warn); }
.fc-conf-low { background: rgba(100,116,139,.12); color: var(--text-dim); }

.fc-picks-live-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: .6rem;
    font-weight: 700;
    color: var(--danger);
    text-transform: uppercase;
}
.fc-picks-pending { color: var(--text-dim); }

/* ─── RESPONSIVE ─── */
@media (max-width: 768px) {
    .fc-pick-card { flex-wrap: wrap; }
    .fc-pick-prediction { max-width: 100%; width: 100%; margin-top: .35rem; }
    .fc-hero-stats { gap: .75rem; }
    .fc-hero-stat-val { font-size: 1.25rem; }
    .fc-picks-date-tab { min-width: 50px; }
    .fc-picks-date-day { font-size: .55rem; }
    .fc-picks-date-label { font-size: .7rem; }
}
@media (max-width: 480px) {
    .fc-pick-conf-ring { width: 40px; height: 40px; }
    .fc-pick-conf-ring span { font-size: .6rem; }
    .fc-pick-teams { font-size: .8rem; }
    .fc-picks-stat { padding: .5rem .65rem; }
    .fc-picks-stat-val { font-size: 1rem; }
    .fc-hero-ctas { flex-direction: column; align-items: center; }
}

/* ═══════════════════════════════════════════════════════════════
   AI SMART PICKS — v2.5.0
   ═══════════════════════════════════════════════════════════════ */

.fc-smart-picks-section {
    border-left: 3px solid var(--accent);
}

/* Loading state */
.fc-smart-picks-loading {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: 1.25rem 0;
    color: var(--text-secondary);
    font-size: .82rem;
}
.fc-loading-spinner {
    width: 20px;
    height: 20px;
    border: 2px solid var(--border);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: fc-spin .8s linear infinite;
    flex-shrink: 0;
}
@keyframes fc-spin {
    to { transform: rotate(360deg); }
}

/* Meta info bar */
.fc-smart-picks-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: .72rem;
    color: var(--text-dim);
    margin-bottom: .85rem;
    padding-bottom: .5rem;
    border-bottom: 1px solid var(--border);
}
.fc-smart-picks-method {
    background: var(--accent-dim);
    color: var(--accent);
    padding: 2px 8px;
    border-radius: 3px;
    font-weight: 700;
    font-size: .62rem;
    text-transform: uppercase;
    letter-spacing: .05em;
}

/* Smart pick cards grid */
.fc-smart-picks-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: .65rem;
}
.fc-smart-pick-card {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    padding: .85rem;
    transition: border-color .15s;
}
.fc-smart-pick-card:hover {
    border-color: var(--accent);
}
.fc-smart-pick-header {
    display: flex;
    align-items: center;
    gap: .35rem;
    font-size: .68rem;
    color: var(--text-dim);
    margin-bottom: .45rem;
}
.fc-smart-pick-header img {
    border-radius: 2px;
}
.fc-smart-pick-league {
    flex: 1;
}
.fc-smart-pick-time {
    color: var(--text-secondary);
}
.fc-smart-pick-teams {
    font-size: .88rem;
    margin-bottom: .45rem;
}
.fc-smart-pick-teams a {
    color: var(--text);
    text-decoration: none;
}
.fc-smart-pick-teams a:hover {
    color: var(--accent);
}
.fc-smart-pick-advice {
    font-size: .78rem;
    color: var(--accent);
    font-weight: 600;
    margin-bottom: .5rem;
    line-height: 1.4;
}
.fc-smart-pick-footer {
    display: flex;
    align-items: center;
    gap: .5rem;
}
.fc-smart-pick-reason {
    font-size: .68rem;
    color: var(--text-dim);
    line-height: 1.3;
    flex: 1;
}

/* Empty state */
.fc-smart-picks-empty {
    padding: .75rem 0;
}
.fc-smart-picks-empty p {
    color: var(--text-dim);
    font-size: .82rem;
    margin: 0;
}

@media (max-width: 480px) {
    .fc-smart-picks-grid {
        grid-template-columns: 1fr;
    }
    .fc-smart-pick-teams {
        font-size: .8rem;
    }
}

/* ─── v2.6.0 ADDITIONS ───────────────────────────── */

/* Monospace numerals for tabular/statistical content */
.fc-match-team-pct,
.fc-hero-stat-val,
.fc-perf-sidebar-stat-val,
.fc-single-score,
.fc-perf-score-cell strong,
.fpe-team-pct,
.fpe-match-score,
.fpe-prob-label,
.fc-col-pts,
.fc-col-pct,
.fc-picks-conf-badge {
    font-family: var(--font-mono);
    font-variant-numeric: tabular-nums;
    letter-spacing: -.01em;
}

/* Cyan accent for AI-forward labels */
.fc-smart-picks-badge,
.fc-hero-stat-lbl {
    color: var(--accent-2);
}

/* Inline-style replacements — classes instead of style="" */
.fc-archive-tabs-flat { padding: 0; }
.fc-archive-tabs-flat .fc-league-tabs {
    padding-left: 0;
    padding-right: 2.5rem;
    margin-bottom: 0;
}
.fc-archive-grid-pad { padding-bottom: 2rem; }
.fc-card-compact { padding: 1rem; }
.fc-section-header--spaced { margin-top: 2rem; }

/* Probability label colors — extracted from inline styles */
.fpe-label-home { color: var(--fpe-home, #22c55e); }
.fpe-label-draw { color: var(--fpe-draw, #f59e0b); }
.fpe-label-away { color: var(--fpe-away, #ef4444); }

/* Probability percent chip (external, accessible) */
.fpe-prob-label {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-size: .72rem;
    font-weight: 700;
    color: var(--text);
}

/* Sticky league tabs under header */
.fc-league-tabs-wrap {
    position: sticky;
    top: 52px;
    background: var(--bg);
    z-index: 50;
}
@media (max-width: 768px) {
    .fc-league-tabs-wrap { top: 48px; }
}

/* Scale section headers with clamp */
.fc-section-header h2 {
    font-size: clamp(1rem, 2.2vw, 1.15rem);
}
.fc-single-title,
.fc-archive-title {
    font-size: clamp(1.35rem, 3.2vw, 1.9rem);
    line-height: 1.2;
    letter-spacing: -.02em;
}

/* ─── RESPONSIVE — LARGE PHONE (600px break) ─── */
@media (max-width: 600px) {
    .fc-archive-section { padding: 0; }
    .fc-archive-section-heading { padding: 0 .75rem; }
    .fc-perf-sidebar { display: grid; grid-template-columns: 1fr; gap: .75rem; }
    .fc-perf-sidebar-stats {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: .4rem;
    }
    .fc-league-tabs {
        scroll-snap-type: x mandatory;
        scroll-padding: .75rem;
    }
    .fc-league-tab {
        scroll-snap-align: start;
    }
    .fc-grid-main {
        gap: 1rem;
    }
    .fc-hero h1 {
        font-size: clamp(1.3rem, 5vw, 1.75rem);
    }
}
