@vizejs/vite-plugin-musea 0.13.0 → 0.15.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 (58) hide show
  1. package/dist/{a11y-C6xqILwZ.js → a11y-7maCHrYD.js} +164 -143
  2. package/dist/a11y-7maCHrYD.js.map +1 -0
  3. package/dist/a11y-CjpWs0s0.js +3 -0
  4. package/dist/autogen-Dx-SIBf_.js +3 -0
  5. package/dist/{autogen-ymQnARZK.js → autogen-dfLosbY_.js} +97 -85
  6. package/dist/autogen-dfLosbY_.js.map +1 -0
  7. package/dist/cli/index.d.ts +61 -0
  8. package/dist/cli/index.d.ts.map +1 -0
  9. package/dist/{cli.js → cli/index.js} +146 -138
  10. package/dist/cli/index.js.map +1 -0
  11. package/dist/gallery/assets/{cssMode-CcXMra0m.js → cssMode-Bh8Yx3kR.js} +1 -1
  12. package/dist/gallery/assets/{editor.api-DngZ07MW.js → editor.api-CmduODkO.js} +1 -1
  13. package/dist/gallery/assets/{editor.main-B7YVyVYi.js → editor.main-BGzZ6mZ7.js} +2 -2
  14. package/dist/gallery/assets/{freemarker2-VkSVdked.js → freemarker2-Cn3sOnVM.js} +1 -1
  15. package/dist/gallery/assets/{handlebars-YowBDP4W.js → handlebars-Bxtt_XDm.js} +1 -1
  16. package/dist/gallery/assets/{html-DJtSoeLQ.js → html-wxaydg4H.js} +1 -1
  17. package/dist/gallery/assets/{htmlMode-CfXIwSy5.js → htmlMode-EOxgEq0U.js} +1 -1
  18. package/dist/gallery/assets/{index-0_abCQYn.css → index-Cp7AWs0x.css} +1 -1
  19. package/dist/gallery/assets/{index-D94E3YZ4.js → index-DiHal_rf.js} +3 -3
  20. package/dist/gallery/assets/{javascript-OR93O4ZK.js → javascript-DN4Z2eWk.js} +1 -1
  21. package/dist/gallery/assets/{jsonMode-Cgol9YnW.js → jsonMode-tuRq32My.js} +1 -1
  22. package/dist/gallery/assets/{liquid-CrwTQQjB.js → liquid-D4J1rGOp.js} +1 -1
  23. package/dist/gallery/assets/{mdx-DwR18PX6.js → mdx-DxeOF6WC.js} +1 -1
  24. package/dist/gallery/assets/{monaco.contribution-CtStVxRd.js → monaco.contribution-C457czx3.js} +2 -2
  25. package/dist/gallery/assets/{python-D86nvZ4A.js → python-HLp-R9eA.js} +1 -1
  26. package/dist/gallery/assets/{razor-1784i4Ae.js → razor-2U4-SYvG.js} +1 -1
  27. package/dist/gallery/assets/{tsMode-DMkSHunc.js → tsMode-jWuA-Omz.js} +1 -1
  28. package/dist/gallery/assets/{typescript-Bu4A5btR.js → typescript-rOoZv0aH.js} +1 -1
  29. package/dist/gallery/assets/{xml-Sny7sZAt.js → xml-BfA65ILD.js} +1 -1
  30. package/dist/gallery/assets/{yaml-DKD1HvU8.js → yaml-CddGDANN.js} +1 -1
  31. package/dist/gallery/index.html +2 -2
  32. package/dist/index.css +496 -0
  33. package/dist/index.css.map +1 -0
  34. package/dist/index.d.ts +342 -24
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +925 -1320
  37. package/dist/index.js.map +1 -1
  38. package/dist/{vrt-CrjRhMVE.js → vrt-5_c9P1YY.js} +224 -184
  39. package/dist/vrt-5_c9P1YY.js.map +1 -0
  40. package/dist/{vrt-BuMkTrLK.d.ts → vrt-D6OumJUH.d.ts} +76 -260
  41. package/dist/vrt-D6OumJUH.d.ts.map +1 -0
  42. package/dist/vrt.d.ts +1 -1
  43. package/dist/vrt.js +1 -1
  44. package/package.json +7 -7
  45. package/dist/a11y-C6xqILwZ.js.map +0 -1
  46. package/dist/a11y-cQIJXM5k.d.ts +0 -61
  47. package/dist/a11y-cQIJXM5k.d.ts.map +0 -1
  48. package/dist/a11y.d.ts +0 -3
  49. package/dist/a11y.js +0 -3
  50. package/dist/autogen-D3Zjc3zI.d.ts +0 -64
  51. package/dist/autogen-D3Zjc3zI.d.ts.map +0 -1
  52. package/dist/autogen-ymQnARZK.js.map +0 -1
  53. package/dist/autogen.d.ts +0 -2
  54. package/dist/autogen.js +0 -3
  55. package/dist/cli.d.ts +0 -1
  56. package/dist/cli.js.map +0 -1
  57. package/dist/vrt-BuMkTrLK.d.ts.map +0 -1
  58. package/dist/vrt-CrjRhMVE.js.map +0 -1
package/dist/index.css ADDED
@@ -0,0 +1,496 @@
1
+ :root {
2
+ --musea-bg-primary: #e6e2d6;
3
+ --musea-bg-secondary: #ddd9cd;
4
+ --musea-bg-tertiary: #d4d0c4;
5
+ --musea-bg-elevated: #e6e2d6;
6
+ --musea-accent: #121212;
7
+ --musea-accent-hover: #2a2a2a;
8
+ --musea-accent-subtle: rgba(18, 18, 18, 0.08);
9
+ --musea-text: #121212;
10
+ --musea-text-secondary: #3a3a3a;
11
+ --musea-text-muted: #6b6b6b;
12
+ --musea-border: #c8c4b8;
13
+ --musea-border-subtle: #d4d0c4;
14
+ --musea-success: #16a34a;
15
+ --musea-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
16
+ --musea-radius-sm: 4px;
17
+ --musea-radius-md: 6px;
18
+ --musea-radius-lg: 8px;
19
+ --musea-transition: 0.15s ease;
20
+ }
21
+
22
+ * {
23
+ box-sizing: border-box;
24
+ margin: 0;
25
+ padding: 0;
26
+ }
27
+
28
+ body {
29
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
30
+ background: var(--musea-bg-primary);
31
+ color: var(--musea-text);
32
+ min-height: 100vh;
33
+ line-height: 1.5;
34
+ -webkit-font-smoothing: antialiased;
35
+ }
36
+
37
+ /* Header */
38
+ .header {
39
+ background: var(--musea-bg-secondary);
40
+ border-bottom: 1px solid var(--musea-border);
41
+ padding: 0 1.5rem;
42
+ height: 56px;
43
+ display: flex;
44
+ align-items: center;
45
+ justify-content: space-between;
46
+ position: sticky;
47
+ top: 0;
48
+ z-index: 100;
49
+ }
50
+
51
+ .header-left {
52
+ display: flex;
53
+ align-items: center;
54
+ gap: 1.5rem;
55
+ }
56
+
57
+ .logo {
58
+ display: flex;
59
+ align-items: center;
60
+ gap: 0.5rem;
61
+ font-size: 1.125rem;
62
+ font-weight: 700;
63
+ color: var(--musea-accent);
64
+ text-decoration: none;
65
+ }
66
+
67
+ .logo-svg {
68
+ width: 32px;
69
+ height: 32px;
70
+ flex-shrink: 0;
71
+ }
72
+
73
+ .logo-icon svg {
74
+ width: 16px;
75
+ height: 16px;
76
+ color: var(--musea-text);
77
+ }
78
+
79
+ .header-subtitle {
80
+ color: var(--musea-text-muted);
81
+ font-size: 0.8125rem;
82
+ font-weight: 500;
83
+ padding-left: 1.5rem;
84
+ border-left: 1px solid var(--musea-border);
85
+ }
86
+
87
+ .search-container {
88
+ position: relative;
89
+ width: 280px;
90
+ }
91
+
92
+ .search-input {
93
+ width: 100%;
94
+ background: var(--musea-bg-tertiary);
95
+ border: 1px solid var(--musea-border);
96
+ border-radius: var(--musea-radius-md);
97
+ padding: 0.5rem 0.75rem 0.5rem 2.25rem;
98
+ color: var(--musea-text);
99
+ font-size: 0.8125rem;
100
+ outline: none;
101
+ transition:
102
+ border-color var(--musea-transition),
103
+ background var(--musea-transition);
104
+ }
105
+
106
+ .search-input::placeholder {
107
+ color: var(--musea-text-muted);
108
+ }
109
+
110
+ .search-input:focus {
111
+ border-color: var(--musea-accent);
112
+ background: var(--musea-bg-elevated);
113
+ }
114
+
115
+ .search-icon {
116
+ position: absolute;
117
+ left: 0.75rem;
118
+ top: 50%;
119
+ transform: translateY(-50%);
120
+ color: var(--musea-text-muted);
121
+ pointer-events: none;
122
+ }
123
+
124
+ /* Layout */
125
+ .main {
126
+ display: grid;
127
+ grid-template-columns: 260px 1fr;
128
+ min-height: calc(100vh - 56px);
129
+ }
130
+
131
+ /* Sidebar */
132
+ .sidebar {
133
+ background: var(--musea-bg-secondary);
134
+ border-right: 1px solid var(--musea-border);
135
+ overflow-y: auto;
136
+ overflow-x: hidden;
137
+ }
138
+
139
+ .sidebar::-webkit-scrollbar {
140
+ width: 6px;
141
+ }
142
+
143
+ .sidebar::-webkit-scrollbar-track {
144
+ background: transparent;
145
+ }
146
+
147
+ .sidebar::-webkit-scrollbar-thumb {
148
+ background: var(--musea-border);
149
+ border-radius: 3px;
150
+ }
151
+
152
+ .sidebar-section {
153
+ padding: 0.75rem;
154
+ }
155
+
156
+ .category-header {
157
+ display: flex;
158
+ align-items: center;
159
+ gap: 0.5rem;
160
+ padding: 0.625rem 0.75rem;
161
+ font-size: 0.6875rem;
162
+ font-weight: 600;
163
+ text-transform: uppercase;
164
+ letter-spacing: 0.08em;
165
+ color: var(--musea-text-muted);
166
+ cursor: pointer;
167
+ user-select: none;
168
+ border-radius: var(--musea-radius-sm);
169
+ transition: background var(--musea-transition);
170
+ }
171
+
172
+ .category-header:hover {
173
+ background: var(--musea-bg-tertiary);
174
+ }
175
+
176
+ .category-icon {
177
+ width: 16px;
178
+ height: 16px;
179
+ transition: transform var(--musea-transition);
180
+ }
181
+
182
+ .category-header.collapsed .category-icon {
183
+ transform: rotate(-90deg);
184
+ }
185
+
186
+ .category-count {
187
+ margin-left: auto;
188
+ background: var(--musea-bg-tertiary);
189
+ padding: 0.125rem 0.375rem;
190
+ border-radius: 4px;
191
+ font-size: 0.625rem;
192
+ }
193
+
194
+ .art-list {
195
+ list-style: none;
196
+ margin-top: 0.25rem;
197
+ }
198
+
199
+ .art-item {
200
+ display: flex;
201
+ align-items: center;
202
+ gap: 0.625rem;
203
+ padding: 0.5rem 0.75rem 0.5rem 1.75rem;
204
+ border-radius: var(--musea-radius-sm);
205
+ cursor: pointer;
206
+ font-size: 0.8125rem;
207
+ color: var(--musea-text-secondary);
208
+ transition: all var(--musea-transition);
209
+ position: relative;
210
+ }
211
+
212
+ .art-item::before {
213
+ content: "";
214
+ position: absolute;
215
+ left: 0.75rem;
216
+ top: 50%;
217
+ transform: translateY(-50%);
218
+ width: 6px;
219
+ height: 6px;
220
+ border-radius: 50%;
221
+ background: var(--musea-border);
222
+ transition: background var(--musea-transition);
223
+ }
224
+
225
+ .art-item:hover {
226
+ background: var(--musea-bg-tertiary);
227
+ color: var(--musea-text);
228
+ }
229
+
230
+ .art-item:hover::before {
231
+ background: var(--musea-text-muted);
232
+ }
233
+
234
+ .art-item.active {
235
+ background: var(--musea-accent-subtle);
236
+ color: var(--musea-accent-hover);
237
+ }
238
+
239
+ .art-item.active::before {
240
+ background: var(--musea-accent);
241
+ }
242
+
243
+ .art-variant-count {
244
+ margin-left: auto;
245
+ font-size: 0.6875rem;
246
+ color: var(--musea-text-muted);
247
+ opacity: 0;
248
+ transition: opacity var(--musea-transition);
249
+ }
250
+
251
+ .art-item:hover .art-variant-count {
252
+ opacity: 1;
253
+ }
254
+
255
+ /* Content */
256
+ .content {
257
+ background: var(--musea-bg-primary);
258
+ overflow-y: auto;
259
+ }
260
+
261
+ .content-inner {
262
+ max-width: 1400px;
263
+ margin: 0 auto;
264
+ padding: 2rem;
265
+ }
266
+
267
+ .content-header {
268
+ margin-bottom: 2rem;
269
+ }
270
+
271
+ .content-title {
272
+ font-size: 1.5rem;
273
+ font-weight: 700;
274
+ margin-bottom: 0.5rem;
275
+ }
276
+
277
+ .content-description {
278
+ color: var(--musea-text-muted);
279
+ font-size: 0.9375rem;
280
+ max-width: 600px;
281
+ }
282
+
283
+ .content-meta {
284
+ display: flex;
285
+ align-items: center;
286
+ gap: 1rem;
287
+ margin-top: 1rem;
288
+ }
289
+
290
+ .meta-tag {
291
+ display: inline-flex;
292
+ align-items: center;
293
+ gap: 0.375rem;
294
+ padding: 0.25rem 0.625rem;
295
+ background: var(--musea-bg-secondary);
296
+ border: 1px solid var(--musea-border);
297
+ border-radius: var(--musea-radius-sm);
298
+ font-size: 0.75rem;
299
+ color: var(--musea-text-muted);
300
+ }
301
+
302
+ .meta-tag svg {
303
+ width: 12px;
304
+ height: 12px;
305
+ }
306
+
307
+ /* Gallery Grid */
308
+ .gallery {
309
+ display: grid;
310
+ grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
311
+ gap: 1.25rem;
312
+ }
313
+
314
+ /* Variant Card */
315
+ .variant-card {
316
+ background: var(--musea-bg-secondary);
317
+ border: 1px solid var(--musea-border);
318
+ border-radius: var(--musea-radius-lg);
319
+ overflow: hidden;
320
+ transition: all var(--musea-transition);
321
+ }
322
+
323
+ .variant-card:hover {
324
+ border-color: var(--musea-text-muted);
325
+ box-shadow: var(--musea-shadow);
326
+ transform: translateY(-2px);
327
+ }
328
+
329
+ .variant-preview {
330
+ aspect-ratio: 16 / 10;
331
+ background: var(--musea-bg-tertiary);
332
+ display: flex;
333
+ align-items: center;
334
+ justify-content: center;
335
+ position: relative;
336
+ overflow: hidden;
337
+ }
338
+
339
+ .variant-preview iframe {
340
+ width: 100%;
341
+ height: 100%;
342
+ border: none;
343
+ background: white;
344
+ }
345
+
346
+ .variant-preview-placeholder {
347
+ color: var(--musea-text-muted);
348
+ font-size: 0.8125rem;
349
+ text-align: center;
350
+ padding: 1rem;
351
+ }
352
+
353
+ .variant-preview-code {
354
+ font-family: "JetBrains Mono", "SF Mono", "Fira Code", monospace;
355
+ font-size: 0.75rem;
356
+ color: var(--musea-text-muted);
357
+ background: var(--musea-bg-primary);
358
+ padding: 1rem;
359
+ overflow: auto;
360
+ max-height: 100%;
361
+ width: 100%;
362
+ }
363
+
364
+ .variant-info {
365
+ padding: 1rem;
366
+ border-top: 1px solid var(--musea-border);
367
+ display: flex;
368
+ align-items: center;
369
+ justify-content: space-between;
370
+ }
371
+
372
+ .variant-name {
373
+ font-weight: 600;
374
+ font-size: 0.875rem;
375
+ }
376
+
377
+ .variant-badge {
378
+ font-size: 0.625rem;
379
+ font-weight: 600;
380
+ text-transform: uppercase;
381
+ letter-spacing: 0.04em;
382
+ padding: 0.1875rem 0.5rem;
383
+ border-radius: 4px;
384
+ background: var(--musea-accent-subtle);
385
+ color: var(--musea-accent);
386
+ }
387
+
388
+ .variant-actions {
389
+ display: flex;
390
+ gap: 0.5rem;
391
+ }
392
+
393
+ .variant-action-btn {
394
+ width: 28px;
395
+ height: 28px;
396
+ border: none;
397
+ background: var(--musea-bg-tertiary);
398
+ border-radius: var(--musea-radius-sm);
399
+ color: var(--musea-text-muted);
400
+ cursor: pointer;
401
+ display: flex;
402
+ align-items: center;
403
+ justify-content: center;
404
+ transition: all var(--musea-transition);
405
+ }
406
+
407
+ .variant-action-btn:hover {
408
+ background: var(--musea-bg-elevated);
409
+ color: var(--musea-text);
410
+ }
411
+
412
+ .variant-action-btn svg {
413
+ width: 14px;
414
+ height: 14px;
415
+ }
416
+
417
+ /* Empty State */
418
+ .empty-state {
419
+ display: flex;
420
+ flex-direction: column;
421
+ align-items: center;
422
+ justify-content: center;
423
+ min-height: 400px;
424
+ text-align: center;
425
+ padding: 2rem;
426
+ }
427
+
428
+ .empty-state-icon {
429
+ width: 80px;
430
+ height: 80px;
431
+ background: var(--musea-bg-secondary);
432
+ border-radius: var(--musea-radius-lg);
433
+ display: flex;
434
+ align-items: center;
435
+ justify-content: center;
436
+ margin-bottom: 1.5rem;
437
+ }
438
+
439
+ .empty-state-icon svg {
440
+ width: 40px;
441
+ height: 40px;
442
+ color: var(--musea-text-muted);
443
+ }
444
+
445
+ .empty-state-title {
446
+ font-size: 1.125rem;
447
+ font-weight: 600;
448
+ margin-bottom: 0.5rem;
449
+ }
450
+
451
+ .empty-state-text {
452
+ color: var(--musea-text-muted);
453
+ font-size: 0.875rem;
454
+ max-width: 300px;
455
+ }
456
+
457
+ /* Loading */
458
+ .loading {
459
+ display: flex;
460
+ align-items: center;
461
+ justify-content: center;
462
+ min-height: 200px;
463
+ color: var(--musea-text-muted);
464
+ gap: 0.75rem;
465
+ }
466
+
467
+ .loading-spinner {
468
+ width: 20px;
469
+ height: 20px;
470
+ border: 2px solid var(--musea-border);
471
+ border-top-color: var(--musea-accent);
472
+ border-radius: 50%;
473
+ animation: spin 0.8s linear infinite;
474
+ }
475
+
476
+ @keyframes spin {
477
+ to {
478
+ transform: rotate(360deg);
479
+ }
480
+ }
481
+
482
+ /* Responsive */
483
+ @media (max-width: 768px) {
484
+ .main {
485
+ grid-template-columns: 1fr;
486
+ }
487
+ .sidebar {
488
+ display: none;
489
+ }
490
+ .header-subtitle {
491
+ display: none;
492
+ }
493
+ }
494
+
495
+
496
+ /*# sourceMappingURL=index.css.map*/
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.css","names":[],"sources":["src/gallery/styles-base.css","src/gallery/styles-layout.css","src/gallery/styles-components.css"],"sourcesContent":[":root {\n --musea-bg-primary: #e6e2d6;\n --musea-bg-secondary: #ddd9cd;\n --musea-bg-tertiary: #d4d0c4;\n --musea-bg-elevated: #e6e2d6;\n --musea-accent: #121212;\n --musea-accent-hover: #2a2a2a;\n --musea-accent-subtle: rgba(18, 18, 18, 0.08);\n --musea-text: #121212;\n --musea-text-secondary: #3a3a3a;\n --musea-text-muted: #6b6b6b;\n --musea-border: #c8c4b8;\n --musea-border-subtle: #d4d0c4;\n --musea-success: #16a34a;\n --musea-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);\n --musea-radius-sm: 4px;\n --musea-radius-md: 6px;\n --musea-radius-lg: 8px;\n --musea-transition: 0.15s ease;\n}\n\n* {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n}\n\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n background: var(--musea-bg-primary);\n color: var(--musea-text);\n min-height: 100vh;\n line-height: 1.5;\n -webkit-font-smoothing: antialiased;\n}\n","/* Header */\n.header {\n background: var(--musea-bg-secondary);\n border-bottom: 1px solid var(--musea-border);\n padding: 0 1.5rem;\n height: 56px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n position: sticky;\n top: 0;\n z-index: 100;\n}\n\n.header-left {\n display: flex;\n align-items: center;\n gap: 1.5rem;\n}\n\n.logo {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n font-size: 1.125rem;\n font-weight: 700;\n color: var(--musea-accent);\n text-decoration: none;\n}\n\n.logo-svg {\n width: 32px;\n height: 32px;\n flex-shrink: 0;\n}\n\n.logo-icon svg {\n width: 16px;\n height: 16px;\n color: var(--musea-text);\n}\n\n.header-subtitle {\n color: var(--musea-text-muted);\n font-size: 0.8125rem;\n font-weight: 500;\n padding-left: 1.5rem;\n border-left: 1px solid var(--musea-border);\n}\n\n.search-container {\n position: relative;\n width: 280px;\n}\n\n.search-input {\n width: 100%;\n background: var(--musea-bg-tertiary);\n border: 1px solid var(--musea-border);\n border-radius: var(--musea-radius-md);\n padding: 0.5rem 0.75rem 0.5rem 2.25rem;\n color: var(--musea-text);\n font-size: 0.8125rem;\n outline: none;\n transition:\n border-color var(--musea-transition),\n background var(--musea-transition);\n}\n\n.search-input::placeholder {\n color: var(--musea-text-muted);\n}\n\n.search-input:focus {\n border-color: var(--musea-accent);\n background: var(--musea-bg-elevated);\n}\n\n.search-icon {\n position: absolute;\n left: 0.75rem;\n top: 50%;\n transform: translateY(-50%);\n color: var(--musea-text-muted);\n pointer-events: none;\n}\n\n/* Layout */\n.main {\n display: grid;\n grid-template-columns: 260px 1fr;\n min-height: calc(100vh - 56px);\n}\n\n/* Sidebar */\n.sidebar {\n background: var(--musea-bg-secondary);\n border-right: 1px solid var(--musea-border);\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.sidebar::-webkit-scrollbar {\n width: 6px;\n}\n\n.sidebar::-webkit-scrollbar-track {\n background: transparent;\n}\n\n.sidebar::-webkit-scrollbar-thumb {\n background: var(--musea-border);\n border-radius: 3px;\n}\n\n.sidebar-section {\n padding: 0.75rem;\n}\n\n.category-header {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n padding: 0.625rem 0.75rem;\n font-size: 0.6875rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.08em;\n color: var(--musea-text-muted);\n cursor: pointer;\n user-select: none;\n border-radius: var(--musea-radius-sm);\n transition: background var(--musea-transition);\n}\n\n.category-header:hover {\n background: var(--musea-bg-tertiary);\n}\n\n.category-icon {\n width: 16px;\n height: 16px;\n transition: transform var(--musea-transition);\n}\n\n.category-header.collapsed .category-icon {\n transform: rotate(-90deg);\n}\n\n.category-count {\n margin-left: auto;\n background: var(--musea-bg-tertiary);\n padding: 0.125rem 0.375rem;\n border-radius: 4px;\n font-size: 0.625rem;\n}\n\n.art-list {\n list-style: none;\n margin-top: 0.25rem;\n}\n\n.art-item {\n display: flex;\n align-items: center;\n gap: 0.625rem;\n padding: 0.5rem 0.75rem 0.5rem 1.75rem;\n border-radius: var(--musea-radius-sm);\n cursor: pointer;\n font-size: 0.8125rem;\n color: var(--musea-text-secondary);\n transition: all var(--musea-transition);\n position: relative;\n}\n\n.art-item::before {\n content: \"\";\n position: absolute;\n left: 0.75rem;\n top: 50%;\n transform: translateY(-50%);\n width: 6px;\n height: 6px;\n border-radius: 50%;\n background: var(--musea-border);\n transition: background var(--musea-transition);\n}\n\n.art-item:hover {\n background: var(--musea-bg-tertiary);\n color: var(--musea-text);\n}\n\n.art-item:hover::before {\n background: var(--musea-text-muted);\n}\n\n.art-item.active {\n background: var(--musea-accent-subtle);\n color: var(--musea-accent-hover);\n}\n\n.art-item.active::before {\n background: var(--musea-accent);\n}\n\n.art-variant-count {\n margin-left: auto;\n font-size: 0.6875rem;\n color: var(--musea-text-muted);\n opacity: 0;\n transition: opacity var(--musea-transition);\n}\n\n.art-item:hover .art-variant-count {\n opacity: 1;\n}\n\n/* Content */\n.content {\n background: var(--musea-bg-primary);\n overflow-y: auto;\n}\n\n.content-inner {\n max-width: 1400px;\n margin: 0 auto;\n padding: 2rem;\n}\n\n.content-header {\n margin-bottom: 2rem;\n}\n\n.content-title {\n font-size: 1.5rem;\n font-weight: 700;\n margin-bottom: 0.5rem;\n}\n\n.content-description {\n color: var(--musea-text-muted);\n font-size: 0.9375rem;\n max-width: 600px;\n}\n\n.content-meta {\n display: flex;\n align-items: center;\n gap: 1rem;\n margin-top: 1rem;\n}\n\n.meta-tag {\n display: inline-flex;\n align-items: center;\n gap: 0.375rem;\n padding: 0.25rem 0.625rem;\n background: var(--musea-bg-secondary);\n border: 1px solid var(--musea-border);\n border-radius: var(--musea-radius-sm);\n font-size: 0.75rem;\n color: var(--musea-text-muted);\n}\n\n.meta-tag svg {\n width: 12px;\n height: 12px;\n}\n","/* Gallery Grid */\n.gallery {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));\n gap: 1.25rem;\n}\n\n/* Variant Card */\n.variant-card {\n background: var(--musea-bg-secondary);\n border: 1px solid var(--musea-border);\n border-radius: var(--musea-radius-lg);\n overflow: hidden;\n transition: all var(--musea-transition);\n}\n\n.variant-card:hover {\n border-color: var(--musea-text-muted);\n box-shadow: var(--musea-shadow);\n transform: translateY(-2px);\n}\n\n.variant-preview {\n aspect-ratio: 16 / 10;\n background: var(--musea-bg-tertiary);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n overflow: hidden;\n}\n\n.variant-preview iframe {\n width: 100%;\n height: 100%;\n border: none;\n background: white;\n}\n\n.variant-preview-placeholder {\n color: var(--musea-text-muted);\n font-size: 0.8125rem;\n text-align: center;\n padding: 1rem;\n}\n\n.variant-preview-code {\n font-family: \"JetBrains Mono\", \"SF Mono\", \"Fira Code\", monospace;\n font-size: 0.75rem;\n color: var(--musea-text-muted);\n background: var(--musea-bg-primary);\n padding: 1rem;\n overflow: auto;\n max-height: 100%;\n width: 100%;\n}\n\n.variant-info {\n padding: 1rem;\n border-top: 1px solid var(--musea-border);\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.variant-name {\n font-weight: 600;\n font-size: 0.875rem;\n}\n\n.variant-badge {\n font-size: 0.625rem;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.04em;\n padding: 0.1875rem 0.5rem;\n border-radius: 4px;\n background: var(--musea-accent-subtle);\n color: var(--musea-accent);\n}\n\n.variant-actions {\n display: flex;\n gap: 0.5rem;\n}\n\n.variant-action-btn {\n width: 28px;\n height: 28px;\n border: none;\n background: var(--musea-bg-tertiary);\n border-radius: var(--musea-radius-sm);\n color: var(--musea-text-muted);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: all var(--musea-transition);\n}\n\n.variant-action-btn:hover {\n background: var(--musea-bg-elevated);\n color: var(--musea-text);\n}\n\n.variant-action-btn svg {\n width: 14px;\n height: 14px;\n}\n\n/* Empty State */\n.empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 400px;\n text-align: center;\n padding: 2rem;\n}\n\n.empty-state-icon {\n width: 80px;\n height: 80px;\n background: var(--musea-bg-secondary);\n border-radius: var(--musea-radius-lg);\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 1.5rem;\n}\n\n.empty-state-icon svg {\n width: 40px;\n height: 40px;\n color: var(--musea-text-muted);\n}\n\n.empty-state-title {\n font-size: 1.125rem;\n font-weight: 600;\n margin-bottom: 0.5rem;\n}\n\n.empty-state-text {\n color: var(--musea-text-muted);\n font-size: 0.875rem;\n max-width: 300px;\n}\n\n/* Loading */\n.loading {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 200px;\n color: var(--musea-text-muted);\n gap: 0.75rem;\n}\n\n.loading-spinner {\n width: 20px;\n height: 20px;\n border: 2px solid var(--musea-border);\n border-top-color: var(--musea-accent);\n border-radius: 50%;\n animation: spin 0.8s linear infinite;\n}\n\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n/* Responsive */\n@media (max-width: 768px) {\n .main {\n grid-template-columns: 1fr;\n }\n .sidebar {\n display: none;\n }\n .header-subtitle {\n display: none;\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AC5QA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}