fix: event delegation, IFERROR correctness, diagram marker init
Landing page: replace all render-cycle addEventListener calls with
event delegation on parent containers. Prevents listener accumulation
that caused exponential performance degradation after repeated
interactions (sort, search, star, folder navigation).
Formulas: IFERROR now catches error strings starting with # (like
#DIV/0!, #REF!, #VALUE!, #NAME?) matching standard spreadsheet
behavior, instead of only catching thrown JS exceptions.
Diagrams: move arrowhead marker creation from render() to init(),
eliminating redundant DOM checks on every frame.
Closes #362