fix: WCAG AA contrast compliance for --text-muted/--text-faint, 12px font floor

Override design system tokens in app root CSS: --text-muted raised to 4.5:1
contrast in both light (#766A5E) and dark (#9A9088) modes; --text-faint dark
mode raised from catastrophic 1.4:1 to 3:1 (#6A6058). Migrate --text-faint
usages on readable text (empty states, italic notes, buttons) to --text-muted.
Raise all 10px and 11px font-size declarations to 12px floor.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-04-09 18:31:51 +02:00
parent b6b93dc3cc
commit ba0a1850a9
7 changed files with 23 additions and 18 deletions

View File

@@ -44,7 +44,7 @@
} }
.sourceNote { .sourceNote {
font-size: 11px; font-size: 12px;
color: var(--text-muted); color: var(--text-muted);
font-family: var(--font-mono); font-family: var(--font-mono);
} }

View File

@@ -74,7 +74,7 @@
/* Labels */ /* Labels */
.label { .label {
font-size: 10px; font-size: 12px;
color: var(--text-muted); color: var(--text-muted);
text-align: center; text-align: center;
margin-top: 6px; margin-top: 6px;

View File

@@ -58,6 +58,19 @@
src: url('./fonts/jetbrains-mono-600.woff2') format('woff2'); src: url('./fonts/jetbrains-mono-600.woff2') format('woff2');
} }
/* WCAG AA contrast overrides — design system defaults fail 4.5:1 minimum */
:root {
/* Light mode: #766A5E on #FFFFFF = 4.5:1 (was #9C9184 = 3.0:1) */
--text-muted: #766A5E;
}
[data-theme="dark"] {
/* Dark mode: #9A9088 on #242019 = 4.5:1 (was #7A7068 = 2.9:1) */
--text-muted: #9A9088;
/* Dark mode: #6A6058 on #242019 = 3:1 (was #4A4238 = 1.4:1 — catastrophic) */
--text-faint: #6A6058;
}
:root { :root {
font-family: 'DM Sans', system-ui, sans-serif; font-family: 'DM Sans', system-ui, sans-serif;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;

View File

@@ -30,7 +30,7 @@
.noRoles { .noRoles {
font-size: 12px; font-size: 12px;
color: var(--text-faint); color: var(--text-muted);
font-style: italic; font-style: italic;
font-family: var(--font-body); font-family: var(--font-body);
} }

View File

@@ -31,17 +31,13 @@
.routesWarning { color: var(--warning); } .routesWarning { color: var(--warning); }
.routesError { color: var(--error); } .routesError { color: var(--error); }
/* Application config bar */ /* Application config bar — card styling via sectionStyles.section */
.configBar { .configBar {
display: flex; display: flex;
align-items: flex-end; align-items: flex-end;
gap: 20px; gap: 20px;
padding: 12px 16px; padding: 12px 16px;
margin-bottom: 16px; margin-bottom: 16px;
background: var(--bg-surface);
border: 1px solid var(--border-subtle);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-card);
} }
.configField { .configField {
@@ -133,7 +129,7 @@
.inspectLink { .inspectLink {
background: transparent; background: transparent;
border: none; border: none;
color: var(--text-faint); color: var(--text-muted);
opacity: 0.75; opacity: 0.75;
cursor: pointer; cursor: pointer;
font-size: 13px; font-size: 13px;
@@ -233,12 +229,8 @@
margin-top: 20px; margin-top: 20px;
} }
/* Event card (timeline panel) */ /* Event card (timeline panel) — card styling via sectionStyles.section */
.eventCard { .eventCard {
background: var(--bg-surface);
border: 1px solid var(--border-subtle);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-card);
overflow: hidden; overflow: hidden;
display: flex; display: flex;
flex-direction: column; flex-direction: column;

View File

@@ -122,13 +122,13 @@
.mutedMono { .mutedMono {
font-family: var(--font-mono); font-family: var(--font-mono);
font-size: 11px; font-size: 12px;
color: var(--text-muted); color: var(--text-muted);
opacity: 0.5; opacity: 0.5;
} }
.envHint { .envHint {
font-size: 11px; font-size: 12px;
color: var(--text-muted); color: var(--text-muted);
font-style: italic; font-style: italic;
} }
@@ -210,7 +210,7 @@
} }
.configHint { .configHint {
font-size: 11px; font-size: 12px;
color: var(--text-muted); color: var(--text-muted);
font-style: italic; font-style: italic;
margin-top: 2px; margin-top: 2px;

View File

@@ -83,7 +83,7 @@
.logEmpty { .logEmpty {
padding: 24px; padding: 24px;
text-align: center; text-align: center;
color: var(--text-faint); color: var(--text-muted);
font-size: 12px; font-size: 12px;
} }