/* Home page. Builds on theme.css. */
.live-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 14px; }

/* Live card: whole card is a link (overlay anchor). Compact on phones (teams + one line); this over and the
   batters only show on wider screens, where cards sit two-up. */
.lc { position: relative; display: grid; gap: 10px; padding: 14px 16px; transition: border-color .2s; }
.lc:hover { border-color: color-mix(in srgb, var(--ink) 30%, var(--line)); }
.lc-link { position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.lc--loading { min-height: 220px; place-items: center; }
.lc-top { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: .78rem; color: var(--muted); }
.lc-comp { font-family: var(--display); font-stretch: var(--narrow); font-weight: 900; font-size: .9rem; color: var(--ink); letter-spacing: .02em; }
.lc-tl { flex: 1 1 100%; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lc-demo { margin-left: auto; font-size: .72rem; }
.lc-teams { display: grid; gap: 6px; }
.lc-t { display: flex; align-items: baseline; gap: 10px; }
.lc-t .dot, .lc-t .flag { align-self: center; }
.lc-t .nm { font-weight: 700; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lc-t .sc { margin-left: auto; font-weight: 700; font-size: 1.05rem; }
.lc-t .ov { color: var(--muted); font-size: .8rem; min-width: 62px; text-align: right; }
.lc-t--bat .nm, .lc-t--bat .sc { font-family: var(--display); font-size: 1.3rem; font-weight: 800; letter-spacing: -.015em; }
.lc-t--dim { color: var(--muted); }
.lc-head { padding-top: 8px; border-top: 1px solid var(--line-2); font-weight: 600; }
.lc-head b { font-family: var(--display); font-stretch: var(--narrow); font-weight: 900; color: var(--brand); }
.lc-head small { display: block; color: var(--muted); font-size: .8rem; font-weight: 500; margin-top: 2px; }
.lc-over small { display: block; font-size: .78rem; color: var(--muted); font-weight: 700; margin-bottom: 6px; }
.lc-crease { font-size: .85rem; color: var(--ink-2); line-height: 1.6; }
.lc-go { font-size: .82rem; font-weight: 800; color: var(--brand-2); }
@media (max-width: 760px) {
  .live-grid { gap: 10px; }
  .lc-tl, .lc-over, .lc-crease, .lc-go, .lc-head small { display: none; }
}
.est { display: inline-block; padding: 0 4px; border-radius: 4px; font-size: .68rem; font-weight: 700; border: 1px dashed currentColor; }

.home-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items: start; }
.res-h { font-size: .78rem; font-weight: 800; color: var(--muted); margin: 10px 0 2px; }
.res-h:first-of-type { margin-top: 0; }
@media (max-width: 760px) { .home-cols { grid-template-columns: 1fr; } }
.lc > * { min-width: 0; }
.lc-t .sc, .lc-t--bat .nm { font-stretch: var(--narrow); }
.lc-t .sc { font-family: var(--display); }

/* Fixtures & results browser (merged from the old /fixtures page). */
#fixtures { display: grid; gap: 12px; scroll-margin-top: 80px; }
.filters { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.filters select { padding: 6px 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); color: var(--ink); font-size: .85rem; }
.fx-t--tbc .nm { color: var(--muted); font-weight: 500; font-style: italic; }
