zabi-components 5.0.22 → 7.0.0

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 (207) hide show
  1. package/README.md +139 -1478
  2. package/THEME.md +473 -0
  3. package/THEMING.md +248 -0
  4. package/dist/atoms/ActionPanel.svelte +116 -0
  5. package/dist/atoms/ActionPanel.svelte.d.ts +19 -0
  6. package/dist/atoms/Badge.svelte +1 -1
  7. package/dist/atoms/Badge.svelte.d.ts +1 -1
  8. package/dist/atoms/Button.svelte +35 -16
  9. package/dist/atoms/Button.svelte.d.ts +3 -1
  10. package/dist/atoms/Card.svelte +49 -67
  11. package/dist/atoms/Card.svelte.d.ts +4 -4
  12. package/dist/atoms/CardHeader.svelte +15 -2
  13. package/dist/atoms/CardHeader.svelte.d.ts +5 -0
  14. package/dist/atoms/Checkbox.svelte +50 -76
  15. package/dist/atoms/Checkbox.svelte.d.ts +7 -2
  16. package/dist/atoms/CodeBlock.svelte +20 -34
  17. package/dist/atoms/CodeBlock.svelte.d.ts +1 -0
  18. package/dist/atoms/ColorPicker.svelte +3 -7
  19. package/dist/atoms/Container.svelte +41 -0
  20. package/dist/atoms/Container.svelte.d.ts +12 -0
  21. package/dist/atoms/Divider.svelte +68 -0
  22. package/dist/atoms/Divider.svelte.d.ts +13 -0
  23. package/dist/atoms/FeatureCard.svelte +35 -50
  24. package/dist/atoms/FeatureCard.svelte.d.ts +9 -4
  25. package/dist/atoms/IconButton.svelte +33 -24
  26. package/dist/atoms/IconButton.svelte.d.ts +4 -8
  27. package/dist/atoms/Input.svelte +58 -26
  28. package/dist/atoms/Input.svelte.d.ts +6 -1
  29. package/dist/atoms/List.svelte +2 -7
  30. package/dist/atoms/List.svelte.d.ts +1 -6
  31. package/dist/atoms/ListItem.svelte +54 -65
  32. package/dist/atoms/ListItem.svelte.d.ts +7 -13
  33. package/dist/atoms/ListItemLeading.svelte +19 -0
  34. package/dist/atoms/ListItemLeading.svelte.d.ts +9 -0
  35. package/dist/atoms/Progress.svelte +2 -2
  36. package/dist/atoms/Radio.svelte +51 -0
  37. package/dist/atoms/Radio.svelte.d.ts +14 -0
  38. package/dist/atoms/Select.svelte +28 -33
  39. package/dist/atoms/Select.svelte.d.ts +0 -10
  40. package/dist/atoms/SelectionControl.svelte +98 -0
  41. package/dist/atoms/SelectionControl.svelte.d.ts +26 -0
  42. package/dist/atoms/Skeleton.svelte +39 -15
  43. package/dist/atoms/Skeleton.svelte.d.ts +7 -3
  44. package/dist/atoms/Table.svelte +27 -0
  45. package/dist/atoms/Table.svelte.d.ts +10 -0
  46. package/dist/atoms/Text.svelte +46 -0
  47. package/dist/atoms/Text.svelte.d.ts +13 -0
  48. package/dist/atoms/Textarea.svelte +74 -53
  49. package/dist/atoms/Textarea.svelte.d.ts +6 -2
  50. package/dist/atoms/ThemeToggle.svelte +35 -24
  51. package/dist/atoms/ThemeToggle.svelte.d.ts +1 -0
  52. package/dist/atoms/Toast.svelte +55 -31
  53. package/dist/atoms/Toast.svelte.d.ts +4 -1
  54. package/dist/atoms/Toggle.svelte +37 -22
  55. package/dist/atoms/Toggle.svelte.d.ts +2 -1
  56. package/dist/atoms/Tooltip.svelte +90 -11
  57. package/dist/atoms/index.d.ts +6 -0
  58. package/dist/atoms/index.js +6 -0
  59. package/dist/atoms/selection-control.styles.d.ts +25 -0
  60. package/dist/atoms/selection-control.styles.js +30 -0
  61. package/dist/components/atoms/index.d.ts +6 -0
  62. package/dist/components/atoms/index.d.ts.map +1 -1
  63. package/dist/components/atoms/selection-control.styles.d.ts +26 -0
  64. package/dist/components/atoms/selection-control.styles.d.ts.map +1 -0
  65. package/dist/components/index.d.ts +42 -7
  66. package/dist/components/index.d.ts.map +1 -1
  67. package/dist/components/molecules/index.d.ts +10 -0
  68. package/dist/components/molecules/index.d.ts.map +1 -1
  69. package/dist/components/molecules/navigation-menu-context.d.ts +11 -0
  70. package/dist/components/molecules/navigation-menu-context.d.ts.map +1 -1
  71. package/dist/components/molecules/toast-store.d.ts +39 -0
  72. package/dist/components/molecules/toast-store.d.ts.map +1 -0
  73. package/dist/components/organisms/index.d.ts +3 -3
  74. package/dist/components/organisms/index.d.ts.map +1 -1
  75. package/dist/components/types/page.types.d.ts +69 -0
  76. package/dist/components/types/page.types.d.ts.map +1 -0
  77. package/dist/components/types/page.types.js +1 -0
  78. package/dist/components/types/variants.d.ts +64 -0
  79. package/dist/components/types/variants.d.ts.map +1 -0
  80. package/dist/components/types/variants.js +44 -0
  81. package/dist/components/util/fixed-sidebar-flyout.d.ts +23 -0
  82. package/dist/components/util/fixed-sidebar-flyout.d.ts.map +1 -0
  83. package/dist/components/util/focus-utils.d.ts +12 -0
  84. package/dist/components/util/focus-utils.d.ts.map +1 -0
  85. package/dist/components/util/ssr-safe.d.ts +17 -0
  86. package/dist/components/util/ssr-safe.d.ts.map +1 -0
  87. package/dist/index.d.ts +42 -7
  88. package/dist/index.js +45 -10
  89. package/dist/lib/layout-width-tokens.d.ts +17 -0
  90. package/dist/lib/layout-width-tokens.d.ts.map +1 -0
  91. package/dist/lib/showcase/component-docs/Button.d.ts +3 -0
  92. package/dist/lib/showcase/component-docs/Button.d.ts.map +1 -0
  93. package/dist/lib/showcase/component-docs/Input.d.ts +3 -0
  94. package/dist/lib/showcase/component-docs/Input.d.ts.map +1 -0
  95. package/dist/lib/showcase/component-docs/List.d.ts +3 -0
  96. package/dist/lib/showcase/component-docs/List.d.ts.map +1 -0
  97. package/dist/lib/showcase/component-docs/Modal.d.ts +3 -0
  98. package/dist/lib/showcase/component-docs/Modal.d.ts.map +1 -0
  99. package/dist/lib/showcase/component-docs/Radio.d.ts +3 -0
  100. package/dist/lib/showcase/component-docs/Radio.d.ts.map +1 -0
  101. package/dist/lib/showcase/component-docs/SidebarNavigation.d.ts +3 -0
  102. package/dist/lib/showcase/component-docs/SidebarNavigation.d.ts.map +1 -0
  103. package/dist/lib/showcase/component-docs/Skeleton.d.ts +3 -0
  104. package/dist/lib/showcase/component-docs/Skeleton.d.ts.map +1 -0
  105. package/dist/lib/showcase/component-docs/_shared.d.ts +12 -0
  106. package/dist/lib/showcase/component-docs/_shared.d.ts.map +1 -0
  107. package/dist/lib/showcase/component-docs/index.d.ts +4 -0
  108. package/dist/lib/showcase/component-docs/index.d.ts.map +1 -0
  109. package/dist/lib/showcase/components-catalog.d.ts +3 -0
  110. package/dist/lib/showcase/components-catalog.d.ts.map +1 -0
  111. package/dist/lib/showcase/components-showcase-constants.d.ts +89 -0
  112. package/dist/lib/showcase/components-showcase-constants.d.ts.map +1 -0
  113. package/dist/lib/showcase/docs-sidebar-helpers.d.ts +15 -0
  114. package/dist/lib/showcase/docs-sidebar-helpers.d.ts.map +1 -0
  115. package/dist/molecules/Alert.svelte +50 -23
  116. package/dist/molecules/Alert.svelte.d.ts +1 -1
  117. package/dist/molecules/ComponentDemo.svelte +54 -51
  118. package/dist/molecules/ContactForm.svelte +70 -65
  119. package/dist/molecules/Dropdown.svelte +99 -108
  120. package/dist/molecules/Dropdown.svelte.d.ts +12 -6
  121. package/dist/molecules/EmptyState.svelte +44 -0
  122. package/dist/molecules/EmptyState.svelte.d.ts +11 -0
  123. package/dist/molecules/FormField.svelte +89 -0
  124. package/dist/molecules/FormField.svelte.d.ts +23 -0
  125. package/dist/molecules/Header.svelte +41 -0
  126. package/dist/molecules/Header.svelte.d.ts +10 -0
  127. package/dist/molecules/ImageUpload.svelte +1 -1
  128. package/dist/molecules/Modal.svelte +39 -26
  129. package/dist/molecules/Modal.svelte.d.ts +4 -2
  130. package/dist/molecules/NavigationMenu.svelte +16 -0
  131. package/dist/molecules/NavigationMenu.svelte.d.ts +2 -0
  132. package/dist/molecules/NavigationMenuContent.svelte +9 -1
  133. package/dist/molecules/NavigationMenuLink.svelte +1 -1
  134. package/dist/molecules/NavigationMenuTrigger.svelte +9 -4
  135. package/dist/molecules/Page.svelte +16 -0
  136. package/dist/molecules/Page.svelte.d.ts +8 -0
  137. package/dist/molecules/PropsTable.svelte +61 -0
  138. package/dist/molecules/PropsTable.svelte.d.ts +8 -0
  139. package/dist/molecules/RadioGroup.svelte +197 -0
  140. package/dist/molecules/RadioGroup.svelte.d.ts +20 -0
  141. package/dist/molecules/Section.svelte +14 -23
  142. package/dist/molecules/Section.svelte.d.ts +2 -11
  143. package/dist/molecules/SidebarBrandHeader.svelte +68 -0
  144. package/dist/molecules/SidebarBrandHeader.svelte.d.ts +10 -0
  145. package/dist/molecules/SidebarFooter.svelte +119 -0
  146. package/dist/molecules/SidebarFooter.svelte.d.ts +23 -0
  147. package/dist/molecules/SidebarNavSection.svelte +49 -0
  148. package/dist/molecules/SidebarNavSection.svelte.d.ts +14 -0
  149. package/dist/molecules/SlideUp.svelte +21 -16
  150. package/dist/molecules/SlideUp.svelte.d.ts +1 -1
  151. package/dist/molecules/Tabs.svelte +6 -11
  152. package/dist/molecules/Toaster.svelte +21 -0
  153. package/dist/molecules/Toaster.svelte.d.ts +6 -0
  154. package/dist/molecules/ToasterToast.svelte +217 -0
  155. package/dist/molecules/ToasterToast.svelte.d.ts +7 -0
  156. package/dist/molecules/index.d.ts +10 -0
  157. package/dist/molecules/index.js +10 -0
  158. package/dist/molecules/navigation-menu-context.d.ts +11 -0
  159. package/dist/molecules/navigation-menu-context.js +18 -0
  160. package/dist/molecules/toast-store.d.ts +38 -0
  161. package/dist/molecules/toast-store.js +34 -0
  162. package/dist/organisms/SidebarAccountPanel.svelte +118 -0
  163. package/dist/organisms/SidebarAccountPanel.svelte.d.ts +20 -0
  164. package/dist/organisms/SidebarNavigation.svelte +286 -212
  165. package/dist/organisms/SidebarNavigation.svelte.d.ts +22 -1
  166. package/dist/organisms/{SidebarProjectPanel.svelte → SidebarPanel.svelte} +67 -34
  167. package/dist/organisms/{SidebarProjectPanel.svelte.d.ts → SidebarPanel.svelte.d.ts} +9 -6
  168. package/dist/organisms/TopNavbar.svelte +214 -0
  169. package/dist/organisms/TopNavbar.svelte.d.ts +35 -0
  170. package/dist/organisms/index.d.ts +3 -3
  171. package/dist/organisms/index.js +3 -3
  172. package/dist/routes/lib/focus-utils.d.ts +7 -18
  173. package/dist/routes/lib/focus-utils.ts +32 -34
  174. package/dist/routes/lib/ssr-safe.ts +5 -4
  175. package/dist/routes/lib/variant-utils.ts +48 -39
  176. package/dist/types/components.d.ts +187 -0
  177. package/dist/types/components.d.ts.map +1 -0
  178. package/dist/types/events.d.ts +200 -0
  179. package/dist/types/events.d.ts.map +1 -0
  180. package/dist/types/index.d.ts +171 -0
  181. package/dist/types/index.d.ts.map +1 -0
  182. package/dist/types/page.types.d.ts +3 -0
  183. package/dist/types/page.types.d.ts.map +1 -0
  184. package/dist/types/page.types.js +1 -0
  185. package/dist/types/page.types.ts +79 -0
  186. package/dist/types/variants.d.ts +3 -0
  187. package/dist/types/variants.d.ts.map +1 -0
  188. package/dist/types/variants.js +1 -0
  189. package/dist/types/variants.ts +75 -0
  190. package/dist/util/fixed-sidebar-flyout.d.ts +22 -0
  191. package/dist/util/fixed-sidebar-flyout.js +148 -0
  192. package/dist/util/focus-utils.d.ts +11 -0
  193. package/dist/util/focus-utils.js +94 -0
  194. package/dist/util/ssr-safe.d.ts +16 -0
  195. package/dist/util/ssr-safe.js +48 -0
  196. package/dist/zabi-components-colors.css +360 -324
  197. package/dist/zabi-components-theme-dark-only.css +164 -151
  198. package/dist/zabi-components-theme-dark.css +164 -151
  199. package/dist/zabi-components-theme-only.css +253 -230
  200. package/dist/zabi-components-theme.css +253 -230
  201. package/dist/zabi-components.css +1262 -241
  202. package/docs/theme-imports.md +112 -0
  203. package/package.json +32 -10
  204. package/dist/organisms/Navbar.svelte +0 -92
  205. package/dist/organisms/Navbar.svelte.d.ts +0 -14
  206. package/dist/organisms/Navigation.svelte +0 -119
  207. package/dist/organisms/Navigation.svelte.d.ts +0 -21
@@ -1,237 +1,260 @@
1
1
  @import "tailwindcss";
2
2
 
3
3
  @theme {
4
+ /*
5
+ * Custom base (gray) ramp — single physical scale for --color-base-*.
6
+ * 21 stops: 50 … 950 (lightest → darkest). Edit hex here; mirror the same block in .dark for standalone imports.
7
+ * Dark: semantic step S maps to physical (1000 − S), e.g. 50↔950, 75↔925; 500 stays fixed.
8
+ * Midpoints are frozen hex values (default mode: fixed).
9
+ */
10
+ --zabi-base-50: #fafafa
11
+ --zabi-base-75: #f7f7f7
12
+ --zabi-base-100: #f4f4f5
13
+ --zabi-base-150: #ececee
14
+ --zabi-base-200: #e4e4e7
15
+ --zabi-base-250: #dcdcdf
16
+ --zabi-base-300: #d4d4d8
17
+ --zabi-base-350: #babac1
18
+ --zabi-base-400: #a1a1aa
19
+ --zabi-base-450: #898992
20
+ --zabi-base-500: #71717a
21
+ --zabi-base-550: #61616a
22
+ --zabi-base-600: #52525b
23
+ --zabi-base-650: #484850
24
+ --zabi-base-700: #3f3f46
25
+ --zabi-base-750: #333338
26
+ --zabi-base-800: #27272a
27
+ --zabi-base-850: #1f1f22
28
+ --zabi-base-900: #18181b
29
+ --zabi-base-925: #101013
30
+ --zabi-base-950: #09090b
4
31
  /* Typography - Nunito Sans font family */
5
- --font-family-sans: 'Nunito Sans', ui-sans-serif, system-ui, sans-serif;
6
-
7
- /* Brand Color Scale */
8
- --color-brand-50: #f7faff;
9
- --color-brand-100: #edf2fb;
10
- --color-brand-200: #dfe7fb;
11
- --color-brand-300: #ccdbfd;
12
- --color-brand-400: #abc4ff;
13
- --color-brand-500: #8fa8ff;
14
- --color-brand-600: #6e84fa;
15
- --color-brand-700: #5366e2;
16
- --color-brand-800: #3f4fc0;
17
- --color-brand-900: #2f3c99;
18
- --color-brand-950: #1f2866;
19
-
20
- /* Citron Color Scale */
21
- --color-citron-50: #f9faeb;
22
- --color-citron-100: #f1f5cf;
23
- --color-citron-200: #e4ecaa;
24
- --color-citron-300: #d5e184;
25
- --color-citron-400: #c7d460;
26
- --color-citron-500: #bbbe64;
27
- --color-citron-600: #a3a852;
28
- --color-citron-700: #848a43;
29
- --color-citron-800: #666c35;
30
- --color-citron-900: #4d5229;
31
- --color-citron-950: #323518;
32
-
33
- /* Pine Color Scale */
34
- --color-pine-50: #e9f6f2;
35
- --color-pine-100: #d2ece4;
36
- --color-pine-200: #a7d9c9;
37
- --color-pine-300: #78c4ad;
38
- --color-pine-400: #49ad91;
39
- --color-pine-500: #0C5D43;
40
- --color-pine-600: #0a513a;
41
- --color-pine-700: #084532;
42
- --color-pine-800: #063a2a;
43
- --color-pine-900: #04231a;
44
- --color-pine-950: #02160f;
45
-
46
- /* Iris Color Scale */
47
- --color-iris-50: #f4f4fa;
48
- --color-iris-100: #e9e9f7;
49
- --color-iris-200: #d6d6f0;
50
- --color-iris-300: #bdbde6;
51
- --color-iris-400: #a3a3d8;
52
- --color-iris-500: #6969B3;
53
- --color-iris-600: #58589e;
54
- --color-iris-700: #474788;
55
- --color-iris-800: #38386f;
56
- --color-iris-900: #2a2a56;
57
- --color-iris-950: #1b1b37;
58
-
59
- /* Base Color Scale - Maps to neutral palette */
60
- --color-base-50: theme(colors.neutral.50);
61
- --color-base-100: theme(colors.neutral.100);
62
- --color-base-200: theme(colors.neutral.200);
63
- --color-base-300: theme(colors.neutral.300);
64
- --color-base-400: theme(colors.neutral.400);
65
- --color-base-500: theme(colors.neutral.500);
66
- --color-base-600: theme(colors.neutral.600);
67
- --color-base-700: theme(colors.neutral.700);
68
- --color-base-800: theme(colors.neutral.800);
69
- --color-base-900: theme(colors.neutral.900);
70
- --color-base-950: theme(colors.neutral.950);
71
-
72
-
73
- /* Background Colors */
74
- --color-background: var(--color-base-100);
75
- --color-background-secondary: var(--color-base-50);
76
- --color-background-tertiary: var(--color-base-100);
77
-
78
- /* Page Colors */
79
- --color-page: var(--color-base-100);
80
- --color-page-secondary: var(--color-base-200);
81
-
82
- /* Card Colors */
83
- --color-card: theme(colors.white);
84
- --color-card-hover: var(--color-base-100);
85
- --color-card-active: var(--color-base-100);
86
- --color-card-elevated: theme(colors.white);
87
-
88
- /* Overlay Colors */
89
- --color-overlay: rgba(0, 0, 0, 0.5);
90
-
91
- /* Input Colors */
92
- --color-input: var(--color-base-200);
93
- --color-input-hover: var(--color-base-100);
94
- --color-input-focus: var(--color-base-100);
95
- --color-input-disabled: var(--color-base-100);
96
-
97
- /* Text Colors */
98
- --color-headline: var(--color-base-900);
99
- --color-body: var(--color-base-800);
100
- --color-description: var(--color-base-600);
101
- --color-caption: var(--color-base-500);
102
- --color-input-placeholder: var(--color-base-400);
103
- --color-label: var(--color-base-700);
104
- --color-link: theme(colors.brand.600);
105
- --color-link-hover: theme(colors.brand.700);
106
- --color-success-text: var(--color-success);
107
- --color-warning-text: theme(colors.amber.700);
108
- --color-neutral-text: var(--color-base-700);
109
- --color-energetic-text: theme(colors.citron.700);
110
- --color-error-text: theme(colors.red.700);
111
- --color-inverse: theme(colors.white);
112
- --color-disabled: var(--color-base-400);
113
-
114
- /* Border Colors */
115
- --color-border: var(--color-base-200);
116
- --color-border-weak: var(--color-base-300);
117
- --color-border-medium: var(--color-base-400);
118
- --color-border-strong: var(--color-base-500);
119
-
120
- /* Focus Colors */
121
- --color-focus: theme(colors.brand.500);
122
- --color-focus-weak: theme(colors.brand.600);
123
- --color-focus-medium: theme(colors.brand.700);
124
- --color-focus-strong: theme(colors.brand.800);
125
-
126
- /* Primary Colors */
127
- --color-primary: theme(colors.brand.600);
128
- --color-primary-weak: theme(colors.brand.700);
129
- --color-primary-medium: theme(colors.brand.800);
130
- --color-primary-strong: theme(colors.brand.900);
131
-
132
- /* Secondary Colors */
133
- --color-secondary: var(--color-base-600);
134
- --color-secondary-weak: var(--color-base-700);
135
- --color-secondary-medium: var(--color-base-800);
136
- --color-secondary-strong: var(--color-base-900);
137
-
138
- /* Success Colors */
139
- --color-success: theme(colors.pine.600);
140
- --color-success-weak: theme(colors.pine.700);
141
- --color-success-medium: theme(colors.pine.800);
142
- --color-success-strong: theme(colors.pine.900);
143
-
144
- /* Warning Colors */
145
- --color-warning: theme(colors.amber.500);
146
- --color-warning-weak: theme(colors.amber.600);
147
- --color-warning-medium: theme(colors.amber.400);
148
- --color-warning-strong: theme(colors.amber.300);
149
-
150
- /* Error Colors */
151
- --color-error: theme(colors.red.500);
152
- --color-error-weak: theme(colors.red.600);
153
- --color-error-medium: theme(colors.red.400);
154
- --color-error-strong: theme(colors.red.300);
155
-
156
- /* Energetic Colors (Citron) */
157
- --color-energetic: theme(colors.citron.500);
158
- --color-energetic-weak: theme(colors.citron.600);
159
- --color-energetic-medium: theme(colors.citron.400);
160
- --color-energetic-strong: theme(colors.citron.300);
161
-
162
- /* Neutral Colors */
163
- --color-neutral: var(--color-base-600);
164
- --color-neutral-weak: var(--color-base-700);
165
- --color-neutral-medium: var(--color-base-800);
166
- --color-neutral-strong: var(--color-base-900);
167
-
168
- /* Info Colors */
169
- --color-info: theme(colors.iris.600);
170
- --color-info-weak: theme(colors.iris.700);
171
- --color-info-medium: theme(colors.iris.800);
172
- --color-info-strong: theme(colors.iris.900);
173
- /* Text alias */
174
- --color-info-text: var(--color-info);
175
-
176
- /* ========================================
32
+ --font-family-sans: 'Nunito Sans', ui-sans-serif, system-ui, sans-serif
33
+ /* Brand Color Scale */
34
+ --color-brand-50: #f7faff
35
+ --color-brand-100: #edf2fb
36
+ --color-brand-200: #dfe7fb
37
+ --color-brand-300: #ccdbfd
38
+ --color-brand-400: #abc4ff
39
+ --color-brand-500: #8fa8ff
40
+ --color-brand-600: #6e84fa
41
+ --color-brand-700: #5366e2
42
+ --color-brand-800: #3f4fc0
43
+ --color-brand-900: #2f3c99
44
+ --color-brand-950: #1f2866
45
+ /* Citron Color Scale */
46
+ --color-citron-50: #f9faeb
47
+ --color-citron-100: #f1f5cf
48
+ --color-citron-200: #e4ecaa
49
+ --color-citron-300: #d5e184
50
+ --color-citron-400: #c7d460
51
+ --color-citron-500: #bbbe64
52
+ --color-citron-600: #a3a852
53
+ --color-citron-700: #848a43
54
+ --color-citron-800: #666c35
55
+ --color-citron-900: #4d5229
56
+ --color-citron-950: #323518
57
+ /* Pine Color Scale */
58
+ --color-pine-50: #e9f6f2
59
+ --color-pine-100: #d2ece4
60
+ --color-pine-200: #a7d9c9
61
+ --color-pine-300: #78c4ad
62
+ --color-pine-400: #49ad91
63
+ --color-pine-500: #0C5D43
64
+ --color-pine-600: #0a513a
65
+ --color-pine-700: #084532
66
+ --color-pine-800: #063a2a
67
+ --color-pine-900: #04231a
68
+ --color-pine-950: #02160f
69
+ /* Iris Color Scale */
70
+ --color-iris-50: #f4f4fa
71
+ --color-iris-100: #e9e9f7
72
+ --color-iris-200: #d6d6f0
73
+ --color-iris-300: #bdbde6
74
+ --color-iris-400: #a3a3d8
75
+ --color-iris-500: #6969B3
76
+ --color-iris-600: #58589e
77
+ --color-iris-700: #474788
78
+ --color-iris-800: #38386f
79
+ --color-iris-900: #2a2a56
80
+ --color-iris-950: #1b1b37
81
+ /* Base Color Scale — semantic tokens alias the physical ramp (light: 1:1) */
82
+ --color-base-50: var(--zabi-base-50)
83
+ --color-base-75: var(--zabi-base-75)
84
+ --color-base-100: var(--zabi-base-100)
85
+ --color-base-150: var(--zabi-base-150)
86
+ --color-base-200: var(--zabi-base-200)
87
+ --color-base-250: var(--zabi-base-250)
88
+ --color-base-300: var(--zabi-base-300)
89
+ --color-base-350: var(--zabi-base-350)
90
+ --color-base-400: var(--zabi-base-400)
91
+ --color-base-450: var(--zabi-base-450)
92
+ --color-base-500: var(--zabi-base-500)
93
+ --color-base-550: var(--zabi-base-550)
94
+ --color-base-600: var(--zabi-base-600)
95
+ --color-base-650: var(--zabi-base-650)
96
+ --color-base-700: var(--zabi-base-700)
97
+ --color-base-750: var(--zabi-base-750)
98
+ --color-base-800: var(--zabi-base-800)
99
+ --color-base-850: var(--zabi-base-850)
100
+ --color-base-900: var(--zabi-base-900)
101
+ --color-base-925: var(--zabi-base-925)
102
+ --color-base-950: var(--zabi-base-950)
103
+ /* Background Colors */
104
+ --color-background: var(--color-base-100)
105
+ --color-background-secondary: var(--color-base-50)
106
+ --color-background-tertiary: var(--color-base-100)
107
+ /* Page Colors */
108
+ --color-page: var(--color-base-100)
109
+ --color-page-secondary: var(--color-base-200)
110
+ /* Card Colors */
111
+ --color-card: theme(colors.white)
112
+ --color-card-hover: var(--color-base-100)
113
+ --color-card-active: var(--color-base-100)
114
+ --color-card-elevated: theme(colors.white)
115
+ /* Surfaces — layered UI (ascending number = higher layer / more contrast against page) */
116
+ --color-surface-1: theme(colors.white)
117
+ --color-surface-2: var(--color-base-50)
118
+ --color-surface-3: var(--color-base-75)
119
+ --color-surface-4: var(--color-base-100)
120
+ /* Overlay Colors */
121
+ --color-overlay: rgba(0, 0, 0, 0.5)
122
+ /* Input Colors */
123
+ --color-input: var(--color-base-250)
124
+ --color-input-border: var(--color-base-350)
125
+ --color-input-hover: var(--color-base-300)
126
+ --color-input-focus: var(--color-base-300)
127
+ --color-input-disabled: var(--color-base-100)
128
+ /* Text Colors */
129
+ --color-headline: var(--color-base-900)
130
+ --color-body: var(--color-base-800)
131
+ --color-description: var(--color-base-600)
132
+ --color-caption: var(--color-base-500)
133
+ --color-input-placeholder: var(--color-base-400)
134
+ --color-label: var(--color-base-700)
135
+ --color-link: theme(colors.brand.600)
136
+ --color-link-hover: theme(colors.brand.700)
137
+ /* Navigation menu item — menubar triggers, menu links, inline/sidebar nav rows */
138
+ --color-nav-menu-item: var(--color-body)
139
+ --color-nav-menu-item-hover: var(--color-headline)
140
+ --color-nav-menu-item-active: var(--color-link)
141
+ --color-nav-menu-hover: var(--color-base-100)
142
+ --color-nav-menu-active: var(--color-action-primary-subtle)
143
+ --color-nav-menu-focus: var(--color-brand-500)
144
+ --color-success-text: var(--color-success)
145
+ --color-warning-text: theme(colors.amber.700)
146
+ --color-neutral-text: var(--color-base-700)
147
+ --color-energetic-text: theme(colors.citron.700)
148
+ --color-error-text: theme(colors.red.700)
149
+ --color-inverse: theme(colors.white)
150
+ --color-disabled: var(--color-base-400)
151
+ /* Border Colors */
152
+ --color-border: var(--color-base-300)
153
+ --color-border-weak: var(--color-base-300)
154
+ --color-border-medium: var(--color-base-400)
155
+ --color-border-strong: var(--color-base-500)
156
+ /* Focus Colors */
157
+ --color-focus: theme(colors.brand.500)
158
+ --color-focus-weak: theme(colors.brand.600)
159
+ --color-focus-medium: theme(colors.brand.700)
160
+ --color-focus-strong: theme(colors.brand.800)
161
+ /* Aliases for `ring-focus-ring`, `.focus-ring`, and form utils */
162
+ --color-focus-ring: var(--color-focus)
163
+ --color-focus-ring-offset: var(--color-card)
164
+ /* Primary Colors */
165
+ --color-primary: theme(colors.brand.600)
166
+ --color-primary-weak: theme(colors.brand.700)
167
+ --color-primary-medium: theme(colors.brand.800)
168
+ --color-primary-strong: theme(colors.brand.900)
169
+ /* Secondary Colors */
170
+ --color-secondary: var(--color-base-600)
171
+ --color-secondary-weak: var(--color-base-700)
172
+ --color-secondary-medium: var(--color-base-800)
173
+ --color-secondary-strong: var(--color-base-900)
174
+ /* Success Colors */
175
+ --color-success: theme(colors.pine.600)
176
+ --color-success-weak: theme(colors.pine.700)
177
+ --color-success-medium: theme(colors.pine.800)
178
+ --color-success-strong: theme(colors.pine.900)
179
+ /* Warning Colors */
180
+ --color-warning: theme(colors.amber.500)
181
+ --color-warning-weak: theme(colors.amber.600)
182
+ --color-warning-medium: theme(colors.amber.400)
183
+ --color-warning-strong: theme(colors.amber.300)
184
+ /* Error Colors */
185
+ --color-error: theme(colors.red.500)
186
+ --color-error-weak: theme(colors.red.600)
187
+ --color-error-medium: theme(colors.red.400)
188
+ --color-error-strong: theme(colors.red.300)
189
+ /* Energetic Colors (Citron) */
190
+ --color-energetic: theme(colors.citron.500)
191
+ --color-energetic-weak: theme(colors.citron.600)
192
+ --color-energetic-medium: theme(colors.citron.400)
193
+ --color-energetic-strong: theme(colors.citron.300)
194
+ /* Neutral Colors */
195
+ --color-neutral: var(--color-base-600)
196
+ --color-neutral-weak: var(--color-base-700)
197
+ --color-neutral-medium: var(--color-base-800)
198
+ --color-neutral-strong: var(--color-base-900)
199
+ /* Info Colors */
200
+ --color-info: theme(colors.iris.600)
201
+ --color-info-weak: theme(colors.iris.700)
202
+ --color-info-medium: theme(colors.iris.800)
203
+ --color-info-strong: theme(colors.iris.900)
204
+ /* Text alias */
205
+ --color-info-text: var(--color-info)
206
+ /* ========================================
177
207
  ACTION COLORS - For interactive elements (buttons, links, etc.)
178
208
  ======================================== */
179
-
180
- /* Primary Actions - Used by bg-action-primary utility class */
181
- /* 🎯 TO CHANGE bg-action-primary COLOR: Edit the values below */
182
- --color-action-primary: var(--color-brand-950);
183
- --color-action-primary-hover: var(--color-brand-900);
184
- --color-action-primary-active: var(--color-brand-400);
185
- --color-action-primary-disabled: var(--color-brand-500);
186
- --color-action-primary-subtle: var(--color-brand-100);
187
- --color-action-primary-subtle-hover: var(--color-brand-200);
188
- --color-action-primary-text: var(--color-brand-50);
189
-
190
- /* Secondary Actions - Used by bg-action-secondary utility class */
191
- --color-action-secondary: color-mix(in srgb, var(--color-brand-800) 10%, transparent);
192
- --color-action-secondary-hover: color-mix(in srgb, var(--color-brand-800) 20%, transparent);
193
- --color-action-secondary-active: var(--color-brand-400);
194
- --color-action-secondary-disabled: var(--color-brand-500);
195
- --color-action-secondary-subtle: var(--color-brand-600);
196
- --color-action-secondary-subtle-hover: var(--color-brand-700);
197
-
198
- /* Danger Actions - Used by bg-action-danger utility class */
199
- --color-action-danger: theme(colors.red.600);
200
- --color-action-danger-hover: theme(colors.red.700);
201
- --color-action-danger-active: theme(colors.red.800);
202
- --color-action-danger-disabled: theme(colors.red.300);
203
- --color-action-danger-subtle: theme(colors.red.50);
204
- --color-action-danger-subtle-hover: theme(colors.red.100);
205
-
206
- /* Shadow Colors */
207
- --shadow-color: 0 0 0;
208
- --shadow-opacity: 0.1;
209
- --shadow-sm: 0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity));
210
- --shadow-md: 0 4px 6px -1px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 2px 4px -2px rgb(var(--shadow-color) / var(--shadow-opacity));
211
- --shadow-lg: 0 10px 15px -3px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 4px 6px -4px rgb(var(--shadow-color) / var(--shadow-opacity));
212
- --shadow-xl: 0 20px 25px -5px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 8px 10px -6px rgb(var(--shadow-color) / var(--shadow-opacity));
213
-
214
- /* Spacing */
215
- --spacing-xs: 0.25rem;
216
- --spacing-sm: 0.5rem;
217
- --spacing-md: 1rem;
218
- --spacing-lg: 1.5rem;
219
- --spacing-xl: 2rem;
220
- --spacing-2xl: 3rem;
221
-
222
- /* Border Radius */
223
- --radius-sm: 0.25rem;
224
- --radius-md: 0.375rem;
225
- --radius-lg: 0.5rem;
226
- --radius-xl: 0.75rem;
227
-
228
- /* Z-index */
229
- --z-dropdown: 1000;
230
- --z-sticky: 1020;
231
- --z-fixed: 1030;
232
- --z-modal-backdrop: 1040;
233
- --z-modal: 1050;
234
- --z-popover: 1060;
235
- --z-tooltip: 1070;
236
- --z-toast: 1080;
209
+ /* Primary Actions - Used by bg-action-primary utility class */
210
+ /* 🎯 TO CHANGE bg-action-primary COLOR: Edit the values below */
211
+ --color-action-primary: var(--color-brand-950)
212
+ --color-action-primary-hover: var(--color-brand-900)
213
+ --color-action-primary-active: var(--color-brand-400)
214
+ --color-action-primary-disabled: var(--color-brand-500)
215
+ --color-action-primary-subtle: var(--color-brand-100)
216
+ --color-action-primary-subtle-hover: var(--color-brand-200)
217
+ --color-action-primary-text: var(--color-brand-50)
218
+ /* Secondary Actions - Used by bg-action-secondary utility class */
219
+ --color-action-secondary: color-mix(in srgb, var(--color-brand-800) 10%, transparent)
220
+ --color-action-secondary-hover: color-mix(in srgb, var(--color-brand-800) 20%, transparent)
221
+ --color-action-secondary-active: var(--color-brand-400)
222
+ --color-action-secondary-disabled: var(--color-brand-500)
223
+ --color-action-secondary-subtle: var(--color-brand-600)
224
+ --color-action-secondary-subtle-hover: var(--color-brand-700)
225
+ /* Danger Actions - Used by bg-action-danger utility class */
226
+ --color-action-danger: theme(colors.red.600)
227
+ --color-action-danger-hover: theme(colors.red.700)
228
+ --color-action-danger-active: theme(colors.red.800)
229
+ --color-action-danger-disabled: theme(colors.red.300)
230
+ --color-action-danger-subtle: theme(colors.red.50)
231
+ --color-action-danger-subtle-hover: theme(colors.red.100)
232
+ /* Shadow Colors */
233
+ --shadow-color: 0 0 0
234
+ --shadow-opacity: 0.1
235
+ --shadow-sm: 0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity))
236
+ --shadow-md: 0 4px 6px -1px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 2px 4px -2px rgb(var(--shadow-color) / var(--shadow-opacity))
237
+ --shadow-lg: 0 10px 15px -3px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 4px 6px -4px rgb(var(--shadow-color) / var(--shadow-opacity))
238
+ --shadow-xl: 0 20px 25px -5px rgb(var(--shadow-color) / var(--shadow-opacity)), 0 8px 10px -6px rgb(var(--shadow-color) / var(--shadow-opacity))
239
+ /* Spacing */
240
+ --spacing-xs: 0.25rem
241
+ --spacing-sm: 0.5rem
242
+ --spacing-md: 1rem
243
+ --spacing-lg: 1.5rem
244
+ --spacing-xl: 2rem
245
+ --spacing-2xl: 3rem
246
+ /* Border Radius */
247
+ --radius-sm: 0.25rem
248
+ --radius-md: 0.375rem
249
+ --radius-lg: 0.5rem
250
+ --radius-xl: 0.75rem
251
+ /* Z-index */
252
+ --z-dropdown: 1000
253
+ --z-sticky: 1020
254
+ --z-fixed: 1030
255
+ --z-modal-backdrop: 1040
256
+ --z-modal: 1050
257
+ --z-popover: 1060
258
+ --z-tooltip: 1070
259
+ --z-toast: 1080
237
260
  }