# A11Y-rapport — ms-ai-architect Playground v3

**Status:** Skjelett — fylles ut etter manuell QA (se MANUAL-CHECKLIST.md)
**Sist oppdatert:** 2026-05-03
**Versjon:** v3 (single-file `ms-ai-architect-v3.html`)
**Standard:** WCAG 2.2 AA + Aksel/Digdir-anbefalinger

---

## Test-oppsett

| Felt | Verdi |
|------|-------|
| Test-dato | _Fyll inn ved kjøring_ |
| Tester | _Navn_ |
| Browser | _Chrome xx / Firefox xx / Safari xx_ |
| OS | _macOS xx_ |
| Verktøy | axe-core (latest CDN) + manuell tab-test |
| Tema testet | Begge (lys + mørk) |

## Surfaces testet

| Surface | Status | Fokus-rekkefølge | Kontrast | Kommentar |
|---------|--------|-------------------|----------|-----------|
| Onboarding | _pending_ | _pending_ | _pending_ | 5 grupper, 18 felter |
| Home | _pending_ | _pending_ | _pending_ | 3 entry-tracks + prosjekt-liste |
| Catalog | _pending_ | _pending_ | _pending_ | Søk + 5 expansion-grupper, 24 commands |
| Project | _pending_ | _pending_ | _pending_ | Tabs, paste-import, rapport-slots |

## Kjente avvik

_Ingen registrert ennå (skjelett-rapport)._

## Notater på kontrast

- **Mørk modus (default):** `--color-text-primary` mot `--color-bg`-tokens. Forventet ratio ≥ 4.5:1 (WCAG AA).
- **Lys modus (Step 13):** Aktiveres via theme-toggle, persistert i `localStorage('ms-ai-architect-theme')`. Krever separat axe-run i lys modus.
- **Severity-farger** (`--color-severity-critical/high/medium/low`): testet for 3:1 mot bakgrunn (UI-ikon-grense).

## Notater på keyboard-navigasjon

- **Tab-rekkefølge:** Topbar → main-surface → modaler. Onboarding-flyt: form-progress sidebar er sticky men reserveres for klikk-hopp (ikke tab).
- **Modal:** Forventer fokus-trap (esc lukker, tab sirkulerer innen modalen). Wires opp i `mountModal`/`unmountModal` (Step 7).
- **Theme-toggle:** Aktiverbar med Enter/Space.
- **Pyramide-rapport (classify):** `aria-current="true"` på aktiv tier; resten leselig som listepunkter.

## Notater på skjermleser

- **Landmarks:** `<header class="topbar">`, `<main id="app">`, `<nav class="topbar__nav" aria-label="Hovednavigasjon">`.
- **Surfaces:** Skjules med `hidden`-attributtet (ikke `display: none` i style) — beholder semantisk skjuling for skjermleser.
- **Labels:** Alle form-felter har `<label for="...">` paret (form-renderer Step 8).
- **Live regions:** Paste-import-feedback uses `[data-paste-error]` med `role="alert"` etter behov.

## axe-core-kjøring

Se MANUAL-CHECKLIST.md seksjon 9 for nøyaktig kjøre-procedure. Resultatet limes inn her som JSON-utdrag etter første gjennomkjøring.

## Sammendrag

_Fylles ut etter første gjennomkjøring. Forventet utgangspunkt: ≤ 5 violations på alle surfaces samlet, ingen "critical"._
