77e7b4282e
Wrap the county paths in a <g id="mapg"> and drive a translate/scale transform from the mouse: - scroll to zoom toward the cursor (1x-16x) - drag to pan, clamped so the map can't leave the frame - double-click to reset to the full view County borders use vector-effect:non-scaling-stroke so they stay crisp at every zoom level instead of thickening. The existing hover readout and click-to-open county sheet keep working through event delegation; the click handler is guarded (dragMoved / e.detail) so a pan gesture or the reset double-click never pops a county sheet. Pure view interaction — no data touched. Safe against `make board`, which only rewrites the D/CDETAIL/TOTALS data lines. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>