.daily-page { background: var(--bg, #f2f6ee); color: var(--text, #122016); }
.daily-main { padding-block: 28px 64px; max-width: 1180px; }
.daily-trail { display:flex; flex-wrap:wrap; gap:12px; align-items:center; font-size:14px; }
.daily-trail a { text-decoration:underline; text-underline-offset:4px; }
.daily-intro { padding-block:24px 20px; }
.daily-intro h1 { font-size:clamp(27px, 3.5vw, 42px); line-height:1.35; letter-spacing:-.02em; margin:0 0 12px; }
.daily-intro p { max-width:72ch; margin:6px 0; }
.daily-update { color:var(--muted); font-size:14px; }
.daily-main section { margin-top:32px; padding:0; }
.daily-main h2 { font-size:22px; line-height:1.5; margin:0 0 14px; }
.daily-table-scroll { overflow-x:auto; }
.daily-totals { width:100%; border-collapse:collapse; font-size:16px; font-variant-numeric:tabular-nums; }
.daily-totals caption { text-align:left; font-size:14px; color:var(--muted); padding-bottom:10px; }
.daily-totals th,.daily-totals td { text-align:left; padding:11px 16px; border-bottom:1px solid var(--line); }
.daily-totals thead { background:#e4eddd; }
.daily-matches { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.daily-match { padding:14px 18px; border:1px solid var(--line); border-radius:12px; background:#fafcf7; }
.daily-match-meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px 16px; color:var(--muted); font-size:13px; }
.daily-match-meta strong { color:#2d541e; }
.daily-match-meta time { margin-left:auto; font-variant-numeric:tabular-nums; }
.daily-match-main { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:center; gap:24px; margin-top:9px; }
.daily-scoreline { display:grid; grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr); align-items:center; gap:8px; }
.daily-team { display:flex; align-items:center; justify-content:center; gap:8px; min-width:0; font-size:16px; line-height:1.45; overflow-wrap:anywhere; }
.daily-team img { object-fit:contain; flex:0 0 28px; }
.daily-score { text-align:center; display:flex; flex-direction:column; line-height:1.3; font-variant-numeric:tabular-nums; }
.daily-score b { font-size:27px; color:#173c31; }
.daily-score small { font-size:12px; color:var(--muted); margin-top:5px; }
.daily-heads { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.daily-head { font-size:12px; display:flex; flex-direction:column; align-items:center; padding:6px 3px; border-radius:6px; line-height:1.6; }
.daily-head b { font-size:14px; }
.daily-head.hit { background:#e6efd9; color:#305308; }
.daily-head.miss { background:#f5e9e2; color:#874022; }
.daily-head.pending { background:#e8eef5; color:#30556f; }
.daily-method { color:var(--muted); max-width:75ch; font-size:14px; }
.daily-method p { margin:8px 0; }
.daily-method a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.daily-warning { padding:14px 18px; background:#f5ecd9; color:#644811; border-radius:10px; max-width:75ch; }
.daily-archive { list-style:none; padding:0; margin:8px 0 30px; border-top:1px solid var(--line); }
.daily-archive a { display:grid; grid-template-columns:170px 1fr auto; gap:16px; align-items:center; padding:22px 8px; border-bottom:1px solid var(--line); transition:background .18s ease-out; }
.daily-archive a:hover { background:#e4eddd; }
.daily-archive time { font-size:22px; font-weight:700; font-variant-numeric:tabular-nums; }
.daily-archive span { color:var(--muted); }
.daily-archive b { font-size:14px; color:var(--accent); }
.daily-page a:focus-visible { outline:3px solid #3f7111; outline-offset:4px; border-radius:4px; }
@media (max-width:850px) {
  .daily-match-main { grid-template-columns:1fr; gap:12px; }
  .daily-heads { gap:8px; }
  .daily-head { flex-direction:row; justify-content:center; gap:8px; }
  .daily-archive a { grid-template-columns:1fr auto; gap:4px 12px; }
  .daily-archive span { grid-row:2; font-size:14px; }
  .daily-archive b { grid-column:2; grid-row:1 / 3; }
}
@media (max-width:480px) {
  .daily-main { padding-top:18px; }
  .daily-match { padding:12px; }
  .daily-match-meta { gap:5px 12px; }
  .daily-match-meta time { width:100%; margin:0; }
  .daily-scoreline { grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr); gap:5px; }
  .daily-team { flex-direction:column; font-size:15px; gap:5px; }
  .daily-heads { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .daily-totals th,.daily-totals td { padding:10px 8px; font-size:14px; }
  .daily-archive time { font-size:20px; }
}
@media (prefers-reduced-motion:reduce) { .daily-archive a { transition:none; } }
