node_modules/.git/dist were being sent on every build with no
.dockerignore at all — same class of fix as goonk's recent deploy-speed
pass. Verified by building with the new file in place (adventure and
new spot-checked with a full container run + health check; the rest
share the same multi-stage Dockerfile pattern).
Applying display:flex to both html and body caused body to shrink-wrap
as a flex item of html, making cells ~53px instead of ~102px. Split the
rule so only body gets the flex centering. Also measure actual cell size
synchronously after initUI mounts and use it for tile translate calculations
so tiles align correctly regardless of container width.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>