E: video export — record the live visuals + audio to webm (no ffmpeg)

A ⏺ video button in the ⚙ panel records the live journey to a .webm: the built-in MediaRecorder muxes a canvas.captureStream() with the engine's master audio track — NO 30MB ffmpeg.wasm dependency.

• Compositor (app/video-export.js): the found-VIDEO front clip cover-fit as the background with the DEMOSCENE screen-blended on top — the same look as live.

• live.js handle: audioStream() → the msDest MediaStream (falls back to mediaEl.captureStream).

• video-layer.js: _frontEl() → the front for compositing.

• panels.js: the ⏺/⏹ button. video-export.js: recordVideo/stopVideo (+ window.__VIDEO).

Verified: test/video-export-probe.js (browser) — button present, MediaRecorder supported, a 4s take returns a valid ~421 KB webm (vp9) of the composited visuals + audio.

▶ Play it: Rail Replacement Rapture — a bed-heavy genre where the found-sound layer carries the room https://stellate.app/?genre=transitwave&seed=8739&path=749.12536,768.12569,730.12569&xdur=13.122

55938b0 https://github.com/aboard-io/stellate/commit/55938b0316f266c1be71b4f8c4e007b0d4d3dc28