@orion-ds/core 1.2.3 → 3.2.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.
- package/README.md +56 -6
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/theme.css +355 -57
- package/dist/tokens/brands.d.ts.map +1 -1
- package/dist/tokens/brands.js +1 -6
- package/dist/tokens/brands.js.map +1 -1
- package/dist/tokens/generated.css +57 -4
- package/dist/tokens/primitives.d.ts.map +1 -1
- package/dist/tokens/primitives.js +29 -0
- package/dist/tokens/primitives.js.map +1 -1
- package/dist/tokens/themes.d.ts.map +1 -1
- package/dist/tokens/themes.js +24 -6
- package/dist/tokens/themes.js.map +1 -1
- package/dist/tokens/types.d.ts +21 -7
- package/dist/tokens/types.d.ts.map +1 -1
- package/package.json +4 -3
package/dist/theme.css
CHANGED
|
@@ -11,7 +11,255 @@
|
|
|
11
11
|
GENERATED TOKENS — Auto-generated from JSON
|
|
12
12
|
Includes: primitives, semantics, brand overrides
|
|
13
13
|
═══════════════════════════════════════════════════════════════════════════ */
|
|
14
|
-
|
|
14
|
+
/* Inlined: tokens/generated.css */
|
|
15
|
+
/**
|
|
16
|
+
* ═══════════════════════════════════════════════════════════════════════════
|
|
17
|
+
* ORION DESIGN SYSTEM — Generated Tokens
|
|
18
|
+
* DO NOT EDIT MANUALLY - Generated from tokens/*.json
|
|
19
|
+
* Run: node scripts/build-tokens.js
|
|
20
|
+
* ═══════════════════════════════════════════════════════════════════════════
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/* ─── Primitives (from primary.json) ─── */
|
|
24
|
+
:root {
|
|
25
|
+
/* Colors */
|
|
26
|
+
/* Brand: Orion (default) */
|
|
27
|
+
--color-brand-50: #e8f0ff;
|
|
28
|
+
--color-brand-100: #c7daff;
|
|
29
|
+
--color-brand-200: #a3c2ff;
|
|
30
|
+
--color-brand-300: #7ea9ff;
|
|
31
|
+
--color-brand-400: #5990ff;
|
|
32
|
+
--color-brand-500: #1B5BFF;
|
|
33
|
+
--color-brand-600: #1850e6;
|
|
34
|
+
--color-brand-700: #1544cc;
|
|
35
|
+
--color-brand-800: #1139b3;
|
|
36
|
+
--color-brand-900: #0d2d99;
|
|
37
|
+
--color-brand-950: #071a5c;
|
|
38
|
+
|
|
39
|
+
/* Neutral */
|
|
40
|
+
--color-neutral-0: #ffffff;
|
|
41
|
+
--color-neutral-50: #f8fafc;
|
|
42
|
+
--color-neutral-100: #f1f5f9;
|
|
43
|
+
--color-neutral-200: #e2e8f0;
|
|
44
|
+
--color-neutral-300: #cbd5e1;
|
|
45
|
+
--color-neutral-400: #94a3b8;
|
|
46
|
+
--color-neutral-500: #64748b;
|
|
47
|
+
--color-neutral-600: #475569;
|
|
48
|
+
--color-neutral-700: #334155;
|
|
49
|
+
--color-neutral-800: #1e293b;
|
|
50
|
+
--color-neutral-900: #0f172a;
|
|
51
|
+
--color-neutral-950: #020617;
|
|
52
|
+
--color-neutral-1000: #000000;
|
|
53
|
+
|
|
54
|
+
/* Status */
|
|
55
|
+
--color-error-500: #ef4444;
|
|
56
|
+
--color-success-500: #22c55e;
|
|
57
|
+
--color-warning-500: #eab308;
|
|
58
|
+
|
|
59
|
+
/* Typography */
|
|
60
|
+
--font-primary: Libre Baskerville, system-ui, sans-serif;
|
|
61
|
+
--font-secondary: Inter, system-ui, sans-serif;
|
|
62
|
+
--font-mono: JetBrains Mono, monospace;
|
|
63
|
+
|
|
64
|
+
/* Font Sizes */
|
|
65
|
+
--font-size-10: 10px;
|
|
66
|
+
--font-size-11: 11px;
|
|
67
|
+
--font-size-12: 12px;
|
|
68
|
+
--font-size-13: 13px;
|
|
69
|
+
--font-size-14: 14px;
|
|
70
|
+
--font-size-16: 16px;
|
|
71
|
+
--font-size-18: 18px;
|
|
72
|
+
--font-size-20: 20px;
|
|
73
|
+
--font-size-24: 24px;
|
|
74
|
+
--font-size-32: 32px;
|
|
75
|
+
--font-size-48: 48px;
|
|
76
|
+
--font-size-64: 64px;
|
|
77
|
+
--font-size-80: 80px;
|
|
78
|
+
--font-size-96: 96px;
|
|
79
|
+
|
|
80
|
+
/* Font Weights */
|
|
81
|
+
--font-weight-regular: 400;
|
|
82
|
+
--font-weight-medium: 500;
|
|
83
|
+
--font-weight-bold: 700;
|
|
84
|
+
|
|
85
|
+
/* Spacing (base: 4px) */
|
|
86
|
+
--spacing-0: 0px;
|
|
87
|
+
--spacing-1: 4px;
|
|
88
|
+
--spacing-2: 8px;
|
|
89
|
+
--spacing-3: 12px;
|
|
90
|
+
--spacing-4: 16px;
|
|
91
|
+
--spacing-5: 20px;
|
|
92
|
+
--spacing-6: 24px;
|
|
93
|
+
--spacing-7: 28px;
|
|
94
|
+
--spacing-8: 32px;
|
|
95
|
+
--spacing-9: 36px;
|
|
96
|
+
--spacing-10: 40px;
|
|
97
|
+
--spacing-11: 44px;
|
|
98
|
+
--spacing-12: 48px;
|
|
99
|
+
--spacing-16: 64px;
|
|
100
|
+
--spacing-20: 80px;
|
|
101
|
+
--spacing-24: 96px;
|
|
102
|
+
--spacing-32: 128px;
|
|
103
|
+
--spacing-px: 1px;
|
|
104
|
+
--spacing-05: 2px;
|
|
105
|
+
|
|
106
|
+
/* Border Radius */
|
|
107
|
+
--radius-0: 0px;
|
|
108
|
+
--radius-xs: 4px;
|
|
109
|
+
--radius-sm: 8px;
|
|
110
|
+
--radius-md: 12px;
|
|
111
|
+
--radius-lg: 16px;
|
|
112
|
+
--radius-lg-2: 20px;
|
|
113
|
+
--radius-xl: 24px;
|
|
114
|
+
--radius-2xl: 32px;
|
|
115
|
+
--radius-3xl: 36px;
|
|
116
|
+
--radius-full: 9999px;
|
|
117
|
+
|
|
118
|
+
/* Blur */
|
|
119
|
+
--blur-sm: 4px;
|
|
120
|
+
--blur-md: 8px;
|
|
121
|
+
--blur-lg: 12px;
|
|
122
|
+
--blur-xl: 24px;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/* ─── Light Theme Semantics ─── */
|
|
126
|
+
[data-theme="light"] {
|
|
127
|
+
/* Surfaces */
|
|
128
|
+
--surface-base: var(--color-neutral-0);
|
|
129
|
+
--surface-subtle: var(--color-neutral-50);
|
|
130
|
+
--surface-layer: var(--color-neutral-100);
|
|
131
|
+
--surface-primary: var(--color-neutral-100);
|
|
132
|
+
--surface-secondary: var(--color-neutral-50);
|
|
133
|
+
--surface-glass: color-mix(in srgb, {color.neutral.0} 70%, transparent);
|
|
134
|
+
--surface-sunken: color-mix(in srgb, {color.neutral.0} 40%, transparent);
|
|
135
|
+
--surface-overlay: color-mix(in srgb, {color.neutral.1000} 50%, transparent);
|
|
136
|
+
|
|
137
|
+
/* Text */
|
|
138
|
+
--text-primary: var(--color-neutral-900);
|
|
139
|
+
--text-secondary: var(--color-neutral-500);
|
|
140
|
+
--text-tertiary: var(--color-neutral-400);
|
|
141
|
+
--text-inverse: var(--color-neutral-0);
|
|
142
|
+
--text-brand: var(--color-brand-500);
|
|
143
|
+
--text-on-brand: [object Object];
|
|
144
|
+
|
|
145
|
+
/* Borders */
|
|
146
|
+
--border-subtle: var(--color-neutral-200);
|
|
147
|
+
--border-strong: var(--color-neutral-300);
|
|
148
|
+
--border-interactive: var(--color-brand-500);
|
|
149
|
+
|
|
150
|
+
/* Interactive */
|
|
151
|
+
--interactive-primary: var(--color-brand-500);
|
|
152
|
+
--interactive-primary-hover: var(--color-brand-700);
|
|
153
|
+
--interactive-primary-text: var(--color-neutral-0);
|
|
154
|
+
--interactive-secondary: var(--color-neutral-100);
|
|
155
|
+
--interactive-secondary-hover: var(--color-neutral-200);
|
|
156
|
+
--interactive-secondary-text: var(--color-neutral-900);
|
|
157
|
+
|
|
158
|
+
/* Status */
|
|
159
|
+
--status-error: var(--color-error-500);
|
|
160
|
+
--status-success: var(--color-success-500);
|
|
161
|
+
--status-warning: var(--color-warning-500);
|
|
162
|
+
--status-info: var(--color-info-500);
|
|
163
|
+
|
|
164
|
+
/* Gradient */
|
|
165
|
+
--gradient-start: var(--color-brand-400);
|
|
166
|
+
--gradient-end: var(--color-brand-600);
|
|
167
|
+
|
|
168
|
+
/* Chart Palette */
|
|
169
|
+
--chart-1: var(--color-brand-500);
|
|
170
|
+
--chart-2: var(--color-brand-300);
|
|
171
|
+
--chart-3: var(--color-brand-700);
|
|
172
|
+
--chart-4: var(--color-success-500);
|
|
173
|
+
--chart-5: var(--color-warning-500);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
/* ─── Dark Theme Semantics ─── */
|
|
177
|
+
[data-theme="dark"] {
|
|
178
|
+
/* Surfaces */
|
|
179
|
+
--surface-base: var(--color-neutral-900);
|
|
180
|
+
--surface-subtle: var(--color-neutral-950);
|
|
181
|
+
--surface-layer: var(--color-neutral-900);
|
|
182
|
+
--surface-primary: var(--color-neutral-900);
|
|
183
|
+
--surface-secondary: var(--color-neutral-900);
|
|
184
|
+
--surface-glass: color-mix(in srgb, {color.neutral.950} 60%, transparent);
|
|
185
|
+
--surface-sunken: color-mix(in srgb, {color.neutral.950} 40%, transparent);
|
|
186
|
+
--surface-overlay: color-mix(in srgb, {color.neutral.1000} 70%, transparent);
|
|
187
|
+
|
|
188
|
+
/* Text */
|
|
189
|
+
--text-primary: var(--color-neutral-50);
|
|
190
|
+
--text-secondary: var(--color-neutral-400);
|
|
191
|
+
--text-tertiary: var(--color-neutral-600);
|
|
192
|
+
--text-inverse: var(--color-neutral-950);
|
|
193
|
+
--text-brand: var(--color-brand-400);
|
|
194
|
+
--text-on-brand: [object Object];
|
|
195
|
+
|
|
196
|
+
/* Borders */
|
|
197
|
+
--border-subtle: var(--color-neutral-800);
|
|
198
|
+
--border-strong: var(--color-neutral-700);
|
|
199
|
+
--border-interactive: var(--color-brand-500);
|
|
200
|
+
|
|
201
|
+
/* Interactive */
|
|
202
|
+
--interactive-primary: var(--color-brand-500);
|
|
203
|
+
--interactive-primary-hover: var(--color-brand-400);
|
|
204
|
+
--interactive-primary-text: var(--color-neutral-0);
|
|
205
|
+
--interactive-secondary: var(--color-neutral-800);
|
|
206
|
+
--interactive-secondary-hover: var(--color-neutral-700);
|
|
207
|
+
--interactive-secondary-text: var(--color-neutral-50);
|
|
208
|
+
|
|
209
|
+
/* Status */
|
|
210
|
+
--status-error: var(--color-error-500);
|
|
211
|
+
--status-success: var(--color-success-500);
|
|
212
|
+
--status-warning: var(--color-warning-500);
|
|
213
|
+
--status-info: var(--color-info-500);
|
|
214
|
+
|
|
215
|
+
/* Gradient */
|
|
216
|
+
--gradient-start: var(--color-brand-400);
|
|
217
|
+
--gradient-end: var(--color-brand-600);
|
|
218
|
+
|
|
219
|
+
/* Chart Palette */
|
|
220
|
+
--chart-1: var(--color-brand-400);
|
|
221
|
+
--chart-2: var(--color-brand-200);
|
|
222
|
+
--chart-3: var(--color-brand-600);
|
|
223
|
+
--chart-4: var(--color-success-500);
|
|
224
|
+
--chart-5: var(--color-warning-500);
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/* ─── Radius Scale (Button → Container Derivation) ─── */
|
|
228
|
+
:root {
|
|
229
|
+
/* Derived: button="full" (9999px) → container="3xl" (36px) */
|
|
230
|
+
--radius-button: var(--radius-full);
|
|
231
|
+
--radius-container: var(--radius-3xl);
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
/* ─── Deepblue Radius ─── */
|
|
235
|
+
[data-brand="deepblue"] {
|
|
236
|
+
/* Derived: button="md" (12px) → container="xl" (24px) */
|
|
237
|
+
--radius-button: var(--radius-md);
|
|
238
|
+
--radius-container: var(--radius-xl);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
/* ─── Red Radius ─── */
|
|
242
|
+
[data-brand="red"] {
|
|
243
|
+
/* Derived: button="full" (9999px) → container="3xl" (36px) */
|
|
244
|
+
--radius-button: var(--radius-full);
|
|
245
|
+
--radius-container: var(--radius-3xl);
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
/* ─── Orange Radius ─── */
|
|
249
|
+
[data-brand="orange"] {
|
|
250
|
+
/* Derived: button="full" (9999px) → container="3xl" (36px) */
|
|
251
|
+
--radius-button: var(--radius-full);
|
|
252
|
+
--radius-container: var(--radius-3xl);
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
/* ─── Lemon Radius ─── */
|
|
256
|
+
[data-brand="lemon"] {
|
|
257
|
+
/* Derived: button="full" (9999px) → container="3xl" (36px) */
|
|
258
|
+
--radius-button: var(--radius-full);
|
|
259
|
+
--radius-container: var(--radius-3xl);
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
|
|
15
263
|
|
|
16
264
|
/* ═══════════════════════════════════════════════════════════════════════════
|
|
17
265
|
PRIMITIVES — Raw values from primary.json
|
|
@@ -133,6 +381,10 @@
|
|
|
133
381
|
--spacing-24: 6rem;
|
|
134
382
|
--spacing-32: 8rem;
|
|
135
383
|
|
|
384
|
+
/* ─── Card Padding (Brand-Aware) ─── */
|
|
385
|
+
--card-padding: var(--spacing-4); /* 16px default (rounded brands) */
|
|
386
|
+
--card-padding-gap: var(--spacing-2); /* 8px gap between Header and Body */
|
|
387
|
+
|
|
136
388
|
/* ─── Component Sizes ─── */
|
|
137
389
|
/* FAB sizes */
|
|
138
390
|
--size-fab-sm: 2.5rem; /* 40px */
|
|
@@ -143,6 +395,7 @@
|
|
|
143
395
|
--size-icon-sm: 1rem; /* 16px */
|
|
144
396
|
--size-icon-md: 1.25rem; /* 20px */
|
|
145
397
|
--size-icon-lg: 1.5rem; /* 24px */
|
|
398
|
+
--size-icon-xl: 2rem; /* 32px */
|
|
146
399
|
|
|
147
400
|
/* Modal max-widths */
|
|
148
401
|
--size-modal-sm: 25rem; /* 400px */
|
|
@@ -151,11 +404,16 @@
|
|
|
151
404
|
--size-modal-xl: 56.25rem; /* 900px */
|
|
152
405
|
|
|
153
406
|
/* Avatar sizes */
|
|
407
|
+
--size-avatar-xs: 1.25rem; /* 20px */
|
|
154
408
|
--size-avatar-sm: 2rem; /* 32px */
|
|
155
409
|
--size-avatar-md: 2.5rem; /* 40px */
|
|
156
410
|
--size-avatar-lg: 3rem; /* 48px */
|
|
157
411
|
--size-avatar-xl: 4rem; /* 64px */
|
|
158
412
|
|
|
413
|
+
/* Border widths */
|
|
414
|
+
--border-width: 1px;
|
|
415
|
+
--border-width-bold: 2px;
|
|
416
|
+
|
|
159
417
|
/* Badge dot size */
|
|
160
418
|
--size-badge-dot: 0.375rem; /* 6px */
|
|
161
419
|
|
|
@@ -193,18 +451,11 @@
|
|
|
193
451
|
--z-maximum: 100;
|
|
194
452
|
|
|
195
453
|
/* ─── Radius (The Geometry Contract) ─── */
|
|
196
|
-
--radius-0
|
|
197
|
-
--radius-
|
|
198
|
-
--radius-md: 0.75rem;
|
|
199
|
-
--radius-lg: 1rem;
|
|
200
|
-
--radius-xl: 1.5rem;
|
|
201
|
-
--radius-2xl: 2rem;
|
|
202
|
-
--radius-full: 9999px;
|
|
454
|
+
/* Primitives (--radius-0 through --radius-full) are defined in generated.css from primary.json */
|
|
455
|
+
/* --radius-button and --radius-container are derived via radiusScale in generated.css */
|
|
203
456
|
|
|
204
457
|
/* Master Control: Change this to transform the entire system */
|
|
205
458
|
--radius-control: var(--radius-md);
|
|
206
|
-
--radius-container: var(--radius-lg);
|
|
207
|
-
--radius-button: var(--radius-full);
|
|
208
459
|
|
|
209
460
|
/* ─── Effects (Atmospheric Depth) ─── */
|
|
210
461
|
--blur-sm: 4px;
|
|
@@ -230,6 +481,24 @@
|
|
|
230
481
|
--size-card-carousel-height: 530px;
|
|
231
482
|
--size-calendar-time-col: 80px;
|
|
232
483
|
|
|
484
|
+
/* Chat component sizes */
|
|
485
|
+
--chat-max-width: 50rem; /* 800px */
|
|
486
|
+
--chat-bubble-radius: 1.25rem; /* 20px - rounded message bubbles */
|
|
487
|
+
--chat-textarea-min-height: 1.5rem; /* 24px */
|
|
488
|
+
--chat-textarea-max-height: 12.5rem; /* 200px */
|
|
489
|
+
--chat-image-max-width: 18.75rem; /* 300px */
|
|
490
|
+
--chat-image-max-height: 12.5rem; /* 200px */
|
|
491
|
+
--chat-image-max-width-mobile: 12.5rem; /* 200px */
|
|
492
|
+
--chat-image-max-height-mobile: 9.375rem; /* 150px */
|
|
493
|
+
--chat-typing-dot-size: 0.625rem; /* 10px */
|
|
494
|
+
|
|
495
|
+
/* Typography extension */
|
|
496
|
+
--letter-spacing-wide: 0.05em;
|
|
497
|
+
|
|
498
|
+
/* Animation extension - spring easing */
|
|
499
|
+
--transition-spring: 300ms cubic-bezier(0.16, 1, 0.3, 1);
|
|
500
|
+
--easing-spring: cubic-bezier(0.16, 1, 0.3, 1);
|
|
501
|
+
|
|
233
502
|
--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
|
|
234
503
|
--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -2px rgba(0, 0, 0, 0.08);
|
|
235
504
|
--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -4px rgba(0, 0, 0, 0.08);
|
|
@@ -344,6 +613,13 @@
|
|
|
344
613
|
--gradient-start: var(--color-brand-400);
|
|
345
614
|
--gradient-end: var(--color-brand-600);
|
|
346
615
|
|
|
616
|
+
/* ─── Chart Palette ─── */
|
|
617
|
+
--chart-1: var(--color-brand-500);
|
|
618
|
+
--chart-2: var(--color-brand-300);
|
|
619
|
+
--chart-3: var(--color-brand-700);
|
|
620
|
+
--chart-4: var(--color-success-500);
|
|
621
|
+
--chart-5: var(--color-warning-500);
|
|
622
|
+
|
|
347
623
|
/* ─── Switch Component ─── */
|
|
348
624
|
--switch-thumb-bg: var(--color-neutral-0);
|
|
349
625
|
/* Always white for consistent thumb appearance across themes */
|
|
@@ -454,6 +730,13 @@
|
|
|
454
730
|
--gradient-start: var(--color-brand-400);
|
|
455
731
|
--gradient-end: var(--color-brand-600);
|
|
456
732
|
|
|
733
|
+
/* ─── Chart Palette ─── */
|
|
734
|
+
--chart-1: var(--color-brand-400);
|
|
735
|
+
--chart-2: var(--color-brand-200);
|
|
736
|
+
--chart-3: var(--color-brand-600);
|
|
737
|
+
--chart-4: var(--color-success-500);
|
|
738
|
+
--chart-5: var(--color-warning-500);
|
|
739
|
+
|
|
457
740
|
/* ─── Switch Component ─── */
|
|
458
741
|
--switch-thumb-bg: var(--color-neutral-0);
|
|
459
742
|
/* Always white for consistent thumb appearance across themes */
|
|
@@ -494,9 +777,6 @@
|
|
|
494
777
|
|
|
495
778
|
/* Geometry: Pill Buttons (Full Radius) */
|
|
496
779
|
--radius-control: var(--radius-lg);
|
|
497
|
-
--radius-container: 24px;
|
|
498
|
-
/* Explicitly match radius-control if needed, but root default is already full */
|
|
499
|
-
--radius-button: 9999px;
|
|
500
780
|
|
|
501
781
|
/* Override Neutrals to Pure Scale */
|
|
502
782
|
--color-neutral-0: var(--color-neutral-pure-0);
|
|
@@ -533,8 +813,8 @@
|
|
|
533
813
|
--border-interactive: var(--color-brand-800);
|
|
534
814
|
|
|
535
815
|
/* ─── Glass Effect: Neutral Gray ─── */
|
|
536
|
-
--surface-glass:
|
|
537
|
-
--surface-sunken:
|
|
816
|
+
--surface-glass: color-mix(in srgb, var(--color-neutral-100) 70%, transparent);
|
|
817
|
+
--surface-sunken: color-mix(in srgb, var(--color-neutral-50) 40%, transparent);
|
|
538
818
|
|
|
539
819
|
/* ─── Hero Gradients ─── */
|
|
540
820
|
--hero-gradient-1: var(--color-brand-900);
|
|
@@ -542,7 +822,7 @@
|
|
|
542
822
|
|
|
543
823
|
/* ─── Feature Gradients ─── */
|
|
544
824
|
--surface-brand-gradient: linear-gradient(135deg, var(--color-brand-soft) 0%, transparent 100%);
|
|
545
|
-
--status-warning-bg:
|
|
825
|
+
--status-warning-bg: color-mix(in srgb, var(--color-warning-500) 10%, transparent);
|
|
546
826
|
}
|
|
547
827
|
|
|
548
828
|
/* ─── Red Dark Mode Semantics ─── */
|
|
@@ -564,8 +844,8 @@
|
|
|
564
844
|
--border-interactive: var(--color-brand-100);
|
|
565
845
|
|
|
566
846
|
/* ─── Glass Effect: Neutral Gray ─── */
|
|
567
|
-
--surface-glass:
|
|
568
|
-
--surface-sunken:
|
|
847
|
+
--surface-glass: color-mix(in srgb, var(--color-neutral-900) 60%, transparent);
|
|
848
|
+
--surface-sunken: color-mix(in srgb, var(--color-neutral-950) 40%, transparent);
|
|
569
849
|
|
|
570
850
|
/* ─── Hero Gradients ─── */
|
|
571
851
|
--hero-gradient-1: var(--color-brand-900);
|
|
@@ -573,12 +853,12 @@
|
|
|
573
853
|
|
|
574
854
|
/* ─── Feature Gradients ─── */
|
|
575
855
|
--surface-brand-gradient: linear-gradient(135deg, var(--color-brand-soft) 0%, transparent 100%);
|
|
576
|
-
--status-warning-bg:
|
|
856
|
+
--status-warning-bg: color-mix(in srgb, var(--color-warning-500) 15%, transparent);
|
|
577
857
|
}
|
|
578
858
|
|
|
579
859
|
/* ─── UVM Component Overrides ─── */
|
|
580
860
|
[data-brand="red"] .badge {
|
|
581
|
-
border-radius:
|
|
861
|
+
border-radius: var(--radius-full);
|
|
582
862
|
}
|
|
583
863
|
|
|
584
864
|
[data-brand="red"] .badge-primary {
|
|
@@ -586,6 +866,12 @@
|
|
|
586
866
|
color: var(--interactive-primary-text);
|
|
587
867
|
}
|
|
588
868
|
|
|
869
|
+
/* ─── Red Brand Card Padding (Pill Button Visual Elegance) ─── */
|
|
870
|
+
[data-brand="red"] {
|
|
871
|
+
--card-padding: var(--spacing-6); /* 24px - generous padding for pill aesthetic */
|
|
872
|
+
--card-padding-gap: var(--spacing-3); /* 12px - scaled gap */
|
|
873
|
+
}
|
|
874
|
+
|
|
589
875
|
|
|
590
876
|
/* ═══════════════════════════════════════════════════════════════════════════
|
|
591
877
|
DEEPBLUE BRAND — Deep Blue Theme Override
|
|
@@ -611,8 +897,6 @@
|
|
|
611
897
|
--color-brand-900: #003b69;
|
|
612
898
|
--color-brand-950: #002540;
|
|
613
899
|
|
|
614
|
-
/* Override button radius to match control radius (rounded 12px) */
|
|
615
|
-
--radius-button: 12px;
|
|
616
900
|
}
|
|
617
901
|
|
|
618
902
|
/* ─── Deepblue Light Mode Semantics ─── */
|
|
@@ -623,7 +907,7 @@
|
|
|
623
907
|
|
|
624
908
|
/* ─── Feature Gradients ─── */
|
|
625
909
|
--surface-brand-gradient: linear-gradient(135deg, var(--color-brand-soft) 0%, transparent 100%);
|
|
626
|
-
--status-warning-bg:
|
|
910
|
+
--status-warning-bg: color-mix(in srgb, var(--color-warning-500) 10%, transparent);
|
|
627
911
|
}
|
|
628
912
|
|
|
629
913
|
/* ─── Deepblue Dark Mode Semantics ─── */
|
|
@@ -634,7 +918,7 @@
|
|
|
634
918
|
|
|
635
919
|
/* ─── Feature Gradients ─── */
|
|
636
920
|
--surface-brand-gradient: linear-gradient(135deg, var(--color-brand-soft) 0%, transparent 100%);
|
|
637
|
-
--status-warning-bg:
|
|
921
|
+
--status-warning-bg: color-mix(in srgb, var(--color-warning-500) 15%, transparent);
|
|
638
922
|
}
|
|
639
923
|
|
|
640
924
|
/* ═══════════════════════════════════════════════════════════════════════════
|
|
@@ -664,8 +948,6 @@
|
|
|
664
948
|
|
|
665
949
|
/* Geometry: Pill Buttons (100% Rounded) */
|
|
666
950
|
--radius-control: var(--radius-md);
|
|
667
|
-
--radius-container: var(--radius-lg);
|
|
668
|
-
--radius-button: 9999px;
|
|
669
951
|
|
|
670
952
|
/* Override Neutrals to Pure Scale */
|
|
671
953
|
--color-neutral-0: var(--color-neutral-pure-0);
|
|
@@ -702,8 +984,8 @@
|
|
|
702
984
|
--border-interactive: var(--color-brand-500);
|
|
703
985
|
|
|
704
986
|
/* ─── Glass Effect: Neutral Gray ─── */
|
|
705
|
-
--surface-glass:
|
|
706
|
-
--surface-sunken:
|
|
987
|
+
--surface-glass: color-mix(in srgb, var(--color-neutral-100) 70%, transparent);
|
|
988
|
+
--surface-sunken: color-mix(in srgb, var(--color-neutral-50) 40%, transparent);
|
|
707
989
|
|
|
708
990
|
/* ─── Hero Gradients ─── */
|
|
709
991
|
--hero-gradient-1: var(--color-brand-600);
|
|
@@ -711,7 +993,7 @@
|
|
|
711
993
|
|
|
712
994
|
/* ─── Feature Gradients ─── */
|
|
713
995
|
--surface-brand-gradient: linear-gradient(135deg, var(--color-brand-soft) 0%, transparent 100%);
|
|
714
|
-
--status-warning-bg:
|
|
996
|
+
--status-warning-bg: color-mix(in srgb, var(--color-warning-500) 10%, transparent);
|
|
715
997
|
}
|
|
716
998
|
|
|
717
999
|
/* ─── Orange Dark Mode Semantics ─── */
|
|
@@ -733,8 +1015,8 @@
|
|
|
733
1015
|
--border-interactive: var(--color-brand-500);
|
|
734
1016
|
|
|
735
1017
|
/* ─── Glass Effect: Neutral Gray ─── */
|
|
736
|
-
--surface-glass:
|
|
737
|
-
--surface-sunken:
|
|
1018
|
+
--surface-glass: color-mix(in srgb, var(--color-neutral-900) 60%, transparent);
|
|
1019
|
+
--surface-sunken: color-mix(in srgb, var(--color-neutral-950) 40%, transparent);
|
|
738
1020
|
|
|
739
1021
|
/* ─── Hero Gradients ─── */
|
|
740
1022
|
--hero-gradient-1: var(--color-brand-600);
|
|
@@ -742,12 +1024,12 @@
|
|
|
742
1024
|
|
|
743
1025
|
/* ─── Feature Gradients ─── */
|
|
744
1026
|
--surface-brand-gradient: linear-gradient(135deg, var(--color-brand-soft) 0%, transparent 100%);
|
|
745
|
-
--status-warning-bg:
|
|
1027
|
+
--status-warning-bg: color-mix(in srgb, var(--color-warning-500) 15%, transparent);
|
|
746
1028
|
}
|
|
747
1029
|
|
|
748
1030
|
/* ─── Laureate Component Overrides ─── */
|
|
749
1031
|
[data-brand="orange"] .badge {
|
|
750
|
-
border-radius:
|
|
1032
|
+
border-radius: var(--radius-full);
|
|
751
1033
|
}
|
|
752
1034
|
|
|
753
1035
|
[data-brand="orange"] .badge-primary {
|
|
@@ -755,6 +1037,12 @@
|
|
|
755
1037
|
color: var(--interactive-primary-text);
|
|
756
1038
|
}
|
|
757
1039
|
|
|
1040
|
+
/* ─── Orange Brand Card Padding (Pill Button Visual Elegance) ─── */
|
|
1041
|
+
[data-brand="orange"] {
|
|
1042
|
+
--card-padding: var(--spacing-6); /* 24px - generous padding for pill aesthetic */
|
|
1043
|
+
--card-padding-gap: var(--spacing-3); /* 12px - scaled gap */
|
|
1044
|
+
}
|
|
1045
|
+
|
|
758
1046
|
/* ═══════════════════════════════════════════════════════════════════════════
|
|
759
1047
|
LEMON BRAND — Bright Lime Green Theme Override
|
|
760
1048
|
Usage: <html data-theme="light|dark" data-brand="lemon">
|
|
@@ -782,8 +1070,6 @@
|
|
|
782
1070
|
|
|
783
1071
|
/* Geometry: Rounded Design with Usable Controls */
|
|
784
1072
|
--radius-control: var(--radius-lg); /* 16px - usable for inputs/selects */
|
|
785
|
-
--radius-container: var(--radius-xl); /* 24px - generous for cards */
|
|
786
|
-
--radius-button: var(--radius-full); /* 9999px - pill buttons preserved */
|
|
787
1073
|
|
|
788
1074
|
/* Override Neutrals to Pure Scale for Better Contrast */
|
|
789
1075
|
--color-neutral-0: var(--color-neutral-pure-0);
|
|
@@ -831,8 +1117,8 @@
|
|
|
831
1117
|
--border-interactive: var(--color-brand-700);
|
|
832
1118
|
|
|
833
1119
|
/* ─── Glass Effect: Neutral Gray ─── */
|
|
834
|
-
--surface-glass:
|
|
835
|
-
--surface-sunken:
|
|
1120
|
+
--surface-glass: color-mix(in srgb, var(--color-neutral-100) 70%, transparent);
|
|
1121
|
+
--surface-sunken: color-mix(in srgb, var(--color-neutral-50) 40%, transparent);
|
|
836
1122
|
|
|
837
1123
|
/* ─── Hero Gradients ─── */
|
|
838
1124
|
--hero-gradient-1: var(--color-brand-700);
|
|
@@ -840,7 +1126,7 @@
|
|
|
840
1126
|
|
|
841
1127
|
/* ─── Feature Gradients ─── */
|
|
842
1128
|
--surface-brand-gradient: linear-gradient(135deg, var(--color-brand-soft) 0%, transparent 100%);
|
|
843
|
-
--status-warning-bg:
|
|
1129
|
+
--status-warning-bg: color-mix(in srgb, var(--color-warning-500) 10%, transparent);
|
|
844
1130
|
}
|
|
845
1131
|
|
|
846
1132
|
/* ─── Lemon Dark Mode Semantics ─── */
|
|
@@ -862,8 +1148,8 @@
|
|
|
862
1148
|
--border-interactive: var(--color-brand-500);
|
|
863
1149
|
|
|
864
1150
|
/* ─── Glass Effect: Neutral Gray ─── */
|
|
865
|
-
--surface-glass:
|
|
866
|
-
--surface-sunken:
|
|
1151
|
+
--surface-glass: color-mix(in srgb, var(--color-neutral-900) 60%, transparent);
|
|
1152
|
+
--surface-sunken: color-mix(in srgb, var(--color-neutral-950) 40%, transparent);
|
|
867
1153
|
|
|
868
1154
|
/* ─── Hero Gradients ─── */
|
|
869
1155
|
--hero-gradient-1: var(--color-brand-600);
|
|
@@ -871,12 +1157,12 @@
|
|
|
871
1157
|
|
|
872
1158
|
/* ─── Feature Gradients ─── */
|
|
873
1159
|
--surface-brand-gradient: linear-gradient(135deg, var(--color-brand-soft) 0%, transparent 100%);
|
|
874
|
-
--status-warning-bg:
|
|
1160
|
+
--status-warning-bg: color-mix(in srgb, var(--color-warning-500) 15%, transparent);
|
|
875
1161
|
}
|
|
876
1162
|
|
|
877
1163
|
/* ─── Lemon Component Overrides ─── */
|
|
878
1164
|
[data-brand="lemon"] .badge {
|
|
879
|
-
border-radius:
|
|
1165
|
+
border-radius: var(--radius-full);
|
|
880
1166
|
}
|
|
881
1167
|
|
|
882
1168
|
[data-brand="lemon"] .badge-primary {
|
|
@@ -884,6 +1170,12 @@
|
|
|
884
1170
|
color: var(--interactive-primary-text);
|
|
885
1171
|
}
|
|
886
1172
|
|
|
1173
|
+
/* ─── Lemon Brand Card Padding (Bold Visual Elegance) ─── */
|
|
1174
|
+
[data-brand="lemon"] {
|
|
1175
|
+
--card-padding: var(--spacing-6); /* 24px - generous padding for visual impact */
|
|
1176
|
+
--card-padding-gap: var(--spacing-3); /* 12px - scaled gap */
|
|
1177
|
+
}
|
|
1178
|
+
|
|
887
1179
|
/* ═══════════════════════════════════════════════════════════════════════════
|
|
888
1180
|
TRI-MODAL OPERATING SYSTEM
|
|
889
1181
|
Three distinct contexts: Display (Marketing) | Product (SaaS) | App (Touch)
|
|
@@ -2026,51 +2318,57 @@ a.navbar-link:focus:not(:focus-visible) {
|
|
|
2026
2318
|
}
|
|
2027
2319
|
|
|
2028
2320
|
/* ═══════════════════════════════════════════════════════════════════════════
|
|
2029
|
-
BRAND VISUAL DIFFERENTIATION — Deepblue
|
|
2321
|
+
BRAND VISUAL DIFFERENTIATION — Deepblue, Orange, Lemon
|
|
2030
2322
|
═══════════════════════════════════════════════════════════════════════════ */
|
|
2031
2323
|
|
|
2032
2324
|
/* Deepblue: Bold & Energetic personality */
|
|
2033
2325
|
[data-brand="deepblue"] .btn,
|
|
2034
2326
|
[data-brand="deepblue"] .card {
|
|
2035
2327
|
border-width: 2px;
|
|
2036
|
-
/* More prominent borders */
|
|
2037
2328
|
}
|
|
2038
2329
|
|
|
2039
2330
|
[data-brand="deepblue"] .card-interactive:hover {
|
|
2040
|
-
box-shadow: 0 12px 20px -4px
|
|
2041
|
-
/* Blue-tinted shadow */
|
|
2331
|
+
box-shadow: 0 12px 20px -4px color-mix(in srgb, var(--color-brand-500) 30%, transparent);
|
|
2042
2332
|
}
|
|
2043
2333
|
|
|
2044
2334
|
[data-brand="deepblue"] .btn:hover:not(:disabled) {
|
|
2045
|
-
box-shadow: 0 8px 12px -2px
|
|
2335
|
+
box-shadow: 0 8px 12px -2px color-mix(in srgb, var(--color-brand-500) 25%, transparent);
|
|
2046
2336
|
}
|
|
2047
2337
|
|
|
2048
2338
|
/* Orange: Refined & Professional personality */
|
|
2049
2339
|
[data-brand="orange"] .btn,
|
|
2050
2340
|
[data-brand="orange"] .card {
|
|
2051
2341
|
border-width: 1px;
|
|
2052
|
-
/* Subtle borders */
|
|
2053
2342
|
}
|
|
2054
2343
|
|
|
2055
2344
|
[data-brand="orange"] .card-interactive:hover {
|
|
2056
|
-
box-shadow: 0 8px 16px -4px
|
|
2057
|
-
/* Red-orange tinted shadow, more subtle */
|
|
2345
|
+
box-shadow: 0 8px 16px -4px color-mix(in srgb, var(--color-brand-500) 20%, transparent);
|
|
2058
2346
|
}
|
|
2059
2347
|
|
|
2060
2348
|
[data-brand="orange"] .btn:hover:not(:disabled) {
|
|
2061
|
-
box-shadow: 0 6px 10px -2px
|
|
2062
|
-
transition-duration: 300ms;
|
|
2063
|
-
/* Slower, more deliberate interaction */
|
|
2349
|
+
box-shadow: 0 6px 10px -2px color-mix(in srgb, var(--color-brand-500) 20%, transparent);
|
|
2350
|
+
transition-duration: var(--transition-duration-slow, 300ms);
|
|
2064
2351
|
}
|
|
2065
2352
|
|
|
2066
2353
|
[data-brand="orange"] .btn:active:not(:disabled) {
|
|
2067
|
-
transition-duration: 150ms;
|
|
2068
|
-
/* Slightly slower press response */
|
|
2354
|
+
transition-duration: var(--transition-duration-fast, 150ms);
|
|
2069
2355
|
}
|
|
2070
2356
|
|
|
2071
|
-
/* Laureate refined modal appearance */
|
|
2072
2357
|
[data-brand="orange"] .modal {
|
|
2073
|
-
box-shadow: 0 16px 24px -4px
|
|
2358
|
+
box-shadow: 0 16px 24px -4px color-mix(in srgb, var(--color-brand-500) 15%, transparent);
|
|
2359
|
+
}
|
|
2360
|
+
|
|
2361
|
+
/* Lemon: Bold & Vivid personality */
|
|
2362
|
+
[data-brand="lemon"] .card-interactive:hover {
|
|
2363
|
+
box-shadow: 0 10px 18px -4px color-mix(in srgb, var(--color-brand-700) 25%, transparent);
|
|
2364
|
+
}
|
|
2365
|
+
|
|
2366
|
+
[data-brand="lemon"] .btn:hover:not(:disabled) {
|
|
2367
|
+
box-shadow: 0 8px 12px -2px color-mix(in srgb, var(--color-brand-700) 20%, transparent);
|
|
2368
|
+
}
|
|
2369
|
+
|
|
2370
|
+
[data-brand="lemon"] .modal {
|
|
2371
|
+
box-shadow: 0 16px 24px -4px color-mix(in srgb, var(--color-brand-700) 15%, transparent);
|
|
2074
2372
|
}
|
|
2075
2373
|
|
|
2076
2374
|
.sidebar-item.is-active .sidebar-item-icon {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brands.d.ts","sourceRoot":"","sources":["../../src/tokens/brands.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAElD,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"brands.d.ts","sourceRoot":"","sources":["../../src/tokens/brands.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAElD,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,WAAW,CAgLpC,CAAC;AAEX,eAAO,MAAM,YAAY,EAAE,KAAe,CAAC"}
|