**App.test.tsx updates:**
The existing test "renders BackendSelectionStep when currentStep is 0" will fail because `` now shows IntroSection first. Update this test to:
1. First assert that IntroSection content is visible (e.g., check for "Get Started" button or the intro copy)
2. Click "Get Started"
3. THEN assert "Select Backend" heading and StepIndicator navigation are visible
Add a new test:
- "shows intro section on initial render" — render ``, assert intro copy is present, assert StepIndicator is NOT in the DOM
The renderAtStep() tests (step 1, step 2) bypass WizardShell entirely so they need NO changes.
**Step descriptions (UX-03):**
Add a `` element immediately after the `
` in each of the 4 step components. Use className `text-sm text-on-surface-variant mt-1 mb-4`. Claude has discretion on wording, but each must be 1-2 sentences explaining what the user is doing and why. Suggested tone — direct, practical, no jargon:
- BackendSelectionStep: Explain that the user names their remote and picks a cloud storage provider
- RemoteConfigStep: Explain that the user enters credentials for the selected backend
- DeploymentStep: Explain that the user chooses how the config gets deployed to the target machine
- ReviewStep: Explain that the user reviews generated files and downloads them
IMPORTANT: Do NOT change any heading text (h2 content must remain identical). Only ADD a `
` after the `
`.
IMPORTANT: Use `text-on-surface-variant` (not `text-on-surface-container/70`) — this is the standard MD3 secondary text token.