Icons are PNG files served from `/icons/`. There are approximately 80 available but typically only 15–20 are actively used. **Acceptance criteria:** - [ ] "Browse Icons" opens a modal with a scrollable grid of all available icons - [ ] Each cell shows the PNG image and the icon name below it - [ ] A search input at the top of the modal filters the grid in real time by name - [ ] Clicking an icon selects it, highlights the cell, closes the modal and shows a preview of the selected icon next to the Browse button - [ ] The icon name is stored as a string (e.g. `toilet`) — the full path `/icons/toilet.png` is resolved at render time - [ ] The available icon list is defined as a single array constant — easy to extend without changing any other code
Icons are PNG files served from
/icons/. There are approximately 80 availablebut typically only 15–20 are actively used.
Acceptance criteria:
toilet) — the full path/icons/toilet.pngis resolved at render time