Bake vapor into the render — works on mobile now, takes effect over time (like BPM)

Vapor was a desktop-only LIVE effect (a filter + reverb on the output WebAudio graph), so it was silent on the pocket-proof mobile path, which plays pre-rendered WAV segments through a plain with no live graph.

• stream-renderer.js (renderChunk): applyVapor() bakes the "walking through a mall" master EQ into the full-mix stereo stream that feeds BOTH the desktop ring and the mobile WAV segments

• live.js: both conductors now carry the vapor amount into each fed bar (ring: curVapor; wav-first: curVaporWav), and their setVapor() updates it

Verified: segment-parity 14/14 BYTE-EQUAL at vapor 0 (maxΔ 0); a render at vapor 0.7 muffles the highs to ~60% + ducks level to ~87%; share-url live audio path clean, zero page errors.

▶ Play it: Food Court Eternity — the brightest, most processed corner of the space https://stellate.app/?genre=vaporwave&seed=9127&path=1679.4393,1698.4426,1660.4426&xdur=13.122

91f1e11 https://github.com/aboard-io/stellate/commit/91f1e11fbb2d2de96f5e58dae6450d3ac574b57c