JK Client Portal

The portal route is now wired to live booking data.

Use a valid private token link at /portal/[portalToken] to open the client-facing portal. The page now renders through the reusable portal components and the Postgres-backed mapping layer.

Reusable sectionsServer-rendered portal pagePostgres-backed DTOAdmin overview