@j-solution/components 1.8.0 → 1.9.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.
Files changed (79) hide show
  1. package/README.md +413 -415
  2. package/assets/jwms-portal-frontend-Ct2Tc7yj.css +1 -0
  3. package/assets/styles/j-components.css +1 -1
  4. package/assets/styles/themes.css +422 -422
  5. package/components/atoms/JButton.vue.cjs +1 -1
  6. package/components/atoms/JButton.vue.js +1 -1
  7. package/components/atoms/JButton.vue2.cjs.map +1 -1
  8. package/components/atoms/JButton.vue2.js.map +1 -1
  9. package/components/atoms/JLabel.vue.cjs.map +1 -1
  10. package/components/atoms/JLabel.vue.js.map +1 -1
  11. package/components/molecules/JTabs.vue.cjs +1 -1
  12. package/components/molecules/JTabs.vue.js +1 -1
  13. package/components/molecules/JTabs.vue2.cjs.map +1 -1
  14. package/components/molecules/JTabs.vue2.js.map +1 -1
  15. package/components/organisms/JDynamicTabs.vue.cjs.map +1 -1
  16. package/components/organisms/JDynamicTabs.vue.js.map +1 -1
  17. package/components/organisms/JFilterBar.vue.cjs +1 -1
  18. package/components/organisms/JFilterBar.vue.js +2 -2
  19. package/components/organisms/JFilterBar.vue2.cjs +1 -1
  20. package/components/organisms/JFilterBar.vue2.cjs.map +1 -1
  21. package/components/organisms/JFilterBar.vue2.js +14 -12
  22. package/components/organisms/JFilterBar.vue2.js.map +1 -1
  23. package/components/organisms/JPageContainer.vue.cjs.map +1 -1
  24. package/components/organisms/JPageContainer.vue.js.map +1 -1
  25. package/components/organisms/JSidebar/JSidebar.vue.cjs +2 -0
  26. package/components/organisms/JSidebar/JSidebar.vue.cjs.map +1 -0
  27. package/components/organisms/JSidebar/JSidebar.vue.js +189 -0
  28. package/components/organisms/JSidebar/JSidebar.vue.js.map +1 -0
  29. package/components/organisms/JSidebar/JSidebar.vue2.cjs +2 -0
  30. package/components/organisms/JSidebar/JSidebar.vue2.cjs.map +1 -0
  31. package/components/organisms/JSidebar/JSidebar.vue2.js +5 -0
  32. package/components/organisms/JSidebar/JSidebar.vue2.js.map +1 -0
  33. package/components/organisms/JSidebar/JSidebarGroup.vue.cjs +2 -0
  34. package/components/organisms/JSidebar/JSidebarGroup.vue.cjs.map +1 -0
  35. package/components/organisms/JSidebar/JSidebarGroup.vue.js +89 -0
  36. package/components/organisms/JSidebar/JSidebarGroup.vue.js.map +1 -0
  37. package/components/organisms/JSidebar/JSidebarGroup.vue2.cjs +2 -0
  38. package/components/organisms/JSidebar/JSidebarGroup.vue2.cjs.map +1 -0
  39. package/components/organisms/JSidebar/JSidebarGroup.vue2.js +5 -0
  40. package/components/organisms/JSidebar/JSidebarGroup.vue2.js.map +1 -0
  41. package/components/organisms/JSidebar/JSidebarItem.vue.cjs +2 -0
  42. package/components/organisms/JSidebar/JSidebarItem.vue.cjs.map +1 -0
  43. package/components/organisms/JSidebar/JSidebarItem.vue.js +79 -0
  44. package/components/organisms/JSidebar/JSidebarItem.vue.js.map +1 -0
  45. package/components/organisms/JSidebar/JSidebarItem.vue2.cjs +2 -0
  46. package/components/organisms/JSidebar/JSidebarItem.vue2.cjs.map +1 -0
  47. package/components/organisms/JSidebar/JSidebarItem.vue2.js +5 -0
  48. package/components/organisms/JSidebar/JSidebarItem.vue2.js.map +1 -0
  49. package/components/shadcn/Card.vue.cjs.map +1 -1
  50. package/components/shadcn/Card.vue.js.map +1 -1
  51. package/components/shadcn/CardContent.vue.cjs.map +1 -1
  52. package/components/shadcn/CardContent.vue.js.map +1 -1
  53. package/components/shadcn/CardHeader.vue.cjs.map +1 -1
  54. package/components/shadcn/CardHeader.vue.js.map +1 -1
  55. package/components/shadcn/Input.vue.cjs.map +1 -1
  56. package/components/shadcn/Input.vue.js.map +1 -1
  57. package/components/shadcn/SelectTrigger.vue.cjs.map +1 -1
  58. package/components/shadcn/SelectTrigger.vue.js.map +1 -1
  59. package/components/shadcn/TabsContent.vue.cjs.map +1 -1
  60. package/components/shadcn/TabsContent.vue.js.map +1 -1
  61. package/components/shadcn/Textarea.vue.cjs.map +1 -1
  62. package/components/shadcn/Textarea.vue.js.map +1 -1
  63. package/components/shadcn/index.cjs.map +1 -1
  64. package/components/shadcn/index.js.map +1 -1
  65. package/components/templates/JLayout.vue.cjs.map +1 -1
  66. package/components/templates/JLayout.vue.js.map +1 -1
  67. package/components/templates/JLayoutSimple.vue.cjs +1 -1
  68. package/components/templates/JLayoutSimple.vue.cjs.map +1 -1
  69. package/components/templates/JLayoutSimple.vue.js +36 -30
  70. package/components/templates/JLayoutSimple.vue.js.map +1 -1
  71. package/index.cjs +1 -1
  72. package/index.js +22 -20
  73. package/package.json +1 -1
  74. package/types/index.d.ts +119 -61
  75. package/types/sidebar.types.cjs +2 -0
  76. package/types/sidebar.types.cjs.map +1 -0
  77. package/types/sidebar.types.js +5 -0
  78. package/types/sidebar.types.js.map +1 -0
  79. package/assets/jwms-portal-frontend-BtHTA-UF.css +0 -1
@@ -1,29 +1,29 @@
1
- /* tweakcn 테마 정의 */
2
-
3
- /* Default 테마 (기본) - :root에도 적용하여 기본값 제공 */
4
- :root,
5
- .theme-default {
6
- --background: 0 0% 100%;
7
- --foreground: 222.2 84% 4.9%;
8
- --card: 0 0% 100%;
9
- --card-foreground: 222.2 84% 4.9%;
10
- --popover: 0 0% 100%;
11
- --popover-foreground: 222.2 84% 4.9%;
12
- --primary: 222.2 47.4% 11.2%;
13
- --primary-foreground: 210 40% 98%;
14
- --secondary: 210 40% 96.1%;
15
- --secondary-foreground: 222.2 47.4% 11.2%;
16
- --muted: 210 40% 96.1%;
17
- --muted-foreground: 215.4 16.3% 46.9%;
18
- --accent: 210 40% 96.1%;
19
- --accent-foreground: 222.2 47.4% 11.2%;
20
- --destructive: 0 84.2% 60.2%;
21
- --destructive-foreground: 210 40% 98%;
22
- --border: 214.3 31.8% 91.4%;
23
- --input: 214.3 31.8% 91.4%;
24
- --ring: 222.2 84% 4.9%;
25
- }
26
-
1
+ /* tweakcn 테마 정의 */
2
+
3
+ /* Default 테마 (기본) - :root에도 적용하여 기본값 제공 */
4
+ :root,
5
+ .theme-default {
6
+ --background: 0 0% 100%;
7
+ --foreground: 222.2 84% 4.9%;
8
+ --card: 0 0% 100%;
9
+ --card-foreground: 222.2 84% 4.9%;
10
+ --popover: 0 0% 100%;
11
+ --popover-foreground: 222.2 84% 4.9%;
12
+ --primary: 222.2 47.4% 11.2%;
13
+ --primary-foreground: 210 40% 98%;
14
+ --secondary: 210 40% 96.1%;
15
+ --secondary-foreground: 222.2 47.4% 11.2%;
16
+ --muted: 210 40% 96.1%;
17
+ --muted-foreground: 215.4 16.3% 46.9%;
18
+ --accent: 210 40% 96.1%;
19
+ --accent-foreground: 222.2 47.4% 11.2%;
20
+ --destructive: 0 84.2% 60.2%;
21
+ --destructive-foreground: 210 40% 98%;
22
+ --border: 214.3 31.8% 91.4%;
23
+ --input: 214.3 31.8% 91.4%;
24
+ --ring: 222.2 84% 4.9%;
25
+ }
26
+
27
27
  .theme-default.dark {
28
28
  --background: 222 47% 11%;
29
29
  --foreground: 210 40% 98%;
@@ -45,400 +45,400 @@
45
45
  --input: 217 32% 17%;
46
46
  --ring: 217 91% 60%;
47
47
  }
48
-
49
- /* Slate 테마 */
50
- .theme-slate {
51
- --background: 0 0% 100%;
52
- --foreground: 222.2 47.4% 11.2%;
53
- --card: 0 0% 100%;
54
- --card-foreground: 222.2 47.4% 11.2%;
55
- --popover: 0 0% 100%;
56
- --popover-foreground: 222.2 47.4% 11.2%;
57
- --primary: 222.2 47.4% 11.2%;
58
- --primary-foreground: 210 40% 98%;
59
- --secondary: 210 40% 96.1%;
60
- --secondary-foreground: 222.2 47.4% 11.2%;
61
- --muted: 210 40% 96.1%;
62
- --muted-foreground: 215.4 16.3% 46.9%;
63
- --accent: 210 40% 96.1%;
64
- --accent-foreground: 222.2 47.4% 11.2%;
65
- --destructive: 0 84.2% 60.2%;
66
- --destructive-foreground: 210 40% 98%;
67
- --border: 214.3 31.8% 91.4%;
68
- --input: 214.3 31.8% 91.4%;
69
- --ring: 222.2 47.4% 11.2%;
70
- }
71
-
72
- .theme-slate.dark {
73
- --background: 222.2 47.4% 11.2%;
74
- --foreground: 210 40% 98%;
75
- --card: 222.2 47.4% 11.2%;
76
- --card-foreground: 210 40% 98%;
77
- --popover: 222.2 47.4% 11.2%;
78
- --popover-foreground: 210 40% 98%;
79
- --primary: 210 40% 98%;
80
- --primary-foreground: 222.2 47.4% 11.2%;
81
- --secondary: 217.2 32.6% 17.5%;
82
- --secondary-foreground: 210 40% 98%;
83
- --muted: 217.2 32.6% 17.5%;
84
- --muted-foreground: 215 20.2% 65.1%;
85
- --accent: 217.2 32.6% 17.5%;
86
- --accent-foreground: 210 40% 98%;
87
- --destructive: 0 62.8% 30.6%;
88
- --destructive-foreground: 210 40% 98%;
89
- --border: 217.2 32.6% 17.5%;
90
- --input: 217.2 32.6% 17.5%;
91
- --ring: 212.7 26.8% 83.9%;
92
- }
93
-
94
- /* Rose 테마 */
95
- .theme-rose {
96
- --background: 0 0% 100%;
97
- --foreground: 240 10% 3.9%;
98
- --card: 0 0% 100%;
99
- --card-foreground: 240 10% 3.9%;
100
- --popover: 0 0% 100%;
101
- --popover-foreground: 240 10% 3.9%;
102
- --primary: 346.8 77.2% 49.8%;
103
- --primary-foreground: 355.7 100% 97.3%;
104
- --secondary: 240 4.8% 95.9%;
105
- --secondary-foreground: 240 5.9% 10%;
106
- --muted: 240 4.8% 95.9%;
107
- --muted-foreground: 240 3.8% 46.1%;
108
- --accent: 240 4.8% 95.9%;
109
- --accent-foreground: 240 5.9% 10%;
110
- --destructive: 0 84.2% 60.2%;
111
- --destructive-foreground: 0 0% 98%;
112
- --border: 240 5.9% 90%;
113
- --input: 240 5.9% 90%;
114
- --ring: 346.8 77.2% 49.8%;
115
- }
116
-
117
- .theme-rose.dark {
118
- --background: 20 14.3% 4.1%;
119
- --foreground: 0 0% 95%;
120
- --card: 24 9.8% 10%;
121
- --card-foreground: 0 0% 95%;
122
- --popover: 0 0% 9%;
123
- --popover-foreground: 0 0% 95%;
124
- --primary: 346.8 77.2% 49.8%;
125
- --primary-foreground: 355.7 100% 97.3%;
126
- --secondary: 240 3.7% 15.9%;
127
- --secondary-foreground: 0 0% 98%;
128
- --muted: 0 0% 15%;
129
- --muted-foreground: 240 5% 64.9%;
130
- --accent: 12 6.5% 15.1%;
131
- --accent-foreground: 0 0% 98%;
132
- --destructive: 0 62.8% 30.6%;
133
- --destructive-foreground: 0 85.7% 97.3%;
134
- --border: 240 3.7% 15.9%;
135
- --input: 240 3.7% 15.9%;
136
- --ring: 346.8 77.2% 49.8%;
137
- }
138
-
139
- /* Blue 테마 */
140
- .theme-blue {
141
- --background: 0 0% 100%;
142
- --foreground: 222.2 84% 4.9%;
143
- --card: 0 0% 100%;
144
- --card-foreground: 222.2 84% 4.9%;
145
- --popover: 0 0% 100%;
146
- --popover-foreground: 222.2 84% 4.9%;
147
- --primary: 221.2 83.2% 53.3%;
148
- --primary-foreground: 210 40% 98%;
149
- --secondary: 210 40% 96.1%;
150
- --secondary-foreground: 222.2 47.4% 11.2%;
151
- --muted: 210 40% 96.1%;
152
- --muted-foreground: 215.4 16.3% 46.9%;
153
- --accent: 210 40% 96.1%;
154
- --accent-foreground: 222.2 47.4% 11.2%;
155
- --destructive: 0 84.2% 60.2%;
156
- --destructive-foreground: 210 40% 98%;
157
- --border: 214.3 31.8% 91.4%;
158
- --input: 214.3 31.8% 91.4%;
159
- --ring: 221.2 83.2% 53.3%;
160
- }
161
-
162
- .theme-blue.dark {
163
- --background: 222.2 84% 4.9%;
164
- --foreground: 210 40% 98%;
165
- --card: 222.2 84% 4.9%;
166
- --card-foreground: 210 40% 98%;
167
- --popover: 222.2 84% 4.9%;
168
- --popover-foreground: 210 40% 98%;
169
- --primary: 217.2 91.2% 59.8%;
170
- --primary-foreground: 222.2 47.4% 11.2%;
171
- --secondary: 217.2 32.6% 17.5%;
172
- --secondary-foreground: 210 40% 98%;
173
- --muted: 217.2 32.6% 17.5%;
174
- --muted-foreground: 215 20.2% 65.1%;
175
- --accent: 217.2 32.6% 17.5%;
176
- --accent-foreground: 210 40% 98%;
177
- --destructive: 0 62.8% 30.6%;
178
- --destructive-foreground: 210 40% 98%;
179
- --border: 217.2 32.6% 17.5%;
180
- --input: 217.2 32.6% 17.5%;
181
- --ring: 224.3 76.3% 94.9%;
182
- }
183
-
184
- /* Green 테마 */
185
- .theme-green {
186
- --background: 0 0% 100%;
187
- --foreground: 240 10% 3.9%;
188
- --card: 0 0% 100%;
189
- --card-foreground: 240 10% 3.9%;
190
- --popover: 0 0% 100%;
191
- --popover-foreground: 240 10% 3.9%;
192
- --primary: 142.1 76.2% 36.3%;
193
- --primary-foreground: 355.7 100% 97.3%;
194
- --secondary: 240 4.8% 95.9%;
195
- --secondary-foreground: 240 5.9% 10%;
196
- --muted: 240 4.8% 95.9%;
197
- --muted-foreground: 240 3.8% 46.1%;
198
- --accent: 240 4.8% 95.9%;
199
- --accent-foreground: 240 5.9% 10%;
200
- --destructive: 0 84.2% 60.2%;
201
- --destructive-foreground: 0 0% 98%;
202
- --border: 240 5.9% 90%;
203
- --input: 240 5.9% 90%;
204
- --ring: 142.1 76.2% 36.3%;
205
- }
206
-
207
- .theme-green.dark {
208
- --background: 20 14.3% 4.1%;
209
- --foreground: 0 0% 95%;
210
- --card: 24 9.8% 10%;
211
- --card-foreground: 0 0% 95%;
212
- --popover: 0 0% 9%;
213
- --popover-foreground: 0 0% 95%;
214
- --primary: 142.1 70.6% 45.3%;
215
- --primary-foreground: 144.9 80.4% 10%;
216
- --secondary: 240 3.7% 15.9%;
217
- --secondary-foreground: 0 0% 98%;
218
- --muted: 0 0% 15%;
219
- --muted-foreground: 240 5% 64.9%;
220
- --accent: 12 6.5% 15.1%;
221
- --accent-foreground: 0 0% 98%;
222
- --destructive: 0 62.8% 30.6%;
223
- --destructive-foreground: 0 85.7% 97.3%;
224
- --border: 240 3.7% 15.9%;
225
- --input: 240 3.7% 15.9%;
226
- --ring: 142.4 71.8% 29.2%;
227
- }
228
-
229
- /* ============================================
230
- 커스텀 테마 예시 (Custom Theme Examples)
231
- ============================================
232
-
233
- 아래는 커스텀 테마를 추가하는 방법의 예시입니다.
234
- tweakcn에서 생성한 테마를 이 형식으로 변환하여 추가할 수 있습니다.
235
-
236
- 사용 방법:
237
- 1. tweakcn (https://tweakcn.com)에서 원하는 테마 생성
238
- 2. 생성된 CSS 변수를 아래 형식으로 변환
239
- 3. .theme-{name} 클래스로 추가
240
- 4. 라이트/다크 모드 모두 정의
241
- 5. 코드 수정 없이 자동으로 JHeader의 테마 선택기에 표시됨
242
-
243
- 주의사항:
244
- - .theme-default 클래스는 반드시 포함되어야 합니다 (이미 위에 정의됨)
245
- - 테마 이름은 영문, 숫자, 하이픈, 언더스코어만 사용 가능
246
- ============================================ */
247
-
248
- /* 커스텀 테마 예시 1: Purple 테마 */
249
- .theme-purple {
250
- --background: 0 0% 100%;
251
- --foreground: 280 8.9% 10%;
252
- --card: 0 0% 100%;
253
- --card-foreground: 280 8.9% 10%;
254
- --popover: 0 0% 100%;
255
- --popover-foreground: 280 8.9% 10%;
256
- --primary: 280 91% 65%;
257
- --primary-foreground: 0 0% 98%;
258
- --secondary: 280 4.8% 95.9%;
259
- --secondary-foreground: 280 5.9% 10%;
260
- --muted: 280 4.8% 95.9%;
261
- --muted-foreground: 280 3.8% 46.1%;
262
- --accent: 280 4.8% 95.9%;
263
- --accent-foreground: 280 5.9% 10%;
264
- --destructive: 0 84.2% 60.2%;
265
- --destructive-foreground: 0 0% 98%;
266
- --border: 280 5.9% 90%;
267
- --input: 280 5.9% 90%;
268
- --ring: 280 91% 65%;
269
- }
270
-
271
- .theme-purple.dark {
272
- --background: 280 10% 3.9%;
273
- --foreground: 0 0% 95%;
274
- --card: 280 10% 5%;
275
- --card-foreground: 0 0% 95%;
276
- --popover: 280 10% 3.9%;
277
- --popover-foreground: 0 0% 95%;
278
- --primary: 280 91% 65%;
279
- --primary-foreground: 280 10% 3.9%;
280
- --secondary: 280 3.7% 15.9%;
281
- --secondary-foreground: 0 0% 98%;
282
- --muted: 280 3.7% 15.9%;
283
- --muted-foreground: 280 5% 64.9%;
284
- --accent: 280 3.7% 15.9%;
285
- --accent-foreground: 0 0% 98%;
286
- --destructive: 0 62.8% 30.6%;
287
- --destructive-foreground: 0 85.7% 97.3%;
288
- --border: 280 3.7% 15.9%;
289
- --input: 280 3.7% 15.9%;
290
- --ring: 280 91% 65%;
291
- }
292
-
293
- /* 커스텀 테마 예시 2: Orange 테마 */
294
- .theme-orange {
295
- --background: 0 0% 100%;
296
- --foreground: 20 14.3% 4.1%;
297
- --card: 0 0% 100%;
298
- --card-foreground: 20 14.3% 4.1%;
299
- --popover: 0 0% 100%;
300
- --popover-foreground: 20 14.3% 4.1%;
301
- --primary: 24.6 95% 53.1%;
302
- --primary-foreground: 60 9.1% 97.8%;
303
- --secondary: 60 4.8% 95.9%;
304
- --secondary-foreground: 20 5.9% 10%;
305
- --muted: 60 4.8% 95.9%;
306
- --muted-foreground: 25 5.3% 44.7%;
307
- --accent: 60 4.8% 95.9%;
308
- --accent-foreground: 20 5.9% 10%;
309
- --destructive: 0 84.2% 60.2%;
310
- --destructive-foreground: 60 9.1% 97.8%;
311
- --border: 20 5.9% 90%;
312
- --input: 20 5.9% 90%;
313
- --ring: 24.6 95% 53.1%;
314
- }
315
-
316
- .theme-orange.dark {
317
- --background: 20 14.3% 4.1%;
318
- --foreground: 60 9.1% 97.8%;
319
- --card: 20 14.3% 4.1%;
320
- --card-foreground: 60 9.1% 97.8%;
321
- --popover: 20 14.3% 4.1%;
322
- --popover-foreground: 60 9.1% 97.8%;
323
- --primary: 20.5 90.2% 48.2%;
324
- --primary-foreground: 60 9.1% 97.8%;
325
- --secondary: 12 6.5% 15.1%;
326
- --secondary-foreground: 60 9.1% 97.8%;
327
- --muted: 12 6.5% 15.1%;
328
- --muted-foreground: 24 5.4% 63.9%;
329
- --accent: 12 6.5% 15.1%;
330
- --accent-foreground: 60 9.1% 97.8%;
331
- --destructive: 0 62.8% 30.6%;
332
- --destructive-foreground: 60 9.1% 97.8%;
333
- --border: 12 6.5% 15.1%;
334
- --input: 12 6.5% 15.1%;
335
- --ring: 20.5 90.2% 48.2%;
336
- }
337
-
338
- .theme-vescrow {
339
- --background: 270 50% 99.2157%;
340
- --foreground: 277.5000 44.4444% 3.5294%;
341
- --card: 0 0% 100%;
342
- --card-foreground: 277.5000 44.4444% 3.5294%;
343
- --popover: 0 0% 100%;
344
- --popover-foreground: 277.5000 44.4444% 3.5294%;
345
- --primary: 240 93.8144% 19.0196%;
346
- --primary-foreground: 0 0% 100%;
347
- --secondary: 220.0000 87.0968% 93.9216%;
348
- --secondary-foreground: 220 98.1308% 41.9608%;
349
- --muted: 270 13.3333% 94.1176%;
350
- --muted-foreground: 270.0000 6.0606% 38.8235%;
351
- --accent: 233.0769 100.0000% 94.9020%;
352
- --accent-foreground: 220 98.1308% 41.9608%;
353
- --destructive: 346.8367 77.1654% 49.8039%;
354
- --destructive-foreground: 0 0% 100%;
355
- --border: 277.5000 15.3846% 89.8039%;
356
- --input: 277.5000 15.3846% 89.8039%;
357
- --ring: 219.8969 100% 61.9608%;
358
- --chart-1: 220 98.1308% 41.9608%;
359
- --chart-2: 258.3117 89.5349% 66.2745%;
360
- --chart-3: 292.1893 84.0796% 60.5882%;
361
- --chart-4: 349.7238 89.1626% 60.1961%;
362
- --chart-5: 24.5815 94.9791% 53.1373%;
363
- --sidebar: 220.0000 87.0968% 93.9216%;
364
- --sidebar-foreground: 217.8947 93.4426% 11.9608%;
365
- --sidebar-primary: 270 50% 99.2157%;
366
- --sidebar-primary-foreground: 226.6667 44.2623% 11.9608%;
367
- --sidebar-accent: 235.5000 43.4783% 18.0392%;
368
- --sidebar-accent-foreground: 0 0% 100%;
369
- --sidebar-border: 241.5000 43.4783% 18.0392%;
370
- --sidebar-ring: 236.3636 58.5799% 33.1373%;
371
- --font-sans: Bricolage Grotesque, ui-sans-serif, sans-serif, system-ui;
372
- --font-serif: Georgia, serif;
373
- --font-mono: JetBrains Mono, monospace;
374
- --radius: 1.25rem;
375
- --shadow-x: 0px;
376
- --shadow-y: 4px;
377
- --shadow-blur: 10px;
378
- --shadow-spread: 0px;
379
- --shadow-opacity: 0.1;
380
- --shadow-color: 0, 0, 0;
381
- --shadow-2xs: 0px 4px 10px 0px hsl(0, 0, 0 / 0.05);
382
- --shadow-xs: 0px 4px 10px 0px hsl(0, 0, 0 / 0.05);
383
- --shadow-sm: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 1px 2px -1px hsl(0, 0, 0 / 0.10);
384
- --shadow: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 1px 2px -1px hsl(0, 0, 0 / 0.10);
385
- --shadow-md: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 2px 4px -1px hsl(0, 0, 0 / 0.10);
386
- --shadow-lg: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 4px 6px -1px hsl(0, 0, 0 / 0.10);
387
- --shadow-xl: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 8px 10px -1px hsl(0, 0, 0 / 0.10);
388
- --shadow-2xl: 0px 4px 10px 0px hsl(0, 0, 0 / 0.25);
389
- --tracking-normal: -0.01em;
390
- --spacing: 0.25rem;
391
- }
392
-
393
- .theme-vescrow.dark {
394
- --background: 222.8571 63.6364% 2.1569%;
395
- --foreground: 270 50% 99.2157%;
396
- --card: 221.5385 52.0000% 4.9020%;
397
- --card-foreground: 270 50% 99.2157%;
398
- --popover: 226.1538 52.0000% 4.9020%;
399
- --popover-foreground: 270 50% 99.2157%;
400
- --primary: 227.9221 83.6957% 36.0784%;
401
- --primary-foreground: 0 0% 100%;
402
- --secondary: 226.6667 44.2623% 11.9608%;
403
- --secondary-foreground: 270 50% 99.2157%;
404
- --muted: 229.0909 47.8261% 9.0196%;
405
- --muted-foreground: 240 7.9365% 62.9412%;
406
- --accent: 232.5000 43.4783% 18.0392%;
407
- --accent-foreground: 270 50% 99.2157%;
408
- --destructive: 346.8000 63.2911% 30.9804%;
409
- --destructive-foreground: 0 0% 100%;
410
- --border: 241.5000 43.4783% 18.0392%;
411
- --input: 229.5000 43.4783% 18.0392%;
412
- --ring: 238.1818 58.5799% 33.1373%;
413
- --chart-1: 230.1316 90.4762% 67.0588%;
414
- --chart-2: 28.8889 83.5052% 61.9608%;
415
- --chart-3: 349.7238 89.1626% 60.1961%;
416
- --chart-4: 24.5815 94.9791% 53.1373%;
417
- --chart-5: 238.1818 58.5799% 33.1373%;
418
- --sidebar: 228 50% 7.8431%;
419
- --sidebar-foreground: 235.5556 12.0000% 55.8824%;
420
- --sidebar-primary: 270 50% 99.2157%;
421
- --sidebar-primary-foreground: 231 50% 7.8431%;
422
- --sidebar-accent: 235.5556 44.2623% 11.9608%;
423
- --sidebar-accent-foreground: 270 50% 99.2157%;
424
- --sidebar-border: 237.7778 44.2623% 11.9608%;
425
- --sidebar-ring: 236.3636 58.5799% 33.1373%;
426
- --font-sans: Bricolage Grotesque, ui-sans-serif, sans-serif, system-ui;
427
- --font-serif: Georgia, serif;
428
- --font-mono: JetBrains Mono, monospace;
429
- --radius: 1.25rem;
430
- --shadow-x: 0px;
431
- --shadow-y: 10px;
432
- --shadow-blur: 20px;
433
- --shadow-spread: 0px;
434
- --shadow-opacity: 0.5;
435
- --shadow-color: 0, 0, 0;
436
- --shadow-2xs: 0px 10px 20px 0px hsl(0, 0, 0 / 0.25);
437
- --shadow-xs: 0px 10px 20px 0px hsl(0, 0, 0 / 0.25);
438
- --shadow-sm: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 1px 2px -1px hsl(0, 0, 0 / 0.50);
439
- --shadow: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 1px 2px -1px hsl(0, 0, 0 / 0.50);
440
- --shadow-md: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 2px 4px -1px hsl(0, 0, 0 / 0.50);
441
- --shadow-lg: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 4px 6px -1px hsl(0, 0, 0 / 0.50);
442
- --shadow-xl: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 8px 10px -1px hsl(0, 0, 0 / 0.50);
443
- --shadow-2xl: 0px 10px 20px 0px hsl(0, 0, 0 / 1.25);
48
+
49
+ /* Slate 테마 */
50
+ .theme-slate {
51
+ --background: 0 0% 100%;
52
+ --foreground: 222.2 47.4% 11.2%;
53
+ --card: 0 0% 100%;
54
+ --card-foreground: 222.2 47.4% 11.2%;
55
+ --popover: 0 0% 100%;
56
+ --popover-foreground: 222.2 47.4% 11.2%;
57
+ --primary: 222.2 47.4% 11.2%;
58
+ --primary-foreground: 210 40% 98%;
59
+ --secondary: 210 40% 96.1%;
60
+ --secondary-foreground: 222.2 47.4% 11.2%;
61
+ --muted: 210 40% 96.1%;
62
+ --muted-foreground: 215.4 16.3% 46.9%;
63
+ --accent: 210 40% 96.1%;
64
+ --accent-foreground: 222.2 47.4% 11.2%;
65
+ --destructive: 0 84.2% 60.2%;
66
+ --destructive-foreground: 210 40% 98%;
67
+ --border: 214.3 31.8% 91.4%;
68
+ --input: 214.3 31.8% 91.4%;
69
+ --ring: 222.2 47.4% 11.2%;
70
+ }
71
+
72
+ .theme-slate.dark {
73
+ --background: 222.2 47.4% 11.2%;
74
+ --foreground: 210 40% 98%;
75
+ --card: 222.2 47.4% 11.2%;
76
+ --card-foreground: 210 40% 98%;
77
+ --popover: 222.2 47.4% 11.2%;
78
+ --popover-foreground: 210 40% 98%;
79
+ --primary: 210 40% 98%;
80
+ --primary-foreground: 222.2 47.4% 11.2%;
81
+ --secondary: 217.2 32.6% 17.5%;
82
+ --secondary-foreground: 210 40% 98%;
83
+ --muted: 217.2 32.6% 17.5%;
84
+ --muted-foreground: 215 20.2% 65.1%;
85
+ --accent: 217.2 32.6% 17.5%;
86
+ --accent-foreground: 210 40% 98%;
87
+ --destructive: 0 62.8% 30.6%;
88
+ --destructive-foreground: 210 40% 98%;
89
+ --border: 217.2 32.6% 17.5%;
90
+ --input: 217.2 32.6% 17.5%;
91
+ --ring: 212.7 26.8% 83.9%;
92
+ }
93
+
94
+ /* Rose 테마 */
95
+ .theme-rose {
96
+ --background: 0 0% 100%;
97
+ --foreground: 240 10% 3.9%;
98
+ --card: 0 0% 100%;
99
+ --card-foreground: 240 10% 3.9%;
100
+ --popover: 0 0% 100%;
101
+ --popover-foreground: 240 10% 3.9%;
102
+ --primary: 346.8 77.2% 49.8%;
103
+ --primary-foreground: 355.7 100% 97.3%;
104
+ --secondary: 240 4.8% 95.9%;
105
+ --secondary-foreground: 240 5.9% 10%;
106
+ --muted: 240 4.8% 95.9%;
107
+ --muted-foreground: 240 3.8% 46.1%;
108
+ --accent: 240 4.8% 95.9%;
109
+ --accent-foreground: 240 5.9% 10%;
110
+ --destructive: 0 84.2% 60.2%;
111
+ --destructive-foreground: 0 0% 98%;
112
+ --border: 240 5.9% 90%;
113
+ --input: 240 5.9% 90%;
114
+ --ring: 346.8 77.2% 49.8%;
115
+ }
116
+
117
+ .theme-rose.dark {
118
+ --background: 20 14.3% 4.1%;
119
+ --foreground: 0 0% 95%;
120
+ --card: 24 9.8% 10%;
121
+ --card-foreground: 0 0% 95%;
122
+ --popover: 0 0% 9%;
123
+ --popover-foreground: 0 0% 95%;
124
+ --primary: 346.8 77.2% 49.8%;
125
+ --primary-foreground: 355.7 100% 97.3%;
126
+ --secondary: 240 3.7% 15.9%;
127
+ --secondary-foreground: 0 0% 98%;
128
+ --muted: 0 0% 15%;
129
+ --muted-foreground: 240 5% 64.9%;
130
+ --accent: 12 6.5% 15.1%;
131
+ --accent-foreground: 0 0% 98%;
132
+ --destructive: 0 62.8% 30.6%;
133
+ --destructive-foreground: 0 85.7% 97.3%;
134
+ --border: 240 3.7% 15.9%;
135
+ --input: 240 3.7% 15.9%;
136
+ --ring: 346.8 77.2% 49.8%;
137
+ }
138
+
139
+ /* Blue 테마 */
140
+ .theme-blue {
141
+ --background: 0 0% 100%;
142
+ --foreground: 222.2 84% 4.9%;
143
+ --card: 0 0% 100%;
144
+ --card-foreground: 222.2 84% 4.9%;
145
+ --popover: 0 0% 100%;
146
+ --popover-foreground: 222.2 84% 4.9%;
147
+ --primary: 221.2 83.2% 53.3%;
148
+ --primary-foreground: 210 40% 98%;
149
+ --secondary: 210 40% 96.1%;
150
+ --secondary-foreground: 222.2 47.4% 11.2%;
151
+ --muted: 210 40% 96.1%;
152
+ --muted-foreground: 215.4 16.3% 46.9%;
153
+ --accent: 210 40% 96.1%;
154
+ --accent-foreground: 222.2 47.4% 11.2%;
155
+ --destructive: 0 84.2% 60.2%;
156
+ --destructive-foreground: 210 40% 98%;
157
+ --border: 214.3 31.8% 91.4%;
158
+ --input: 214.3 31.8% 91.4%;
159
+ --ring: 221.2 83.2% 53.3%;
160
+ }
161
+
162
+ .theme-blue.dark {
163
+ --background: 222.2 84% 4.9%;
164
+ --foreground: 210 40% 98%;
165
+ --card: 222.2 84% 4.9%;
166
+ --card-foreground: 210 40% 98%;
167
+ --popover: 222.2 84% 4.9%;
168
+ --popover-foreground: 210 40% 98%;
169
+ --primary: 217.2 91.2% 59.8%;
170
+ --primary-foreground: 222.2 47.4% 11.2%;
171
+ --secondary: 217.2 32.6% 17.5%;
172
+ --secondary-foreground: 210 40% 98%;
173
+ --muted: 217.2 32.6% 17.5%;
174
+ --muted-foreground: 215 20.2% 65.1%;
175
+ --accent: 217.2 32.6% 17.5%;
176
+ --accent-foreground: 210 40% 98%;
177
+ --destructive: 0 62.8% 30.6%;
178
+ --destructive-foreground: 210 40% 98%;
179
+ --border: 217.2 32.6% 17.5%;
180
+ --input: 217.2 32.6% 17.5%;
181
+ --ring: 224.3 76.3% 94.9%;
182
+ }
183
+
184
+ /* Green 테마 */
185
+ .theme-green {
186
+ --background: 0 0% 100%;
187
+ --foreground: 240 10% 3.9%;
188
+ --card: 0 0% 100%;
189
+ --card-foreground: 240 10% 3.9%;
190
+ --popover: 0 0% 100%;
191
+ --popover-foreground: 240 10% 3.9%;
192
+ --primary: 142.1 76.2% 36.3%;
193
+ --primary-foreground: 355.7 100% 97.3%;
194
+ --secondary: 240 4.8% 95.9%;
195
+ --secondary-foreground: 240 5.9% 10%;
196
+ --muted: 240 4.8% 95.9%;
197
+ --muted-foreground: 240 3.8% 46.1%;
198
+ --accent: 240 4.8% 95.9%;
199
+ --accent-foreground: 240 5.9% 10%;
200
+ --destructive: 0 84.2% 60.2%;
201
+ --destructive-foreground: 0 0% 98%;
202
+ --border: 240 5.9% 90%;
203
+ --input: 240 5.9% 90%;
204
+ --ring: 142.1 76.2% 36.3%;
205
+ }
206
+
207
+ .theme-green.dark {
208
+ --background: 20 14.3% 4.1%;
209
+ --foreground: 0 0% 95%;
210
+ --card: 24 9.8% 10%;
211
+ --card-foreground: 0 0% 95%;
212
+ --popover: 0 0% 9%;
213
+ --popover-foreground: 0 0% 95%;
214
+ --primary: 142.1 70.6% 45.3%;
215
+ --primary-foreground: 144.9 80.4% 10%;
216
+ --secondary: 240 3.7% 15.9%;
217
+ --secondary-foreground: 0 0% 98%;
218
+ --muted: 0 0% 15%;
219
+ --muted-foreground: 240 5% 64.9%;
220
+ --accent: 12 6.5% 15.1%;
221
+ --accent-foreground: 0 0% 98%;
222
+ --destructive: 0 62.8% 30.6%;
223
+ --destructive-foreground: 0 85.7% 97.3%;
224
+ --border: 240 3.7% 15.9%;
225
+ --input: 240 3.7% 15.9%;
226
+ --ring: 142.4 71.8% 29.2%;
227
+ }
228
+
229
+ /* ============================================
230
+ 커스텀 테마 예시 (Custom Theme Examples)
231
+ ============================================
232
+
233
+ 아래는 커스텀 테마를 추가하는 방법의 예시입니다.
234
+ tweakcn에서 생성한 테마를 이 형식으로 변환하여 추가할 수 있습니다.
235
+
236
+ 사용 방법:
237
+ 1. tweakcn (https://tweakcn.com)에서 원하는 테마 생성
238
+ 2. 생성된 CSS 변수를 아래 형식으로 변환
239
+ 3. .theme-{name} 클래스로 추가
240
+ 4. 라이트/다크 모드 모두 정의
241
+ 5. 코드 수정 없이 자동으로 JHeader의 테마 선택기에 표시됨
242
+
243
+ 주의사항:
244
+ - .theme-default 클래스는 반드시 포함되어야 합니다 (이미 위에 정의됨)
245
+ - 테마 이름은 영문, 숫자, 하이픈, 언더스코어만 사용 가능
246
+ ============================================ */
247
+
248
+ /* 커스텀 테마 예시 1: Purple 테마 */
249
+ .theme-purple {
250
+ --background: 0 0% 100%;
251
+ --foreground: 280 8.9% 10%;
252
+ --card: 0 0% 100%;
253
+ --card-foreground: 280 8.9% 10%;
254
+ --popover: 0 0% 100%;
255
+ --popover-foreground: 280 8.9% 10%;
256
+ --primary: 280 91% 65%;
257
+ --primary-foreground: 0 0% 98%;
258
+ --secondary: 280 4.8% 95.9%;
259
+ --secondary-foreground: 280 5.9% 10%;
260
+ --muted: 280 4.8% 95.9%;
261
+ --muted-foreground: 280 3.8% 46.1%;
262
+ --accent: 280 4.8% 95.9%;
263
+ --accent-foreground: 280 5.9% 10%;
264
+ --destructive: 0 84.2% 60.2%;
265
+ --destructive-foreground: 0 0% 98%;
266
+ --border: 280 5.9% 90%;
267
+ --input: 280 5.9% 90%;
268
+ --ring: 280 91% 65%;
269
+ }
270
+
271
+ .theme-purple.dark {
272
+ --background: 280 10% 3.9%;
273
+ --foreground: 0 0% 95%;
274
+ --card: 280 10% 5%;
275
+ --card-foreground: 0 0% 95%;
276
+ --popover: 280 10% 3.9%;
277
+ --popover-foreground: 0 0% 95%;
278
+ --primary: 280 91% 65%;
279
+ --primary-foreground: 280 10% 3.9%;
280
+ --secondary: 280 3.7% 15.9%;
281
+ --secondary-foreground: 0 0% 98%;
282
+ --muted: 280 3.7% 15.9%;
283
+ --muted-foreground: 280 5% 64.9%;
284
+ --accent: 280 3.7% 15.9%;
285
+ --accent-foreground: 0 0% 98%;
286
+ --destructive: 0 62.8% 30.6%;
287
+ --destructive-foreground: 0 85.7% 97.3%;
288
+ --border: 280 3.7% 15.9%;
289
+ --input: 280 3.7% 15.9%;
290
+ --ring: 280 91% 65%;
291
+ }
292
+
293
+ /* 커스텀 테마 예시 2: Orange 테마 */
294
+ .theme-orange {
295
+ --background: 0 0% 100%;
296
+ --foreground: 20 14.3% 4.1%;
297
+ --card: 0 0% 100%;
298
+ --card-foreground: 20 14.3% 4.1%;
299
+ --popover: 0 0% 100%;
300
+ --popover-foreground: 20 14.3% 4.1%;
301
+ --primary: 24.6 95% 53.1%;
302
+ --primary-foreground: 60 9.1% 97.8%;
303
+ --secondary: 60 4.8% 95.9%;
304
+ --secondary-foreground: 20 5.9% 10%;
305
+ --muted: 60 4.8% 95.9%;
306
+ --muted-foreground: 25 5.3% 44.7%;
307
+ --accent: 60 4.8% 95.9%;
308
+ --accent-foreground: 20 5.9% 10%;
309
+ --destructive: 0 84.2% 60.2%;
310
+ --destructive-foreground: 60 9.1% 97.8%;
311
+ --border: 20 5.9% 90%;
312
+ --input: 20 5.9% 90%;
313
+ --ring: 24.6 95% 53.1%;
314
+ }
315
+
316
+ .theme-orange.dark {
317
+ --background: 20 14.3% 4.1%;
318
+ --foreground: 60 9.1% 97.8%;
319
+ --card: 20 14.3% 4.1%;
320
+ --card-foreground: 60 9.1% 97.8%;
321
+ --popover: 20 14.3% 4.1%;
322
+ --popover-foreground: 60 9.1% 97.8%;
323
+ --primary: 20.5 90.2% 48.2%;
324
+ --primary-foreground: 60 9.1% 97.8%;
325
+ --secondary: 12 6.5% 15.1%;
326
+ --secondary-foreground: 60 9.1% 97.8%;
327
+ --muted: 12 6.5% 15.1%;
328
+ --muted-foreground: 24 5.4% 63.9%;
329
+ --accent: 12 6.5% 15.1%;
330
+ --accent-foreground: 60 9.1% 97.8%;
331
+ --destructive: 0 62.8% 30.6%;
332
+ --destructive-foreground: 60 9.1% 97.8%;
333
+ --border: 12 6.5% 15.1%;
334
+ --input: 12 6.5% 15.1%;
335
+ --ring: 20.5 90.2% 48.2%;
336
+ }
337
+
338
+ .theme-vescrow {
339
+ --background: 270 50% 99.2157%;
340
+ --foreground: 277.5000 44.4444% 3.5294%;
341
+ --card: 0 0% 100%;
342
+ --card-foreground: 277.5000 44.4444% 3.5294%;
343
+ --popover: 0 0% 100%;
344
+ --popover-foreground: 277.5000 44.4444% 3.5294%;
345
+ --primary: 240 93.8144% 19.0196%;
346
+ --primary-foreground: 0 0% 100%;
347
+ --secondary: 220.0000 87.0968% 93.9216%;
348
+ --secondary-foreground: 220 98.1308% 41.9608%;
349
+ --muted: 270 13.3333% 94.1176%;
350
+ --muted-foreground: 270.0000 6.0606% 38.8235%;
351
+ --accent: 233.0769 100.0000% 94.9020%;
352
+ --accent-foreground: 220 98.1308% 41.9608%;
353
+ --destructive: 346.8367 77.1654% 49.8039%;
354
+ --destructive-foreground: 0 0% 100%;
355
+ --border: 277.5000 15.3846% 89.8039%;
356
+ --input: 277.5000 15.3846% 89.8039%;
357
+ --ring: 219.8969 100% 61.9608%;
358
+ --chart-1: 220 98.1308% 41.9608%;
359
+ --chart-2: 258.3117 89.5349% 66.2745%;
360
+ --chart-3: 292.1893 84.0796% 60.5882%;
361
+ --chart-4: 349.7238 89.1626% 60.1961%;
362
+ --chart-5: 24.5815 94.9791% 53.1373%;
363
+ --sidebar: 220.0000 87.0968% 93.9216%;
364
+ --sidebar-foreground: 217.8947 93.4426% 11.9608%;
365
+ --sidebar-primary: 270 50% 99.2157%;
366
+ --sidebar-primary-foreground: 226.6667 44.2623% 11.9608%;
367
+ --sidebar-accent: 235.5000 43.4783% 18.0392%;
368
+ --sidebar-accent-foreground: 0 0% 100%;
369
+ --sidebar-border: 241.5000 43.4783% 18.0392%;
370
+ --sidebar-ring: 236.3636 58.5799% 33.1373%;
371
+ --font-sans: Bricolage Grotesque, ui-sans-serif, sans-serif, system-ui;
372
+ --font-serif: Georgia, serif;
373
+ --font-mono: JetBrains Mono, monospace;
374
+ --radius: 1.25rem;
375
+ --shadow-x: 0px;
376
+ --shadow-y: 4px;
377
+ --shadow-blur: 10px;
378
+ --shadow-spread: 0px;
379
+ --shadow-opacity: 0.1;
380
+ --shadow-color: 0, 0, 0;
381
+ --shadow-2xs: 0px 4px 10px 0px hsl(0, 0, 0 / 0.05);
382
+ --shadow-xs: 0px 4px 10px 0px hsl(0, 0, 0 / 0.05);
383
+ --shadow-sm: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 1px 2px -1px hsl(0, 0, 0 / 0.10);
384
+ --shadow: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 1px 2px -1px hsl(0, 0, 0 / 0.10);
385
+ --shadow-md: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 2px 4px -1px hsl(0, 0, 0 / 0.10);
386
+ --shadow-lg: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 4px 6px -1px hsl(0, 0, 0 / 0.10);
387
+ --shadow-xl: 0px 4px 10px 0px hsl(0, 0, 0 / 0.10), 0px 8px 10px -1px hsl(0, 0, 0 / 0.10);
388
+ --shadow-2xl: 0px 4px 10px 0px hsl(0, 0, 0 / 0.25);
389
+ --tracking-normal: -0.01em;
390
+ --spacing: 0.25rem;
391
+ }
392
+
393
+ .theme-vescrow.dark {
394
+ --background: 222.8571 63.6364% 2.1569%;
395
+ --foreground: 270 50% 99.2157%;
396
+ --card: 221.5385 52.0000% 4.9020%;
397
+ --card-foreground: 270 50% 99.2157%;
398
+ --popover: 226.1538 52.0000% 4.9020%;
399
+ --popover-foreground: 270 50% 99.2157%;
400
+ --primary: 227.9221 83.6957% 36.0784%;
401
+ --primary-foreground: 0 0% 100%;
402
+ --secondary: 226.6667 44.2623% 11.9608%;
403
+ --secondary-foreground: 270 50% 99.2157%;
404
+ --muted: 229.0909 47.8261% 9.0196%;
405
+ --muted-foreground: 240 7.9365% 62.9412%;
406
+ --accent: 232.5000 43.4783% 18.0392%;
407
+ --accent-foreground: 270 50% 99.2157%;
408
+ --destructive: 346.8000 63.2911% 30.9804%;
409
+ --destructive-foreground: 0 0% 100%;
410
+ --border: 241.5000 43.4783% 18.0392%;
411
+ --input: 229.5000 43.4783% 18.0392%;
412
+ --ring: 238.1818 58.5799% 33.1373%;
413
+ --chart-1: 230.1316 90.4762% 67.0588%;
414
+ --chart-2: 28.8889 83.5052% 61.9608%;
415
+ --chart-3: 349.7238 89.1626% 60.1961%;
416
+ --chart-4: 24.5815 94.9791% 53.1373%;
417
+ --chart-5: 238.1818 58.5799% 33.1373%;
418
+ --sidebar: 228 50% 7.8431%;
419
+ --sidebar-foreground: 235.5556 12.0000% 55.8824%;
420
+ --sidebar-primary: 270 50% 99.2157%;
421
+ --sidebar-primary-foreground: 231 50% 7.8431%;
422
+ --sidebar-accent: 235.5556 44.2623% 11.9608%;
423
+ --sidebar-accent-foreground: 270 50% 99.2157%;
424
+ --sidebar-border: 237.7778 44.2623% 11.9608%;
425
+ --sidebar-ring: 236.3636 58.5799% 33.1373%;
426
+ --font-sans: Bricolage Grotesque, ui-sans-serif, sans-serif, system-ui;
427
+ --font-serif: Georgia, serif;
428
+ --font-mono: JetBrains Mono, monospace;
429
+ --radius: 1.25rem;
430
+ --shadow-x: 0px;
431
+ --shadow-y: 10px;
432
+ --shadow-blur: 20px;
433
+ --shadow-spread: 0px;
434
+ --shadow-opacity: 0.5;
435
+ --shadow-color: 0, 0, 0;
436
+ --shadow-2xs: 0px 10px 20px 0px hsl(0, 0, 0 / 0.25);
437
+ --shadow-xs: 0px 10px 20px 0px hsl(0, 0, 0 / 0.25);
438
+ --shadow-sm: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 1px 2px -1px hsl(0, 0, 0 / 0.50);
439
+ --shadow: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 1px 2px -1px hsl(0, 0, 0 / 0.50);
440
+ --shadow-md: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 2px 4px -1px hsl(0, 0, 0 / 0.50);
441
+ --shadow-lg: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 4px 6px -1px hsl(0, 0, 0 / 0.50);
442
+ --shadow-xl: 0px 10px 20px 0px hsl(0, 0, 0 / 0.50), 0px 8px 10px -1px hsl(0, 0, 0 / 0.50);
443
+ --shadow-2xl: 0px 10px 20px 0px hsl(0, 0, 0 / 1.25);
444
444
  }