- cytoscape-graph.js now uses MutationObserver, not DOMContentLoaded (the <gioser-graph> element is created dynamically by WASM) - Remove unused dispatchEvent from lib.rs - Rebuild WASM
- Add cytoscape-graph.js: fetches /graph, renders with Cytoscape.js - Style: round-rect nodes, cose layout, edge width proportional to weight - Click: center node + fade rest (wineandcheesemap effect) - Double-click: trigger navigation callback - Hover: tooltip with preview text - Click background: restore all - Remove gioser-graph-web crate dependency (no longer needed) - Add CDN cytoscape@3.30.4 + defer script to index.html - gioser-graph custom element auto-initialized on mount