fix(web): render the diff preview statically

The interactive FileDiff's mount lifecycle can race the shared shiki
singleton when the typography views remount it - its render cache is
seeded highlighted-before-highlighting, so a lost race locks in an
unhighlighted frame permanently. The preview needs no interactivity,
so it now renders once per theme through the SSR pipeline (which
always awaits the highlighter before emitting HTML) and injects the
finished markup into a shadow root, the same way FileDiff hosts it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
284ea9f7d0Julius Marminge committed on 8/4/2026, 10:49:11 PMparent67599b2
1 file changedLine totals unavailable