Bedömningsmatrisv8

Funktionsmockup — version 8. Funktionsmässigt identisk med v6 (v7 hoppades över utan implementation). Det som ändrats i v8 är att den dark-mode-CSS som tidigare aktiverades via @media (prefers-color-scheme: dark) nu är scopad under body.dark-mode — den canonical V2-kontrakten enligt .cursor/rules/vklass-v2-darkmode.mdc. Detta är root-cause-fixen för pin 12 (Andreas, 2026-05-22) där tomma kriterieceller renderades svarta mot en ljus Vklass-shell när användaren hade OS-dark mode på.

dark_mode

Nyheter i version 8

Dark-mode root-cause-fix (pin 12): Hela det tidigare @media (prefers-color-scheme: dark)-blocket i styles.css är borttaget och dess regler är scopade under body.dark-mode i stället. v6:s pixel-fix av tom kriteriecell (mörkare charcoal med streckad ram) är bevarad oförändrad — men aktiveras nu endast när användaren explicit togglar dark mode via #dark-mode-toggle, inte via OS-preferens. Hover-states i dark mode har nu egna explicita överstyrningar så ljusa hover-tinter inte längre ärver in på mörka celler (WCAG 1.4.3-fix).
  • Class-baserad dark mode — Vklass V2-kontrakten kräver att dark mode styrs av body.dark-mode, inte av OS-preferens. @media (prefers-color-scheme: dark) är förbjuden i feature-CSS eftersom den shared toolbar/menyn endast lyssnar på klassen — OS-preferensen ger split-theme (ljus shell, mörka celler).
  • Explicita hover-states i dark modebody.dark-mode .am-cell:hover, .am-cell--readonly:hover och .am-cell--empty:hover har nu egna mörka tinter istället för att ärva ljusa --cl-super-soft-hovers från base-stilen.
  • v6:s a11y-härdning bevarad — skip-länkar, full ARIA-tabs-kontrakt, toolbar-flyouts som synkar aria-expanded, bekräftelsedialog för arkivering med inert-fokusfälla. Inga regressioner.
  • v4:s funktionsscope bevarat — fri kriterietext per cell, dubbla L/E-markeringar, gruppbedömning med sticky elevkolumn, cellinnehållseditor, max 12 × 7.