/* The footer's link block (every league, table and stats market), injected into all four pages by scripts/prerender/build.mjs.
   Colours fall back so the same file works on the app page and on About / Privacy / Support. */
.sf-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px 28px; margin: 22px 0 6px; text-align: left; }
.sf-nav summary { font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--text-faint, var(--faint, #a3b0c0)); font-weight: 600; list-style: none; cursor: pointer; }
.sf-nav summary::-webkit-details-marker { display: none; }
.sf-nav ul { list-style: none; margin: 8px 0 0; padding: 0; }
.sf-nav a { display: block; padding: 3px 0; font-size: 13.5px; color: var(--text-muted, var(--muted, #b4c0ce)); text-decoration: none; }
.sf-nav a:hover { color: var(--text, #e8eef5); }
@media (min-width: 861px) { .sf-nav summary { pointer-events: none; cursor: default; } .sf-nav details:first-child ul { columns: 2; column-gap: 20px; } .sf-nav details:nth-child(2) ul { columns: 2; column-gap: 20px; } }
@media (max-width: 860px) {
  .sf-nav { grid-template-columns: minmax(0, 1fr); gap: 0; margin: 14px 0 4px; }
  .sf-nav details { border-top: 1px solid var(--border, #233040); }
  .sf-nav summary { display: flex; justify-content: space-between; align-items: center; min-height: 44px; font-size: 13px; }
  .sf-nav summary::after { content: "+"; color: var(--accent, #3ccbff); font-size: 18px; }
  .sf-nav details[open] summary::after { content: "–"; }
  .sf-nav ul { margin: 0 0 8px; }
  .sf-nav a { padding: 8px 0; }
}
