:root{--navy:#071525;--navy2:#123056;--gold:#d7b36a;--gold2:#f0e2c2;--paper:#f6f3ec;--ink:#182232;--muted:#6d6458;--line:#e7e0d2;--live:#c4372f;--card:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(1120px,calc(100% - 32px));margin:0 auto}
.site-head{position:sticky;top:0;z-index:30;background:rgba(7,21,37,.96);color:#f7f2e8;border-bottom:1px solid rgba(215,179,106,.45)}
.head-in{display:flex;align-items:center;gap:18px;min-height:68px;position:relative}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto}
.brand img{width:42px;height:42px;border-radius:12px;object-fit:cover}
.brand strong{display:block;font-size:18px;letter-spacing:.08em}
.brand em{font-style:normal;color:var(--gold);font-size:12px;letter-spacing:.28em}
.nav{display:flex;gap:6px;align-items:center}
.nav a{text-decoration:none;color:#f4efe6;font-size:14px;padding:6px 10px;border-radius:999px}
.nav a.on,.nav a:hover{background:rgba(215,179,106,.16);color:var(--gold2)}
.navtog,.navbtn{display:none}
.hero{background:radial-gradient(900px 280px at 90% 0%,rgba(215,179,106,.28),transparent 60%),linear-gradient(145deg,#071525,#16325c 68%,#0c1c33);color:#f8f4ec;padding:58px 0 48px}
.kicker{margin:0;color:var(--gold);letter-spacing:.14em;font-size:13px}
.hero h1{margin:10px 0 8px;font-size:clamp(36px,6vw,68px);line-height:1.05;letter-spacing:.04em}
.lede{max-width:640px;margin:0;font-size:17px;color:#efe6d4}
.block{padding:8px 0 22px}
.block h2,.about h2,.faq h2{font-size:22px;margin:18px 0 12px}
.block-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.block-head a{color:#8a6230;text-decoration:none;font-size:14px}
.league-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}
.league-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;text-decoration:none;box-shadow:0 10px 24px rgba(18,36,63,.04)}
.league-card i{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-style:normal;font-weight:700}
.league-card span{font-weight:700}
.league-card em{font-style:normal;color:var(--muted);font-size:12px}
.mlist{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.mrow{display:grid;grid-template-columns:64px 78px minmax(0,1fr) 84px minmax(0,1fr) 72px;gap:8px;align-items:center;padding:12px 14px;text-decoration:none;border-top:1px solid var(--line)}
.mlist .mrow:first-child{border-top:0}
.mrow:hover{background:#fbf8f2}
.mtime{font-variant-numeric:tabular-nums;font-weight:700}
.mleague{font-size:12px;color:#8a6230;background:#f6edd9;border-radius:999px;text-align:center;padding:2px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mteam{display:flex;align-items:center;gap:8px;min-width:0}
.mteam.away{justify-content:flex-end;text-align:right}
.mteam em{font-style:normal;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tlogo{width:28px;height:28px;border-radius:50%;object-fit:cover;background:#efe8da;flex:none}
.mscore{display:flex;justify-content:center;align-items:center;gap:4px;font-weight:800;font-variant-numeric:tabular-nums}
.mscore .vs{color:var(--muted);font-weight:700}
.mstate{font-size:12px;text-align:center;border-radius:999px;padding:3px 0}
.mstate.live{color:#fff;background:var(--live)}
.mstate.soon{color:#24506e;background:#e7f1f6}
.mstate.end{color:#666;background:#f0ece6}
.split{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-bottom:10px}
.vlist,.nlist{display:flex;flex-direction:column;gap:8px}
.vitem,.nitem{display:flex;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;text-decoration:none}
.vitem b,.nitem b,.card b,.news-card b{display:block;font-weight:650}
.vitem small,.nitem small,.card small,.news-card small{color:var(--muted)}
.nitem img{width:96px;height:64px;object-fit:cover;border-radius:8px;flex:none}
.about,.faq{padding-bottom:12px}
.about p{margin:0 0 10px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:8px}
.faq summary{cursor:pointer;font-weight:700}
.site-foot{margin-top:20px;background:var(--navy);color:#d9d0c2;padding:28px 0;text-align:center}
.site-foot p{margin:4px 0}
.sheet{padding:22px 0 32px}
.crumbs{color:var(--muted);font-size:13px}
.crumbs a{color:#8a6230;text-decoration:none}
.crumbs i{margin:0 6px;font-style:normal}
.sheet-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.sheet-head h1,.article h1,.match-hero h1{font-size:clamp(26px,4vw,40px);line-height:1.25;margin:6px 0}
.dates{display:flex;gap:8px;align-items:center}
.dates a,.dates strong{background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;text-decoration:none}
.sub,.lead{color:#3d4654}
.empty{background:#fff;border:1px dashed var(--line);border-radius:12px;padding:18px;color:var(--muted)}
.scoreboard{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}
.scoreboard .side{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.scoreboard .tlogo{width:54px;height:54px}
.scoreboard .mid{text-align:center}
.scoreboard .mid b{font-size:28px}
.signals{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.signals a{background:var(--navy);color:var(--gold2);text-decoration:none;border-radius:999px;padding:10px 16px}
.cards,.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.card,.news-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;text-decoration:none;display:flex;flex-direction:column;gap:8px}
.news-card img{width:100%;height:140px;object-fit:cover;border-radius:10px}
.tag{align-self:flex-start;font-size:12px;color:#8a6230;background:#f6edd9;border-radius:999px;padding:2px 8px}
.content p{font-size:17px}
.content img{margin:12px auto;border-radius:12px}
.pager{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:18px}
.pager a{text-decoration:none;background:var(--navy);color:#fff;border-radius:999px;padding:8px 14px}
@media(max-width:980px){
  .league-grid{grid-template-columns:repeat(4,1fr)}
  .cards,.news-grid{grid-template-columns:1fr 1fr}
  .split{grid-template-columns:1fr}
}
@media(max-width:760px){
  .navbtn{display:flex;flex-direction:column;gap:5px;width:42px;height:42px;align-items:center;justify-content:center}
  .navbtn i{display:block;width:18px;height:2px;background:#f4efe6}
  .nav{display:none;position:absolute;top:68px;left:0;right:0;background:#071525;flex-direction:column;align-items:stretch;padding:8px 16px 16px}
  .navtog:checked ~ .nav{display:flex}
  .mrow{grid-template-columns:52px 1fr auto;grid-template-areas:"time league state" "home score away";padding:10px}
  .mtime{grid-area:time}
  .mleague{grid-area:league;justify-self:start}
  .mstate{grid-area:state}
  .mteam.home{grid-area:home}
  .mscore{grid-area:score}
  .mteam.away{grid-area:away}
  .league-grid,.cards,.news-grid{grid-template-columns:1fr 1fr}
  .hero{padding:36px 0 28px}
  .scoreboard{grid-template-columns:1fr;justify-items:center}
}
