zabi-components 5.0.17 → 5.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/README.md +124 -23
  2. package/dist/SSRSafe.svelte +0 -3
  3. package/dist/atoms/Badge.svelte +19 -34
  4. package/dist/atoms/Badge.svelte.d.ts +6 -5
  5. package/dist/atoms/Button.svelte +10 -9
  6. package/dist/atoms/Button.svelte.d.ts +3 -2
  7. package/dist/atoms/Card.svelte +74 -23
  8. package/dist/atoms/Card.svelte.d.ts +3 -1
  9. package/dist/atoms/CardContent.svelte +24 -0
  10. package/dist/atoms/CardContent.svelte.d.ts +8 -0
  11. package/dist/atoms/CardDescription.svelte +24 -0
  12. package/dist/atoms/CardDescription.svelte.d.ts +8 -0
  13. package/dist/atoms/CardFooter.svelte +24 -0
  14. package/dist/atoms/CardFooter.svelte.d.ts +8 -0
  15. package/dist/atoms/CardHeader.svelte +24 -0
  16. package/dist/atoms/CardHeader.svelte.d.ts +8 -0
  17. package/dist/atoms/CardTitle.svelte +33 -0
  18. package/dist/atoms/CardTitle.svelte.d.ts +9 -0
  19. package/dist/atoms/Checkbox.svelte +0 -4
  20. package/dist/atoms/CodeBlock.svelte +0 -3
  21. package/dist/atoms/ColorPicker.svelte +33 -65
  22. package/dist/atoms/FeatureCard.svelte +0 -10
  23. package/dist/atoms/FeatureCard.svelte.d.ts +0 -8
  24. package/dist/atoms/Heading.svelte +0 -2
  25. package/dist/atoms/Input.svelte +3 -12
  26. package/dist/atoms/Input.svelte.d.ts +3 -2
  27. package/dist/atoms/Progress.svelte +0 -3
  28. package/dist/atoms/Select.svelte +0 -14
  29. package/dist/atoms/Textarea.svelte +3 -9
  30. package/dist/atoms/Textarea.svelte.d.ts +3 -1
  31. package/dist/atoms/ThemeToggle.svelte +0 -7
  32. package/dist/atoms/Toast.svelte +0 -1
  33. package/dist/atoms/Toggle.svelte +0 -6
  34. package/dist/atoms/Tooltip.svelte +0 -12
  35. package/dist/atoms/index.d.ts +5 -0
  36. package/dist/atoms/index.js +5 -1
  37. package/dist/components/atoms/index.d.ts +5 -0
  38. package/dist/components/atoms/index.d.ts.map +1 -1
  39. package/dist/components/index.d.ts.map +1 -1
  40. package/dist/components/molecules/index.d.ts.map +1 -1
  41. package/dist/components/organisms/index.d.ts.map +1 -1
  42. package/dist/index.js +0 -23
  43. package/dist/molecules/Alert.svelte +3 -13
  44. package/dist/molecules/Alert.svelte.d.ts +2 -1
  45. package/dist/molecules/ComponentDemo.svelte +0 -2
  46. package/dist/molecules/ContactForm.svelte +21 -12
  47. package/dist/molecules/Dropdown.svelte +100 -6
  48. package/dist/molecules/Dropdown.svelte.d.ts +1 -0
  49. package/dist/molecules/Form.svelte +0 -1
  50. package/dist/molecules/ImageUpload.svelte +0 -4
  51. package/dist/molecules/Modal.svelte +29 -5
  52. package/dist/molecules/SlideUp.svelte +0 -2
  53. package/dist/molecules/Tabs.svelte +0 -2
  54. package/dist/molecules/index.js +0 -1
  55. package/dist/organisms/Navbar.svelte +0 -7
  56. package/dist/organisms/Navigation.svelte +0 -6
  57. package/dist/organisms/index.js +0 -1
  58. package/dist/routes/lib/focus-utils.d.ts +23 -0
  59. package/dist/routes/lib/focus-utils.ts +112 -0
  60. package/dist/routes/lib/variant-utils.ts +3 -1
  61. package/dist/zabi-components-colors.css +246 -178
  62. package/dist/zabi-components-theme-dark-only.css +11 -2
  63. package/dist/zabi-components-theme-dark.css +11 -2
  64. package/dist/zabi-components-theme-only.css +32 -24
  65. package/dist/zabi-components-theme.css +32 -24
  66. package/dist/zabi-components.css +259 -83
  67. package/package.json +5 -4
@@ -1,10 +1,15 @@
1
1
  /* ========================================
2
2
  ZABI COMPONENTS COLOR SYSTEM
3
3
  Standalone CSS Custom Properties
4
- Works without Tailwind CSS processing
4
+ Generated from src/app.css
5
+ ⚠️ DO NOT EDIT - This file is auto-generated
6
+ Edit src/app.css instead
5
7
  ======================================== */
6
8
 
7
9
  :root {
10
+ /* Typography - Nunito Sans font family */
11
+ --font-family-sans: 'Nunito Sans', ui-sans-serif, system-ui, sans-serif;
12
+
8
13
  /* Brand Color Scale */
9
14
  --color-brand-50: #f7faff;
10
15
  --color-brand-100: #edf2fb;
@@ -58,17 +63,17 @@
58
63
  --color-iris-950: #1b1b37;
59
64
 
60
65
  /* Base Color Scale - Maps to neutral palette */
61
- --color-base-50: #fafaf9;
62
- --color-base-100: #f5f5f4;
63
- --color-base-200: #e7e5e4;
64
- --color-base-300: #d6d3d1;
65
- --color-base-400: #a8a29e;
66
- --color-base-500: #78716c;
67
- --color-base-600: #57534e;
68
- --color-base-700: #44403c;
69
- --color-base-800: #292524;
70
- --color-base-900: #1c1917;
71
- --color-base-950: #0c0a09;
66
+ --color-base-50: theme(colors.neutral.50);
67
+ --color-base-100: theme(colors.neutral.100);
68
+ --color-base-200: theme(colors.neutral.200);
69
+ --color-base-300: theme(colors.neutral.300);
70
+ --color-base-400: theme(colors.neutral.400);
71
+ --color-base-500: theme(colors.neutral.500);
72
+ --color-base-600: theme(colors.neutral.600);
73
+ --color-base-700: theme(colors.neutral.700);
74
+ --color-base-800: theme(colors.neutral.800);
75
+ --color-base-900: theme(colors.neutral.900);
76
+ --color-base-950: theme(colors.neutral.950);
72
77
 
73
78
 
74
79
  /* Background Colors */
@@ -81,10 +86,19 @@
81
86
  --color-page-secondary: var(--color-base-200);
82
87
 
83
88
  /* Card Colors */
84
- --color-card: #ffffff;
89
+ --color-card: theme(colors.white);
85
90
  --color-card-hover: var(--color-base-100);
86
91
  --color-card-active: var(--color-base-100);
87
- --color-card-elevated: #ffffff;
92
+ --color-card-elevated: theme(colors.white);
93
+
94
+ /* Overlay Colors */
95
+ --color-overlay: rgba(0, 0, 0, 0.5);
96
+
97
+ /* Input Colors */
98
+ --color-input: var(--color-base-200);
99
+ --color-input-hover: var(--color-base-100);
100
+ --color-input-focus: var(--color-base-100);
101
+ --color-input-disabled: var(--color-base-100);
88
102
 
89
103
  /* Text Colors */
90
104
  --color-headline: var(--color-base-900);
@@ -93,14 +107,14 @@
93
107
  --color-caption: var(--color-base-500);
94
108
  --color-input-placeholder: var(--color-base-400);
95
109
  --color-label: var(--color-base-700);
96
- --color-link: var(--color-brand-600);
97
- --color-link-hover: var(--color-brand-700);
98
- --color-success-text: var(--color-pine-700);
99
- --color-warning-text: #b45309;
110
+ --color-link: theme(colors.brand.600);
111
+ --color-link-hover: theme(colors.brand.700);
112
+ --color-success-text: var(--color-success);
113
+ --color-warning-text: theme(colors.amber.700);
100
114
  --color-neutral-text: var(--color-base-700);
101
- --color-energetic-text: var(--color-citron-700);
102
- --color-error-text: #b91c1c;
103
- --color-inverse: #ffffff;
115
+ --color-energetic-text: theme(colors.citron.700);
116
+ --color-error-text: theme(colors.red.700);
117
+ --color-inverse: theme(colors.white);
104
118
  --color-disabled: var(--color-base-400);
105
119
 
106
120
  /* Border Colors */
@@ -110,16 +124,16 @@
110
124
  --color-border-strong: var(--color-base-500);
111
125
 
112
126
  /* Focus Colors */
113
- --color-focus: var(--color-brand-500);
114
- --color-focus-weak: var(--color-brand-600);
115
- --color-focus-medium: var(--color-brand-700);
116
- --color-focus-strong: var(--color-brand-800);
127
+ --color-focus: theme(colors.brand.500);
128
+ --color-focus-weak: theme(colors.brand.600);
129
+ --color-focus-medium: theme(colors.brand.700);
130
+ --color-focus-strong: theme(colors.brand.800);
117
131
 
118
132
  /* Primary Colors */
119
- --color-primary: var(--color-brand-600);
120
- --color-primary-weak: var(--color-brand-700);
121
- --color-primary-medium: var(--color-brand-800);
122
- --color-primary-strong: var(--color-brand-900);
133
+ --color-primary: theme(colors.brand.600);
134
+ --color-primary-weak: theme(colors.brand.700);
135
+ --color-primary-medium: theme(colors.brand.800);
136
+ --color-primary-strong: theme(colors.brand.900);
123
137
 
124
138
  /* Secondary Colors */
125
139
  --color-secondary: var(--color-base-600);
@@ -128,28 +142,28 @@
128
142
  --color-secondary-strong: var(--color-base-900);
129
143
 
130
144
  /* Success Colors */
131
- --color-success: var(--color-pine-600);
132
- --color-success-weak: var(--color-pine-700);
133
- --color-success-medium: var(--color-pine-800);
134
- --color-success-strong: var(--color-pine-900);
145
+ --color-success: theme(colors.pine.600);
146
+ --color-success-weak: theme(colors.pine.700);
147
+ --color-success-medium: theme(colors.pine.800);
148
+ --color-success-strong: theme(colors.pine.900);
135
149
 
136
150
  /* Warning Colors */
137
- --color-warning: #f59e0b;
138
- --color-warning-weak: #d97706;
139
- --color-warning-medium: #fbbf24;
140
- --color-warning-strong: #fcd34d;
151
+ --color-warning: theme(colors.amber.500);
152
+ --color-warning-weak: theme(colors.amber.600);
153
+ --color-warning-medium: theme(colors.amber.400);
154
+ --color-warning-strong: theme(colors.amber.300);
141
155
 
142
156
  /* Error Colors */
143
- --color-error: #ef4444;
144
- --color-error-weak: #dc2626;
145
- --color-error-medium: #f87171;
146
- --color-error-strong: #fca5a5;
157
+ --color-error: theme(colors.red.500);
158
+ --color-error-weak: theme(colors.red.600);
159
+ --color-error-medium: theme(colors.red.400);
160
+ --color-error-strong: theme(colors.red.300);
147
161
 
148
162
  /* Energetic Colors (Citron) */
149
- --color-energetic: var(--color-citron-500);
150
- --color-energetic-weak: var(--color-citron-600);
151
- --color-energetic-medium: var(--color-citron-400);
152
- --color-energetic-strong: var(--color-citron-300);
163
+ --color-energetic: theme(colors.citron.500);
164
+ --color-energetic-weak: theme(colors.citron.600);
165
+ --color-energetic-medium: theme(colors.citron.400);
166
+ --color-energetic-strong: theme(colors.citron.300);
153
167
 
154
168
  /* Neutral Colors */
155
169
  --color-neutral: var(--color-base-600);
@@ -158,111 +172,146 @@
158
172
  --color-neutral-strong: var(--color-base-900);
159
173
 
160
174
  /* Info Colors */
161
- --color-info: var(--color-iris-600);
162
- --color-info-weak: var(--color-iris-700);
163
- --color-info-medium: var(--color-iris-800);
164
- --color-info-strong: var(--color-iris-900);
175
+ --color-info: theme(colors.iris.600);
176
+ --color-info-weak: theme(colors.iris.700);
177
+ --color-info-medium: theme(colors.iris.800);
178
+ --color-info-strong: theme(colors.iris.900);
179
+ /* Text alias */
165
180
  --color-info-text: var(--color-info);
166
181
 
167
- /* Action Colors */
168
- --color-action-primary: var(--color-brand-300);
169
- --color-action-primary-hover: var(--color-brand-400);
170
- --color-action-primary-active: var(--color-brand-800);
171
- --color-action-primary-disabled: var(--color-brand-300);
172
- --color-action-primary-subtle: var(--color-brand-50);
173
- --color-action-primary-subtle-hover: var(--color-brand-100);
174
-
175
- --color-action-secondary: var(--color-base-600);
176
- --color-action-secondary-hover: var(--color-base-700);
177
- --color-action-secondary-active: var(--color-base-800);
178
- --color-action-secondary-disabled: var(--color-base-300);
179
- --color-action-secondary-subtle: var(--color-base-100);
180
- --color-action-secondary-subtle-hover: var(--color-base-200);
181
-
182
- --color-action-danger: #dc2626;
183
- --color-action-danger-hover: #b91c1c;
184
- --color-action-danger-active: #991b1b;
185
- --color-action-danger-disabled: #fca5a5;
186
- --color-action-danger-subtle: #fef2f2;
187
- --color-action-danger-subtle-hover: #fee2e2;
182
+ /* ========================================
183
+ ACTION COLORS - For interactive elements (buttons, links, etc.)
184
+ ======================================== */
185
+
186
+ /* Primary Actions - Used by bg-action-primary utility class */
187
+ /* 🎯 TO CHANGE bg-action-primary COLOR: Edit the values below */
188
+ --color-action-primary: var(--color-brand-950);
189
+ --color-action-primary-hover: var(--color-brand-900);
190
+ --color-action-primary-active: var(--color-brand-400);
191
+ --color-action-primary-disabled: var(--color-brand-500);
192
+ --color-action-primary-subtle: var(--color-brand-100);
193
+ --color-action-primary-subtle-hover: var(--color-brand-200);
194
+ --color-action-primary-text: var(--color-brand-50);
195
+
196
+ /* Secondary Actions - Used by bg-action-secondary utility class */
197
+ --color-action-secondary: var(--color-brand-200);
198
+ --color-action-secondary-hover: var(--color-brand-100);
199
+ --color-action-secondary-active: var(--color-brand-400);
200
+ --color-action-secondary-disabled: var(--color-brand-500);
201
+ --color-action-secondary-subtle: var(--color-brand-600);
202
+ --color-action-secondary-subtle-hover: var(--color-brand-700);
203
+
204
+ /* Danger Actions - Used by bg-action-danger utility class */
205
+ --color-action-danger: theme(colors.red.600);
206
+ --color-action-danger-hover: theme(colors.red.700);
207
+ --color-action-danger-active: theme(colors.red.800);
208
+ --color-action-danger-disabled: theme(colors.red.300);
209
+ --color-action-danger-subtle: theme(colors.red.50);
210
+ --color-action-danger-subtle-hover: theme(colors.red.100);
211
+
212
+ /* Shadow Colors */
213
+ --shadow-color: 0 0 0;
214
+ --shadow-opacity: 0.1;
215
+ --shadow-sm: 0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity));
216
+ --shadow-md: 0 4px 6px -1px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 2px 4px -2px rgb(var(--shadow-color) / var(--shadow-opacity));
217
+ --shadow-lg: 0 10px 15px -3px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 4px 6px -4px rgb(var(--shadow-color) / var(--shadow-opacity));
218
+ --shadow-xl: 0 20px 25px -5px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 8px 10px -6px rgb(var(--shadow-color) / var(--shadow-opacity));
219
+
220
+ /* Spacing */
221
+ --spacing-xs: 0.25rem;
222
+ --spacing-sm: 0.5rem;
223
+ --spacing-md: 1rem;
224
+ --spacing-lg: 1.5rem;
225
+ --spacing-xl: 2rem;
226
+ --spacing-2xl: 3rem;
227
+
228
+ /* Border Radius */
229
+ --radius-sm: 0.25rem;
230
+ --radius-md: 0.375rem;
231
+ --radius-lg: 0.5rem;
232
+ --radius-xl: 0.75rem;
233
+
234
+ /* Z-index */
235
+ --z-dropdown: 1000;
236
+ --z-sticky: 1020;
237
+ --z-fixed: 1030;
238
+ --z-modal-backdrop: 1040;
239
+ --z-modal: 1050;
240
+ --z-popover: 1060;
241
+ --z-tooltip: 1070;
242
+ --z-toast: 1080;
188
243
  }
189
244
 
190
245
  /* Dark Mode */
191
246
  .dark {
192
-
193
247
  /* Brand Color Scale - Dark mode variants */
194
- --color-brand-50: #1f2866;
195
- --color-brand-100: #2f3c99;
196
- --color-brand-200: #3f4fc0;
197
- --color-brand-300: #5366e2;
198
- --color-brand-400: #6e84fa;
199
- --color-brand-500: #8fa8ff;
200
- --color-brand-600: #abc4ff;
201
- --color-brand-700: #ccdbfd;
202
- --color-brand-800: #dfe7fb;
203
- --color-brand-900: #edf2fb;
204
- --color-brand-950: #f7faff;
248
+ --color-brand-50: theme(colors.brand.950);
249
+ --color-brand-100: theme(colors.brand.900);
250
+ --color-brand-200: theme(colors.brand.800);
251
+ --color-brand-300: theme(colors.brand.700);
252
+ --color-brand-400: theme(colors.brand.600);
253
+ --color-brand-500: theme(colors.brand.500);
254
+ --color-brand-600: theme(colors.brand.400);
255
+ --color-brand-700: theme(colors.brand.300);
256
+ --color-brand-800: theme(colors.brand.200);
257
+ --color-brand-900: theme(colors.brand.100);
258
+ --color-brand-950: theme(colors.brand.50);
205
259
 
206
260
  /* Citron Color Scale - Dark mode variants */
207
- --color-citron-50: #323518;
208
- --color-citron-100: #4d5229;
209
- --color-citron-200: #666c35;
210
- --color-citron-300: #848a43;
211
- --color-citron-400: #a3a852;
212
- --color-citron-500: #bbbe64;
213
- --color-citron-600: #c7d460;
214
- --color-citron-700: #d5e184;
215
- --color-citron-800: #e4ecaa;
216
- --color-citron-900: #f1f5cf;
217
- --color-citron-950: #f9faeb;
261
+ --color-citron-50: theme(colors.citron.950);
262
+ --color-citron-100: theme(colors.citron.900);
263
+ --color-citron-200: theme(colors.citron.800);
264
+ --color-citron-300: theme(colors.citron.700);
265
+ --color-citron-400: theme(colors.citron.600);
266
+ --color-citron-500: theme(colors.citron.500);
267
+ --color-citron-600: theme(colors.citron.400);
268
+ --color-citron-700: theme(colors.citron.300);
269
+ --color-citron-800: theme(colors.citron.200);
270
+ --color-citron-900: theme(colors.citron.100);
271
+ --color-citron-950: theme(colors.citron.50);
218
272
 
219
273
  /* Pine Color Scale - Dark mode variants */
220
- --color-pine-50: #02160f;
221
- --color-pine-100: #04231a;
222
- --color-pine-200: #063a2a;
223
- --color-pine-300: #084532;
224
- --color-pine-400: #0a513a;
225
- --color-pine-500: #0C5D43;
226
- --color-pine-600: #49ad91;
227
- --color-pine-700: #78c4ad;
228
- --color-pine-800: #a7d9c9;
229
- --color-pine-900: #d2ece4;
230
- --color-pine-950: #e9f6f2;
274
+ --color-pine-50: theme(colors.pine.950);
275
+ --color-pine-100: theme(colors.pine.900);
276
+ --color-pine-200: theme(colors.pine.800);
277
+ --color-pine-300: theme(colors.pine.700);
278
+ --color-pine-400: theme(colors.pine.600);
279
+ --color-pine-500: theme(colors.pine.500);
280
+ --color-pine-600: theme(colors.pine.400);
281
+ --color-pine-700: theme(colors.pine.300);
282
+ --color-pine-800: theme(colors.pine.200);
283
+ --color-pine-900: theme(colors.pine.100);
284
+ --color-pine-950: theme(colors.pine.50);
231
285
 
232
286
  /* Iris Color Scale - Dark mode variants */
233
- --color-iris-50: #1b1b37;
234
- --color-iris-100: #2a2a56;
235
- --color-iris-200: #38386f;
236
- --color-iris-300: #474788;
237
- --color-iris-400: #58589e;
238
- --color-iris-500: #6969B3;
239
- --color-iris-600: #a3a3d8;
240
- --color-iris-700: #bdbde6;
241
- --color-iris-800: #d6d6f0;
242
- --color-iris-900: #e9e9f7;
243
- --color-iris-950: #f4f4fa;
287
+ --color-iris-50: theme(colors.iris.950);
288
+ --color-iris-100: theme(colors.iris.900);
289
+ --color-iris-200: theme(colors.iris.800);
290
+ --color-iris-300: theme(colors.iris.700);
291
+ --color-iris-400: theme(colors.iris.600);
292
+ --color-iris-500: theme(colors.iris.500);
293
+ --color-iris-600: theme(colors.iris.400);
294
+ --color-iris-700: theme(colors.iris.300);
295
+ --color-iris-800: theme(colors.iris.200);
296
+ --color-iris-900: theme(colors.iris.100);
297
+ --color-iris-950: theme(colors.iris.50);
244
298
 
245
299
  /* Base Color Scale - Dark mode variants (inverted neutral palette) */
246
- --color-base-50: #0c0a09;
247
- --color-base-100: #1c1917;
248
- --color-base-200: #292524;
249
- --color-base-300: #44403c;
250
- --color-base-400: #57534e;
251
- --color-base-500: #78716c;
252
- --color-base-600: #a8a29e;
253
- --color-base-700: #d6d3d1;
254
- --color-base-800: #e7e5e4;
255
- --color-base-900: #f5f5f4;
256
- --color-base-950: #fafaf9;
257
-
258
- /* Background Colors */
259
- --color-background: var(--color-base-100);
260
- --color-background-secondary: var(--color-base-200);
261
- --color-background-tertiary: var(--color-base-300);
262
-
263
- /* Page Colors */
264
- --color-page: var(--color-base-200);
265
- --color-page-secondary: var(--color-base-200);
300
+ --color-base-50: theme(colors.neutral.950);
301
+ --color-base-100: theme(colors.neutral.900);
302
+ --color-base-200: theme(colors.neutral.800);
303
+ --color-base-300: theme(colors.neutral.700);
304
+ --color-base-400: theme(colors.neutral.600);
305
+ --color-base-500: theme(colors.neutral.500);
306
+ --color-base-600: theme(colors.neutral.400);
307
+ --color-base-700: theme(colors.neutral.300);
308
+ --color-base-800: theme(colors.neutral.200);
309
+ --color-base-900: theme(colors.neutral.100);
310
+ --color-base-950: theme(colors.neutral.50);
311
+
312
+ /* Background Colors - No dark mode overrides needed, base colors are already inverted */
313
+
314
+ /* Page Colors - No dark mode overrides needed, base colors are already inverted */
266
315
 
267
316
  /* Card Colors */
268
317
  --color-card: var(--color-base-200);
@@ -270,27 +319,18 @@
270
319
  --color-card-active: var(--color-base-400);
271
320
  --color-card-elevated: var(--color-base-200);
272
321
 
273
- /* Text Colors */
274
- --color-headline: var(--color-base-900);
275
- --color-body: var(--color-base-800);
276
- --color-description: var(--color-base-700);
277
- --color-caption: var(--color-base-600);
278
- --color-input-placeholder: var(--color-base-500);
279
- --color-label: var(--color-base-800);
280
- /* Link Colors - No dark mode overrides needed, brand colors are already inverted */
281
- /* Success Text - No dark mode overrides needed, pine colors are already inverted */
282
- --color-warning-text: #fbbf24;
283
- /* Neutral Text - No dark mode overrides needed, base colors are already inverted */
284
- /* Energetic Text - No dark mode overrides needed, citron colors are already inverted */
285
- --color-error-text: #f87171;
286
- --color-inverse: var(--color-base-100);
287
- --color-disabled: var(--color-base-500);
322
+ /* Overlay Colors */
323
+ --color-overlay: rgba(0, 0, 0, 0.7);
288
324
 
289
- /* Border Colors */
290
- --color-border: var(--color-base-400);
291
- --color-border-weak: var(--color-base-500);
292
- --color-border-medium: var(--color-base-600);
293
- --color-border-strong: var(--color-base-700);
325
+ /* Input Colors */
326
+ --color-input: var(--color-base-300);
327
+ --color-input-hover: var(--color-base-400);
328
+ --color-input-focus: var(--color-base-300);
329
+ --color-input-disabled: var(--color-base-400);
330
+
331
+ /* Text Colors - No dark mode overrides needed, base colors are already inverted */
332
+
333
+ /* Border Colors - No dark mode overrides needed, base colors are already inverted */
294
334
 
295
335
  /* Focus Colors - No dark mode overrides needed, brand colors are already inverted */
296
336
 
@@ -298,36 +338,64 @@
298
338
 
299
339
  /* Secondary Colors - No dark mode overrides needed, base colors are already inverted */
300
340
 
301
- /* Success Colors - No dark mode overrides needed, pine colors are already inverted */
341
+ /* Success Colors */
342
+ --color-success: theme(colors.pine.400);
343
+ --color-success-weak: theme(colors.pine.500);
344
+ --color-success-medium: theme(colors.pine.300);
345
+ --color-success-strong: theme(colors.pine.200);
302
346
 
303
347
  /* Warning Colors */
304
- --color-warning: #f59e0b;
305
- --color-warning-weak: #d97706;
306
- --color-warning-medium: #fbbf24;
307
- --color-warning-strong: #fcd34d;
348
+ --color-warning: theme(colors.amber.500);
349
+ --color-warning-weak: theme(colors.amber.600);
350
+ --color-warning-medium: theme(colors.amber.400);
351
+ --color-warning-strong: theme(colors.amber.300);
308
352
 
309
353
  /* Error Colors */
310
- --color-error: #ef4444;
311
- --color-error-weak: #dc2626;
312
- --color-error-medium: #f87171;
313
- --color-error-strong: #fca5a5;
354
+ --color-error: theme(colors.red.500);
355
+ --color-error-weak: theme(colors.red.600);
356
+ --color-error-medium: theme(colors.red.400);
357
+ --color-error-strong: theme(colors.red.300);
314
358
 
315
- /* Energetic Colors (Citron) - No dark mode overrides needed, citron colors are already inverted */
359
+ /* Energetic Colors (Citron) */
360
+ --color-energetic: theme(colors.citron.400);
361
+ --color-energetic-weak: theme(colors.citron.500);
362
+ --color-energetic-medium: theme(colors.citron.300);
363
+ --color-energetic-strong: theme(colors.citron.200);
316
364
 
317
365
  /* Neutral Colors - No dark mode overrides needed, base colors are already inverted */
318
366
 
319
- /* Info Colors - No dark mode overrides needed, iris colors are already inverted */
320
-
321
- /* Action Colors - Dark mode variants */
322
- /* Primary Actions - No dark mode overrides needed, brand colors are already inverted */
323
-
324
- /* Action Secondary - No dark mode overrides needed, base colors are already inverted */
367
+ /* Info Colors */
368
+ --color-info: theme(colors.iris.500);
369
+ --color-info-weak: theme(colors.iris.600);
370
+ --color-info-active: theme(colors.iris.400);
371
+ --color-info-medium: theme(colors.iris.400);
372
+ --color-info-strong: theme(colors.iris.300);
373
+ /* Text alias */
374
+ --color-info-text: var(--color-info);
325
375
 
326
- --color-action-danger: #ef4444;
327
- --color-action-danger-hover: #dc2626;
328
- --color-action-danger-active: #b91c1c;
329
- --color-action-danger-disabled: #b91c1c;
330
- --color-action-danger-subtle: #450a0a;
331
- --color-action-danger-subtle-hover: #7f1d1d;
376
+ /* ========================================
377
+ ACTION COLORS - Dark Mode Overrides
378
+ ======================================== */
379
+
380
+ /* Primary Actions - Background adapts automatically via brand color inversion */
381
+ /* 🎯 TO CHANGE bg-action-primary IN DARK MODE: Edit --color-brand-800 in .dark block (line ~275) */
382
+ /* Text color - Use brand-50 (which maps to brand-950/darkest in dark mode) for proper contrast */
383
+ --color-action-primary-text: var(--color-brand-50);
384
+
385
+ /* Secondary Actions - No dark mode overrides needed, base colors are already inverted */
386
+
387
+ /* Danger Actions */
388
+ --color-action-danger: theme(colors.red.500);
389
+ --color-action-danger-hover: theme(colors.red.600);
390
+ --color-action-danger-active: theme(colors.red.700);
391
+ --color-action-danger-disabled: theme(colors.red.700);
392
+ --color-action-danger-subtle: theme(colors.red.950);
393
+ --color-action-danger-subtle-hover: theme(colors.red.900);
394
+
395
+ /* Shadow Colors */
396
+ --shadow-opacity: 0.3;
397
+ --shadow-sm: 0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity));
398
+ --shadow-md: 0 4px 6px -1px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 2px 4px -2px rgb(var(--shadow-color) / var(--shadow-opacity));
399
+ --shadow-lg: 0 10px 15px -3px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 4px 6px -4px rgb(var(--shadow-color) / var(--shadow-opacity));
400
+ --shadow-xl: 0 20px 25px -5px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 8px 10px -6px rgb(var(--shadow-color) / var(--shadow-opacity));
332
401
  }
333
-
@@ -76,6 +76,9 @@
76
76
  --color-card-active: var(--color-base-400);
77
77
  --color-card-elevated: var(--color-base-200);
78
78
 
79
+ /* Overlay Colors */
80
+ --color-overlay: rgba(0, 0, 0, 0.7);
81
+
79
82
  /* Input Colors */
80
83
  --color-input: var(--color-base-300);
81
84
  --color-input-hover: var(--color-base-400);
@@ -127,8 +130,14 @@
127
130
  /* Text alias */
128
131
  --color-info-text: var(--color-info);
129
132
 
130
- /* Action Colors - Dark mode variants */
131
- /* Primary Actions - No dark mode overrides needed, brand colors are already inverted */
133
+ /* ========================================
134
+ ACTION COLORS - Dark Mode Overrides
135
+ ======================================== */
136
+
137
+ /* Primary Actions - Background adapts automatically via brand color inversion */
138
+ /* 🎯 TO CHANGE bg-action-primary IN DARK MODE: Edit --color-brand-800 in .dark block (line ~275) */
139
+ /* Text color - Use brand-50 (which maps to brand-950/darkest in dark mode) for proper contrast */
140
+ --color-action-primary-text: var(--color-brand-50);
132
141
 
133
142
  /* Secondary Actions - No dark mode overrides needed, base colors are already inverted */
134
143
 
@@ -78,6 +78,9 @@
78
78
  --color-card-active: var(--color-base-400);
79
79
  --color-card-elevated: var(--color-base-200);
80
80
 
81
+ /* Overlay Colors */
82
+ --color-overlay: rgba(0, 0, 0, 0.7);
83
+
81
84
  /* Input Colors */
82
85
  --color-input: var(--color-base-300);
83
86
  --color-input-hover: var(--color-base-400);
@@ -129,8 +132,14 @@
129
132
  /* Text alias */
130
133
  --color-info-text: var(--color-info);
131
134
 
132
- /* Action Colors - Dark mode variants */
133
- /* Primary Actions - No dark mode overrides needed, brand colors are already inverted */
135
+ /* ========================================
136
+ ACTION COLORS - Dark Mode Overrides
137
+ ======================================== */
138
+
139
+ /* Primary Actions - Background adapts automatically via brand color inversion */
140
+ /* 🎯 TO CHANGE bg-action-primary IN DARK MODE: Edit --color-brand-800 in .dark block (line ~275) */
141
+ /* Text color - Use brand-50 (which maps to brand-950/darkest in dark mode) for proper contrast */
142
+ --color-action-primary-text: var(--color-brand-50);
134
143
 
135
144
  /* Secondary Actions - No dark mode overrides needed, base colors are already inverted */
136
145