/* ============================================================
   POLONIA BONN – match-center.css
   Match Center (mc-* und tc-* Klassen) für index.php
   ============================================================ */

[hidden] { display: none !important; }

/* ════════ BASE ════════ */
.mc-section { padding: 88px 0 112px; background: #FFFFFF; font-family:'Inter', Arial, sans-serif; color:#333333; }
.mc-container { max-width: 1280px; margin: 0 auto; padding: 0 32px; }
.is-polonia { color: #f10402 !important; font-weight: 700; }
.mc-gold { color: #f10402 !important; font-weight: 600; }

/* ════════ CONTROL BAR ════════ */
.mc-bar { display: flex; align-items: center; gap: 14px; margin: 0 0 36px; flex-wrap: wrap; }
.mc-switch { display: flex; gap: 8px; }
.mc-btn {
    padding: 10px 28px; border: 2px solid #f10402; background: #fff;
    border-radius: 30px; font-size: .88rem; font-weight: 700; color: #f10402;
    cursor: pointer; transition: all .3s ease; font-family:'Oswald',sans-serif; letter-spacing: .06em;
    text-transform:uppercase;
}
.mc-btn:hover { border-color: #f10402; color: #f10402; }
.mc-btn.active { background: #f10402; border-color: #f10402; color: #fff; }
.mc-freshness { font-size: .73rem; color: #aaa; }
.mc-refresh { color: #f10402; text-decoration: none; }
.mc-refresh:hover { text-decoration: underline; }

/* ════════ SECTION HEAD ════════ */
.mc-section-head { margin-bottom: 18px; }
.mc-title {
    font-family: 'Oswald', sans-serif; font-size: 36px; font-weight: 700;
    letter-spacing: 3px; color: #111111; margin: 0; padding-bottom: 14px; position: relative;
    text-transform: uppercase;
}
.mc-title::after { content:''; position:absolute; bottom:0; left:0; width:50px; height:3px; background:#f10402; border-radius:2px; }

/* ════════ PILLS ════════ */
.mc-pill { display:inline-block; padding:2px 9px; border-radius:20px; font-size:.65rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; background:#f10402; color:#fff; }
.mc-pill--sm { font-size:.6rem; padding:1px 7px; }

/* ════════ SHARED LOGOS ════════ */
.mc-sm-logo {
    width:28px; height:28px; border-radius:50%; background:#EEEEEE;
    display:flex; align-items:center; justify-content:center; overflow:hidden; flex-shrink:0;
    font-family:'Oswald',sans-serif; font-size:.6rem; font-weight:700; color:#888;
}
.mc-sm-logo--pol { background:#FFF5F5; }
.mc-sm-logo img { width:18px; height:18px; object-fit:contain; }
.mc-sm-logo span { display:flex; align-items:center; justify-content:center; width:100%; height:100%; }

/* ════════ ROW 1: HERO CARDS ════════ */
.mc-hero-row { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-bottom:56px; }
.mc-hero {
    background: #FFFFFF; border: 2px solid #f10402; border-top-width: 4px;
    border-radius: 16px; padding: 40px; color: #333333;
    display:flex; flex-direction:column; gap:16px;
    min-height: 392px; position:relative; overflow:hidden;
    box-shadow: 0 10px 34px rgba(0,0,0,0.10);
}
.mc-hero::before {
    content:''; position:absolute; inset:0; pointer-events:none; border-radius:inherit;
    background: linear-gradient(135deg, rgba(241,4,2,.035), transparent 34%);
}
.mc-hero-top { display:flex; align-items:center; gap:12px; }
.mc-hero-mann { font-size:13px; font-weight:600; color:#555555; text-transform:uppercase; letter-spacing:.08em; }
.mc-hero-lbl { font-family:'Oswald',sans-serif; font-size:22px; font-weight:600; color:#111111; text-transform:uppercase; letter-spacing:2.4px; }
.mc-hero-titleline { display:flex; align-items:center; justify-content:flex-start; gap:16px; flex-wrap:wrap; }
.mc-hero-date { font-size:14px; color:#111111; font-weight:600; }
.mc-kickoff {
    display:flex; align-items:baseline; justify-content:center; gap:9px;
    width:100%; padding:14px 18px; border:1px solid #EEEEEE; border-radius:14px;
    background:#FFF5F5; color:#555555; margin-top:28px;
}
.mc-kickoff span { font-size:13px; font-weight:600; text-transform:uppercase; letter-spacing:.08em; }
.mc-kickoff strong { font-family:'Oswald',sans-serif; font-size:42px; font-weight:700; line-height:1; color:#111111; }
.mc-report-link {
    display:flex; align-items:center; justify-content:center;
    width:100%; padding:16px 18px; border:1px solid rgba(22,163,74,.32);
    border-radius:14px; background:rgba(22,163,74,.08);
    color:#16a34a; font-family:'Oswald',sans-serif; font-size:18px;
    font-weight:700; letter-spacing:.08em; text-transform:uppercase;
    text-decoration:none; margin-top:28px; transition:all .3s ease;
}
.mc-report-link:hover { background:#16a34a; color:#fff; transform:translateY(-1px); box-shadow:0 10px 24px rgba(22,163,74,.18); }
.mc-result-badge {
    display:inline-flex; align-items:center; justify-content:center;
    padding:7px 15px; border-radius:20px;
    font-family:'Oswald',sans-serif; font-size:14px; font-weight:700;
    letter-spacing:.08em; text-transform:uppercase; white-space:nowrap;
}
.mc-result-badge--win  { background:#16a34a; color:#fff; border:1px solid #16a34a; }
.mc-result-badge--draw { background:#D4AF37; color:#111; border:1px solid #D4AF37; }
.mc-result-badge--loss { background:#f10402; color:#fff; border:1px solid #f10402; }
.mc-hero-matchup { display:flex; align-items:center; gap:18px; flex:0 0 132px; margin-top:28px; }
.mc-hero--last .mc-hero-matchup { margin-top:25px; }
.mc-hm-team { display:flex; flex-direction:column; align-items:center; gap:10px; flex:1; }
.mc-hm-team--r { align-items:center; }
.mc-hm-logo {
    width:68px; height:68px; border-radius:50%;
    background:#f5f5f5; border:1px solid #EEEEEE;
    display:flex; align-items:center; justify-content:center; overflow:hidden;
    font-family:'Oswald',sans-serif; font-size:.95rem; font-weight:700; color:#555555;
}
.mc-hm-logo--pol { background:#fff5f5; border-color:#f10402; }
.mc-hm-logo img  { width:48px; height:48px; object-fit:contain; }
.mc-hm-logo span { display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
.mc-hm-name { font-family:'Oswald',sans-serif; font-size:16px; font-weight:600; color:#333333; text-transform:uppercase; text-align:center; max-width:190px; line-height:1.25; }
.mc-hm-score {
    font-family:'Oswald',sans-serif; font-size:72px; font-weight:700;
    line-height:1; letter-spacing:.02em; flex-shrink:0; min-width:126px;
    text-align:center; color:#f10402;
}
.mc-hm-score--pending { color:#f10402; opacity:.42; }
.mc-hm-score--win     { color:#16a34a; }
.mc-hm-score--draw    { color:#D4AF37; }
.mc-hm-score--loss    { color:#f10402; }
.mc-hm-score--neutral { color:#555555; }
.mc-venue-link {
    display:flex; align-items:center; gap:7px; font-size:14px;
    color:#111111; text-decoration:none; margin-top:auto;
    padding:8px 0 0; transition:color .3s ease;
}
.mc-venue-link:hover { color:#f10402; text-decoration:underline; }
.mc-venue-link svg { fill:currentColor; flex-shrink:0; }
.mc-hero-datefoot { font-size:14px; color:#888888; margin-top:auto; }
.mc-hero-empty { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color:#555555; text-align:center; font-size:15px; }
.mc-hero-empty > div { font-size:2rem; }

/* ════════ ROW 2 ════════ */
.mc-row2 { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-bottom:26px; }
.mc-col { display:flex; flex-direction:column; }
.mc-col-title {
    font-family:'Oswald',sans-serif; font-size:1.22rem; font-weight:700;
    letter-spacing:.06em; color:#111; margin:0 0 14px; text-transform:uppercase;
}
.mc-fixture {
    background:#fff; border-radius:14px; padding:26px 30px; margin-bottom:18px;
    border:2px solid #f10402; box-shadow:0 8px 28px rgba(0,0,0,.08);
    display:flex; flex-direction:column; gap:14px;
    transition:box-shadow .3s ease, transform .3s ease;
}
.mc-fixture:last-child { margin-bottom:0; }
.mc-fixture:hover { box-shadow:0 10px 28px rgba(0,0,0,.10); transform:translateY(-2px); }
.mc-fix-meta { display:flex; align-items:center; gap:8px; }
.mc-fix-dt { display:flex; align-items:center; gap:4px; font-size:14px; font-weight:600; color:#111111; flex-wrap:wrap; }
.mc-dot { color:#ddd; }
.mc-fix-time { color:#f10402; font-weight:700; }
.mc-fix-teams { display:grid; grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr); align-items:center; gap:16px; margin-top:4px; }
.mc-ft { display:flex; align-items:center; gap:7px; flex:1; min-width:0; }
.mc-ft--r { justify-content:flex-end; flex-direction:row-reverse; }
.mc-ft-name { font-size:16px; font-weight:500; color:#333333; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mc-fix-vs { font-family:'Oswald',sans-serif; font-size:.8rem; font-weight:700; color:#bbb; justify-self:center; text-align:center; }
.mc-fix-venue { display:flex; align-items:center; gap:7px; font-size:14px; color:#111111; flex-wrap:wrap; margin-top:2px; }
.mc-fix-venue svg { fill:currentColor; flex-shrink:0; }
.mc-maps-link { color:#111111; text-decoration:none; font-weight:600; font-size:13px; white-space:nowrap; transition:color .3s ease; }
.mc-maps-link:hover { color:#f10402; text-decoration:underline; }
.mc-results {
    display:flex; flex-direction:column; background:#fff; border:2px solid #f10402;
    border-radius:14px; padding:10px 20px; box-shadow:0 8px 28px rgba(0,0,0,.08);
}
.mc-result-row {
    display:grid; grid-template-columns:78px minmax(0,1fr); align-items:center; gap:12px;
    background:#fff; border-radius:0; padding:15px 0; border-bottom:1px solid #F0F0F0; box-shadow:none;
}
.mc-result-row:last-child { border-bottom:0; }
.mc-rr-date { display:flex; align-items:center; gap:7px; font-size:13px; color:#555555; white-space:nowrap; font-weight:500; }
.mc-rr-day  { display:inline-block; width:16px; color:#aaa; font-size:.68rem; }
.mc-rr-date-num { color:#333333; font-weight:600; }
.mc-rr-teams { display:grid; grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr); align-items:center; gap:10px; min-width:0; }
.mc-rr-team { display:flex; align-items:center; gap:7px; min-width:0; }
.mc-rr-team--r { justify-content:flex-end; flex-direction:row-reverse; }
.mc-rr-name  { font-size:14px; font-weight:500; color:#333333; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; max-width:none; }
.mc-rr-score {
    font-family:'Inter',sans-serif; font-size:12px; font-weight:700; color:#fff;
    justify-self:center; min-width:40px; text-align:center;
    padding:6px 8px; border-radius:20px; white-space:nowrap;
}
.mc-rr-score--win  { background:#16a34a; color:#fff; }
.mc-rr-score--draw { background:#888888; color:#fff; }
.mc-rr-score--loss { background:#f10402; color:#fff; }
.mc-rr-score--neutral { color:#999; }
.mc-rr-badge { width:24px; height:24px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.68rem; font-weight:700; flex-shrink:0; justify-self:end; }
.mc-rr-badge--win     { background:#16a34a; color:#fff; }
.mc-rr-badge--draw    { background:#888888; color:#fff; }
.mc-rr-badge--loss    { background:#f10402; color:#fff; }
.mc-rr-badge--neutral { background:#EEEEEE; color:#ccc; }
.mc-empty-state { text-align:center; padding:30px 16px; color:#ccc; font-size:.83rem; background:#fff; border-radius:10px; border:1px dashed #EEEEEE; }
.mc-empty-state > div { font-size:1.8rem; margin-bottom:6px; }

/* Row 2 CTA */
.mc-row2-cta { margin-bottom: 56px; }
.mc-all-btn {
    display:block; width:100%; padding:16px 28px; text-align:center;
    background:#f10402; color:#fff; border:2px solid #f10402; border-radius:8px;
    font-family:'Oswald',sans-serif; font-size:1rem; font-weight:700;
    letter-spacing:.04em; text-decoration:none;
    transition: background .2s ease, color .2s ease;
}
.mc-all-btn:hover { background:#fff; color:#f10402; transform:translateY(-1px); }

/* ════════ ROW 3: STATS ════════ */
.mc-stats-row { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-bottom:56px; }
.mc-stat-card {
    background:#fff; border-radius:16px; border:2px solid #f10402; border-top-width:4px;
    box-shadow:0 8px 32px rgba(0,0,0,.08); padding:0;
    display:flex; flex-direction:column; overflow:hidden;
}
.mc-stat-head {
    font-family:'Oswald',sans-serif; font-size:22px; font-weight:700;
    letter-spacing:2.4px; color:#111111; text-transform:uppercase;
    padding:24px 28px 18px; border-bottom:1px solid #EEEEEE;
    background:linear-gradient(180deg,#FFFFFF,#FAFAFA);
}
.mc-stat-card > [data-team] { padding:26px 28px 28px; }
.mc-stat-empty { font-size:.82rem; color:#ccc; text-align:center; padding:10px 0; }
.mc-stat-empty--lg { font-size:.84rem; padding:24px 0; }
.mc-stat-cta {
    display:flex; align-items:center; justify-content:center; width:100%;
    margin-top:18px; padding:12px 16px; border:1px solid #f10402; border-radius:10px;
    font-family:'Oswald',sans-serif; font-size:14px; font-weight:700; letter-spacing:.06em;
    color:#f10402; text-decoration:none; text-transform:uppercase; transition:all .3s ease;
}
.mc-stat-cta:hover { background:#f10402; color:#fff; text-decoration:none; }
.mc-rank-hero {
    display:grid; grid-template-columns:auto 1fr; align-items:center; gap:24px;
    background:#FFF5F5; border:1px solid rgba(241,4,2,.16);
    border-radius:14px; padding:20px 22px; margin-bottom:18px;
}
.mc-rank-box {
    background:#fff; border-radius:14px; padding:14px 18px 12px;
    display:flex; flex-direction:column; align-items:center;
    border:1px solid #EEEEEE; box-shadow:0 6px 18px rgba(0,0,0,.06);
    border-bottom:4px solid #f10402; flex-shrink:0; min-width:116px;
}
.mc-rank-num  { font-family:'Oswald',sans-serif; font-size:88px; font-weight:700; color:#f10402; line-height:.86; }
.mc-rank-box-lbl { font-family:'Oswald',sans-serif; font-size:14px; font-weight:600; color:#888888; text-transform:uppercase; letter-spacing:2px; margin-top:4px; }
.mc-rank-info { display:flex; flex-direction:column; gap:8px; min-width:0; }
.mc-rank-liga { font-family:'Oswald',sans-serif; font-size:24px; font-weight:700; color:#111111; letter-spacing:.04em; text-transform:uppercase; line-height:1.15; }
.mc-rank-pkt  { display:inline-flex; align-items:center; gap:4px; width:max-content; max-width:100%; padding:7px 12px; border-radius:999px; background:#f10402; color:#fff; font-size:14px; font-weight:700; }

/* Mini table */
.mc-mini-table {
    width:100%; border-collapse:separate; border-spacing:0; table-layout:fixed; font-size:14px;
    margin-top:2px; border:1px solid #EEEEEE; border-radius:12px; overflow:hidden;
}
.mc-mini-table thead th {
    background:#111111; color:#fff; padding:10px 12px;
    font-family:'Oswald',sans-serif; font-size:12px; font-weight:700;
    letter-spacing:.08em; text-transform:uppercase; text-align:left;
}
.mc-mini-table thead th:first-child { width:58px; text-align:right; }
.mc-mini-table thead th:last-child { width:70px; text-align:right; }
.mc-mini-table tbody tr { border-bottom:1px solid #EEEEEE; }
.mc-mini-table tr:last-child { border-bottom:none; }
.mc-mini-pol { background:#f10402; }
.mc-mini-pol .mc-mt-pl, .mc-mini-pol .mc-mt-v, .mc-mini-pol .mc-mt-pkt, .mc-mini-pol .mc-mt-name { color:#fff !important; font-weight:700; }
.mc-mt-pl  { color:#888888; font-size:14px; padding:11px 12px; text-align:right; width:42px; }
.mc-mt-v   { color:#555; padding:11px 8px; min-width:0; }
.mc-mt-pkt { font-weight:700; color:#111; padding:11px 14px; text-align:right; white-space:nowrap; }
.mc-mt-team { display:flex; align-items:center; gap:8px; min-width:0; }
.mc-mt-name { display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#555; }
.mc-mt-logo { width:18px; height:18px; object-fit:contain; flex-shrink:0; background:#fff; border-radius:50%; padding:2px; }

/* Form dots */
.mc-form-dots {
    display:grid; grid-template-columns:repeat(5, minmax(0, 1fr));
    gap:12px; padding:22px 20px; background:#FFF5F5;
    border:1px solid rgba(241,4,2,.16); border-radius:14px;
}
.mc-form-dot {
    width:68px; height:68px; border-radius:50%; flex-shrink:0;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px;
    font-family:'Oswald',sans-serif; font-weight:700;
    cursor:default; transition:transform .15s; justify-self:center;
    box-shadow:0 7px 18px rgba(0,0,0,.10);
}
.mc-form-dot:hover { transform:scale(1.1); }
.mc-form-dot--win     { background:#16a34a; color:#fff; }
.mc-form-dot--draw    { background:#888888; color:#fff; }
.mc-form-dot--loss    { background:#f10402; color:#fff; }
.mc-form-dot--neutral { background:#EEEEEE; color:#bbb; }
.mc-form-letter { font-size:23px; line-height:.9; }
.mc-form-dot-score { font-family:'Inter',sans-serif; font-size:14px; font-weight:700; line-height:1; }
.mc-form-summary {
    font-size:16px; color:#555555; border:1px solid #EEEEEE;
    padding:14px 16px; margin-top:16px; border-radius:12px;
    background:#fff; text-align:center;
}
.mc-form-summary strong { color:#f10402; font-weight:700; }
.mc-form-list {
    display:flex; flex-direction:column; gap:0; margin-top:16px;
    border:1px solid #EEEEEE; border-radius:12px; overflow:hidden;
}
.mc-form-row  { display:grid; grid-template-columns:30px minmax(0,1fr); align-items:center; gap:12px; font-size:14px; }
.mc-form-list .mc-form-row { padding:13px 14px; border-bottom:1px solid #EEEEEE; }
.mc-form-list .mc-form-row:last-child { border-bottom:0; }
.mc-form-badge { width:26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.72rem; font-weight:700; flex-shrink:0; justify-self:center; }
.mc-form-badge--win     { background:#16a34a; color:#fff; }
.mc-form-badge--draw    { background:#888888; color:#fff; }
.mc-form-badge--loss    { background:#f10402; color:#fff; }
.mc-form-badge--neutral { background:#EEEEEE; color:#bbb; }
.mc-form-match {
    display:grid; grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr);
    align-items:center; gap:12px; min-width:0;
}
.mc-form-team { display:flex; align-items:center; gap:8px; min-width:0; }
.mc-form-team--r { justify-content:flex-end; flex-direction:row-reverse; }
.mc-form-team-name { color:#555555; font-size:15px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }
.mc-form-score {
    font-family:'Oswald',sans-serif; font-weight:700; font-size:1.16rem; color:#111;
    justify-self:center; width:68px; background:#F5F5F5;
    padding:6px 10px; border-radius:9px; text-align:center;
}

/* ════════ ROW 4: TORJÄGER CITY CARDS ════════ */
.mc-scorers-section { margin-bottom:48px; }
.mc-scorers-title {
    display:inline-block; margin:0 0 32px; padding-bottom:14px;
    font-family:'Oswald',sans-serif; font-size:36px; font-weight:700;
    text-transform:uppercase; letter-spacing:3px; color:#111111; position:relative;
}
.mc-scorers-title::after { content:''; position:absolute; left:0; bottom:0; width:50px; height:3px; background:#f10402; }
.tc-grid {
    display:grid; grid-template-columns:repeat(3,minmax(0,268px));
    justify-content:center; gap:34px; padding-top:30px;
}
.tc-wrap { position:relative; width:100%; max-width:268px; }
.tc-photo-wrap {
    position:absolute; inset:0; width:100%; height:100%; border:0;
    background: linear-gradient(180deg, #f10402 0%, #8f001b 78%);
    z-index:1; display:flex; align-items:center; justify-content:center; overflow:hidden;
}
.tc-photo { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; }
.tc-photo-wrap svg { display:none; }
.tc-jersey {
    position:absolute; left:50%; top:44%; transform:translate(-50%,-50%);
    width:86px; height:86px; border-radius:50%;
    background:rgba(255,255,255,.12); color:rgba(255,255,255,.92); z-index:4;
    display:flex; align-items:center; justify-content:center;
    font-family:'Oswald',sans-serif; font-size:26px; font-weight:700;
    border:1px solid rgba(255,255,255,.22); box-shadow:0 12px 30px rgba(0,0,0,.18);
}
.tc-card {
    width:100%; max-width:268px; height:367px;
    background: linear-gradient(180deg, #f10402 0%, #740015 100%);
    border:1px solid rgba(255,255,255,.16); border-radius:16px; border-bottom:4px solid #fff;
    padding:16px 18px 20px; display:flex; flex-direction:column; gap:10px;
    position:relative; overflow:hidden; box-shadow:0 12px 32px rgba(0,0,0,.22);
    transition:transform .3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.tc-card::before {
    content:''; position:absolute; inset:0; pointer-events:none; z-index:2;
    background: linear-gradient(180deg, transparent 0%, transparent 58%, rgba(0,0,0,.82) 100%);
}
.tc-card:hover { transform:translateY(-12px); box-shadow:0 18px 42px rgba(116,0,21,.32), 0 8px 26px rgba(241,4,2,.24); }
.tc-badge-row { display:flex; justify-content:space-between; align-items:flex-start; position:relative; z-index:3; }
.tc-goals-stack { display:flex; flex-direction:column; align-items:center; gap:8px; margin-top:-8px; margin-right:-2px; }
.tc-goals-num {
    font-family:'Oswald',sans-serif; font-size:58px; font-weight:700;
    color:#fff; line-height:.9; letter-spacing:-1px; text-shadow:0 4px 18px rgba(0,0,0,.28);
}
.tc-flag {
    width:32px; height:32px; border-radius:50%;
    border:2px solid rgba(255,255,255,.92); box-shadow:0 4px 12px rgba(0,0,0,.28);
    display:block; overflow:hidden; background:#fff;
}
.tc-flag--pl { background:linear-gradient(180deg,#fff 0 50%,#dc143c 50%); }
.tc-flag--d,.tc-flag--de { background:linear-gradient(180deg,#000 0 33.33%,#dd0000 33.33% 66.66%,#ffce00 66.66%); }
.tc-flag--ua { background:linear-gradient(180deg,#005bbb 0 50%,#ffd500 50%); }
.tc-flag--nl { background:linear-gradient(180deg,#ae1c28 0 33.33%,#fff 33.33% 66.66%,#21468b 66.66%); }
.tc-flag--co { background:linear-gradient(180deg,#fcd116 0 50%,#003893 50% 75%,#ce1126 75%); }
.tc-flag--al { background:#e41e20; position:relative; }
.tc-flag--al::after { content:""; position:absolute; inset:10px; background:#111; clip-path:polygon(50% 0,62% 36%,100% 36%,69% 58%,80% 100%,50% 72%,20% 100%,31% 58%,0 36%,38% 36%); }
.tc-flag--bh,.tc-flag--ba { background:linear-gradient(135deg,#002395 0 58%,#fecb00 58% 78%,#fff 78%); }
.tc-flag--hr { background:linear-gradient(180deg,#ff0000 0 33.33%,#fff 33.33% 66.66%,#171796 66.66%); }
.tc-flag--rs { background:linear-gradient(180deg,#c6363c 0 33.33%,#0c4076 33.33% 66.66%,#fff 66.66%); }
.tc-flag--tr { background:#e30a17; position:relative; }
.tc-flag--tr::after { content:""; position:absolute; width:14px; height:14px; border-radius:50%; left:7px; top:7px; box-shadow:-4px 0 0 2px #fff; }
.tc-flag--it { background:linear-gradient(90deg,#009246 0 33.33%,#fff 33.33% 66.66%,#ce2b37 66.66%); }
.tc-flag--fr { background:linear-gradient(90deg,#0055a4 0 33.33%,#fff 33.33% 66.66%,#ef4135 66.66%); }
.tc-flag--ro { background:linear-gradient(90deg,#002b7f 0 33.33%,#fcd116 33.33% 66.66%,#ce1126 66.66%); }
.tc-flag--cz { background:linear-gradient(180deg,#fff 0 50%,#d7141a 50%); position:relative; }
.tc-flag--cz::after { content:""; position:absolute; inset:0; background:#11457e; clip-path:polygon(0 0,58% 50%,0 100%); }
.tc-rank-badge {
    width:34px; height:34px; border-radius:50%; flex-shrink:0;
    display:flex; align-items:center; justify-content:center;
    font-family:'Oswald',sans-serif; font-size:.9rem; font-weight:700;
    border:1px solid rgba(255,255,255,.32); box-shadow:0 4px 12px rgba(0,0,0,.2);
}
.tc-rank--gold   { background:#D4AF37; color:#111; }
.tc-rank--silver { background:#A8A9AD; color:#111; }
.tc-rank--bronze { background:#CD7F32; color:#111; }
.tc-rank--default{ background:rgba(255,255,255,.14); color:#fff; }
.tc-info {
    text-align:center; margin-top:auto; position:relative; z-index:3;
    padding-top:10px; min-height:92px;
    display:flex; flex-direction:column; align-items:center; justify-content:flex-end;
}
.tc-firstname {
    display:block; font-family:'Inter',sans-serif; font-size:14px;
    font-weight:800; color:#fff; text-transform:uppercase; letter-spacing:.02em;
    line-height:1.2; font-style:italic; text-shadow:0 3px 12px rgba(0,0,0,.35);
}
.tc-lastname {
    display:block; font-family:'Oswald',sans-serif; font-size:32px;
    font-weight:700; color:#fff; text-transform:uppercase; letter-spacing:.01em;
    line-height:.95; font-style:italic; text-shadow:0 4px 14px rgba(0,0,0,.42);
}
.tc-underline { width:42px; height:4px; background:#fff; border-radius:4px; margin:10px auto 0; box-shadow:0 0 14px rgba(255,255,255,.48); }
.tc-club { display:none; }

/* ════════ CTA BAR ════════ */
.mc-cta-bar { text-align:center; padding:2px 0 4px; }
.mc-cta-btn {
    display:block; width:min(520px,100%); margin:0 auto; padding:17px 32px;
    background:#f10402; color:#fff; border-radius:8px;
    font-family:'Oswald',sans-serif; font-size:1.05rem; font-weight:700;
    letter-spacing:.05em; text-decoration:none;
    transition:background .18s, transform .18s; box-shadow: 0 4px 16px rgba(241,4,2,.3);
}
.mc-cta-btn:hover { background:#f10402; transform:translateY(-1px); }

/* ════════ NO DATA ════════ */
.mc-no-data { text-align:center; padding:60px 20px; color:#aaa; }
.mc-no-data > div { font-size:2.5rem; margin-bottom:12px; }
.mc-no-data a { color:#f10402; }

/* ════════ FADE-IN ════════ */
@keyframes mcFadeIn { from{opacity:0;transform:translateY(5px)} to{opacity:1;transform:translateY(0)} }
.mc-fadein { animation: mcFadeIn .22s ease forwards; }

/* ════════ RESPONSIVE ════════ */
@media(max-width:960px){
    .mc-hero-row  { grid-template-columns:1fr; }
    .mc-row2      { grid-template-columns:1fr; }
    .mc-stats-row { grid-template-columns:1fr; }
    .mc-hero      { min-height:220px; }
    .tc-grid      { grid-template-columns:repeat(3,minmax(0,220px)); gap:24px; }
    .tc-card      { max-width:220px; }
}
@media(max-width:680px){
    .mc-section { padding:56px 0 72px; }
    .mc-container { padding:0 16px; }
    .mc-btn { padding:8px 14px; font-size:.78rem; flex:1; justify-content:center; }
    .mc-switch { width:100%; }
    .mc-hero { padding:24px 20px 20px; min-height:300px; }
    .mc-hm-score { font-size:3.2rem; min-width:88px; }
    .mc-kickoff strong { font-size:2rem; }
    .mc-hm-logo { width:50px; height:50px; }
    .mc-hm-logo img { width:34px; height:34px; }
    .mc-fixture { padding:22px 18px; }
    .mc-fix-teams { grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr); gap:10px; }
    .mc-ft-name { font-size:14px; }
    .mc-results { padding:14px 16px; }
    .mc-results .mc-result-row:nth-child(n+6) { display:none; }
    .mc-result-row { grid-template-columns:minmax(0,1fr); gap:10px 12px; padding:15px 0; align-items:center; }
    .mc-rr-date { grid-column:1; grid-row:1; font-size:13px; gap:7px; }
    .mc-rr-teams { grid-column:1 / -1; grid-row:2; grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr); gap:10px; width:100%; }
    .mc-rr-team { gap:7px; }
    .mc-rr-name { font-size:14px; max-width:none; }
    .mc-rr-score { min-width:46px; padding:7px 9px; font-size:12px; }
    .mc-form-list .mc-form-row { padding:12px 10px; }
    .mc-form-row { grid-template-columns:28px minmax(0,1fr); gap:8px; }
    .mc-form-match { grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr); gap:8px; }
    .mc-form-team { gap:5px; }
    .mc-form-team-name { font-size:12px; }
    .mc-form-score { width:48px; padding:5px 6px; font-size:1rem; }
    .tc-grid { grid-template-columns:repeat(2,minmax(0,1fr)); padding-top:20px; gap:16px; }
    .tc-photo-wrap { height:100%; }
    .tc-photo-wrap svg { width:148px; height:196px; }
    .tc-card { height:304px; padding:12px 12px 14px; }
    .tc-goals-num { font-size:2.35rem; }
    .tc-flag { width:26px; height:26px; }
    .tc-lastname { font-size:1.1rem; }
}
@media(max-width:420px){
    .mc-hm-score { font-size:2.3rem; min-width:64px; }
    .mc-kickoff { padding:11px 12px; gap:6px; }
    .mc-report-link { padding:13px 14px; font-size:15px; }
    .mc-kickoff strong { font-size:1.7rem; }
    .tc-grid { grid-template-columns:1fr 1fr; }
    .tc-photo-wrap { height:100%; }
    .tc-photo-wrap svg { width:130px; height:174px; }
    .tc-card { height:286px; }
    .tc-goals-num { font-size:2rem; }
    .mc-hm-name { font-size:13px; max-width:120px; }
    .mc-result-badge { font-size:12px; padding:6px 10px; }
}
