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.
- package/README.md +137 -1473
- package/dist/atoms/ActionPanel.svelte +116 -0
- package/dist/atoms/ActionPanel.svelte.d.ts +19 -0
- package/dist/atoms/Badge.svelte +1 -1
- package/dist/atoms/Badge.svelte.d.ts +1 -1
- package/dist/atoms/Button.svelte +38 -21
- package/dist/atoms/Button.svelte.d.ts +6 -6
- package/dist/atoms/Card.svelte +12 -3
- package/dist/atoms/Card.svelte.d.ts +2 -2
- package/dist/atoms/CardHeader.svelte +8 -4
- package/dist/atoms/CardHeader.svelte.d.ts +4 -2
- package/dist/atoms/Checkbox.svelte +50 -76
- package/dist/atoms/Checkbox.svelte.d.ts +7 -2
- package/dist/atoms/CodeBlock.svelte +20 -34
- package/dist/atoms/CodeBlock.svelte.d.ts +1 -0
- package/dist/atoms/ColorPicker.svelte +2 -6
- package/dist/atoms/Container.svelte +41 -0
- package/dist/atoms/Container.svelte.d.ts +12 -0
- package/dist/atoms/Divider.svelte +68 -0
- package/dist/atoms/Divider.svelte.d.ts +13 -0
- package/dist/atoms/FeatureCard.svelte +35 -50
- package/dist/atoms/FeatureCard.svelte.d.ts +9 -4
- package/dist/atoms/IconButton.svelte +36 -29
- package/dist/atoms/IconButton.svelte.d.ts +7 -13
- package/dist/atoms/Input.svelte +58 -26
- package/dist/atoms/Input.svelte.d.ts +6 -1
- package/dist/atoms/List.svelte +2 -7
- package/dist/atoms/List.svelte.d.ts +1 -6
- package/dist/atoms/ListItem.svelte +54 -65
- package/dist/atoms/ListItem.svelte.d.ts +7 -13
- package/dist/atoms/ListItemLeading.svelte +19 -0
- package/dist/atoms/ListItemLeading.svelte.d.ts +9 -0
- package/dist/atoms/Progress.svelte +1 -1
- package/dist/atoms/Radio.svelte +51 -0
- package/dist/atoms/Radio.svelte.d.ts +14 -0
- package/dist/atoms/Select.svelte +23 -30
- package/dist/atoms/Select.svelte.d.ts +0 -10
- package/dist/atoms/SelectionControl.svelte +98 -0
- package/dist/atoms/SelectionControl.svelte.d.ts +26 -0
- package/dist/atoms/Skeleton.svelte +39 -15
- package/dist/atoms/Skeleton.svelte.d.ts +7 -3
- package/dist/atoms/Table.svelte +27 -0
- package/dist/atoms/Table.svelte.d.ts +10 -0
- package/dist/atoms/Text.svelte +46 -0
- package/dist/atoms/Text.svelte.d.ts +13 -0
- package/dist/atoms/Textarea.svelte +74 -53
- package/dist/atoms/Textarea.svelte.d.ts +6 -2
- package/dist/atoms/ThemeToggle.svelte +35 -24
- package/dist/atoms/ThemeToggle.svelte.d.ts +1 -0
- package/dist/atoms/Toast.svelte +55 -31
- package/dist/atoms/Toast.svelte.d.ts +4 -1
- package/dist/atoms/Toggle.svelte +37 -22
- package/dist/atoms/Toggle.svelte.d.ts +2 -1
- package/dist/atoms/Tooltip.svelte +97 -14
- package/dist/atoms/Tooltip.svelte.d.ts +6 -5
- package/dist/atoms/index.d.ts +6 -0
- package/dist/atoms/index.js +6 -0
- package/dist/atoms/selection-control.styles.d.ts +25 -0
- package/dist/atoms/selection-control.styles.js +30 -0
- package/dist/components/atoms/index.d.ts +6 -0
- package/dist/components/atoms/index.d.ts.map +1 -1
- package/dist/components/atoms/selection-control.styles.d.ts +26 -0
- package/dist/components/atoms/selection-control.styles.d.ts.map +1 -0
- package/dist/components/index.d.ts +41 -5
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/molecules/index.d.ts +10 -0
- package/dist/components/molecules/index.d.ts.map +1 -1
- package/dist/components/molecules/navigation-menu-context.d.ts +11 -0
- package/dist/components/molecules/navigation-menu-context.d.ts.map +1 -1
- package/dist/components/molecules/toast-store.d.ts +39 -0
- package/dist/components/molecules/toast-store.d.ts.map +1 -0
- package/dist/components/organisms/index.d.ts +2 -1
- package/dist/components/organisms/index.d.ts.map +1 -1
- package/dist/components/types/page.types.d.ts +69 -0
- package/dist/components/types/page.types.d.ts.map +1 -0
- package/dist/components/types/page.types.js +1 -0
- package/dist/components/types/variants.d.ts +64 -0
- package/dist/components/types/variants.d.ts.map +1 -0
- package/dist/components/types/variants.js +44 -0
- package/dist/components/util/fixed-sidebar-flyout.d.ts +23 -0
- package/dist/components/util/fixed-sidebar-flyout.d.ts.map +1 -0
- package/dist/components/util/focus-utils.d.ts +12 -0
- package/dist/components/util/focus-utils.d.ts.map +1 -0
- package/dist/components/util/ssr-safe.d.ts +17 -0
- package/dist/components/util/ssr-safe.d.ts.map +1 -0
- package/dist/index.d.ts +41 -5
- package/dist/index.js +44 -8
- package/dist/lib/layout-width-tokens.d.ts +17 -0
- package/dist/lib/layout-width-tokens.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/Button.d.ts +3 -0
- package/dist/lib/showcase/component-docs/Button.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/Input.d.ts +3 -0
- package/dist/lib/showcase/component-docs/Input.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/List.d.ts +3 -0
- package/dist/lib/showcase/component-docs/List.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/Modal.d.ts +3 -0
- package/dist/lib/showcase/component-docs/Modal.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/Radio.d.ts +3 -0
- package/dist/lib/showcase/component-docs/Radio.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/SidebarNavigation.d.ts +3 -0
- package/dist/lib/showcase/component-docs/SidebarNavigation.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/Skeleton.d.ts +3 -0
- package/dist/lib/showcase/component-docs/Skeleton.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/_shared.d.ts +12 -0
- package/dist/lib/showcase/component-docs/_shared.d.ts.map +1 -0
- package/dist/lib/showcase/component-docs/index.d.ts +4 -0
- package/dist/lib/showcase/component-docs/index.d.ts.map +1 -0
- package/dist/lib/showcase/components-catalog.d.ts.map +1 -1
- package/dist/lib/showcase/components-showcase-constants.d.ts +26 -0
- package/dist/lib/showcase/components-showcase-constants.d.ts.map +1 -1
- package/dist/molecules/Alert.svelte +50 -23
- package/dist/molecules/Alert.svelte.d.ts +1 -1
- package/dist/molecules/ComponentDemo.svelte +2 -2
- package/dist/molecules/ContactForm.svelte +1 -1
- package/dist/molecules/Dropdown.svelte +99 -109
- package/dist/molecules/Dropdown.svelte.d.ts +12 -6
- package/dist/molecules/EmptyState.svelte +44 -0
- package/dist/molecules/EmptyState.svelte.d.ts +11 -0
- package/dist/molecules/FormField.svelte +89 -0
- package/dist/molecules/FormField.svelte.d.ts +23 -0
- package/dist/molecules/Header.svelte +41 -0
- package/dist/molecules/Header.svelte.d.ts +10 -0
- package/dist/molecules/Modal.svelte +37 -24
- package/dist/molecules/Modal.svelte.d.ts +4 -2
- package/dist/molecules/NavigationMenu.svelte +16 -0
- package/dist/molecules/NavigationMenu.svelte.d.ts +2 -0
- package/dist/molecules/NavigationMenuContent.svelte +9 -1
- package/dist/molecules/NavigationMenuLink.svelte +1 -1
- package/dist/molecules/NavigationMenuTrigger.svelte +9 -1
- package/dist/molecules/Page.svelte +16 -0
- package/dist/molecules/Page.svelte.d.ts +8 -0
- package/dist/molecules/PropsTable.svelte +61 -0
- package/dist/molecules/PropsTable.svelte.d.ts +8 -0
- package/dist/molecules/RadioGroup.svelte +197 -0
- package/dist/molecules/RadioGroup.svelte.d.ts +20 -0
- package/dist/molecules/Section.svelte +2 -11
- package/dist/molecules/Section.svelte.d.ts +2 -11
- package/dist/molecules/SidebarBrandHeader.svelte +68 -0
- package/dist/molecules/SidebarBrandHeader.svelte.d.ts +10 -0
- package/dist/molecules/SidebarFooter.svelte +119 -0
- package/dist/molecules/SidebarFooter.svelte.d.ts +23 -0
- package/dist/molecules/SidebarNavSection.svelte +49 -0
- package/dist/molecules/SidebarNavSection.svelte.d.ts +14 -0
- package/dist/molecules/SlideUp.svelte +19 -14
- package/dist/molecules/SlideUp.svelte.d.ts +1 -1
- package/dist/molecules/Tabs.svelte +4 -9
- package/dist/molecules/Toaster.svelte +21 -0
- package/dist/molecules/Toaster.svelte.d.ts +6 -0
- package/dist/molecules/ToasterToast.svelte +217 -0
- package/dist/molecules/ToasterToast.svelte.d.ts +7 -0
- package/dist/molecules/index.d.ts +10 -0
- package/dist/molecules/index.js +10 -0
- package/dist/molecules/navigation-menu-context.d.ts +11 -0
- package/dist/molecules/navigation-menu-context.js +18 -0
- package/dist/molecules/toast-store.d.ts +38 -0
- package/dist/molecules/toast-store.js +34 -0
- package/dist/organisms/SidebarAccountPanel.svelte +118 -0
- package/dist/organisms/SidebarAccountPanel.svelte.d.ts +20 -0
- package/dist/organisms/SidebarNavigation.svelte +267 -237
- package/dist/organisms/SidebarNavigation.svelte.d.ts +21 -5
- package/dist/organisms/SidebarPanel.svelte +54 -22
- package/dist/organisms/SidebarPanel.svelte.d.ts +3 -0
- package/dist/organisms/{Navbar.svelte → TopNavbar.svelte} +22 -17
- package/dist/organisms/TopNavbar.svelte.d.ts +35 -0
- package/dist/organisms/index.d.ts +2 -1
- package/dist/organisms/index.js +2 -1
- package/dist/routes/lib/focus-utils.d.ts +7 -18
- package/dist/routes/lib/focus-utils.ts +32 -34
- package/dist/routes/lib/ssr-safe.ts +5 -4
- package/dist/routes/lib/variant-utils.ts +48 -39
- package/dist/types/components.d.ts +187 -0
- package/dist/types/components.d.ts.map +1 -0
- package/dist/types/events.d.ts +200 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/index.d.ts +171 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/page.types.d.ts +2 -31
- package/dist/types/page.types.d.ts.map +1 -1
- package/dist/types/page.types.js +1 -0
- package/dist/types/page.types.ts +79 -0
- package/dist/types/variants.d.ts +3 -0
- package/dist/types/variants.d.ts.map +1 -0
- package/dist/types/variants.js +1 -0
- package/dist/types/variants.ts +5 -6
- package/dist/util/fixed-sidebar-flyout.d.ts +22 -0
- package/dist/util/fixed-sidebar-flyout.js +148 -0
- package/dist/util/focus-utils.d.ts +11 -0
- package/dist/util/focus-utils.js +94 -0
- package/dist/util/ssr-safe.d.ts +16 -0
- package/dist/util/ssr-safe.js +48 -0
- package/dist/zabi-components-colors.css +128 -115
- package/dist/zabi-components-theme-dark-only.css +77 -72
- package/dist/zabi-components-theme-dark.css +77 -72
- package/dist/zabi-components-theme-only.css +51 -43
- package/dist/zabi-components-theme.css +51 -43
- package/dist/zabi-components.css +952 -249
- package/docs/lucide-icons.md +24 -0
- package/package.json +22 -9
- package/scripts/fix-lucide-svelte-icon-dts.js +35 -0
- package/dist/organisms/Navbar.svelte.d.ts +0 -41
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-only guards and id generation for components that run under SSR.
|
|
3
|
+
* `generateId()` is non-deterministic on the client (random) vs counter on the server —
|
|
4
|
+
* use stable ids for ARIA pairs (e.g. `menuId` on NavigationMenu), not for persisted keys.
|
|
5
|
+
*/
|
|
6
|
+
export function isBrowser() {
|
|
7
|
+
return typeof window !== 'undefined';
|
|
8
|
+
}
|
|
9
|
+
export function safeWindow() {
|
|
10
|
+
return isBrowser() ? window : undefined;
|
|
11
|
+
}
|
|
12
|
+
export function safeDocument() {
|
|
13
|
+
return isBrowser() ? document : undefined;
|
|
14
|
+
}
|
|
15
|
+
export function safeLocalStorage() {
|
|
16
|
+
return isBrowser() ? localStorage : undefined;
|
|
17
|
+
}
|
|
18
|
+
export function safeSessionStorage() {
|
|
19
|
+
return isBrowser() ? sessionStorage : undefined;
|
|
20
|
+
}
|
|
21
|
+
export function safeRequestAnimationFrame(callback) {
|
|
22
|
+
return isBrowser() ? requestAnimationFrame(callback) : undefined;
|
|
23
|
+
}
|
|
24
|
+
export function safeSetTimeout(callback, delay) {
|
|
25
|
+
return isBrowser() ? setTimeout(callback, delay) : undefined;
|
|
26
|
+
}
|
|
27
|
+
export function safeClearTimeout(id) {
|
|
28
|
+
if (isBrowser() && id) {
|
|
29
|
+
clearTimeout(id);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export function safeSetInterval(callback, delay) {
|
|
33
|
+
return isBrowser() ? setInterval(callback, delay) : undefined;
|
|
34
|
+
}
|
|
35
|
+
export function safeClearInterval(id) {
|
|
36
|
+
if (isBrowser() && id) {
|
|
37
|
+
clearInterval(id);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
let idCounter = 0;
|
|
41
|
+
export function generateId(prefix = 'id') {
|
|
42
|
+
if (isBrowser()) {
|
|
43
|
+
return `${prefix}-${Math.random().toString(36).substr(2, 9)}`;
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
return `${prefix}-ssr-${++idCounter}`;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -114,10 +114,15 @@
|
|
|
114
114
|
--color-page: var(--color-base-100)
|
|
115
115
|
--color-page-secondary: var(--color-base-200)
|
|
116
116
|
/* Card Colors */
|
|
117
|
-
--color-card:
|
|
117
|
+
--color-card: #ffffff
|
|
118
118
|
--color-card-hover: var(--color-base-100)
|
|
119
119
|
--color-card-active: var(--color-base-100)
|
|
120
|
-
--color-card-elevated:
|
|
120
|
+
--color-card-elevated: #ffffff
|
|
121
|
+
/* Surfaces — layered UI (ascending number = higher layer / more contrast against page) */
|
|
122
|
+
--color-surface-1: #ffffff
|
|
123
|
+
--color-surface-2: var(--color-base-50)
|
|
124
|
+
--color-surface-3: var(--color-base-75)
|
|
125
|
+
--color-surface-4: var(--color-base-100)
|
|
121
126
|
/* Overlay Colors */
|
|
122
127
|
--color-overlay: rgba(0, 0, 0, 0.5)
|
|
123
128
|
/* Input Colors */
|
|
@@ -133,8 +138,8 @@
|
|
|
133
138
|
--color-caption: var(--color-base-500)
|
|
134
139
|
--color-input-placeholder: var(--color-base-400)
|
|
135
140
|
--color-label: var(--color-base-700)
|
|
136
|
-
--color-link:
|
|
137
|
-
--color-link-hover:
|
|
141
|
+
--color-link: var(--color-brand-600)
|
|
142
|
+
--color-link-hover: var(--color-brand-700)
|
|
138
143
|
/* Navigation menu item — menubar triggers, menu links, inline/sidebar nav rows */
|
|
139
144
|
--color-nav-menu-item: var(--color-body)
|
|
140
145
|
--color-nav-menu-item-hover: var(--color-headline)
|
|
@@ -143,62 +148,65 @@
|
|
|
143
148
|
--color-nav-menu-active: var(--color-action-primary-subtle)
|
|
144
149
|
--color-nav-menu-focus: var(--color-brand-500)
|
|
145
150
|
--color-success-text: var(--color-success)
|
|
146
|
-
--color-warning-text:
|
|
151
|
+
--color-warning-text: #b45309
|
|
147
152
|
--color-neutral-text: var(--color-base-700)
|
|
148
|
-
--color-energetic-text:
|
|
149
|
-
--color-error-text:
|
|
150
|
-
--color-inverse:
|
|
153
|
+
--color-energetic-text: var(--color-citron-700)
|
|
154
|
+
--color-error-text: #b91c1c
|
|
155
|
+
--color-inverse: #ffffff
|
|
151
156
|
--color-disabled: var(--color-base-400)
|
|
152
157
|
/* Border Colors */
|
|
153
|
-
--color-border: var(--color-base-
|
|
158
|
+
--color-border: var(--color-base-300)
|
|
154
159
|
--color-border-weak: var(--color-base-300)
|
|
155
160
|
--color-border-medium: var(--color-base-400)
|
|
156
161
|
--color-border-strong: var(--color-base-500)
|
|
157
162
|
/* Focus Colors */
|
|
158
|
-
--color-focus:
|
|
159
|
-
--color-focus-weak:
|
|
160
|
-
--color-focus-medium:
|
|
161
|
-
--color-focus-strong:
|
|
163
|
+
--color-focus: var(--color-brand-500)
|
|
164
|
+
--color-focus-weak: var(--color-brand-600)
|
|
165
|
+
--color-focus-medium: var(--color-brand-700)
|
|
166
|
+
--color-focus-strong: var(--color-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)
|
|
162
170
|
/* Primary Colors */
|
|
163
|
-
--color-primary:
|
|
164
|
-
--color-primary-weak:
|
|
165
|
-
--color-primary-medium:
|
|
166
|
-
--color-primary-strong:
|
|
171
|
+
--color-primary: var(--color-brand-600)
|
|
172
|
+
--color-primary-weak: var(--color-brand-700)
|
|
173
|
+
--color-primary-medium: var(--color-brand-800)
|
|
174
|
+
--color-primary-strong: var(--color-brand-900)
|
|
167
175
|
/* Secondary Colors */
|
|
168
176
|
--color-secondary: var(--color-base-600)
|
|
169
177
|
--color-secondary-weak: var(--color-base-700)
|
|
170
178
|
--color-secondary-medium: var(--color-base-800)
|
|
171
179
|
--color-secondary-strong: var(--color-base-900)
|
|
172
180
|
/* Success Colors */
|
|
173
|
-
--color-success:
|
|
174
|
-
--color-success-weak:
|
|
175
|
-
--color-success-medium:
|
|
176
|
-
--color-success-strong:
|
|
181
|
+
--color-success: var(--color-pine-600)
|
|
182
|
+
--color-success-weak: var(--color-pine-700)
|
|
183
|
+
--color-success-medium: var(--color-pine-800)
|
|
184
|
+
--color-success-strong: var(--color-pine-900)
|
|
177
185
|
/* Warning Colors */
|
|
178
|
-
--color-warning:
|
|
179
|
-
--color-warning-weak:
|
|
180
|
-
--color-warning-medium:
|
|
181
|
-
--color-warning-strong:
|
|
186
|
+
--color-warning: #f59e0b
|
|
187
|
+
--color-warning-weak: #d97706
|
|
188
|
+
--color-warning-medium: #fbbf24
|
|
189
|
+
--color-warning-strong: #fcd34d
|
|
182
190
|
/* Error Colors */
|
|
183
|
-
--color-error:
|
|
184
|
-
--color-error-weak:
|
|
185
|
-
--color-error-medium:
|
|
186
|
-
--color-error-strong:
|
|
191
|
+
--color-error: #ef4444
|
|
192
|
+
--color-error-weak: #dc2626
|
|
193
|
+
--color-error-medium: #f87171
|
|
194
|
+
--color-error-strong: #fca5a5
|
|
187
195
|
/* Energetic Colors (Citron) */
|
|
188
|
-
--color-energetic:
|
|
189
|
-
--color-energetic-weak:
|
|
190
|
-
--color-energetic-medium:
|
|
191
|
-
--color-energetic-strong:
|
|
196
|
+
--color-energetic: var(--color-citron-500)
|
|
197
|
+
--color-energetic-weak: var(--color-citron-600)
|
|
198
|
+
--color-energetic-medium: var(--color-citron-400)
|
|
199
|
+
--color-energetic-strong: var(--color-citron-300)
|
|
192
200
|
/* Neutral Colors */
|
|
193
201
|
--color-neutral: var(--color-base-600)
|
|
194
202
|
--color-neutral-weak: var(--color-base-700)
|
|
195
203
|
--color-neutral-medium: var(--color-base-800)
|
|
196
204
|
--color-neutral-strong: var(--color-base-900)
|
|
197
205
|
/* Info Colors */
|
|
198
|
-
--color-info:
|
|
199
|
-
--color-info-weak:
|
|
200
|
-
--color-info-medium:
|
|
201
|
-
--color-info-strong:
|
|
206
|
+
--color-info: var(--color-iris-600)
|
|
207
|
+
--color-info-weak: var(--color-iris-700)
|
|
208
|
+
--color-info-medium: var(--color-iris-800)
|
|
209
|
+
--color-info-strong: var(--color-iris-900)
|
|
202
210
|
/* Text alias */
|
|
203
211
|
--color-info-text: var(--color-info)
|
|
204
212
|
/* ========================================
|
|
@@ -221,12 +229,12 @@
|
|
|
221
229
|
--color-action-secondary-subtle: var(--color-brand-600)
|
|
222
230
|
--color-action-secondary-subtle-hover: var(--color-brand-700)
|
|
223
231
|
/* Danger Actions - Used by bg-action-danger utility class */
|
|
224
|
-
--color-action-danger:
|
|
225
|
-
--color-action-danger-hover:
|
|
226
|
-
--color-action-danger-active:
|
|
227
|
-
--color-action-danger-disabled:
|
|
228
|
-
--color-action-danger-subtle:
|
|
229
|
-
--color-action-danger-subtle-hover:
|
|
232
|
+
--color-action-danger: #dc2626
|
|
233
|
+
--color-action-danger-hover: #b91c1c
|
|
234
|
+
--color-action-danger-active: #991b1b
|
|
235
|
+
--color-action-danger-disabled: #fca5a5
|
|
236
|
+
--color-action-danger-subtle: #fef2f2
|
|
237
|
+
--color-action-danger-subtle-hover: #fee2e2
|
|
230
238
|
/* Shadow Colors */
|
|
231
239
|
--shadow-color: 0 0 0
|
|
232
240
|
--shadow-opacity: 0.1
|
|
@@ -281,54 +289,54 @@
|
|
|
281
289
|
--zabi-base-900: #18181b
|
|
282
290
|
--zabi-base-925: #101013
|
|
283
291
|
--zabi-base-950: #09090b
|
|
284
|
-
/* Brand Color Scale - Dark mode variants */
|
|
285
|
-
--color-brand-50:
|
|
286
|
-
--color-brand-100:
|
|
287
|
-
--color-brand-200:
|
|
288
|
-
--color-brand-300:
|
|
289
|
-
--color-brand-400:
|
|
290
|
-
--color-brand-500:
|
|
291
|
-
--color-brand-600:
|
|
292
|
-
--color-brand-700:
|
|
293
|
-
--color-brand-800:
|
|
294
|
-
--color-brand-900:
|
|
295
|
-
--color-brand-950:
|
|
292
|
+
/* Brand Color Scale - Dark mode variants (mirrored from light physical hex; no theme() forward refs) */
|
|
293
|
+
--color-brand-50: #1f2866
|
|
294
|
+
--color-brand-100: #2f3c99
|
|
295
|
+
--color-brand-200: #3f4fc0
|
|
296
|
+
--color-brand-300: #5366e2
|
|
297
|
+
--color-brand-400: #6e84fa
|
|
298
|
+
--color-brand-500: #8fa8ff
|
|
299
|
+
--color-brand-600: #abc4ff
|
|
300
|
+
--color-brand-700: #ccdbfd
|
|
301
|
+
--color-brand-800: #dfe7fb
|
|
302
|
+
--color-brand-900: #edf2fb
|
|
303
|
+
--color-brand-950: #f7faff
|
|
296
304
|
/* Citron Color Scale - Dark mode variants */
|
|
297
|
-
--color-citron-50:
|
|
298
|
-
--color-citron-100:
|
|
299
|
-
--color-citron-200:
|
|
300
|
-
--color-citron-300:
|
|
301
|
-
--color-citron-400:
|
|
302
|
-
--color-citron-500:
|
|
303
|
-
--color-citron-600:
|
|
304
|
-
--color-citron-700:
|
|
305
|
-
--color-citron-800:
|
|
306
|
-
--color-citron-900:
|
|
307
|
-
--color-citron-950:
|
|
305
|
+
--color-citron-50: #323518
|
|
306
|
+
--color-citron-100: #4d5229
|
|
307
|
+
--color-citron-200: #666c35
|
|
308
|
+
--color-citron-300: #848a43
|
|
309
|
+
--color-citron-400: #a3a852
|
|
310
|
+
--color-citron-500: #bbbe64
|
|
311
|
+
--color-citron-600: #c7d460
|
|
312
|
+
--color-citron-700: #d5e184
|
|
313
|
+
--color-citron-800: #e4ecaa
|
|
314
|
+
--color-citron-900: #f1f5cf
|
|
315
|
+
--color-citron-950: #f9faeb
|
|
308
316
|
/* Pine Color Scale - Dark mode variants */
|
|
309
|
-
--color-pine-50:
|
|
310
|
-
--color-pine-100:
|
|
311
|
-
--color-pine-200:
|
|
312
|
-
--color-pine-300:
|
|
313
|
-
--color-pine-400:
|
|
314
|
-
--color-pine-500:
|
|
315
|
-
--color-pine-600:
|
|
316
|
-
--color-pine-700:
|
|
317
|
-
--color-pine-800:
|
|
318
|
-
--color-pine-900:
|
|
319
|
-
--color-pine-950:
|
|
317
|
+
--color-pine-50: #02160f
|
|
318
|
+
--color-pine-100: #04231a
|
|
319
|
+
--color-pine-200: #063a2a
|
|
320
|
+
--color-pine-300: #084532
|
|
321
|
+
--color-pine-400: #0a513a
|
|
322
|
+
--color-pine-500: #0c5d43
|
|
323
|
+
--color-pine-600: #49ad91
|
|
324
|
+
--color-pine-700: #78c4ad
|
|
325
|
+
--color-pine-800: #a7d9c9
|
|
326
|
+
--color-pine-900: #d2ece4
|
|
327
|
+
--color-pine-950: #e9f6f2
|
|
320
328
|
/* Iris Color Scale - Dark mode variants */
|
|
321
|
-
--color-iris-50:
|
|
322
|
-
--color-iris-100:
|
|
323
|
-
--color-iris-200:
|
|
324
|
-
--color-iris-300:
|
|
325
|
-
--color-iris-400:
|
|
326
|
-
--color-iris-500:
|
|
327
|
-
--color-iris-600:
|
|
328
|
-
--color-iris-700:
|
|
329
|
-
--color-iris-800:
|
|
330
|
-
--color-iris-900:
|
|
331
|
-
--color-iris-950:
|
|
329
|
+
--color-iris-50: #1b1b37
|
|
330
|
+
--color-iris-100: #2a2a56
|
|
331
|
+
--color-iris-200: #38386f
|
|
332
|
+
--color-iris-300: #474788
|
|
333
|
+
--color-iris-400: #58589e
|
|
334
|
+
--color-iris-500: #6969b3
|
|
335
|
+
--color-iris-600: #a3a3d8
|
|
336
|
+
--color-iris-700: #bdbde6
|
|
337
|
+
--color-iris-800: #d6d6f0
|
|
338
|
+
--color-iris-900: #e9e9f7
|
|
339
|
+
--color-iris-950: #f4f4fa
|
|
332
340
|
/* Base Color Scale — semantic → physical mirror (1000 − step); 500 is fixed point */
|
|
333
341
|
--color-base-50: #09090b
|
|
334
342
|
--color-base-75: #101013
|
|
@@ -358,6 +366,11 @@
|
|
|
358
366
|
--color-card-hover: var(--color-base-300)
|
|
359
367
|
--color-card-active: var(--color-base-400)
|
|
360
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)
|
|
361
374
|
/* Overlay Colors */
|
|
362
375
|
--color-overlay: rgba(0, 0, 0, 0.7)
|
|
363
376
|
/* Input Colors */
|
|
@@ -372,32 +385,32 @@
|
|
|
372
385
|
/* Primary Colors - No dark mode overrides needed, brand colors are already inverted */
|
|
373
386
|
/* Secondary Colors - No dark mode overrides needed, base colors are already inverted */
|
|
374
387
|
/* Success Colors */
|
|
375
|
-
--color-success:
|
|
376
|
-
--color-success-weak:
|
|
377
|
-
--color-success-medium:
|
|
378
|
-
--color-success-strong:
|
|
388
|
+
--color-success: var(--color-pine-400)
|
|
389
|
+
--color-success-weak: var(--color-pine-500)
|
|
390
|
+
--color-success-medium: var(--color-pine-300)
|
|
391
|
+
--color-success-strong: var(--color-pine-200)
|
|
379
392
|
/* Warning Colors */
|
|
380
|
-
--color-warning:
|
|
381
|
-
--color-warning-weak:
|
|
382
|
-
--color-warning-medium:
|
|
383
|
-
--color-warning-strong:
|
|
393
|
+
--color-warning: #f59e0b
|
|
394
|
+
--color-warning-weak: #d97706
|
|
395
|
+
--color-warning-medium: #fbbf24
|
|
396
|
+
--color-warning-strong: #fcd34d
|
|
384
397
|
/* Error Colors */
|
|
385
|
-
--color-error:
|
|
386
|
-
--color-error-weak:
|
|
387
|
-
--color-error-medium:
|
|
388
|
-
--color-error-strong:
|
|
398
|
+
--color-error: #ef4444
|
|
399
|
+
--color-error-weak: #dc2626
|
|
400
|
+
--color-error-medium: #f87171
|
|
401
|
+
--color-error-strong: #fca5a5
|
|
389
402
|
/* Energetic Colors (Citron) */
|
|
390
|
-
--color-energetic:
|
|
391
|
-
--color-energetic-weak:
|
|
392
|
-
--color-energetic-medium:
|
|
393
|
-
--color-energetic-strong:
|
|
403
|
+
--color-energetic: var(--color-citron-400)
|
|
404
|
+
--color-energetic-weak: var(--color-citron-500)
|
|
405
|
+
--color-energetic-medium: var(--color-citron-300)
|
|
406
|
+
--color-energetic-strong: var(--color-citron-200)
|
|
394
407
|
/* Neutral Colors - No dark mode overrides needed, base colors are already inverted */
|
|
395
408
|
/* Info Colors */
|
|
396
|
-
--color-info:
|
|
397
|
-
--color-info-weak:
|
|
398
|
-
--color-info-active:
|
|
399
|
-
--color-info-medium:
|
|
400
|
-
--color-info-strong:
|
|
409
|
+
--color-info: var(--color-iris-500)
|
|
410
|
+
--color-info-weak: var(--color-iris-600)
|
|
411
|
+
--color-info-active: var(--color-iris-400)
|
|
412
|
+
--color-info-medium: var(--color-iris-400)
|
|
413
|
+
--color-info-strong: var(--color-iris-300)
|
|
401
414
|
/* Text alias */
|
|
402
415
|
--color-info-text: var(--color-info)
|
|
403
416
|
/* ========================================
|
|
@@ -409,12 +422,12 @@
|
|
|
409
422
|
--color-action-primary-text: var(--color-brand-50)
|
|
410
423
|
/* Secondary Actions - No dark mode overrides needed, base colors are already inverted */
|
|
411
424
|
/* Danger Actions */
|
|
412
|
-
--color-action-danger:
|
|
413
|
-
--color-action-danger-hover:
|
|
414
|
-
--color-action-danger-active:
|
|
415
|
-
--color-action-danger-disabled:
|
|
416
|
-
--color-action-danger-subtle:
|
|
417
|
-
--color-action-danger-subtle-hover:
|
|
425
|
+
--color-action-danger: #ef4444
|
|
426
|
+
--color-action-danger-hover: #dc2626
|
|
427
|
+
--color-action-danger-active: #b91c1c
|
|
428
|
+
--color-action-danger-disabled: #b91c1c
|
|
429
|
+
--color-action-danger-subtle: #450a0a
|
|
430
|
+
--color-action-danger-subtle-hover: #7f1d1d
|
|
418
431
|
/* Shadow Colors */
|
|
419
432
|
--shadow-opacity: 0.3
|
|
420
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))
|
|
@@ -23,54 +23,54 @@
|
|
|
23
23
|
--zabi-base-900: #18181b
|
|
24
24
|
--zabi-base-925: #101013
|
|
25
25
|
--zabi-base-950: #09090b
|
|
26
|
-
/* Brand Color Scale - Dark mode variants */
|
|
27
|
-
--color-brand-50:
|
|
28
|
-
--color-brand-100:
|
|
29
|
-
--color-brand-200:
|
|
30
|
-
--color-brand-300:
|
|
31
|
-
--color-brand-400:
|
|
32
|
-
--color-brand-500:
|
|
33
|
-
--color-brand-600:
|
|
34
|
-
--color-brand-700:
|
|
35
|
-
--color-brand-800:
|
|
36
|
-
--color-brand-900:
|
|
37
|
-
--color-brand-950:
|
|
26
|
+
/* Brand Color Scale - Dark mode variants (mirrored from light physical hex; no theme() forward refs) */
|
|
27
|
+
--color-brand-50: #1f2866
|
|
28
|
+
--color-brand-100: #2f3c99
|
|
29
|
+
--color-brand-200: #3f4fc0
|
|
30
|
+
--color-brand-300: #5366e2
|
|
31
|
+
--color-brand-400: #6e84fa
|
|
32
|
+
--color-brand-500: #8fa8ff
|
|
33
|
+
--color-brand-600: #abc4ff
|
|
34
|
+
--color-brand-700: #ccdbfd
|
|
35
|
+
--color-brand-800: #dfe7fb
|
|
36
|
+
--color-brand-900: #edf2fb
|
|
37
|
+
--color-brand-950: #f7faff
|
|
38
38
|
/* Citron Color Scale - Dark mode variants */
|
|
39
|
-
--color-citron-50:
|
|
40
|
-
--color-citron-100:
|
|
41
|
-
--color-citron-200:
|
|
42
|
-
--color-citron-300:
|
|
43
|
-
--color-citron-400:
|
|
44
|
-
--color-citron-500:
|
|
45
|
-
--color-citron-600:
|
|
46
|
-
--color-citron-700:
|
|
47
|
-
--color-citron-800:
|
|
48
|
-
--color-citron-900:
|
|
49
|
-
--color-citron-950:
|
|
39
|
+
--color-citron-50: #323518
|
|
40
|
+
--color-citron-100: #4d5229
|
|
41
|
+
--color-citron-200: #666c35
|
|
42
|
+
--color-citron-300: #848a43
|
|
43
|
+
--color-citron-400: #a3a852
|
|
44
|
+
--color-citron-500: #bbbe64
|
|
45
|
+
--color-citron-600: #c7d460
|
|
46
|
+
--color-citron-700: #d5e184
|
|
47
|
+
--color-citron-800: #e4ecaa
|
|
48
|
+
--color-citron-900: #f1f5cf
|
|
49
|
+
--color-citron-950: #f9faeb
|
|
50
50
|
/* Pine Color Scale - Dark mode variants */
|
|
51
|
-
--color-pine-50:
|
|
52
|
-
--color-pine-100:
|
|
53
|
-
--color-pine-200:
|
|
54
|
-
--color-pine-300:
|
|
55
|
-
--color-pine-400:
|
|
56
|
-
--color-pine-500:
|
|
57
|
-
--color-pine-600:
|
|
58
|
-
--color-pine-700:
|
|
59
|
-
--color-pine-800:
|
|
60
|
-
--color-pine-900:
|
|
61
|
-
--color-pine-950:
|
|
51
|
+
--color-pine-50: #02160f
|
|
52
|
+
--color-pine-100: #04231a
|
|
53
|
+
--color-pine-200: #063a2a
|
|
54
|
+
--color-pine-300: #084532
|
|
55
|
+
--color-pine-400: #0a513a
|
|
56
|
+
--color-pine-500: #0c5d43
|
|
57
|
+
--color-pine-600: #49ad91
|
|
58
|
+
--color-pine-700: #78c4ad
|
|
59
|
+
--color-pine-800: #a7d9c9
|
|
60
|
+
--color-pine-900: #d2ece4
|
|
61
|
+
--color-pine-950: #e9f6f2
|
|
62
62
|
/* Iris Color Scale - Dark mode variants */
|
|
63
|
-
--color-iris-50:
|
|
64
|
-
--color-iris-100:
|
|
65
|
-
--color-iris-200:
|
|
66
|
-
--color-iris-300:
|
|
67
|
-
--color-iris-400:
|
|
68
|
-
--color-iris-500:
|
|
69
|
-
--color-iris-600:
|
|
70
|
-
--color-iris-700:
|
|
71
|
-
--color-iris-800:
|
|
72
|
-
--color-iris-900:
|
|
73
|
-
--color-iris-950:
|
|
63
|
+
--color-iris-50: #1b1b37
|
|
64
|
+
--color-iris-100: #2a2a56
|
|
65
|
+
--color-iris-200: #38386f
|
|
66
|
+
--color-iris-300: #474788
|
|
67
|
+
--color-iris-400: #58589e
|
|
68
|
+
--color-iris-500: #6969b3
|
|
69
|
+
--color-iris-600: #a3a3d8
|
|
70
|
+
--color-iris-700: #bdbde6
|
|
71
|
+
--color-iris-800: #d6d6f0
|
|
72
|
+
--color-iris-900: #e9e9f7
|
|
73
|
+
--color-iris-950: #f4f4fa
|
|
74
74
|
/* Base Color Scale — semantic → physical mirror (1000 − step); 500 is fixed point */
|
|
75
75
|
--color-base-50: #09090b
|
|
76
76
|
--color-base-75: #101013
|
|
@@ -100,6 +100,11 @@
|
|
|
100
100
|
--color-card-hover: var(--color-base-300)
|
|
101
101
|
--color-card-active: var(--color-base-400)
|
|
102
102
|
--color-card-elevated: var(--color-base-200)
|
|
103
|
+
/* Surfaces — layered UI (each step is lighter than the previous to read as "elevated") */
|
|
104
|
+
--color-surface-1: var(--color-base-250)
|
|
105
|
+
--color-surface-2: var(--color-base-300)
|
|
106
|
+
--color-surface-3: var(--color-base-350)
|
|
107
|
+
--color-surface-4: var(--color-base-400)
|
|
103
108
|
/* Overlay Colors */
|
|
104
109
|
--color-overlay: rgba(0, 0, 0, 0.7)
|
|
105
110
|
/* Input Colors */
|
|
@@ -114,32 +119,32 @@
|
|
|
114
119
|
/* Primary Colors - No dark mode overrides needed, brand colors are already inverted */
|
|
115
120
|
/* Secondary Colors - No dark mode overrides needed, base colors are already inverted */
|
|
116
121
|
/* Success Colors */
|
|
117
|
-
--color-success:
|
|
118
|
-
--color-success-weak:
|
|
119
|
-
--color-success-medium:
|
|
120
|
-
--color-success-strong:
|
|
122
|
+
--color-success: var(--color-pine-400)
|
|
123
|
+
--color-success-weak: var(--color-pine-500)
|
|
124
|
+
--color-success-medium: var(--color-pine-300)
|
|
125
|
+
--color-success-strong: var(--color-pine-200)
|
|
121
126
|
/* Warning Colors */
|
|
122
|
-
--color-warning:
|
|
123
|
-
--color-warning-weak:
|
|
124
|
-
--color-warning-medium:
|
|
125
|
-
--color-warning-strong:
|
|
127
|
+
--color-warning: #f59e0b
|
|
128
|
+
--color-warning-weak: #d97706
|
|
129
|
+
--color-warning-medium: #fbbf24
|
|
130
|
+
--color-warning-strong: #fcd34d
|
|
126
131
|
/* Error Colors */
|
|
127
|
-
--color-error:
|
|
128
|
-
--color-error-weak:
|
|
129
|
-
--color-error-medium:
|
|
130
|
-
--color-error-strong:
|
|
132
|
+
--color-error: #ef4444
|
|
133
|
+
--color-error-weak: #dc2626
|
|
134
|
+
--color-error-medium: #f87171
|
|
135
|
+
--color-error-strong: #fca5a5
|
|
131
136
|
/* Energetic Colors (Citron) */
|
|
132
|
-
--color-energetic:
|
|
133
|
-
--color-energetic-weak:
|
|
134
|
-
--color-energetic-medium:
|
|
135
|
-
--color-energetic-strong:
|
|
137
|
+
--color-energetic: var(--color-citron-400)
|
|
138
|
+
--color-energetic-weak: var(--color-citron-500)
|
|
139
|
+
--color-energetic-medium: var(--color-citron-300)
|
|
140
|
+
--color-energetic-strong: var(--color-citron-200)
|
|
136
141
|
/* Neutral Colors - No dark mode overrides needed, base colors are already inverted */
|
|
137
142
|
/* Info Colors */
|
|
138
|
-
--color-info:
|
|
139
|
-
--color-info-weak:
|
|
140
|
-
--color-info-active:
|
|
141
|
-
--color-info-medium:
|
|
142
|
-
--color-info-strong:
|
|
143
|
+
--color-info: var(--color-iris-500)
|
|
144
|
+
--color-info-weak: var(--color-iris-600)
|
|
145
|
+
--color-info-active: var(--color-iris-400)
|
|
146
|
+
--color-info-medium: var(--color-iris-400)
|
|
147
|
+
--color-info-strong: var(--color-iris-300)
|
|
143
148
|
/* Text alias */
|
|
144
149
|
--color-info-text: var(--color-info)
|
|
145
150
|
/* ========================================
|
|
@@ -151,12 +156,12 @@
|
|
|
151
156
|
--color-action-primary-text: var(--color-brand-50)
|
|
152
157
|
/* Secondary Actions - No dark mode overrides needed, base colors are already inverted */
|
|
153
158
|
/* Danger Actions */
|
|
154
|
-
--color-action-danger:
|
|
155
|
-
--color-action-danger-hover:
|
|
156
|
-
--color-action-danger-active:
|
|
157
|
-
--color-action-danger-disabled:
|
|
158
|
-
--color-action-danger-subtle:
|
|
159
|
-
--color-action-danger-subtle-hover:
|
|
159
|
+
--color-action-danger: #ef4444
|
|
160
|
+
--color-action-danger-hover: #dc2626
|
|
161
|
+
--color-action-danger-active: #b91c1c
|
|
162
|
+
--color-action-danger-disabled: #b91c1c
|
|
163
|
+
--color-action-danger-subtle: #450a0a
|
|
164
|
+
--color-action-danger-subtle-hover: #7f1d1d
|
|
160
165
|
/* Shadow Colors */
|
|
161
166
|
--shadow-opacity: 0.3
|
|
162
167
|
--shadow-sm: 0 1px 3px 0 rgb(var(--shadow-color) / var(--shadow-opacity)), 0 1px 2px -1px rgb(var(--shadow-color) / var(--shadow-opacity))
|