Replaced the broken corner-hypot findSnap (75px, Math.hypot, weighted distances) with correct per-axis edge detection (SNAP_TOL=9px). X candidates gated by Y-overlap; Y candidates gated by X-overlap. No cross-axis coupling. Updated CollapsibleSection.tsx call sites and cleaned up snap types.
v101.0.12026-05-31
·findSnap rewritten: per-axis adjacency detection, SNAP_TOL=9, no Math.hypot, no 0.6x/0.5x weighting, no tileGrouping gate
·Exported COLLAPSED_H, SNAP_TOL, BREAK_TOL, Rect, SnapResult from tileUtils
·CollapsibleSection.tsx: both call sites adapted to new Rect signature and optional x?/y? return
·tile.types.ts: tearOff? dropped (no live callers); tileToGroup added to TileContextState (init {}, populated v101.0.3+)