Move OpenCV shape detection, coordinate conversion, overlap checks, and tracked-card merge logic from CameraScanner into lib/scanner-card-detection.js with unit tests for the pure helpers. Co-authored-by: Cursor <cursoragent@cursor.com>