Re-implements the commit activity heatmap from reference/v2-modular
directly into app.js (single-file convention). A canvas-texture overlay
is projected onto the floor showing per-author activity zones (Claude,
Timmy, Kimi, Perplexity). Commits fetched from Gitea API every 5 min;
activity decays over 24 h. Opacity pulses gently in the animation loop.
Fixes#469
Co-Authored-By: Claude (Opus 4.6) <claude@noreply.anthropic.com>