CREATE TABLE IF NOT EXISTS nl_partner_profiles (
 id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
 full_name VARCHAR(150) NOT NULL DEFAULT '', phone VARCHAR(25) NOT NULL,
 zalo VARCHAR(25) NOT NULL DEFAULT '', region ENUM('nam','trung','bac') NOT NULL DEFAULT 'nam',
 old_province VARCHAR(100) NOT NULL DEFAULT '', old_district VARCHAR(120) NOT NULL DEFAULT '', old_ward VARCHAR(120) NOT NULL DEFAULT '',
 new_province VARCHAR(100) NOT NULL DEFAULT '', new_ward VARCHAR(120) NOT NULL DEFAULT '',
 seat_class VARCHAR(30) NOT NULL DEFAULT '', car_brand VARCHAR(100) NOT NULL DEFAULT '', car_model VARCHAR(100) NOT NULL DEFAULT '',
 car_year SMALLINT UNSIGNED DEFAULT NULL, fuel VARCHAR(30) NOT NULL DEFAULT '', plate VARCHAR(30) DEFAULT NULL,
 photo_path VARCHAR(255) NOT NULL DEFAULT '', availability ENUM('ready','busy') NOT NULL DEFAULT 'busy',
 approval ENUM('draft','pending','approved','rejected','blocked') NOT NULL DEFAULT 'draft',
 admin_notes TEXT NULL, verified_phone TINYINT(1) NOT NULL DEFAULT 0,
 draft_token_hash CHAR(64) NOT NULL, completion_percent TINYINT UNSIGNED NOT NULL DEFAULT 0,
 created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
 UNIQUE KEY uq_partner_phone(phone), UNIQUE KEY uq_partner_plate(plate), INDEX idx_partner_region(region), INDEX idx_partner_approval(approval)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
