Auto-compute contrast text color for accent backgrounds
Add --primary-contrast CSS variable that auto-switches between white and dark text based on accent color luminance (WCAG relative luminance). Replace all hardcoded #fff/white on primary-color backgrounds with var(--primary-contrast) so light accent colors like yellow remain readable. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
:root {
|
||||
--primary-color: #4CAF50;
|
||||
--primary-hover: #5cb860;
|
||||
--primary-contrast: #ffffff;
|
||||
--danger-color: #f44336;
|
||||
--warning-color: #ff9800;
|
||||
--info-color: #2196F3;
|
||||
|
||||
@@ -399,7 +399,7 @@ body.cs-drag-active .card-drag-handle {
|
||||
padding: 1px 5px;
|
||||
border-radius: 3px;
|
||||
background: var(--primary-color);
|
||||
color: #fff;
|
||||
color: var(--primary-contrast);
|
||||
font-weight: 600;
|
||||
vertical-align: middle;
|
||||
margin-right: 2px;
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
.badge.processing {
|
||||
background: var(--primary-color);
|
||||
color: white;
|
||||
color: var(--primary-contrast);
|
||||
}
|
||||
|
||||
.badge.idle {
|
||||
@@ -80,7 +80,7 @@
|
||||
|
||||
.btn-primary {
|
||||
background: var(--primary-color);
|
||||
color: white;
|
||||
color: var(--primary-contrast);
|
||||
}
|
||||
|
||||
.btn-danger {
|
||||
|
||||
@@ -259,7 +259,7 @@
|
||||
font-size: 0.7rem;
|
||||
font-weight: 600;
|
||||
background: var(--primary-color);
|
||||
color: #fff;
|
||||
color: var(--primary-contrast);
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -161,7 +161,7 @@ h2 {
|
||||
|
||||
.tab-btn.active .tab-badge {
|
||||
background: var(--primary-color);
|
||||
color: #fff;
|
||||
color: var(--primary-contrast);
|
||||
}
|
||||
|
||||
.tab-panel {
|
||||
@@ -410,11 +410,12 @@ h2 {
|
||||
|
||||
.cp-result.cp-active {
|
||||
background: var(--primary-color);
|
||||
color: #fff;
|
||||
color: var(--primary-contrast);
|
||||
}
|
||||
|
||||
.cp-result.cp-active .cp-detail {
|
||||
color: rgba(255, 255, 255, 0.7);
|
||||
color: var(--primary-contrast);
|
||||
opacity: 0.7;
|
||||
}
|
||||
|
||||
.cp-icon {
|
||||
|
||||
@@ -832,7 +832,7 @@
|
||||
|
||||
.gradient-stop-bidir-btn.active {
|
||||
background: var(--primary-color);
|
||||
color: #fff;
|
||||
color: var(--primary-contrast);
|
||||
border-color: var(--primary-color);
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
@@ -73,11 +73,11 @@
|
||||
|
||||
.stream-card-link:hover {
|
||||
background: var(--primary-color);
|
||||
color: #fff;
|
||||
color: var(--primary-contrast);
|
||||
}
|
||||
|
||||
.stream-card-link:hover .icon {
|
||||
color: #fff;
|
||||
color: var(--primary-contrast);
|
||||
}
|
||||
|
||||
@keyframes cardHighlight {
|
||||
|
||||
@@ -578,7 +578,7 @@
|
||||
|
||||
.stream-tab-btn.active .stream-tab-count {
|
||||
background: var(--primary-color);
|
||||
color: #fff;
|
||||
color: var(--primary-contrast);
|
||||
}
|
||||
|
||||
.cs-expand-collapse-group {
|
||||
|
||||
Reference in New Issue
Block a user