Leader cards (Best attack/defense, Most clean sheets) now rotate through every
team tied on the headline metric instead of showing only the top one, and three
new cards are added: Most wins, Most goals conceded, Best goal difference.
- group by the metric value alone; order within the group by existing tiebreakers
- auto-advance (3.5s), pause on hover/focus, off under prefers-reduced-motion
- discrete edge arrows with a full-height side click strip; wrap-around
- dots indicator up to 8 tied teams, else an i/n counter; single team = plain card
- bump APP_VERSION to v1.0.2
- Single source of truth: assets/js/i18n.js line 9
- Document when to bump (after notable changes/deploys)
- Document how to bump (one-liner, semantic commit)
- Explain rationale (explicit versioning, audit trail)
- Add APP_VERSION constant for easy version bumping
- Update EN/PT footer to show version instead of JSON reference
- Simplifies footer maintenance: bump one line in i18n.js
- Edge fades like the header tabs: chips moved into an inner scroll track so
the fade mask only affects the chips, leaving the pill background/rounded
ends crisp. updateSubnavFades toggles fade-left/right from the track's
overflow (on track scroll, resize, setActiveChip, init).
- Scrollspy no longer jumps when a chip is clicked: the page-scroll spy is
suppressed for the duration of the programmatic smooth-scroll (700ms; 0 under
reduced-motion), so the clicked chip stays active instead of flipping back to
the old section mid-animation and forward again.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Brings the post-Cup Stats screen to master: degradation engine + fault-tolerant
loadData, sticky scrollspy sub-nav, verdict hero + goals-by-round chart, final
ranking 1-48, favorite-row highlight, team/match record cards, format-48 debuts
band, and the team comparator. Stage E (in-tab archive) skipped; data layers
G/H/I + a 2nd polish remain (see .agents/TODO.md).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>