Use the `ai_json_schema` editor for the AI Agent structured-output schema field
## Description
The AI Agent form renders the **structured output** JSON schema as a plain `textarea` (`AiAgentForm::buildFormMetadata()`, `$form['prompt_detail']['structured_output_detail']['structured_output_schema']`). That makes a schema cumbersome to add (no validation or editor affordances, easy to ship malformed JSON) and hard to read once saved (a wall of escaped JSON).
Switch it to the AI module's dedicated `'#type' => 'ai_json_schema'` element (`Drupal\ai\Element\AiJsonSchema`), so adding a schema uses a purpose-built CodeMirror editor (syntax highlighting, JSON linting) and a saved schema renders as readable, structured JSON. The stored value stays a JSON string, so this is backward compatible.
Note: the AI Agent form is edited through the `bpmn_io` modeller, which renders the form inside an off-canvas dialog. The `ai_json_schema` element currently does not render or persist correctly in off-canvas dialogs, so this change depends on that being fixed in the `ai` module first (the off-canvas rendering + value-sync task). Without it, the editor will render broken and the schema will save empty in the modeller.
## Acceptance criteria
* The structured-output schema field renders as the `ai_json_schema` CodeMirror editor on the AI Agent form (validation + highlighting), not a plain textarea.
* Existing agents' saved schemas load into the editor and save unchanged (value remains a JSON string).
* In the `bpmn_io` modeller (off-canvas), the editor renders correctly and the entered schema persists — once the `ai` off-canvas task is in place.
* Structured-output validation behaviour (invalid JSON is rejected) is unchanged.
## Testing instructions *(added by implementor before review)*
1. Enable `ai` and `ai_agents`. Edit an agent (`/admin/config/ai/agents/{id}/edit`), enable **Structured output**, and confirm the **JSON Schema** field renders as the CodeMirror editor.
2. Enter a schema, save, reopen — confirm it persists and an existing agent's schema still loads.
3. Edit the agent via the modeller and confirm the same in the off-canvas panel (requires the `ai` off-canvas fix; on a dev release of `ai`, build the editor JS first).
## Related issues *(optional)*
<!-- Same treatment as the ECA Chat action; depends on the ai off-canvas fix to work in the modeller. -->
* /relate ai_integration_eca#3585014
* /blocked_by ai#3586536 — "Support the ai_json_schema element inside off-canvas dialogs" (prerequisite for rendering/saving in the modeller).
task