@j3m-quantum/ui 0.9.1 → 1.0.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 +48 -11
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/styles/index.css +210 -382
- package/package.json +1 -1
package/dist/styles/index.css
CHANGED
|
@@ -1,109 +1,69 @@
|
|
|
1
1
|
/* ========================================
|
|
2
2
|
J3M QUANTUM UI - Complete Theme
|
|
3
|
-
|
|
3
|
+
Radix 12-Step + Shadcn HSL Format
|
|
4
4
|
|
|
5
5
|
Usage:
|
|
6
6
|
@import "tailwindcss";
|
|
7
7
|
@import "@j3m-quantum/ui/styles";
|
|
8
|
+
|
|
9
|
+
Color Format: HSL without wrapper for opacity support
|
|
10
|
+
background: hsl(var(--primary));
|
|
11
|
+
background: hsl(var(--primary) / 0.5);
|
|
8
12
|
======================================== */
|
|
9
13
|
|
|
10
14
|
/* ========================================
|
|
11
|
-
|
|
12
|
-
|
|
15
|
+
COLOR SCALES (Radix 12-Step, HSL Format)
|
|
16
|
+
|
|
17
|
+
Step Usage Guide:
|
|
18
|
+
1-2: Backgrounds (app, subtle)
|
|
19
|
+
3-5: Interactive backgrounds (element, hover, active)
|
|
20
|
+
6-8: Borders (subtle, element, hover)
|
|
21
|
+
9-10: Solid colors (buttons, hover)
|
|
22
|
+
11-12: Text (low-contrast, high-contrast)
|
|
13
23
|
======================================== */
|
|
14
24
|
|
|
15
25
|
:root {
|
|
16
|
-
/*
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
--j3m-
|
|
20
|
-
--j3m-
|
|
21
|
-
--j3m-
|
|
22
|
-
--j3m-
|
|
23
|
-
--j3m-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
--j3m-
|
|
27
|
-
--j3m-
|
|
28
|
-
--j3m-
|
|
29
|
-
--j3m-
|
|
30
|
-
--j3m-
|
|
31
|
-
--j3m-neutral-400: #BBBBBB;
|
|
32
|
-
--j3m-neutral-500: #A4A4A4;
|
|
33
|
-
--j3m-neutral-600: #8E8E8E;
|
|
34
|
-
--j3m-neutral-700: #777777;
|
|
35
|
-
--j3m-neutral-750: #747474;
|
|
36
|
-
--j3m-neutral-800: #606060;
|
|
37
|
-
--j3m-neutral-900: #4A4A4A;
|
|
38
|
-
--j3m-neutral-1000: #333333;
|
|
39
|
-
|
|
40
|
-
/* Status Colors */
|
|
41
|
-
--j3m-red-100: #FB3748;
|
|
42
|
-
--j3m-red-200: #D00416;
|
|
43
|
-
--j3m-yellow-100: #FFDB43;
|
|
44
|
-
--j3m-yellow-200: #DFB400;
|
|
45
|
-
--j3m-green-100: #84EBB4;
|
|
46
|
-
--j3m-green-200: #1FC16B;
|
|
26
|
+
/* ========================================
|
|
27
|
+
ORANGE SCALE (12-step, brand #F58446 at step 9)
|
|
28
|
+
======================================== */
|
|
29
|
+
--j3m-orange-1: 30 100% 99%;
|
|
30
|
+
--j3m-orange-2: 33 100% 96%;
|
|
31
|
+
--j3m-orange-3: 32 98% 91%;
|
|
32
|
+
--j3m-orange-4: 31 97% 83%;
|
|
33
|
+
--j3m-orange-5: 27 96% 72%;
|
|
34
|
+
--j3m-orange-6: 27 96% 61%;
|
|
35
|
+
--j3m-orange-7: 25 95% 53%;
|
|
36
|
+
--j3m-orange-8: 21 90% 48%;
|
|
37
|
+
--j3m-orange-9: 24 91% 62%;
|
|
38
|
+
--j3m-orange-10: 22 92% 54%;
|
|
39
|
+
--j3m-orange-11: 18 85% 40%;
|
|
40
|
+
--j3m-orange-12: 15 63% 28%;
|
|
47
41
|
|
|
48
42
|
/* ========================================
|
|
49
|
-
|
|
50
|
-
Purpose-driven aliases
|
|
43
|
+
GRAY SCALE (12-step Radix official)
|
|
51
44
|
======================================== */
|
|
45
|
+
--j3m-gray-1: 0 0% 99%;
|
|
46
|
+
--j3m-gray-2: 0 0% 98%;
|
|
47
|
+
--j3m-gray-3: 0 0% 94%;
|
|
48
|
+
--j3m-gray-4: 0 0% 91%;
|
|
49
|
+
--j3m-gray-5: 0 0% 88%;
|
|
50
|
+
--j3m-gray-6: 0 0% 85%;
|
|
51
|
+
--j3m-gray-7: 0 0% 81%;
|
|
52
|
+
--j3m-gray-8: 0 0% 73%;
|
|
53
|
+
--j3m-gray-9: 0 0% 55%;
|
|
54
|
+
--j3m-gray-10: 0 0% 51%;
|
|
55
|
+
--j3m-gray-11: 0 0% 39%;
|
|
56
|
+
--j3m-gray-12: 0 0% 13%;
|
|
52
57
|
|
|
53
|
-
/*
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
--
|
|
57
|
-
--
|
|
58
|
-
--
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
--
|
|
62
|
-
--color-text-muted: rgba(0, 0, 0, 0.5);
|
|
63
|
-
--color-text-soft: rgba(0, 0, 0, 0.4);
|
|
64
|
-
--color-text-on-accent: #FFFFFF;
|
|
65
|
-
--color-text-on-accent-muted: rgba(255, 255, 255, 0.5);
|
|
66
|
-
|
|
67
|
-
/* Border Colors */
|
|
68
|
-
--color-border-subtle: var(--j3m-neutral-200);
|
|
69
|
-
--color-border-strong: var(--j3m-neutral-400);
|
|
70
|
-
|
|
71
|
-
/* Accent/Interactive Colors */
|
|
72
|
-
--color-accent: var(--j3m-primary-250);
|
|
73
|
-
--color-accent-hover: var(--j3m-primary-300);
|
|
74
|
-
--color-accent-active: var(--j3m-primary-350);
|
|
75
|
-
|
|
76
|
-
/* Interactive Component Patterns */
|
|
77
|
-
--color-interactive-bg: var(--j3m-primary-250);
|
|
78
|
-
--color-interactive-text: var(--j3m-neutral-100);
|
|
79
|
-
--color-cta-bg: var(--j3m-primary-300);
|
|
80
|
-
--color-cta-text: var(--j3m-neutral-100);
|
|
81
|
-
--color-focus-ring: rgba(245, 132, 70, 0.2);
|
|
82
|
-
--color-hover-overlay-light: rgba(255, 255, 255, 0.2);
|
|
83
|
-
--color-hover-overlay-dark: rgba(51, 51, 51, 0.1);
|
|
84
|
-
|
|
85
|
-
/* Status Semantic */
|
|
86
|
-
--color-success-bg: var(--j3m-green-100);
|
|
87
|
-
--color-success-border: var(--j3m-green-200);
|
|
88
|
-
--color-success-text: var(--j3m-green-200);
|
|
89
|
-
--color-warning-bg: var(--j3m-yellow-100);
|
|
90
|
-
--color-warning-border: var(--j3m-yellow-200);
|
|
91
|
-
--color-warning-text: var(--j3m-yellow-200);
|
|
92
|
-
--color-error-bg: var(--j3m-red-100);
|
|
93
|
-
--color-error-border: var(--j3m-red-200);
|
|
94
|
-
--color-error-text: var(--j3m-red-100);
|
|
95
|
-
|
|
96
|
-
/* Tooltip */
|
|
97
|
-
--color-tooltip-bg: var(--j3m-neutral-1000);
|
|
98
|
-
--color-tooltip-text: var(--j3m-neutral-100);
|
|
99
|
-
|
|
100
|
-
/* Progress */
|
|
101
|
-
--color-progress-fill: var(--j3m-primary-250);
|
|
102
|
-
--color-progress-track: rgba(255, 255, 255, 0.5);
|
|
103
|
-
|
|
104
|
-
/* Form Controls */
|
|
105
|
-
--color-checkbox-bg: rgba(255, 255, 255, 0.5);
|
|
106
|
-
--color-radio-bg: rgba(255, 255, 255, 0.5);
|
|
58
|
+
/* ========================================
|
|
59
|
+
STATUS COLORS (HSL format)
|
|
60
|
+
======================================== */
|
|
61
|
+
--j3m-red-9: 355 91% 60%;
|
|
62
|
+
--j3m-red-10: 355 82% 42%;
|
|
63
|
+
--j3m-yellow-9: 45 100% 63%;
|
|
64
|
+
--j3m-yellow-10: 45 100% 44%;
|
|
65
|
+
--j3m-green-9: 152 72% 72%;
|
|
66
|
+
--j3m-green-10: 152 76% 44%;
|
|
107
67
|
|
|
108
68
|
/* ========================================
|
|
109
69
|
RADIUS TOKENS
|
|
@@ -128,7 +88,7 @@
|
|
|
128
88
|
--j3m-spacing-xl: 32px;
|
|
129
89
|
|
|
130
90
|
/* ========================================
|
|
131
|
-
STROKE
|
|
91
|
+
STROKE WIDTH TOKENS
|
|
132
92
|
======================================== */
|
|
133
93
|
--j3m-stroke-none: 0px;
|
|
134
94
|
--j3m-stroke-s: 1px;
|
|
@@ -136,108 +96,58 @@
|
|
|
136
96
|
--j3m-stroke-l: 3px;
|
|
137
97
|
--j3m-stroke-xl: 4px;
|
|
138
98
|
|
|
139
|
-
/* Stroke Colors (opacity-based) */
|
|
140
|
-
--j3m-stroke-dark-5: rgba(0, 0, 0, 0.05);
|
|
141
|
-
--j3m-stroke-dark-10: rgba(0, 0, 0, 0.1);
|
|
142
|
-
--j3m-stroke-dark-20: rgba(0, 0, 0, 0.2);
|
|
143
|
-
--j3m-stroke-light-5: rgba(255, 255, 255, 0.05);
|
|
144
|
-
--j3m-stroke-light-10: rgba(255, 255, 255, 0.1);
|
|
145
|
-
--j3m-stroke-light-20: rgba(255, 255, 255, 0.2);
|
|
146
|
-
--j3m-stroke-white: rgba(255, 255, 255, 1);
|
|
147
|
-
--j3m-stroke-primary-10: rgba(243, 108, 33, 0.1);
|
|
148
|
-
--j3m-stroke-primary-350-50: rgba(234, 91, 12, 0.5);
|
|
149
|
-
--j3m-stroke-neutral-1000-10: rgba(51, 51, 51, 0.1);
|
|
150
|
-
|
|
151
99
|
/* ========================================
|
|
152
|
-
GLASS EFFECTS
|
|
100
|
+
GLASS EFFECTS (Essential 8)
|
|
153
101
|
======================================== */
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
--j3m-
|
|
157
|
-
--j3m-
|
|
158
|
-
--j3m-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
--j3m-glass-
|
|
162
|
-
--j3m-glass-light-20: rgba(255, 255, 255, 0.2);
|
|
163
|
-
--j3m-glass-light-40: rgba(255, 255, 255, 0.4);
|
|
164
|
-
--j3m-glass-light-50: rgba(255, 255, 255, 0.5);
|
|
165
|
-
--j3m-glass-light-70: rgba(255, 255, 255, 0.8);
|
|
166
|
-
--j3m-glass-light-80: rgba(255, 255, 255, 0.8);
|
|
167
|
-
--j3m-glass-light-subtle: rgba(255, 255, 255, 0.1);
|
|
168
|
-
--j3m-glass-light: rgba(255, 255, 255, 0.5);
|
|
169
|
-
--j3m-glass-light-hover: rgba(255, 255, 255, 0.8);
|
|
170
|
-
--j3m-glass-light-strong: rgba(255, 255, 255, 0.81);
|
|
171
|
-
--j3m-glass-dark: rgba(51, 51, 51, 0.6);
|
|
172
|
-
--j3m-glass-dark-hover: rgba(51, 51, 51, 0.7);
|
|
173
|
-
--j3m-glass-dark-strong: rgba(51, 51, 51, 0.85);
|
|
174
|
-
--j3m-glass-neutral-subtle: rgba(227, 227, 227, 0.3);
|
|
175
|
-
--j3m-glass-neutral: rgba(227, 227, 227, 0.5);
|
|
176
|
-
--j3m-glass-neutral-strong: rgba(227, 227, 227, 0.7);
|
|
177
|
-
--j3m-glass-primary: rgba(243, 108, 33, 0.1);
|
|
178
|
-
--j3m-glass-primary-highlight: rgba(243, 108, 33, 0.2);
|
|
179
|
-
|
|
180
|
-
/* Frosted Glass (enhanced) */
|
|
181
|
-
--j3m-glass-frosted: rgba(255, 255, 255, 0.25);
|
|
182
|
-
--j3m-glass-frosted-strong: rgba(255, 255, 255, 0.4);
|
|
183
|
-
--j3m-glass-frosted-card: rgba(255, 255, 255, 0.35);
|
|
184
|
-
--j3m-blur-frosted: 24px;
|
|
185
|
-
|
|
186
|
-
/* Glass Borders */
|
|
187
|
-
--j3m-glass-border-light: rgba(255, 255, 255, 0.3);
|
|
188
|
-
--j3m-glass-border-subtle: rgba(255, 255, 255, 0.1);
|
|
189
|
-
--j3m-glass-border-white: rgba(255, 255, 255, 0.2);
|
|
190
|
-
|
|
191
|
-
/* Gradient Border (top lighter, bottom darker - simulates light from above) */
|
|
192
|
-
--j3m-glass-border-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.1) 100%);
|
|
193
|
-
|
|
194
|
-
/* Glass Shadows */
|
|
195
|
-
--j3m-glass-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.06);
|
|
196
|
-
--j3m-glass-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.06), 0 2px 4px rgba(0, 0, 0, 0.08);
|
|
197
|
-
--j3m-glass-shadow-lg: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
|
|
198
|
-
--j3m-glass-shadow-glow: 0 0 10px var(--j3m-primary-300);
|
|
199
|
-
--j3m-glass-shadow-glow-active: 0 0 20px var(--j3m-primary-350);
|
|
102
|
+
--j3m-glass-blur: 20px;
|
|
103
|
+
--j3m-glass-light: 0 0% 100% / 0.5;
|
|
104
|
+
--j3m-glass-light-strong: 0 0% 100% / 0.8;
|
|
105
|
+
--j3m-glass-dark: 0 0% 20% / 0.6;
|
|
106
|
+
--j3m-glass-dark-strong: 0 0% 20% / 0.85;
|
|
107
|
+
--j3m-glass-border: 0 0% 100% / 0.2;
|
|
108
|
+
--j3m-glass-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
|
|
109
|
+
--j3m-glass-primary: var(--j3m-orange-9) / 0.1;
|
|
200
110
|
|
|
201
111
|
/* ========================================
|
|
202
|
-
SHADCN
|
|
203
|
-
|
|
112
|
+
SHADCN SEMANTIC TOKENS (HSL format)
|
|
113
|
+
Change these to re-theme entire UI
|
|
204
114
|
======================================== */
|
|
205
|
-
--primary: var(--j3m-
|
|
206
|
-
--primary-foreground:
|
|
207
|
-
--secondary: var(--j3m-
|
|
208
|
-
--secondary-foreground: var(--j3m-
|
|
209
|
-
--muted: var(--j3m-
|
|
210
|
-
--muted-foreground: var(--j3m-
|
|
211
|
-
--accent: var(--j3m-
|
|
212
|
-
--accent-foreground:
|
|
213
|
-
--destructive: var(--j3m-red-
|
|
214
|
-
--destructive-foreground:
|
|
215
|
-
--background: var(--j3m-
|
|
216
|
-
--foreground: var(--j3m-
|
|
217
|
-
--card: var(--j3m-
|
|
218
|
-
--card-foreground: var(--j3m-
|
|
219
|
-
--popover: var(--j3m-
|
|
220
|
-
--popover-foreground: var(--j3m-
|
|
221
|
-
--border: var(--j3m-
|
|
222
|
-
--input: var(--j3m-
|
|
223
|
-
--ring: var(--j3m-
|
|
115
|
+
--primary: var(--j3m-orange-9);
|
|
116
|
+
--primary-foreground: 0 0% 100%;
|
|
117
|
+
--secondary: var(--j3m-gray-3);
|
|
118
|
+
--secondary-foreground: var(--j3m-gray-12);
|
|
119
|
+
--muted: var(--j3m-gray-3);
|
|
120
|
+
--muted-foreground: var(--j3m-gray-11);
|
|
121
|
+
--accent: var(--j3m-orange-9);
|
|
122
|
+
--accent-foreground: 0 0% 100%;
|
|
123
|
+
--destructive: var(--j3m-red-9);
|
|
124
|
+
--destructive-foreground: 0 0% 100%;
|
|
125
|
+
--background: var(--j3m-gray-1);
|
|
126
|
+
--foreground: var(--j3m-gray-12);
|
|
127
|
+
--card: var(--j3m-gray-1);
|
|
128
|
+
--card-foreground: var(--j3m-gray-12);
|
|
129
|
+
--popover: var(--j3m-gray-1);
|
|
130
|
+
--popover-foreground: var(--j3m-gray-12);
|
|
131
|
+
--border: var(--j3m-gray-6);
|
|
132
|
+
--input: var(--j3m-gray-6);
|
|
133
|
+
--ring: var(--j3m-orange-9);
|
|
224
134
|
|
|
225
135
|
/* Sidebar */
|
|
226
|
-
--sidebar: var(--j3m-
|
|
227
|
-
--sidebar-foreground: var(--j3m-
|
|
228
|
-
--sidebar-primary: var(--j3m-
|
|
229
|
-
--sidebar-primary-foreground:
|
|
230
|
-
--sidebar-accent: var(--j3m-
|
|
231
|
-
--sidebar-accent-foreground: var(--j3m-
|
|
232
|
-
--sidebar-border: var(--j3m-
|
|
233
|
-
--sidebar-ring: var(--j3m-
|
|
136
|
+
--sidebar: var(--j3m-gray-2);
|
|
137
|
+
--sidebar-foreground: var(--j3m-gray-12);
|
|
138
|
+
--sidebar-primary: var(--j3m-orange-10);
|
|
139
|
+
--sidebar-primary-foreground: 0 0% 100%;
|
|
140
|
+
--sidebar-accent: var(--j3m-gray-3);
|
|
141
|
+
--sidebar-accent-foreground: var(--j3m-gray-12);
|
|
142
|
+
--sidebar-border: var(--j3m-gray-6);
|
|
143
|
+
--sidebar-ring: var(--j3m-orange-9);
|
|
234
144
|
|
|
235
145
|
/* Chart Colors */
|
|
236
|
-
--chart-1: var(--j3m-
|
|
237
|
-
--chart-2: var(--j3m-
|
|
238
|
-
--chart-3: var(--j3m-
|
|
239
|
-
--chart-4: var(--j3m-
|
|
240
|
-
--chart-5: var(--j3m-
|
|
146
|
+
--chart-1: var(--j3m-orange-9);
|
|
147
|
+
--chart-2: var(--j3m-orange-7);
|
|
148
|
+
--chart-3: var(--j3m-orange-10);
|
|
149
|
+
--chart-4: var(--j3m-orange-5);
|
|
150
|
+
--chart-5: var(--j3m-orange-11);
|
|
241
151
|
|
|
242
152
|
/* Global Radius */
|
|
243
153
|
--radius: 12px;
|
|
@@ -254,52 +164,36 @@
|
|
|
254
164
|
======================================== */
|
|
255
165
|
|
|
256
166
|
.dark {
|
|
257
|
-
/*
|
|
258
|
-
--
|
|
259
|
-
--
|
|
260
|
-
--
|
|
261
|
-
--
|
|
262
|
-
--
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
--
|
|
266
|
-
--
|
|
267
|
-
--
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
--
|
|
271
|
-
--
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
--
|
|
275
|
-
--
|
|
276
|
-
--
|
|
277
|
-
--secondary-foreground: var(--j3m-neutral-100);
|
|
278
|
-
--muted: var(--j3m-neutral-800);
|
|
279
|
-
--muted-foreground: var(--j3m-neutral-400);
|
|
280
|
-
--accent: var(--j3m-neutral-800);
|
|
281
|
-
--accent-foreground: var(--j3m-neutral-100);
|
|
282
|
-
--destructive: var(--j3m-red-200);
|
|
283
|
-
--destructive-foreground: #FFFFFF;
|
|
284
|
-
--background: var(--j3m-neutral-1000);
|
|
285
|
-
--foreground: var(--j3m-neutral-100);
|
|
286
|
-
--card: var(--j3m-neutral-900);
|
|
287
|
-
--card-foreground: var(--j3m-neutral-100);
|
|
288
|
-
--popover: var(--j3m-neutral-900);
|
|
289
|
-
--popover-foreground: var(--j3m-neutral-100);
|
|
290
|
-
--border: var(--j3m-neutral-700);
|
|
291
|
-
--input: var(--j3m-neutral-700);
|
|
292
|
-
--ring: var(--j3m-primary-250);
|
|
167
|
+
/* Invert gray scale for dark mode */
|
|
168
|
+
--background: var(--j3m-gray-12);
|
|
169
|
+
--foreground: var(--j3m-gray-1);
|
|
170
|
+
--card: var(--j3m-gray-11);
|
|
171
|
+
--card-foreground: var(--j3m-gray-1);
|
|
172
|
+
--popover: var(--j3m-gray-11);
|
|
173
|
+
--popover-foreground: var(--j3m-gray-1);
|
|
174
|
+
--primary: var(--j3m-orange-9);
|
|
175
|
+
--primary-foreground: var(--j3m-gray-12);
|
|
176
|
+
--secondary: 0 0% 20%;
|
|
177
|
+
--secondary-foreground: var(--j3m-gray-1);
|
|
178
|
+
--muted: 0 0% 20%;
|
|
179
|
+
--muted-foreground: var(--j3m-gray-8);
|
|
180
|
+
--accent: 0 0% 20%;
|
|
181
|
+
--accent-foreground: var(--j3m-gray-1);
|
|
182
|
+
--destructive: var(--j3m-red-10);
|
|
183
|
+
--destructive-foreground: 0 0% 100%;
|
|
184
|
+
--border: 0 0% 25%;
|
|
185
|
+
--input: 0 0% 25%;
|
|
186
|
+
--ring: var(--j3m-orange-9);
|
|
293
187
|
|
|
294
188
|
/* Sidebar */
|
|
295
|
-
--sidebar: var(--j3m-
|
|
296
|
-
--sidebar-foreground: var(--j3m-
|
|
297
|
-
--sidebar-primary: var(--j3m-
|
|
298
|
-
--sidebar-primary-foreground: var(--j3m-
|
|
299
|
-
--sidebar-accent:
|
|
300
|
-
--sidebar-accent-foreground: var(--j3m-
|
|
301
|
-
--sidebar-border:
|
|
302
|
-
--sidebar-ring: var(--j3m-
|
|
189
|
+
--sidebar: var(--j3m-gray-11);
|
|
190
|
+
--sidebar-foreground: var(--j3m-gray-1);
|
|
191
|
+
--sidebar-primary: var(--j3m-orange-9);
|
|
192
|
+
--sidebar-primary-foreground: var(--j3m-gray-12);
|
|
193
|
+
--sidebar-accent: 0 0% 20%;
|
|
194
|
+
--sidebar-accent-foreground: var(--j3m-gray-1);
|
|
195
|
+
--sidebar-border: 0 0% 25%;
|
|
196
|
+
--sidebar-ring: var(--j3m-orange-9);
|
|
303
197
|
}
|
|
304
198
|
|
|
305
199
|
/* ========================================
|
|
@@ -310,15 +204,15 @@
|
|
|
310
204
|
.theme-solid,
|
|
311
205
|
:root:not(.theme-glass) {
|
|
312
206
|
/* Surface tokens for solid mode */
|
|
313
|
-
--surface-bg: var(--
|
|
314
|
-
--surface-border: var(--
|
|
207
|
+
--surface-bg: hsl(var(--background));
|
|
208
|
+
--surface-border: hsl(var(--border));
|
|
315
209
|
--surface-shadow: var(--shadow-sm);
|
|
316
210
|
--surface-radius: var(--j3m-radius-l);
|
|
317
211
|
--surface-blur: 0px;
|
|
318
212
|
|
|
319
213
|
/* Overlay surfaces (dialogs, popovers, etc) */
|
|
320
|
-
--overlay-bg: var(--
|
|
321
|
-
--overlay-border: var(--
|
|
214
|
+
--overlay-bg: hsl(var(--background));
|
|
215
|
+
--overlay-border: hsl(var(--border));
|
|
322
216
|
--overlay-shadow: var(--shadow-lg);
|
|
323
217
|
--overlay-blur: 0px;
|
|
324
218
|
}
|
|
@@ -330,30 +224,30 @@
|
|
|
330
224
|
|
|
331
225
|
.theme-glass {
|
|
332
226
|
/* Surface tokens for glass mode */
|
|
333
|
-
--surface-bg: var(--j3m-glass-light
|
|
334
|
-
--surface-border: var(--j3m-glass-border
|
|
335
|
-
--surface-shadow: var(--j3m-glass-shadow
|
|
227
|
+
--surface-bg: hsl(var(--j3m-glass-light));
|
|
228
|
+
--surface-border: hsl(var(--j3m-glass-border));
|
|
229
|
+
--surface-shadow: var(--j3m-glass-shadow);
|
|
336
230
|
--surface-radius: var(--j3m-radius-l);
|
|
337
|
-
--surface-blur: var(--j3m-blur
|
|
231
|
+
--surface-blur: var(--j3m-glass-blur);
|
|
338
232
|
|
|
339
233
|
/* Overlay surfaces (dialogs, popovers, etc) */
|
|
340
|
-
--overlay-bg: var(--j3m-glass-light-
|
|
341
|
-
--overlay-border: var(--j3m-glass-border
|
|
342
|
-
--overlay-shadow: var(--
|
|
343
|
-
--overlay-blur:
|
|
234
|
+
--overlay-bg: hsl(var(--j3m-glass-light-strong));
|
|
235
|
+
--overlay-border: hsl(var(--j3m-glass-border));
|
|
236
|
+
--overlay-shadow: var(--shadow-lg);
|
|
237
|
+
--overlay-blur: 30px;
|
|
344
238
|
|
|
345
|
-
/* Adjust
|
|
346
|
-
--
|
|
347
|
-
--
|
|
348
|
-
--
|
|
239
|
+
/* Adjust component backgrounds for glass */
|
|
240
|
+
--card: var(--j3m-glass-light);
|
|
241
|
+
--popover: var(--j3m-glass-light-strong);
|
|
242
|
+
--input: var(--j3m-glass-light);
|
|
349
243
|
}
|
|
350
244
|
|
|
351
245
|
.theme-glass.dark {
|
|
352
246
|
/* Dark glass overrides */
|
|
353
|
-
--surface-bg: var(--j3m-glass-dark);
|
|
354
|
-
--surface-border:
|
|
355
|
-
--overlay-bg: var(--j3m-glass-dark-
|
|
356
|
-
--overlay-border:
|
|
247
|
+
--surface-bg: hsl(var(--j3m-glass-dark));
|
|
248
|
+
--surface-border: hsl(0 0% 100% / 0.1);
|
|
249
|
+
--overlay-bg: hsl(var(--j3m-glass-dark-strong));
|
|
250
|
+
--overlay-border: hsl(0 0% 100% / 0.2);
|
|
357
251
|
}
|
|
358
252
|
|
|
359
253
|
/* ========================================
|
|
@@ -362,13 +256,13 @@
|
|
|
362
256
|
======================================== */
|
|
363
257
|
|
|
364
258
|
.glass-context {
|
|
365
|
-
--background: var(--j3m-glass-light-
|
|
366
|
-
--input: var(--j3m-glass-light
|
|
367
|
-
--card: var(--j3m-glass-light-
|
|
368
|
-
--popover: var(--j3m-glass-light-
|
|
369
|
-
--muted: var(--j3m-glass-light
|
|
370
|
-
--secondary: var(--j3m-glass-light-
|
|
371
|
-
--border: var(--j3m-glass-border
|
|
259
|
+
--background: var(--j3m-glass-light-strong);
|
|
260
|
+
--input: var(--j3m-glass-light);
|
|
261
|
+
--card: var(--j3m-glass-light-strong);
|
|
262
|
+
--popover: var(--j3m-glass-light-strong);
|
|
263
|
+
--muted: var(--j3m-glass-light);
|
|
264
|
+
--secondary: var(--j3m-glass-light-strong);
|
|
265
|
+
--border: var(--j3m-glass-border);
|
|
372
266
|
}
|
|
373
267
|
|
|
374
268
|
/* ========================================
|
|
@@ -434,32 +328,16 @@
|
|
|
434
328
|
|
|
435
329
|
@layer base {
|
|
436
330
|
* {
|
|
437
|
-
border-color: var(--border);
|
|
331
|
+
border-color: hsl(var(--border));
|
|
438
332
|
}
|
|
439
333
|
|
|
440
334
|
body {
|
|
441
|
-
background-color: var(--background);
|
|
442
|
-
color: var(--foreground);
|
|
335
|
+
background-color: hsl(var(--background));
|
|
336
|
+
color: hsl(var(--foreground));
|
|
443
337
|
font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
|
|
444
338
|
}
|
|
445
339
|
}
|
|
446
340
|
|
|
447
|
-
/* ========================================
|
|
448
|
-
GLASS CONTEXT
|
|
449
|
-
Apply when inside a glass container
|
|
450
|
-
======================================== */
|
|
451
|
-
|
|
452
|
-
.glass-context {
|
|
453
|
-
--background: rgba(255, 255, 255, 0.8);
|
|
454
|
-
--input: rgba(255, 255, 255, 0.3);
|
|
455
|
-
--card: rgba(255, 255, 255, 0.8);
|
|
456
|
-
--popover: rgba(255, 255, 255, 0.85);
|
|
457
|
-
--muted: rgba(255, 255, 255, 0.6);
|
|
458
|
-
--muted-foreground: rgba(0, 0, 0, 0.55);
|
|
459
|
-
--secondary: rgba(255, 255, 255, 0.8);
|
|
460
|
-
--border: rgba(255, 255, 255, 0.3);
|
|
461
|
-
}
|
|
462
|
-
|
|
463
341
|
/* ========================================
|
|
464
342
|
COMPONENT-LEVEL OVERRIDES
|
|
465
343
|
Pill shapes for J3M design
|
|
@@ -555,70 +433,35 @@ textarea,
|
|
|
555
433
|
======================================== */
|
|
556
434
|
|
|
557
435
|
.glass-light {
|
|
558
|
-
background: var(--j3m-glass-light
|
|
559
|
-
backdrop-filter: blur(var(--j3m-blur
|
|
560
|
-
-webkit-backdrop-filter: blur(var(--j3m-blur
|
|
561
|
-
border: 1px solid var(--j3m-
|
|
562
|
-
box-shadow: var(--j3m-glass-shadow
|
|
436
|
+
background: hsl(var(--j3m-glass-light));
|
|
437
|
+
backdrop-filter: blur(var(--j3m-glass-blur));
|
|
438
|
+
-webkit-backdrop-filter: blur(var(--j3m-glass-blur));
|
|
439
|
+
border: 1px solid hsl(var(--j3m-glass-border));
|
|
440
|
+
box-shadow: var(--j3m-glass-shadow);
|
|
563
441
|
}
|
|
564
442
|
|
|
565
443
|
.glass-dark {
|
|
566
|
-
background: var(--j3m-glass-dark);
|
|
567
|
-
backdrop-filter: blur(var(--j3m-blur
|
|
568
|
-
-webkit-backdrop-filter: blur(var(--j3m-blur
|
|
569
|
-
border: 1px solid
|
|
570
|
-
box-shadow: var(--j3m-glass-shadow
|
|
444
|
+
background: hsl(var(--j3m-glass-dark));
|
|
445
|
+
backdrop-filter: blur(var(--j3m-glass-blur));
|
|
446
|
+
-webkit-backdrop-filter: blur(var(--j3m-glass-blur));
|
|
447
|
+
border: 1px solid hsl(0 0% 100% / 0.1);
|
|
448
|
+
box-shadow: var(--j3m-glass-shadow);
|
|
571
449
|
}
|
|
572
450
|
|
|
573
|
-
.glass-
|
|
574
|
-
background: var(--j3m-glass-
|
|
575
|
-
backdrop-filter: blur(var(--j3m-blur
|
|
576
|
-
-webkit-backdrop-filter: blur(var(--j3m-blur
|
|
577
|
-
border: 1px solid var(--j3m-
|
|
578
|
-
box-shadow: var(--j3m-glass-shadow
|
|
451
|
+
.glass-strong {
|
|
452
|
+
background: hsl(var(--j3m-glass-light-strong));
|
|
453
|
+
backdrop-filter: blur(var(--j3m-glass-blur));
|
|
454
|
+
-webkit-backdrop-filter: blur(var(--j3m-glass-blur));
|
|
455
|
+
border: 1px solid hsl(var(--j3m-glass-border));
|
|
456
|
+
box-shadow: var(--j3m-glass-shadow);
|
|
579
457
|
}
|
|
580
458
|
|
|
581
459
|
.glass-primary {
|
|
582
|
-
background: var(--j3m-glass-primary);
|
|
583
|
-
backdrop-filter: blur(var(--j3m-blur
|
|
584
|
-
-webkit-backdrop-filter: blur(var(--j3m-blur
|
|
585
|
-
border: 1px solid var(--
|
|
586
|
-
box-shadow: var(--j3m-glass-shadow
|
|
587
|
-
}
|
|
588
|
-
|
|
589
|
-
/* Frosted glass with gradient border */
|
|
590
|
-
.glass-frosted {
|
|
591
|
-
background: var(--j3m-glass-frosted);
|
|
592
|
-
backdrop-filter: blur(var(--j3m-blur-frosted));
|
|
593
|
-
-webkit-backdrop-filter: blur(var(--j3m-blur-frosted));
|
|
594
|
-
box-shadow: var(--j3m-glass-shadow-lg);
|
|
595
|
-
}
|
|
596
|
-
|
|
597
|
-
.glass-frosted-strong {
|
|
598
|
-
background: var(--j3m-glass-frosted-strong);
|
|
599
|
-
backdrop-filter: blur(var(--j3m-blur-frosted));
|
|
600
|
-
-webkit-backdrop-filter: blur(var(--j3m-blur-frosted));
|
|
601
|
-
box-shadow: var(--j3m-glass-shadow-lg);
|
|
602
|
-
}
|
|
603
|
-
|
|
604
|
-
/* Gradient border utility - creates top-lit edge effect */
|
|
605
|
-
.glass-border-gradient {
|
|
606
|
-
position: relative;
|
|
607
|
-
border: none !important;
|
|
608
|
-
}
|
|
609
|
-
|
|
610
|
-
.glass-border-gradient::before {
|
|
611
|
-
content: '';
|
|
612
|
-
position: absolute;
|
|
613
|
-
inset: 0;
|
|
614
|
-
border-radius: inherit;
|
|
615
|
-
padding: 1px;
|
|
616
|
-
background: var(--j3m-glass-border-gradient);
|
|
617
|
-
-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
|
|
618
|
-
mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
|
|
619
|
-
-webkit-mask-composite: xor;
|
|
620
|
-
mask-composite: exclude;
|
|
621
|
-
pointer-events: none;
|
|
460
|
+
background: hsl(var(--j3m-glass-primary));
|
|
461
|
+
backdrop-filter: blur(var(--j3m-glass-blur));
|
|
462
|
+
-webkit-backdrop-filter: blur(var(--j3m-glass-blur));
|
|
463
|
+
border: 1px solid hsl(var(--primary) / 0.2);
|
|
464
|
+
box-shadow: var(--j3m-glass-shadow);
|
|
622
465
|
}
|
|
623
466
|
|
|
624
467
|
/* ========================================
|
|
@@ -652,9 +495,9 @@ textarea,
|
|
|
652
495
|
.glass-context [data-slot="input"]:focus-visible,
|
|
653
496
|
.glass-context textarea:focus-visible,
|
|
654
497
|
.glass-context [data-slot="textarea"]:focus-visible {
|
|
655
|
-
border-color: var(--j3m-
|
|
656
|
-
--color-ring:
|
|
657
|
-
box-shadow: 0 0 0 3px
|
|
498
|
+
border-color: hsl(var(--j3m-orange-10)) !important;
|
|
499
|
+
--color-ring: var(--primary) / 0.3;
|
|
500
|
+
box-shadow: 0 0 0 3px hsl(var(--primary) / 0.3) !important;
|
|
658
501
|
}
|
|
659
502
|
|
|
660
503
|
/* --- SELECT TRIGGER --- */
|
|
@@ -672,9 +515,9 @@ textarea,
|
|
|
672
515
|
.glass-context [data-slot="select-trigger"]:focus,
|
|
673
516
|
.glass-context [data-slot="select-trigger"]:focus-visible,
|
|
674
517
|
.glass-context [data-slot="select-trigger"][data-state="open"] {
|
|
675
|
-
border-color: var(--j3m-
|
|
676
|
-
--color-ring:
|
|
677
|
-
box-shadow: 0 0 0 3px
|
|
518
|
+
border-color: hsl(var(--j3m-orange-10)) !important;
|
|
519
|
+
--color-ring: var(--primary) / 0.3;
|
|
520
|
+
box-shadow: 0 0 0 3px hsl(var(--primary) / 0.3) !important;
|
|
678
521
|
}
|
|
679
522
|
|
|
680
523
|
/* --- NATIVE SELECT --- */
|
|
@@ -689,16 +532,16 @@ textarea,
|
|
|
689
532
|
|
|
690
533
|
.glass-context select:focus,
|
|
691
534
|
.glass-context [data-slot="native-select"]:focus {
|
|
692
|
-
border-color: var(--j3m-
|
|
693
|
-
--color-ring:
|
|
694
|
-
box-shadow: 0 0 0 3px
|
|
535
|
+
border-color: hsl(var(--j3m-orange-10)) !important;
|
|
536
|
+
--color-ring: var(--primary) / 0.3;
|
|
537
|
+
box-shadow: 0 0 0 3px hsl(var(--primary) / 0.3) !important;
|
|
695
538
|
}
|
|
696
539
|
|
|
697
540
|
/* --- BUTTONS --- */
|
|
698
541
|
/* Default button hover in glass */
|
|
699
542
|
.glass-context [data-slot="button"][data-variant="default"]:hover,
|
|
700
543
|
.glass-context [data-slot="button"]:not([data-variant]):hover {
|
|
701
|
-
background: var(--j3m-
|
|
544
|
+
background: hsl(var(--j3m-orange-11)) !important;
|
|
702
545
|
}
|
|
703
546
|
|
|
704
547
|
/* Outline/Secondary/Ghost buttons - white fill, dark border */
|
|
@@ -714,8 +557,8 @@ textarea,
|
|
|
714
557
|
.glass-context [data-slot="button"][data-variant="outline"]:hover,
|
|
715
558
|
.glass-context [data-slot="button"][data-variant="secondary"]:hover,
|
|
716
559
|
.glass-context [data-slot="button"][data-variant="ghost"]:hover {
|
|
717
|
-
background: var(--
|
|
718
|
-
border-color: var(--
|
|
560
|
+
background: hsl(var(--primary)) !important;
|
|
561
|
+
border-color: hsl(var(--primary)) !important;
|
|
719
562
|
color: #FFFFFF !important;
|
|
720
563
|
}
|
|
721
564
|
|
|
@@ -729,12 +572,12 @@ textarea,
|
|
|
729
572
|
.glass-context [data-slot="radio-group-item"][data-state="checked"],
|
|
730
573
|
.glass-context [role="radio"][data-state="checked"] {
|
|
731
574
|
background: rgba(255, 255, 255, 0.8) !important;
|
|
732
|
-
border-color: var(--j3m-
|
|
575
|
+
border-color: hsl(var(--j3m-orange-10)) !important;
|
|
733
576
|
}
|
|
734
577
|
|
|
735
578
|
.glass-context [data-slot="radio-group-item"][data-state="checked"] span,
|
|
736
579
|
.glass-context [role="radio"][data-state="checked"] span {
|
|
737
|
-
background: var(--j3m-
|
|
580
|
+
background: hsl(var(--j3m-orange-10)) !important;
|
|
738
581
|
}
|
|
739
582
|
|
|
740
583
|
/* --- CHECKBOX --- */
|
|
@@ -746,8 +589,8 @@ textarea,
|
|
|
746
589
|
|
|
747
590
|
.glass-context [data-slot="checkbox"][data-state="checked"],
|
|
748
591
|
.glass-context [role="checkbox"][data-state="checked"] {
|
|
749
|
-
background: var(--j3m-
|
|
750
|
-
border-color: var(--j3m-
|
|
592
|
+
background: hsl(var(--j3m-orange-10)) !important;
|
|
593
|
+
border-color: hsl(var(--j3m-orange-10)) !important;
|
|
751
594
|
}
|
|
752
595
|
|
|
753
596
|
/* --- SWITCH --- */
|
|
@@ -759,8 +602,8 @@ textarea,
|
|
|
759
602
|
|
|
760
603
|
.glass-context [data-slot="switch"][data-state="checked"],
|
|
761
604
|
.glass-context [role="switch"][data-state="checked"] {
|
|
762
|
-
background: var(--
|
|
763
|
-
border-color: var(--
|
|
605
|
+
background: hsl(var(--primary)) !important;
|
|
606
|
+
border-color: hsl(var(--primary)) !important;
|
|
764
607
|
}
|
|
765
608
|
|
|
766
609
|
/* Switch thumb - always white */
|
|
@@ -885,7 +728,7 @@ textarea,
|
|
|
885
728
|
/* Solid mode - orange gradient hover */
|
|
886
729
|
[data-slot="navigation-menu-link"]:hover,
|
|
887
730
|
[data-slot="navigation-menu-link"]:focus {
|
|
888
|
-
background: linear-gradient(135deg, var(--j3m-
|
|
731
|
+
background: linear-gradient(135deg, hsl(var(--j3m-orange-7)) 0%, hsl(var(--primary)) 50%, hsl(var(--j3m-orange-10)) 100%) !important;
|
|
889
732
|
color: #FFFFFF !important;
|
|
890
733
|
}
|
|
891
734
|
|
|
@@ -897,7 +740,7 @@ textarea,
|
|
|
897
740
|
/* Glass mode - default orange hover, bright text */
|
|
898
741
|
.glass-context [data-slot="navigation-menu-content"] a:hover,
|
|
899
742
|
.glass-context [data-slot="navigation-menu-content"] a:focus {
|
|
900
|
-
background: var(--
|
|
743
|
+
background: hsl(var(--primary)) !important;
|
|
901
744
|
color: #FFFFFF !important;
|
|
902
745
|
}
|
|
903
746
|
|
|
@@ -919,7 +762,7 @@ textarea,
|
|
|
919
762
|
|
|
920
763
|
.glass-context [data-slot="menubar-trigger"]:hover,
|
|
921
764
|
.glass-context [data-slot="menubar-trigger"][data-state="open"] {
|
|
922
|
-
background: var(--
|
|
765
|
+
background: hsl(var(--primary)) !important;
|
|
923
766
|
color: #FFFFFF !important;
|
|
924
767
|
}
|
|
925
768
|
|
|
@@ -931,7 +774,7 @@ textarea,
|
|
|
931
774
|
|
|
932
775
|
.glass-context [data-slot="menubar-item"]:hover,
|
|
933
776
|
.glass-context [data-slot="menubar-item"]:focus {
|
|
934
|
-
background: var(--
|
|
777
|
+
background: hsl(var(--primary)) !important;
|
|
935
778
|
color: #FFFFFF !important;
|
|
936
779
|
}
|
|
937
780
|
|
|
@@ -964,12 +807,12 @@ textarea,
|
|
|
964
807
|
}
|
|
965
808
|
|
|
966
809
|
.glass-context [data-slot="slider-range"] {
|
|
967
|
-
background: var(--
|
|
810
|
+
background: hsl(var(--primary)) !important;
|
|
968
811
|
}
|
|
969
812
|
|
|
970
813
|
.glass-context [data-slot="slider-thumb"] {
|
|
971
814
|
background: #FFFFFF !important;
|
|
972
|
-
border-color: var(--
|
|
815
|
+
border-color: hsl(var(--primary)) !important;
|
|
973
816
|
}
|
|
974
817
|
|
|
975
818
|
/* --- TOGGLE / TOGGLE GROUP --- */
|
|
@@ -982,15 +825,15 @@ textarea,
|
|
|
982
825
|
|
|
983
826
|
.glass-context [data-slot="toggle"][data-state="on"],
|
|
984
827
|
.glass-context [data-slot="toggle-group-item"][data-state="on"] {
|
|
985
|
-
background: var(--
|
|
986
|
-
border-color: var(--
|
|
828
|
+
background: hsl(var(--primary)) !important;
|
|
829
|
+
border-color: hsl(var(--primary)) !important;
|
|
987
830
|
color: #FFFFFF !important;
|
|
988
831
|
}
|
|
989
832
|
|
|
990
833
|
.glass-context [data-slot="toggle"]:hover,
|
|
991
834
|
.glass-context [data-slot="toggle-group-item"]:hover {
|
|
992
|
-
background: var(--
|
|
993
|
-
border-color: var(--
|
|
835
|
+
background: hsl(var(--primary)) !important;
|
|
836
|
+
border-color: hsl(var(--primary)) !important;
|
|
994
837
|
color: #FFFFFF !important;
|
|
995
838
|
}
|
|
996
839
|
|
|
@@ -1011,7 +854,7 @@ textarea,
|
|
|
1011
854
|
.glass-context [role="menuitem"]:hover,
|
|
1012
855
|
.glass-context [data-slot="dropdown-menu-item"]:focus,
|
|
1013
856
|
.glass-context [role="menuitem"]:focus {
|
|
1014
|
-
background: var(--
|
|
857
|
+
background: hsl(var(--primary)) !important;
|
|
1015
858
|
color: #FFFFFF !important;
|
|
1016
859
|
}
|
|
1017
860
|
|
|
@@ -1034,7 +877,7 @@ textarea,
|
|
|
1034
877
|
}
|
|
1035
878
|
|
|
1036
879
|
.glass-context [data-slot="progress-indicator"] {
|
|
1037
|
-
background: var(--
|
|
880
|
+
background: hsl(var(--primary)) !important;
|
|
1038
881
|
}
|
|
1039
882
|
|
|
1040
883
|
/* --- ALERT --- */
|
|
@@ -1096,7 +939,7 @@ textarea,
|
|
|
1096
939
|
}
|
|
1097
940
|
|
|
1098
941
|
.glass-context [data-slot="command-input-wrapper"]:focus-within {
|
|
1099
|
-
border-color: var(--j3m-
|
|
942
|
+
border-color: hsl(var(--j3m-orange-10)) !important;
|
|
1100
943
|
box-shadow: 0 0 0 3px rgba(243, 108, 33, 0.2) !important;
|
|
1101
944
|
}
|
|
1102
945
|
|
|
@@ -1116,7 +959,7 @@ textarea,
|
|
|
1116
959
|
}
|
|
1117
960
|
|
|
1118
961
|
.glass-context [data-slot="command-item"][data-selected=true] {
|
|
1119
|
-
background: var(--
|
|
962
|
+
background: hsl(var(--primary)) !important;
|
|
1120
963
|
color: #FFFFFF !important;
|
|
1121
964
|
}
|
|
1122
965
|
|
|
@@ -1152,26 +995,11 @@ textarea,
|
|
|
1152
995
|
|
|
1153
996
|
/* --- CARD (ensure frosted glass in glass context) --- */
|
|
1154
997
|
.glass-context [data-slot="card"]:not([class*="glass"]) {
|
|
1155
|
-
background: var(--j3m-glass-
|
|
1156
|
-
backdrop-filter: blur(var(--j3m-blur
|
|
1157
|
-
-webkit-backdrop-filter: blur(var(--j3m-blur
|
|
1158
|
-
border:
|
|
1159
|
-
box-shadow: var(--j3m-glass-shadow
|
|
1160
|
-
position: relative;
|
|
1161
|
-
}
|
|
1162
|
-
|
|
1163
|
-
.glass-context [data-slot="card"]:not([class*="glass"])::before {
|
|
1164
|
-
content: '';
|
|
1165
|
-
position: absolute;
|
|
1166
|
-
inset: 0;
|
|
1167
|
-
border-radius: inherit;
|
|
1168
|
-
padding: 1px;
|
|
1169
|
-
background: var(--j3m-glass-border-gradient);
|
|
1170
|
-
-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
|
|
1171
|
-
mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
|
|
1172
|
-
-webkit-mask-composite: xor;
|
|
1173
|
-
mask-composite: exclude;
|
|
1174
|
-
pointer-events: none;
|
|
998
|
+
background: hsl(var(--j3m-glass-light-strong)) !important;
|
|
999
|
+
backdrop-filter: blur(var(--j3m-glass-blur)) !important;
|
|
1000
|
+
-webkit-backdrop-filter: blur(var(--j3m-glass-blur)) !important;
|
|
1001
|
+
border: 1px solid hsl(var(--j3m-glass-border)) !important;
|
|
1002
|
+
box-shadow: var(--j3m-glass-shadow) !important;
|
|
1175
1003
|
}
|
|
1176
1004
|
|
|
1177
1005
|
/* ========================================
|