I think I can create a CNAME record for *.media to point to the Tailscale address of the reverse proxy
This approach, but if you setup your server to advertise subnets you can use your local IP range instead of tailscale's. Port numbers for individual services would be handled by your reverse proxy, you can setup a subdomain route for each service.
Instead of having to keep track of bookmarks you can use something like homepage on the root of your domain, as a dashboard to navigate to all other services.
My setup just has the local IP (of the reverse proxy) in the domain's DNS records, and I have Tailscale on my home server setup to advertise subnet routes, so I can use the same local IP when at home or remote via Tailscale. No need to use your public IP or open ports or anything.
Irfanview has been my image viewer on Windows for years now. You can install the full plugin pack from the main website (button below the main installer download) and you'll be set for just about anything that identifies as an image.
The systemd website itself seems quite information-rich: https://systemd.io/