indas-ui 0.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/dist/chunk-4PEFU7N7.js +16 -0
- package/dist/chunk-4PEFU7N7.js.map +1 -0
- package/dist/de-EKT7SUK5.js +106 -0
- package/dist/de-EKT7SUK5.js.map +1 -0
- package/dist/en-QRFSIEHD.js +1685 -0
- package/dist/en-QRFSIEHD.js.map +1 -0
- package/dist/es-KHZMWGUI.js +106 -0
- package/dist/es-KHZMWGUI.js.map +1 -0
- package/dist/fr-X2XUXSHK.js +105 -0
- package/dist/fr-X2XUXSHK.js.map +1 -0
- package/dist/hi-YRATOE5Q.js +415 -0
- package/dist/hi-YRATOE5Q.js.map +1 -0
- package/dist/index.cjs +28216 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +3173 -0
- package/dist/index.d.ts +3173 -0
- package/dist/index.js +25938 -0
- package/dist/index.js.map +1 -0
- package/dist/sidebar-scrollbar-NBCB2OO2.css +46 -0
- package/package.json +119 -0
- package/src/styles/grid-themes.css +346 -0
- package/src/styles/index.css +5 -0
- package/src/styles/sidebar-scrollbar.css +46 -0
- package/src/styles/tokens.css +712 -0
|
@@ -0,0 +1,712 @@
|
|
|
1
|
+
/* ERP Semantic Design Tokens - Tenant-Based Theming System */
|
|
2
|
+
:root {
|
|
3
|
+
/* ===== SEMANTIC COLOR TOKENS ===== */
|
|
4
|
+
|
|
5
|
+
/* Backgrounds */
|
|
6
|
+
--bg-app: 249 250 251; /* Main app background - soft gray */
|
|
7
|
+
--bg-surface: 255 255 255; /* Card/panel surfaces */
|
|
8
|
+
--bg-header: 255 255 255; /* Header/navbar background */
|
|
9
|
+
--bg-sidebar: 248 249 250; /* Sidebar background */
|
|
10
|
+
--bg-subtle: 246 247 249; /* Subtle backgrounds (table headers, etc.) */
|
|
11
|
+
--bg-hover: 243 244 246; /* Hover states */
|
|
12
|
+
--bg-selected: 239 246 255; /* Selected/active states */
|
|
13
|
+
--bg-overlay: 0 0 0; /* Modal overlays */
|
|
14
|
+
--bg-grid-header: 245 249 252; /* Very light grid header background */
|
|
15
|
+
|
|
16
|
+
/* Foregrounds */
|
|
17
|
+
--fg-default: 17 24 39; /* Default text color */
|
|
18
|
+
--fg-muted: 107 114 128; /* Secondary text */
|
|
19
|
+
--fg-subtle: 156 163 175; /* Tertiary text, placeholders */
|
|
20
|
+
--fg-inverse: 255 255 255; /* Text on dark backgrounds */
|
|
21
|
+
--fg-accent: 0 51 102; /* Accent text (links, highlights) #003366 */
|
|
22
|
+
|
|
23
|
+
/* Primary Color System (Main brand/accent) - Default #003366 */
|
|
24
|
+
--color-primary: 0 51 102; /* Primary brand color #003366 */
|
|
25
|
+
--color-primary-hover: 0 40 82; /* Primary hover state - darker #003366 */
|
|
26
|
+
--color-primary-subtle: 250 251 252; /* Very light primary backgrounds (0.02 opacity equivalent) */
|
|
27
|
+
--color-primary-muted: 102 153 204; /* Muted primary */
|
|
28
|
+
--color-primary-foreground: 255 255 255; /* Text on primary backgrounds */
|
|
29
|
+
|
|
30
|
+
/* Secondary Color System (Supporting actions) */
|
|
31
|
+
--color-secondary: 107 114 128; /* Secondary gray */
|
|
32
|
+
--color-secondary-hover: 75 85 99; /* Secondary hover state */
|
|
33
|
+
--color-secondary-subtle: 243 244 246; /* Light secondary backgrounds */
|
|
34
|
+
--color-secondary-muted: 156 163 175; /* Muted secondary */
|
|
35
|
+
--color-secondary-foreground: 255 255 255; /* Text on secondary backgrounds */
|
|
36
|
+
|
|
37
|
+
/* Tertiary Color System (Subtle actions/info) */
|
|
38
|
+
--color-tertiary: 168 85 247; /* Purple tertiary */
|
|
39
|
+
--color-tertiary-hover: 147 51 234; /* Tertiary hover state */
|
|
40
|
+
--color-tertiary-subtle: 243 232 255; /* Light tertiary backgrounds */
|
|
41
|
+
--color-tertiary-muted: 196 181 253; /* Muted tertiary */
|
|
42
|
+
--color-tertiary-foreground: 255 255 255; /* Text on tertiary backgrounds */
|
|
43
|
+
|
|
44
|
+
/* Legacy Accent (kept for compatibility) */
|
|
45
|
+
--color-accent: var(--color-primary);
|
|
46
|
+
--color-accent-hover: var(--color-primary-hover);
|
|
47
|
+
--color-accent-subtle: var(--color-primary-subtle);
|
|
48
|
+
--color-accent-muted: var(--color-primary-muted);
|
|
49
|
+
|
|
50
|
+
/* Borders */
|
|
51
|
+
--bd-default: 229 231 235; /* Default border color */
|
|
52
|
+
--bd-medium: 193 197 205; /* Medium borders (grid separators) */
|
|
53
|
+
--bd-strong: 156 163 175; /* Stronger borders */
|
|
54
|
+
--bd-subtle: 243 244 246; /* Subtle borders */
|
|
55
|
+
--bd-accent: 0 51 102; /* Accent borders (focus, active) #003366 */
|
|
56
|
+
|
|
57
|
+
/* Status Colors */
|
|
58
|
+
--color-success: 34 197 94;
|
|
59
|
+
--color-success-hover: 22 163 74;
|
|
60
|
+
--color-success-subtle: 220 252 231;
|
|
61
|
+
--color-success-muted: 134 239 172;
|
|
62
|
+
|
|
63
|
+
--color-warning: 245 158 11;
|
|
64
|
+
--color-warning-hover: 217 119 6;
|
|
65
|
+
--color-warning-subtle: 254 243 199;
|
|
66
|
+
--color-warning-muted: 253 230 138;
|
|
67
|
+
|
|
68
|
+
--color-error: 239 68 68;
|
|
69
|
+
--color-error-hover: 185 34 33;
|
|
70
|
+
--color-error-subtle: 254 226 226;
|
|
71
|
+
--color-error-muted: 252 165 165;
|
|
72
|
+
|
|
73
|
+
--color-info: 59 130 246;
|
|
74
|
+
--color-info-hover: 37 99 235;
|
|
75
|
+
--color-info-subtle: 219 234 254;
|
|
76
|
+
--color-info-muted: 147 197 253;
|
|
77
|
+
|
|
78
|
+
--color-orange: 249 115 22;
|
|
79
|
+
--color-orange-hover: 234 88 12;
|
|
80
|
+
--color-orange-subtle: 255 237 213;
|
|
81
|
+
--color-orange-muted: 253 186 116;
|
|
82
|
+
|
|
83
|
+
--color-purple: 147 51 234;
|
|
84
|
+
--color-purple-hover: 126 34 206;
|
|
85
|
+
--color-purple-subtle: 243 232 255;
|
|
86
|
+
--color-purple-muted: 196 181 253;
|
|
87
|
+
|
|
88
|
+
--color-sky: 14 165 233;
|
|
89
|
+
--color-sky-hover: 2 132 199;
|
|
90
|
+
--color-sky-subtle: 224 242 254;
|
|
91
|
+
--color-sky-muted: 125 211 252;
|
|
92
|
+
|
|
93
|
+
--color-neutral: 107 114 128;
|
|
94
|
+
--color-neutral-hover: 75 85 99;
|
|
95
|
+
--color-neutral-subtle: 243 244 246;
|
|
96
|
+
--color-neutral-muted: 209 213 219;
|
|
97
|
+
|
|
98
|
+
--color-teal: 20 184 166;
|
|
99
|
+
--color-teal-hover: 13 148 136;
|
|
100
|
+
--color-teal-subtle: 204 251 241;
|
|
101
|
+
--color-teal-muted: 94 234 212;
|
|
102
|
+
|
|
103
|
+
/* Icons */
|
|
104
|
+
--color-icon: var(--fg-muted); /* Default icon color - inherits from text */
|
|
105
|
+
--color-icon-hover: var(--fg-default); /* Icon hover state */
|
|
106
|
+
--color-icon-accent: 0 51 102; /* Accent icons #003366 */
|
|
107
|
+
|
|
108
|
+
/* ===== TYPOGRAPHY TOKENS ===== */
|
|
109
|
+
|
|
110
|
+
/* Font Family & Scaling */
|
|
111
|
+
--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
|
112
|
+
--font-scale: 1.0;
|
|
113
|
+
|
|
114
|
+
/* Font Sizes (with scaling support) */
|
|
115
|
+
--font-size-xs: calc(0.75rem * var(--font-scale));
|
|
116
|
+
--font-size-sm: calc(0.875rem * var(--font-scale));
|
|
117
|
+
--font-size-md: calc(0.875rem * var(--font-scale)); /* Base size */
|
|
118
|
+
--font-size-lg: calc(1rem * var(--font-scale));
|
|
119
|
+
--font-size-xl: calc(1.125rem * var(--font-scale));
|
|
120
|
+
--font-size-2xl: calc(1.375rem * var(--font-scale));
|
|
121
|
+
--font-size-3xl: calc(1.75rem * var(--font-scale));
|
|
122
|
+
--font-size-4xl: calc(2.25rem * var(--font-scale));
|
|
123
|
+
|
|
124
|
+
/* Line Heights */
|
|
125
|
+
--line-height-xs: 16px;
|
|
126
|
+
--line-height-sm: 20px;
|
|
127
|
+
--line-height-md: 20px;
|
|
128
|
+
--line-height-lg: 24px;
|
|
129
|
+
--line-height-xl: 28px;
|
|
130
|
+
--line-height-2xl: 32px;
|
|
131
|
+
--line-height-3xl: 36px;
|
|
132
|
+
--line-height-4xl: 44px;
|
|
133
|
+
|
|
134
|
+
/* Font Weights */
|
|
135
|
+
--font-weight-normal: 400;
|
|
136
|
+
--font-weight-medium: 500;
|
|
137
|
+
--font-weight-semibold: 600;
|
|
138
|
+
--font-weight-bold: 700;
|
|
139
|
+
|
|
140
|
+
/* ===== SPACING TOKENS ===== */
|
|
141
|
+
--space-1: 0.25rem;
|
|
142
|
+
--space-2: 0.5rem;
|
|
143
|
+
--space-3: 0.75rem;
|
|
144
|
+
--space-4: 1rem;
|
|
145
|
+
--space-5: 1.25rem;
|
|
146
|
+
--space-6: 1.5rem;
|
|
147
|
+
--space-8: 2rem;
|
|
148
|
+
--space-10: 2.5rem;
|
|
149
|
+
--space-12: 3rem;
|
|
150
|
+
--space-16: 4rem;
|
|
151
|
+
|
|
152
|
+
/* ===== RADIUS TOKENS ===== */
|
|
153
|
+
--radius-sm: 4px;
|
|
154
|
+
--radius-md: 8px;
|
|
155
|
+
--radius-lg: 12px;
|
|
156
|
+
--radius-xl: 16px;
|
|
157
|
+
--radius-full: 9999px;
|
|
158
|
+
|
|
159
|
+
/* ===== SHADOW TOKENS ===== */
|
|
160
|
+
--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
161
|
+
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
|
|
162
|
+
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
|
|
163
|
+
--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
|
|
164
|
+
|
|
165
|
+
/* ===== UTILITY CLASSES FOR TRAFFIC LIGHT COLORS ===== */
|
|
166
|
+
.text-error { color: rgb(var(--color-error)); }
|
|
167
|
+
.text-warning { color: rgb(var(--color-warning)); }
|
|
168
|
+
.text-success { color: rgb(var(--color-success)); }
|
|
169
|
+
.bg-error { background-color: rgb(var(--color-error)); }
|
|
170
|
+
.bg-warning { background-color: rgb(var(--color-warning)); }
|
|
171
|
+
.bg-success { background-color: rgb(var(--color-success)); }
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/* ===== DARK MODE OVERRIDES ===== */
|
|
175
|
+
.dark {
|
|
176
|
+
/* Lighter dark theme backgrounds - easier on eyes */
|
|
177
|
+
--bg-app: 24 24 27; /* Zinc-900 #18181b */
|
|
178
|
+
--bg-surface: 39 39 42; /* Zinc-800 #27272a */
|
|
179
|
+
--bg-header: 24 24 27; /* Header/navbar background */
|
|
180
|
+
--bg-sidebar: 32 32 35; /* Between app and surface */
|
|
181
|
+
--bg-subtle: 50 50 54; /* Subtle backgrounds */
|
|
182
|
+
--bg-hover: 58 58 63; /* Hover states */
|
|
183
|
+
--bg-selected: 63 63 70; /* Selected/active states - Zinc-700 */
|
|
184
|
+
--bg-overlay: 0 0 0; /* Modal overlays */
|
|
185
|
+
--bg-grid-header: 44 44 48; /* Grid header background */
|
|
186
|
+
|
|
187
|
+
/* Professional dark mode text colors */
|
|
188
|
+
--fg-default: 250 250 250; /* Zinc-50 - brighter text */
|
|
189
|
+
--fg-muted: 161 161 170; /* Zinc-400 */
|
|
190
|
+
--fg-subtle: 113 113 122; /* Zinc-500 */
|
|
191
|
+
--fg-inverse: 24 24 27; /* Dark text for light backgrounds */
|
|
192
|
+
--fg-accent: var(--color-primary); /* Accent text inherits from theme */
|
|
193
|
+
|
|
194
|
+
/* Lighter dark mode borders - more visible */
|
|
195
|
+
--bd-default: 63 63 70; /* Zinc-700 */
|
|
196
|
+
--bd-strong: 82 82 91; /* Zinc-600 */
|
|
197
|
+
--bd-subtle: 50 50 54; /* Subtle borders */
|
|
198
|
+
--bd-medium: 71 71 80; /* Medium borders (grid separators) */
|
|
199
|
+
--bd-accent: var(--color-primary); /* Accent borders inherit from theme */
|
|
200
|
+
|
|
201
|
+
/* Note: Primary colors are NOT overridden here - they inherit from theme variants */
|
|
202
|
+
|
|
203
|
+
/* Status colors for dark mode */
|
|
204
|
+
--color-success: 74 222 128;
|
|
205
|
+
--color-success-hover: 34 197 94;
|
|
206
|
+
--color-success-subtle: 20 83 45;
|
|
207
|
+
--color-success-muted: 34 197 94;
|
|
208
|
+
|
|
209
|
+
--color-warning: 251 191 36;
|
|
210
|
+
--color-warning-hover: 245 158 11;
|
|
211
|
+
--color-warning-subtle: 120 53 15;
|
|
212
|
+
--color-warning-muted: 245 158 11;
|
|
213
|
+
|
|
214
|
+
--color-error: 248 113 113;
|
|
215
|
+
--color-error-hover: 239 68 68;
|
|
216
|
+
--color-error-subtle: 127 29 29;
|
|
217
|
+
--color-error-muted: 239 68 68;
|
|
218
|
+
|
|
219
|
+
--color-info: 96 165 250;
|
|
220
|
+
--color-info-hover: 59 130 246;
|
|
221
|
+
--color-info-subtle: 30 58 138;
|
|
222
|
+
--color-info-muted: 37 99 235;
|
|
223
|
+
|
|
224
|
+
--color-orange: 251 146 60;
|
|
225
|
+
--color-orange-hover: 249 115 22;
|
|
226
|
+
--color-orange-subtle: 124 45 18;
|
|
227
|
+
--color-orange-muted: 234 88 12;
|
|
228
|
+
|
|
229
|
+
--color-purple: 192 132 252;
|
|
230
|
+
--color-purple-hover: 168 85 247;
|
|
231
|
+
--color-purple-subtle: 88 28 135;
|
|
232
|
+
--color-purple-muted: 147 51 234;
|
|
233
|
+
|
|
234
|
+
--color-sky: 56 189 248;
|
|
235
|
+
--color-sky-hover: 14 165 233;
|
|
236
|
+
--color-sky-subtle: 12 74 110;
|
|
237
|
+
--color-sky-muted: 2 132 199;
|
|
238
|
+
|
|
239
|
+
--color-neutral: 156 163 175;
|
|
240
|
+
--color-neutral-hover: 107 114 128;
|
|
241
|
+
--color-neutral-subtle: 55 65 81;
|
|
242
|
+
--color-neutral-muted: 75 85 99;
|
|
243
|
+
|
|
244
|
+
/* Icon colors */
|
|
245
|
+
--color-icon: var(--fg-muted);
|
|
246
|
+
--color-icon-hover: var(--fg-default);
|
|
247
|
+
--color-icon-accent: var(--color-primary);
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
/* ===== THEME VARIANTS ===== */
|
|
251
|
+
|
|
252
|
+
/* RED THEME */
|
|
253
|
+
.theme-red.light {
|
|
254
|
+
/* Primary colors (red theme) */
|
|
255
|
+
--color-primary: 185 28 28; /* Red-700 - Darker */
|
|
256
|
+
--color-primary-hover: 153 27 27; /* Red-800 */
|
|
257
|
+
--color-primary-subtle: 254 226 226; /* Red-100 */
|
|
258
|
+
--color-primary-muted: 248 113 113; /* Red-400 */
|
|
259
|
+
--color-primary-foreground: 255 255 255;
|
|
260
|
+
|
|
261
|
+
/* Secondary colors (rose for harmony) */
|
|
262
|
+
--color-secondary: 190 18 60; /* Rose-700 */
|
|
263
|
+
--color-secondary-hover: 159 18 57; /* Rose-800 */
|
|
264
|
+
--color-secondary-subtle: 255 228 230; /* Rose-100 */
|
|
265
|
+
--color-secondary-muted: 251 113 133; /* Rose-400 */
|
|
266
|
+
--color-secondary-foreground: 255 255 255;
|
|
267
|
+
|
|
268
|
+
/* Tertiary colors (amber complement) */
|
|
269
|
+
--color-tertiary: 180 83 9; /* Amber-700 */
|
|
270
|
+
--color-tertiary-hover: 146 64 14; /* Amber-800 */
|
|
271
|
+
--color-tertiary-subtle: 254 243 199; /* Amber-100 */
|
|
272
|
+
--color-tertiary-muted: 251 191 36; /* Amber-400 */
|
|
273
|
+
--color-tertiary-foreground: 255 255 255;
|
|
274
|
+
|
|
275
|
+
/* Legacy accent colors (compatibility) */
|
|
276
|
+
--color-accent: 185 28 28;
|
|
277
|
+
--color-accent-hover: 153 27 27;
|
|
278
|
+
--color-accent-subtle: 254 226 226;
|
|
279
|
+
--color-accent-muted: 248 113 113;
|
|
280
|
+
--fg-accent: 185 28 28;
|
|
281
|
+
--bd-accent: 185 28 28;
|
|
282
|
+
--color-icon-accent: 185 28 28;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
.theme-red.dark {
|
|
286
|
+
/* Primary colors (red theme - dark) */
|
|
287
|
+
--color-primary: 248 113 113; /* Red-400 */
|
|
288
|
+
--color-primary-hover: 239 68 68; /* Red-500 */
|
|
289
|
+
--color-primary-subtle: 127 29 29; /* Red-900 */
|
|
290
|
+
--color-primary-muted: 185 28 28; /* Red-700 */
|
|
291
|
+
--color-primary-foreground: 255 255 255;
|
|
292
|
+
|
|
293
|
+
/* Secondary colors (rose for harmony - dark) */
|
|
294
|
+
--color-secondary: 251 113 133; /* Rose-400 */
|
|
295
|
+
--color-secondary-hover: 244 63 94; /* Rose-500 */
|
|
296
|
+
--color-secondary-subtle: 136 19 55; /* Rose-900 */
|
|
297
|
+
--color-secondary-muted: 190 18 60; /* Rose-700 */
|
|
298
|
+
--color-secondary-foreground: 255 255 255;
|
|
299
|
+
|
|
300
|
+
/* Tertiary colors (amber complement - dark) */
|
|
301
|
+
--color-tertiary: 251 191 36; /* Amber-400 */
|
|
302
|
+
--color-tertiary-hover: 245 158 11; /* Amber-500 */
|
|
303
|
+
--color-tertiary-subtle: 120 53 15; /* Amber-900 */
|
|
304
|
+
--color-tertiary-muted: 180 83 9; /* Amber-700 */
|
|
305
|
+
--color-tertiary-foreground: 255 255 255;
|
|
306
|
+
|
|
307
|
+
/* Legacy accent colors (compatibility) */
|
|
308
|
+
--color-accent: 248 113 113;
|
|
309
|
+
--color-accent-hover: 239 68 68;
|
|
310
|
+
--color-accent-subtle: 127 29 29;
|
|
311
|
+
--color-accent-muted: 185 28 28;
|
|
312
|
+
--fg-accent: 248 113 113;
|
|
313
|
+
--bd-accent: 248 113 113;
|
|
314
|
+
--color-icon-accent: 248 113 113;
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
/* GREEN THEME */
|
|
318
|
+
.theme-green.light {
|
|
319
|
+
/* Primary colors (green theme) */
|
|
320
|
+
--color-primary: 4 120 87; /* Emerald-700 - Darker */
|
|
321
|
+
--color-primary-hover: 6 95 70; /* Emerald-800 */
|
|
322
|
+
--color-primary-subtle: 209 250 229; /* Emerald-100 */
|
|
323
|
+
--color-primary-muted: 52 211 153; /* Emerald-400 */
|
|
324
|
+
--color-primary-foreground: 255 255 255;
|
|
325
|
+
|
|
326
|
+
/* Secondary colors (blue complement) */
|
|
327
|
+
--color-secondary: 14 165 233; /* Sky-500 */
|
|
328
|
+
--color-secondary-hover: 2 132 199; /* Sky-600 */
|
|
329
|
+
--color-secondary-subtle: 224 242 254; /* Sky-100 */
|
|
330
|
+
--color-secondary-muted: 56 189 248; /* Sky-400 */
|
|
331
|
+
--color-secondary-foreground: 255 255 255;
|
|
332
|
+
|
|
333
|
+
/* Tertiary colors (teal complement) */
|
|
334
|
+
--color-tertiary: 20 184 166; /* Teal-500 */
|
|
335
|
+
--color-tertiary-hover: 15 118 110; /* Teal-600 */
|
|
336
|
+
--color-tertiary-subtle: 204 251 241; /* Teal-100 */
|
|
337
|
+
--color-tertiary-muted: 45 212 191; /* Teal-400 */
|
|
338
|
+
--color-tertiary-foreground: 255 255 255;
|
|
339
|
+
|
|
340
|
+
/* Legacy accent colors (compatibility) */
|
|
341
|
+
--color-accent: 4 120 87;
|
|
342
|
+
--color-accent-hover: 6 95 70;
|
|
343
|
+
--color-accent-subtle: 209 250 229;
|
|
344
|
+
--color-accent-muted: 52 211 153;
|
|
345
|
+
--fg-accent: 4 120 87;
|
|
346
|
+
--bd-accent: 4 120 87;
|
|
347
|
+
--color-icon-accent: 4 120 87;
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
.theme-green.dark {
|
|
351
|
+
/* Primary colors (green theme - dark) */
|
|
352
|
+
--color-primary: 52 211 153; /* Emerald-400 */
|
|
353
|
+
--color-primary-hover: 16 185 129; /* Emerald-500 */
|
|
354
|
+
--color-primary-subtle: 6 78 59; /* Emerald-900 */
|
|
355
|
+
--color-primary-muted: 4 120 87; /* Emerald-700 */
|
|
356
|
+
--color-primary-foreground: 255 255 255;
|
|
357
|
+
|
|
358
|
+
/* Secondary colors (blue complement - dark) */
|
|
359
|
+
--color-secondary: 56 189 248; /* Sky-400 */
|
|
360
|
+
--color-secondary-hover: 14 165 233; /* Sky-500 */
|
|
361
|
+
--color-secondary-subtle: 12 74 110; /* Sky-900 */
|
|
362
|
+
--color-secondary-muted: 2 132 199; /* Sky-600 */
|
|
363
|
+
--color-secondary-foreground: 255 255 255;
|
|
364
|
+
|
|
365
|
+
/* Tertiary colors (teal complement - dark) */
|
|
366
|
+
--color-tertiary: 45 212 191; /* Teal-400 */
|
|
367
|
+
--color-tertiary-hover: 20 184 166; /* Teal-500 */
|
|
368
|
+
--color-tertiary-subtle: 19 78 74; /* Teal-900 */
|
|
369
|
+
--color-tertiary-muted: 15 118 110; /* Teal-600 */
|
|
370
|
+
--color-tertiary-foreground: 255 255 255;
|
|
371
|
+
|
|
372
|
+
/* Legacy accent colors (compatibility) */
|
|
373
|
+
--color-accent: 52 211 153;
|
|
374
|
+
--color-accent-hover: 16 185 129;
|
|
375
|
+
--color-accent-subtle: 6 78 59;
|
|
376
|
+
--color-accent-muted: 4 120 87;
|
|
377
|
+
--fg-accent: 52 211 153;
|
|
378
|
+
--bd-accent: 52 211 153;
|
|
379
|
+
--color-icon-accent: 52 211 153;
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
/* PURPLE THEME */
|
|
384
|
+
.theme-purple.light {
|
|
385
|
+
/* Primary colors (purple theme) */
|
|
386
|
+
--color-primary: 124 58 237; /* Violet-600 - Darker */
|
|
387
|
+
--color-primary-hover: 109 40 217; /* Violet-700 */
|
|
388
|
+
--color-primary-subtle: 237 233 254; /* Violet-100 */
|
|
389
|
+
--color-primary-muted: 167 139 250; /* Violet-400 */
|
|
390
|
+
--color-primary-foreground: 255 255 255;
|
|
391
|
+
|
|
392
|
+
/* Secondary colors (fuchsia complement) */
|
|
393
|
+
--color-secondary: 192 38 211; /* Fuchsia-600 */
|
|
394
|
+
--color-secondary-hover: 162 28 175; /* Fuchsia-700 */
|
|
395
|
+
--color-secondary-subtle: 250 232 255; /* Fuchsia-100 */
|
|
396
|
+
--color-secondary-muted: 240 171 252; /* Fuchsia-400 */
|
|
397
|
+
--color-secondary-foreground: 255 255 255;
|
|
398
|
+
|
|
399
|
+
/* Tertiary colors (indigo complement) */
|
|
400
|
+
--color-tertiary: 79 70 229; /* Indigo-600 */
|
|
401
|
+
--color-tertiary-hover: 67 56 202; /* Indigo-700 */
|
|
402
|
+
--color-tertiary-subtle: 224 231 255; /* Indigo-100 */
|
|
403
|
+
--color-tertiary-muted: 129 140 248; /* Indigo-400 */
|
|
404
|
+
--color-tertiary-foreground: 255 255 255;
|
|
405
|
+
|
|
406
|
+
/* Legacy accent colors (compatibility) */
|
|
407
|
+
--color-accent: 124 58 237;
|
|
408
|
+
--color-accent-hover: 109 40 217;
|
|
409
|
+
--color-accent-subtle: 237 233 254;
|
|
410
|
+
--color-accent-muted: 167 139 250;
|
|
411
|
+
--fg-accent: 124 58 237;
|
|
412
|
+
--bd-accent: 124 58 237;
|
|
413
|
+
--color-icon-accent: 124 58 237;
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
.theme-purple.dark {
|
|
417
|
+
/* Primary colors (purple theme - dark) */
|
|
418
|
+
--color-primary: 167 139 250; /* Violet-400 */
|
|
419
|
+
--color-primary-hover: 139 92 246; /* Violet-500 */
|
|
420
|
+
--color-primary-subtle: 76 29 149; /* Violet-900 */
|
|
421
|
+
--color-primary-muted: 124 58 237; /* Violet-600 */
|
|
422
|
+
--color-primary-foreground: 255 255 255;
|
|
423
|
+
|
|
424
|
+
/* Secondary colors (fuchsia complement - dark) */
|
|
425
|
+
--color-secondary: 240 171 252; /* Fuchsia-400 */
|
|
426
|
+
--color-secondary-hover: 232 121 249; /* Fuchsia-500 */
|
|
427
|
+
--color-secondary-subtle: 112 26 117; /* Fuchsia-900 */
|
|
428
|
+
--color-secondary-muted: 192 38 211; /* Fuchsia-600 */
|
|
429
|
+
--color-secondary-foreground: 255 255 255;
|
|
430
|
+
|
|
431
|
+
/* Tertiary colors (indigo complement - dark) */
|
|
432
|
+
--color-tertiary: 129 140 248; /* Indigo-400 */
|
|
433
|
+
--color-tertiary-hover: 99 102 241; /* Indigo-500 */
|
|
434
|
+
--color-tertiary-subtle: 49 46 129; /* Indigo-900 */
|
|
435
|
+
--color-tertiary-muted: 79 70 229; /* Indigo-600 */
|
|
436
|
+
--color-tertiary-foreground: 255 255 255;
|
|
437
|
+
|
|
438
|
+
/* Legacy accent colors (compatibility) */
|
|
439
|
+
--color-accent: 167 139 250;
|
|
440
|
+
--color-accent-hover: 139 92 246;
|
|
441
|
+
--color-accent-subtle: 76 29 149;
|
|
442
|
+
--color-accent-muted: 124 58 237;
|
|
443
|
+
--fg-accent: 167 139 250;
|
|
444
|
+
--bd-accent: 167 139 250;
|
|
445
|
+
--color-icon-accent: 167 139 250;
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
/* ORANGE THEME */
|
|
449
|
+
.theme-orange.light {
|
|
450
|
+
/* Primary colors (orange theme) */
|
|
451
|
+
--color-primary: 194 65 12; /* Orange-700 - Darker */
|
|
452
|
+
--color-primary-hover: 154 52 18; /* Orange-800 */
|
|
453
|
+
--color-primary-subtle: 255 237 213; /* Orange-100 */
|
|
454
|
+
--color-primary-muted: 251 146 60; /* Orange-400 */
|
|
455
|
+
--color-primary-foreground: 255 255 255;
|
|
456
|
+
|
|
457
|
+
/* Secondary colors (amber complement) */
|
|
458
|
+
--color-secondary: 180 83 9; /* Amber-700 */
|
|
459
|
+
--color-secondary-hover: 146 64 14; /* Amber-800 */
|
|
460
|
+
--color-secondary-subtle: 254 243 199; /* Amber-100 */
|
|
461
|
+
--color-secondary-muted: 251 191 36; /* Amber-400 */
|
|
462
|
+
--color-secondary-foreground: 255 255 255;
|
|
463
|
+
|
|
464
|
+
/* Tertiary colors (red complement) */
|
|
465
|
+
--color-tertiary: 185 28 28; /* Red-700 */
|
|
466
|
+
--color-tertiary-hover: 153 27 27; /* Red-800 */
|
|
467
|
+
--color-tertiary-subtle: 254 226 226; /* Red-100 */
|
|
468
|
+
--color-tertiary-muted: 248 113 113; /* Red-400 */
|
|
469
|
+
--color-tertiary-foreground: 255 255 255;
|
|
470
|
+
|
|
471
|
+
/* Legacy accent colors (compatibility) */
|
|
472
|
+
--color-accent: 194 65 12;
|
|
473
|
+
--color-accent-hover: 154 52 18;
|
|
474
|
+
--color-accent-subtle: 255 237 213;
|
|
475
|
+
--color-accent-muted: 251 146 60;
|
|
476
|
+
--fg-accent: 194 65 12;
|
|
477
|
+
--bd-accent: 194 65 12;
|
|
478
|
+
--color-icon-accent: 194 65 12;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
.theme-orange.dark {
|
|
482
|
+
/* Primary colors (orange theme - dark) */
|
|
483
|
+
--color-primary: 251 146 60; /* Orange-400 */
|
|
484
|
+
--color-primary-hover: 249 115 22; /* Orange-500 */
|
|
485
|
+
--color-primary-subtle: 124 45 18; /* Orange-900 */
|
|
486
|
+
--color-primary-muted: 194 65 12; /* Orange-700 */
|
|
487
|
+
--color-primary-foreground: 255 255 255;
|
|
488
|
+
|
|
489
|
+
/* Secondary colors (amber complement - dark) */
|
|
490
|
+
--color-secondary: 251 191 36; /* Amber-400 */
|
|
491
|
+
--color-secondary-hover: 245 158 11; /* Amber-500 */
|
|
492
|
+
--color-secondary-subtle: 120 53 15; /* Amber-900 */
|
|
493
|
+
--color-secondary-muted: 180 83 9; /* Amber-700 */
|
|
494
|
+
--color-secondary-foreground: 255 255 255;
|
|
495
|
+
|
|
496
|
+
/* Tertiary colors (red complement - dark) */
|
|
497
|
+
--color-tertiary: 248 113 113; /* Red-400 */
|
|
498
|
+
--color-tertiary-hover: 239 68 68; /* Red-500 */
|
|
499
|
+
--color-tertiary-subtle: 127 29 29; /* Red-900 */
|
|
500
|
+
--color-tertiary-muted: 185 28 28; /* Red-700 */
|
|
501
|
+
--color-tertiary-foreground: 255 255 255;
|
|
502
|
+
|
|
503
|
+
/* Legacy accent colors (compatibility) */
|
|
504
|
+
--color-accent: 251 146 60;
|
|
505
|
+
--color-accent-hover: 249 115 22;
|
|
506
|
+
--color-accent-subtle: 124 45 18;
|
|
507
|
+
--color-accent-muted: 194 65 12;
|
|
508
|
+
--fg-accent: 251 146 60;
|
|
509
|
+
--bd-accent: 251 146 60;
|
|
510
|
+
--color-icon-accent: 251 146 60;
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
/* BLACK THEME */
|
|
514
|
+
.theme-black.light {
|
|
515
|
+
/* Primary colors (black theme) */
|
|
516
|
+
--color-primary: 0 0 0; /* Pure Black */
|
|
517
|
+
--color-primary-hover: 31 31 31; /* Gray-900 */
|
|
518
|
+
--color-primary-subtle: 245 245 245; /* Gray-100 */
|
|
519
|
+
--color-primary-muted: 115 115 115; /* Gray-500 */
|
|
520
|
+
--color-primary-foreground: 255 255 255;
|
|
521
|
+
|
|
522
|
+
/* Secondary colors (dark gray) */
|
|
523
|
+
--color-secondary: 38 38 38; /* Gray-800 */
|
|
524
|
+
--color-secondary-hover: 64 64 64; /* Gray-700 */
|
|
525
|
+
--color-secondary-subtle: 250 250 250; /* Gray-50 */
|
|
526
|
+
--color-secondary-muted: 163 163 163; /* Gray-400 */
|
|
527
|
+
--color-secondary-foreground: 255 255 255;
|
|
528
|
+
|
|
529
|
+
/* Tertiary colors (charcoal) */
|
|
530
|
+
--color-tertiary: 82 82 82; /* Gray-600 */
|
|
531
|
+
--color-tertiary-hover: 115 115 115; /* Gray-500 */
|
|
532
|
+
--color-tertiary-subtle: 245 245 245; /* Gray-100 */
|
|
533
|
+
--color-tertiary-muted: 212 212 212; /* Gray-300 */
|
|
534
|
+
--color-tertiary-foreground: 255 255 255;
|
|
535
|
+
|
|
536
|
+
/* Legacy accent colors (compatibility) */
|
|
537
|
+
--color-accent: 0 0 0;
|
|
538
|
+
--color-accent-hover: 31 31 31;
|
|
539
|
+
--color-accent-subtle: 245 245 245;
|
|
540
|
+
--color-accent-muted: 115 115 115;
|
|
541
|
+
--fg-accent: 0 0 0;
|
|
542
|
+
--bd-accent: 0 0 0;
|
|
543
|
+
--color-icon-accent: 0 0 0;
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
.theme-black.dark {
|
|
547
|
+
/* Primary colors (black theme - dark) */
|
|
548
|
+
--color-primary: 64 64 64; /* Gray-700 */
|
|
549
|
+
--color-primary-hover: 82 82 82; /* Gray-600 */
|
|
550
|
+
--color-primary-subtle: 10 10 10; /* Almost black */
|
|
551
|
+
--color-primary-muted: 38 38 38; /* Gray-800 */
|
|
552
|
+
--color-primary-foreground: 255 255 255;
|
|
553
|
+
|
|
554
|
+
/* Secondary colors (dark gray - dark) */
|
|
555
|
+
--color-secondary: 82 82 82; /* Gray-600 */
|
|
556
|
+
--color-secondary-hover: 115 115 115; /* Gray-500 */
|
|
557
|
+
--color-secondary-subtle: 23 23 23; /* Gray-900 */
|
|
558
|
+
--color-secondary-muted: 64 64 64; /* Gray-700 */
|
|
559
|
+
--color-secondary-foreground: 255 255 255;
|
|
560
|
+
|
|
561
|
+
/* Tertiary colors (charcoal - dark) */
|
|
562
|
+
--color-tertiary: 115 115 115; /* Gray-500 */
|
|
563
|
+
--color-tertiary-hover: 163 163 163; /* Gray-400 */
|
|
564
|
+
--color-tertiary-subtle: 31 31 31; /* Gray-900 */
|
|
565
|
+
--color-tertiary-muted: 82 82 82; /* Gray-600 */
|
|
566
|
+
--color-tertiary-foreground: 255 255 255;
|
|
567
|
+
|
|
568
|
+
/* Legacy accent colors (compatibility) */
|
|
569
|
+
--color-accent: 64 64 64;
|
|
570
|
+
--color-accent-hover: 82 82 82;
|
|
571
|
+
--color-accent-subtle: 10 10 10;
|
|
572
|
+
--color-accent-muted: 38 38 38;
|
|
573
|
+
--fg-accent: 64 64 64;
|
|
574
|
+
--bd-accent: 64 64 64;
|
|
575
|
+
--color-icon-accent: 64 64 64;
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
/* DEFAULT THEME - Navy Blue #003366 */
|
|
579
|
+
.theme-default.light {
|
|
580
|
+
/* Primary colors (default theme) - #003366 navy blue */
|
|
581
|
+
--color-primary: 0 51 102 !important; /* #003366 */
|
|
582
|
+
--color-primary-hover: 0 40 82 !important; /* Darker #003366 */
|
|
583
|
+
--color-primary-subtle: 230 240 250 !important; /* Light navy backgrounds */
|
|
584
|
+
--color-primary-muted: 102 153 204 !important; /* Muted navy */
|
|
585
|
+
--color-primary-foreground: 255 255 255 !important;
|
|
586
|
+
|
|
587
|
+
/* Secondary colors (gray for balance) */
|
|
588
|
+
--color-secondary: 107 114 128 !important; /* Gray-500 */
|
|
589
|
+
--color-secondary-hover: 75 85 99 !important; /* Gray-600 */
|
|
590
|
+
--color-secondary-subtle: 243 244 246 !important; /* Gray-100 */
|
|
591
|
+
--color-secondary-muted: 156 163 175 !important; /* Gray-400 */
|
|
592
|
+
--color-secondary-foreground: 255 255 255 !important;
|
|
593
|
+
|
|
594
|
+
/* Tertiary colors (complementary blue) */
|
|
595
|
+
--color-tertiary: 59 130 246 !important; /* Blue-500 */
|
|
596
|
+
--color-tertiary-hover: 37 99 235 !important; /* Blue-600 */
|
|
597
|
+
--color-tertiary-subtle: 219 234 254 !important; /* Blue-100 */
|
|
598
|
+
--color-tertiary-muted: 147 197 253 !important; /* Blue-300 */
|
|
599
|
+
--color-tertiary-foreground: 255 255 255 !important;
|
|
600
|
+
|
|
601
|
+
/* Legacy accent colors (compatibility) */
|
|
602
|
+
--color-accent: 0 51 102 !important;
|
|
603
|
+
--color-accent-hover: 0 40 82 !important;
|
|
604
|
+
--color-accent-subtle: 230 240 250 !important;
|
|
605
|
+
--color-accent-muted: 102 153 204 !important;
|
|
606
|
+
--fg-accent: 0 51 102 !important;
|
|
607
|
+
--bd-accent: 0 51 102 !important;
|
|
608
|
+
--color-icon-accent: 0 51 102 !important;
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
.theme-default.dark {
|
|
612
|
+
/* Primary colors (default theme - dark) - #003366 navy adapted for dark mode */
|
|
613
|
+
--color-primary: 0 51 102 !important; /* Your exact #003366 navy blue */
|
|
614
|
+
--color-primary-hover: 0 40 82 !important; /* Darker #003366 navy hover */
|
|
615
|
+
--color-primary-subtle: 0 25 51 !important; /* Very dark navy backgrounds */
|
|
616
|
+
--color-primary-muted: 51 102 153 !important; /* Muted navy */
|
|
617
|
+
--color-primary-foreground: 255 255 255 !important;
|
|
618
|
+
|
|
619
|
+
/* Secondary colors (gray for balance - dark) */
|
|
620
|
+
--color-secondary: 148 163 184 !important; /* Gray-400 */
|
|
621
|
+
--color-secondary-hover: 203 213 225 !important; /* Gray-300 */
|
|
622
|
+
--color-secondary-subtle: 51 65 85 !important; /* Gray-700 */
|
|
623
|
+
--color-secondary-muted: 71 85 105 !important; /* Gray-600 */
|
|
624
|
+
--color-secondary-foreground: 15 23 42 !important;
|
|
625
|
+
|
|
626
|
+
/* Tertiary colors (complementary blue - dark) */
|
|
627
|
+
--color-tertiary: 96 165 250 !important; /* Blue-400 */
|
|
628
|
+
--color-tertiary-hover: 59 130 246 !important; /* Blue-500 */
|
|
629
|
+
--color-tertiary-subtle: 30 58 138 !important; /* Blue-900 */
|
|
630
|
+
--color-tertiary-muted: 37 99 235 !important; /* Blue-600 */
|
|
631
|
+
--color-tertiary-foreground: 255 255 255 !important;
|
|
632
|
+
|
|
633
|
+
/* Legacy accent colors (compatibility) */
|
|
634
|
+
--color-accent: 0 51 102 !important;
|
|
635
|
+
--color-accent-hover: 0 40 82 !important;
|
|
636
|
+
--color-accent-subtle: 0 25 51 !important;
|
|
637
|
+
--color-accent-muted: 51 102 153 !important;
|
|
638
|
+
--fg-accent: 0 51 102 !important;
|
|
639
|
+
--bd-accent: 0 51 102 !important;
|
|
640
|
+
--color-icon-accent: 0 51 102 !important;
|
|
641
|
+
}
|
|
642
|
+
|
|
643
|
+
/* ===== ACCESSIBILITY TOKENS ===== */
|
|
644
|
+
|
|
645
|
+
/* Focus Ring - WCAG AA compliant */
|
|
646
|
+
.focus-ring-default {
|
|
647
|
+
--focus-ring-color: var(--color-accent);
|
|
648
|
+
--focus-ring-width: 2px;
|
|
649
|
+
--focus-ring-offset: 2px;
|
|
650
|
+
--focus-ring-style: solid;
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
/* High Contrast Mode Support */
|
|
654
|
+
@media (prefers-contrast: high) {
|
|
655
|
+
:root {
|
|
656
|
+
--bd-default: 0 0 0;
|
|
657
|
+
--bd-strong: 0 0 0;
|
|
658
|
+
--fg-muted: var(--fg-default);
|
|
659
|
+
}
|
|
660
|
+
}
|
|
661
|
+
|
|
662
|
+
/* Reduced Motion Support */
|
|
663
|
+
@media (prefers-reduced-motion: reduce) {
|
|
664
|
+
:root {
|
|
665
|
+
--transition-duration: 0ms;
|
|
666
|
+
--animation-duration: 0ms;
|
|
667
|
+
}
|
|
668
|
+
}
|
|
669
|
+
|
|
670
|
+
/* Floating bubble animation (Next.js-style gentle bob) */
|
|
671
|
+
@keyframes floating-bubble {
|
|
672
|
+
0%, 100% {
|
|
673
|
+
transform: translateY(0px);
|
|
674
|
+
box-shadow: 0 4px 20px rgba(0,0,0,0.15);
|
|
675
|
+
}
|
|
676
|
+
50% {
|
|
677
|
+
transform: translateY(-8px);
|
|
678
|
+
box-shadow: 0 12px 28px rgba(0,0,0,0.2);
|
|
679
|
+
}
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
.animate-floating-bubble {
|
|
683
|
+
animation: floating-bubble 3s ease-in-out infinite;
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
.animate-floating-bubble:hover {
|
|
687
|
+
animation-play-state: paused;
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
/* Synthia sparkle logo animation — slow rotate + pulse scale */
|
|
691
|
+
@keyframes synthia-sparkle {
|
|
692
|
+
0%, 100% {
|
|
693
|
+
transform: rotate(0deg) scale(1);
|
|
694
|
+
filter: drop-shadow(0 0 2px rgba(var(--color-primary), 0.3));
|
|
695
|
+
}
|
|
696
|
+
25% {
|
|
697
|
+
transform: rotate(5deg) scale(1.06);
|
|
698
|
+
filter: drop-shadow(0 0 6px rgba(var(--color-primary), 0.5));
|
|
699
|
+
}
|
|
700
|
+
50% {
|
|
701
|
+
transform: rotate(0deg) scale(1);
|
|
702
|
+
filter: drop-shadow(0 0 2px rgba(var(--color-primary), 0.3));
|
|
703
|
+
}
|
|
704
|
+
75% {
|
|
705
|
+
transform: rotate(-5deg) scale(1.06);
|
|
706
|
+
filter: drop-shadow(0 0 6px rgba(var(--color-primary), 0.5));
|
|
707
|
+
}
|
|
708
|
+
}
|
|
709
|
+
|
|
710
|
+
.animate-synthia-sparkle {
|
|
711
|
+
animation: synthia-sparkle 4s ease-in-out infinite;
|
|
712
|
+
}
|