Curved DOM slide (A3) test — translate the real DOM under the cursor

The DOM panel lives in the canvas layoutsubtree with pointer-events:auto. The MRT GPU picker resolves the cursor → surface UV every frame, and the panel is physically translated so the panel-local point under the cursor lands at the cursor's screen pixel. The real, trusted pointer then lands on the real DOM — so native click, the <select> dropdown (incl. Safari), the caret, native text selection and drag-and-drop all work for free. A forward-pick path (UV → screen) pre-slides for focus / keyboard popup activation.

empirical probe: how do the HTMLTexture + pick pipelines fare off WebGPU? Shared choice (all DOM-in-3D test routes), persisted; toggling reloads — a canvas can't swap context kinds in place.
3D scene — panel behind a (occluding) cube
Live diagnostics

Booting WebGPU + picker…