@rakeyshgidwani/roger-ui-bank-theme-stan-design 0.1.4 → 0.1.6

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 (164) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/dist/index.d.ts +131 -131
  3. package/dist/index.esm.js +148 -148
  4. package/dist/index.js +148 -148
  5. package/dist/styles.css +1 -1
  6. package/package.json +1 -1
  7. package/src/components/ui/accessibility-demo.tsx +271 -0
  8. package/src/components/ui/advanced-component-architecture-demo.tsx +916 -0
  9. package/src/components/ui/advanced-transition-system-demo.tsx +670 -0
  10. package/src/components/ui/advanced-transition-system.tsx +395 -0
  11. package/src/components/ui/animation/animated-container.tsx +166 -0
  12. package/src/components/ui/animation/index.ts +19 -0
  13. package/src/components/ui/animation/staggered-container.tsx +68 -0
  14. package/src/components/ui/animation-demo.tsx +250 -0
  15. package/src/components/ui/badge.tsx +33 -0
  16. package/src/components/ui/battery-conscious-animation-demo.tsx +568 -0
  17. package/src/components/ui/border-radius-shadow-demo.tsx +187 -0
  18. package/src/components/ui/button.tsx +36 -0
  19. package/src/components/ui/card.tsx +207 -0
  20. package/src/components/ui/checkbox.tsx +30 -0
  21. package/src/components/ui/color-preview.tsx +411 -0
  22. package/src/components/ui/data-display/chart.tsx +653 -0
  23. package/src/components/ui/data-display/data-grid-simple.tsx +76 -0
  24. package/src/components/ui/data-display/data-grid.tsx +680 -0
  25. package/src/components/ui/data-display/list.tsx +456 -0
  26. package/src/components/ui/data-display/table.tsx +482 -0
  27. package/src/components/ui/data-display/timeline.tsx +441 -0
  28. package/src/components/ui/data-display/tree.tsx +602 -0
  29. package/src/components/ui/data-display/types.ts +536 -0
  30. package/src/components/ui/enterprise-mobile-experience-demo.tsx +749 -0
  31. package/src/components/ui/enterprise-mobile-experience.tsx +464 -0
  32. package/src/components/ui/feedback/alert.tsx +157 -0
  33. package/src/components/ui/feedback/progress.tsx +292 -0
  34. package/src/components/ui/feedback/skeleton.tsx +185 -0
  35. package/src/components/ui/feedback/toast.tsx +280 -0
  36. package/src/components/ui/feedback/types.ts +125 -0
  37. package/src/components/ui/font-preview.tsx +288 -0
  38. package/src/components/ui/form-demo.tsx +553 -0
  39. package/src/components/ui/hardware-acceleration-demo.tsx +547 -0
  40. package/src/components/ui/input.tsx +35 -0
  41. package/src/components/ui/label.tsx +16 -0
  42. package/src/components/ui/layout-demo.tsx +367 -0
  43. package/src/components/ui/layouts/adaptive-layout.tsx +139 -0
  44. package/src/components/ui/layouts/desktop-layout.tsx +224 -0
  45. package/src/components/ui/layouts/index.ts +10 -0
  46. package/src/components/ui/layouts/mobile-layout.tsx +162 -0
  47. package/src/components/ui/layouts/tablet-layout.tsx +197 -0
  48. package/src/components/ui/mobile-form-validation.tsx +451 -0
  49. package/src/components/ui/mobile-input-demo.tsx +201 -0
  50. package/src/components/ui/mobile-input.tsx +281 -0
  51. package/src/components/ui/mobile-skeleton-loading-demo.tsx +638 -0
  52. package/src/components/ui/navigation/breadcrumb.tsx +158 -0
  53. package/src/components/ui/navigation/index.ts +36 -0
  54. package/src/components/ui/navigation/menu.tsx +374 -0
  55. package/src/components/ui/navigation/navigation-demo.tsx +324 -0
  56. package/src/components/ui/navigation/pagination.tsx +272 -0
  57. package/src/components/ui/navigation/sidebar.tsx +383 -0
  58. package/src/components/ui/navigation/stepper.tsx +303 -0
  59. package/src/components/ui/navigation/tabs.tsx +205 -0
  60. package/src/components/ui/navigation/types.ts +299 -0
  61. package/src/components/ui/overlay/backdrop.tsx +81 -0
  62. package/src/components/ui/overlay/focus-manager.tsx +143 -0
  63. package/src/components/ui/overlay/index.ts +36 -0
  64. package/src/components/ui/overlay/modal.tsx +270 -0
  65. package/src/components/ui/overlay/overlay-manager.tsx +110 -0
  66. package/src/components/ui/overlay/popover.tsx +462 -0
  67. package/src/components/ui/overlay/portal.tsx +79 -0
  68. package/src/components/ui/overlay/tooltip.tsx +303 -0
  69. package/src/components/ui/overlay/types.ts +196 -0
  70. package/src/components/ui/performance-demo.tsx +596 -0
  71. package/src/components/ui/semantic-input-system-demo.tsx +502 -0
  72. package/src/components/ui/semantic-input-system-demo.tsx.disabled +873 -0
  73. package/src/components/ui/tablet-layout.tsx +192 -0
  74. package/src/components/ui/theme-customizer.tsx +386 -0
  75. package/src/components/ui/theme-preview.tsx +310 -0
  76. package/src/components/ui/theme-switcher.tsx +264 -0
  77. package/src/components/ui/theme-toggle.tsx +38 -0
  78. package/src/components/ui/token-demo.tsx +195 -0
  79. package/src/components/ui/touch-demo.tsx +462 -0
  80. package/src/components/ui/touch-friendly-interface-demo.tsx +519 -0
  81. package/src/components/ui/touch-friendly-interface.tsx +296 -0
  82. package/src/hooks/index.ts +190 -0
  83. package/src/hooks/use-accessibility-support.ts +518 -0
  84. package/src/hooks/use-adaptive-layout.ts +289 -0
  85. package/src/hooks/use-advanced-patterns.ts +294 -0
  86. package/src/hooks/use-advanced-transition-system.ts +393 -0
  87. package/src/hooks/use-animation-profile.ts +288 -0
  88. package/src/hooks/use-battery-animations.ts +384 -0
  89. package/src/hooks/use-battery-conscious-loading.ts +475 -0
  90. package/src/hooks/use-battery-optimization.ts +330 -0
  91. package/src/hooks/use-battery-status.ts +299 -0
  92. package/src/hooks/use-component-performance.ts +344 -0
  93. package/src/hooks/use-device-loading-states.ts +459 -0
  94. package/src/hooks/use-device.tsx +110 -0
  95. package/src/hooks/use-enterprise-mobile-experience.ts +488 -0
  96. package/src/hooks/use-form-feedback.ts +403 -0
  97. package/src/hooks/use-form-performance.ts +513 -0
  98. package/src/hooks/use-frame-rate.ts +251 -0
  99. package/src/hooks/use-gestures.ts +338 -0
  100. package/src/hooks/use-hardware-acceleration.ts +341 -0
  101. package/src/hooks/use-input-accessibility.ts +455 -0
  102. package/src/hooks/use-input-performance.ts +506 -0
  103. package/src/hooks/use-layout-performance.ts +319 -0
  104. package/src/hooks/use-loading-accessibility.ts +535 -0
  105. package/src/hooks/use-loading-performance.ts +473 -0
  106. package/src/hooks/use-memory-usage.ts +287 -0
  107. package/src/hooks/use-mobile-form-layout.ts +464 -0
  108. package/src/hooks/use-mobile-form-validation.ts +518 -0
  109. package/src/hooks/use-mobile-keyboard-optimization.ts +472 -0
  110. package/src/hooks/use-mobile-layout.ts +302 -0
  111. package/src/hooks/use-mobile-optimization.ts +406 -0
  112. package/src/hooks/use-mobile-skeleton.ts +402 -0
  113. package/src/hooks/use-mobile-touch.ts +414 -0
  114. package/src/hooks/use-performance-throttling.ts +348 -0
  115. package/src/hooks/use-performance.ts +316 -0
  116. package/src/hooks/use-reusable-architecture.ts +414 -0
  117. package/src/hooks/use-semantic-input-types.ts +357 -0
  118. package/src/hooks/use-semantic-input.ts +565 -0
  119. package/src/hooks/use-tablet-layout.ts +384 -0
  120. package/src/hooks/use-touch-friendly-input.ts +524 -0
  121. package/src/hooks/use-touch-friendly-interface.ts +331 -0
  122. package/src/hooks/use-touch-optimization.ts +375 -0
  123. package/src/index.ts +279 -279
  124. package/src/lib/utils.ts +6 -0
  125. package/src/themes/README.md +272 -0
  126. package/src/themes/ThemeContext.tsx +31 -0
  127. package/src/themes/ThemeProvider.tsx +232 -0
  128. package/src/themes/accessibility/index.ts +27 -0
  129. package/src/themes/accessibility.ts +259 -0
  130. package/src/themes/aria-patterns.ts +420 -0
  131. package/src/themes/base-themes.ts +55 -0
  132. package/src/themes/colorManager.ts +380 -0
  133. package/src/themes/examples/dark-theme.ts +154 -0
  134. package/src/themes/examples/minimal-theme.ts +108 -0
  135. package/src/themes/focus-management.ts +701 -0
  136. package/src/themes/fontLoader.ts +201 -0
  137. package/src/themes/high-contrast.ts +621 -0
  138. package/src/themes/index.ts +19 -0
  139. package/src/themes/inheritance.ts +227 -0
  140. package/src/themes/keyboard-navigation.ts +550 -0
  141. package/src/themes/motion-reduction.ts +662 -0
  142. package/src/themes/navigation.ts +238 -0
  143. package/src/themes/screen-reader.ts +645 -0
  144. package/src/themes/systemThemeDetector.ts +182 -0
  145. package/src/themes/themeCSSUpdater.ts +262 -0
  146. package/src/themes/themePersistence.ts +238 -0
  147. package/src/themes/themes/default.ts +586 -0
  148. package/src/themes/themes/harvey.ts +554 -0
  149. package/src/themes/themes/stan-design.ts +683 -0
  150. package/src/themes/types.ts +460 -0
  151. package/src/themes/useSystemTheme.ts +48 -0
  152. package/src/themes/useTheme.ts +87 -0
  153. package/src/themes/validation.ts +462 -0
  154. package/src/tokens/index.ts +34 -0
  155. package/src/tokens/tokenExporter.ts +397 -0
  156. package/src/tokens/tokenGenerator.ts +276 -0
  157. package/src/tokens/tokenManager.ts +248 -0
  158. package/src/tokens/tokenValidator.ts +543 -0
  159. package/src/tokens/types.ts +78 -0
  160. package/src/utils/bundle-analyzer.ts +260 -0
  161. package/src/utils/bundle-splitting.ts +483 -0
  162. package/src/utils/lazy-loading.ts +441 -0
  163. package/src/utils/performance-monitor.ts +513 -0
  164. package/src/utils/tree-shaking.ts +274 -0
@@ -0,0 +1,683 @@
1
+ import { MultiThemeConfig } from '../types';
2
+
3
+ /**
4
+ * Stan Design Base Theme
5
+ * Modern, professional design with Clash Display font
6
+ */
7
+ export const stanDesignTheme: MultiThemeConfig = {
8
+ fonts: {
9
+ primary: {
10
+ family: 'Clash Display',
11
+ fallbacks: ['ui-sans-serif', 'system-ui', '-apple-system', 'BlinkMacSystemFont', '"Segoe UI"', 'Roboto', '"Helvetica Neue"', 'Arial', '"Noto Sans"', 'sans-serif'],
12
+ weights: [300, 400, 500, 600, 700],
13
+ display: 'swap',
14
+ source: {
15
+ type: 'custom',
16
+ files: {
17
+ woff2: '/fonts/clash-display/ClashDisplay-Variable.woff2'
18
+ }
19
+ },
20
+ sizes: {
21
+ xs: '0.75rem',
22
+ sm: '0.875rem',
23
+ md: '1rem',
24
+ lg: '1.125rem',
25
+ xl: '1.25rem',
26
+ '2xl': '1.5rem',
27
+ '3xl': '1.875rem',
28
+ '4xl': '2.25rem',
29
+ '5xl': '3rem',
30
+ '6xl': '3.75rem'
31
+ },
32
+ lineHeights: {
33
+ tight: '1.25',
34
+ normal: '1.5',
35
+ relaxed: '1.75',
36
+ loose: '2'
37
+ },
38
+ letterSpacing: {
39
+ tight: '-0.025em',
40
+ normal: '0em',
41
+ wide: '0.025em',
42
+ wider: '0.05em',
43
+ widest: '0.1em'
44
+ }
45
+ },
46
+ secondary: {
47
+ family: 'Clash Display',
48
+ fallbacks: ['ui-sans-serif', 'system-ui', '-apple-system', 'BlinkMacSystemFont', '"Segoe UI"', 'Roboto', '"Helvetica Neue"', 'Arial', '"Noto Sans"', 'sans-serif'],
49
+ weights: [300, 400, 500, 600, 700],
50
+ display: 'swap',
51
+ source: {
52
+ type: 'custom',
53
+ files: {
54
+ woff2: '/fonts/clash-display/ClashDisplay-Variable.woff2'
55
+ }
56
+ },
57
+ sizes: {
58
+ xs: '0.75rem',
59
+ sm: '0.875rem',
60
+ md: '1rem',
61
+ lg: '1.125rem',
62
+ xl: '1.25rem',
63
+ '2xl': '1.5rem',
64
+ '3xl': '1.875rem',
65
+ '4xl': '2.25rem',
66
+ '5xl': '3rem',
67
+ '6xl': '3.75rem'
68
+ },
69
+ lineHeights: {
70
+ tight: '1.25',
71
+ normal: '1.5',
72
+ relaxed: '1.75',
73
+ loose: '2'
74
+ },
75
+ letterSpacing: {
76
+ tight: '-0.025em',
77
+ normal: '0em',
78
+ wide: '0.025em',
79
+ wider: '0.05em',
80
+ widest: '0.1em'
81
+ }
82
+ },
83
+ display: {
84
+ family: 'Clash Display, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif',
85
+ weights: [400, 500, 600, 700],
86
+ sizes: {
87
+ xs: '1.5rem',
88
+ sm: '1.875rem',
89
+ md: '2.25rem',
90
+ lg: '3rem',
91
+ xl: '3.75rem',
92
+ '2xl': '4.5rem',
93
+ '3xl': '6rem',
94
+ '4xl': '7.5rem',
95
+ '5xl': '9rem',
96
+ '6xl': '12rem'
97
+ },
98
+ lineHeights: {
99
+ tight: '1.1',
100
+ normal: '1.2',
101
+ relaxed: '1.3',
102
+ loose: '1.4'
103
+ },
104
+ letterSpacing: {
105
+ tight: '-0.02em',
106
+ normal: '-0.01em',
107
+ wide: '0em',
108
+ wider: '0.01em',
109
+ widest: '0.02em'
110
+ }
111
+ },
112
+ body: {
113
+ family: 'Clash Display, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif',
114
+ weights: [300, 400, 500],
115
+ sizes: {
116
+ xs: '0.75rem',
117
+ sm: '0.875rem',
118
+ md: '1rem',
119
+ lg: '1.125rem',
120
+ xl: '1.25rem',
121
+ '2xl': '1.5rem',
122
+ '3xl': '1.875rem',
123
+ '4xl': '2.25rem',
124
+ '5xl': '3rem',
125
+ '6xl': '3.75rem'
126
+ },
127
+ lineHeights: {
128
+ tight: '1.4',
129
+ normal: '1.6',
130
+ relaxed: '1.8',
131
+ loose: '2'
132
+ },
133
+ letterSpacing: {
134
+ tight: '-0.01em',
135
+ normal: '0em',
136
+ wide: '0.01em',
137
+ wider: '0.02em',
138
+ widest: '0.05em'
139
+ }
140
+ },
141
+ mono: {
142
+ family: 'ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", Menlo, monospace',
143
+ weights: [400, 500, 600],
144
+ sizes: {
145
+ xs: '0.75rem',
146
+ sm: '0.875rem',
147
+ md: '1rem',
148
+ lg: '1.125rem',
149
+ xl: '1.25rem',
150
+ '2xl': '1.5rem',
151
+ '3xl': '1.875rem',
152
+ '4xl': '2.25rem',
153
+ '5xl': '3rem',
154
+ '6xl': '3.75rem'
155
+ },
156
+ lineHeights: {
157
+ tight: '1.25',
158
+ normal: '1.5',
159
+ relaxed: '1.75',
160
+ loose: '2'
161
+ },
162
+ letterSpacing: {
163
+ tight: '-0.025em',
164
+ normal: '0em',
165
+ wide: '0.025em',
166
+ wider: '0.05em',
167
+ widest: '0.1em'
168
+ }
169
+ }
170
+ },
171
+ colors: {
172
+ primary: {
173
+ 50: '#eff6ff',
174
+ 100: '#dbeafe',
175
+ 200: '#bfdbfe',
176
+ 300: '#93c5fd',
177
+ 400: '#60a5fa',
178
+ 500: '#2563eb', // Updated to match original poker project
179
+ 600: '#1d4ed8',
180
+ 700: '#1e40af',
181
+ 800: '#1e3a8a',
182
+ 900: '#1e3a8a',
183
+ // RGB versions for rgba() usage
184
+ '500-rgb': '37, 99, 235',
185
+ '600-rgb': '29, 78, 216',
186
+ '700-rgb': '30, 64, 175'
187
+ },
188
+ secondary: {
189
+ 50: '#f9fafb',
190
+ 100: '#f3f4f6',
191
+ 200: '#e5e7eb',
192
+ 300: '#d1d5db',
193
+ 400: '#9ca3af',
194
+ 500: '#6b7280',
195
+ 600: '#4b5563',
196
+ 700: '#374151',
197
+ 800: '#1f2937',
198
+ 900: '#111827'
199
+ },
200
+ semantic: {
201
+ success: '#059669', // Updated to match original poker project
202
+ warning: '#f59e0b',
203
+ error: '#ef4444',
204
+ errorDark: '#dc2626', // Darker red for destructive hover states
205
+ info: '#2563eb', // Updated to match original poker project
206
+ // RGB versions for rgba() usage
207
+ successRgb: '5, 150, 105',
208
+ warningRgb: '245, 158, 11',
209
+ errorRgb: '239, 68, 68',
210
+ errorDarkRgb: '220, 38, 38',
211
+ infoRgb: '37, 99, 235',
212
+ // Additional RGB versions referenced in CSS
213
+ 'success-rgb': '5, 150, 105',
214
+ 'warning-rgb': '245, 158, 11',
215
+ 'error-rgb': '239, 68, 68',
216
+ 'error-dark-rgb': '220, 38, 38',
217
+ 'info-rgb': '37, 99, 235'
218
+ },
219
+ neutral: {
220
+ 50: '#fafafa',
221
+ 100: '#f5f5f5',
222
+ 200: '#e5e5e5',
223
+ 300: '#d4d4d4',
224
+ 400: '#a3a3a3',
225
+ 500: '#737373',
226
+ 600: '#525252',
227
+ 700: '#404040',
228
+ 800: '#262626',
229
+ 900: '#171717'
230
+ },
231
+ surface: {
232
+ background: '#ffffff',
233
+ surface: '#f3f4f6', // Updated to match original poker project
234
+ border: '#e5e7eb', // Updated to match original poker project
235
+ divider: '#d1d5db' // Updated to match original poker project
236
+ },
237
+ text: {
238
+ primary: '#111827', // Updated to match original poker project
239
+ secondary: '#4b5563', // Updated to match original poker project
240
+ muted: '#6b7280', // Updated to match original poker project
241
+ inverse: '#ffffff',
242
+ onPrimary: '#ffffff',
243
+ onSecondary: '#ffffff',
244
+ onSurface: '#111827' // Updated to match original poker project
245
+ },
246
+ interactive: {
247
+ hover: '#f8fafc', // Updated to match original poker project
248
+ active: '#f3f4f6', // Updated to match original poker project
249
+ focus: '#2563eb', // Updated to match original poker project
250
+ disabled: '#d1d5db' // Updated to match original poker project
251
+ },
252
+ // Additional colors referenced in CSS
253
+ accent: '#6366f1',
254
+ 'bg-primary': '#ffffff',
255
+ 'bg-secondary': '#f3f4f6', // Updated to match original poker project
256
+ 'surface-bg': '#f3f4f6', // Updated to match original poker project
257
+ // Additional missing CSS variables
258
+ 'primary-hover': '#1d4ed8', // Updated to match original poker project
259
+ 'primary-active': '#1e40af', // Updated to match original poker project
260
+ 'accent-rgb': '99, 102, 241',
261
+ 'border': '#e5e7eb', // Updated to match original poker project
262
+ // Border semantic variables
263
+ 'border-transparent': 'transparent',
264
+ // Text colors referenced in CSS
265
+ 'text-primary': '#111827', // Updated to match original poker project
266
+ 'text-secondary': '#4b5563' // Updated to match original poker project
267
+ },
268
+ navigation: {
269
+ layout: 'horizontal',
270
+ style: 'enhanced',
271
+ behavior: 'static',
272
+ responsive: 'mobile-first',
273
+ animations: {
274
+ duration: {
275
+ fast: '0.15s',
276
+ normal: '0.2s',
277
+ slow: '0.3s',
278
+ instant: '0s'
279
+ },
280
+ easing: {
281
+ linear: 'linear',
282
+ ease: 'ease',
283
+ easeIn: 'ease-in',
284
+ easeOut: 'ease-out',
285
+ easeInOut: 'ease-in-out',
286
+ bounce: 'cubic-bezier(0.68, -0.55, 0.265, 1.55)',
287
+ elastic: 'cubic-bezier(0.175, 0.885, 0.32, 1.275)'
288
+ },
289
+ stagger: {
290
+ enabled: true,
291
+ delay: '0.05s',
292
+ direction: 'forward'
293
+ },
294
+ transitions: {
295
+ enter: '0.2s ease-out',
296
+ exit: '0.15s ease-in',
297
+ move: '0.2s ease',
298
+ resize: '0.1s ease'
299
+ }
300
+ },
301
+ spacing: {
302
+ container: '1rem',
303
+ item: '0.5rem',
304
+ group: '1rem',
305
+ divider: '0.25rem',
306
+ icon: '0.5rem',
307
+ text: '0.25rem',
308
+ padding: {
309
+ horizontal: '1rem',
310
+ vertical: '0.75rem',
311
+ top: '0.75rem',
312
+ right: '1rem',
313
+ bottom: '0.75rem',
314
+ left: '1rem'
315
+ },
316
+ margin: {
317
+ horizontal: '0.5rem',
318
+ vertical: '0.25rem',
319
+ top: '0.25rem',
320
+ right: '0.5rem',
321
+ bottom: '0.25rem',
322
+ left: '0.5rem'
323
+ }
324
+ },
325
+ colors: {
326
+ background: {
327
+ primary: '#ffffff',
328
+ secondary: '#f3f4f6', // Updated to match original poker project
329
+ tertiary: '#f8fafc', // Updated to match original poker project
330
+ light: '#ffffff',
331
+ dark: '#0f172a',
332
+ contrast: '#000000'
333
+ },
334
+ text: {
335
+ primary: '#111827', // Updated to match original poker project
336
+ secondary: '#4b5563', // Updated to match original poker project
337
+ tertiary: '#6b7280', // Updated to match original poker project
338
+ light: '#9ca3af', // Updated to match original poker project
339
+ dark: '#0f172a',
340
+ contrast: '#ffffff'
341
+ },
342
+ border: {
343
+ primary: '#e5e7eb', // Updated to match original poker project
344
+ secondary: '#d1d5db', // Updated to match original poker project
345
+ tertiary: '#9ca3af', // Updated to match original poker project
346
+ light: '#f8fafc', // Updated to match original poker project
347
+ dark: '#475569',
348
+ contrast: '#000000'
349
+ },
350
+ accent: {
351
+ primary: '#2563eb', // Updated to match original poker project
352
+ secondary: '#6366f1',
353
+ tertiary: '#8b5cf6',
354
+ light: '#dbeafe',
355
+ dark: '#1d4ed8', // Updated to match original poker project
356
+ contrast: '#ffffff'
357
+ },
358
+ hover: {
359
+ primary: '#f8fafc', // Updated to match original poker project
360
+ secondary: '#f3f4f6', // Updated to match original poker project
361
+ tertiary: '#d1d5db', // Updated to match original poker project
362
+ light: '#ffffff',
363
+ dark: '#1e293b',
364
+ contrast: '#f8fafc'
365
+ },
366
+ active: {
367
+ primary: '#2563eb', // Updated to match original poker project
368
+ secondary: '#6366f1',
369
+ tertiary: '#8b5cf6',
370
+ light: '#dbeafe',
371
+ dark: '#1d4ed8', // Updated to match original poker project
372
+ contrast: '#ffffff'
373
+ },
374
+ disabled: {
375
+ primary: '#f8fafc', // Updated to match original poker project
376
+ secondary: '#f3f4f6', // Updated to match original poker project
377
+ tertiary: '#d1d5db', // Updated to match original poker project
378
+ light: '#f3f4f6', // Updated to match original poker project
379
+ dark: '#475569',
380
+ contrast: '#94a3b8'
381
+ },
382
+ focus: {
383
+ primary: '#2563eb', // Updated to match original poker project
384
+ secondary: '#6366f1',
385
+ tertiary: '#8b5cf6',
386
+ light: '#dbeafe',
387
+ dark: '#1d4ed8', // Updated to match original poker project
388
+ contrast: '#ffffff'
389
+ }
390
+ },
391
+ typography: {
392
+ fontFamily: 'Clash Display, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif',
393
+ fontSize: {
394
+ xs: '0.75rem',
395
+ sm: '0.875rem',
396
+ base: '1rem',
397
+ lg: '1.125rem',
398
+ xl: '1.25rem',
399
+ '2xl': '1.5rem'
400
+ },
401
+ fontWeight: {
402
+ light: '300',
403
+ normal: '400',
404
+ medium: '500',
405
+ semibold: '600',
406
+ bold: '700'
407
+ },
408
+ lineHeight: {
409
+ tight: '1.25',
410
+ normal: '1.5',
411
+ relaxed: '1.75',
412
+ loose: '2'
413
+ },
414
+ letterSpacing: {
415
+ tight: '-0.025em',
416
+ normal: '0',
417
+ wide: '0.025em',
418
+ wider: '0.05em'
419
+ }
420
+ },
421
+ breakpoints: {
422
+ mobile: '640px',
423
+ tablet: '768px',
424
+ desktop: '1024px',
425
+ wide: '1280px',
426
+ ultra: '1536px'
427
+ }
428
+ },
429
+ spacing: {
430
+ scale: {
431
+ xs: '0.25rem',
432
+ sm: '0.5rem',
433
+ md: '1rem',
434
+ lg: '1.5rem',
435
+ xl: '2rem',
436
+ '2xl': '3rem',
437
+ '3xl': '4rem',
438
+ '4xl': '6rem',
439
+ '5xl': '8rem',
440
+ '6xl': '12rem'
441
+ },
442
+ component: {
443
+ button: {
444
+ padding: '0.75rem 1.5rem',
445
+ margin: '0.5rem',
446
+ gap: '0.5rem'
447
+ },
448
+ input: {
449
+ padding: '0.75rem 1rem',
450
+ margin: '0.5rem',
451
+ gap: '0.5rem'
452
+ },
453
+ card: {
454
+ padding: '1.5rem',
455
+ margin: '1rem',
456
+ gap: '1rem'
457
+ }
458
+ },
459
+ layout: {
460
+ page: '2rem',
461
+ section: '3rem',
462
+ container: '1rem',
463
+ grid: '1.5rem'
464
+ }
465
+ },
466
+ shadows: {
467
+ sm: '0 1px 2px 0 rgb(0 0 0 / 0.05)',
468
+ md: '0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)',
469
+ lg: '0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)',
470
+ xl: '0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)',
471
+ '2xl': '0 25px 50px -12px rgb(0 0 0 / 0.25)',
472
+ inner: 'inset 0 2px 4px 0 rgb(0 0 0 / 0.05)',
473
+ none: '0 0 #0000'
474
+ },
475
+ transitions: {
476
+ duration: {
477
+ fast: '0.15s',
478
+ normal: '0.2s',
479
+ slow: '0.3s'
480
+ },
481
+ easing: {
482
+ linear: 'linear',
483
+ ease: 'ease',
484
+ easeIn: 'ease-in',
485
+ easeOut: 'ease-out',
486
+ easeInOut: 'ease-in-out'
487
+ },
488
+ properties: {
489
+ colors: '0.2s ease',
490
+ transform: '0.2s ease',
491
+ opacity: '0.15s ease',
492
+ shadow: '0.2s ease'
493
+ }
494
+ },
495
+ borderRadius: {
496
+ none: '0',
497
+ sm: '0.125rem',
498
+ md: '0.375rem',
499
+ lg: '0.5rem',
500
+ xl: '0.75rem',
501
+ '2xl': '1rem',
502
+ full: '9999px'
503
+ },
504
+ borderWidth: {
505
+ none: '0',
506
+ thin: '0.5px',
507
+ normal: '1px',
508
+ focus: '2px',
509
+ thick: '3px',
510
+ extraThick: '4px'
511
+ },
512
+ animation: {
513
+ duration: {
514
+ fast: '0.3s',
515
+ normal: '0.2s',
516
+ slow: '1.5s'
517
+ },
518
+ easing: {
519
+ linear: 'linear',
520
+ ease: 'ease',
521
+ easeIn: 'ease-in',
522
+ easeOut: 'ease-out',
523
+ easeInOut: 'ease-in-out'
524
+ },
525
+ transforms: {
526
+ hoverY: '-2px',
527
+ offsetY: '10px',
528
+ scale: '1.02'
529
+ }
530
+ },
531
+ accessibility: {
532
+ focusRing: {
533
+ width: '3px',
534
+ offset: '2px',
535
+ color: 'var(--cs-colors-interactive-focus)'
536
+ },
537
+ outline: {
538
+ offset: '2px'
539
+ },
540
+ highContrast: {
541
+ borderWidth: '2px',
542
+ outlineWidth: '4px'
543
+ },
544
+ disabled: {
545
+ cursor: 'not-allowed',
546
+ opacity: '0.7'
547
+ }
548
+ },
549
+ print: {
550
+ borderColor: '#000',
551
+ textColor: '#000',
552
+ textSecondaryColor: '#333',
553
+ backgroundColor: 'transparent'
554
+ },
555
+ containerQuery: {
556
+ small: '400px',
557
+ medium: '600px',
558
+ large: '800px'
559
+ },
560
+ container: {
561
+ width: {
562
+ small: '16rem',
563
+ medium: '20rem',
564
+ large: '24rem',
565
+ xl: '32rem',
566
+ full: '100%'
567
+ }
568
+ },
569
+ shimmer: {
570
+ alpha: '0.2',
571
+ color: 'rgba(255, 255, 255, 0.2)'
572
+ },
573
+ meta: {
574
+ name: 'Stan Design',
575
+ description: 'Modern, professional design system with Clash Display typography and comprehensive theming',
576
+ author: 'Stan Design Team',
577
+ version: '1.0.0',
578
+ category: 'brand',
579
+ tags: ['modern', 'professional', 'typography', 'clash-display', 'comprehensive'],
580
+ preview: '/themes/stan-design-preview.png',
581
+ createdAt: '2024-12-01T00:00:00.000Z',
582
+ updatedAt: '2024-12-01T00:00:00.000Z'
583
+ },
584
+
585
+ // NEW: Add dark mode overrides
586
+ modes: {
587
+ dark: {
588
+ colors: {
589
+ primary: {
590
+ 50: '#1e3a8a',
591
+ 100: '#1e40af',
592
+ 200: '#1d4ed8',
593
+ 300: '#2563eb',
594
+ 400: '#3b82f6',
595
+ 500: '#60a5fa',
596
+ 600: '#93c5fd',
597
+ 700: '#bfdbfe',
598
+ 800: '#dbeafe',
599
+ 900: '#eff6ff',
600
+ // RGB versions for rgba() usage
601
+ '500-rgb': '96, 165, 250',
602
+ '600-rgb': '147, 197, 253',
603
+ '700-rgb': '191, 219, 254'
604
+ },
605
+ secondary: {
606
+ 50: '#111827',
607
+ 100: '#1f2937',
608
+ 200: '#374151',
609
+ 300: '#4b5563',
610
+ 400: '#6b7280',
611
+ 500: '#9ca3af',
612
+ 600: '#d1d5db',
613
+ 700: '#e5e7eb',
614
+ 800: '#f3f4f6',
615
+ 900: '#f9fafb'
616
+ },
617
+ semantic: {
618
+ success: '#10b981',
619
+ warning: '#fbbf24',
620
+ error: '#f87171',
621
+ info: '#60a5fa',
622
+ // RGB versions for rgba() usage
623
+ successRgb: '16, 185, 129',
624
+ warningRgb: '251, 191, 36',
625
+ errorRgb: '248, 113, 113',
626
+ infoRgb: '96, 165, 250',
627
+ // Additional RGB versions referenced in CSS
628
+ 'success-rgb': '16, 185, 129',
629
+ 'warning-rgb': '251, 191, 36',
630
+ 'error-rgb': '248, 113, 113',
631
+ 'info-rgb': '96, 165, 250'
632
+ },
633
+ neutral: {
634
+ 50: '#171717',
635
+ 100: '#262626',
636
+ 200: '#404040',
637
+ 300: '#525252',
638
+ 400: '#737373',
639
+ 500: '#a3a3a3',
640
+ 600: '#d4d4d4',
641
+ 700: '#e5e5e5',
642
+ 800: '#f5f5f5',
643
+ 900: '#fafafa'
644
+ },
645
+ surface: {
646
+ background: '#0f172a',
647
+ surface: '#1e293b',
648
+ border: '#334155',
649
+ divider: '#475569'
650
+ },
651
+ text: {
652
+ primary: '#f8fafc',
653
+ secondary: '#cbd5e1',
654
+ muted: '#94a3b8',
655
+ inverse: '#0f172a',
656
+ onPrimary: '#0f172a',
657
+ onSecondary: '#0f172a',
658
+ onSurface: '#f8fafc'
659
+ },
660
+ interactive: {
661
+ hover: '#475569',
662
+ active: '#1e293b',
663
+ focus: '#3b82f6',
664
+ disabled: '#475569'
665
+ },
666
+ // Additional colors referenced in CSS
667
+ accent: '#8b5cf6',
668
+ 'bg-primary': '#0f172a',
669
+ 'bg-secondary': '#1e293b',
670
+ 'surface-bg': '#1e293b',
671
+ // Additional missing CSS variables
672
+ 'primary-hover': '#3b82f6',
673
+ 'primary-active': '#60a5fa',
674
+ 'accent-rgb': '139, 92, 246',
675
+ 'border': '#334155',
676
+ // Text colors referenced in CSS
677
+ 'text-primary': '#f8fafc',
678
+ 'text-secondary': '#cbd5e1'
679
+ },
680
+
681
+ }
682
+ }
683
+ };