requestAnimationFrame/document are browser-only; Three.js trophies, particles, cursor, and loading screen now no-op during SSR. Add a Node rAF shim as a safety net.
Passing EnvironmentProviders via CommonEngine StaticProvider[] dropped provideZoneChangeDetection, causing ZoneStablePendingTask2 on render. Use bootstrapApplication + mergeApplicationConfig instead.
Co-authored-by: Cursor <cursoragent@cursor.com>