ImportPipeline holds all data and logic (raw JSON, records, proposals, model_name, build_model). ImportWizard wraps it with UI-only state (step, cursor, message). Rename WizardState → WizardStep throughout. Headless import in dispatch.rs now constructs ImportPipeline directly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>