CREATE TABLE users (
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,

    mobile VARCHAR(15) NOT NULL UNIQUE,

    full_name VARCHAR(100) DEFAULT NULL,
    date_of_birth DATE DEFAULT NULL,
    gender VARCHAR(20) DEFAULT NULL,

    nid_number VARCHAR(50) DEFAULT NULL,
    address TEXT DEFAULT NULL,

    nid_front VARCHAR(255) DEFAULT NULL,
    nid_back VARCHAR(255) DEFAULT NULL,
    face_photo VARCHAR(255) DEFAULT NULL,

    kyc_status ENUM(
        'pending',
        'verified',
        'review',
        'rejected'
    ) NOT NULL DEFAULT 'pending',

    pin_hash VARCHAR(255) DEFAULT NULL,

    account_status ENUM(
        'pending',
        'active',
        'blocked'
    ) NOT NULL DEFAULT 'pending',

    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,

    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
        ON UPDATE CURRENT_TIMESTAMP
);