|
154 | 154 | --color-background-dimmed: var(--color-charcoal-850); |
155 | 155 | --color-background-bright: var(--color-charcoal-800); |
156 | 156 | --color-background-hover: var(--color-charcoal-750); |
| 157 | + --color-surface-hover-subtle: var(--color-charcoal-750); |
157 | 158 | --color-background-raised: var(--color-charcoal-700); |
| 159 | + --color-surface-selected: var(--color-charcoal-650); |
| 160 | + --color-surface-selected-hover: var(--color-charcoal-600); |
158 | 161 | --color-surface-control: var(--color-charcoal-600); |
159 | 162 | --color-surface-control-hover: var(--color-charcoal-550); |
160 | 163 | --color-surface-control-active: var(--color-charcoal-500); |
|
163 | 166 | /* Borders, from subtlest to most visible */ |
164 | 167 | --color-grid-dimmed: var(--color-charcoal-750); |
165 | 168 | --color-grid-bright: var(--color-charcoal-700); |
| 169 | + /* Blend of border-bright over the selected card, so it tracks whatever ramp |
| 170 | + border-bright is on - the dark themes need no contrast entry of their own */ |
| 171 | + --color-border-selected: color-mix(in srgb, var(--color-border-bright) 50%, var(--color-surface-selected)); |
166 | 172 | --color-border-bright: var(--color-charcoal-600); |
167 | 173 | --color-border-brighter: var(--color-charcoal-550); |
168 | 174 | --color-border-brightest: var(--color-charcoal-500); |
|
766 | 772 | --color-background-dimmed: #fbfbfc; |
767 | 773 | --color-background-bright: #ffffff; |
768 | 774 | --color-background-hover: #f2f3f5; |
| 775 | + /* Cards on white need a gentler hover than the app-wide surfaces */ |
| 776 | + --color-surface-hover-subtle: #f7f8f9; |
769 | 777 | --color-background-raised: #e9eaee; |
770 | 778 | --color-surface-control: #dcdee3; |
771 | 779 | --color-surface-control-hover: #cfd2d9; |
772 | 780 | --color-surface-control-active: #b8bcc6; |
| 781 | + /* Selection sits lighter than the controls here - on white a soft grey is |
| 782 | + already enough to read as selected */ |
| 783 | + --color-surface-selected: #eff0f2; |
| 784 | + --color-surface-selected-hover: #e7e9ec; |
773 | 785 |
|
774 | 786 | /* Borders */ |
775 | 787 | --color-grid-dimmed: #eceef1; |
776 | 788 | --color-grid-bright: #e2e4e9; |
| 789 | + --color-border-selected: #e0e2e6; |
777 | 790 | --color-border-bright: #d2d5db; |
778 | 791 | --color-border-brighter: #b9bdc7; |
779 | 792 | --color-border-brightest: #9ba1ad; |
|
931 | 944 | --color-background-dimmed: color-mix(in srgb, var(--color-charcoal-850), #000 calc(var(--theme-contrast, 0) * 55%)); |
932 | 945 | --color-background-bright: color-mix(in srgb, var(--color-charcoal-800), #000 calc(var(--theme-contrast, 0) * 45%)); |
933 | 946 | --color-background-hover: color-mix(in srgb, var(--color-charcoal-750), #000 calc(var(--theme-contrast, 0) * 35%)); |
| 947 | + --color-surface-hover-subtle: color-mix(in srgb, var(--color-charcoal-750), #000 calc(var(--theme-contrast, 0) * 35%)); |
934 | 948 | --color-background-raised: color-mix(in srgb, var(--color-charcoal-700), #000 calc(var(--theme-contrast, 0) * 25%)); |
935 | 949 | --color-input-bg: color-mix(in srgb, var(--color-charcoal-750), #000 calc(var(--theme-contrast, 0) * 35%)); |
936 | 950 |
|
|
955 | 969 | page-behind surfaces darken a touch so panels separate */ |
956 | 970 | --color-background-deep: color-mix(in srgb, #f1f2f4, #000 calc(var(--theme-contrast, 0) * 10%)); |
957 | 971 | --color-background-hover: color-mix(in srgb, #f2f3f5, #000 calc(var(--theme-contrast, 0) * 8%)); |
| 972 | + /* Radio card surfaces take no ramp at all on white - their contrast is |
| 973 | + carried by border-selected below. Deliberately absent: surface-hover-subtle, |
| 974 | + surface-selected, surface-selected-hover. */ |
958 | 975 | --color-background-raised: color-mix(in srgb, #e9eaee, #000 calc(var(--theme-contrast, 0) * 10%)); |
959 | 976 |
|
960 | 977 | /* Controls and borders push hard toward black - this is where light-mode |
|
964 | 981 | --color-surface-control-active: color-mix(in srgb, #b8bcc6, #000 calc(var(--theme-contrast, 0) * 32%)); |
965 | 982 | --color-grid-dimmed: color-mix(in srgb, #eceef1, #000 calc(var(--theme-contrast, 0) * 28%)); |
966 | 983 | --color-grid-bright: color-mix(in srgb, #e2e4e9, #000 calc(var(--theme-contrast, 0) * 32%)); |
| 984 | + /* Steeper than border-bright so the selected card stays the loudest edge */ |
| 985 | + --color-border-selected: color-mix(in srgb, #e0e2e6, #000 calc(var(--theme-contrast, 0) * 45%)); |
967 | 986 | --color-border-bright: color-mix(in srgb, #d2d5db, #000 calc(var(--theme-contrast, 0) * 38%)); |
968 | 987 | --color-border-brighter: color-mix(in srgb, #b9bdc7, #000 calc(var(--theme-contrast, 0) * 42%)); |
969 | 988 | --color-border-brightest: color-mix(in srgb, #9ba1ad, #000 calc(var(--theme-contrast, 0) * 46%)); |
|
0 commit comments