openvibers/openvibe.actor Commits

Actor: agent cards that are off pass WCAG AA (dashed outline, not faded text) (#43)

OP OpenVibers committed 12 Oct 2026 · 8fffd17ace · 1 file, +3 −1

An axe (WCAG 2.1 A/AA) sweep of every OpenVibe home page found 2 serious color-contrast failures on openvibe.actor. Both were in the agent card for Codes, which is shown as off: the card was faded with `opacity: .78`, and its muted lines fell below 4.5:1. An off card now has a dashed outline and no fill, never faded text, and muted text inside cards uses `--text-secondary`. CSS only.

Changes

ddiff --git a/public/css/actor.css b/public/css/actor.css
iindex 41e1292..d6f2cb4 100644
---- a/public/css/actor.css
++++ b/public/css/actor.css
@@@ -77,7 +77,9 @@ button.sc-btn.sc-primary { border: 0; }
/* ── The agents ── */
.agent-cards { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.agent-card { padding: 16px; border-radius: 16px; border: 1px solid var(--border, #1f2d47); background: var(--bg-secondary, #101828); }
--.agent-card.off { opacity: .78; }
++/* An agent that is off: a dashed outline and no fill, never faded text (opacity took it below WCAG AA contrast). */
++.agent-card.off { border-style: dashed; background: transparent; }
++.agent-card .muted { color: var(--text-secondary, #96a7c2); }
.agent-card header { display: flex; justify-content: space-between; gap: 8px; align-items: baseline; }
.agent-card p { margin: .5rem 0 0; font-size: 14px; line-height: 1.5; }