## Existing Code Insights
### Reusable Assets
- `FieldDef` interface (`src/schemas/registry.ts`): add `validate?: { regex: RegExp; message: string }` and `tooltipText?: string` — minimal interface extension
- `buildZodSchema()` (`src/schemas/index.ts`): reads `field.required` to pick `.min(1)` — extend to also read `field.validate?.regex` and chain `.regex(regex, message)`
- `FieldRenderer` (`src/components/ui/FieldRenderer.tsx`): already renders `helpText` and `error` — add ⓘ icon + conditional inline tooltip panel alongside label
- `PasswordField` (`src/components/ui/PasswordField.tsx`): password fields also need the ⓘ icon treatment for sas_url, key, onedrive token
- `SftpAuthToggle` (`src/components/wizard/SftpAuthToggle.tsx`): manages pass/key_pem tab — needs an ⓘ for the auth method concept (tab-level, not field-level)
### Established Patterns
- Error display: errors shown only after first submit, then live (`mode: 'onSubmit', reValidateMode: 'onChange'` already set in RemoteConfigStep — no change needed)
- helpText rendered as `` below field — tooltip panel should use a similar small-text style, perhaps a different color (e.g., blue-tinted)
- CSS-hidden toggle pattern used in AzureAuthToggle/SftpAuthToggle — can use same `div.hidden`/`div.block` for tooltip visibility
### Integration Points
- `src/schemas/registry.ts`: `FieldDef` interface + registry entries for azureblob.account, s3.region, gcs.project_number (add `validate`), and sas_url/key/sftp-auth/onedrive-token (add `tooltipText`)
- `src/schemas/index.ts`: `buildZodSchema()` — read `field.validate` and apply regex
- `src/components/ui/FieldRenderer.tsx`: add ⓘ icon + inline tooltip to text and select renderers
- `src/components/ui/PasswordField.tsx`: add ⓘ icon + inline tooltip to password renderer
- `src/components/wizard/SftpAuthToggle.tsx`: add ⓘ near the auth method tabs