PR Checks / Frontend Typecheck + Tests (pull_request) Successful in 9m39s
PR Checks / Backend Smoke (pull_request) Successful in 5s
PR Checks / Build Backend (no push) (pull_request) Successful in 10s
PR Checks / Build Frontend (no push) (pull_request) Successful in 47s
PR Checks / Build Pipeline (no push) (pull_request) Successful in 9s
PR Checks / AI Code Review (Claude) (pull_request) Successful in 4m15s
iOS Safari has no Element.requestFullscreen (fullscreen is video-only), so tapping the map band or 'View on map' silently did nothing on iPhones. Fall back to a fixed-position CSS overlay driven by state when the Fullscreen API is missing or its promise rejects, locking body scroll while open. The Leaflet map already re-measures via the shared isFullscreen flag. New e2e journey simulates the iOS condition by deleting the API and asserts the overlay opens and closes; it fails against the current production build. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>