Web frontend and supporting services for lance.blue

fix(post-to-bluesky): embed the silhouettes from inside the build context master

The card's nine sprites were included from `web/src/camo/units/`, which the API's image does not copy: it builds from `services` and `crates` alone, so this compiled in a checkout and failed in the container. They are copied under `services/api/assets/units/` beside the fonts and the board tile, with a test comparing them to the editor's copies so the two cannot drift, and another asserting no embedded path leaves the build context. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>