|
40 | 40 | } |
41 | 41 |
|
42 | 42 | /** |
43 | | - * Dark color tokens - single source of truth for all colors (dark-only) |
| 43 | + * Color tokens - single source of truth for all colors |
| 44 | + * Light mode: Warm theme |
| 45 | + * Dark mode: Dark neutral theme |
44 | 46 | */ |
45 | 47 | @layer base { |
46 | 48 | :root, |
47 | 49 | .light { |
48 | | - /* Neutrals (surfaces) - Hex-inspired white theme */ |
49 | | - --surface-0: #ffffff; /* white canvas bg, modal header/droparea */ |
50 | | - --surface-1: #ffffff; /* white sidebar (primary) */ |
51 | | - --surface-2: #ffffff; /* white workflow blocks, modals (card) */ |
52 | | - --surface-3: #ffffff; /* white */ |
53 | | - --surface-4: #ffffff; /* white */ |
54 | | - --surface-5: #ffffff; /* subtle off-white for search, buttons, badges (card-2) */ |
55 | | - --surface-6: #ffffff; /* white */ |
56 | | - --surface-9: #f2f2f2; /* visible gray for active states, textarea bg (card-3) */ |
57 | | - --surface-11: #e8e8e8; /* deeper gray */ |
58 | | - --surface-12: #dedede; /* even deeper */ |
59 | | - --surface-13: #a3a3a3; /* muted gray */ |
60 | | - --surface-14: #737373; /* darker gray */ |
61 | | - --surface-15: #525252; /* darkest gray */ |
62 | | - --surface-elevated: #ffffff; /* white elevated */ |
63 | | - --bg-strong: #e8e8e8; /* strong bg element */ |
64 | | - |
65 | | - /* Text - neutral grays for Hex-inspired theme */ |
66 | | - --text-primary: #171717; /* near black */ |
67 | | - --text-secondary: #1f1f1f; /* dark gray */ |
68 | | - --text-tertiary: #404040; /* medium gray */ |
69 | | - --text-muted: #5c5c5c; /* muted gray */ |
70 | | - --text-subtle: #8a8a8a; /* subtle gray */ |
71 | | - --text-inverse: #fafafa; /* near white */ |
| 50 | + --bg: #fcfcf9; /* main canvas - warm off-white */ |
| 51 | + --surface-1: #f9faf7; /* sidebar, panels - very close to bg */ |
| 52 | + --surface-2: #fcfcf9; /* cards, modals - matches bg */ |
| 53 | + --surface-3: #f6f7f4; /* popovers, elevated */ |
| 54 | + --surface-4: #f2f3f0; /* buttons base */ |
| 55 | + --border: #e5e6e1; /* primary border */ |
| 56 | + --surface-5: #ecede8; /* inputs, hover states */ |
| 57 | + --border-1: #d7dcda; /* stronger border - sage gray */ |
| 58 | + --surface-6: #d7dcda; /* scroll thumbs, active states */ |
| 59 | + |
| 60 | + /* Text - warm neutrals */ |
| 61 | + --text-primary: #1a1a1a; |
| 62 | + --text-secondary: #2d2d2d; |
| 63 | + --text-tertiary: #525252; |
| 64 | + --text-muted: #737373; |
| 65 | + --text-subtle: #8c8c8c; |
| 66 | + --text-inverse: #f0fff6; |
72 | 67 | --text-error: #dc2626; |
73 | 68 |
|
74 | | - /* Borders / dividers - Hex-inspired neutral grays */ |
75 | | - --border: #e5e5e5; /* neutral gray border */ |
76 | | - --border-strong: #d4d4d4; /* stronger border */ |
77 | | - --divider: #ebebeb; /* subtle divider */ |
78 | | - --border-muted: #ebebeb; /* muted border */ |
79 | | - --border-success: #d4d4d4; /* success border */ |
| 69 | + /* Borders / dividers */ |
| 70 | + --divider: #e8e9e4; |
| 71 | + --border-muted: #dfe0db; |
| 72 | + --border-success: #d7dcda; |
80 | 73 |
|
81 | 74 | /* Brand & state */ |
82 | 75 | --brand-400: #8e4cfb; |
83 | | - --brand-500: #6f3dfa; |
84 | 76 | --brand-secondary: #33b4ff; |
85 | 77 | --brand-tertiary: #22c55e; |
86 | | - --brand-tertiary-2: #33c482; |
| 78 | + --brand-tertiary-2: #32bd7e; |
87 | 79 | --warning: #ea580c; |
88 | 80 |
|
89 | 81 | /* Utility */ |
90 | 82 | --white: #ffffff; |
91 | 83 |
|
92 | | - /* Font weights - lighter for light mode (-20 from dark) */ |
| 84 | + /* Font weights - lighter for light mode */ |
93 | 85 | --font-weight-base: 430; |
94 | 86 | --font-weight-medium: 450; |
95 | 87 | --font-weight-semibold: 500; |
96 | 88 |
|
97 | | - /* RGB for opacity usage - neutral grays */ |
98 | | - --surface-4-rgb: 255 255 255; /* white */ |
99 | | - --surface-5-rgb: 248 248 248; /* subtle off-white */ |
100 | | - --surface-7-rgb: 255 255 255; /* white */ |
101 | | - --surface-9-rgb: 242 242 242; /* active state gray */ |
102 | | - --divider-rgb: 235 235 235; /* divider gray */ |
| 89 | + /* RGB for opacity usage */ |
| 90 | + --surface-4-rgb: 242 243 240; |
| 91 | + --surface-5-rgb: 236 237 232; |
| 92 | + --surface-7-rgb: 246 247 244; |
| 93 | + --surface-9-rgb: 232 233 228; |
| 94 | + --divider-rgb: 232 233 228; |
103 | 95 | --white-rgb: 255 255 255; |
104 | 96 | --black-rgb: 0 0 0; |
105 | 97 |
|
106 | | - /* Extended palette - neutral grays for Hex-inspired theme */ |
107 | | - --c-0D0D0D: #0d0d0d; /* near black */ |
108 | | - --c-1A1A1A: #1a1a1a; /* very dark gray */ |
109 | | - --c-1F1F1F: #1f1f1f; /* very dark gray */ |
110 | | - --c-2A2A2A: #2a2a2a; /* dark gray */ |
111 | | - --c-383838: #383838; /* dark gray */ |
112 | | - --c-414141: #414141; /* medium-dark gray */ |
| 98 | + /* Extended palette */ |
| 99 | + --c-0D0D0D: #0d0d0d; |
| 100 | + --c-1A1A1A: #1a1a1a; |
| 101 | + --c-1F1F1F: #1f1f1f; |
| 102 | + --c-2A2A2A: #2a2a2a; |
| 103 | + --c-383838: #383838; |
| 104 | + --c-414141: #414141; |
113 | 105 | --c-442929: #442929; |
114 | 106 | --c-491515: #491515; |
115 | | - --c-575757: #575757; /* medium gray */ |
116 | | - --c-686868: #686868; /* medium gray */ |
117 | | - --c-707070: #707070; /* medium gray */ |
118 | | - --c-727272: #727272; /* medium gray */ |
119 | | - --c-737373: #737373; /* medium gray */ |
120 | | - --c-808080: #808080; /* gray */ |
121 | | - --c-858585: #858585; /* gray */ |
122 | | - --c-868686: #868686; /* gray */ |
123 | | - --c-8D8D8D: #8d8d8d; /* gray */ |
124 | | - --c-939393: #939393; /* gray */ |
125 | | - --c-A8A8A8: #a8a8a8; /* light gray */ |
126 | | - --c-B8B8B8: #b8b8b8; /* light gray */ |
127 | | - --c-C0C0C0: #c0c0c0; /* light gray */ |
128 | | - --c-CDCDCD: #cdcdcd; /* light gray */ |
129 | | - --c-D0D0D0: #d0d0d0; /* light gray */ |
130 | | - --c-D2D2D2: #d2d2d2; /* light gray */ |
131 | | - --c-E0E0E0: #e0e0e0; /* very light gray */ |
132 | | - --c-E5E5E5: #e5e5e5; /* very light gray */ |
133 | | - --c-E8E8E8: #e8e8e8; /* very light gray */ |
134 | | - --c-EEEEEE: #eeeeee; /* near white */ |
135 | | - --c-F0F0F0: #f0f0f0; /* near white */ |
136 | | - --c-F4F4F4: #f4f4f4; /* near white */ |
137 | | - --c-F5F5F5: #f5f5f5; /* near white */ |
| 107 | + --c-575757: #575757; |
| 108 | + --c-686868: #686868; |
| 109 | + --c-707070: #707070; |
| 110 | + --c-727272: #727272; |
| 111 | + --c-737373: #737373; |
| 112 | + --c-808080: #808080; |
| 113 | + --c-858585: #858585; |
| 114 | + --c-868686: #868686; |
| 115 | + --c-8D8D8D: #8d8d8d; |
| 116 | + --c-939393: #939393; |
| 117 | + --c-A8A8A8: #a8a8a8; |
| 118 | + --c-B8B8B8: #b8b8b8; |
| 119 | + --c-C0C0C0: #c0c0c0; |
| 120 | + --c-CDCDCD: #cdcdcd; |
| 121 | + --c-D0D0D0: #d0d0d0; |
| 122 | + --c-D2D2D2: #d2d2d2; |
| 123 | + --c-E0E0E0: #e0e0e0; |
| 124 | + --c-E5E5E5: #e5e5e5; |
| 125 | + --c-E8E8E8: #e8e8e8; |
| 126 | + --c-EEEEEE: #eeeeee; |
| 127 | + --c-F0F0F0: #f0f0f0; |
| 128 | + --c-F4F4F4: #f4f4f4; |
| 129 | + --c-F5F5F5: #f5f5f5; |
138 | 130 |
|
139 | 131 | /* Blues and cyans */ |
140 | 132 | --c-00B0B0: #00b0b0; |
|
168 | 160 | /* Terminal status badges */ |
169 | 161 | --terminal-status-error-bg: #feeeee; |
170 | 162 | --terminal-status-error-border: #f87171; |
171 | | - --terminal-status-info-bg: #f5f5f4; /* stone-100 */ |
172 | | - --terminal-status-info-border: #a8a29e; /* stone-400 */ |
173 | | - --terminal-status-info-color: #57534e; /* stone-600 */ |
| 163 | + --terminal-status-info-bg: #f5f5f4; |
| 164 | + --terminal-status-info-border: #a8a29e; |
| 165 | + --terminal-status-info-color: #57534e; |
174 | 166 | --terminal-status-warning-bg: #fef9e7; |
175 | 167 | --terminal-status-warning-border: #f5c842; |
176 | 168 | --terminal-status-warning-color: #a16207; |
177 | 169 | } |
178 | 170 | .dark { |
179 | 171 | /* Surface */ |
180 | | - --surface-0: #1b1b1b; |
| 172 | + --bg: #1b1b1b; |
181 | 173 | --surface-1: #1e1e1e; |
182 | 174 | --surface-2: #232323; |
183 | 175 | --surface-3: #242424; |
184 | 176 | --surface-4: #292929; |
185 | 177 | --border: #2c2c2c; |
186 | 178 | --surface-5: #363636; |
187 | 179 | --border-1: #3d3d3d; |
188 | | - --surface-12: #454545; |
189 | | - --surface-13: #454545; |
190 | | - --surface-14: #4a4a4a; |
191 | | - --surface-15: #5a5a5a; |
192 | | - --surface-elevated: #202020; |
193 | | - --bg-strong: #0c0c0c; |
| 180 | + --surface-6: #454545; |
194 | 181 |
|
195 | 182 | /* Text */ |
196 | 183 | --text-primary: #e6e6e6; |
|
201 | 188 | --text-inverse: #1b1b1b; |
202 | 189 | --text-error: #ef4444; |
203 | 190 |
|
204 | | - /* Borders / dividers */ |
205 | | - |
206 | 191 | /* --border-strong: #303030; */ |
207 | 192 | --divider: #393939; |
208 | 193 | --border-muted: #424242; |
|
212 | 197 | --brand-400: #8e4cfb; |
213 | 198 | --brand-secondary: #33b4ff; |
214 | 199 | --brand-tertiary: #22c55e; |
215 | | - --brand-tertiary-2: #33c482; |
| 200 | + --brand-tertiary-2: #32bd7e; |
216 | 201 | --warning: #ff6600; |
217 | 202 |
|
218 | 203 | /* Utility */ |
|
323 | 308 | } |
324 | 309 |
|
325 | 310 | body { |
326 | | - background-color: var(--surface-0); |
| 311 | + background-color: var(--bg); |
327 | 312 | color: var(--text-primary); |
328 | 313 | overscroll-behavior-x: none; |
329 | 314 | overscroll-behavior-y: none; |
|
359 | 344 | } |
360 | 345 |
|
361 | 346 | ::-webkit-scrollbar-thumb { |
362 | | - background-color: var(--surface-12); |
| 347 | + background-color: var(--surface-6); |
363 | 348 | border-radius: var(--radius); |
364 | 349 | } |
365 | 350 |
|
366 | 351 | ::-webkit-scrollbar-thumb:hover { |
367 | | - background-color: var(--surface-13); |
| 352 | + background-color: var(--surface-6); |
368 | 353 | } |
369 | 354 |
|
370 | 355 | /* Dark Mode Global Scrollbar */ |
|
373 | 358 | } |
374 | 359 |
|
375 | 360 | .dark ::-webkit-scrollbar-thumb { |
376 | | - background-color: var(--surface-12); |
| 361 | + background-color: var(--surface-6); |
377 | 362 | } |
378 | 363 |
|
379 | 364 | .dark ::-webkit-scrollbar-thumb:hover { |
380 | | - background-color: var(--surface-13); |
| 365 | + background-color: var(--surface-6); |
381 | 366 | } |
382 | 367 |
|
383 | 368 | * { |
384 | 369 | scrollbar-width: thin; |
385 | | - scrollbar-color: var(--surface-12) var(--surface-1); |
| 370 | + scrollbar-color: var(--surface-6) var(--surface-1); |
386 | 371 | } |
387 | 372 |
|
388 | 373 | .dark * { |
389 | | - scrollbar-color: var(--surface-12) var(--surface-4); |
| 374 | + scrollbar-color: var(--surface-6) var(--surface-4); |
390 | 375 | } |
391 | 376 |
|
392 | 377 | .copilot-scrollable { |
|
402 | 387 | } |
403 | 388 |
|
404 | 389 | .panel-tab-active { |
405 | | - background-color: var(--white); |
406 | | - color: var(--text-inverse); |
| 390 | + background-color: var(--surface-5); |
| 391 | + color: var(--text-primary); |
407 | 392 | border-color: var(--border-muted); |
408 | 393 | } |
409 | 394 |
|
|
0 commit comments