Drag pieces from the tray. On the tray pieces are smaller; on the board they snap to full size.
Keys: R rotate, F flip.
All pieces placed validly.
Time:00:00
Tray (pieces shrink here; grow when placed on board)
Challenge generation: the solver finds a full non-overlapping placement of all pieces,
then locks 1–3 random pieces from that solution (guaranteed solvable).