fix(gymtracker): bust admin cache and make ad card render atomic
- Strong HTML response Cache-Control plus CDN-Cache-Control: no-store
- Meta no-cache tags and build comment for source verification
- Build ad list in a DocumentFragment; replaceChildren only on success
so a failed PostHog re-render cannot wipe cards (stale JS / errors)
- Remove height:100% on card wrappers that could collapse grid sizing