# QA v96 RC20

## Mål
Putsa RC19 efter faktiska iPhone/iPad-screenshots. Huvudfel i RC19 var att mobilens `Framgångsmätare` fortfarande klippte text på höger sida (`4 av 12 pass`, `109/324`, `10 sek`) och att progressmodulen blev för bred/tät på små skärmar.

## Korrigeringar
- `body` och startsida låses mot horisontell overflow.
- Mobilens progresskort får lägre yttre padding och fastare intern grid.
- Toppraden i progresskortet använder 112px ring + flexibel textkolumn på mobil.
- KPI-cellerna använder 48px mini-ringar, mindre värdefont och reducerad letter-spacing.
- Extra skydd för långa KPI-värden i högerkolumnen.
- iPad/desktop behåller side-metrics utan separata cell-outlines.

## Automatiska kontroller
- `node --check assets/js/app.js`: OK
- `node --check assets/js/data.js`: OK
- `node --check assets/js/shell.js`: OK
- `node qa_check.js`: OK
- CSS/HTML core asset-scan: inga saknade direkta statiska referenser. Dynamiska template-strängar i JS ignoreras.

## Screenshot-status
Live DOM-screenshot kunde inte produceras i sandboxen. Chromium/Playwright stoppas av miljön med `net::ERR_BLOCKED_BY_ADMINISTRATOR` även via localhost/file. Därför ingår statiska fallbackbilder i docs för mobil/iPad/desktop:

- `QA_v96_RC20_mobile_static.png`
- `QA_v96_RC20_ipad_static.png`
- `QA_v96_RC20_desktop_static.png`

Dessa är statiska QA/target-bilder och inte webbläsarrenderade screenshots från app-DOM:en. Slutlig visuell verifiering måste därför göras i Safari/Chrome på riktig mobil/iPad/dator efter uppladdning.

## Intern visuell bedömning
RC20 adresserar de tydliga live-felen från RC19: högerriktad klippning i mobilens progressmodul och för stora KPI-värden. Den viktigaste risken kvar är skillnaden mellan sandboxens statiska fallback och riktig Safari-rendering, eftersom riktig DOM-screenshot inte gick att producera här.
