A show you don't own ships its seasons with no episodes (loaded per-season
on expand, like the full detail page), so the modal mis-read '0 episodes'
as 'all owned' and seasons expanded to nothing.
- Render tmdb seasons as collapsible with an 'expand to load' placeholder;
fetch /api/video/tmdb/show/<id>/season/<n> on first expand, render rows,
pre-select the missing-aired episodes, enable the season select-all.
- Skip the 'you have every episode' hint when any season is lazy/un-owned;
lazy seasons aren't tagged owned, so they stay visible under 'Missing only'.
- Next-episode line falls back to the payload's next_episode stub when no
episodes are loaded (the only next-up source for un-owned shows).