build(docker): restore client.Dockerfile, pin pnpm@10, switch to BuildKit secrets for GHCR auth
client.Dockerfile was deleted by CVG-29 but docker-compose still referenced it - restored from before that commit. pnpm@latest pulls v11 with stricter overrides validation that fails the frozen install; pinning to v10 matches local. Token now passed via BuildKit secret mount instead of build ARG, never persisted in image layers; .npmrc references ${NPM_AUTH_TOKEN} env var.