Each card is a low-resolution ImageData pixel buffer, plotted with the same
immediate-mode primitives as the AC piece $gla (wipe / ink / line / circle) —
including a 3×5 bitmap font — then blitted into a <canvas> with nearest-neighbour scaling.
Canonical colors: copy = black ●, add = white ○.