zabi-components 7.0.0 → 7.0.2

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.
@@ -1,437 +1,3 @@
1
- /* ========================================
2
- ZABI COMPONENTS COLOR SYSTEM
3
- Standalone CSS Custom Properties
4
- Generated from src/app.css
5
- ⚠️ DO NOT EDIT - This file is auto-generated
6
- Edit src/app.css instead
7
- ======================================== */
8
-
9
- :root {
10
- /*
11
- * Custom base (gray) ramp — single physical scale for --color-base-*.
12
- * 21 stops: 50 … 950 (lightest → darkest). Edit hex here; mirror the same block in .dark for standalone imports.
13
- * Dark: semantic step S maps to physical (1000 − S), e.g. 50↔950, 75↔925; 500 stays fixed.
14
- * Midpoints are frozen hex values (default mode: fixed).
15
- */
16
- --zabi-base-50: #fafafa
17
- --zabi-base-75: #f7f7f7
18
- --zabi-base-100: #f4f4f5
19
- --zabi-base-150: #ececee
20
- --zabi-base-200: #e4e4e7
21
- --zabi-base-250: #dcdcdf
22
- --zabi-base-300: #d4d4d8
23
- --zabi-base-350: #babac1
24
- --zabi-base-400: #a1a1aa
25
- --zabi-base-450: #898992
26
- --zabi-base-500: #71717a
27
- --zabi-base-550: #61616a
28
- --zabi-base-600: #52525b
29
- --zabi-base-650: #484850
30
- --zabi-base-700: #3f3f46
31
- --zabi-base-750: #333338
32
- --zabi-base-800: #27272a
33
- --zabi-base-850: #1f1f22
34
- --zabi-base-900: #18181b
35
- --zabi-base-925: #101013
36
- --zabi-base-950: #09090b
37
- /* Typography - Nunito Sans font family */
38
- --font-family-sans: 'Nunito Sans', ui-sans-serif, system-ui, sans-serif
39
- /* Brand Color Scale */
40
- --color-brand-50: #f7faff
41
- --color-brand-100: #edf2fb
42
- --color-brand-200: #dfe7fb
43
- --color-brand-300: #ccdbfd
44
- --color-brand-400: #abc4ff
45
- --color-brand-500: #8fa8ff
46
- --color-brand-600: #6e84fa
47
- --color-brand-700: #5366e2
48
- --color-brand-800: #3f4fc0
49
- --color-brand-900: #2f3c99
50
- --color-brand-950: #1f2866
51
- /* Citron Color Scale */
52
- --color-citron-50: #f9faeb
53
- --color-citron-100: #f1f5cf
54
- --color-citron-200: #e4ecaa
55
- --color-citron-300: #d5e184
56
- --color-citron-400: #c7d460
57
- --color-citron-500: #bbbe64
58
- --color-citron-600: #a3a852
59
- --color-citron-700: #848a43
60
- --color-citron-800: #666c35
61
- --color-citron-900: #4d5229
62
- --color-citron-950: #323518
63
- /* Pine Color Scale */
64
- --color-pine-50: #e9f6f2
65
- --color-pine-100: #d2ece4
66
- --color-pine-200: #a7d9c9
67
- --color-pine-300: #78c4ad
68
- --color-pine-400: #49ad91
69
- --color-pine-500: #0C5D43
70
- --color-pine-600: #0a513a
71
- --color-pine-700: #084532
72
- --color-pine-800: #063a2a
73
- --color-pine-900: #04231a
74
- --color-pine-950: #02160f
75
- /* Iris Color Scale */
76
- --color-iris-50: #f4f4fa
77
- --color-iris-100: #e9e9f7
78
- --color-iris-200: #d6d6f0
79
- --color-iris-300: #bdbde6
80
- --color-iris-400: #a3a3d8
81
- --color-iris-500: #6969B3
82
- --color-iris-600: #58589e
83
- --color-iris-700: #474788
84
- --color-iris-800: #38386f
85
- --color-iris-900: #2a2a56
86
- --color-iris-950: #1b1b37
87
- /* Base Color Scale — semantic tokens alias the physical ramp (light: 1:1) */
88
- --color-base-50: var(--zabi-base-50)
89
- --color-base-75: var(--zabi-base-75)
90
- --color-base-100: var(--zabi-base-100)
91
- --color-base-150: var(--zabi-base-150)
92
- --color-base-200: var(--zabi-base-200)
93
- --color-base-250: var(--zabi-base-250)
94
- --color-base-300: var(--zabi-base-300)
95
- --color-base-350: var(--zabi-base-350)
96
- --color-base-400: var(--zabi-base-400)
97
- --color-base-450: var(--zabi-base-450)
98
- --color-base-500: var(--zabi-base-500)
99
- --color-base-550: var(--zabi-base-550)
100
- --color-base-600: var(--zabi-base-600)
101
- --color-base-650: var(--zabi-base-650)
102
- --color-base-700: var(--zabi-base-700)
103
- --color-base-750: var(--zabi-base-750)
104
- --color-base-800: var(--zabi-base-800)
105
- --color-base-850: var(--zabi-base-850)
106
- --color-base-900: var(--zabi-base-900)
107
- --color-base-925: var(--zabi-base-925)
108
- --color-base-950: var(--zabi-base-950)
109
- /* Background Colors */
110
- --color-background: var(--color-base-100)
111
- --color-background-secondary: var(--color-base-50)
112
- --color-background-tertiary: var(--color-base-100)
113
- /* Page Colors */
114
- --color-page: var(--color-base-100)
115
- --color-page-secondary: var(--color-base-200)
116
- /* Card Colors */
117
- --color-card: theme(colors.white)
118
- --color-card-hover: var(--color-base-100)
119
- --color-card-active: var(--color-base-100)
120
- --color-card-elevated: theme(colors.white)
121
- /* Surfaces — layered UI (ascending number = higher layer / more contrast against page) */
122
- --color-surface-1: theme(colors.white)
123
- --color-surface-2: var(--color-base-50)
124
- --color-surface-3: var(--color-base-75)
125
- --color-surface-4: var(--color-base-100)
126
- /* Overlay Colors */
127
- --color-overlay: rgba(0, 0, 0, 0.5)
128
- /* Input Colors */
129
- --color-input: var(--color-base-250)
130
- --color-input-border: var(--color-base-350)
131
- --color-input-hover: var(--color-base-300)
132
- --color-input-focus: var(--color-base-300)
133
- --color-input-disabled: var(--color-base-100)
134
- /* Text Colors */
135
- --color-headline: var(--color-base-900)
136
- --color-body: var(--color-base-800)
137
- --color-description: var(--color-base-600)
138
- --color-caption: var(--color-base-500)
139
- --color-input-placeholder: var(--color-base-400)
140
- --color-label: var(--color-base-700)
141
- --color-link: theme(colors.brand.600)
142
- --color-link-hover: theme(colors.brand.700)
143
- /* Navigation menu item — menubar triggers, menu links, inline/sidebar nav rows */
144
- --color-nav-menu-item: var(--color-body)
145
- --color-nav-menu-item-hover: var(--color-headline)
146
- --color-nav-menu-item-active: var(--color-link)
147
- --color-nav-menu-hover: var(--color-base-100)
148
- --color-nav-menu-active: var(--color-action-primary-subtle)
149
- --color-nav-menu-focus: var(--color-brand-500)
150
- --color-success-text: var(--color-success)
151
- --color-warning-text: theme(colors.amber.700)
152
- --color-neutral-text: var(--color-base-700)
153
- --color-energetic-text: theme(colors.citron.700)
154
- --color-error-text: theme(colors.red.700)
155
- --color-inverse: theme(colors.white)
156
- --color-disabled: var(--color-base-400)
157
- /* Border Colors */
158
- --color-border: var(--color-base-300)
159
- --color-border-weak: var(--color-base-300)
160
- --color-border-medium: var(--color-base-400)
161
- --color-border-strong: var(--color-base-500)
162
- /* Focus Colors */
163
- --color-focus: theme(colors.brand.500)
164
- --color-focus-weak: theme(colors.brand.600)
165
- --color-focus-medium: theme(colors.brand.700)
166
- --color-focus-strong: theme(colors.brand.800)
167
- /* Aliases for `ring-focus-ring`, `.focus-ring`, and form utils */
168
- --color-focus-ring: var(--color-focus)
169
- --color-focus-ring-offset: var(--color-card)
170
- /* Primary Colors */
171
- --color-primary: theme(colors.brand.600)
172
- --color-primary-weak: theme(colors.brand.700)
173
- --color-primary-medium: theme(colors.brand.800)
174
- --color-primary-strong: theme(colors.brand.900)
175
- /* Secondary Colors */
176
- --color-secondary: var(--color-base-600)
177
- --color-secondary-weak: var(--color-base-700)
178
- --color-secondary-medium: var(--color-base-800)
179
- --color-secondary-strong: var(--color-base-900)
180
- /* Success Colors */
181
- --color-success: theme(colors.pine.600)
182
- --color-success-weak: theme(colors.pine.700)
183
- --color-success-medium: theme(colors.pine.800)
184
- --color-success-strong: theme(colors.pine.900)
185
- /* Warning Colors */
186
- --color-warning: theme(colors.amber.500)
187
- --color-warning-weak: theme(colors.amber.600)
188
- --color-warning-medium: theme(colors.amber.400)
189
- --color-warning-strong: theme(colors.amber.300)
190
- /* Error Colors */
191
- --color-error: theme(colors.red.500)
192
- --color-error-weak: theme(colors.red.600)
193
- --color-error-medium: theme(colors.red.400)
194
- --color-error-strong: theme(colors.red.300)
195
- /* Energetic Colors (Citron) */
196
- --color-energetic: theme(colors.citron.500)
197
- --color-energetic-weak: theme(colors.citron.600)
198
- --color-energetic-medium: theme(colors.citron.400)
199
- --color-energetic-strong: theme(colors.citron.300)
200
- /* Neutral Colors */
201
- --color-neutral: var(--color-base-600)
202
- --color-neutral-weak: var(--color-base-700)
203
- --color-neutral-medium: var(--color-base-800)
204
- --color-neutral-strong: var(--color-base-900)
205
- /* Info Colors */
206
- --color-info: theme(colors.iris.600)
207
- --color-info-weak: theme(colors.iris.700)
208
- --color-info-medium: theme(colors.iris.800)
209
- --color-info-strong: theme(colors.iris.900)
210
- /* Text alias */
211
- --color-info-text: var(--color-info)
212
- /* ========================================
213
- ACTION COLORS - For interactive elements (buttons, links, etc.)
214
- ======================================== */
215
- /* Primary Actions - Used by bg-action-primary utility class */
216
- /* 🎯 TO CHANGE bg-action-primary COLOR: Edit the values below */
217
- --color-action-primary: var(--color-brand-950)
218
- --color-action-primary-hover: var(--color-brand-900)
219
- --color-action-primary-active: var(--color-brand-400)
220
- --color-action-primary-disabled: var(--color-brand-500)
221
- --color-action-primary-subtle: var(--color-brand-100)
222
- --color-action-primary-subtle-hover: var(--color-brand-200)
223
- --color-action-primary-text: var(--color-brand-50)
224
- /* Secondary Actions - Used by bg-action-secondary utility class */
225
- --color-action-secondary: color-mix(in srgb, var(--color-brand-800) 10%, transparent)
226
- --color-action-secondary-hover: color-mix(in srgb, var(--color-brand-800) 20%, transparent)
227
- --color-action-secondary-active: var(--color-brand-400)
228
- --color-action-secondary-disabled: var(--color-brand-500)
229
- --color-action-secondary-subtle: var(--color-brand-600)
230
- --color-action-secondary-subtle-hover: var(--color-brand-700)
231
- /* Danger Actions - Used by bg-action-danger utility class */
232
- --color-action-danger: theme(colors.red.600)
233
- --color-action-danger-hover: theme(colors.red.700)
234
- --color-action-danger-active: theme(colors.red.800)
235
- --color-action-danger-disabled: theme(colors.red.300)
236
- --color-action-danger-subtle: theme(colors.red.50)
237
- --color-action-danger-subtle-hover: theme(colors.red.100)
238
- /* Shadow Colors */
239
- --shadow-color: 0 0 0
240
- --shadow-opacity: 0.1
241
- --shadow-sm: 0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity))
242
- --shadow-md: 0 4px 6px -1px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 2px 4px -2px rgb(var(--shadow-color) / var(--shadow-opacity))
243
- --shadow-lg: 0 10px 15px -3px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 4px 6px -4px rgb(var(--shadow-color) / var(--shadow-opacity))
244
- --shadow-xl: 0 20px 25px -5px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 8px 10px -6px rgb(var(--shadow-color) / var(--shadow-opacity))
245
- /* Spacing */
246
- --spacing-xs: 0.25rem
247
- --spacing-sm: 0.5rem
248
- --spacing-md: 1rem
249
- --spacing-lg: 1.5rem
250
- --spacing-xl: 2rem
251
- --spacing-2xl: 3rem
252
- /* Border Radius */
253
- --radius-sm: 0.25rem
254
- --radius-md: 0.375rem
255
- --radius-lg: 0.5rem
256
- --radius-xl: 0.75rem
257
- /* Z-index */
258
- --z-dropdown: 1000
259
- --z-sticky: 1020
260
- --z-fixed: 1030
261
- --z-modal-backdrop: 1040
262
- --z-modal: 1050
263
- --z-popover: 1060
264
- --z-tooltip: 1070
265
- --z-toast: 1080
266
- }
267
-
268
- /* Dark Mode */
269
- .dark {
270
- /* Mirror @theme --zabi-base-* ramp (same physical hex; required for standalone dark import) */
271
- --zabi-base-50: #fafafa
272
- --zabi-base-75: #f7f7f7
273
- --zabi-base-100: #f4f4f5
274
- --zabi-base-150: #ececee
275
- --zabi-base-200: #e4e4e7
276
- --zabi-base-250: #dcdcdf
277
- --zabi-base-300: #d4d4d8
278
- --zabi-base-350: #babac1
279
- --zabi-base-400: #a1a1aa
280
- --zabi-base-450: #898992
281
- --zabi-base-500: #71717a
282
- --zabi-base-550: #61616a
283
- --zabi-base-600: #52525b
284
- --zabi-base-650: #484850
285
- --zabi-base-700: #3f3f46
286
- --zabi-base-750: #333338
287
- --zabi-base-800: #27272a
288
- --zabi-base-850: #1f1f22
289
- --zabi-base-900: #18181b
290
- --zabi-base-925: #101013
291
- --zabi-base-950: #09090b
292
- /* Brand Color Scale - Dark mode variants */
293
- --color-brand-50: theme(colors.brand.950)
294
- --color-brand-100: theme(colors.brand.900)
295
- --color-brand-200: theme(colors.brand.800)
296
- --color-brand-300: theme(colors.brand.700)
297
- --color-brand-400: theme(colors.brand.600)
298
- --color-brand-500: theme(colors.brand.500)
299
- --color-brand-600: theme(colors.brand.400)
300
- --color-brand-700: theme(colors.brand.300)
301
- --color-brand-800: theme(colors.brand.200)
302
- --color-brand-900: theme(colors.brand.100)
303
- --color-brand-950: theme(colors.brand.50)
304
- /* Citron Color Scale - Dark mode variants */
305
- --color-citron-50: theme(colors.citron.950)
306
- --color-citron-100: theme(colors.citron.900)
307
- --color-citron-200: theme(colors.citron.800)
308
- --color-citron-300: theme(colors.citron.700)
309
- --color-citron-400: theme(colors.citron.600)
310
- --color-citron-500: theme(colors.citron.500)
311
- --color-citron-600: theme(colors.citron.400)
312
- --color-citron-700: theme(colors.citron.300)
313
- --color-citron-800: theme(colors.citron.200)
314
- --color-citron-900: theme(colors.citron.100)
315
- --color-citron-950: theme(colors.citron.50)
316
- /* Pine Color Scale - Dark mode variants */
317
- --color-pine-50: theme(colors.pine.950)
318
- --color-pine-100: theme(colors.pine.900)
319
- --color-pine-200: theme(colors.pine.800)
320
- --color-pine-300: theme(colors.pine.700)
321
- --color-pine-400: theme(colors.pine.600)
322
- --color-pine-500: theme(colors.pine.500)
323
- --color-pine-600: theme(colors.pine.400)
324
- --color-pine-700: theme(colors.pine.300)
325
- --color-pine-800: theme(colors.pine.200)
326
- --color-pine-900: theme(colors.pine.100)
327
- --color-pine-950: theme(colors.pine.50)
328
- /* Iris Color Scale - Dark mode variants */
329
- --color-iris-50: theme(colors.iris.950)
330
- --color-iris-100: theme(colors.iris.900)
331
- --color-iris-200: theme(colors.iris.800)
332
- --color-iris-300: theme(colors.iris.700)
333
- --color-iris-400: theme(colors.iris.600)
334
- --color-iris-500: theme(colors.iris.500)
335
- --color-iris-600: theme(colors.iris.400)
336
- --color-iris-700: theme(colors.iris.300)
337
- --color-iris-800: theme(colors.iris.200)
338
- --color-iris-900: theme(colors.iris.100)
339
- --color-iris-950: theme(colors.iris.50)
340
- /* Base Color Scale — semantic → physical mirror (1000 − step); 500 is fixed point */
341
- --color-base-50: #09090b
342
- --color-base-75: #101013
343
- --color-base-100: #18181b
344
- --color-base-150: #1f1f22
345
- --color-base-200: #27272a
346
- --color-base-250: #333338
347
- --color-base-300: #3f3f46
348
- --color-base-350: #484850
349
- --color-base-400: #52525b
350
- --color-base-450: #61616a
351
- --color-base-500: #71717a
352
- --color-base-550: #898992
353
- --color-base-600: #a1a1aa
354
- --color-base-650: #babac1
355
- --color-base-700: #d4d4d8
356
- --color-base-750: #dcdcdf
357
- --color-base-800: #e4e4e7
358
- --color-base-850: #ececee
359
- --color-base-900: #f4f4f5
360
- --color-base-925: #f7f7f7
361
- --color-base-950: #fafafa
362
- /* Background Colors - No dark mode overrides needed, base colors are already inverted */
363
- /* Page Colors - No dark mode overrides needed, base colors are already inverted */
364
- /* Card Colors */
365
- --color-card: var(--color-base-200)
366
- --color-card-hover: var(--color-base-300)
367
- --color-card-active: var(--color-base-400)
368
- --color-card-elevated: var(--color-base-200)
369
- /* Surfaces — layered UI (each step is lighter than the previous to read as "elevated") */
370
- --color-surface-1: var(--color-base-250)
371
- --color-surface-2: var(--color-base-300)
372
- --color-surface-3: var(--color-base-350)
373
- --color-surface-4: var(--color-base-400)
374
- /* Overlay Colors */
375
- --color-overlay: rgba(0, 0, 0, 0.7)
376
- /* Input Colors */
377
- --color-input: var(--color-base-250)
378
- --color-input-border: var(--color-base-350)
379
- --color-input-hover: var(--color-base-300)
380
- --color-input-focus: var(--color-base-300)
381
- --color-input-disabled: var(--color-base-300)
382
- /* Text Colors - No dark mode overrides needed, base colors are already inverted */
383
- /* Border Colors - No dark mode overrides needed, base colors are already inverted */
384
- /* Focus Colors - No dark mode overrides needed, brand colors are already inverted */
385
- /* Primary Colors - No dark mode overrides needed, brand colors are already inverted */
386
- /* Secondary Colors - No dark mode overrides needed, base colors are already inverted */
387
- /* Success Colors */
388
- --color-success: theme(colors.pine.400)
389
- --color-success-weak: theme(colors.pine.500)
390
- --color-success-medium: theme(colors.pine.300)
391
- --color-success-strong: theme(colors.pine.200)
392
- /* Warning Colors */
393
- --color-warning: theme(colors.amber.500)
394
- --color-warning-weak: theme(colors.amber.600)
395
- --color-warning-medium: theme(colors.amber.400)
396
- --color-warning-strong: theme(colors.amber.300)
397
- /* Error Colors */
398
- --color-error: theme(colors.red.500)
399
- --color-error-weak: theme(colors.red.600)
400
- --color-error-medium: theme(colors.red.400)
401
- --color-error-strong: theme(colors.red.300)
402
- /* Energetic Colors (Citron) */
403
- --color-energetic: theme(colors.citron.400)
404
- --color-energetic-weak: theme(colors.citron.500)
405
- --color-energetic-medium: theme(colors.citron.300)
406
- --color-energetic-strong: theme(colors.citron.200)
407
- /* Neutral Colors - No dark mode overrides needed, base colors are already inverted */
408
- /* Info Colors */
409
- --color-info: theme(colors.iris.500)
410
- --color-info-weak: theme(colors.iris.600)
411
- --color-info-active: theme(colors.iris.400)
412
- --color-info-medium: theme(colors.iris.400)
413
- --color-info-strong: theme(colors.iris.300)
414
- /* Text alias */
415
- --color-info-text: var(--color-info)
416
- /* ========================================
417
- ACTION COLORS - Dark Mode Overrides
418
- ======================================== */
419
- /* Primary Actions - Background adapts automatically via brand color inversion */
420
- /* 🎯 TO CHANGE bg-action-primary IN DARK MODE: Edit --color-brand-800 in .dark block (line ~275) */
421
- /* Text color - Use brand-50 (which maps to brand-950/darkest in dark mode) for proper contrast */
422
- --color-action-primary-text: var(--color-brand-50)
423
- /* Secondary Actions - No dark mode overrides needed, base colors are already inverted */
424
- /* Danger Actions */
425
- --color-action-danger: theme(colors.red.500)
426
- --color-action-danger-hover: theme(colors.red.600)
427
- --color-action-danger-active: theme(colors.red.700)
428
- --color-action-danger-disabled: theme(colors.red.700)
429
- --color-action-danger-subtle: theme(colors.red.950)
430
- --color-action-danger-subtle-hover: theme(colors.red.900)
431
- /* Shadow Colors */
432
- --shadow-opacity: 0.3
433
- --shadow-sm: 0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity))
434
- --shadow-md: 0 4px 6px -1px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 2px 4px -2px rgb(var(--shadow-color) / var(--shadow-opacity))
435
- --shadow-lg: 0 10px 15px -3px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 4px 6px -4px rgb(var(--shadow-color) / var(--shadow-opacity))
436
- --shadow-xl: 0 20px 25px -5px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 8px 10px -6px rgb(var(--shadow-color) / var(--shadow-opacity))
437
- }
1
+ /* zabi-components-colors — generated from src/app.css; edit app.css */
2
+ :root{--zabi-base-50:#fafafa;--zabi-base-75:#f7f7f7;--zabi-base-100:#f4f4f5;--zabi-base-150:#ececee;--zabi-base-200:#e4e4e7;--zabi-base-250:#dcdcdf;--zabi-base-300:#d4d4d8;--zabi-base-350:#babac1;--zabi-base-400:#a1a1aa;--zabi-base-450:#898992;--zabi-base-500:#71717a;--zabi-base-550:#61616a;--zabi-base-600:#52525b;--zabi-base-650:#484850;--zabi-base-700:#3f3f46;--zabi-base-750:#333338;--zabi-base-800:#27272a;--zabi-base-850:#1f1f22;--zabi-base-900:#18181b;--zabi-base-925:#101013;--zabi-base-950:#09090b;--font-family-sans:'Nunito Sans', ui-sans-serif, system-ui, sans-serif;--zabi-brand-50:#f7faff;--zabi-brand-100:#edf2fb;--zabi-brand-200:#dfe7fb;--zabi-brand-300:#ccdbfd;--zabi-brand-400:#abc4ff;--zabi-brand-500:#8fa8ff;--zabi-brand-600:#6e84fa;--zabi-brand-700:#5366e2;--zabi-brand-800:#3f4fc0;--zabi-brand-900:#2f3c99;--zabi-brand-950:#1f2866;--color-brand-50:var(--zabi-brand-50);--color-brand-100:var(--zabi-brand-100);--color-brand-200:var(--zabi-brand-200);--color-brand-300:var(--zabi-brand-300);--color-brand-400:var(--zabi-brand-400);--color-brand-500:var(--zabi-brand-500);--color-brand-600:var(--zabi-brand-600);--color-brand-700:var(--zabi-brand-700);--color-brand-800:var(--zabi-brand-800);--color-brand-900:var(--zabi-brand-900);--color-brand-950:var(--zabi-brand-950);--zabi-citron-50:#f9faeb;--zabi-citron-100:#f1f5cf;--zabi-citron-200:#e4ecaa;--zabi-citron-300:#d5e184;--zabi-citron-400:#c7d460;--zabi-citron-500:#bbbe64;--zabi-citron-600:#a3a852;--zabi-citron-700:#848a43;--zabi-citron-800:#666c35;--zabi-citron-900:#4d5229;--zabi-citron-950:#323518;--color-citron-50:var(--zabi-citron-50);--color-citron-100:var(--zabi-citron-100);--color-citron-200:var(--zabi-citron-200);--color-citron-300:var(--zabi-citron-300);--color-citron-400:var(--zabi-citron-400);--color-citron-500:var(--zabi-citron-500);--color-citron-600:var(--zabi-citron-600);--color-citron-700:var(--zabi-citron-700);--color-citron-800:var(--zabi-citron-800);--color-citron-900:var(--zabi-citron-900);--color-citron-950:var(--zabi-citron-950);--zabi-pine-50:#e9f6f2;--zabi-pine-100:#d2ece4;--zabi-pine-200:#a7d9c9;--zabi-pine-300:#78c4ad;--zabi-pine-400:#49ad91;--zabi-pine-500:#0c5d43;--zabi-pine-600:#0a513a;--zabi-pine-700:#084532;--zabi-pine-800:#063a2a;--zabi-pine-900:#04231a;--zabi-pine-950:#02160f;--color-pine-50:var(--zabi-pine-50);--color-pine-100:var(--zabi-pine-100);--color-pine-200:var(--zabi-pine-200);--color-pine-300:var(--zabi-pine-300);--color-pine-400:var(--zabi-pine-400);--color-pine-500:var(--zabi-pine-500);--color-pine-600:var(--zabi-pine-600);--color-pine-700:var(--zabi-pine-700);--color-pine-800:var(--zabi-pine-800);--color-pine-900:var(--zabi-pine-900);--color-pine-950:var(--zabi-pine-950);--zabi-iris-50:#f4f4fa;--zabi-iris-100:#e9e9f7;--zabi-iris-200:#d6d6f0;--zabi-iris-300:#bdbde6;--zabi-iris-400:#a3a3d8;--zabi-iris-500:#6969b3;--zabi-iris-600:#58589e;--zabi-iris-700:#474788;--zabi-iris-800:#38386f;--zabi-iris-900:#2a2a56;--zabi-iris-950:#1b1b37;--color-iris-50:var(--zabi-iris-50);--color-iris-100:var(--zabi-iris-100);--color-iris-200:var(--zabi-iris-200);--color-iris-300:var(--zabi-iris-300);--color-iris-400:var(--zabi-iris-400);--color-iris-500:var(--zabi-iris-500);--color-iris-600:var(--zabi-iris-600);--color-iris-700:var(--zabi-iris-700);--color-iris-800:var(--zabi-iris-800);--color-iris-900:var(--zabi-iris-900);--color-iris-950:var(--zabi-iris-950);--zabi-warning-50:#fffbeb;--zabi-warning-100:#fef3c7;--zabi-warning-200:#fde68a;--zabi-warning-300:#fcd34d;--zabi-warning-400:#fbbf24;--zabi-warning-500:#f59e0b;--zabi-warning-600:#d97706;--zabi-warning-700:#b45309;--zabi-warning-800:#92400e;--zabi-warning-900:#78350f;--zabi-warning-950:#451a03;--color-warning-50:var(--zabi-warning-50);--color-warning-100:var(--zabi-warning-100);--color-warning-200:var(--zabi-warning-200);--color-warning-300:var(--zabi-warning-300);--color-warning-400:var(--zabi-warning-400);--color-warning-500:var(--zabi-warning-500);--color-warning-600:var(--zabi-warning-600);--color-warning-700:var(--zabi-warning-700);--color-warning-800:var(--zabi-warning-800);--color-warning-900:var(--zabi-warning-900);--color-warning-950:var(--zabi-warning-950);--zabi-error-50:#fef2f2;--zabi-error-100:#fee2e2;--zabi-error-200:#fecaca;--zabi-error-300:#fca5a5;--zabi-error-400:#f87171;--zabi-error-500:#ef4444;--zabi-error-600:#dc2626;--zabi-error-700:#b91c1c;--zabi-error-800:#991b1b;--zabi-error-900:#7f1d1d;--zabi-error-950:#450a0a;--color-error-50:var(--zabi-error-50);--color-error-100:var(--zabi-error-100);--color-error-200:var(--zabi-error-200);--color-error-300:var(--zabi-error-300);--color-error-400:var(--zabi-error-400);--color-error-500:var(--zabi-error-500);--color-error-600:var(--zabi-error-600);--color-error-700:var(--zabi-error-700);--color-error-800:var(--zabi-error-800);--color-error-900:var(--zabi-error-900);--color-error-950:var(--zabi-error-950);--color-base-50:var(--zabi-base-50);--color-base-75:var(--zabi-base-75);--color-base-100:var(--zabi-base-100);--color-base-150:var(--zabi-base-150);--color-base-200:var(--zabi-base-200);--color-base-250:var(--zabi-base-250);--color-base-300:var(--zabi-base-300);--color-base-350:var(--zabi-base-350);--color-base-400:var(--zabi-base-400);--color-base-450:var(--zabi-base-450);--color-base-500:var(--zabi-base-500);--color-base-550:var(--zabi-base-550);--color-base-600:var(--zabi-base-600);--color-base-650:var(--zabi-base-650);--color-base-700:var(--zabi-base-700);--color-base-750:var(--zabi-base-750);--color-base-800:var(--zabi-base-800);--color-base-850:var(--zabi-base-850);--color-base-900:var(--zabi-base-900);--color-base-925:var(--zabi-base-925);--color-base-950:var(--zabi-base-950);--color-background:var(--color-base-100);--color-background-secondary:var(--color-base-50);--color-background-tertiary:var(--color-base-100);--color-page:var(--color-base-100);--color-page-secondary:var(--color-base-200);--color-card:#ffffff;--color-card-hover:var(--color-base-100);--color-card-active:var(--color-base-100);--color-card-elevated:#ffffff;--color-surface-1:#ffffff;--color-surface-2:var(--color-base-50);--color-surface-3:var(--color-base-75);--color-surface-4:var(--color-base-100);--color-overlay:rgba(0, 0, 0, 0.5);--color-input:var(--color-base-250);--color-input-border:var(--color-base-350);--color-input-hover:var(--color-base-300);--color-input-focus:var(--color-base-300);--color-input-disabled:var(--color-base-100);--color-headline:var(--color-base-900);--color-body:var(--color-base-800);--color-description:var(--color-base-600);--color-caption:var(--color-base-500);--color-input-placeholder:var(--color-base-400);--color-label:var(--color-base-700);--color-link:var(--color-brand-600);--color-link-hover:var(--color-brand-700);--color-nav-menu-item:var(--color-body);--color-nav-menu-item-hover:var(--color-headline);--color-nav-menu-item-active:var(--color-link);--color-nav-menu-hover:var(--color-base-100);--color-nav-menu-active:var(--color-action-primary-subtle);--color-nav-menu-focus:var(--color-brand-500);--color-success-text:var(--color-success);--color-warning-text:var(--color-warning-700);--color-neutral-text:var(--color-base-700);--color-energetic-text:var(--color-citron-700);--color-error-text:var(--color-error-700);--color-inverse:var(--color-base-100);--color-disabled:var(--color-base-400);--color-border:var(--color-base-300);--color-border-weak:var(--color-base-300);--color-border-medium:var(--color-base-400);--color-border-strong:var(--color-base-500);--color-focus:var(--color-brand-500);--color-focus-weak:var(--color-brand-600);--color-focus-medium:var(--color-brand-700);--color-focus-strong:var(--color-brand-800);--color-focus-ring:var(--color-focus);--color-focus-ring-offset:var(--color-card);--color-primary:var(--color-brand-600);--color-primary-weak:var(--color-brand-700);--color-primary-medium:var(--color-brand-800);--color-primary-strong:var(--color-brand-900);--color-secondary:var(--color-base-600);--color-secondary-weak:var(--color-base-700);--color-secondary-medium:var(--color-base-800);--color-secondary-strong:var(--color-base-900);--color-success:var(--color-pine-600);--color-success-weak:var(--color-pine-700);--color-success-medium:var(--color-pine-800);--color-success-strong:var(--color-pine-900);--color-warning:var(--color-warning-500);--color-warning-weak:var(--color-warning-600);--color-warning-medium:var(--color-warning-400);--color-warning-strong:var(--color-warning-300);--color-error:var(--color-error-500);--color-error-weak:var(--color-error-600);--color-error-medium:var(--color-error-400);--color-error-strong:var(--color-error-300);--color-energetic:var(--color-citron-500);--color-energetic-weak:var(--color-citron-600);--color-energetic-medium:var(--color-citron-400);--color-energetic-strong:var(--color-citron-300);--color-neutral:var(--color-base-600);--color-neutral-weak:var(--color-base-700);--color-neutral-medium:var(--color-base-800);--color-neutral-strong:var(--color-base-900);--color-info:var(--color-iris-600);--color-info-weak:var(--color-iris-700);--color-info-medium:var(--color-iris-800);--color-info-strong:var(--color-iris-900);--color-info-active:var(--color-iris-400);--color-info-text:var(--color-info);--color-action-primary:var(--color-brand-950);--color-action-primary-hover:var(--color-brand-900);--color-action-primary-active:var(--color-brand-400);--color-action-primary-disabled:var(--color-brand-500);--color-action-primary-subtle:var(--color-brand-100);--color-action-primary-subtle-hover:var(--color-brand-200);--color-action-primary-text:var(--color-brand-50);--color-action-secondary:color-mix(in srgb, var(--color-brand-800) 10%, transparent);--color-action-secondary-hover:color-mix(in srgb, var(--color-brand-800) 20%, transparent);--color-action-secondary-active:var(--color-brand-400);--color-action-secondary-disabled:var(--color-brand-500);--color-action-secondary-subtle:var(--color-brand-600);--color-action-secondary-subtle-hover:var(--color-brand-700);--color-action-danger:#dc2626;--color-action-danger-hover:#b91c1c;--color-action-danger-active:#991b1b;--color-action-danger-disabled:#fca5a5;--color-action-danger-subtle:#fef2f2;--color-action-danger-subtle-hover:#fee2e2;--shadow-color:0 0 0;--shadow-opacity:0.1;--shadow-sm:0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity));--shadow-md:0 4px 6px -1px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 2px 4px -2px rgb(var(--shadow-color) / var(--shadow-opacity));--shadow-lg:0 10px 15px -3px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 4px 6px -4px rgb(var(--shadow-color) / var(--shadow-opacity));--shadow-xl:0 20px 25px -5px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 8px 10px -6px rgb(var(--shadow-color) / var(--shadow-opacity));--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080;--color-tooltip-bg:var(--color-base-800);--color-tooltip-fg:var(--color-base-50);}
3
+ .dark{--zabi-base-50:#fafafa;--zabi-base-75:#f7f7f7;--zabi-base-100:#f4f4f5;--zabi-base-150:#ececee;--zabi-base-200:#e4e4e7;--zabi-base-250:#dcdcdf;--zabi-base-300:#d4d4d8;--zabi-base-350:#babac1;--zabi-base-400:#a1a1aa;--zabi-base-450:#898992;--zabi-base-500:#71717a;--zabi-base-550:#61616a;--zabi-base-600:#52525b;--zabi-base-650:#484850;--zabi-base-700:#3f3f46;--zabi-base-750:#333338;--zabi-base-800:#27272a;--zabi-base-850:#1f1f22;--zabi-base-900:#18181b;--zabi-base-925:#101013;--zabi-base-950:#09090b;--zabi-brand-50:#f7faff;--zabi-brand-100:#edf2fb;--zabi-brand-200:#dfe7fb;--zabi-brand-300:#ccdbfd;--zabi-brand-400:#abc4ff;--zabi-brand-500:#8fa8ff;--zabi-brand-600:#6e84fa;--zabi-brand-700:#5366e2;--zabi-brand-800:#3f4fc0;--zabi-brand-900:#2f3c99;--zabi-brand-950:#1f2866;--color-brand-50:var(--zabi-brand-950);--color-brand-100:var(--zabi-brand-900);--color-brand-200:var(--zabi-brand-800);--color-brand-300:var(--zabi-brand-700);--color-brand-400:var(--zabi-brand-600);--color-brand-500:var(--zabi-brand-500);--color-brand-600:var(--zabi-brand-400);--color-brand-700:var(--zabi-brand-300);--color-brand-800:var(--zabi-brand-200);--color-brand-900:var(--zabi-brand-100);--color-brand-950:var(--zabi-brand-50);--zabi-citron-50:#f9faeb;--zabi-citron-100:#f1f5cf;--zabi-citron-200:#e4ecaa;--zabi-citron-300:#d5e184;--zabi-citron-400:#c7d460;--zabi-citron-500:#bbbe64;--zabi-citron-600:#a3a852;--zabi-citron-700:#848a43;--zabi-citron-800:#666c35;--zabi-citron-900:#4d5229;--zabi-citron-950:#323518;--color-citron-50:var(--zabi-citron-950);--color-citron-100:var(--zabi-citron-900);--color-citron-200:var(--zabi-citron-800);--color-citron-300:var(--zabi-citron-700);--color-citron-400:var(--zabi-citron-600);--color-citron-500:var(--zabi-citron-500);--color-citron-600:var(--zabi-citron-400);--color-citron-700:var(--zabi-citron-300);--color-citron-800:var(--zabi-citron-200);--color-citron-900:var(--zabi-citron-100);--color-citron-950:var(--zabi-citron-50);--zabi-pine-50:#e9f6f2;--zabi-pine-100:#d2ece4;--zabi-pine-200:#a7d9c9;--zabi-pine-300:#78c4ad;--zabi-pine-400:#49ad91;--zabi-pine-500:#0c5d43;--zabi-pine-600:#0a513a;--zabi-pine-700:#084532;--zabi-pine-800:#063a2a;--zabi-pine-900:#04231a;--zabi-pine-950:#02160f;--color-pine-50:var(--zabi-pine-950);--color-pine-100:var(--zabi-pine-900);--color-pine-200:var(--zabi-pine-800);--color-pine-300:var(--zabi-pine-700);--color-pine-400:var(--zabi-pine-600);--color-pine-500:var(--zabi-pine-500);--color-pine-600:var(--zabi-pine-400);--color-pine-700:var(--zabi-pine-300);--color-pine-800:var(--zabi-pine-200);--color-pine-900:var(--zabi-pine-100);--color-pine-950:var(--zabi-pine-50);--zabi-iris-50:#f4f4fa;--zabi-iris-100:#e9e9f7;--zabi-iris-200:#d6d6f0;--zabi-iris-300:#bdbde6;--zabi-iris-400:#a3a3d8;--zabi-iris-500:#6969b3;--zabi-iris-600:#58589e;--zabi-iris-700:#474788;--zabi-iris-800:#38386f;--zabi-iris-900:#2a2a56;--zabi-iris-950:#1b1b37;--color-iris-50:var(--zabi-iris-950);--color-iris-100:var(--zabi-iris-900);--color-iris-200:var(--zabi-iris-800);--color-iris-300:var(--zabi-iris-700);--color-iris-400:var(--zabi-iris-600);--color-iris-500:var(--zabi-iris-500);--color-iris-600:var(--zabi-iris-400);--color-iris-700:var(--zabi-iris-300);--color-iris-800:var(--zabi-iris-200);--color-iris-900:var(--zabi-iris-100);--color-iris-950:var(--zabi-iris-50);--zabi-warning-50:#fffbeb;--zabi-warning-100:#fef3c7;--zabi-warning-200:#fde68a;--zabi-warning-300:#fcd34d;--zabi-warning-400:#fbbf24;--zabi-warning-500:#f59e0b;--zabi-warning-600:#d97706;--zabi-warning-700:#b45309;--zabi-warning-800:#92400e;--zabi-warning-900:#78350f;--zabi-warning-950:#451a03;--color-warning-50:var(--zabi-warning-950);--color-warning-100:var(--zabi-warning-900);--color-warning-200:var(--zabi-warning-800);--color-warning-300:var(--zabi-warning-700);--color-warning-400:var(--zabi-warning-600);--color-warning-500:var(--zabi-warning-500);--color-warning-600:var(--zabi-warning-400);--color-warning-700:var(--zabi-warning-300);--color-warning-800:var(--zabi-warning-200);--color-warning-900:var(--zabi-warning-100);--color-warning-950:var(--zabi-warning-50);--zabi-error-50:#fef2f2;--zabi-error-100:#fee2e2;--zabi-error-200:#fecaca;--zabi-error-300:#fca5a5;--zabi-error-400:#f87171;--zabi-error-500:#ef4444;--zabi-error-600:#dc2626;--zabi-error-700:#b91c1c;--zabi-error-800:#991b1b;--zabi-error-900:#7f1d1d;--zabi-error-950:#450a0a;--color-error-50:var(--zabi-error-950);--color-error-100:var(--zabi-error-900);--color-error-200:var(--zabi-error-800);--color-error-300:var(--zabi-error-700);--color-error-400:var(--zabi-error-600);--color-error-500:var(--zabi-error-500);--color-error-600:var(--zabi-error-400);--color-error-700:var(--zabi-error-300);--color-error-800:var(--zabi-error-200);--color-error-900:var(--zabi-error-100);--color-error-950:var(--zabi-error-50);--color-base-50:#09090b;--color-base-75:#101013;--color-base-100:#18181b;--color-base-150:#1f1f22;--color-base-200:#27272a;--color-base-250:#333338;--color-base-300:#3f3f46;--color-base-350:#484850;--color-base-400:#52525b;--color-base-450:#61616a;--color-base-500:#71717a;--color-base-550:#898992;--color-base-600:#a1a1aa;--color-base-650:#babac1;--color-base-700:#d4d4d8;--color-base-750:#dcdcdf;--color-base-800:#e4e4e7;--color-base-850:#ececee;--color-base-900:#f4f4f5;--color-base-925:#f7f7f7;--color-base-950:#fafafa;--color-card:var(--color-base-200);--color-card-hover:var(--color-base-300);--color-card-active:var(--color-base-400);--color-card-elevated:var(--color-base-200);--color-surface-1:var(--color-base-250);--color-surface-2:var(--color-base-300);--color-surface-3:var(--color-base-350);--color-surface-4:var(--color-base-400);--color-overlay:rgba(0, 0, 0, 0.7);--color-input:var(--color-base-250);--color-input-border:var(--color-base-350);--color-input-hover:var(--color-base-300);--color-input-focus:var(--color-base-300);--color-input-disabled:var(--color-base-300);--color-action-primary-text:var(--color-brand-50);--color-action-danger:#ef4444;--color-action-danger-hover:#dc2626;--color-action-danger-active:#b91c1c;--color-action-danger-disabled:#b91c1c;--color-action-danger-subtle:#450a0a;--color-action-danger-subtle-hover:#7f1d1d;--shadow-opacity:0.3;--shadow-sm:0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity));--shadow-md:0 4px 6px -1px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 2px 4px -2px rgb(var(--shadow-color) / var(--shadow-opacity));--shadow-lg:0 10px 15px -3px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 4px 6px -4px rgb(var(--shadow-color) / var(--shadow-opacity));--shadow-xl:0 20px 25px -5px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 8px 10px -6px rgb(var(--shadow-color) / var(--shadow-opacity));}