
  -- Personal Information
  first_name VARCHAR NOT NULL,
  last_name VARCHAR NOT NULL,
  birth_date DATE NOT NULL,
  sex VARCHAR NOT NULL,
  
  -- Account / Login
  email VARCHAR NOT NULL UNIQUE,
  password VARCHAR NOT NULL,
  username VARCHAR, -- Required if not using same account
  use_same_account BOOLEAN DEFAULT FALSE,
  token VARCHAR NOT NULL,
  
  -- Location & Contact
  country_id INTEGER NOT NULL,
  country_iso VARCHAR(2) NOT NULL,
  state_id INTEGER NOT NULL,
  municipality_id INTEGER NOT NULL,
  neighborhood_id INTEGER,
  phone_code INTEGER NOT NULL,
  phone_number VARCHAR NOT NULL,
  
  -- Academic / School
  instance_name VARCHAR NOT NULL,
  grade_id VARCHAR NOT NULL,
  school_name VARCHAR, -- Required if instance is not 'ucv'
  school_key VARCHAR,  -- Required if instance is not 'ucv'
  account_manager_id VARCHAR NOT NULL,
  
  -- Identification
  national_id_type VARCHAR NOT NULL, -- e.g., 'CURP', 'DNI', 'OTHER'
  national_id VARCHAR NOT NULL,
  document_id INTEGER NOT NULL,
  
  -- Legal & Consent
  terms BOOLEAN NOT NULL CHECK (terms = TRUE),
  consent BOOLEAN NOT NULL CHECK (consent = TRUE),
  consent_form_id VARCHAR NOT NULL,
  consent_provider VARCHAR NOT NULL
