/** * Legend — color-to-name roster legend (unused, kept for reference). * * Maps each agent's dot color to their name and lets the user focus the * camera by clicking a name. * * Architecture: not currently rendered — SimCanvas draws labels directly; * retained as the planned clickable roster. * * Design: superseded by on-canvas labels; left in the tree until the * focus UX is finalized. */ export default function Legend({ agents, focusedId, onFocus }) { if (!agents) return null; const entries = Object.entries(agents); if (!entries.length) return null; return (