/* Previously Sports — Matchup module (v20261002a)
   In-article matchup box + team tags. Bright, inviting, premium.
   Works for any sport: soccer shows W-D-L, US sports show W-L.
   Usage: <section class="matchup"> ... </section> then <div class="team-tags"> ... </div> */

.matchup{max-width:720px;margin:8px 0 26px;background:linear-gradient(180deg,#17171b,#121215);border:1px solid var(--line,#2a2a30);border-radius:16px;overflow:hidden}
.matchup__head{padding:18px 22px 0;display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.matchup__kick{font-family:Arial,Helvetica,sans-serif;font-size:11px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:#ffd9a8}
.matchup__date{font-size:12px;color:var(--faint,#8b8b94)}
.matchup__vs{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;padding:18px 22px 6px}
.matchup__team{text-align:center;min-width:0}
.matchup__team img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:16px;padding:8px;display:block;margin:0 auto 10px;box-shadow:0 6px 20px rgba(0,0,0,.45)}
.matchup__team .nm{font-family:Georgia,serif;font-size:19px;font-weight:700;color:#f4efe6}
.matchup__team .rc{font-size:13px;color:var(--muted,#a39c8e);margin-top:4px}
.matchup__team .rc b{color:#f4efe6}
.matchup__x{font-family:Georgia,serif;font-size:15px;letter-spacing:.2em;color:var(--faint,#8b8b94);text-transform:uppercase}
.matchup__form{display:flex;justify-content:center;gap:18px;padding:10px 22px 4px;flex-wrap:wrap}
.matchup__form .frow{display:flex;align-items:center;gap:7px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted,#a39c8e)}
.fdot{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:800;color:#fff}
.fm-w{background:#1f9d55}.fm-d{background:#6b7280}.fm-l{background:#d33f2e}
.matchup__meta{text-align:center;font-size:13px;color:var(--muted,#a39c8e);padding:12px 22px 4px;line-height:1.6}
.matchup__meta b{color:#f4efe6}
.matchup__cta{display:flex;gap:10px;justify-content:center;padding:14px 22px 18px;flex-wrap:wrap}
.matchup__cta a{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:12px 20px;border-radius:999px;border:1px solid #3a3a42;color:#f4efe6;transition:border-color .15s,color .15s}
.matchup__cta a:hover{border-color:#e03131;color:#ffd9a8}
.matchup__src{text-align:center;font-size:11px;color:var(--faint,#6f6a60);padding:0 22px 16px;letter-spacing:.04em}

.team-tags{max-width:720px;margin:0 0 26px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.team-tags .tlabel{font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--muted,#a39c8e);margin-right:4px}
.team-tags a{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#f4efe6;border:1px solid var(--line,#2a2a30);background:var(--surface,#17171b);padding:8px 14px 8px 8px;border-radius:999px}
.team-tags a img{width:26px;height:26px;object-fit:contain;background:#fff;border-radius:50%;padding:3px}
.team-tags a:hover{border-color:#e03131}
@media(max-width:480px){
  .matchup__team img{width:58px;height:58px}
  .matchup__team .nm{font-size:16px}
  .matchup__vs{padding:14px 14px 4px}
}

/* ============ LIGHT THEME (prefers-color-scheme) — color-only overrides ============ */
@media (prefers-color-scheme: light) {
  .matchup {
    background: linear-gradient(180deg, #ffffff, #f0ece1);
    border-color: rgba(30,26,20,.14);
  }
  .matchup__kick { color: #8a6a2f; }
  .matchup__team img { box-shadow: 0 6px 20px rgba(74,60,40,.16); }
  .matchup__team .nm { color: #1e1a14; }
  .matchup__team .rc { color: rgba(30,26,20,.66); }
  .matchup__team .rc b { color: #1e1a14; }
  .matchup__x { color: rgba(30,26,20,.45); }
  .matchup__form .frow { color: rgba(30,26,20,.66); }
  .fm-l { background: #ec4634; }
  .matchup__meta { color: rgba(30,26,20,.66); }
  .matchup__meta b { color: #1e1a14; }
  .matchup__cta a {
    border-color: rgba(30,26,20,.14);
    color: #1e1a14;
  }
  .matchup__cta a:hover { color: #8a6a2f; }
  .team-tags a {
    color: #1e1a14;
    border-color: rgba(30,26,20,.14);
    background: #ffffff;
  }
  /* NOTE: --muted/--faint/--line/--surface fallbacks are undefined here, so the
     light values above are explicit. .fm-w/.fm-d form dots untouched. */
}
