## Why
Servarr backups (the periodic config+DB zips) and sonarr MediaCover posters
still live on each replica's local /config, which is an emptyDir. Backups are
leader-local and lost when the pod is rescheduled; sonarr covers render
inconsistently across the 3 active-active replicas. #387 already moved radarr
covers to a shared Ceph RGW bucket; this extends the same pattern to backups for
all three apps and to sonarr's covers.
## Changes
- Add an `arrstack-backups` ObjectStoreUser + Bucket (cephrgw-operator), minting
the `arrstack-backups-s3` credential Secret in-namespace (no Vault KV seeding).
Backups get their own bucket (not arrstack-media) because they carry secrets
(Config.xml API keys, the DB) and warrant separate credentials/lifecycle from
poster art; the three apps share it, isolated by a per-app key prefix.
- Wire sonarr to the shared `arrstack-media` bucket via `Sonarr__MediaCoverS3__*`
(prefix `sonarr`, partitioned from radarr's `radarr` prefix), plus the estate
CA mount at /etc/ssl/vault-ca/ca.crt for RGW TLS validation.
- Wire radarr/sonarr/prowlarr backups via `<App>__BackupS3__*` to
`arrstack-backups` (per-app prefix); add the CA mount to sonarr and prowlarr.
## Notes
- The env keys are consumed by the -unkin3+ images (separate app PRs) and
ignored by older images, so this is safe to apply ahead of the image bump.
- `kubectl kustomize apps/base/arrstack` builds clean.