Why this is tricky

This uses the native HTML5 Drag and Drop API (dragstart/dragover/drop) — most tools need a dedicated drag-and-drop action sequence, not a plain click-and-move. A keyboard alternative (Tab to an item, Space to pick up, arrow keys to move, Space to drop) is also provided.

Source

Login test
Checkout test

Target

Initial state.