**Section toggles left-aligned**
- Replace QToolButton with flat QPushButton for all section headers;
QPushButton properly respects text-align: left in stylesheets
**Pagination via "Load More" button**
- QTreeWidget expands to fit all items so the scrollbar-based infinite
scroll never triggered; replaced with an explicit "Load more…" button
that appears when has_more is true and emits loadMoreRequested
**Favourite button reflects actual state**
- MainWindow preloads fav artist IDs on session restore (getFavArtists)
and caches them in m_favArtistIds
- ArtistView receives the full set via setFavArtistIds() and checks
it on every setArtist() call so the button starts gold if already faved
- Toggling updates the local cache immediately for back/forward nav
**Playback error → queue advances**
- player_loop now sets track_finished on Err (was only set on Ok(None)),
so the toolbar's onTrackFinished handler advances to the next track
instead of stalling on an unplayable track
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>