openvibers/openvibe.vip Commits
Buttons readable in every theme: filled controls use the strong accent pair (white on #3b82f6 failed AA on creator pages; browser check) (#69)
Changes
@@@ -6,6 +6,9 @@--vip-muted: var(--text-secondary, #9aa7bd);--vip-accent: var(--accent, #3b82f6);--vip-on-accent: var(--on-accent, #ffffff);++ /* Filled controls carry text: the strong pair passes AA in every theme (white on #3b82f6 is 3.68:1). */++ --vip-accent-strong: var(--accent-strong, var(--accent, #3472d8));++ --vip-on-accent-strong: var(--on-accent-strong, var(--on-accent, #ffffff));--vip-border: var(--border, rgba(255, 255, 255, .1));--vip-bad: #f87171;--vip-good: #34d399;@@@ -29,7 +32,7 @@ h3 { font-size: 1.05rem; margin: .8em 0 .3em; }.hero p { font-size: 1.08rem; }.card { background: var(--vip-card); border: 1px solid var(--vip-border); border-radius: 12px; padding: 16px 18px; margin: 16px 0; }.card.narrow { max-width: 560px; margin: 32px auto; }--.button, button { display: inline-block; background: var(--vip-accent); color: var(--vip-on-accent); border: 0; border-radius: 8px; padding: 9px 16px; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none; }++.button, :where(main) button { display: inline-block; background: var(--vip-accent-strong); color: var(--vip-on-accent-strong); border: 0; border-radius: 8px; padding: 9px 16px; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none; }.button-quiet { background: transparent; color: var(--vip-accent); border: 1px solid var(--vip-accent); }form label { display: block; margin: 10px 0; }form input:not([type=checkbox]):not([type=hidden]), form textarea, form select {
@@ -6,6 +6,9 @@
@@ -6,6 +6,9 @@
--vip-muted: var(--text-secondary, #9aa7bd);
--vip-muted: var(--text-secondary, #9aa7bd);
--vip-accent: var(--accent, #3b82f6);
--vip-accent: var(--accent, #3b82f6);
--vip-on-accent: var(--on-accent, #ffffff);
--vip-on-accent: var(--on-accent, #ffffff);
+ /* Filled controls carry text: the strong pair passes AA in every theme (white on #3b82f6 is 3.68:1). */
+ --vip-accent-strong: var(--accent-strong, var(--accent, #3472d8));
+ --vip-on-accent-strong: var(--on-accent-strong, var(--on-accent, #ffffff));
--vip-border: var(--border, rgba(255, 255, 255, .1));
--vip-border: var(--border, rgba(255, 255, 255, .1));
--vip-bad: #f87171;
--vip-bad: #f87171;
--vip-good: #34d399;
--vip-good: #34d399;
@@ -29,7 +32,7 @@ h3 { font-size: 1.05rem; margin: .8em 0 .3em; }
@@ -29,7 +32,7 @@ h3 { font-size: 1.05rem; margin: .8em 0 .3em; }
.hero p { font-size: 1.08rem; }
.hero p { font-size: 1.08rem; }
.card { background: var(--vip-card); border: 1px solid var(--vip-border); border-radius: 12px; padding: 16px 18px; margin: 16px 0; }
.card { background: var(--vip-card); border: 1px solid var(--vip-border); border-radius: 12px; padding: 16px 18px; margin: 16px 0; }
.card.narrow { max-width: 560px; margin: 32px auto; }
.card.narrow { max-width: 560px; margin: 32px auto; }
-.button, button { display: inline-block; background: var(--vip-accent); color: var(--vip-on-accent); border: 0; border-radius: 8px; padding: 9px 16px; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none; }
+.button, :where(main) button { display: inline-block; background: var(--vip-accent-strong); color: var(--vip-on-accent-strong); border: 0; border-radius: 8px; padding: 9px 16px; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none; }
.button-quiet { background: transparent; color: var(--vip-accent); border: 1px solid var(--vip-accent); }
.button-quiet { background: transparent; color: var(--vip-accent); border: 1px solid var(--vip-accent); }
form label { display: block; margin: 10px 0; }
form label { display: block; margin: 10px 0; }
form input:not([type=checkbox]):not([type=hidden]), form textarea, form select {
form input:not([type=checkbox]):not([type=hidden]), form textarea, form select {