zabi-components 6.0.0 → 7.0.1

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 (200) hide show
  1. package/README.md +137 -1473
  2. package/dist/atoms/ActionPanel.svelte +116 -0
  3. package/dist/atoms/ActionPanel.svelte.d.ts +19 -0
  4. package/dist/atoms/Badge.svelte +1 -1
  5. package/dist/atoms/Badge.svelte.d.ts +1 -1
  6. package/dist/atoms/Button.svelte +38 -21
  7. package/dist/atoms/Button.svelte.d.ts +6 -6
  8. package/dist/atoms/Card.svelte +12 -3
  9. package/dist/atoms/Card.svelte.d.ts +2 -2
  10. package/dist/atoms/CardHeader.svelte +8 -4
  11. package/dist/atoms/CardHeader.svelte.d.ts +4 -2
  12. package/dist/atoms/Checkbox.svelte +50 -76
  13. package/dist/atoms/Checkbox.svelte.d.ts +7 -2
  14. package/dist/atoms/CodeBlock.svelte +20 -34
  15. package/dist/atoms/CodeBlock.svelte.d.ts +1 -0
  16. package/dist/atoms/ColorPicker.svelte +2 -6
  17. package/dist/atoms/Container.svelte +41 -0
  18. package/dist/atoms/Container.svelte.d.ts +12 -0
  19. package/dist/atoms/Divider.svelte +68 -0
  20. package/dist/atoms/Divider.svelte.d.ts +13 -0
  21. package/dist/atoms/FeatureCard.svelte +35 -50
  22. package/dist/atoms/FeatureCard.svelte.d.ts +9 -4
  23. package/dist/atoms/IconButton.svelte +36 -29
  24. package/dist/atoms/IconButton.svelte.d.ts +7 -13
  25. package/dist/atoms/Input.svelte +58 -26
  26. package/dist/atoms/Input.svelte.d.ts +6 -1
  27. package/dist/atoms/List.svelte +2 -7
  28. package/dist/atoms/List.svelte.d.ts +1 -6
  29. package/dist/atoms/ListItem.svelte +54 -65
  30. package/dist/atoms/ListItem.svelte.d.ts +7 -13
  31. package/dist/atoms/ListItemLeading.svelte +19 -0
  32. package/dist/atoms/ListItemLeading.svelte.d.ts +9 -0
  33. package/dist/atoms/Progress.svelte +1 -1
  34. package/dist/atoms/Radio.svelte +51 -0
  35. package/dist/atoms/Radio.svelte.d.ts +14 -0
  36. package/dist/atoms/Select.svelte +23 -30
  37. package/dist/atoms/Select.svelte.d.ts +0 -10
  38. package/dist/atoms/SelectionControl.svelte +98 -0
  39. package/dist/atoms/SelectionControl.svelte.d.ts +26 -0
  40. package/dist/atoms/Skeleton.svelte +39 -15
  41. package/dist/atoms/Skeleton.svelte.d.ts +7 -3
  42. package/dist/atoms/Table.svelte +27 -0
  43. package/dist/atoms/Table.svelte.d.ts +10 -0
  44. package/dist/atoms/Text.svelte +46 -0
  45. package/dist/atoms/Text.svelte.d.ts +13 -0
  46. package/dist/atoms/Textarea.svelte +74 -53
  47. package/dist/atoms/Textarea.svelte.d.ts +6 -2
  48. package/dist/atoms/ThemeToggle.svelte +35 -24
  49. package/dist/atoms/ThemeToggle.svelte.d.ts +1 -0
  50. package/dist/atoms/Toast.svelte +55 -31
  51. package/dist/atoms/Toast.svelte.d.ts +4 -1
  52. package/dist/atoms/Toggle.svelte +37 -22
  53. package/dist/atoms/Toggle.svelte.d.ts +2 -1
  54. package/dist/atoms/Tooltip.svelte +97 -14
  55. package/dist/atoms/Tooltip.svelte.d.ts +6 -5
  56. package/dist/atoms/index.d.ts +6 -0
  57. package/dist/atoms/index.js +6 -0
  58. package/dist/atoms/selection-control.styles.d.ts +25 -0
  59. package/dist/atoms/selection-control.styles.js +30 -0
  60. package/dist/components/atoms/index.d.ts +6 -0
  61. package/dist/components/atoms/index.d.ts.map +1 -1
  62. package/dist/components/atoms/selection-control.styles.d.ts +26 -0
  63. package/dist/components/atoms/selection-control.styles.d.ts.map +1 -0
  64. package/dist/components/index.d.ts +41 -5
  65. package/dist/components/index.d.ts.map +1 -1
  66. package/dist/components/molecules/index.d.ts +10 -0
  67. package/dist/components/molecules/index.d.ts.map +1 -1
  68. package/dist/components/molecules/navigation-menu-context.d.ts +11 -0
  69. package/dist/components/molecules/navigation-menu-context.d.ts.map +1 -1
  70. package/dist/components/molecules/toast-store.d.ts +39 -0
  71. package/dist/components/molecules/toast-store.d.ts.map +1 -0
  72. package/dist/components/organisms/index.d.ts +2 -1
  73. package/dist/components/organisms/index.d.ts.map +1 -1
  74. package/dist/components/types/page.types.d.ts +69 -0
  75. package/dist/components/types/page.types.d.ts.map +1 -0
  76. package/dist/components/types/page.types.js +1 -0
  77. package/dist/components/types/variants.d.ts +64 -0
  78. package/dist/components/types/variants.d.ts.map +1 -0
  79. package/dist/components/types/variants.js +44 -0
  80. package/dist/components/util/fixed-sidebar-flyout.d.ts +23 -0
  81. package/dist/components/util/fixed-sidebar-flyout.d.ts.map +1 -0
  82. package/dist/components/util/focus-utils.d.ts +12 -0
  83. package/dist/components/util/focus-utils.d.ts.map +1 -0
  84. package/dist/components/util/ssr-safe.d.ts +17 -0
  85. package/dist/components/util/ssr-safe.d.ts.map +1 -0
  86. package/dist/index.d.ts +41 -5
  87. package/dist/index.js +44 -8
  88. package/dist/lib/layout-width-tokens.d.ts +17 -0
  89. package/dist/lib/layout-width-tokens.d.ts.map +1 -0
  90. package/dist/lib/showcase/component-docs/Button.d.ts +3 -0
  91. package/dist/lib/showcase/component-docs/Button.d.ts.map +1 -0
  92. package/dist/lib/showcase/component-docs/Input.d.ts +3 -0
  93. package/dist/lib/showcase/component-docs/Input.d.ts.map +1 -0
  94. package/dist/lib/showcase/component-docs/List.d.ts +3 -0
  95. package/dist/lib/showcase/component-docs/List.d.ts.map +1 -0
  96. package/dist/lib/showcase/component-docs/Modal.d.ts +3 -0
  97. package/dist/lib/showcase/component-docs/Modal.d.ts.map +1 -0
  98. package/dist/lib/showcase/component-docs/Radio.d.ts +3 -0
  99. package/dist/lib/showcase/component-docs/Radio.d.ts.map +1 -0
  100. package/dist/lib/showcase/component-docs/SidebarNavigation.d.ts +3 -0
  101. package/dist/lib/showcase/component-docs/SidebarNavigation.d.ts.map +1 -0
  102. package/dist/lib/showcase/component-docs/Skeleton.d.ts +3 -0
  103. package/dist/lib/showcase/component-docs/Skeleton.d.ts.map +1 -0
  104. package/dist/lib/showcase/component-docs/_shared.d.ts +12 -0
  105. package/dist/lib/showcase/component-docs/_shared.d.ts.map +1 -0
  106. package/dist/lib/showcase/component-docs/index.d.ts +4 -0
  107. package/dist/lib/showcase/component-docs/index.d.ts.map +1 -0
  108. package/dist/lib/showcase/components-catalog.d.ts.map +1 -1
  109. package/dist/lib/showcase/components-showcase-constants.d.ts +26 -0
  110. package/dist/lib/showcase/components-showcase-constants.d.ts.map +1 -1
  111. package/dist/molecules/Alert.svelte +50 -23
  112. package/dist/molecules/Alert.svelte.d.ts +1 -1
  113. package/dist/molecules/ComponentDemo.svelte +2 -2
  114. package/dist/molecules/ContactForm.svelte +1 -1
  115. package/dist/molecules/Dropdown.svelte +99 -109
  116. package/dist/molecules/Dropdown.svelte.d.ts +12 -6
  117. package/dist/molecules/EmptyState.svelte +44 -0
  118. package/dist/molecules/EmptyState.svelte.d.ts +11 -0
  119. package/dist/molecules/FormField.svelte +89 -0
  120. package/dist/molecules/FormField.svelte.d.ts +23 -0
  121. package/dist/molecules/Header.svelte +41 -0
  122. package/dist/molecules/Header.svelte.d.ts +10 -0
  123. package/dist/molecules/Modal.svelte +37 -24
  124. package/dist/molecules/Modal.svelte.d.ts +4 -2
  125. package/dist/molecules/NavigationMenu.svelte +16 -0
  126. package/dist/molecules/NavigationMenu.svelte.d.ts +2 -0
  127. package/dist/molecules/NavigationMenuContent.svelte +9 -1
  128. package/dist/molecules/NavigationMenuLink.svelte +1 -1
  129. package/dist/molecules/NavigationMenuTrigger.svelte +9 -1
  130. package/dist/molecules/Page.svelte +16 -0
  131. package/dist/molecules/Page.svelte.d.ts +8 -0
  132. package/dist/molecules/PropsTable.svelte +61 -0
  133. package/dist/molecules/PropsTable.svelte.d.ts +8 -0
  134. package/dist/molecules/RadioGroup.svelte +197 -0
  135. package/dist/molecules/RadioGroup.svelte.d.ts +20 -0
  136. package/dist/molecules/Section.svelte +2 -11
  137. package/dist/molecules/Section.svelte.d.ts +2 -11
  138. package/dist/molecules/SidebarBrandHeader.svelte +68 -0
  139. package/dist/molecules/SidebarBrandHeader.svelte.d.ts +10 -0
  140. package/dist/molecules/SidebarFooter.svelte +119 -0
  141. package/dist/molecules/SidebarFooter.svelte.d.ts +23 -0
  142. package/dist/molecules/SidebarNavSection.svelte +49 -0
  143. package/dist/molecules/SidebarNavSection.svelte.d.ts +14 -0
  144. package/dist/molecules/SlideUp.svelte +19 -14
  145. package/dist/molecules/SlideUp.svelte.d.ts +1 -1
  146. package/dist/molecules/Tabs.svelte +4 -9
  147. package/dist/molecules/Toaster.svelte +21 -0
  148. package/dist/molecules/Toaster.svelte.d.ts +6 -0
  149. package/dist/molecules/ToasterToast.svelte +217 -0
  150. package/dist/molecules/ToasterToast.svelte.d.ts +7 -0
  151. package/dist/molecules/index.d.ts +10 -0
  152. package/dist/molecules/index.js +10 -0
  153. package/dist/molecules/navigation-menu-context.d.ts +11 -0
  154. package/dist/molecules/navigation-menu-context.js +18 -0
  155. package/dist/molecules/toast-store.d.ts +38 -0
  156. package/dist/molecules/toast-store.js +34 -0
  157. package/dist/organisms/SidebarAccountPanel.svelte +118 -0
  158. package/dist/organisms/SidebarAccountPanel.svelte.d.ts +20 -0
  159. package/dist/organisms/SidebarNavigation.svelte +267 -237
  160. package/dist/organisms/SidebarNavigation.svelte.d.ts +21 -5
  161. package/dist/organisms/SidebarPanel.svelte +54 -22
  162. package/dist/organisms/SidebarPanel.svelte.d.ts +3 -0
  163. package/dist/organisms/{Navbar.svelte → TopNavbar.svelte} +22 -17
  164. package/dist/organisms/TopNavbar.svelte.d.ts +35 -0
  165. package/dist/organisms/index.d.ts +2 -1
  166. package/dist/organisms/index.js +2 -1
  167. package/dist/routes/lib/focus-utils.d.ts +7 -18
  168. package/dist/routes/lib/focus-utils.ts +32 -34
  169. package/dist/routes/lib/ssr-safe.ts +5 -4
  170. package/dist/routes/lib/variant-utils.ts +48 -39
  171. package/dist/types/components.d.ts +187 -0
  172. package/dist/types/components.d.ts.map +1 -0
  173. package/dist/types/events.d.ts +200 -0
  174. package/dist/types/events.d.ts.map +1 -0
  175. package/dist/types/index.d.ts +171 -0
  176. package/dist/types/index.d.ts.map +1 -0
  177. package/dist/types/page.types.d.ts +2 -31
  178. package/dist/types/page.types.d.ts.map +1 -1
  179. package/dist/types/page.types.js +1 -0
  180. package/dist/types/page.types.ts +79 -0
  181. package/dist/types/variants.d.ts +3 -0
  182. package/dist/types/variants.d.ts.map +1 -0
  183. package/dist/types/variants.js +1 -0
  184. package/dist/types/variants.ts +5 -6
  185. package/dist/util/fixed-sidebar-flyout.d.ts +22 -0
  186. package/dist/util/fixed-sidebar-flyout.js +148 -0
  187. package/dist/util/focus-utils.d.ts +11 -0
  188. package/dist/util/focus-utils.js +94 -0
  189. package/dist/util/ssr-safe.d.ts +16 -0
  190. package/dist/util/ssr-safe.js +48 -0
  191. package/dist/zabi-components-colors.css +128 -115
  192. package/dist/zabi-components-theme-dark-only.css +77 -72
  193. package/dist/zabi-components-theme-dark.css +77 -72
  194. package/dist/zabi-components-theme-only.css +51 -43
  195. package/dist/zabi-components-theme.css +51 -43
  196. package/dist/zabi-components.css +952 -249
  197. package/docs/lucide-icons.md +24 -0
  198. package/package.json +22 -9
  199. package/scripts/fix-lucide-svelte-icon-dts.js +35 -0
  200. package/dist/organisms/Navbar.svelte.d.ts +0 -41
@@ -25,54 +25,54 @@
25
25
  --zabi-base-900: #18181b
26
26
  --zabi-base-925: #101013
27
27
  --zabi-base-950: #09090b
28
- /* Brand Color Scale - Dark mode variants */
29
- --color-brand-50: theme(colors.brand.950)
30
- --color-brand-100: theme(colors.brand.900)
31
- --color-brand-200: theme(colors.brand.800)
32
- --color-brand-300: theme(colors.brand.700)
33
- --color-brand-400: theme(colors.brand.600)
34
- --color-brand-500: theme(colors.brand.500)
35
- --color-brand-600: theme(colors.brand.400)
36
- --color-brand-700: theme(colors.brand.300)
37
- --color-brand-800: theme(colors.brand.200)
38
- --color-brand-900: theme(colors.brand.100)
39
- --color-brand-950: theme(colors.brand.50)
28
+ /* Brand Color Scale - Dark mode variants (mirrored from light physical hex; no theme() forward refs) */
29
+ --color-brand-50: #1f2866
30
+ --color-brand-100: #2f3c99
31
+ --color-brand-200: #3f4fc0
32
+ --color-brand-300: #5366e2
33
+ --color-brand-400: #6e84fa
34
+ --color-brand-500: #8fa8ff
35
+ --color-brand-600: #abc4ff
36
+ --color-brand-700: #ccdbfd
37
+ --color-brand-800: #dfe7fb
38
+ --color-brand-900: #edf2fb
39
+ --color-brand-950: #f7faff
40
40
  /* Citron Color Scale - Dark mode variants */
41
- --color-citron-50: theme(colors.citron.950)
42
- --color-citron-100: theme(colors.citron.900)
43
- --color-citron-200: theme(colors.citron.800)
44
- --color-citron-300: theme(colors.citron.700)
45
- --color-citron-400: theme(colors.citron.600)
46
- --color-citron-500: theme(colors.citron.500)
47
- --color-citron-600: theme(colors.citron.400)
48
- --color-citron-700: theme(colors.citron.300)
49
- --color-citron-800: theme(colors.citron.200)
50
- --color-citron-900: theme(colors.citron.100)
51
- --color-citron-950: theme(colors.citron.50)
41
+ --color-citron-50: #323518
42
+ --color-citron-100: #4d5229
43
+ --color-citron-200: #666c35
44
+ --color-citron-300: #848a43
45
+ --color-citron-400: #a3a852
46
+ --color-citron-500: #bbbe64
47
+ --color-citron-600: #c7d460
48
+ --color-citron-700: #d5e184
49
+ --color-citron-800: #e4ecaa
50
+ --color-citron-900: #f1f5cf
51
+ --color-citron-950: #f9faeb
52
52
  /* Pine Color Scale - Dark mode variants */
53
- --color-pine-50: theme(colors.pine.950)
54
- --color-pine-100: theme(colors.pine.900)
55
- --color-pine-200: theme(colors.pine.800)
56
- --color-pine-300: theme(colors.pine.700)
57
- --color-pine-400: theme(colors.pine.600)
58
- --color-pine-500: theme(colors.pine.500)
59
- --color-pine-600: theme(colors.pine.400)
60
- --color-pine-700: theme(colors.pine.300)
61
- --color-pine-800: theme(colors.pine.200)
62
- --color-pine-900: theme(colors.pine.100)
63
- --color-pine-950: theme(colors.pine.50)
53
+ --color-pine-50: #02160f
54
+ --color-pine-100: #04231a
55
+ --color-pine-200: #063a2a
56
+ --color-pine-300: #084532
57
+ --color-pine-400: #0a513a
58
+ --color-pine-500: #0c5d43
59
+ --color-pine-600: #49ad91
60
+ --color-pine-700: #78c4ad
61
+ --color-pine-800: #a7d9c9
62
+ --color-pine-900: #d2ece4
63
+ --color-pine-950: #e9f6f2
64
64
  /* Iris Color Scale - Dark mode variants */
65
- --color-iris-50: theme(colors.iris.950)
66
- --color-iris-100: theme(colors.iris.900)
67
- --color-iris-200: theme(colors.iris.800)
68
- --color-iris-300: theme(colors.iris.700)
69
- --color-iris-400: theme(colors.iris.600)
70
- --color-iris-500: theme(colors.iris.500)
71
- --color-iris-600: theme(colors.iris.400)
72
- --color-iris-700: theme(colors.iris.300)
73
- --color-iris-800: theme(colors.iris.200)
74
- --color-iris-900: theme(colors.iris.100)
75
- --color-iris-950: theme(colors.iris.50)
65
+ --color-iris-50: #1b1b37
66
+ --color-iris-100: #2a2a56
67
+ --color-iris-200: #38386f
68
+ --color-iris-300: #474788
69
+ --color-iris-400: #58589e
70
+ --color-iris-500: #6969b3
71
+ --color-iris-600: #a3a3d8
72
+ --color-iris-700: #bdbde6
73
+ --color-iris-800: #d6d6f0
74
+ --color-iris-900: #e9e9f7
75
+ --color-iris-950: #f4f4fa
76
76
  /* Base Color Scale — semantic → physical mirror (1000 − step); 500 is fixed point */
77
77
  --color-base-50: #09090b
78
78
  --color-base-75: #101013
@@ -102,6 +102,11 @@
102
102
  --color-card-hover: var(--color-base-300)
103
103
  --color-card-active: var(--color-base-400)
104
104
  --color-card-elevated: var(--color-base-200)
105
+ /* Surfaces — layered UI (each step is lighter than the previous to read as "elevated") */
106
+ --color-surface-1: var(--color-base-250)
107
+ --color-surface-2: var(--color-base-300)
108
+ --color-surface-3: var(--color-base-350)
109
+ --color-surface-4: var(--color-base-400)
105
110
  /* Overlay Colors */
106
111
  --color-overlay: rgba(0, 0, 0, 0.7)
107
112
  /* Input Colors */
@@ -116,32 +121,32 @@
116
121
  /* Primary Colors - No dark mode overrides needed, brand colors are already inverted */
117
122
  /* Secondary Colors - No dark mode overrides needed, base colors are already inverted */
118
123
  /* Success Colors */
119
- --color-success: theme(colors.pine.400)
120
- --color-success-weak: theme(colors.pine.500)
121
- --color-success-medium: theme(colors.pine.300)
122
- --color-success-strong: theme(colors.pine.200)
124
+ --color-success: var(--color-pine-400)
125
+ --color-success-weak: var(--color-pine-500)
126
+ --color-success-medium: var(--color-pine-300)
127
+ --color-success-strong: var(--color-pine-200)
123
128
  /* Warning Colors */
124
- --color-warning: theme(colors.amber.500)
125
- --color-warning-weak: theme(colors.amber.600)
126
- --color-warning-medium: theme(colors.amber.400)
127
- --color-warning-strong: theme(colors.amber.300)
129
+ --color-warning: #f59e0b
130
+ --color-warning-weak: #d97706
131
+ --color-warning-medium: #fbbf24
132
+ --color-warning-strong: #fcd34d
128
133
  /* Error Colors */
129
- --color-error: theme(colors.red.500)
130
- --color-error-weak: theme(colors.red.600)
131
- --color-error-medium: theme(colors.red.400)
132
- --color-error-strong: theme(colors.red.300)
134
+ --color-error: #ef4444
135
+ --color-error-weak: #dc2626
136
+ --color-error-medium: #f87171
137
+ --color-error-strong: #fca5a5
133
138
  /* Energetic Colors (Citron) */
134
- --color-energetic: theme(colors.citron.400)
135
- --color-energetic-weak: theme(colors.citron.500)
136
- --color-energetic-medium: theme(colors.citron.300)
137
- --color-energetic-strong: theme(colors.citron.200)
139
+ --color-energetic: var(--color-citron-400)
140
+ --color-energetic-weak: var(--color-citron-500)
141
+ --color-energetic-medium: var(--color-citron-300)
142
+ --color-energetic-strong: var(--color-citron-200)
138
143
  /* Neutral Colors - No dark mode overrides needed, base colors are already inverted */
139
144
  /* Info Colors */
140
- --color-info: theme(colors.iris.500)
141
- --color-info-weak: theme(colors.iris.600)
142
- --color-info-active: theme(colors.iris.400)
143
- --color-info-medium: theme(colors.iris.400)
144
- --color-info-strong: theme(colors.iris.300)
145
+ --color-info: var(--color-iris-500)
146
+ --color-info-weak: var(--color-iris-600)
147
+ --color-info-active: var(--color-iris-400)
148
+ --color-info-medium: var(--color-iris-400)
149
+ --color-info-strong: var(--color-iris-300)
145
150
  /* Text alias */
146
151
  --color-info-text: var(--color-info)
147
152
  /* ========================================
@@ -153,12 +158,12 @@
153
158
  --color-action-primary-text: var(--color-brand-50)
154
159
  /* Secondary Actions - No dark mode overrides needed, base colors are already inverted */
155
160
  /* Danger Actions */
156
- --color-action-danger: theme(colors.red.500)
157
- --color-action-danger-hover: theme(colors.red.600)
158
- --color-action-danger-active: theme(colors.red.700)
159
- --color-action-danger-disabled: theme(colors.red.700)
160
- --color-action-danger-subtle: theme(colors.red.950)
161
- --color-action-danger-subtle-hover: theme(colors.red.900)
161
+ --color-action-danger: #ef4444
162
+ --color-action-danger-hover: #dc2626
163
+ --color-action-danger-active: #b91c1c
164
+ --color-action-danger-disabled: #b91c1c
165
+ --color-action-danger-subtle: #450a0a
166
+ --color-action-danger-subtle-hover: #7f1d1d
162
167
  /* Shadow Colors */
163
168
  --shadow-opacity: 0.3
164
169
  --shadow-sm: 0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity))
@@ -106,10 +106,15 @@
106
106
  --color-page: var(--color-base-100)
107
107
  --color-page-secondary: var(--color-base-200)
108
108
  /* Card Colors */
109
- --color-card: theme(colors.white)
109
+ --color-card: #ffffff
110
110
  --color-card-hover: var(--color-base-100)
111
111
  --color-card-active: var(--color-base-100)
112
- --color-card-elevated: theme(colors.white)
112
+ --color-card-elevated: #ffffff
113
+ /* Surfaces — layered UI (ascending number = higher layer / more contrast against page) */
114
+ --color-surface-1: #ffffff
115
+ --color-surface-2: var(--color-base-50)
116
+ --color-surface-3: var(--color-base-75)
117
+ --color-surface-4: var(--color-base-100)
113
118
  /* Overlay Colors */
114
119
  --color-overlay: rgba(0, 0, 0, 0.5)
115
120
  /* Input Colors */
@@ -125,8 +130,8 @@
125
130
  --color-caption: var(--color-base-500)
126
131
  --color-input-placeholder: var(--color-base-400)
127
132
  --color-label: var(--color-base-700)
128
- --color-link: theme(colors.brand.600)
129
- --color-link-hover: theme(colors.brand.700)
133
+ --color-link: var(--color-brand-600)
134
+ --color-link-hover: var(--color-brand-700)
130
135
  /* Navigation menu item — menubar triggers, menu links, inline/sidebar nav rows */
131
136
  --color-nav-menu-item: var(--color-body)
132
137
  --color-nav-menu-item-hover: var(--color-headline)
@@ -135,62 +140,65 @@
135
140
  --color-nav-menu-active: var(--color-action-primary-subtle)
136
141
  --color-nav-menu-focus: var(--color-brand-500)
137
142
  --color-success-text: var(--color-success)
138
- --color-warning-text: theme(colors.amber.700)
143
+ --color-warning-text: #b45309
139
144
  --color-neutral-text: var(--color-base-700)
140
- --color-energetic-text: theme(colors.citron.700)
141
- --color-error-text: theme(colors.red.700)
142
- --color-inverse: theme(colors.white)
145
+ --color-energetic-text: var(--color-citron-700)
146
+ --color-error-text: #b91c1c
147
+ --color-inverse: #ffffff
143
148
  --color-disabled: var(--color-base-400)
144
149
  /* Border Colors */
145
- --color-border: var(--color-base-200)
150
+ --color-border: var(--color-base-300)
146
151
  --color-border-weak: var(--color-base-300)
147
152
  --color-border-medium: var(--color-base-400)
148
153
  --color-border-strong: var(--color-base-500)
149
154
  /* Focus Colors */
150
- --color-focus: theme(colors.brand.500)
151
- --color-focus-weak: theme(colors.brand.600)
152
- --color-focus-medium: theme(colors.brand.700)
153
- --color-focus-strong: theme(colors.brand.800)
155
+ --color-focus: var(--color-brand-500)
156
+ --color-focus-weak: var(--color-brand-600)
157
+ --color-focus-medium: var(--color-brand-700)
158
+ --color-focus-strong: var(--color-brand-800)
159
+ /* Aliases for `ring-focus-ring`, `.focus-ring`, and form utils */
160
+ --color-focus-ring: var(--color-focus)
161
+ --color-focus-ring-offset: var(--color-card)
154
162
  /* Primary Colors */
155
- --color-primary: theme(colors.brand.600)
156
- --color-primary-weak: theme(colors.brand.700)
157
- --color-primary-medium: theme(colors.brand.800)
158
- --color-primary-strong: theme(colors.brand.900)
163
+ --color-primary: var(--color-brand-600)
164
+ --color-primary-weak: var(--color-brand-700)
165
+ --color-primary-medium: var(--color-brand-800)
166
+ --color-primary-strong: var(--color-brand-900)
159
167
  /* Secondary Colors */
160
168
  --color-secondary: var(--color-base-600)
161
169
  --color-secondary-weak: var(--color-base-700)
162
170
  --color-secondary-medium: var(--color-base-800)
163
171
  --color-secondary-strong: var(--color-base-900)
164
172
  /* Success Colors */
165
- --color-success: theme(colors.pine.600)
166
- --color-success-weak: theme(colors.pine.700)
167
- --color-success-medium: theme(colors.pine.800)
168
- --color-success-strong: theme(colors.pine.900)
173
+ --color-success: var(--color-pine-600)
174
+ --color-success-weak: var(--color-pine-700)
175
+ --color-success-medium: var(--color-pine-800)
176
+ --color-success-strong: var(--color-pine-900)
169
177
  /* Warning Colors */
170
- --color-warning: theme(colors.amber.500)
171
- --color-warning-weak: theme(colors.amber.600)
172
- --color-warning-medium: theme(colors.amber.400)
173
- --color-warning-strong: theme(colors.amber.300)
178
+ --color-warning: #f59e0b
179
+ --color-warning-weak: #d97706
180
+ --color-warning-medium: #fbbf24
181
+ --color-warning-strong: #fcd34d
174
182
  /* Error Colors */
175
- --color-error: theme(colors.red.500)
176
- --color-error-weak: theme(colors.red.600)
177
- --color-error-medium: theme(colors.red.400)
178
- --color-error-strong: theme(colors.red.300)
183
+ --color-error: #ef4444
184
+ --color-error-weak: #dc2626
185
+ --color-error-medium: #f87171
186
+ --color-error-strong: #fca5a5
179
187
  /* Energetic Colors (Citron) */
180
- --color-energetic: theme(colors.citron.500)
181
- --color-energetic-weak: theme(colors.citron.600)
182
- --color-energetic-medium: theme(colors.citron.400)
183
- --color-energetic-strong: theme(colors.citron.300)
188
+ --color-energetic: var(--color-citron-500)
189
+ --color-energetic-weak: var(--color-citron-600)
190
+ --color-energetic-medium: var(--color-citron-400)
191
+ --color-energetic-strong: var(--color-citron-300)
184
192
  /* Neutral Colors */
185
193
  --color-neutral: var(--color-base-600)
186
194
  --color-neutral-weak: var(--color-base-700)
187
195
  --color-neutral-medium: var(--color-base-800)
188
196
  --color-neutral-strong: var(--color-base-900)
189
197
  /* Info Colors */
190
- --color-info: theme(colors.iris.600)
191
- --color-info-weak: theme(colors.iris.700)
192
- --color-info-medium: theme(colors.iris.800)
193
- --color-info-strong: theme(colors.iris.900)
198
+ --color-info: var(--color-iris-600)
199
+ --color-info-weak: var(--color-iris-700)
200
+ --color-info-medium: var(--color-iris-800)
201
+ --color-info-strong: var(--color-iris-900)
194
202
  /* Text alias */
195
203
  --color-info-text: var(--color-info)
196
204
  /* ========================================
@@ -213,12 +221,12 @@
213
221
  --color-action-secondary-subtle: var(--color-brand-600)
214
222
  --color-action-secondary-subtle-hover: var(--color-brand-700)
215
223
  /* Danger Actions - Used by bg-action-danger utility class */
216
- --color-action-danger: theme(colors.red.600)
217
- --color-action-danger-hover: theme(colors.red.700)
218
- --color-action-danger-active: theme(colors.red.800)
219
- --color-action-danger-disabled: theme(colors.red.300)
220
- --color-action-danger-subtle: theme(colors.red.50)
221
- --color-action-danger-subtle-hover: theme(colors.red.100)
224
+ --color-action-danger: #dc2626
225
+ --color-action-danger-hover: #b91c1c
226
+ --color-action-danger-active: #991b1b
227
+ --color-action-danger-disabled: #fca5a5
228
+ --color-action-danger-subtle: #fef2f2
229
+ --color-action-danger-subtle-hover: #fee2e2
222
230
  /* Shadow Colors */
223
231
  --shadow-color: 0 0 0
224
232
  --shadow-opacity: 0.1
@@ -108,10 +108,15 @@
108
108
  --color-page: var(--color-base-100)
109
109
  --color-page-secondary: var(--color-base-200)
110
110
  /* Card Colors */
111
- --color-card: theme(colors.white)
111
+ --color-card: #ffffff
112
112
  --color-card-hover: var(--color-base-100)
113
113
  --color-card-active: var(--color-base-100)
114
- --color-card-elevated: theme(colors.white)
114
+ --color-card-elevated: #ffffff
115
+ /* Surfaces — layered UI (ascending number = higher layer / more contrast against page) */
116
+ --color-surface-1: #ffffff
117
+ --color-surface-2: var(--color-base-50)
118
+ --color-surface-3: var(--color-base-75)
119
+ --color-surface-4: var(--color-base-100)
115
120
  /* Overlay Colors */
116
121
  --color-overlay: rgba(0, 0, 0, 0.5)
117
122
  /* Input Colors */
@@ -127,8 +132,8 @@
127
132
  --color-caption: var(--color-base-500)
128
133
  --color-input-placeholder: var(--color-base-400)
129
134
  --color-label: var(--color-base-700)
130
- --color-link: theme(colors.brand.600)
131
- --color-link-hover: theme(colors.brand.700)
135
+ --color-link: var(--color-brand-600)
136
+ --color-link-hover: var(--color-brand-700)
132
137
  /* Navigation menu item — menubar triggers, menu links, inline/sidebar nav rows */
133
138
  --color-nav-menu-item: var(--color-body)
134
139
  --color-nav-menu-item-hover: var(--color-headline)
@@ -137,62 +142,65 @@
137
142
  --color-nav-menu-active: var(--color-action-primary-subtle)
138
143
  --color-nav-menu-focus: var(--color-brand-500)
139
144
  --color-success-text: var(--color-success)
140
- --color-warning-text: theme(colors.amber.700)
145
+ --color-warning-text: #b45309
141
146
  --color-neutral-text: var(--color-base-700)
142
- --color-energetic-text: theme(colors.citron.700)
143
- --color-error-text: theme(colors.red.700)
144
- --color-inverse: theme(colors.white)
147
+ --color-energetic-text: var(--color-citron-700)
148
+ --color-error-text: #b91c1c
149
+ --color-inverse: #ffffff
145
150
  --color-disabled: var(--color-base-400)
146
151
  /* Border Colors */
147
- --color-border: var(--color-base-200)
152
+ --color-border: var(--color-base-300)
148
153
  --color-border-weak: var(--color-base-300)
149
154
  --color-border-medium: var(--color-base-400)
150
155
  --color-border-strong: var(--color-base-500)
151
156
  /* Focus Colors */
152
- --color-focus: theme(colors.brand.500)
153
- --color-focus-weak: theme(colors.brand.600)
154
- --color-focus-medium: theme(colors.brand.700)
155
- --color-focus-strong: theme(colors.brand.800)
157
+ --color-focus: var(--color-brand-500)
158
+ --color-focus-weak: var(--color-brand-600)
159
+ --color-focus-medium: var(--color-brand-700)
160
+ --color-focus-strong: var(--color-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)
156
164
  /* Primary Colors */
157
- --color-primary: theme(colors.brand.600)
158
- --color-primary-weak: theme(colors.brand.700)
159
- --color-primary-medium: theme(colors.brand.800)
160
- --color-primary-strong: theme(colors.brand.900)
165
+ --color-primary: var(--color-brand-600)
166
+ --color-primary-weak: var(--color-brand-700)
167
+ --color-primary-medium: var(--color-brand-800)
168
+ --color-primary-strong: var(--color-brand-900)
161
169
  /* Secondary Colors */
162
170
  --color-secondary: var(--color-base-600)
163
171
  --color-secondary-weak: var(--color-base-700)
164
172
  --color-secondary-medium: var(--color-base-800)
165
173
  --color-secondary-strong: var(--color-base-900)
166
174
  /* Success Colors */
167
- --color-success: theme(colors.pine.600)
168
- --color-success-weak: theme(colors.pine.700)
169
- --color-success-medium: theme(colors.pine.800)
170
- --color-success-strong: theme(colors.pine.900)
175
+ --color-success: var(--color-pine-600)
176
+ --color-success-weak: var(--color-pine-700)
177
+ --color-success-medium: var(--color-pine-800)
178
+ --color-success-strong: var(--color-pine-900)
171
179
  /* Warning Colors */
172
- --color-warning: theme(colors.amber.500)
173
- --color-warning-weak: theme(colors.amber.600)
174
- --color-warning-medium: theme(colors.amber.400)
175
- --color-warning-strong: theme(colors.amber.300)
180
+ --color-warning: #f59e0b
181
+ --color-warning-weak: #d97706
182
+ --color-warning-medium: #fbbf24
183
+ --color-warning-strong: #fcd34d
176
184
  /* Error Colors */
177
- --color-error: theme(colors.red.500)
178
- --color-error-weak: theme(colors.red.600)
179
- --color-error-medium: theme(colors.red.400)
180
- --color-error-strong: theme(colors.red.300)
185
+ --color-error: #ef4444
186
+ --color-error-weak: #dc2626
187
+ --color-error-medium: #f87171
188
+ --color-error-strong: #fca5a5
181
189
  /* Energetic Colors (Citron) */
182
- --color-energetic: theme(colors.citron.500)
183
- --color-energetic-weak: theme(colors.citron.600)
184
- --color-energetic-medium: theme(colors.citron.400)
185
- --color-energetic-strong: theme(colors.citron.300)
190
+ --color-energetic: var(--color-citron-500)
191
+ --color-energetic-weak: var(--color-citron-600)
192
+ --color-energetic-medium: var(--color-citron-400)
193
+ --color-energetic-strong: var(--color-citron-300)
186
194
  /* Neutral Colors */
187
195
  --color-neutral: var(--color-base-600)
188
196
  --color-neutral-weak: var(--color-base-700)
189
197
  --color-neutral-medium: var(--color-base-800)
190
198
  --color-neutral-strong: var(--color-base-900)
191
199
  /* Info Colors */
192
- --color-info: theme(colors.iris.600)
193
- --color-info-weak: theme(colors.iris.700)
194
- --color-info-medium: theme(colors.iris.800)
195
- --color-info-strong: theme(colors.iris.900)
200
+ --color-info: var(--color-iris-600)
201
+ --color-info-weak: var(--color-iris-700)
202
+ --color-info-medium: var(--color-iris-800)
203
+ --color-info-strong: var(--color-iris-900)
196
204
  /* Text alias */
197
205
  --color-info-text: var(--color-info)
198
206
  /* ========================================
@@ -215,12 +223,12 @@
215
223
  --color-action-secondary-subtle: var(--color-brand-600)
216
224
  --color-action-secondary-subtle-hover: var(--color-brand-700)
217
225
  /* Danger Actions - Used by bg-action-danger utility class */
218
- --color-action-danger: theme(colors.red.600)
219
- --color-action-danger-hover: theme(colors.red.700)
220
- --color-action-danger-active: theme(colors.red.800)
221
- --color-action-danger-disabled: theme(colors.red.300)
222
- --color-action-danger-subtle: theme(colors.red.50)
223
- --color-action-danger-subtle-hover: theme(colors.red.100)
226
+ --color-action-danger: #dc2626
227
+ --color-action-danger-hover: #b91c1c
228
+ --color-action-danger-active: #991b1b
229
+ --color-action-danger-disabled: #fca5a5
230
+ --color-action-danger-subtle: #fef2f2
231
+ --color-action-danger-subtle-hover: #fee2e2
224
232
  /* Shadow Colors */
225
233
  --shadow-color: 0 0 0
226
234
  --shadow-opacity: 0.1