openvibers/openvibe.games Commits
Readable text on light themes (character panel, worlds) (#241)
Changes
@@@ -462,7 +462,12 @@ body:has(#ovg-frame-toggle:not([hidden])) .status {pointer-events: auto;}++/* The panel is dark on every theme, so its text tokens are its own: on a light theme the page's dark greys read 2.3:1++ on it (contrast probe, 2026-11-01). */.customize-panel {++ --text-primary: #e6e6e6;++ --text-secondary: #b8c2d0;++ --text-muted: #8d98a8;margin-left: 4vw;width: 320px;max-height: 92vh;@@@ -34,8 +34,9 @@--bg-card: rgba(19, 28, 46, 0.88);--border: #1f2d47;--text: #e6edf7;-- --text-dim: #96a7c2;-- --text-faint: #7386a3;++ /* The reader's theme (theme-loader.js), as the leaderboard page does: fixed greys faded on light themes (2.4:1). */++ --text-dim: var(--text-secondary, #96a7c2);++ --text-faint: var(--text-muted, #7386a3);--good: #34d399;--warn: #fbbf24;--bad: #f87171;
@@ -462,7 +462,12 @@ body:has(#ovg-frame-toggle:not([hidden])) .status {
@@ -462,7 +462,12 @@ body:has(#ovg-frame-toggle:not([hidden])) .status {
pointer-events: auto;
pointer-events: auto;
}
}
+/* The panel is dark on every theme, so its text tokens are its own: on a light theme the page's dark greys read 2.3:1
+ on it (contrast probe, 2026-11-01). */
.customize-panel {
.customize-panel {
+ --text-primary: #e6e6e6;
+ --text-secondary: #b8c2d0;
+ --text-muted: #8d98a8;
margin-left: 4vw;
margin-left: 4vw;
width: 320px;
width: 320px;
max-height: 92vh;
max-height: 92vh;
@@ -34,8 +34,9 @@
@@ -34,8 +34,9 @@
--bg-card: rgba(19, 28, 46, 0.88);
--bg-card: rgba(19, 28, 46, 0.88);
--border: #1f2d47;
--border: #1f2d47;
--text: #e6edf7;
--text: #e6edf7;
- --text-dim: #96a7c2;
- --text-faint: #7386a3;
+ /* The reader's theme (theme-loader.js), as the leaderboard page does: fixed greys faded on light themes (2.4:1). */
+ --text-dim: var(--text-secondary, #96a7c2);
+ --text-faint: var(--text-muted, #7386a3);
--good: #34d399;
--good: #34d399;
--warn: #fbbf24;
--warn: #fbbf24;
--bad: #f87171;
--bad: #f87171;