fix(transitions): prevent WebGL context loss on persist canvas during body swap
- Problem
- Safari loses WebGL2 context when canvas elements are briefly detached from the DOM during View Transitions navigation.
- Fix
- Lift persist elements to <html> before body swap so they're never detached. Integrated moveBefore() API (Chrome 133+) for zero-detachment atomic moves.
- Impact
- Merged into Astro core (5M+ weekly npm downloads). First integration of moveBefore() into Astro's View Transitions system.