health: split observer terminology and add registered-observers strip
Renames the local-capture surface (card title, empty state, badge) so
the word "observer" no longer overloads between the in-process capture
streams and the registered-observer registry. Adds an adjacent
"Registered observers" card that consumes /app/observer/api/list on a
60s cadence (independent of the local-capture lanes), renders server
state/label per row, and shows a visible "clock skew" chip when the
server flags a future-timestamp drift beyond tolerance.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>