feat: replace Caddy with Hono server-side access gate
Replaces the static Caddy file server with a Hono-based Node server
that enforces the allowlist server-side via signed HttpOnly cookies.
Unauthenticated requests to app routes (/docs/*, /sheets/*, etc.)
redirect to the landing page instead of serving the HTML.
- Server: health endpoint, request timing headers, instance-info
- Auth: HMAC-signed cookies (7d TTL), verify/logout API endpoints
- Client: POST DID to /api/auth/verify after OAuth success
- UI: Spreadsheet "New" menu item disabled with "Coming soon" badge
- CI: verify step uses /health endpoint for structured diagnostics
- 40 new server tests covering auth, routing, and edge cases