WKWebView doesn't auto-invalidate ::before/::after styles when CSS custom properties change on document.documentElement. Add `void root.offsetHeight` to force reflow. Also add a version counter in useThemeApplier to prevent stale async fetches from overwriting live-reload CSS vars. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>