Wires now round their bends, hop over the wires they cross, and show a dot
where wires from one output split. Wires sharing a pin may share a trunk.
Routes keep one grid square from a box's top and bottom and two from its
sides, never turn closer than two squares beside a box, and keep half a
square from other wires. The runs pinned to every slot are claimed before
any wire is routed, so an early wire no longer lays its run along a row a
later slot has to leave by. A wire that cannot fit the grid spacing falls
back to the old tighter one rather than turning into knobs.
The styling geometry lives in wire_style.py; draw_links is split into
collecting, routing and painting around a WireJob dataclass.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>