veritheme 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.
@@ -0,0 +1,4442 @@
1
+ @layer veritheme{/* Auto-generated by scripts/build-component-css.mjs from components/button.json. Do not edit manually. */
2
+
3
+ /* ── Button ────────────────────────────────────────── */
4
+
5
+ .vt-btn {
6
+ --btn-bg: hsl(var(--accents-brand));
7
+ --btn-bg-hover: hsl(var(--brand-hover));
8
+ --btn-bg-active: hsl(var(--brand-active));
9
+ --btn-bg-disabled: hsl(var(--brand-disabled));
10
+ --btn-fg: hsl(var(--on-brand));
11
+ --btn-fg-disabled: hsl(var(--on-brand));
12
+ --btn-border: none;
13
+ --btn-radius: var(--radius-lg);
14
+ --btn-height: var(--control-height-md);
15
+ --btn-padding-x: var(--control-padding-x-md);
16
+ --btn-padding-y: var(--control-padding-y-md);
17
+ --btn-font-size: var(--font-size-sm);
18
+ --btn-focus-ring-color: var(--border-focus);
19
+ display: inline-flex;
20
+ align-items: center;
21
+ justify-content: center;
22
+ border: var(--btn-border);
23
+ border-radius: var(--btn-radius);
24
+ background: var(--btn-bg);
25
+ color: var(--btn-fg);
26
+ height: var(--btn-height);
27
+ padding: var(--btn-padding-y) var(--btn-padding-x);
28
+ font-size: var(--btn-font-size);
29
+ font-weight: var(--font-weight-medium);
30
+ line-height: 1;
31
+ transition: background-color 150ms var(--motion-ease-out), color 150ms var(--motion-ease-out), border-color 150ms var(--motion-ease-out), box-shadow 150ms var(--motion-ease-out);
32
+ cursor: pointer;
33
+ user-select: none;
34
+ white-space: nowrap;
35
+ gap: var(--spacing-2);
36
+ }
37
+
38
+ .vt-btn:hover {
39
+ background: var(--btn-bg-hover);
40
+ }
41
+
42
+ .vt-btn:active {
43
+ background: var(--btn-bg-active);
44
+ }
45
+
46
+ .vt-btn:focus-visible {
47
+ outline: none;
48
+ box-shadow: 0 0 0 var(--focus-ring-width) hsl(var(--btn-focus-ring-color) / 0.25);
49
+ }
50
+
51
+ .vt-btn:disabled,
52
+ .vt-btn.vt-disabled {
53
+ background: var(--btn-bg-disabled);
54
+ color: var(--btn-fg-disabled);
55
+ cursor: not-allowed;
56
+ pointer-events: none;
57
+ }
58
+
59
+ /* ── Button · intent ── */
60
+
61
+ .vt-btn-primary {
62
+ --btn-bg: hsl(var(--accents-brand));
63
+ --btn-bg-hover: hsl(var(--brand-hover));
64
+ --btn-bg-active: hsl(var(--brand-active));
65
+ --btn-bg-disabled: hsl(var(--brand-disabled));
66
+ --btn-fg: hsl(var(--on-brand));
67
+ --btn-fg-disabled: hsl(var(--on-brand));
68
+ --btn-focus-ring-color: var(--border-focus);
69
+ }
70
+
71
+ .vt-btn-secondary {
72
+ --btn-bg: hsl(var(--surfaces-subtle));
73
+ --btn-bg-hover: hsl(var(--surfaces-moderate));
74
+ --btn-bg-active: hsl(var(--surfaces-contrast));
75
+ --btn-bg-disabled: hsl(var(--surfaces-subtle));
76
+ --btn-fg: hsl(var(--mains-primary));
77
+ --btn-fg-disabled: hsl(var(--mains-quaternary));
78
+ --btn-focus-ring-color: var(--border-focus);
79
+ }
80
+
81
+ .vt-btn-bordered {
82
+ --btn-bg: hsl(var(--surfaces-surface));
83
+ --btn-bg-hover: hsl(var(--surfaces-subtle));
84
+ --btn-bg-active: hsl(var(--surfaces-moderate));
85
+ --btn-bg-disabled: hsl(var(--surfaces-surface));
86
+ --btn-fg: hsl(var(--mains-primary));
87
+ --btn-fg-disabled: hsl(var(--mains-quaternary));
88
+ --btn-border: var(--border-width-default) solid hsl(var(--border-default));
89
+ --btn-focus-ring-color: var(--border-focus);
90
+ }
91
+
92
+ .vt-btn-danger {
93
+ --btn-bg: hsl(var(--error-primary));
94
+ --btn-bg-hover: hsl(var(--red-600));
95
+ --btn-bg-active: hsl(var(--red-700));
96
+ --btn-bg-disabled: hsl(var(--red-200));
97
+ --btn-fg: hsl(var(--on-error));
98
+ --btn-fg-disabled: hsl(var(--on-error));
99
+ --btn-focus-ring-color: var(--border-focus);
100
+ }
101
+
102
+ .vt-btn-link {
103
+ --btn-bg: transparent;
104
+ --btn-bg-hover: transparent;
105
+ --btn-bg-active: transparent;
106
+ --btn-bg-disabled: transparent;
107
+ --btn-fg: hsl(var(--accents-brand));
108
+ --btn-fg-disabled: hsl(var(--brand-disabled));
109
+ text-underline-offset: 4px;
110
+ }
111
+
112
+ .vt-btn-link:hover {
113
+ text-decoration: underline;
114
+ }
115
+
116
+ .vt-btn-ghost {
117
+ --btn-bg: transparent;
118
+ --btn-bg-hover: hsl(var(--surfaces-subtle));
119
+ --btn-bg-active: hsl(var(--surfaces-moderate));
120
+ --btn-bg-disabled: transparent;
121
+ --btn-fg: hsl(var(--mains-secondary));
122
+ --btn-fg-disabled: hsl(var(--mains-quaternary));
123
+ --btn-focus-ring-color: var(--border-focus);
124
+ }
125
+
126
+ .vt-btn-ghost:hover {
127
+ color: hsl(var(--mains-primary));
128
+ }
129
+
130
+ /* ── Button · size ── */
131
+
132
+ .vt-btn-sm {
133
+ --btn-height: var(--control-height-sm);
134
+ --btn-padding-x: var(--control-padding-x-sm);
135
+ --btn-padding-y: var(--control-padding-y-sm);
136
+ --btn-font-size: var(--font-size-xs);
137
+ }
138
+
139
+ .vt-btn-lg {
140
+ --btn-height: var(--control-height-lg);
141
+ --btn-padding-x: var(--control-padding-x-lg);
142
+ --btn-padding-y: var(--control-padding-y-lg);
143
+ }
144
+
145
+ .vt-btn-xl {
146
+ --btn-height: var(--control-height-xl);
147
+ --btn-padding-x: var(--control-padding-x-xl);
148
+ --btn-padding-y: var(--control-padding-y-xl);
149
+ }
150
+
151
+ /* ── Button · shape ── */
152
+
153
+ .vt-btn-icon {
154
+ --btn-padding-x: 0;
155
+ width: var(--btn-height);
156
+ }
157
+ /* Auto-generated by scripts/build-component-css.mjs from components/badge.json. Do not edit manually. */
158
+
159
+ /* ── Badge ────────────────────────────────────────── */
160
+
161
+ .vt-badge {
162
+ --badge-accent: hsl(var(--accents-brand));
163
+ --badge-bg: hsl(var(--accents-brand));
164
+ --badge-fg: hsl(var(--on-brand));
165
+ display: inline-flex;
166
+ align-items: center;
167
+ gap: var(--spacing-1);
168
+ border-radius: var(--radius-full);
169
+ border: var(--border-width-default) solid transparent;
170
+ padding: var(--spacing-1) var(--spacing-2);
171
+ font-size: var(--font-size-xs);
172
+ font-weight: var(--font-weight-semibold);
173
+ line-height: 1rem;
174
+ white-space: nowrap;
175
+ background: var(--badge-bg);
176
+ color: var(--badge-fg);
177
+ }
178
+
179
+ /* ── Badge · color ── */
180
+
181
+ .vt-badge-primary {
182
+ --badge-accent: hsl(var(--accents-brand));
183
+ --badge-bg: hsl(var(--accents-brand));
184
+ --badge-fg: hsl(var(--on-brand));
185
+ }
186
+
187
+ .vt-badge-secondary {
188
+ --badge-accent: hsl(var(--mains-secondary));
189
+ --badge-bg: hsl(var(--surfaces-moderate));
190
+ --badge-fg: hsl(var(--mains-primary));
191
+ }
192
+
193
+ .vt-badge-danger {
194
+ --badge-accent: hsl(var(--error-primary));
195
+ --badge-bg: hsl(var(--error-primary));
196
+ --badge-fg: hsl(var(--on-error));
197
+ }
198
+
199
+ .vt-badge-success {
200
+ --badge-accent: hsl(var(--success-primary));
201
+ --badge-bg: hsl(var(--success-primary));
202
+ --badge-fg: hsl(var(--on-success));
203
+ }
204
+
205
+ .vt-badge-warning {
206
+ --badge-accent: hsl(var(--warning-primary));
207
+ --badge-bg: hsl(var(--warning-primary));
208
+ --badge-fg: hsl(var(--on-warning));
209
+ }
210
+
211
+ /* ── Badge · style ── */
212
+
213
+ .vt-badge-bordered {
214
+ background: transparent;
215
+ border-color: var(--badge-accent);
216
+ color: var(--badge-accent);
217
+ }
218
+
219
+ .vt-badge > svg, .vt-badge > img, .vt-badge > .vt-badge-icon {
220
+ width: 20px;
221
+ height: 20px;
222
+ flex-shrink: 0;
223
+ }
224
+ /* Auto-generated by scripts/build-component-css.mjs from components/pill.json. Do not edit manually. */
225
+
226
+ /* ── Pill ────────────────────────────────────────── */
227
+
228
+ .vt-pill {
229
+ display: inline-flex;
230
+ align-items: center;
231
+ border-radius: var(--radius-full);
232
+ padding: var(--spacing-1) var(--spacing-3);
233
+ font-size: var(--font-size-xs);
234
+ font-weight: var(--font-weight-medium);
235
+ white-space: nowrap;
236
+ }
237
+
238
+ /* ── Pill · size ── */
239
+
240
+ .vt-pill-sm {
241
+ padding: 2px var(--spacing-2);
242
+ font-size: 10px;
243
+ }
244
+
245
+ .vt-pill-lg {
246
+ padding: var(--spacing-1_5) var(--spacing-4);
247
+ font-size: var(--font-size-sm);
248
+ }
249
+ /* Auto-generated by scripts/build-component-css.mjs from components/kbd.json. Do not edit manually. */
250
+
251
+ /* ── Kbd ────────────────────────────────────────── */
252
+
253
+ .vt-kbd {
254
+ display: inline-flex;
255
+ align-items: center;
256
+ justify-content: center;
257
+ border-radius: var(--radius-sm);
258
+ border: var(--border-width-default) solid hsl(var(--border-default));
259
+ background: hsl(var(--surfaces-moderate));
260
+ padding: var(--spacing-0_5) var(--spacing-1_5);
261
+ font-size: var(--font-size-xs);
262
+ font-family: ui-monospace, monospace;
263
+ font-weight: var(--font-weight-medium);
264
+ line-height: 1.4;
265
+ color: hsl(var(--mains-secondary));
266
+ white-space: nowrap;
267
+ }
268
+ /* Auto-generated by scripts/build-component-css.mjs from components/avatar.json. Do not edit manually. */
269
+
270
+ /* ── Avatar ────────────────────────────────────────── */
271
+
272
+ .vt-avatar {
273
+ position: relative;
274
+ display: inline-flex;
275
+ align-items: center;
276
+ justify-content: center;
277
+ border-radius: var(--radius-full);
278
+ background: hsl(var(--surfaces-moderate));
279
+ overflow: hidden;
280
+ flex-shrink: 0;
281
+ }
282
+
283
+ /* ── Avatar · size ── */
284
+
285
+ .vt-avatar-sm {
286
+ width: 1.5rem;
287
+ height: 1.5rem;
288
+ font-size: var(--font-size-xs);
289
+ }
290
+
291
+ .vt-avatar-md {
292
+ width: 2.5rem;
293
+ height: 2.5rem;
294
+ font-size: var(--font-size-sm);
295
+ }
296
+
297
+ .vt-avatar-lg {
298
+ width: 3.5rem;
299
+ height: 3.5rem;
300
+ font-size: var(--font-size-lg);
301
+ }
302
+
303
+ .vt-avatar-xl {
304
+ width: 5rem;
305
+ height: 5rem;
306
+ font-size: var(--font-size-2xl);
307
+ }
308
+
309
+ .vt-avatar img {
310
+ width: 100%;
311
+ height: 100%;
312
+ object-fit: cover;
313
+ }
314
+ /* Auto-generated by scripts/build-component-css.mjs from components/separator.json. Do not edit manually. */
315
+
316
+ /* ── Separator ────────────────────────────────────────── */
317
+
318
+ .vt-separator {
319
+ flex-shrink: 0;
320
+ background: hsl(var(--border-default));
321
+ }
322
+
323
+ /* ── Separator · orientation ── */
324
+
325
+ .vt-separator-h {
326
+ height: 1px;
327
+ width: 100%;
328
+ }
329
+
330
+ .vt-separator-v {
331
+ width: var(--border-width-default);
332
+ height: 100%;
333
+ }
334
+ /* Auto-generated by scripts/build-component-css.mjs from components/skeleton.json. Do not edit manually. */
335
+
336
+ /* ── Skeleton ────────────────────────────────────────── */
337
+
338
+ .vt-skeleton {
339
+ background: hsl(var(--surfaces-moderate));
340
+ border-radius: var(--radius-lg);
341
+ animation: vt-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
342
+ }
343
+
344
+ /* ── Skeleton · shape ── */
345
+
346
+ .vt-skeleton-circle {
347
+ background: hsl(var(--surfaces-moderate));
348
+ border-radius: var(--radius-full);
349
+ animation: vt-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
350
+ }
351
+ /* Auto-generated by scripts/build-component-css.mjs from components/link.json. Do not edit manually. */
352
+
353
+ /* ── Link ────────────────────────────────────────── */
354
+
355
+ .vt-link {
356
+ font-size: var(--font-size-sm);
357
+ color: hsl(var(--accents-brand));
358
+ text-decoration: underline;
359
+ text-underline-offset: 2px;
360
+ transition: color var(--transition-fast);
361
+ }
362
+
363
+ .vt-link:hover {
364
+ color: hsl(var(--brand-hover));
365
+ }
366
+
367
+ /* ── Link · style ── */
368
+
369
+ .vt-link-muted {
370
+ color: hsl(var(--mains-secondary));
371
+ }
372
+
373
+ .vt-link-muted:hover {
374
+ color: hsl(var(--mains-primary));
375
+ }
376
+ /* Auto-generated by scripts/build-component-css.mjs from components/tooltip.json. Do not edit manually. */
377
+
378
+ /* ── Tooltip ────────────────────────────────────────── */
379
+
380
+ .vt-tooltip {
381
+ position: absolute;
382
+ z-index: 50;
383
+ border-radius: var(--radius-lg);
384
+ background: hsl(var(--accents-brand));
385
+ color: hsl(var(--on-brand));
386
+ padding: var(--spacing-1_5) var(--spacing-3);
387
+ font-size: var(--font-size-xs);
388
+ font-weight: var(--font-weight-medium);
389
+ white-space: nowrap;
390
+ pointer-events: none;
391
+ opacity: 0;
392
+ transition: opacity var(--transition-fast);
393
+ bottom: 100%;
394
+ inset-inline-start: 50%;
395
+ transform: translateX(-50%);
396
+ margin-bottom: var(--spacing-2);
397
+ }
398
+
399
+ /* ── Tooltip · placement ── */
400
+
401
+ .vt-tooltip-bottom {
402
+ top: 100%;
403
+ bottom: auto;
404
+ margin-bottom: 0;
405
+ margin-top: var(--spacing-2);
406
+ }
407
+
408
+ .vt-tooltip-left {
409
+ inset-inline-end: 100%;
410
+ inset-inline-start: auto;
411
+ top: 50%;
412
+ bottom: auto;
413
+ transform: translateY(-50%);
414
+ margin-bottom: 0;
415
+ margin-inline-end: var(--spacing-2);
416
+ }
417
+
418
+ .vt-tooltip-right {
419
+ inset-inline-start: 100%;
420
+ top: 50%;
421
+ bottom: auto;
422
+ transform: translateY(-50%);
423
+ margin-bottom: 0;
424
+ margin-inline-start: var(--spacing-2);
425
+ }
426
+
427
+ .vt-tooltip-wrap {
428
+ position: relative;
429
+ display: inline-flex;
430
+ }
431
+
432
+ .vt-tooltip-wrap:hover > .vt-tooltip {
433
+ opacity: 1;
434
+ }
435
+ /* Auto-generated by scripts/build-component-css.mjs from components/checkbox.json. Do not edit manually. */
436
+
437
+ /* ── Checkbox ────────────────────────────────────────── */
438
+
439
+ .vt-checkbox {
440
+ width: 16px;
441
+ height: 16px;
442
+ border-radius: 4px;
443
+ border: 1.5px solid hsl(var(--accents-brand));
444
+ display: flex;
445
+ align-items: center;
446
+ justify-content: center;
447
+ cursor: pointer;
448
+ transition: all 0.15s;
449
+ flex-shrink: 0;
450
+ background: transparent;
451
+ }
452
+
453
+ .vt-checkbox.checked {
454
+ background: hsl(var(--accents-brand));
455
+ border-color: hsl(var(--accents-brand));
456
+ }
457
+
458
+ .vt-checkbox.disabled {
459
+ opacity: 0.5;
460
+ cursor: not-allowed;
461
+ }
462
+
463
+ /* ── Checkbox · size ── */
464
+
465
+ .vt-checkbox-md {
466
+ width: 20px;
467
+ height: 20px;
468
+ border-radius: 6px;
469
+ }
470
+
471
+ .vt-checkbox-lg {
472
+ width: 24px;
473
+ height: 24px;
474
+ border-radius: 7px;
475
+ }
476
+
477
+ .vt-checkbox .check-icon {
478
+ display: none;
479
+ width: 8px;
480
+ height: 8px;
481
+ }
482
+
483
+ .vt-checkbox.checked .check-icon {
484
+ display: block;
485
+ color: hsl(var(--on-brand));
486
+ }
487
+
488
+ .vt-checkbox-md .check-icon {
489
+ width: 10px;
490
+ height: 10px;
491
+ }
492
+
493
+ .vt-checkbox-lg .check-icon {
494
+ width: 12px;
495
+ height: 12px;
496
+ }
497
+ /* Auto-generated by scripts/build-component-css.mjs from components/radio.json. Do not edit manually. */
498
+
499
+ /* ── Radio ────────────────────────────────────────── */
500
+
501
+ .vt-radio {
502
+ width: 16px;
503
+ height: 16px;
504
+ border-radius: 50%;
505
+ border: 1.5px solid hsl(var(--accents-brand));
506
+ display: flex;
507
+ align-items: center;
508
+ justify-content: center;
509
+ cursor: pointer;
510
+ transition: all 0.15s;
511
+ flex-shrink: 0;
512
+ }
513
+
514
+ .vt-radio.disabled {
515
+ opacity: 0.5;
516
+ cursor: not-allowed;
517
+ }
518
+
519
+ /* ── Radio · size ── */
520
+
521
+ .vt-radio-md {
522
+ width: 20px;
523
+ height: 20px;
524
+ }
525
+
526
+ .vt-radio-lg {
527
+ width: 24px;
528
+ height: 24px;
529
+ }
530
+
531
+ .vt-radio .vt-dot {
532
+ width: 8px;
533
+ height: 8px;
534
+ border-radius: 50%;
535
+ background: hsl(var(--accents-brand));
536
+ display: none;
537
+ }
538
+
539
+ .vt-radio.selected .vt-dot {
540
+ display: block;
541
+ }
542
+
543
+ .vt-radio-md .vt-dot {
544
+ width: 10px;
545
+ height: 10px;
546
+ }
547
+
548
+ .vt-radio-lg .vt-dot {
549
+ width: 12px;
550
+ height: 12px;
551
+ }
552
+ /* Auto-generated by scripts/build-component-css.mjs from components/switch.json. Do not edit manually. */
553
+
554
+ /* ── Switch ────────────────────────────────────────── */
555
+
556
+ .vt-switch {
557
+ position: relative;
558
+ display: inline-flex;
559
+ align-items: center;
560
+ width: 44px;
561
+ height: 24px;
562
+ border-radius: 9999px;
563
+ border: none;
564
+ padding: 0;
565
+ cursor: pointer;
566
+ transition: background-color 0.2s;
567
+ flex-shrink: 0;
568
+ background: hsl(var(--surfaces-moderate));
569
+ }
570
+
571
+ /* ── Switch · size ── */
572
+
573
+ .vt-switch-sm {
574
+ width: 36px;
575
+ height: 20px;
576
+ }
577
+
578
+ .vt-switch-lg {
579
+ width: 52px;
580
+ height: 28px;
581
+ }
582
+
583
+ .vt-switch.vt-active:not([class*=" vt-bg-"]) {
584
+ background: hsl(var(--accents-brand));
585
+ }
586
+
587
+ .vt-switch .vt-switch-thumb {
588
+ position: absolute;
589
+ inset-inline-start: 2px;
590
+ width: 20px;
591
+ height: 20px;
592
+ border-radius: 9999px;
593
+ background: white;
594
+ box-shadow: 0 1px 3px rgba(0,0,0,0.2);
595
+ transition: transform 0.2s;
596
+ pointer-events: none;
597
+ }
598
+
599
+ .vt-switch.vt-active .vt-switch-thumb {
600
+ transform: translateX(20px);
601
+ }
602
+
603
+ .vt-switch-sm .vt-switch-thumb {
604
+ width: 16px;
605
+ height: 16px;
606
+ }
607
+
608
+ .vt-switch-sm.vt-active .vt-switch-thumb {
609
+ transform: translateX(16px);
610
+ }
611
+
612
+ .vt-switch-lg .vt-switch-thumb {
613
+ width: 24px;
614
+ height: 24px;
615
+ }
616
+
617
+ .vt-switch-lg.vt-active .vt-switch-thumb {
618
+ transform: translateX(24px);
619
+ }
620
+ /* Auto-generated by scripts/build-component-css.mjs from components/input.json. Do not edit manually. */
621
+
622
+ /* ── Input ────────────────────────────────────────── */
623
+
624
+ .vt-input {
625
+ display: flex;
626
+ height: 2.5rem;
627
+ width: 100%;
628
+ border-radius: var(--radius-lg);
629
+ border: var(--border-width-default) solid hsl(var(--border-strong));
630
+ background: var(--input-bg, hsl(var(--surfaces-surface)));
631
+ padding: var(--spacing-2) var(--spacing-3);
632
+ font-size: var(--font-size-sm);
633
+ color: hsl(var(--mains-primary));
634
+ transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
635
+ }
636
+
637
+ .vt-input::placeholder {
638
+ color: hsl(var(--mains-quaternary));
639
+ }
640
+
641
+ .vt-input:focus-visible {
642
+ outline: none;
643
+ border-color: hsl(var(--accents-brand));
644
+ box-shadow: 0 0 0 3px hsl(var(--accents-brand) / 0.15);
645
+ }
646
+
647
+ .vt-input:disabled {
648
+ opacity: 0.5;
649
+ cursor: not-allowed;
650
+ }
651
+
652
+ /* ── Input · size ── */
653
+
654
+ .vt-input-sm {
655
+ height: 2rem;
656
+ padding: var(--spacing-1) var(--spacing-3);
657
+ font-size: 0.8125rem;
658
+ border-radius: var(--radius-sm);
659
+ }
660
+
661
+ .vt-input-lg {
662
+ height: 3rem;
663
+ padding: var(--spacing-2) var(--spacing-4);
664
+ }
665
+
666
+ .vt-input-xl {
667
+ height: 3.5rem;
668
+ padding: var(--spacing-3) var(--spacing-4);
669
+ font-size: var(--font-size-base);
670
+ border-radius: var(--radius-xl);
671
+ }
672
+
673
+ /* ── Input · state ── */
674
+
675
+ .vt-input-error {
676
+ border-color: hsl(var(--error-primary));
677
+ }
678
+
679
+ .vt-input-error:focus-visible {
680
+ border-color: hsl(var(--error-primary));
681
+ box-shadow: 0 0 0 3px hsl(var(--error-primary) / 0.15);
682
+ }
683
+
684
+ .vt-input.vt-pl-9 {
685
+ padding-inline-start: 2.25rem;
686
+ }
687
+
688
+ .vt-input.vt-pl-10 {
689
+ padding-inline-start: 2.5rem;
690
+ }
691
+
692
+ .vt-input.vt-pr-9 {
693
+ padding-inline-end: 2.25rem;
694
+ }
695
+ /* Auto-generated by scripts/build-component-css.mjs from components/textarea.json. Do not edit manually. */
696
+
697
+ /* ── Textarea ────────────────────────────────────────── */
698
+
699
+ .vt-textarea {
700
+ display: flex;
701
+ width: 100%;
702
+ border-radius: var(--radius-lg);
703
+ border: var(--border-width-default) solid hsl(var(--border-strong));
704
+ background: var(--input-bg, hsl(var(--surfaces-surface)));
705
+ padding: var(--spacing-2) var(--spacing-3);
706
+ font-size: var(--font-size-sm);
707
+ color: hsl(var(--mains-primary));
708
+ resize: vertical;
709
+ min-height: 80px;
710
+ transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
711
+ }
712
+
713
+ .vt-textarea::placeholder {
714
+ color: hsl(var(--mains-quaternary));
715
+ }
716
+
717
+ .vt-textarea:focus-visible {
718
+ outline: none;
719
+ border-color: hsl(var(--accents-brand));
720
+ box-shadow: 0 0 0 3px hsl(var(--accents-brand) / 0.15);
721
+ }
722
+
723
+ .vt-textarea:disabled {
724
+ opacity: 0.5;
725
+ cursor: not-allowed;
726
+ }
727
+
728
+ /* ── Textarea · size ── */
729
+
730
+ .vt-textarea-sm {
731
+ min-height: 3.5rem;
732
+ padding: var(--spacing-1) var(--spacing-3);
733
+ font-size: 0.8125rem;
734
+ border-radius: var(--radius-sm);
735
+ }
736
+
737
+ .vt-textarea-lg {
738
+ min-height: 7rem;
739
+ padding: var(--spacing-2) var(--spacing-4);
740
+ }
741
+
742
+ .vt-textarea-xl {
743
+ min-height: 9rem;
744
+ padding: var(--spacing-3) var(--spacing-4);
745
+ font-size: var(--font-size-base);
746
+ border-radius: var(--radius-xl);
747
+ }
748
+
749
+ /* ── Textarea · state ── */
750
+
751
+ .vt-textarea-error {
752
+ border-color: hsl(var(--error-primary));
753
+ }
754
+
755
+ .vt-textarea-error:focus-visible {
756
+ border-color: hsl(var(--error-primary));
757
+ box-shadow: 0 0 0 3px hsl(var(--error-primary) / 0.15);
758
+ }
759
+ /* Auto-generated by scripts/build-component-css.mjs from components/label.json. Do not edit manually. */
760
+
761
+ /* ── Label ────────────────────────────────────────── */
762
+
763
+ .vt-label {
764
+ font-size: var(--font-size-sm);
765
+ font-weight: var(--font-weight-medium);
766
+ line-height: 1;
767
+ color: hsl(var(--mains-primary));
768
+ }
769
+
770
+ .vt-field {
771
+ display: flex;
772
+ flex-direction: column;
773
+ gap: var(--spacing-2);
774
+ }
775
+
776
+ .vt-field-description {
777
+ font-size: var(--font-size-sm);
778
+ color: hsl(var(--mains-quaternary));
779
+ }
780
+
781
+ .vt-field-error {
782
+ font-size: var(--font-size-sm);
783
+ color: hsl(var(--error-primary));
784
+ }
785
+ /* Auto-generated by scripts/build-component-css.mjs from components/otpinput.json. Do not edit manually. */
786
+
787
+ /* ── OtpInput ────────────────────────────────────────── */
788
+
789
+ .vt-otp-cell {
790
+ display: flex;
791
+ width: 2.5rem;
792
+ height: 3rem;
793
+ padding: var(--spacing-2);
794
+ border-radius: var(--radius-lg);
795
+ border: var(--border-width-default) solid hsl(var(--border-strong));
796
+ background: var(--input-bg, hsl(var(--surfaces-surface)));
797
+ font-size: var(--font-size-lg);
798
+ color: hsl(var(--mains-primary));
799
+ transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
800
+ text-align: center;
801
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
802
+ }
803
+
804
+ .vt-otp-cell::placeholder {
805
+ color: hsl(var(--mains-quaternary));
806
+ }
807
+
808
+ .vt-otp-cell:focus-visible {
809
+ outline: none;
810
+ border-color: hsl(var(--accents-brand));
811
+ box-shadow: 0 0 0 3px hsl(var(--accents-brand) / 0.15);
812
+ }
813
+
814
+ /* ── OtpInput · size ── */
815
+
816
+ .vt-otp-cell-sm {
817
+ width: 2rem;
818
+ height: 2.5rem;
819
+ font-size: var(--font-size-sm);
820
+ }
821
+
822
+ .vt-otp-cell-lg {
823
+ width: 3rem;
824
+ height: 3.5rem;
825
+ font-size: 1.25rem;
826
+ }
827
+ /* Auto-generated by scripts/build-component-css.mjs from components/numberinput.json. Do not edit manually. */
828
+
829
+ /* ── NumberInput ────────────────────────────────────────── */
830
+
831
+ .vt-number-input {
832
+ display: inline-flex;
833
+ align-items: center;
834
+ height: 2.5rem;
835
+ border: var(--border-width-default) solid hsl(var(--border-strong));
836
+ border-radius: var(--radius-lg);
837
+ overflow: hidden;
838
+ }
839
+
840
+ /* ── NumberInput · size ── */
841
+
842
+ .vt-number-input-sm {
843
+ height: 2rem;
844
+ border-radius: var(--radius-sm);
845
+ }
846
+
847
+ .vt-number-input-lg {
848
+ height: 3rem;
849
+ border-radius: var(--radius-xl);
850
+ }
851
+
852
+ .vt-number-input-btn {
853
+ display: flex;
854
+ align-items: center;
855
+ justify-content: center;
856
+ padding: var(--spacing-2) var(--spacing-3);
857
+ background: transparent;
858
+ border: none;
859
+ cursor: pointer;
860
+ color: hsl(var(--mains-quaternary));
861
+ transition: color var(--transition-fast);
862
+ }
863
+
864
+ .vt-number-input-btn:hover {
865
+ color: hsl(var(--mains-primary));
866
+ }
867
+
868
+ .vt-number-input-value {
869
+ padding: var(--spacing-2) var(--spacing-3);
870
+ font-size: var(--font-size-sm);
871
+ font-weight: var(--font-weight-medium);
872
+ text-align: center;
873
+ width: 3.5rem;
874
+ min-width: 0;
875
+ appearance: textfield;
876
+ -moz-appearance: textfield;
877
+ border-inline-start: var(--border-width-default) solid hsl(var(--border-strong));
878
+ border-inline-end: var(--border-width-default) solid hsl(var(--border-strong));
879
+ }
880
+
881
+ .vt-number-input-value::-webkit-outer-spin-button, .vt-number-input-value::-webkit-inner-spin-button {
882
+ -webkit-appearance: none;
883
+ margin: 0;
884
+ }
885
+
886
+ .vt-number-input-sm .vt-number-input-value {
887
+ font-size: 0.75rem;
888
+ }
889
+
890
+ .vt-number-input-lg .vt-number-input-value {
891
+ font-size: var(--font-size-base);
892
+ }
893
+ /* Auto-generated by scripts/build-component-css.mjs from components/select.json. Do not edit manually. */
894
+
895
+ /* ── Select ────────────────────────────────────────── */
896
+
897
+ .vt-select-trigger {
898
+ display: flex;
899
+ align-items: center;
900
+ justify-content: space-between;
901
+ height: 40px;
902
+ width: 100%;
903
+ border-radius: var(--radius-sm);
904
+ border: 0.5px solid hsl(var(--border-strong));
905
+ background: var(--input-bg, hsl(var(--surfaces-surface)));
906
+ padding: 0 12px;
907
+ font-size: 14px;
908
+ color: hsl(var(--mains-primary));
909
+ cursor: pointer;
910
+ transition: border-color 0.15s;
911
+ }
912
+
913
+ .vt-select-trigger:hover {
914
+ border-color: hsl(var(--accents-brand));
915
+ }
916
+
917
+ .vt-select-trigger .placeholder {
918
+ color: hsl(var(--mains-quaternary));
919
+ }
920
+
921
+ .vt-select-trigger > svg {
922
+ width: 1rem;
923
+ height: 1rem;
924
+ flex-shrink: 0;
925
+ color: hsl(var(--mains-quaternary));
926
+ }
927
+
928
+ .vt-select-dropdown {
929
+ position: absolute;
930
+ top: calc(100% + 4px);
931
+ inset-inline-start: 0;
932
+ inset-inline-end: 0;
933
+ background: hsl(var(--surfaces-surface));
934
+ border: 0.5px solid hsl(var(--border-default));
935
+ border-radius: var(--radius-sm);
936
+ padding: 4px;
937
+ box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
938
+ z-index: 50;
939
+ display: none;
940
+ }
941
+
942
+ .vt-select-dropdown.open {
943
+ display: block;
944
+ }
945
+
946
+ [data-theme-direction="up"] .vt-select-dropdown {
947
+ top: auto;
948
+ bottom: calc(100% + 4px);
949
+ }
950
+
951
+ .vt-select-item {
952
+ display: flex;
953
+ align-items: center;
954
+ gap: 8px;
955
+ width: 100%;
956
+ text-align: start;
957
+ background: transparent;
958
+ border: 0;
959
+ padding: 8px 8px 8px 32px;
960
+ border-radius: var(--radius-sm);
961
+ font-size: 14px;
962
+ cursor: pointer;
963
+ position: relative;
964
+ color: hsl(var(--mains-primary));
965
+ transition: background 0.1s;
966
+ }
967
+
968
+ .vt-select-item:hover {
969
+ background: hsl(var(--surfaces-subtle));
970
+ }
971
+
972
+ .vt-select-item.selected::before {
973
+ content: '';
974
+ position: absolute;
975
+ inset-inline-start: 10px;
976
+ top: 50%;
977
+ width: 6px;
978
+ height: 10px;
979
+ border-inline-end: 2px solid hsl(var(--mains-primary));
980
+ border-bottom: 2px solid hsl(var(--mains-primary));
981
+ transform: translateY(-60%) rotate(45deg);
982
+ }
983
+
984
+ .vt-select-separator {
985
+ height: 0.5px;
986
+ background: hsl(var(--border-default));
987
+ margin: 4px -4px;
988
+ }
989
+
990
+ .vt-select-label {
991
+ padding: 8px 8px 4px 8px;
992
+ font-size: 12px;
993
+ font-weight: 600;
994
+ color: hsl(var(--mains-quaternary));
995
+ }
996
+ /* Auto-generated by scripts/build-component-css.mjs from components/tabs.json. Do not edit manually. */
997
+
998
+ /* ── Tabs ────────────────────────────────────────── */
999
+
1000
+ .vt-tabs-list {
1001
+ display: inline-flex;
1002
+ align-items: center;
1003
+ border-radius: var(--radius-lg);
1004
+ background: hsl(var(--surfaces-subtle));
1005
+ padding: var(--spacing-1);
1006
+ gap: var(--spacing-1);
1007
+ }
1008
+
1009
+ .vt-tabs-trigger {
1010
+ display: inline-flex;
1011
+ align-items: center;
1012
+ justify-content: center;
1013
+ border-radius: var(--radius-lg);
1014
+ padding: var(--spacing-1_5) var(--spacing-3);
1015
+ font-size: var(--font-size-sm);
1016
+ font-weight: var(--font-weight-medium);
1017
+ color: hsl(var(--mains-quaternary));
1018
+ cursor: pointer;
1019
+ transition: color var(--transition-fast), background-color var(--transition-fast);
1020
+ white-space: nowrap;
1021
+ }
1022
+
1023
+ .vt-tabs-trigger:hover {
1024
+ color: hsl(var(--mains-primary));
1025
+ }
1026
+
1027
+ .vt-tabs-trigger.vt-active {
1028
+ background: hsl(var(--surfaces-surface));
1029
+ color: hsl(var(--mains-primary));
1030
+ box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
1031
+ }
1032
+
1033
+ .vt-tabs-list-underline {
1034
+ display: flex;
1035
+ border-bottom: var(--border-width-thin) solid hsl(var(--border-default));
1036
+ gap: 0;
1037
+ }
1038
+
1039
+ .vt-tabs-trigger-underline {
1040
+ padding: var(--spacing-2) var(--spacing-4);
1041
+ font-size: var(--font-size-sm);
1042
+ font-weight: var(--font-weight-medium);
1043
+ color: hsl(var(--mains-quaternary));
1044
+ border-bottom: var(--border-width-thick) solid transparent;
1045
+ margin-bottom: -0.5px;
1046
+ cursor: pointer;
1047
+ transition: color var(--transition-fast), border-color var(--transition-fast);
1048
+ }
1049
+
1050
+ .vt-tabs-trigger-underline:hover {
1051
+ color: hsl(var(--mains-primary));
1052
+ }
1053
+
1054
+ .vt-tabs-trigger-underline.vt-active {
1055
+ color: hsl(var(--mains-primary));
1056
+ border-bottom-color: hsl(var(--accents-brand));
1057
+ }
1058
+ /* Auto-generated by scripts/build-component-css.mjs from components/breadcrumb.json. Do not edit manually. */
1059
+
1060
+ /* ── Breadcrumb ────────────────────────────────────────── */
1061
+
1062
+ .vt-breadcrumb {
1063
+ display: flex;
1064
+ align-items: center;
1065
+ gap: var(--spacing-1_5);
1066
+ list-style: none;
1067
+ padding: 0;
1068
+ margin: 0;
1069
+ }
1070
+
1071
+ .vt-breadcrumb-link {
1072
+ font-size: var(--font-size-sm);
1073
+ color: hsl(var(--mains-quaternary));
1074
+ text-decoration: none;
1075
+ transition: color var(--transition-fast);
1076
+ }
1077
+
1078
+ .vt-breadcrumb-link:hover {
1079
+ color: hsl(var(--mains-primary));
1080
+ }
1081
+
1082
+ .vt-breadcrumb-separator {
1083
+ color: hsl(var(--mains-quaternary));
1084
+ margin: 0 var(--spacing-1);
1085
+ }
1086
+
1087
+ .vt-breadcrumb-current {
1088
+ font-size: var(--font-size-sm);
1089
+ font-weight: var(--font-weight-medium);
1090
+ color: hsl(var(--mains-primary));
1091
+ }
1092
+ /* Auto-generated by scripts/build-component-css.mjs from components/stepper.json. Do not edit manually. */
1093
+
1094
+ /* ── Stepper ────────────────────────────────────────── */
1095
+
1096
+ .vt-stepper {
1097
+ display: flex;
1098
+ align-items: center;
1099
+ width: 100%;
1100
+ }
1101
+
1102
+ .vt-stepper-step {
1103
+ display: flex;
1104
+ flex-direction: column;
1105
+ align-items: center;
1106
+ gap: var(--spacing-2);
1107
+ }
1108
+
1109
+ .vt-stepper-circle {
1110
+ display: flex;
1111
+ align-items: center;
1112
+ justify-content: center;
1113
+ width: 2.5rem;
1114
+ height: 2.5rem;
1115
+ border-radius: var(--radius-full);
1116
+ font-size: var(--font-size-sm);
1117
+ font-weight: var(--font-weight-semibold);
1118
+ transition: all var(--transition-fast);
1119
+ }
1120
+
1121
+ .vt-stepper-line {
1122
+ flex: 1;
1123
+ height: var(--border-width-thick);
1124
+ border-radius: var(--radius-full);
1125
+ margin: 0 var(--spacing-2);
1126
+ align-self: flex-start;
1127
+ margin-top: 1.25rem;
1128
+ }
1129
+ /* Auto-generated by scripts/build-component-css.mjs from components/pagination.json. Do not edit manually. */
1130
+
1131
+ /* ── Pagination ────────────────────────────────────────── */
1132
+
1133
+ .vt-page-btn {
1134
+ display: inline-flex;
1135
+ align-items: center;
1136
+ justify-content: center;
1137
+ border-radius: var(--radius-lg);
1138
+ font-size: var(--font-size-sm);
1139
+ font-weight: var(--font-weight-medium);
1140
+ height: 2.5rem;
1141
+ min-width: 2.5rem;
1142
+ padding: 0 var(--spacing-3);
1143
+ border: var(--border-width-default) solid hsl(var(--border-default));
1144
+ background: hsl(var(--surfaces-surface));
1145
+ color: hsl(var(--mains-primary));
1146
+ cursor: pointer;
1147
+ transition: background-color var(--transition-fast), color var(--transition-fast);
1148
+ }
1149
+
1150
+ .vt-page-btn:hover {
1151
+ background: hsl(var(--surfaces-subtle));
1152
+ }
1153
+
1154
+ .vt-page-btn.vt-active {
1155
+ background: hsl(var(--accents-brand));
1156
+ color: hsl(var(--on-brand));
1157
+ border-color: hsl(var(--accents-brand));
1158
+ }
1159
+
1160
+ .vt-page-btn.vt-disabled,
1161
+ .vt-page-btn:disabled {
1162
+ color: hsl(var(--mains-quaternary));
1163
+ cursor: not-allowed;
1164
+ opacity: 0.5;
1165
+ }
1166
+ /* Auto-generated by scripts/build-component-css.mjs from components/sectionlabel.json. Do not edit manually. */
1167
+
1168
+ /* ── SectionLabel ────────────────────────────────────────── */
1169
+
1170
+ .vt-section-label {
1171
+ font-size: var(--font-size-xs);
1172
+ font-weight: var(--font-weight-bold);
1173
+ text-transform: uppercase;
1174
+ letter-spacing: 0.08em;
1175
+ color: hsl(var(--mains-quaternary));
1176
+ }
1177
+ /* Auto-generated by scripts/build-component-css.mjs from components/featureitem.json. Do not edit manually. */
1178
+
1179
+ /* ── FeatureItem ────────────────────────────────────────── */
1180
+
1181
+ .vt-feature-item {
1182
+ display: flex;
1183
+ align-items: center;
1184
+ gap: var(--spacing-2);
1185
+ font-size: var(--font-size-sm);
1186
+ color: hsl(var(--mains-secondary));
1187
+ }
1188
+ /* Auto-generated by scripts/build-component-css.mjs from components/emptystate.json. Do not edit manually. */
1189
+
1190
+ /* ── EmptyState ────────────────────────────────────────── */
1191
+
1192
+ .vt-empty-state {
1193
+ display: flex;
1194
+ flex-direction: column;
1195
+ align-items: center;
1196
+ justify-content: center;
1197
+ text-align: center;
1198
+ padding: var(--spacing-12) var(--spacing-6);
1199
+ }
1200
+ /* Auto-generated by scripts/build-component-css.mjs from components/listitem.json. Do not edit manually. */
1201
+
1202
+ /* ── ListItem ────────────────────────────────────────── */
1203
+
1204
+ .vt-list-item {
1205
+ display: flex;
1206
+ align-items: center;
1207
+ gap: var(--spacing-3);
1208
+ padding: var(--spacing-3) var(--spacing-4);
1209
+ transition: background-color var(--transition-fast);
1210
+ }
1211
+
1212
+ .vt-list-item:hover {
1213
+ background: hsl(var(--surfaces-subtle));
1214
+ }
1215
+ /* Auto-generated by scripts/build-component-css.mjs from components/toast.json. Do not edit manually. */
1216
+
1217
+ /* ── Toast ────────────────────────────────────────── */
1218
+
1219
+ .vt-toast {
1220
+ display: flex;
1221
+ align-items: flex-start;
1222
+ gap: var(--spacing-3);
1223
+ border-radius: var(--radius-2xl);
1224
+ border: var(--border-width-default) solid hsl(var(--border-default));
1225
+ background: hsl(var(--surfaces-surface));
1226
+ padding: 1rem;
1227
+ box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
1228
+ min-width: 300px;
1229
+ max-width: 420px;
1230
+ }
1231
+ /* Auto-generated by scripts/build-component-css.mjs from components/banner.json. Do not edit manually. */
1232
+
1233
+ /* ── Banner ────────────────────────────────────────── */
1234
+
1235
+ .vt-banner {
1236
+ display: flex;
1237
+ align-items: center;
1238
+ gap: var(--spacing-3);
1239
+ width: 100%;
1240
+ padding: var(--spacing-3) var(--spacing-4);
1241
+ border-radius: var(--radius-lg);
1242
+ font-size: var(--font-size-sm);
1243
+ }
1244
+ /* Auto-generated by scripts/build-component-css.mjs from components/progress.json. Do not edit manually. */
1245
+
1246
+ /* ── Progress ────────────────────────────────────────── */
1247
+
1248
+ .vt-progress {
1249
+ width: 100%;
1250
+ height: 0.5rem;
1251
+ border-radius: var(--radius-full);
1252
+ background: hsl(var(--surfaces-subtle));
1253
+ overflow: hidden;
1254
+ }
1255
+
1256
+ /* ── Progress · size ── */
1257
+
1258
+ .vt-progress-sm {
1259
+ height: 0.25rem;
1260
+ }
1261
+
1262
+ .vt-progress-lg {
1263
+ height: 0.75rem;
1264
+ }
1265
+
1266
+ .vt-progress-bar {
1267
+ height: 100%;
1268
+ border-radius: var(--radius-full);
1269
+ background: hsl(var(--accents-brand));
1270
+ transition: width var(--transition-slow);
1271
+ }
1272
+ /* Auto-generated by scripts/build-component-css.mjs from components/chip.json. Do not edit manually. */
1273
+
1274
+ /* ── Chip ────────────────────────────────────────── */
1275
+
1276
+ .vt-chip {
1277
+ display: inline-flex;
1278
+ align-items: center;
1279
+ gap: var(--spacing-1_5);
1280
+ border-radius: var(--radius-full);
1281
+ padding: var(--spacing-1_5) var(--spacing-3);
1282
+ font-size: var(--font-size-sm);
1283
+ font-weight: var(--font-weight-medium);
1284
+ border: var(--border-width-thin) solid hsl(var(--border-default));
1285
+ background: hsl(var(--surfaces-surface));
1286
+ cursor: pointer;
1287
+ transition: all var(--transition-fast);
1288
+ }
1289
+
1290
+ .vt-chip:hover {
1291
+ background: hsl(var(--surfaces-subtle));
1292
+ }
1293
+
1294
+ .vt-chip.vt-chip-active {
1295
+ border-color: hsl(var(--accents-brand));
1296
+ background: hsl(var(--accents-brand));
1297
+ color: hsl(var(--on-brand));
1298
+ }
1299
+ /* Auto-generated by scripts/build-component-css.mjs from components/toolbar.json. Do not edit manually. */
1300
+
1301
+ /* ── Toolbar ────────────────────────────────────────── */
1302
+
1303
+ .vt-toolbar {
1304
+ display: flex;
1305
+ align-items: center;
1306
+ gap: var(--spacing-1);
1307
+ padding: var(--spacing-1);
1308
+ border: var(--border-width-default) solid hsl(var(--border-default));
1309
+ border-radius: var(--radius-lg);
1310
+ background: hsl(var(--surfaces-surface));
1311
+ }
1312
+
1313
+ .vt-toolbar-btn {
1314
+ display: inline-flex;
1315
+ align-items: center;
1316
+ justify-content: center;
1317
+ width: 2.25rem;
1318
+ height: 2.25rem;
1319
+ border-radius: var(--radius-sm);
1320
+ border: none;
1321
+ background: transparent;
1322
+ color: hsl(var(--mains-secondary));
1323
+ cursor: pointer;
1324
+ transition: background-color var(--transition-fast), color var(--transition-fast);
1325
+ }
1326
+
1327
+ .vt-toolbar-btn:hover {
1328
+ background: hsl(var(--surfaces-subtle));
1329
+ color: hsl(var(--mains-primary));
1330
+ }
1331
+
1332
+ .vt-toolbar-btn.vt-active {
1333
+ background: hsl(var(--surfaces-subtle));
1334
+ color: hsl(var(--mains-primary));
1335
+ }
1336
+ /* Auto-generated by scripts/build-component-css.mjs from components/calendarday.json. Do not edit manually. */
1337
+
1338
+ /* ── CalendarDay ────────────────────────────────────────── */
1339
+
1340
+ .vt-calendar-day {
1341
+ display: flex;
1342
+ align-items: center;
1343
+ justify-content: center;
1344
+ width: 2.25rem;
1345
+ height: 2.25rem;
1346
+ margin: 0 auto;
1347
+ border-radius: var(--radius-full);
1348
+ font-size: var(--font-size-sm);
1349
+ cursor: pointer;
1350
+ transition: background-color var(--transition-fast), color var(--transition-fast);
1351
+ }
1352
+
1353
+ .vt-calendar-day:hover {
1354
+ background: hsl(var(--surfaces-subtle));
1355
+ }
1356
+
1357
+ .vt-calendar-day.vt-active {
1358
+ background: hsl(var(--accents-brand));
1359
+ color: hsl(var(--on-brand));
1360
+ font-weight: var(--font-weight-semibold);
1361
+ }
1362
+
1363
+ .vt-calendar-day.vt-muted {
1364
+ color: hsl(var(--mains-quaternary));
1365
+ }
1366
+
1367
+ .vt-calendar-day.vt-today {
1368
+ font-weight: var(--font-weight-semibold);
1369
+ border: var(--border-width-default) solid hsl(var(--accents-brand));
1370
+ }
1371
+ /* Auto-generated by scripts/build-component-css.mjs from components/carouselnav.json. Do not edit manually. */
1372
+
1373
+ /* ── CarouselNav ────────────────────────────────────────── */
1374
+
1375
+ .vt-carousel-nav-btn {
1376
+ display: flex;
1377
+ align-items: center;
1378
+ justify-content: center;
1379
+ width: 2rem;
1380
+ height: 2rem;
1381
+ border-radius: var(--radius-full);
1382
+ border: var(--border-width-default) solid hsl(var(--border-default));
1383
+ background: hsl(var(--surfaces-surface));
1384
+ flex-shrink: 0;
1385
+ cursor: pointer;
1386
+ transition: background-color var(--transition-fast);
1387
+ }
1388
+
1389
+ .vt-carousel-nav-btn:hover {
1390
+ background: hsl(var(--surfaces-subtle));
1391
+ }
1392
+ /* Auto-generated by scripts/build-component-css.mjs from components/colorswatch.json. Do not edit manually. */
1393
+
1394
+ /* ── ColorSwatch ────────────────────────────────────────── */
1395
+
1396
+ .vt-color-swatch {
1397
+ width: 2rem;
1398
+ height: 2rem;
1399
+ border-radius: var(--radius-lg);
1400
+ cursor: pointer;
1401
+ transition: box-shadow var(--transition-fast);
1402
+ }
1403
+
1404
+ .vt-color-swatch:hover {
1405
+ box-shadow: 0 0 0 2px hsl(var(--surfaces-background)), 0 0 0 4px hsl(var(--accents-brand));
1406
+ }
1407
+
1408
+ .vt-color-swatch.vt-active {
1409
+ box-shadow: 0 0 0 2px hsl(var(--surfaces-background)), 0 0 0 4px hsl(var(--accents-brand));
1410
+ }
1411
+ /* Auto-generated by scripts/build-component-css.mjs from components/codeheader.json. Do not edit manually. */
1412
+
1413
+ /* ── CodeHeader ────────────────────────────────────────── */
1414
+
1415
+ .vt-code-header {
1416
+ display: flex;
1417
+ align-items: center;
1418
+ justify-content: space-between;
1419
+ padding: var(--spacing-2) var(--spacing-4);
1420
+ border-bottom: var(--border-width-thin) solid hsl(var(--border-default));
1421
+ }
1422
+ /* Auto-generated by scripts/build-component-css.mjs from components/codeinline.json. Do not edit manually. */
1423
+
1424
+ /* ── CodeInline ────────────────────────────────────────── */
1425
+
1426
+ .vt-code-inline {
1427
+ border-radius: var(--radius-sm);
1428
+ background: hsl(var(--surfaces-moderate));
1429
+ padding: 2px var(--spacing-1_5);
1430
+ font-size: var(--font-size-sm);
1431
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
1432
+ color: hsl(var(--mains-primary));
1433
+ }
1434
+ /* Auto-generated by scripts/build-component-css.mjs from components/countbadge.json. Do not edit manually. */
1435
+
1436
+ /* ── CountBadge ────────────────────────────────────────── */
1437
+
1438
+ .vt-count-badge {
1439
+ display: inline-flex;
1440
+ align-items: center;
1441
+ justify-content: center;
1442
+ min-width: 1.25rem;
1443
+ height: 1.25rem;
1444
+ padding: 0 var(--spacing-1);
1445
+ font-size: 10px;
1446
+ font-weight: var(--font-weight-bold);
1447
+ border-radius: var(--radius-full);
1448
+ background: hsl(var(--error-primary));
1449
+ color: hsl(var(--on-error));
1450
+ box-shadow: 0 0 0 2px hsl(var(--surfaces-background));
1451
+ }
1452
+ /* Auto-generated by scripts/build-component-css.mjs from components/iconbadge.json. Do not edit manually. */
1453
+
1454
+ /* ── IconBadge ────────────────────────────────────────── */
1455
+
1456
+ .vt-icon-badge {
1457
+ display: flex;
1458
+ align-items: center;
1459
+ justify-content: center;
1460
+ width: 2.5rem;
1461
+ height: 2.5rem;
1462
+ border-radius: var(--radius-full);
1463
+ flex-shrink: 0;
1464
+ }
1465
+ /* Auto-generated by scripts/build-component-css.mjs from components/footerlink.json. Do not edit manually. */
1466
+
1467
+ /* ── FooterLink ────────────────────────────────────────── */
1468
+
1469
+ .vt-footer-link {
1470
+ font-size: var(--font-size-sm);
1471
+ color: hsl(var(--mains-secondary));
1472
+ text-decoration: none;
1473
+ transition: color var(--transition-fast);
1474
+ }
1475
+
1476
+ .vt-footer-link:hover {
1477
+ color: hsl(var(--mains-primary));
1478
+ }
1479
+ /* Auto-generated by scripts/build-component-css.mjs from components/timelinedot.json. Do not edit manually. */
1480
+
1481
+ /* ── TimelineDot ────────────────────────────────────────── */
1482
+
1483
+ .vt-timeline-dot {
1484
+ width: 0.75rem;
1485
+ height: 0.75rem;
1486
+ border-radius: var(--radius-full);
1487
+ background: hsl(var(--accents-brand));
1488
+ flex-shrink: 0;
1489
+ }
1490
+ /* Auto-generated by scripts/build-component-css.mjs from components/notificationbtn.json. Do not edit manually. */
1491
+
1492
+ /* ── NotificationBtn ────────────────────────────────────────── */
1493
+
1494
+ .vt-notification-btn {
1495
+ display: inline-flex;
1496
+ align-items: center;
1497
+ justify-content: center;
1498
+ position: relative;
1499
+ width: 2.5rem;
1500
+ height: 2.5rem;
1501
+ border-radius: var(--radius-2xl);
1502
+ border: var(--border-width-default) solid hsl(var(--border-default));
1503
+ background: hsl(var(--surfaces-surface));
1504
+ cursor: pointer;
1505
+ transition: background-color var(--transition-fast);
1506
+ }
1507
+
1508
+ .vt-notification-btn:hover {
1509
+ background: hsl(var(--surfaces-subtle));
1510
+ }
1511
+ /* Auto-generated by scripts/build-component-css.mjs from components/checklabel.json. Do not edit manually. */
1512
+
1513
+ /* ── CheckLabel ────────────────────────────────────────── */
1514
+
1515
+ .vt-check-label {
1516
+ display: flex;
1517
+ align-items: center;
1518
+ gap: var(--spacing-3);
1519
+ cursor: pointer;
1520
+ }
1521
+ /* Auto-generated by scripts/build-component-css.mjs from components/dropdownwrap.json. Do not edit manually. */
1522
+
1523
+ /* ── DropdownWrap ────────────────────────────────────────── */
1524
+
1525
+ .vt-dropdown-wrap {
1526
+ position: relative;
1527
+ display: inline-block;
1528
+ }
1529
+ /* Auto-generated by scripts/build-component-css.mjs from components/card.json. Do not edit manually. */
1530
+
1531
+ /* ── Card ────────────────────────────────────────── */
1532
+
1533
+ .vt-card {
1534
+ border: var(--border-width-thin) solid hsl(var(--border-default));
1535
+ border-radius: var(--radius-2xl);
1536
+ background: hsl(var(--surfaces-surface));
1537
+ overflow: hidden;
1538
+ }
1539
+
1540
+ .vt-card h3 {
1541
+ margin: 0 0 4px;
1542
+ }
1543
+
1544
+ .vt-card h3 + p {
1545
+ margin: 0;
1546
+ font-size: var(--font-size-sm);
1547
+ color: hsl(var(--mains-tertiary));
1548
+ }
1549
+
1550
+ .vt-card-header {
1551
+ padding: 1.25rem 1.5rem;
1552
+ border-bottom: var(--border-width-thin) solid hsl(var(--border-default));
1553
+ }
1554
+
1555
+ .vt-card-body {
1556
+ display: flex;
1557
+ flex-wrap: wrap;
1558
+ align-items: flex-start;
1559
+ gap: var(--spacing-3);
1560
+ padding: var(--spacing-6);
1561
+ }
1562
+
1563
+ .vt-card-footer {
1564
+ padding: 1rem 1.5rem;
1565
+ border-top: var(--border-width-thin) solid hsl(var(--border-default));
1566
+ }
1567
+
1568
+ .vt-card-footer.vt-justify-end {
1569
+ display: flex;
1570
+ justify-content: flex-end;
1571
+ gap: var(--spacing-2);
1572
+ }
1573
+ /* Auto-generated by scripts/build-component-css.mjs from components/alert.json. Do not edit manually. */
1574
+
1575
+ /* ── Alert ────────────────────────────────────────── */
1576
+
1577
+ .vt-alert {
1578
+ display: flex;
1579
+ gap: var(--spacing-3);
1580
+ border-radius: var(--radius-lg);
1581
+ border: var(--border-width-default) solid hsl(var(--border-default));
1582
+ padding: 1rem;
1583
+ }
1584
+
1585
+ /* ── Alert · intent ── */
1586
+
1587
+ .vt-alert-info {
1588
+ background: hsl(var(--info-primary) / 0.1);
1589
+ border-color: hsl(var(--info-primary) / 0.3);
1590
+ color: hsl(var(--info-primary));
1591
+ }
1592
+
1593
+ .vt-alert-success {
1594
+ background: hsl(var(--success-primary) / 0.1);
1595
+ border-color: hsl(var(--success-primary) / 0.3);
1596
+ color: hsl(var(--success-primary));
1597
+ }
1598
+
1599
+ .vt-alert-warning {
1600
+ background: hsl(var(--warning-primary) / 0.1);
1601
+ border-color: hsl(var(--warning-primary) / 0.3);
1602
+ color: hsl(var(--mains-primary));
1603
+ }
1604
+
1605
+ .vt-alert-danger {
1606
+ background: hsl(var(--error-primary) / 0.1);
1607
+ border-color: hsl(var(--error-primary) / 0.3);
1608
+ color: hsl(var(--error-primary));
1609
+ }
1610
+ /* Auto-generated by scripts/build-component-css.mjs from components/calendarweekday.json. Do not edit manually. */
1611
+
1612
+ /* ── CalendarWeekday ────────────────────────────────────────── */
1613
+
1614
+ .vt-calendar-weekday {
1615
+ text-align: center;
1616
+ font-size: var(--font-size-xs);
1617
+ font-weight: var(--font-weight-medium);
1618
+ color: hsl(var(--mains-quaternary));
1619
+ padding: var(--spacing-1) 0;
1620
+ }
1621
+ /* Auto-generated by scripts/build-component-css.mjs from components/buttongroup.json. Do not edit manually. */
1622
+
1623
+ /* ── ButtonGroup ────────────────────────────────────────── */
1624
+
1625
+ .vt-btn-group {
1626
+ display: inline-flex;
1627
+ border: var(--border-width-default) solid hsl(var(--border-strong));
1628
+ border-radius: var(--radius-lg);
1629
+ overflow: hidden;
1630
+ }
1631
+
1632
+ .vt-btn-group > button, .vt-btn-group > a {
1633
+ display: inline-flex;
1634
+ align-items: center;
1635
+ justify-content: center;
1636
+ font-size: var(--font-size-sm);
1637
+ font-weight: var(--font-weight-medium);
1638
+ height: 2.5rem;
1639
+ padding: 0 1rem;
1640
+ background: hsl(var(--surfaces-surface));
1641
+ color: hsl(var(--mains-primary));
1642
+ cursor: pointer;
1643
+ transition: background-color var(--transition-fast), color var(--transition-fast);
1644
+ white-space: nowrap;
1645
+ gap: var(--spacing-2);
1646
+ border: none;
1647
+ }
1648
+
1649
+ .vt-btn-group > button:hover, .vt-btn-group > a:hover {
1650
+ background: hsl(var(--surfaces-subtle));
1651
+ }
1652
+
1653
+ .vt-btn-group > button.vt-active, .vt-btn-group > a.vt-active {
1654
+ background: hsl(var(--accents-brand));
1655
+ color: hsl(var(--on-brand));
1656
+ }
1657
+
1658
+ .vt-btn-group > button + button, .vt-btn-group > a + a, .vt-btn-group > button + a, .vt-btn-group > a + button {
1659
+ border-inline-start: var(--border-width-default) solid hsl(var(--border-strong));
1660
+ }
1661
+
1662
+ .vt-btn-group-sm > button, .vt-btn-group-sm > a {
1663
+ height: 2rem;
1664
+ padding: 0 0.75rem;
1665
+ font-size: var(--font-size-xs);
1666
+ }
1667
+
1668
+ .vt-btn-group-lg > button, .vt-btn-group-lg > a {
1669
+ height: 3rem;
1670
+ padding: 0 1.5rem;
1671
+ }
1672
+
1673
+ .vt-btn-group-inverted {
1674
+ display: inline-flex;
1675
+ border-radius: var(--radius-lg);
1676
+ overflow: hidden;
1677
+ }
1678
+
1679
+ .vt-btn-group-inverted > button, .vt-btn-group-inverted > a {
1680
+ display: inline-flex;
1681
+ align-items: center;
1682
+ justify-content: center;
1683
+ font-size: var(--font-size-sm);
1684
+ font-weight: var(--font-weight-medium);
1685
+ height: 2.5rem;
1686
+ padding: 0 1rem;
1687
+ cursor: pointer;
1688
+ transition: background-color var(--transition-fast), color var(--transition-fast);
1689
+ white-space: nowrap;
1690
+ gap: var(--spacing-2);
1691
+ border: none;
1692
+ }
1693
+
1694
+ .vt-btn-group-inverted > button + button, .vt-btn-group-inverted > a + a, .vt-btn-group-inverted > button + a, .vt-btn-group-inverted > a + button {
1695
+ border-inline-start: var(--border-width-default) solid hsl(var(--generic-0) / 0.2);
1696
+ }
1697
+
1698
+ .vt-btn-group-vertical {
1699
+ display: inline-flex;
1700
+ flex-direction: column;
1701
+ border: var(--border-width-default) solid hsl(var(--border-strong));
1702
+ border-radius: var(--radius-lg);
1703
+ overflow: hidden;
1704
+ }
1705
+
1706
+ .vt-btn-group-vertical > button, .vt-btn-group-vertical > a {
1707
+ display: inline-flex;
1708
+ align-items: center;
1709
+ font-size: var(--font-size-sm);
1710
+ font-weight: var(--font-weight-medium);
1711
+ height: 2.5rem;
1712
+ padding: 0 1rem;
1713
+ background: hsl(var(--surfaces-surface));
1714
+ color: hsl(var(--mains-primary));
1715
+ cursor: pointer;
1716
+ transition: background-color var(--transition-fast), color var(--transition-fast);
1717
+ white-space: nowrap;
1718
+ gap: var(--spacing-2);
1719
+ border: none;
1720
+ }
1721
+
1722
+ .vt-btn-group-vertical > button:hover, .vt-btn-group-vertical > a:hover {
1723
+ background: hsl(var(--surfaces-subtle));
1724
+ }
1725
+
1726
+ .vt-btn-group-vertical > button.vt-active, .vt-btn-group-vertical > a.vt-active {
1727
+ background: hsl(var(--surfaces-subtle));
1728
+ }
1729
+
1730
+ .vt-btn-group-vertical > button + button, .vt-btn-group-vertical > a + a, .vt-btn-group-vertical > button + a, .vt-btn-group-vertical > a + button {
1731
+ border-top: var(--border-width-default) solid hsl(var(--border-strong));
1732
+ }
1733
+ /* Auto-generated by scripts/build-component-css.mjs from components/dialog.json. Do not edit manually. */
1734
+
1735
+ @keyframes dialogIn {
1736
+ from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); }
1737
+ }
1738
+
1739
+ /* ── Dialog ────────────────────────────────────────── */
1740
+
1741
+ .vt-dialog {
1742
+ background: hsl(var(--surfaces-surface));
1743
+ border: var(--border-width-default) solid hsl(var(--border-default));
1744
+ border-radius: var(--radius-2xl);
1745
+ max-width: 480px;
1746
+ width: 100%;
1747
+ box-shadow: 0 25px 50px -12px hsl(var(--generic-1000) / 0.25);
1748
+ animation: dialogIn var(--transition-fast);
1749
+ }
1750
+
1751
+ .vt-dialog-overlay {
1752
+ position: fixed;
1753
+ inset: 0;
1754
+ background: hsl(var(--generic-1000) / 0.5);
1755
+ z-index: 50;
1756
+ display: flex;
1757
+ align-items: center;
1758
+ justify-content: center;
1759
+ padding: 1rem;
1760
+ opacity: 0;
1761
+ visibility: hidden;
1762
+ transition: opacity 0.2s ease-out, visibility 0s 0.2s;
1763
+ }
1764
+
1765
+ .vt-dialog-overlay.vt-open {
1766
+ opacity: 1;
1767
+ visibility: visible;
1768
+ transition: opacity 0.2s ease-out, visibility 0s;
1769
+ }
1770
+
1771
+ .vt-dialog-overlay .vt-dialog {
1772
+ transform: scale(0.95);
1773
+ opacity: 0;
1774
+ transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease-out;
1775
+ }
1776
+
1777
+ .vt-dialog-overlay.vt-open .vt-dialog {
1778
+ transform: scale(1);
1779
+ opacity: 1;
1780
+ }
1781
+
1782
+ .dialog-overlay {
1783
+ position: fixed;
1784
+ inset: 0;
1785
+ background: rgba(0,0,0,0.5);
1786
+ z-index: 50;
1787
+ display: none;
1788
+ align-items: center;
1789
+ justify-content: center;
1790
+ padding: 16px;
1791
+ }
1792
+
1793
+ .dialog-overlay.open {
1794
+ display: flex;
1795
+ }
1796
+
1797
+ .dialog-content {
1798
+ background: hsl(var(--surfaces-background));
1799
+ border: 1px solid hsl(var(--border-default));
1800
+ border-radius: var(--radius-3xl);
1801
+ max-width: 480px;
1802
+ width: 100%;
1803
+ box-shadow: 0 25px 50px -12px rgba(0,0,0,0.25);
1804
+ animation: dialogIn 0.15s ease;
1805
+ }
1806
+ /* Auto-generated by scripts/build-component-css.mjs from components/popover.json. Do not edit manually. */
1807
+
1808
+ @keyframes popFadeIn {
1809
+ from { opacity: 0; } to { opacity: 1; }
1810
+ }
1811
+
1812
+ /* ── Popover ────────────────────────────────────────── */
1813
+
1814
+ .popover-wrapper {
1815
+ position: relative;
1816
+ display: inline-block;
1817
+ width: fit-content;
1818
+ }
1819
+
1820
+ .popover-content {
1821
+ display: none;
1822
+ position: absolute;
1823
+ z-index: 50;
1824
+ background: hsl(var(--surfaces-surface));
1825
+ border: 1px solid hsl(var(--border-default));
1826
+ border-radius: var(--radius-xl);
1827
+ box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
1828
+ }
1829
+
1830
+ .popover-content.open {
1831
+ display: block;
1832
+ animation: popFadeIn 0.15s ease;
1833
+ }
1834
+
1835
+ .popover-bottom {
1836
+ top: 100%;
1837
+ inset-inline-start: 50%;
1838
+ transform: translateX(-50%);
1839
+ margin-top: 8px;
1840
+ }
1841
+
1842
+ .popover-top {
1843
+ bottom: 100%;
1844
+ inset-inline-start: 50%;
1845
+ transform: translateX(-50%);
1846
+ margin-bottom: 8px;
1847
+ }
1848
+
1849
+ .popover-right {
1850
+ inset-inline-start: 100%;
1851
+ top: 50%;
1852
+ transform: translateY(-50%);
1853
+ margin-inline-start: 8px;
1854
+ }
1855
+
1856
+ .popover-left {
1857
+ inset-inline-end: 100%;
1858
+ top: 50%;
1859
+ transform: translateY(-50%);
1860
+ margin-inline-end: 8px;
1861
+ }
1862
+
1863
+ .popover-bottom-start {
1864
+ top: 100%;
1865
+ inset-inline-start: 0;
1866
+ margin-top: 8px;
1867
+ }
1868
+
1869
+ .popover-bottom-end {
1870
+ top: 100%;
1871
+ inset-inline-end: 0;
1872
+ margin-top: 8px;
1873
+ }
1874
+ /* Auto-generated by scripts/build-component-css.mjs from components/accordion.json. Do not edit manually. */
1875
+
1876
+ /* ── Accordion ────────────────────────────────────────── */
1877
+
1878
+ [data-accordion] {
1879
+ width: 100%;
1880
+ }
1881
+
1882
+ [data-accordion-trigger] {
1883
+ display: flex;
1884
+ width: 100%;
1885
+ align-items: center;
1886
+ justify-content: space-between;
1887
+ padding: var(--spacing-4) 0;
1888
+ border: none;
1889
+ background: transparent;
1890
+ cursor: pointer;
1891
+ font-size: var(--font-size-sm);
1892
+ font-weight: var(--font-weight-medium);
1893
+ text-align: start;
1894
+ color: hsl(var(--mains-primary));
1895
+ transition: all var(--transition-fast);
1896
+ }
1897
+
1898
+ [data-accordion-content] {
1899
+ max-height: 0;
1900
+ overflow: hidden;
1901
+ transition: max-height var(--transition-slow), padding-bottom var(--transition-slow);
1902
+ padding-bottom: 0;
1903
+ font-size: var(--font-size-sm);
1904
+ color: hsl(var(--mains-secondary));
1905
+ }
1906
+
1907
+ [data-accordion-content].open {
1908
+ padding-bottom: var(--spacing-4);
1909
+ }
1910
+
1911
+ [data-accordion-item] {
1912
+ border-bottom: var(--border-width-thin) solid hsl(var(--border-default));
1913
+ transition: border-color var(--transition-fast);
1914
+ }
1915
+
1916
+ [data-accordion-item]:hover {
1917
+ border-color: hsl(var(--border-strong));
1918
+ }
1919
+
1920
+ [data-accordion-shift] [data-accordion-trigger] {
1921
+ transition: padding-left var(--transition-fast);
1922
+ }
1923
+
1924
+ [data-accordion-shift] [data-accordion-item]:hover [data-accordion-trigger] {
1925
+ padding-inline-start: var(--spacing-2);
1926
+ }
1927
+
1928
+ [data-accordion-icon] {
1929
+ width: 1rem;
1930
+ height: 1rem;
1931
+ flex-shrink: 0;
1932
+ transition: transform var(--transition-normal);
1933
+ color: hsl(var(--mains-quaternary));
1934
+ }
1935
+
1936
+ [data-accordion-variant="bordered"] {
1937
+ display: flex;
1938
+ flex-direction: column;
1939
+ gap: var(--spacing-3);
1940
+ }
1941
+
1942
+ [data-accordion-variant="bordered"] [data-accordion-item] {
1943
+ border: var(--border-width-default) solid hsl(var(--border-default));
1944
+ border-radius: var(--radius-2xl);
1945
+ }
1946
+
1947
+ [data-accordion-variant="bordered"] [data-accordion-trigger] {
1948
+ padding: var(--spacing-4);
1949
+ border-radius: var(--radius-lg);
1950
+ }
1951
+
1952
+ [data-accordion-variant="bordered"] [data-accordion-trigger]:hover {
1953
+ background: hsl(var(--surfaces-subtle) / 0.5);
1954
+ }
1955
+
1956
+ [data-accordion-variant="bordered"] [data-accordion-content] {
1957
+ padding-inline-start: var(--spacing-4);
1958
+ padding-inline-end: var(--spacing-4);
1959
+ }
1960
+
1961
+ [data-accordion-variant="bordered"] [data-accordion-content].open {
1962
+ padding-bottom: var(--spacing-4);
1963
+ }
1964
+ /* Auto-generated by scripts/build-component-css.mjs from components/slider.json. Do not edit manually. */
1965
+
1966
+ /* ── Slider ────────────────────────────────────────── */
1967
+
1968
+ input[type="range"] {
1969
+ -webkit-appearance: none;
1970
+ appearance: none;
1971
+ width: 100%;
1972
+ height: 8px;
1973
+ border-radius: 9999px;
1974
+ background: linear-gradient(to right, hsl(var(--accents-brand)) 0%, hsl(var(--accents-brand)) var(--slider-progress, 50%), hsl(var(--surfaces-subtle)) var(--slider-progress, 50%), hsl(var(--surfaces-subtle)) 100%);
1975
+ outline: none;
1976
+ cursor: pointer;
1977
+ }
1978
+
1979
+ input[type="range"]::-webkit-slider-thumb {
1980
+ -webkit-appearance: none;
1981
+ appearance: none;
1982
+ width: 20px;
1983
+ height: 20px;
1984
+ border-radius: 50%;
1985
+ background: hsl(var(--accents-brand));
1986
+ border: 2px solid hsl(var(--surfaces-background));
1987
+ box-shadow: 0 1px 3px rgba(0,0,0,0.3);
1988
+ cursor: pointer;
1989
+ transition: transform 0.1s;
1990
+ }
1991
+
1992
+ input[type="range"]::-webkit-slider-thumb:hover {
1993
+ transform: scale(1.1);
1994
+ }
1995
+
1996
+ input[type="range"]::-webkit-slider-thumb:active {
1997
+ transform: scale(1.15);
1998
+ }
1999
+
2000
+ input[type="range"]:disabled {
2001
+ opacity: 0.5;
2002
+ cursor: not-allowed;
2003
+ }
2004
+
2005
+ input[type="range"]:disabled::-webkit-slider-thumb {
2006
+ cursor: not-allowed;
2007
+ }
2008
+ /* Auto-generated by scripts/build-component-css.mjs from components/minicontrols.json. Do not edit manually. */
2009
+
2010
+ /* ── MiniControls ────────────────────────────────────────── */
2011
+
2012
+ .vt-switch-mini {
2013
+ position: relative;
2014
+ width: 36px;
2015
+ height: 20px;
2016
+ border-radius: var(--radius-full);
2017
+ background: hsl(var(--border-strong));
2018
+ cursor: pointer;
2019
+ transition: background-color var(--transition-normal);
2020
+ flex-shrink: 0;
2021
+ }
2022
+
2023
+ .vt-switch-mini.vt-active {
2024
+ background: hsl(var(--accents-brand));
2025
+ }
2026
+
2027
+ .vt-switch-mini .thumb {
2028
+ position: absolute;
2029
+ top: 2px;
2030
+ inset-inline-start: 2px;
2031
+ width: 16px;
2032
+ height: 16px;
2033
+ border-radius: var(--radius-full);
2034
+ background: hsl(var(--surfaces-background));
2035
+ transition: transform var(--transition-normal);
2036
+ box-shadow: 0 1px 2px hsl(var(--generic-1000) / 0.2);
2037
+ }
2038
+
2039
+ .vt-switch-mini.vt-active .thumb {
2040
+ transform: translateX(16px);
2041
+ }
2042
+
2043
+ .vt-checkbox-mini {
2044
+ width: 14px;
2045
+ height: 14px;
2046
+ border-radius: var(--radius-sm);
2047
+ border: var(--border-width-default) solid hsl(var(--accents-brand));
2048
+ display: flex;
2049
+ align-items: center;
2050
+ justify-content: center;
2051
+ flex-shrink: 0;
2052
+ background: hsl(var(--accents-brand));
2053
+ }
2054
+
2055
+ .vt-radio-mini {
2056
+ width: 14px;
2057
+ height: 14px;
2058
+ border-radius: 50%;
2059
+ border: var(--border-width-default) solid hsl(var(--accents-brand));
2060
+ display: flex;
2061
+ align-items: center;
2062
+ justify-content: center;
2063
+ flex-shrink: 0;
2064
+ }
2065
+
2066
+ .vt-radio-mini .dot {
2067
+ width: 7px;
2068
+ height: 7px;
2069
+ border-radius: 50%;
2070
+ background: hsl(var(--accents-brand));
2071
+ }
2072
+ /* Auto-generated by scripts/build-component-css.mjs from components/typography.json. Do not edit manually. */
2073
+
2074
+ /* ── Typography ────────────────────────────────────────── */
2075
+
2076
+ .vt-display {
2077
+ font-size: var(--font-size-4xl);
2078
+ font-weight: var(--font-weight-extrabold);
2079
+ line-height: 1.1;
2080
+ letter-spacing: -0.02em;
2081
+ }
2082
+
2083
+ .vt-display-2xl {
2084
+ font-size: var(--font-size-9xl);
2085
+ font-weight: var(--font-weight-extrabold);
2086
+ line-height: 1;
2087
+ letter-spacing: -0.035em;
2088
+ }
2089
+
2090
+ .vt-display-xl {
2091
+ font-size: var(--font-size-8xl);
2092
+ font-weight: var(--font-weight-extrabold);
2093
+ line-height: 1;
2094
+ letter-spacing: -0.03em;
2095
+ }
2096
+
2097
+ .vt-display-lg {
2098
+ font-size: var(--font-size-7xl);
2099
+ font-weight: var(--font-weight-extrabold);
2100
+ line-height: 1.05;
2101
+ letter-spacing: -0.03em;
2102
+ }
2103
+
2104
+ .vt-display-md {
2105
+ font-size: var(--font-size-6xl);
2106
+ font-weight: var(--font-weight-extrabold);
2107
+ line-height: 1.05;
2108
+ letter-spacing: -0.025em;
2109
+ }
2110
+
2111
+ .vt-display-sm {
2112
+ font-size: var(--font-size-5xl);
2113
+ font-weight: var(--font-weight-extrabold);
2114
+ line-height: 1.1;
2115
+ letter-spacing: -0.02em;
2116
+ }
2117
+
2118
+ .vt-h1 {
2119
+ font-size: var(--font-size-4xl);
2120
+ font-weight: var(--font-weight-extrabold);
2121
+ line-height: 1.1;
2122
+ letter-spacing: -0.02em;
2123
+ }
2124
+
2125
+ .vt-h2 {
2126
+ font-size: var(--font-size-3xl);
2127
+ font-weight: var(--font-weight-bold);
2128
+ line-height: 1.2;
2129
+ letter-spacing: -0.015em;
2130
+ }
2131
+
2132
+ .vt-h3 {
2133
+ font-size: var(--font-size-2xl);
2134
+ font-weight: var(--font-weight-bold);
2135
+ line-height: 1.25;
2136
+ letter-spacing: -0.01em;
2137
+ }
2138
+
2139
+ .vt-h4 {
2140
+ font-size: var(--font-size-xl);
2141
+ font-weight: var(--font-weight-semibold);
2142
+ line-height: 1.3;
2143
+ letter-spacing: -0.01em;
2144
+ }
2145
+
2146
+ .vt-h5 {
2147
+ font-size: var(--font-size-lg);
2148
+ font-weight: var(--font-weight-semibold);
2149
+ line-height: 1.4;
2150
+ }
2151
+
2152
+ .vt-h6 {
2153
+ font-size: var(--font-size-base);
2154
+ font-weight: var(--font-weight-semibold);
2155
+ line-height: 1.4;
2156
+ }
2157
+
2158
+ .vt-body-lg {
2159
+ font-size: var(--font-size-lg);
2160
+ font-weight: var(--font-weight-normal);
2161
+ line-height: 1.6;
2162
+ }
2163
+
2164
+ .vt-body {
2165
+ font-size: var(--font-size-base);
2166
+ font-weight: var(--font-weight-normal);
2167
+ line-height: 1.6;
2168
+ }
2169
+
2170
+ .vt-body-sm {
2171
+ font-size: var(--font-size-sm);
2172
+ font-weight: var(--font-weight-normal);
2173
+ line-height: 1.5;
2174
+ }
2175
+
2176
+ .vt-label-lg {
2177
+ font-size: var(--font-size-lg);
2178
+ font-weight: var(--font-weight-medium);
2179
+ line-height: 1.5;
2180
+ }
2181
+
2182
+ .vt-label-md {
2183
+ font-size: var(--font-size-base);
2184
+ font-weight: var(--font-weight-medium);
2185
+ line-height: 1.5;
2186
+ }
2187
+
2188
+ .vt-label-sm {
2189
+ font-size: var(--font-size-sm);
2190
+ font-weight: var(--font-weight-medium);
2191
+ line-height: 1.4;
2192
+ }
2193
+
2194
+ .vt-label-xs {
2195
+ font-size: var(--font-size-xs);
2196
+ font-weight: var(--font-weight-medium);
2197
+ line-height: 1.4;
2198
+ }
2199
+
2200
+ .vt-caption {
2201
+ font-size: var(--font-size-xs);
2202
+ font-weight: var(--font-weight-normal);
2203
+ line-height: 1.4;
2204
+ }
2205
+
2206
+ .vt-text-overline {
2207
+ font-size: var(--font-size-xs);
2208
+ font-weight: var(--font-weight-semibold);
2209
+ line-height: 1.4;
2210
+ letter-spacing: 0.06em;
2211
+ text-transform: uppercase;
2212
+ }
2213
+ /* Auto-generated by scripts/build-component-css.mjs from components/sidebar.json. Do not edit manually. */
2214
+
2215
+ /* ── Sidebar ────────────────────────────────────────── */
2216
+
2217
+ .vt-sidebar {
2218
+ width: 14rem;
2219
+ flex-shrink: 0;
2220
+ border-right: var(--border-width-thin) solid hsl(var(--border-default));
2221
+ background: hsl(var(--surfaces-surface));
2222
+ position: sticky;
2223
+ top: 3rem;
2224
+ height: calc(100vh - 3rem);
2225
+ display: none;
2226
+ flex-direction: column;
2227
+ overflow: hidden;
2228
+ }
2229
+ @media (min-width: 768px) {
2230
+ .vt-sidebar {
2231
+ display: flex;
2232
+ }
2233
+ }
2234
+
2235
+ .vt-sidebar-header {
2236
+ padding: var(--spacing-4) var(--spacing-4) 0;
2237
+ margin-bottom: var(--spacing-4);
2238
+ flex-shrink: 0;
2239
+ }
2240
+
2241
+ .vt-sidebar-search {
2242
+ padding: 0 var(--spacing-3);
2243
+ margin-bottom: var(--spacing-3);
2244
+ flex-shrink: 0;
2245
+ }
2246
+
2247
+ .vt-sidebar-nav {
2248
+ flex: 1;
2249
+ min-height: 0;
2250
+ overflow-y: auto;
2251
+ overscroll-behavior: contain;
2252
+ padding: var(--spacing-3) var(--spacing-2) var(--spacing-3);
2253
+ }
2254
+
2255
+ .vt-sidebar-footer {
2256
+ flex-shrink: 0;
2257
+ padding: var(--spacing-3) var(--spacing-4);
2258
+ border-top: var(--border-width-thin) solid hsl(var(--border-default));
2259
+ overflow: hidden;
2260
+ }
2261
+
2262
+ .vt-sidebar-link {
2263
+ display: flex;
2264
+ align-items: center;
2265
+ gap: 8px;
2266
+ padding: 7px 12px 7px 2rem;
2267
+ border-radius: var(--radius-sm);
2268
+ font-size: var(--font-size-sm);
2269
+ font-weight: var(--font-weight-normal);
2270
+ color: hsl(var(--mains-secondary));
2271
+ transition: all var(--transition-fast);
2272
+ text-decoration: none;
2273
+ position: relative;
2274
+ }
2275
+ .vt-sidebar-link::before {
2276
+ content: "";
2277
+ position: absolute;
2278
+ left: 1rem;
2279
+ top: 0;
2280
+ bottom: 0;
2281
+ width: var(--border-width-default);
2282
+ background-color: hsl(var(--border-default));
2283
+ opacity: 0.5;
2284
+ }
2285
+ .vt-sidebar-link:hover {
2286
+ color: hsl(var(--mains-primary));
2287
+ background: hsl(var(--surfaces-subtle));
2288
+ }
2289
+ .vt-sidebar-link.vt-active {
2290
+ color: hsl(var(--accents-brand));
2291
+ background: hsl(var(--accents-brand)/0.08);
2292
+ font-weight: var(--font-weight-medium);
2293
+ }
2294
+ .vt-sidebar-link.vt-active::before {
2295
+ background-color: hsl(var(--accents-brand));
2296
+ opacity: 1;
2297
+ width: var(--border-width-thick);
2298
+ }
2299
+
2300
+ .vt-sidebar-label {
2301
+ display: flex;
2302
+ align-items: center;
2303
+ gap: 6px;
2304
+ font-size: var(--font-size-sm);
2305
+ font-weight: var(--font-weight-bold);
2306
+ text-transform: uppercase;
2307
+ letter-spacing: 0.08em;
2308
+ color: hsl(var(--mains-quaternary));
2309
+ padding: 20px 12px 8px;
2310
+ }
2311
+ .vt-sidebar-label:first-child {
2312
+ padding-top: 4px;
2313
+ }
2314
+
2315
+ .vt-sidebar-label-icon,
2316
+ .vt-sidebar-label svg {
2317
+ width: 16px;
2318
+ height: 16px;
2319
+ flex-shrink: 0;
2320
+ }
2321
+
2322
+ .vt-sidebar-link-btn {
2323
+ display: flex;
2324
+ align-items: center;
2325
+ gap: var(--spacing-2);
2326
+ padding: var(--spacing-2);
2327
+ border-radius: var(--radius-lg);
2328
+ font-size: var(--font-size-sm);
2329
+ font-weight: var(--font-weight-bold);
2330
+ text-transform: uppercase;
2331
+ letter-spacing: 0.08em;
2332
+ text-decoration: none;
2333
+ transition: color var(--transition-fast), background-color var(--transition-fast);
2334
+ color: hsl(var(--mains-quaternary));
2335
+ }
2336
+ .vt-sidebar-link-btn:hover {
2337
+ background: hsl(var(--surfaces-subtle));
2338
+ color: hsl(var(--mains-primary));
2339
+ }
2340
+ .vt-sidebar-link-btn.vt-active {
2341
+ color: hsl(var(--accents-brand));
2342
+ }
2343
+
2344
+ .vt-sidebar-group-btn {
2345
+ display: flex;
2346
+ width: 100%;
2347
+ align-items: center;
2348
+ justify-content: space-between;
2349
+ padding: var(--spacing-2);
2350
+ border-radius: var(--radius-lg);
2351
+ border: none;
2352
+ background: transparent;
2353
+ text-align: left;
2354
+ cursor: pointer;
2355
+ user-select: none;
2356
+ transition: background-color var(--transition-fast);
2357
+ }
2358
+ .vt-sidebar-group-btn:hover {
2359
+ background: hsl(var(--surfaces-subtle));
2360
+ }
2361
+ .vt-sidebar-group-btn:hover .vt-sidebar-group-label {
2362
+ color: hsl(var(--mains-primary));
2363
+ }
2364
+ .vt-sidebar-group-btn:hover .vt-sidebar-chevron {
2365
+ color: hsl(var(--mains-primary));
2366
+ }
2367
+
2368
+ .vt-sidebar-group-label {
2369
+ display: flex;
2370
+ align-items: center;
2371
+ gap: var(--spacing-2);
2372
+ font-size: var(--font-size-sm);
2373
+ font-weight: var(--font-weight-bold);
2374
+ text-transform: uppercase;
2375
+ letter-spacing: 0.08em;
2376
+ color: hsl(var(--mains-quaternary));
2377
+ }
2378
+
2379
+ .vt-sidebar-chevron {
2380
+ width: 14px;
2381
+ height: 14px;
2382
+ flex-shrink: 0;
2383
+ color: hsl(var(--mains-quaternary));
2384
+ transition: transform var(--transition-normal), color var(--transition-fast);
2385
+ }
2386
+
2387
+ .vt-sidebar-items-wrapper {
2388
+ display: grid;
2389
+ grid-template-rows: 0fr;
2390
+ transition: grid-template-rows var(--transition-normal) ease-out, opacity var(--transition-normal) ease-out, visibility 0s var(--transition-normal);
2391
+ overflow: hidden;
2392
+ visibility: hidden;
2393
+ opacity: 0;
2394
+ }
2395
+
2396
+ .vt-sidebar-items {
2397
+ min-height: 0;
2398
+ padding-top: var(--spacing-1);
2399
+ padding-bottom: var(--spacing-1);
2400
+ transform: translateY(calc(-1 * var(--spacing-2)));
2401
+ transition: transform var(--transition-normal) ease-out;
2402
+ }
2403
+
2404
+ .sidebar-group.open .vt-sidebar-items-wrapper {
2405
+ grid-template-rows: 1fr;
2406
+ visibility: visible;
2407
+ opacity: 1;
2408
+ transition: grid-template-rows var(--transition-normal) ease-out, opacity var(--transition-normal) ease-out, visibility 0s;
2409
+ }
2410
+
2411
+ .sidebar-group.open .vt-sidebar-items {
2412
+ transform: translateY(0);
2413
+ }
2414
+
2415
+ .sidebar-group.open .vt-sidebar-chevron {
2416
+ transform: rotate(180deg);
2417
+ color: hsl(var(--mains-primary));
2418
+ }
2419
+
2420
+ .vt-sidebar-badge {
2421
+ margin-left: auto;
2422
+ font-size: 10px;
2423
+ font-weight: var(--font-weight-medium);
2424
+ line-height: 1;
2425
+ padding: 2px 5px;
2426
+ border-radius: var(--radius-full);
2427
+ background: hsl(var(--surfaces-subtle));
2428
+ color: hsl(var(--mains-quaternary));
2429
+ transition: all var(--transition-fast);
2430
+ }
2431
+
2432
+ .vt-sidebar-link:hover .vt-sidebar-badge {
2433
+ background: hsl(var(--surfaces-contrast));
2434
+ color: hsl(var(--mains-secondary));
2435
+ }
2436
+
2437
+ .vt-sidebar-link.vt-active .vt-sidebar-badge {
2438
+ background: hsl(var(--accents-brand)/0.12);
2439
+ color: hsl(var(--accents-brand));
2440
+ }
2441
+
2442
+ .vt-sidebar-view-toggle {
2443
+ display: flex;
2444
+ align-items: center;
2445
+ gap: var(--spacing-1);
2446
+ padding: var(--spacing-1);
2447
+ border-radius: var(--radius-lg);
2448
+ background: hsl(var(--surfaces-subtle));
2449
+ }
2450
+
2451
+ .vt-sidebar-view-btn {
2452
+ display: flex;
2453
+ align-items: center;
2454
+ gap: var(--spacing-1_5);
2455
+ flex: 1;
2456
+ justify-content: center;
2457
+ border-radius: var(--radius-lg);
2458
+ padding: var(--spacing-1) var(--spacing-2);
2459
+ font-size: var(--font-size-sm);
2460
+ font-weight: var(--font-weight-medium);
2461
+ cursor: pointer;
2462
+ border: none;
2463
+ background: transparent;
2464
+ color: hsl(var(--mains-quaternary));
2465
+ transition: color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);
2466
+ }
2467
+ .vt-sidebar-view-btn:hover {
2468
+ color: hsl(var(--mains-secondary));
2469
+ }
2470
+ .vt-sidebar-view-btn.vt-active {
2471
+ color: hsl(var(--mains-primary));
2472
+ background: hsl(var(--surfaces-surface));
2473
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
2474
+ }
2475
+
2476
+ .vt-search-input {
2477
+ width: 100%;
2478
+ height: 2rem;
2479
+ border-radius: var(--radius-lg);
2480
+ border: var(--border-width-default) solid hsl(var(--border-strong));
2481
+ background: hsl(var(--surfaces-surface));
2482
+ padding-left: var(--spacing-8);
2483
+ padding-right: var(--spacing-3);
2484
+ font-size: var(--font-size-sm);
2485
+ color: hsl(var(--mains-primary));
2486
+ transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
2487
+ }
2488
+ .vt-search-input::placeholder {
2489
+ color: hsl(var(--mains-quaternary));
2490
+ }
2491
+ .vt-search-input:focus {
2492
+ outline: none;
2493
+ border-color: hsl(var(--info-primary));
2494
+ box-shadow: 0 0 0 1px hsl(var(--info-primary));
2495
+ }
2496
+ /* Auto-generated by scripts/build-component-css.mjs from components/toc.json. Do not edit manually. */
2497
+
2498
+ /* ── Toc ────────────────────────────────────────── */
2499
+
2500
+ .vt-toc {
2501
+ width: 13rem;
2502
+ flex-shrink: 0;
2503
+ position: sticky;
2504
+ top: 3rem;
2505
+ height: calc(100vh - 3rem);
2506
+ padding: 48px 16px 24px 0;
2507
+ display: none;
2508
+ }
2509
+ @media (min-width: 1280px) {
2510
+ .vt-toc {
2511
+ display: block;
2512
+ }
2513
+ }
2514
+
2515
+ .vt-toc-label {
2516
+ font-size: var(--font-size-xs);
2517
+ font-weight: var(--font-weight-bold);
2518
+ text-transform: uppercase;
2519
+ letter-spacing: 0.08em;
2520
+ color: hsl(var(--mains-quaternary));
2521
+ padding: 0 12px 10px;
2522
+ }
2523
+
2524
+ .vt-toc-link {
2525
+ display: block;
2526
+ padding: 5px 12px;
2527
+ font-size: var(--font-size-xs);
2528
+ color: hsl(var(--mains-tertiary));
2529
+ text-decoration: none;
2530
+ border-left: var(--border-width-thick) solid transparent;
2531
+ transition: color var(--transition-fast), border-color var(--transition-fast);
2532
+ }
2533
+ .vt-toc-link:hover {
2534
+ color: hsl(var(--mains-primary));
2535
+ }
2536
+ .vt-toc-link.vt-active {
2537
+ color: hsl(var(--mains-primary));
2538
+ border-left-color: hsl(var(--accents-brand));
2539
+ font-weight: var(--font-weight-medium);
2540
+ }
2541
+ /* Auto-generated by scripts/build-component-css.mjs from components/navitem.json. Do not edit manually. */
2542
+
2543
+ /* ── NavItem ────────────────────────────────────────── */
2544
+
2545
+ .vt-nav-item {
2546
+ display: flex;
2547
+ align-items: center;
2548
+ gap: var(--spacing-3);
2549
+ padding: var(--spacing-2) var(--spacing-3);
2550
+ border-radius: var(--radius-lg);
2551
+ font-size: var(--font-size-sm);
2552
+ color: hsl(var(--mains-secondary));
2553
+ text-decoration: none;
2554
+ cursor: pointer;
2555
+ transition: color var(--transition-fast), background-color var(--transition-fast);
2556
+ }
2557
+ .vt-nav-item:hover {
2558
+ background: hsl(var(--surfaces-subtle));
2559
+ color: hsl(var(--mains-primary));
2560
+ }
2561
+ .vt-nav-item.vt-active {
2562
+ font-weight: var(--font-weight-medium);
2563
+ background: hsl(var(--accents-brand)/0.1);
2564
+ color: hsl(var(--accents-brand));
2565
+ }
2566
+ .vt-nav-item.vt-muted {
2567
+ color: hsl(var(--mains-quaternary));
2568
+ }
2569
+ .vt-nav-item.vt-muted:hover {
2570
+ color: hsl(var(--mains-primary));
2571
+ }
2572
+
2573
+ .vt-nav-item-sm {
2574
+ gap: var(--spacing-2);
2575
+ padding: var(--spacing-1_5) var(--spacing-3);
2576
+ font-size: var(--font-size-xs);
2577
+ }
2578
+
2579
+ .vt-nav-item-sub {
2580
+ display: block;
2581
+ padding: var(--spacing-1_5) var(--spacing-3);
2582
+ border-radius: var(--radius-lg);
2583
+ font-size: var(--font-size-sm);
2584
+ color: hsl(var(--mains-secondary));
2585
+ text-decoration: none;
2586
+ cursor: pointer;
2587
+ transition: color var(--transition-fast), background-color var(--transition-fast);
2588
+ }
2589
+ .vt-nav-item-sub:hover {
2590
+ background: hsl(var(--surfaces-subtle));
2591
+ color: hsl(var(--mains-primary));
2592
+ }
2593
+ .vt-nav-item-sub.vt-active {
2594
+ font-weight: var(--font-weight-medium);
2595
+ background: hsl(var(--accents-brand)/0.1);
2596
+ color: hsl(var(--accents-brand));
2597
+ }
2598
+
2599
+ .vt-nav-item.vt-active-neutral,
2600
+ .vt-nav-item-sub.vt-active-neutral {
2601
+ font-weight: var(--font-weight-medium);
2602
+ background: hsl(var(--surfaces-subtle));
2603
+ color: hsl(var(--mains-primary));
2604
+ }
2605
+ /* Auto-generated by scripts/build-component-css.mjs from components/componentcard.json. Do not edit manually. */
2606
+
2607
+ /* ── ComponentCard ────────────────────────────────────────── */
2608
+
2609
+ .vt-component-card {
2610
+ border: var(--border-width-thin) solid hsl(var(--border-default));
2611
+ border-radius: var(--radius-2xl);
2612
+ overflow: hidden;
2613
+ transition: border-color var(--transition-normal);
2614
+ display: flex;
2615
+ flex-direction: column;
2616
+ }
2617
+ .vt-component-card:hover {
2618
+ border-color: hsl(var(--accents-brand));
2619
+ }
2620
+ .vt-component-card > .vt-px-4.vt-py-3 h3 {
2621
+ font-size: var(--font-size-xs);
2622
+ font-weight: var(--font-weight-semibold);
2623
+ line-height: 1.25rem;
2624
+ white-space: nowrap;
2625
+ overflow: hidden;
2626
+ text-overflow: ellipsis;
2627
+ }
2628
+ .vt-component-card > .vt-px-4.vt-py-3 p {
2629
+ font-size: var(--font-size-xs);
2630
+ line-height: 1rem;
2631
+ white-space: nowrap;
2632
+ overflow: hidden;
2633
+ text-overflow: ellipsis;
2634
+ }
2635
+
2636
+ .vt-preview-area {
2637
+ padding: 32px 24px;
2638
+ display: flex;
2639
+ align-items: center;
2640
+ justify-content: center;
2641
+ min-height: 120px;
2642
+ flex: 1;
2643
+ background: hsl(var(--surfaces-surface));
2644
+ }
2645
+ /* Auto-generated by scripts/build-component-css.mjs from components/modebtn.json. Do not edit manually. */
2646
+
2647
+ /* ── ModeBtn ────────────────────────────────────────── */
2648
+
2649
+ .vt-mode-btn {
2650
+ color: hsl(var(--mains-quaternary));
2651
+ }
2652
+ .vt-mode-btn:hover {
2653
+ background: hsl(var(--surfaces-subtle));
2654
+ color: hsl(var(--mains-primary));
2655
+ }
2656
+ .vt-mode-btn.vt-active {
2657
+ background: hsl(var(--surfaces-subtle));
2658
+ color: hsl(var(--mains-primary));
2659
+ font-weight: var(--font-weight-medium);
2660
+ }
2661
+ /* Auto-generated by scripts/build-component-css.mjs from components/exampleblock.json. Do not edit manually. */
2662
+
2663
+ /* ── ExampleBlock ────────────────────────────────────────── */
2664
+
2665
+ .vt-example-block {
2666
+ border: var(--border-width-thin) solid hsl(var(--border-default));
2667
+ border-radius: var(--radius-xl);
2668
+ background: hsl(var(--surfaces-surface));
2669
+ overflow: visible;
2670
+ }
2671
+
2672
+ .vt-example-block-header {
2673
+ display: flex;
2674
+ align-items: center;
2675
+ justify-content: space-between;
2676
+ padding: 0 0.75rem;
2677
+ height: 2.5rem;
2678
+ background: hsl(var(--surfaces-subtle));
2679
+ border-bottom: var(--border-width-thin) solid hsl(var(--border-default));
2680
+ border-radius: var(--radius-xl) var(--radius-xl) 0 0;
2681
+ overflow: hidden;
2682
+ }
2683
+
2684
+ .vt-example-block-tabs {
2685
+ display: flex;
2686
+ align-items: center;
2687
+ gap: var(--spacing-0_5);
2688
+ }
2689
+
2690
+ .vt-example-tab {
2691
+ font-size: var(--font-size-xs);
2692
+ font-weight: var(--font-weight-medium);
2693
+ color: hsl(var(--mains-quaternary));
2694
+ padding: var(--spacing-1) var(--spacing-2);
2695
+ border-radius: var(--radius-sm);
2696
+ cursor: pointer;
2697
+ transition: color var(--transition-fast), background-color var(--transition-fast);
2698
+ background: none;
2699
+ border: none;
2700
+ }
2701
+ .vt-example-tab:hover {
2702
+ color: hsl(var(--mains-primary));
2703
+ }
2704
+ .vt-example-tab.vt-active {
2705
+ color: hsl(var(--mains-primary));
2706
+ background: hsl(var(--surfaces-surface));
2707
+ }
2708
+
2709
+ .vt-example-block-actions {
2710
+ display: flex;
2711
+ align-items: center;
2712
+ gap: var(--spacing-2);
2713
+ }
2714
+
2715
+ .vt-example-lang {
2716
+ font-size: var(--font-size-xs);
2717
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
2718
+ color: hsl(var(--mains-quaternary));
2719
+ text-transform: uppercase;
2720
+ }
2721
+
2722
+ .vt-example-copy {
2723
+ padding: var(--spacing-1);
2724
+ border-radius: var(--radius-sm);
2725
+ color: hsl(var(--mains-quaternary));
2726
+ transition: background-color var(--transition-fast), color var(--transition-fast);
2727
+ background: none;
2728
+ border: none;
2729
+ cursor: pointer;
2730
+ }
2731
+ .vt-example-copy:hover {
2732
+ background: hsl(var(--surfaces-subtle));
2733
+ color: hsl(var(--mains-primary));
2734
+ }
2735
+
2736
+ .vt-example-panel[data-panel=preview] {
2737
+ position: relative;
2738
+ padding: 2rem 1.5rem;
2739
+ min-height: 8rem;
2740
+ background: transparent;
2741
+ overflow: visible;
2742
+ }
2743
+
2744
+ .vt-example-panel[data-panel=code] {
2745
+ background: hsl(var(--surfaces-surface));
2746
+ border-radius: 0 0 var(--radius-xl) var(--radius-xl);
2747
+ overflow: hidden;
2748
+ }
2749
+
2750
+ .vt-example-pre {
2751
+ padding: 1rem 1.5rem;
2752
+ overflow-x: auto;
2753
+ margin: 0;
2754
+ }
2755
+
2756
+ .vt-example-code {
2757
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
2758
+ font-size: var(--font-size-xs);
2759
+ line-height: 1.6;
2760
+ color: hsl(var(--mains-secondary));
2761
+ }
2762
+ /* Auto-generated by scripts/build-component-css.mjs from components/anatomy.json. Do not edit manually. */
2763
+
2764
+ /* ── Anatomy ────────────────────────────────────────── */
2765
+
2766
+ .vt-anatomy {
2767
+ border: var(--border-width-thin) solid hsl(var(--border-default));
2768
+ border-radius: var(--radius-2xl);
2769
+ overflow: hidden;
2770
+ background: hsl(var(--surfaces-moderate));
2771
+ }
2772
+
2773
+ .vt-anatomy-pre {
2774
+ padding: 1.25rem 1.5rem;
2775
+ overflow-x: auto;
2776
+ margin: 0;
2777
+ }
2778
+
2779
+ .vt-anatomy-code {
2780
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
2781
+ font-size: var(--font-size-xs);
2782
+ line-height: 1.7;
2783
+ color: hsl(var(--mains-secondary));
2784
+ }
2785
+ /* Auto-generated by scripts/build-component-css.mjs from components/apitable.json. Do not edit manually. */
2786
+
2787
+ /* ── ApiTable ────────────────────────────────────────── */
2788
+
2789
+ .vt-api-table-wrap {
2790
+ border: var(--border-width-thin) solid hsl(var(--border-default));
2791
+ border-radius: var(--radius-2xl);
2792
+ overflow: hidden;
2793
+ background: hsl(var(--surfaces-surface));
2794
+ }
2795
+
2796
+ .vt-api-table {
2797
+ width: 100%;
2798
+ border-collapse: collapse;
2799
+ font-size: var(--font-size-xs);
2800
+ line-height: 1.5;
2801
+ }
2802
+ .vt-api-table th {
2803
+ text-align: left;
2804
+ padding: 0.625rem 1rem;
2805
+ font-weight: var(--font-weight-semibold);
2806
+ font-size: var(--font-size-xs);
2807
+ color: hsl(var(--mains-quaternary));
2808
+ text-transform: uppercase;
2809
+ letter-spacing: 0.04em;
2810
+ background: hsl(var(--surfaces-moderate));
2811
+ border-bottom: var(--border-width-thin) solid hsl(var(--border-default));
2812
+ }
2813
+ .vt-api-table td {
2814
+ padding: var(--spacing-2) var(--spacing-4);
2815
+ color: hsl(var(--mains-secondary));
2816
+ border-bottom: var(--border-width-thin) solid hsl(var(--border-default));
2817
+ }
2818
+ .vt-api-table tr:last-child td {
2819
+ border-bottom: none;
2820
+ }
2821
+ .vt-api-table code {
2822
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
2823
+ font-size: var(--font-size-xs);
2824
+ color: hsl(var(--mains-primary));
2825
+ background: hsl(var(--surfaces-moderate));
2826
+ padding: var(--spacing-0_5) var(--spacing-1_5);
2827
+ border-radius: var(--radius-sm);
2828
+ }
2829
+
2830
+ .vt-api-type {
2831
+ display: inline-block;
2832
+ font-size: var(--font-size-xs);
2833
+ font-weight: var(--font-weight-medium);
2834
+ padding: 0.0625rem 0.375rem;
2835
+ border-radius: var(--radius-sm);
2836
+ text-transform: capitalize;
2837
+ }
2838
+ .vt-api-type--base {
2839
+ color: hsl(var(--info-primary));
2840
+ background: hsl(var(--info-background));
2841
+ }
2842
+ .vt-api-type--variant {
2843
+ color: hsl(var(--warning-primary));
2844
+ background: hsl(var(--warning-background));
2845
+ }
2846
+ .vt-api-type--size {
2847
+ color: hsl(var(--success-primary));
2848
+ background: hsl(var(--success-background));
2849
+ }
2850
+ .vt-api-type--modifier {
2851
+ color: hsl(var(--error-primary));
2852
+ background: hsl(var(--error-background));
2853
+ }
2854
+ .vt-api-type--state {
2855
+ color: hsl(var(--mains-quaternary));
2856
+ background: hsl(var(--surfaces-moderate));
2857
+ }
2858
+
2859
+ .vt-a11y-feature {
2860
+ font-weight: var(--font-weight-medium);
2861
+ color: hsl(var(--mains-primary));
2862
+ }
2863
+
2864
+ .vt-scroll {
2865
+ overflow: auto;
2866
+ scrollbar-width: thin;
2867
+ scrollbar-color: hsl(var(--border-default)) transparent;
2868
+ }
2869
+ .vt-scroll::-webkit-scrollbar {
2870
+ width: 6px;
2871
+ height: 6px;
2872
+ }
2873
+ .vt-scroll::-webkit-scrollbar-track {
2874
+ background: transparent;
2875
+ border-radius: var(--radius-xs);
2876
+ }
2877
+ .vt-scroll::-webkit-scrollbar-thumb {
2878
+ background: hsl(var(--border-default));
2879
+ border-radius: var(--radius-xs);
2880
+ }
2881
+ .vt-scroll::-webkit-scrollbar-thumb:hover {
2882
+ background: hsl(var(--mains-quaternary));
2883
+ }
2884
+ .vt-scroll::-webkit-scrollbar-corner {
2885
+ background: transparent;
2886
+ }
2887
+
2888
+ .vt-scroll-hidden {
2889
+ overflow: auto;
2890
+ scrollbar-width: none;
2891
+ -ms-overflow-style: none;
2892
+ }
2893
+ .vt-scroll-hidden::-webkit-scrollbar {
2894
+ display: none;
2895
+ }
2896
+
2897
+ .vt-scroll-autohide {
2898
+ overflow: auto;
2899
+ scrollbar-width: thin;
2900
+ scrollbar-color: transparent transparent;
2901
+ }
2902
+ .vt-scroll-autohide::-webkit-scrollbar {
2903
+ width: 6px;
2904
+ height: 6px;
2905
+ }
2906
+ .vt-scroll-autohide::-webkit-scrollbar-track {
2907
+ background: transparent;
2908
+ }
2909
+ .vt-scroll-autohide::-webkit-scrollbar-thumb {
2910
+ background: transparent;
2911
+ border-radius: var(--radius-xs);
2912
+ transition: background var(--transition-normal);
2913
+ }
2914
+ .vt-scroll-autohide:hover {
2915
+ scrollbar-color: hsl(var(--border-default)) transparent;
2916
+ }
2917
+ .vt-scroll-autohide:hover::-webkit-scrollbar-thumb {
2918
+ background: hsl(var(--border-default));
2919
+ }
2920
+ .vt-scroll-autohide::-webkit-scrollbar-corner {
2921
+ background: transparent;
2922
+ }
2923
+
2924
+ .vt-scroll-indicator {
2925
+ position: relative;
2926
+ }
2927
+ .vt-scroll-indicator::before, .vt-scroll-indicator::after {
2928
+ content: "";
2929
+ position: absolute;
2930
+ left: 0;
2931
+ right: 0;
2932
+ height: 32px;
2933
+ pointer-events: none;
2934
+ z-index: 1;
2935
+ opacity: 0;
2936
+ transition: opacity var(--transition-normal);
2937
+ }
2938
+ .vt-scroll-indicator::before {
2939
+ top: 0;
2940
+ background: linear-gradient(to bottom, hsl(var(--surfaces-background)), transparent);
2941
+ }
2942
+ .vt-scroll-indicator::after {
2943
+ bottom: 0;
2944
+ background: linear-gradient(to top, hsl(var(--surfaces-background)), transparent);
2945
+ }
2946
+ .vt-scroll-indicator.vt-show-top::before {
2947
+ opacity: 1;
2948
+ }
2949
+ .vt-scroll-indicator.vt-show-bottom::after {
2950
+ opacity: 1;
2951
+ }
2952
+
2953
+ .vt-scroll-indicator-h {
2954
+ position: relative;
2955
+ }
2956
+ .vt-scroll-indicator-h::before, .vt-scroll-indicator-h::after {
2957
+ content: "";
2958
+ position: absolute;
2959
+ top: 0;
2960
+ bottom: 0;
2961
+ width: 32px;
2962
+ pointer-events: none;
2963
+ z-index: 1;
2964
+ opacity: 0;
2965
+ transition: opacity var(--transition-normal);
2966
+ }
2967
+ .vt-scroll-indicator-h::before {
2968
+ left: 0;
2969
+ background: linear-gradient(to right, hsl(var(--surfaces-background)), transparent);
2970
+ }
2971
+ .vt-scroll-indicator-h::after {
2972
+ right: 0;
2973
+ background: linear-gradient(to left, hsl(var(--surfaces-background)), transparent);
2974
+ }
2975
+ .vt-scroll-indicator-h.vt-show-left::before {
2976
+ opacity: 1;
2977
+ }
2978
+ .vt-scroll-indicator-h.vt-show-right::after {
2979
+ opacity: 1;
2980
+ }
2981
+
2982
+ @keyframes astroFadeInOut {
2983
+ 0% {
2984
+ opacity: 1;
2985
+ }
2986
+ to {
2987
+ opacity: 0;
2988
+ }
2989
+ }
2990
+ @keyframes astroFadeIn {
2991
+ 0% {
2992
+ opacity: 0;
2993
+ mix-blend-mode: plus-lighter;
2994
+ }
2995
+ to {
2996
+ opacity: 1;
2997
+ mix-blend-mode: plus-lighter;
2998
+ }
2999
+ }
3000
+ @keyframes astroFadeOut {
3001
+ 0% {
3002
+ opacity: 1;
3003
+ mix-blend-mode: plus-lighter;
3004
+ }
3005
+ to {
3006
+ opacity: 0;
3007
+ mix-blend-mode: plus-lighter;
3008
+ }
3009
+ }
3010
+ @keyframes astroSlideFromRight {
3011
+ 0% {
3012
+ transform: translate(100%);
3013
+ }
3014
+ }
3015
+ @keyframes astroSlideFromLeft {
3016
+ 0% {
3017
+ transform: translate(-100%);
3018
+ }
3019
+ }
3020
+ @keyframes astroSlideToRight {
3021
+ to {
3022
+ transform: translate(100%);
3023
+ }
3024
+ }
3025
+ @keyframes astroSlideToLeft {
3026
+ to {
3027
+ transform: translate(-100%);
3028
+ }
3029
+ }
3030
+ @media (prefers-reduced-motion) {
3031
+ ::view-transition-group(*),
3032
+ ::view-transition-old(*),
3033
+ ::view-transition-new(*) {
3034
+ animation: none !important;
3035
+ }
3036
+ [data-astro-transition-scope] {
3037
+ animation: none !important;
3038
+ }
3039
+ }
3040
+ .astro-route-announcer {
3041
+ position: absolute;
3042
+ left: 0;
3043
+ top: 0;
3044
+ clip: rect(0 0 0 0);
3045
+ clip-path: inset(50%);
3046
+ overflow: hidden;
3047
+ white-space: nowrap;
3048
+ width: 1px;
3049
+ height: 1px;
3050
+ }
3051
+ /* Auto-generated by scripts/build-component-css.mjs from components/combobox.json. Do not edit manually. */
3052
+
3053
+ /* ── Combobox ────────────────────────────────────────── */
3054
+
3055
+ .vt-combobox-wrapper {
3056
+ position: relative;
3057
+ }
3058
+
3059
+ .vt-combobox-item {
3060
+ display: flex;
3061
+ align-items: center;
3062
+ gap: var(--spacing-2);
3063
+ padding: var(--spacing-2);
3064
+ border-radius: var(--radius-sm);
3065
+ font-size: var(--font-size-sm);
3066
+ color: hsl(var(--mains-primary));
3067
+ cursor: pointer;
3068
+ transition: background var(--transition-fast);
3069
+ }
3070
+
3071
+ .vt-combobox-item:hover, .vt-combobox-item.vt-selected {
3072
+ background: hsl(var(--surfaces-subtle));
3073
+ }
3074
+
3075
+ .vt-combobox-icon {
3076
+ width: 1rem;
3077
+ height: 1rem;
3078
+ flex-shrink: 0;
3079
+ color: hsl(var(--mains-quaternary));
3080
+ }
3081
+
3082
+ .vt-combobox-group {
3083
+ display: block;
3084
+ }
3085
+
3086
+ .vt-combobox-tags {
3087
+ display: flex;
3088
+ flex-wrap: wrap;
3089
+ align-items: center;
3090
+ gap: var(--spacing-1_5);
3091
+ min-height: 2.5rem;
3092
+ width: 100%;
3093
+ border-radius: var(--radius-lg);
3094
+ border: var(--border-width-thin) solid hsl(var(--border-strong));
3095
+ background: hsl(var(--surfaces-surface));
3096
+ padding: var(--spacing-1_5) var(--spacing-3);
3097
+ cursor: text;
3098
+ }
3099
+
3100
+ .vt-combobox-tag {
3101
+ display: inline-flex;
3102
+ align-items: center;
3103
+ gap: var(--spacing-1);
3104
+ border-radius: var(--radius-sm);
3105
+ background: hsl(var(--surfaces-subtle));
3106
+ padding: var(--spacing-0_5) var(--spacing-2);
3107
+ font-size: var(--font-size-xs);
3108
+ font-weight: var(--font-weight-medium);
3109
+ }
3110
+
3111
+ .vt-combobox-button-label {
3112
+ color: hsl(var(--mains-quaternary));
3113
+ }
3114
+
3115
+ .vt-combobox-empty {
3116
+ padding: var(--spacing-4) 0;
3117
+ text-align: center;
3118
+ font-size: var(--font-size-sm);
3119
+ color: hsl(var(--mains-quaternary));
3120
+ }
3121
+ /* Auto-generated by scripts/build-component-css.mjs from components/command.json. Do not edit manually. */
3122
+
3123
+ /* ── Command ────────────────────────────────────────── */
3124
+
3125
+ .vt-command-wrapper {
3126
+ border-radius: var(--radius-xl);
3127
+ border: var(--border-width-thin) solid hsl(var(--border-default));
3128
+ background: hsl(var(--surfaces-surface));
3129
+ overflow: hidden;
3130
+ }
3131
+
3132
+ .vt-command-input {
3133
+ display: flex;
3134
+ height: 2.75rem;
3135
+ flex: 1;
3136
+ background: transparent;
3137
+ border: none;
3138
+ outline: none;
3139
+ padding: 0 var(--spacing-3);
3140
+ font-size: var(--font-size-sm);
3141
+ color: hsl(var(--mains-primary));
3142
+ }
3143
+
3144
+ .vt-command-input::placeholder {
3145
+ color: hsl(var(--mains-quaternary));
3146
+ }
3147
+
3148
+ .vt-command-list {
3149
+ padding: var(--spacing-2);
3150
+ max-height: 18rem;
3151
+ overflow-y: auto;
3152
+ }
3153
+
3154
+ .vt-command-group {
3155
+ display: block;
3156
+ }
3157
+
3158
+ .vt-command-item {
3159
+ display: flex;
3160
+ align-items: center;
3161
+ gap: var(--spacing-2);
3162
+ padding: var(--spacing-1_5) var(--spacing-2);
3163
+ border-radius: var(--radius-sm);
3164
+ font-size: var(--font-size-sm);
3165
+ color: hsl(var(--mains-primary));
3166
+ cursor: pointer;
3167
+ transition: background var(--transition-fast);
3168
+ }
3169
+
3170
+ .vt-command-item:hover, .vt-command-item.vt-active {
3171
+ background: hsl(var(--surfaces-subtle));
3172
+ }
3173
+
3174
+ .vt-command-separator {
3175
+ height: var(--border-width-thin);
3176
+ background: hsl(var(--border-default));
3177
+ }
3178
+
3179
+ .vt-command-empty {
3180
+ padding: var(--spacing-6) 0;
3181
+ text-align: center;
3182
+ font-size: var(--font-size-sm);
3183
+ color: hsl(var(--mains-quaternary));
3184
+ }
3185
+ /* Auto-generated by scripts/build-component-css.mjs from components/treeview.json. Do not edit manually. */
3186
+
3187
+ /* ── TreeView ────────────────────────────────────────── */
3188
+
3189
+ .vt-tree {
3190
+ display: block;
3191
+ font-size: var(--font-size-sm);
3192
+ }
3193
+
3194
+ .vt-tree-item {
3195
+ display: block;
3196
+ }
3197
+
3198
+ .vt-tree-toggle {
3199
+ display: flex;
3200
+ align-items: center;
3201
+ gap: var(--spacing-1_5);
3202
+ padding: var(--spacing-1) var(--spacing-2);
3203
+ border-radius: var(--radius-sm);
3204
+ font-size: var(--font-size-sm);
3205
+ font-weight: var(--font-weight-medium);
3206
+ color: hsl(var(--mains-primary));
3207
+ width: 100%;
3208
+ text-align: start;
3209
+ cursor: pointer;
3210
+ transition: background var(--transition-fast);
3211
+ }
3212
+
3213
+ .vt-tree-toggle:hover {
3214
+ background: hsl(var(--surfaces-subtle));
3215
+ }
3216
+
3217
+ .vt-tree-chevron {
3218
+ transition: transform var(--transition-normal);
3219
+ color: hsl(var(--mains-quaternary));
3220
+ }
3221
+
3222
+ [data-tree-branch].open > .vt-tree-toggle > .vt-tree-chevron {
3223
+ transform: rotate(90deg);
3224
+ }
3225
+
3226
+ .vt-tree-children {
3227
+ overflow: hidden;
3228
+ max-height: 0;
3229
+ opacity: 0;
3230
+ transition: max-height var(--transition-normal), opacity var(--transition-fast);
3231
+ padding-inline-start: var(--spacing-3);
3232
+ margin-inline-start: var(--spacing-4);
3233
+ border-inline-start: var(--border-width-thin) solid hsl(var(--border-default) / 0.5);
3234
+ }
3235
+
3236
+ [data-tree-branch].open > .vt-tree-children {
3237
+ max-height: 500px;
3238
+ opacity: 1;
3239
+ }
3240
+
3241
+ .vt-tree-leaf {
3242
+ display: flex;
3243
+ align-items: center;
3244
+ gap: var(--spacing-1_5);
3245
+ padding: var(--spacing-1) var(--spacing-2);
3246
+ border-radius: var(--radius-sm);
3247
+ font-size: var(--font-size-sm);
3248
+ color: hsl(var(--mains-secondary));
3249
+ text-decoration: none;
3250
+ cursor: pointer;
3251
+ transition: all var(--transition-fast);
3252
+ }
3253
+
3254
+ .vt-tree-leaf:hover {
3255
+ color: hsl(var(--mains-primary));
3256
+ background: hsl(var(--surfaces-subtle));
3257
+ }
3258
+
3259
+ .vt-tree-leaf.vt-tree-active, .vt-tree-active {
3260
+ color: hsl(var(--info-primary));
3261
+ background: hsl(var(--info-primary) / 0.08);
3262
+ font-weight: var(--font-weight-medium);
3263
+ }
3264
+ /* Auto-generated by scripts/build-component-css.mjs from components/resizable.json. Do not edit manually. */
3265
+
3266
+ /* ── Resizable ────────────────────────────────────────── */
3267
+
3268
+ .vt-resize-handle {
3269
+ display: flex;
3270
+ align-items: center;
3271
+ justify-content: center;
3272
+ gap: var(--spacing-0_5);
3273
+ background: hsl(var(--border-default));
3274
+ transition: background var(--transition-fast);
3275
+ flex-shrink: 0;
3276
+ }
3277
+
3278
+ .vt-resize-handle:hover {
3279
+ background: hsl(var(--info-primary) / 0.5);
3280
+ }
3281
+
3282
+ .vt-resize-handle-col {
3283
+ width: var(--spacing-1_5);
3284
+ flex-direction: column;
3285
+ cursor: col-resize;
3286
+ }
3287
+
3288
+ .vt-resize-handle-row {
3289
+ height: var(--spacing-1_5);
3290
+ cursor: row-resize;
3291
+ }
3292
+ /* Auto-generated by scripts/generate-vt-utilities.mjs — do not edit manually. */
3293
+
3294
+ /* ── 1. CSS Reset ───────────────────────────────────────────── */
3295
+ *, ::before, ::after {
3296
+ box-sizing: border-box;
3297
+ border-width: 0;
3298
+ border-style: solid;
3299
+ border-color: hsl(var(--border-default, 0 5% 92%));
3300
+ }
3301
+ html, :host {
3302
+ line-height: 1.5;
3303
+ -webkit-text-size-adjust: 100%;
3304
+ -moz-tab-size: 4;
3305
+ tab-size: 4;
3306
+ font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
3307
+ font-feature-settings: normal;
3308
+ font-variation-settings: normal;
3309
+ -webkit-tap-highlight-color: transparent;
3310
+ }
3311
+ body { margin: 0; line-height: inherit; }
3312
+ hr { height: 0; color: inherit; }
3313
+ abbr:where([title]) { text-decoration: underline dotted; }
3314
+ h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
3315
+ a { color: inherit; text-decoration: inherit; }
3316
+ b, strong { font-weight: bolder; }
3317
+ code, kbd, samp, pre { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-feature-settings: normal; font-variation-settings: normal; font-size: 1em; }
3318
+ small { font-size: 80%; }
3319
+ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
3320
+ sub { bottom: -0.25em; }
3321
+ sup { top: -0.5em; }
3322
+ table { text-indent: 0; border-color: inherit; border-collapse: collapse; }
3323
+ button, input, optgroup, select, textarea { font-family: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 100%; font-weight: inherit; line-height: inherit; letter-spacing: inherit; color: inherit; margin: 0; padding: 0; }
3324
+ button, select { text-transform: none; }
3325
+ button, input:where([type=button]), input:where([type=reset]), input:where([type=submit]) { -webkit-appearance: button; background-color: transparent; background-image: none; }
3326
+ :-moz-focusring { outline: auto; }
3327
+ :-moz-ui-invalid { box-shadow: none; }
3328
+ progress { vertical-align: baseline; }
3329
+ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button { height: auto; }
3330
+ [type=search] { -webkit-appearance: textfield; outline-offset: -2px; }
3331
+ ::-webkit-search-decoration { -webkit-appearance: none; }
3332
+ ::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }
3333
+ summary { display: list-item; }
3334
+ blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre { margin: 0; }
3335
+ fieldset { margin: 0; padding: 0; }
3336
+ legend { padding: 0; }
3337
+ ol, ul, menu { list-style: none; margin: 0; padding: 0; }
3338
+ dialog { padding: 0; }
3339
+ textarea { resize: vertical; }
3340
+ input::placeholder, textarea::placeholder { opacity: 1; color: #9ca3af; }
3341
+ button, [role=button] { cursor: pointer; }
3342
+ :disabled { cursor: default; }
3343
+ img, svg, video, canvas, audio, iframe, embed, object { display: block; vertical-align: middle; }
3344
+ img, video { max-width: 100%; height: auto; }
3345
+ [hidden]:where(:not([hidden=until-found])) { display: none; }
3346
+
3347
+ /* ── 2. Internal composition variables ──────────────────── */
3348
+ *, ::before, ::after {
3349
+ --vt-translate-x: 0;
3350
+ --vt-translate-y: 0;
3351
+ --vt-rotate: 0;
3352
+ --vt-skew-x: 0;
3353
+ --vt-skew-y: 0;
3354
+ --vt-scale-x: 1;
3355
+ --vt-scale-y: 1;
3356
+ --vt-ring-inset: ;
3357
+ --vt-ring-offset-width: 0px;
3358
+ --vt-ring-offset-color: #fff;
3359
+ --vt-ring-color: hsl(var(--accents-brand) / 0.5);
3360
+ --vt-ring-offset-shadow: 0 0 #0000;
3361
+ --vt-ring-shadow: 0 0 #0000;
3362
+ --vt-shadow: 0 0 #0000;
3363
+ --vt-shadow-colored: 0 0 #0000;
3364
+ --vt-gradient-from-position: ;
3365
+ --vt-gradient-via-position: ;
3366
+ --vt-gradient-to-position: ;
3367
+ --vt-space-x-reverse: 0;
3368
+ --vt-space-y-reverse: 0;
3369
+ --vt-divide-y-reverse: 0;
3370
+ --vt-numeric-spacing: ;
3371
+ --vt-ordinal: ;
3372
+ --vt-slashed-zero: ;
3373
+ --vt-numeric-figure: ;
3374
+ --vt-numeric-fraction: ;
3375
+ --vt-backdrop-blur: ;
3376
+ --vt-backdrop-brightness: ;
3377
+ --vt-backdrop-contrast: ;
3378
+ --vt-backdrop-grayscale: ;
3379
+ --vt-backdrop-hue-rotate: ;
3380
+ --vt-backdrop-invert: ;
3381
+ --vt-backdrop-opacity: ;
3382
+ --vt-backdrop-saturate: ;
3383
+ --vt-backdrop-sepia: ;
3384
+ --vt-blur: ;
3385
+ --vt-brightness: ;
3386
+ --vt-contrast: ;
3387
+ --vt-grayscale: ;
3388
+ --vt-hue-rotate: ;
3389
+ --vt-invert: ;
3390
+ --vt-saturate: ;
3391
+ --vt-sepia: ;
3392
+ --vt-drop-shadow: ;
3393
+ }
3394
+
3395
+ /* ── 3. Base utilities ─────────────────────────────────── */
3396
+
3397
+ .vt-block { display: block; }
3398
+ .vt-inline-block { display: inline-block; }
3399
+ .vt-inline { display: inline; }
3400
+ .vt-flex { display: flex; }
3401
+ .vt-inline-flex { display: inline-flex; }
3402
+ .vt-grid { display: grid; }
3403
+ .vt-inline-grid { display: inline-grid; }
3404
+ .vt-hidden { display: none; }
3405
+ .vt-table { display: table; }
3406
+ .vt-table-row { display: table-row; }
3407
+ .vt-table-cell { display: table-cell; }
3408
+ .\!block { display: block !important; }
3409
+ .vt-static { position: static; }
3410
+ .vt-relative { position: relative; }
3411
+ .vt-absolute { position: absolute; }
3412
+ .vt-fixed { position: fixed; }
3413
+ .vt-sticky { position: sticky; }
3414
+ .vt-visible { visibility: visible; }
3415
+ .vt-collapse { visibility: collapse; }
3416
+ .vt-inset-0 { inset: 0; }
3417
+ .vt-inset-2 { inset: 0.5rem; }
3418
+ .vt-inset-x-0 { left: 0; right: 0; }
3419
+ .vt-top-0 { top:0; }
3420
+ .vt-top-0\.5 { top:0.125rem; }
3421
+ .vt-top-1 { top:0.25rem; }
3422
+ .vt-top-1\/2 { top:50%; }
3423
+ .vt-top-2 { top:0.5rem; }
3424
+ .vt-top-8 { top:2rem; }
3425
+ .vt-top-full { top:100%; }
3426
+ .vt-right-0 { right:0; }
3427
+ .vt-right-0\.5 { right:0.125rem; }
3428
+ .vt-right-2 { right:0.5rem; }
3429
+ .vt-right-3 { right:0.75rem; }
3430
+ .vt-right-4 { right:1rem; }
3431
+ .vt-right-6 { right:1.5rem; }
3432
+ .vt-right-full { right:100%; }
3433
+ .vt-bottom-0 { bottom:0; }
3434
+ .vt-bottom-1 { bottom:0.25rem; }
3435
+ .vt-bottom-2 { bottom:0.5rem; }
3436
+ .vt-bottom-4 { bottom:1rem; }
3437
+ .vt-bottom-6 { bottom:1.5rem; }
3438
+ .vt-bottom-full { bottom:100%; }
3439
+ .vt-left-0 { left:0; }
3440
+ .vt-left-1\/2 { left:50%; }
3441
+ .vt-left-3 { left:0.75rem; }
3442
+ .vt-left-4 { left:1rem; }
3443
+ .vt-left-6 { left:1.5rem; }
3444
+ .vt-left-8 { left:2rem; }
3445
+ .vt-left-full { left:100%; }
3446
+ .vt-z-0 { z-index: 0; }
3447
+ .vt-z-10 { z-index: 10; }
3448
+ .vt-z-20 { z-index: 20; }
3449
+ .vt-z-30 { z-index: 30; }
3450
+ .vt-z-40 { z-index: 40; }
3451
+ .vt-z-50 { z-index: 50; }
3452
+ .vt-z-\[100\] { z-index: 100; }
3453
+
3454
+ .vt-m-0 { margin: 0px; }
3455
+ .vt-m-1 { margin: 0.25rem; }
3456
+ .vt-m-2 { margin: 0.5rem; }
3457
+ .vt-m-3 { margin: 0.75rem; }
3458
+ .vt-m-4 { margin: 1rem; }
3459
+ .vt-m-5 { margin: 1.25rem; }
3460
+ .vt-m-6 { margin: 1.5rem; }
3461
+ .vt-m-8 { margin: 2rem; }
3462
+ .vt-m-9 { margin: 2.25rem; }
3463
+ .vt-m-10 { margin: 2.5rem; }
3464
+ .vt-m-12 { margin: 3rem; }
3465
+ .vt-m-14 { margin: 3.5rem; }
3466
+ .vt-m-16 { margin: 4rem; }
3467
+ .vt-m-20 { margin: 5rem; }
3468
+ .vt-m-0\.5 { margin: 0.125rem; }
3469
+ .vt-m-1\.5 { margin: 0.375rem; }
3470
+ .vt-m-2\.5 { margin: 0.625rem; }
3471
+ .vt-mx-0 { margin-left: 0px; margin-right: 0px; }
3472
+ .vt-mx-1 { margin-left: 0.25rem; margin-right: 0.25rem; }
3473
+ .vt-mx-2 { margin-left: 0.5rem; margin-right: 0.5rem; }
3474
+ .vt-mx-3 { margin-left: 0.75rem; margin-right: 0.75rem; }
3475
+ .vt-mx-4 { margin-left: 1rem; margin-right: 1rem; }
3476
+ .vt-mx-5 { margin-left: 1.25rem; margin-right: 1.25rem; }
3477
+ .vt-mx-6 { margin-left: 1.5rem; margin-right: 1.5rem; }
3478
+ .vt-mx-8 { margin-left: 2rem; margin-right: 2rem; }
3479
+ .vt-mx-9 { margin-left: 2.25rem; margin-right: 2.25rem; }
3480
+ .vt-mx-10 { margin-left: 2.5rem; margin-right: 2.5rem; }
3481
+ .vt-mx-12 { margin-left: 3rem; margin-right: 3rem; }
3482
+ .vt-mx-14 { margin-left: 3.5rem; margin-right: 3.5rem; }
3483
+ .vt-mx-16 { margin-left: 4rem; margin-right: 4rem; }
3484
+ .vt-mx-20 { margin-left: 5rem; margin-right: 5rem; }
3485
+ .vt-mx-0\.5 { margin-left: 0.125rem; margin-right: 0.125rem; }
3486
+ .vt-mx-1\.5 { margin-left: 0.375rem; margin-right: 0.375rem; }
3487
+ .vt-mx-2\.5 { margin-left: 0.625rem; margin-right: 0.625rem; }
3488
+ .vt-my-0 { margin-top: 0px; margin-bottom: 0px; }
3489
+ .vt-my-1 { margin-top: 0.25rem; margin-bottom: 0.25rem; }
3490
+ .vt-my-2 { margin-top: 0.5rem; margin-bottom: 0.5rem; }
3491
+ .vt-my-3 { margin-top: 0.75rem; margin-bottom: 0.75rem; }
3492
+ .vt-my-4 { margin-top: 1rem; margin-bottom: 1rem; }
3493
+ .vt-my-5 { margin-top: 1.25rem; margin-bottom: 1.25rem; }
3494
+ .vt-my-6 { margin-top: 1.5rem; margin-bottom: 1.5rem; }
3495
+ .vt-my-8 { margin-top: 2rem; margin-bottom: 2rem; }
3496
+ .vt-my-9 { margin-top: 2.25rem; margin-bottom: 2.25rem; }
3497
+ .vt-my-10 { margin-top: 2.5rem; margin-bottom: 2.5rem; }
3498
+ .vt-my-12 { margin-top: 3rem; margin-bottom: 3rem; }
3499
+ .vt-my-14 { margin-top: 3.5rem; margin-bottom: 3.5rem; }
3500
+ .vt-my-16 { margin-top: 4rem; margin-bottom: 4rem; }
3501
+ .vt-my-20 { margin-top: 5rem; margin-bottom: 5rem; }
3502
+ .vt-my-0\.5 { margin-top: 0.125rem; margin-bottom: 0.125rem; }
3503
+ .vt-my-1\.5 { margin-top: 0.375rem; margin-bottom: 0.375rem; }
3504
+ .vt-my-2\.5 { margin-top: 0.625rem; margin-bottom: 0.625rem; }
3505
+ .vt-mt-0 { margin-top: 0px; }
3506
+ .vt-mt-1 { margin-top: 0.25rem; }
3507
+ .vt-mt-2 { margin-top: 0.5rem; }
3508
+ .vt-mt-3 { margin-top: 0.75rem; }
3509
+ .vt-mt-4 { margin-top: 1rem; }
3510
+ .vt-mt-5 { margin-top: 1.25rem; }
3511
+ .vt-mt-6 { margin-top: 1.5rem; }
3512
+ .vt-mt-8 { margin-top: 2rem; }
3513
+ .vt-mt-9 { margin-top: 2.25rem; }
3514
+ .vt-mt-10 { margin-top: 2.5rem; }
3515
+ .vt-mt-12 { margin-top: 3rem; }
3516
+ .vt-mt-14 { margin-top: 3.5rem; }
3517
+ .vt-mt-16 { margin-top: 4rem; }
3518
+ .vt-mt-20 { margin-top: 5rem; }
3519
+ .vt-mt-0\.5 { margin-top: 0.125rem; }
3520
+ .vt-mt-1\.5 { margin-top: 0.375rem; }
3521
+ .vt-mt-2\.5 { margin-top: 0.625rem; }
3522
+ .vt-mr-0 { margin-right: 0px; }
3523
+ .vt-mr-1 { margin-right: 0.25rem; }
3524
+ .vt-mr-2 { margin-right: 0.5rem; }
3525
+ .vt-mr-3 { margin-right: 0.75rem; }
3526
+ .vt-mr-4 { margin-right: 1rem; }
3527
+ .vt-mr-5 { margin-right: 1.25rem; }
3528
+ .vt-mr-6 { margin-right: 1.5rem; }
3529
+ .vt-mr-8 { margin-right: 2rem; }
3530
+ .vt-mr-9 { margin-right: 2.25rem; }
3531
+ .vt-mr-10 { margin-right: 2.5rem; }
3532
+ .vt-mr-12 { margin-right: 3rem; }
3533
+ .vt-mr-14 { margin-right: 3.5rem; }
3534
+ .vt-mr-16 { margin-right: 4rem; }
3535
+ .vt-mr-20 { margin-right: 5rem; }
3536
+ .vt-mr-0\.5 { margin-right: 0.125rem; }
3537
+ .vt-mr-1\.5 { margin-right: 0.375rem; }
3538
+ .vt-mr-2\.5 { margin-right: 0.625rem; }
3539
+ .vt-mb-0 { margin-bottom: 0px; }
3540
+ .vt-mb-1 { margin-bottom: 0.25rem; }
3541
+ .vt-mb-2 { margin-bottom: 0.5rem; }
3542
+ .vt-mb-3 { margin-bottom: 0.75rem; }
3543
+ .vt-mb-4 { margin-bottom: 1rem; }
3544
+ .vt-mb-5 { margin-bottom: 1.25rem; }
3545
+ .vt-mb-6 { margin-bottom: 1.5rem; }
3546
+ .vt-mb-8 { margin-bottom: 2rem; }
3547
+ .vt-mb-9 { margin-bottom: 2.25rem; }
3548
+ .vt-mb-10 { margin-bottom: 2.5rem; }
3549
+ .vt-mb-12 { margin-bottom: 3rem; }
3550
+ .vt-mb-14 { margin-bottom: 3.5rem; }
3551
+ .vt-mb-16 { margin-bottom: 4rem; }
3552
+ .vt-mb-20 { margin-bottom: 5rem; }
3553
+ .vt-mb-0\.5 { margin-bottom: 0.125rem; }
3554
+ .vt-mb-1\.5 { margin-bottom: 0.375rem; }
3555
+ .vt-mb-2\.5 { margin-bottom: 0.625rem; }
3556
+ .vt-ml-0 { margin-left: 0px; }
3557
+ .vt-ml-1 { margin-left: 0.25rem; }
3558
+ .vt-ml-2 { margin-left: 0.5rem; }
3559
+ .vt-ml-3 { margin-left: 0.75rem; }
3560
+ .vt-ml-4 { margin-left: 1rem; }
3561
+ .vt-ml-5 { margin-left: 1.25rem; }
3562
+ .vt-ml-6 { margin-left: 1.5rem; }
3563
+ .vt-ml-8 { margin-left: 2rem; }
3564
+ .vt-ml-9 { margin-left: 2.25rem; }
3565
+ .vt-ml-10 { margin-left: 2.5rem; }
3566
+ .vt-ml-12 { margin-left: 3rem; }
3567
+ .vt-ml-14 { margin-left: 3.5rem; }
3568
+ .vt-ml-16 { margin-left: 4rem; }
3569
+ .vt-ml-20 { margin-left: 5rem; }
3570
+ .vt-ml-0\.5 { margin-left: 0.125rem; }
3571
+ .vt-ml-1\.5 { margin-left: 0.375rem; }
3572
+ .vt-ml-2\.5 { margin-left: 0.625rem; }
3573
+ .vt-mx-auto { margin-left: auto; margin-right: auto; }
3574
+ .vt-ml-auto { margin-left: auto; }
3575
+ .vt-mt-auto { margin-top: auto; }
3576
+
3577
+ .vt-p-0 { padding: 0px; }
3578
+ .vt-p-1 { padding: 0.25rem; }
3579
+ .vt-p-2 { padding: 0.5rem; }
3580
+ .vt-p-3 { padding: 0.75rem; }
3581
+ .vt-p-4 { padding: 1rem; }
3582
+ .vt-p-5 { padding: 1.25rem; }
3583
+ .vt-p-6 { padding: 1.5rem; }
3584
+ .vt-p-8 { padding: 2rem; }
3585
+ .vt-p-9 { padding: 2.25rem; }
3586
+ .vt-p-10 { padding: 2.5rem; }
3587
+ .vt-p-12 { padding: 3rem; }
3588
+ .vt-p-14 { padding: 3.5rem; }
3589
+ .vt-p-16 { padding: 4rem; }
3590
+ .vt-p-20 { padding: 5rem; }
3591
+ .vt-p-0\.5 { padding: 0.125rem; }
3592
+ .vt-p-1\.5 { padding: 0.375rem; }
3593
+ .vt-p-2\.5 { padding: 0.625rem; }
3594
+ .vt-px-0 { padding-left: 0px; padding-right: 0px; }
3595
+ .vt-px-1 { padding-left: 0.25rem; padding-right: 0.25rem; }
3596
+ .vt-px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
3597
+ .vt-px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
3598
+ .vt-px-4 { padding-left: 1rem; padding-right: 1rem; }
3599
+ .vt-px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
3600
+ .vt-px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
3601
+ .vt-px-8 { padding-left: 2rem; padding-right: 2rem; }
3602
+ .vt-px-9 { padding-left: 2.25rem; padding-right: 2.25rem; }
3603
+ .vt-px-10 { padding-left: 2.5rem; padding-right: 2.5rem; }
3604
+ .vt-px-12 { padding-left: 3rem; padding-right: 3rem; }
3605
+ .vt-px-14 { padding-left: 3.5rem; padding-right: 3.5rem; }
3606
+ .vt-px-16 { padding-left: 4rem; padding-right: 4rem; }
3607
+ .vt-px-20 { padding-left: 5rem; padding-right: 5rem; }
3608
+ .vt-px-0\.5 { padding-left: 0.125rem; padding-right: 0.125rem; }
3609
+ .vt-px-1\.5 { padding-left: 0.375rem; padding-right: 0.375rem; }
3610
+ .vt-px-2\.5 { padding-left: 0.625rem; padding-right: 0.625rem; }
3611
+ .vt-py-0 { padding-top: 0px; padding-bottom: 0px; }
3612
+ .vt-py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
3613
+ .vt-py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
3614
+ .vt-py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
3615
+ .vt-py-4 { padding-top: 1rem; padding-bottom: 1rem; }
3616
+ .vt-py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }
3617
+ .vt-py-6 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
3618
+ .vt-py-8 { padding-top: 2rem; padding-bottom: 2rem; }
3619
+ .vt-py-9 { padding-top: 2.25rem; padding-bottom: 2.25rem; }
3620
+ .vt-py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
3621
+ .vt-py-12 { padding-top: 3rem; padding-bottom: 3rem; }
3622
+ .vt-py-14 { padding-top: 3.5rem; padding-bottom: 3.5rem; }
3623
+ .vt-py-16 { padding-top: 4rem; padding-bottom: 4rem; }
3624
+ .vt-py-20 { padding-top: 5rem; padding-bottom: 5rem; }
3625
+ .vt-py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }
3626
+ .vt-py-1\.5 { padding-top: 0.375rem; padding-bottom: 0.375rem; }
3627
+ .vt-py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; }
3628
+ .vt-pt-0 { padding-top: 0px; }
3629
+ .vt-pt-1 { padding-top: 0.25rem; }
3630
+ .vt-pt-2 { padding-top: 0.5rem; }
3631
+ .vt-pt-3 { padding-top: 0.75rem; }
3632
+ .vt-pt-4 { padding-top: 1rem; }
3633
+ .vt-pt-5 { padding-top: 1.25rem; }
3634
+ .vt-pt-6 { padding-top: 1.5rem; }
3635
+ .vt-pt-8 { padding-top: 2rem; }
3636
+ .vt-pt-9 { padding-top: 2.25rem; }
3637
+ .vt-pt-10 { padding-top: 2.5rem; }
3638
+ .vt-pt-12 { padding-top: 3rem; }
3639
+ .vt-pt-14 { padding-top: 3.5rem; }
3640
+ .vt-pt-16 { padding-top: 4rem; }
3641
+ .vt-pt-20 { padding-top: 5rem; }
3642
+ .vt-pt-0\.5 { padding-top: 0.125rem; }
3643
+ .vt-pt-1\.5 { padding-top: 0.375rem; }
3644
+ .vt-pt-2\.5 { padding-top: 0.625rem; }
3645
+ .vt-pr-0 { padding-right: 0px; }
3646
+ .vt-pr-1 { padding-right: 0.25rem; }
3647
+ .vt-pr-2 { padding-right: 0.5rem; }
3648
+ .vt-pr-3 { padding-right: 0.75rem; }
3649
+ .vt-pr-4 { padding-right: 1rem; }
3650
+ .vt-pr-5 { padding-right: 1.25rem; }
3651
+ .vt-pr-6 { padding-right: 1.5rem; }
3652
+ .vt-pr-8 { padding-right: 2rem; }
3653
+ .vt-pr-9 { padding-right: 2.25rem; }
3654
+ .vt-pr-10 { padding-right: 2.5rem; }
3655
+ .vt-pr-12 { padding-right: 3rem; }
3656
+ .vt-pr-14 { padding-right: 3.5rem; }
3657
+ .vt-pr-16 { padding-right: 4rem; }
3658
+ .vt-pr-20 { padding-right: 5rem; }
3659
+ .vt-pr-0\.5 { padding-right: 0.125rem; }
3660
+ .vt-pr-1\.5 { padding-right: 0.375rem; }
3661
+ .vt-pr-2\.5 { padding-right: 0.625rem; }
3662
+ .vt-pb-0 { padding-bottom: 0px; }
3663
+ .vt-pb-1 { padding-bottom: 0.25rem; }
3664
+ .vt-pb-2 { padding-bottom: 0.5rem; }
3665
+ .vt-pb-3 { padding-bottom: 0.75rem; }
3666
+ .vt-pb-4 { padding-bottom: 1rem; }
3667
+ .vt-pb-5 { padding-bottom: 1.25rem; }
3668
+ .vt-pb-6 { padding-bottom: 1.5rem; }
3669
+ .vt-pb-8 { padding-bottom: 2rem; }
3670
+ .vt-pb-9 { padding-bottom: 2.25rem; }
3671
+ .vt-pb-10 { padding-bottom: 2.5rem; }
3672
+ .vt-pb-12 { padding-bottom: 3rem; }
3673
+ .vt-pb-14 { padding-bottom: 3.5rem; }
3674
+ .vt-pb-16 { padding-bottom: 4rem; }
3675
+ .vt-pb-20 { padding-bottom: 5rem; }
3676
+ .vt-pb-0\.5 { padding-bottom: 0.125rem; }
3677
+ .vt-pb-1\.5 { padding-bottom: 0.375rem; }
3678
+ .vt-pb-2\.5 { padding-bottom: 0.625rem; }
3679
+ .vt-pl-0 { padding-left: 0px; }
3680
+ .vt-pl-1 { padding-left: 0.25rem; }
3681
+ .vt-pl-2 { padding-left: 0.5rem; }
3682
+ .vt-pl-3 { padding-left: 0.75rem; }
3683
+ .vt-pl-4 { padding-left: 1rem; }
3684
+ .vt-pl-5 { padding-left: 1.25rem; }
3685
+ .vt-pl-6 { padding-left: 1.5rem; }
3686
+ .vt-pl-8 { padding-left: 2rem; }
3687
+ .vt-pl-9 { padding-left: 2.25rem; }
3688
+ .vt-pl-10 { padding-left: 2.5rem; }
3689
+ .vt-pl-12 { padding-left: 3rem; }
3690
+ .vt-pl-14 { padding-left: 3.5rem; }
3691
+ .vt-pl-16 { padding-left: 4rem; }
3692
+ .vt-pl-20 { padding-left: 5rem; }
3693
+ .vt-pl-0\.5 { padding-left: 0.125rem; }
3694
+ .vt-pl-1\.5 { padding-left: 0.375rem; }
3695
+ .vt-pl-2\.5 { padding-left: 0.625rem; }
3696
+ .vt-\!p-0 { padding: 0 !important; }
3697
+
3698
+ .vt-w-0 { width: 0px; }
3699
+ .vt-w-1 { width: 0.25rem; }
3700
+ .vt-w-2 { width: 0.5rem; }
3701
+ .vt-w-3 { width: 0.75rem; }
3702
+ .vt-w-4 { width: 1rem; }
3703
+ .vt-w-5 { width: 1.25rem; }
3704
+ .vt-w-6 { width: 1.5rem; }
3705
+ .vt-w-7 { width: 1.75rem; }
3706
+ .vt-w-8 { width: 2rem; }
3707
+ .vt-w-9 { width: 2.25rem; }
3708
+ .vt-w-10 { width: 2.5rem; }
3709
+ .vt-w-11 { width: 2.75rem; }
3710
+ .vt-w-12 { width: 3rem; }
3711
+ .vt-w-14 { width: 3.5rem; }
3712
+ .vt-w-16 { width: 4rem; }
3713
+ .vt-w-18 { width: 4.5rem; }
3714
+ .vt-w-20 { width: 5rem; }
3715
+ .vt-w-24 { width: 6rem; }
3716
+ .vt-w-28 { width: 7rem; }
3717
+ .vt-w-32 { width: 8rem; }
3718
+ .vt-w-36 { width: 9rem; }
3719
+ .vt-w-40 { width: 10rem; }
3720
+ .vt-w-44 { width: 11rem; }
3721
+ .vt-w-48 { width: 12rem; }
3722
+ .vt-w-52 { width: 13rem; }
3723
+ .vt-w-56 { width: 14rem; }
3724
+ .vt-w-64 { width: 16rem; }
3725
+ .vt-w-72 { width: 18rem; }
3726
+ .vt-w-80 { width: 20rem; }
3727
+ .vt-w-0\.5 { width: 0.125rem; }
3728
+ .vt-w-1\.5 { width: 0.375rem; }
3729
+ .vt-w-2\.5 { width: 0.625rem; }
3730
+ .vt-w-3\.5 { width: 0.875rem; }
3731
+ .vt-w-px { width: 1px; }
3732
+ .vt-w-fit { width: fit-content; }
3733
+ .vt-w-1\/2 { width: 50%; }
3734
+ .vt-w-1\/3 { width: 33.333333%; }
3735
+ .vt-w-2\/3 { width: 66.666667%; }
3736
+ .vt-w-1\/4 { width: 25%; }
3737
+ .vt-w-3\/4 { width: 75%; }
3738
+ .vt-w-2\/5 { width: 40%; }
3739
+ .vt-w-3\/5 { width: 60%; }
3740
+ .vt-w-4\/5 { width: 80%; }
3741
+ .vt-w-5\/6 { width: 83.333333%; }
3742
+ .vt-w-4\/6 { width: 66.666667%; }
3743
+ .vt-w-5\/12 { width: 41.666667%; }
3744
+ .vt-w-full { width: 100%; }
3745
+ .vt-w-auto { width: auto; }
3746
+ .vt-h-1 { height: 0.25rem; }
3747
+ .vt-h-2 { height: 0.5rem; }
3748
+ .vt-h-3 { height: 0.75rem; }
3749
+ .vt-h-4 { height: 1rem; }
3750
+ .vt-h-5 { height: 1.25rem; }
3751
+ .vt-h-6 { height: 1.5rem; }
3752
+ .vt-h-7 { height: 1.75rem; }
3753
+ .vt-h-8 { height: 2rem; }
3754
+ .vt-h-9 { height: 2.25rem; }
3755
+ .vt-h-10 { height: 2.5rem; }
3756
+ .vt-h-11 { height: 2.75rem; }
3757
+ .vt-h-12 { height: 3rem; }
3758
+ .vt-h-14 { height: 3.5rem; }
3759
+ .vt-h-16 { height: 4rem; }
3760
+ .vt-h-20 { height: 5rem; }
3761
+ .vt-h-24 { height: 6rem; }
3762
+ .vt-h-28 { height: 7rem; }
3763
+ .vt-h-32 { height: 8rem; }
3764
+ .vt-h-40 { height: 10rem; }
3765
+ .vt-h-48 { height: 12rem; }
3766
+ .vt-h-56 { height: 14rem; }
3767
+ .vt-h-64 { height: 16rem; }
3768
+ .vt-h-72 { height: 18rem; }
3769
+ .vt-h-80 { height: 20rem; }
3770
+ .vt-h-96 { height: 24rem; }
3771
+ .vt-h-0\.5 { height: 0.125rem; }
3772
+ .vt-h-1\.5 { height: 0.375rem; }
3773
+ .vt-h-2\.5 { height: 0.625rem; }
3774
+ .vt-h-3\.5 { height: 0.875rem; }
3775
+ .vt-h-1\/2 { height: 50%; }
3776
+ .vt-h-full { height: 100%; }
3777
+ .vt-h-auto { height: auto; }
3778
+ .vt-h-screen { height: 100vh; }
3779
+ .vt-h-px { height: 1px; }
3780
+ .vt-size-32 { width: 8rem; height: 8rem; }
3781
+ .vt-min-h-0 { min-height: 0px; }
3782
+ .vt-min-h-screen { min-height: 100vh; }
3783
+ .vt-min-w-0 { min-width: 0px; }
3784
+ .vt-min-w-5 { min-width: 1.25rem; }
3785
+ .vt-max-h-72 { max-height: 18rem; }
3786
+ .vt-max-w-xs { max-width: 20rem; }
3787
+ .vt-max-w-sm { max-width: 24rem; }
3788
+ .vt-max-w-md { max-width: 28rem; }
3789
+ .vt-max-w-lg { max-width: 32rem; }
3790
+ .vt-max-w-xl { max-width: 36rem; }
3791
+ .vt-max-w-2xl { max-width: 42rem; }
3792
+ .vt-max-w-3xl { max-width: 48rem; }
3793
+ .vt-max-w-4xl { max-width: 56rem; }
3794
+ .vt-max-w-5xl { max-width: 64rem; }
3795
+ .vt-max-w-6xl { max-width: 72rem; }
3796
+
3797
+ .vt-flex-1 { flex: 1 1 0%; }
3798
+ .vt-flex-shrink-0, .vt-shrink-0 { flex-shrink: 0; }
3799
+ .vt-flex-shrink { flex-shrink: 1; }
3800
+ .vt-flex-col { flex-direction: column; }
3801
+ .vt-flex-row { flex-direction: row; }
3802
+ .vt-flex-wrap { flex-wrap: wrap; }
3803
+ .vt-justify-start { justify-content: flex-start; }
3804
+ .vt-justify-end { justify-content: flex-end; }
3805
+ .vt-justify-center { justify-content: center; }
3806
+ .vt-justify-between { justify-content: space-between; }
3807
+ .vt-justify-around { justify-content: space-around; }
3808
+ .vt-items-start { align-items: flex-start; }
3809
+ .vt-items-end { align-items: flex-end; }
3810
+ .vt-items-center { align-items: center; }
3811
+ .vt-items-baseline { align-items: baseline; }
3812
+ .vt-grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
3813
+ .vt-grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
3814
+ .vt-grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
3815
+ .vt-grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
3816
+ .vt-grid-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
3817
+ .vt-grid-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
3818
+ .vt-grid-cols-7 { grid-template-columns: repeat(7, minmax(0, 1fr)); }
3819
+ .vt-grid-cols-8 { grid-template-columns: repeat(8, minmax(0, 1fr)); }
3820
+ .vt-grid-cols-9 { grid-template-columns: repeat(9, minmax(0, 1fr)); }
3821
+ .vt-grid-cols-10 { grid-template-columns: repeat(10, minmax(0, 1fr)); }
3822
+ .vt-grid-cols-11 { grid-template-columns: repeat(11, minmax(0, 1fr)); }
3823
+ .vt-grid-cols-12 { grid-template-columns: repeat(12, minmax(0, 1fr)); }
3824
+ .vt-col-span-1 { grid-column: span 1 / span 1; }
3825
+ .vt-col-span-2 { grid-column: span 2 / span 2; }
3826
+ .vt-col-span-3 { grid-column: span 3 / span 3; }
3827
+ .vt-col-span-4 { grid-column: span 4 / span 4; }
3828
+ .vt-col-span-5 { grid-column: span 5 / span 5; }
3829
+ .vt-col-span-6 { grid-column: span 6 / span 6; }
3830
+ .vt-col-span-full { grid-column: 1 / -1; }
3831
+ .vt-place-items-center { place-items: center; }
3832
+ .vt-gap-0 { gap: 0px; }
3833
+ .vt-gap-1 { gap: 0.25rem; }
3834
+ .vt-gap-2 { gap: 0.5rem; }
3835
+ .vt-gap-3 { gap: 0.75rem; }
3836
+ .vt-gap-4 { gap: 1rem; }
3837
+ .vt-gap-5 { gap: 1.25rem; }
3838
+ .vt-gap-6 { gap: 1.5rem; }
3839
+ .vt-gap-8 { gap: 2rem; }
3840
+ .vt-gap-12 { gap: 3rem; }
3841
+ .vt-gap-32 { gap: 8rem; }
3842
+ .vt-gap-0\.5 { gap: 0.125rem; }
3843
+ .vt-gap-1\.5 { gap: 0.375rem; }
3844
+
3845
+ .vt-space-y-0 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(0px * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(0px * var(--vt-space-y-reverse)); }
3846
+ .vt-space-y-1 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(0.25rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(0.25rem * var(--vt-space-y-reverse)); }
3847
+ .vt-space-y-2 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(0.5rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(0.5rem * var(--vt-space-y-reverse)); }
3848
+ .vt-space-y-3 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(0.75rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(0.75rem * var(--vt-space-y-reverse)); }
3849
+ .vt-space-y-4 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(1rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(1rem * var(--vt-space-y-reverse)); }
3850
+ .vt-space-y-5 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(1.25rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(1.25rem * var(--vt-space-y-reverse)); }
3851
+ .vt-space-y-6 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(1.5rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(1.5rem * var(--vt-space-y-reverse)); }
3852
+ .vt-space-y-8 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(2rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(2rem * var(--vt-space-y-reverse)); }
3853
+ .vt-space-y-10 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(2.5rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(2.5rem * var(--vt-space-y-reverse)); }
3854
+ .vt-space-y-0\.5 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(0.125rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(0.125rem * var(--vt-space-y-reverse)); }
3855
+ .vt-space-y-1\.5 > :not([hidden]) ~ :not([hidden]) { --vt-space-y-reverse: 0; margin-top: calc(0.375rem * calc(1 - var(--vt-space-y-reverse))); margin-bottom: calc(0.375rem * var(--vt-space-y-reverse)); }
3856
+ .vt--space-x-2 > :not([hidden]) ~ :not([hidden]) { --vt-space-x-reverse: 0; margin-right: calc(-0.5rem * var(--vt-space-x-reverse)); margin-left: calc(-0.5rem * calc(1 - var(--vt-space-x-reverse))); }
3857
+ .vt--space-x-3 > :not([hidden]) ~ :not([hidden]) { --vt-space-x-reverse: 0; margin-right: calc(-0.75rem * var(--vt-space-x-reverse)); margin-left: calc(-0.75rem * calc(1 - var(--vt-space-x-reverse))); }
3858
+ .vt--space-x-4 > :not([hidden]) ~ :not([hidden]) { --vt-space-x-reverse: 0; margin-right: calc(-1rem * var(--vt-space-x-reverse)); margin-left: calc(-1rem * calc(1 - var(--vt-space-x-reverse))); }
3859
+ .vt--space-x-1\.5 > :not([hidden]) ~ :not([hidden]) { --vt-space-x-reverse: 0; margin-right: calc(-0.375rem * var(--vt-space-x-reverse)); margin-left: calc(-0.375rem * calc(1 - var(--vt-space-x-reverse))); }
3860
+
3861
+ .vt-divide-y > :not([hidden]) ~ :not([hidden]) { --vt-divide-y-reverse: 0; border-top-width: calc(0.5px * calc(1 - var(--vt-divide-y-reverse))); border-bottom-width: calc(0.5px * var(--vt-divide-y-reverse)); }
3862
+ .vt-divide-border-default > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--border-default)); }
3863
+
3864
+ .vt-border-0 { border-width: 0px; }
3865
+ .vt-border { border-width: 0.5px; }
3866
+ .vt-border-2 { border-width: 2px; }
3867
+ .vt-border-4 { border-width: 4px; }
3868
+ .vt-border-8 { border-width: 8px; }
3869
+ .vt-border-\[1\.5px\] { border-width: 1.5px; }
3870
+ .vt-border-\[3px\] { border-width: 3px; }
3871
+ .vt-border-b { border-bottom-width: 0.5px; }
3872
+ .vt-border-b-2 { border-bottom-width: 2px; }
3873
+ .vt-border-l { border-left-width: 0.5px; }
3874
+ .vt-border-l-2 { border-left-width: 2px; }
3875
+ .vt-border-l-4 { border-left-width: 4px; }
3876
+ .vt-border-r { border-right-width: 0.5px; }
3877
+ .vt-border-t { border-top-width: 0.5px; }
3878
+ .vt-border-none { border-style: none; }
3879
+ .vt-border-dashed { border-style: dashed; }
3880
+ .vt-border-collapse { border-collapse: collapse; }
3881
+ .vt-border-border-default { border-color: hsl(var(--border-default)); }
3882
+ .vt-border-border-default\/50 { border-color: hsl(var(--border-default) / 0.5); }
3883
+ .vt-border-border-strong { border-color: hsl(var(--border-strong)); }
3884
+ .vt-border-accents-brand { border-color: hsl(var(--accents-brand)); }
3885
+ .vt-border-accents-brand\/30 { border-color: hsl(var(--accents-brand) / 0.3); }
3886
+ .vt-border-info-primary { border-color: hsl(var(--info-primary)); }
3887
+ .vt-border-info-primary\/30 { border-color: hsl(var(--info-primary) / 0.3); }
3888
+ .vt-border-success-primary { border-color: hsl(var(--success-primary)); }
3889
+ .vt-border-success-primary\/30 { border-color: hsl(var(--success-primary) / 0.3); }
3890
+ .vt-border-warning-primary\/30 { border-color: hsl(var(--warning-primary) / 0.3); }
3891
+ .vt-border-error-primary { border-color: hsl(var(--error-primary)); }
3892
+ .vt-border-error-primary\/30 { border-color: hsl(var(--error-primary) / 0.3); }
3893
+ .vt-border-error-primary\/50 { border-color: hsl(var(--error-primary) / 0.5); }
3894
+ .vt-border-input { border-color: hsl(var(--border-default)); }
3895
+ .vt-border-surfaces-background { border-color: hsl(var(--surfaces-background)); }
3896
+ .vt-border-surfaces-surface { border-color: hsl(var(--surfaces-surface)); }
3897
+ .vt-border-mains-tertiary\/30 { border-color: hsl(var(--mains-tertiary) / 0.3); }
3898
+ .vt-border-transparent { border-color: transparent; }
3899
+ .vt-border-current { border-color: currentColor; }
3900
+ .vt-border-white\/10 { border-color: rgba(255,255,255,0.1); }
3901
+ .vt-border-white\/20 { border-color: rgba(255,255,255,0.2); }
3902
+ .vt-border-b-accents-brand { border-bottom-color: hsl(var(--accents-brand)); }
3903
+ .vt-border-b-info-primary { border-bottom-color: hsl(var(--info-primary)); }
3904
+ .vt-border-b-border-default { border-bottom-color: hsl(var(--border-default)); }
3905
+ .vt-border-b-surfaces-surface { border-bottom-color: hsl(var(--surfaces-surface)); }
3906
+ .vt-border-l-accents-brand { border-left-color: hsl(var(--accents-brand)); }
3907
+ .vt-border-l-info-primary { border-left-color: hsl(var(--info-primary)); }
3908
+ .vt-border-l-success-primary { border-left-color: hsl(var(--success-primary)); }
3909
+ .vt-border-l-warning-primary { border-left-color: hsl(var(--warning-primary)); }
3910
+ .vt-border-l-error-primary { border-left-color: hsl(var(--error-primary)); }
3911
+ .vt-border-r-accents-brand { border-right-color: hsl(var(--accents-brand)); }
3912
+ .vt-border-r-info-primary { border-right-color: hsl(var(--info-primary)); }
3913
+ .vt-border-t-accents-brand { border-top-color: hsl(var(--accents-brand)); }
3914
+ .vt-border-t-info-primary { border-top-color: hsl(var(--info-primary)); }
3915
+ .vt-border-t-error-primary { border-top-color: hsl(var(--error-primary)); }
3916
+
3917
+ .vt-rounded { border-radius: 0.25rem; }
3918
+ .vt-rounded-xs { border-radius: var(--radius-xs); }
3919
+ .vt-rounded-sm { border-radius: var(--radius-sm); }
3920
+ .vt-rounded-lg { border-radius: var(--radius-lg); }
3921
+ .vt-rounded-xl { border-radius: var(--radius-xl); }
3922
+ .vt-rounded-2xl { border-radius: var(--radius-2xl); }
3923
+ .vt-rounded-3xl { border-radius: var(--radius-3xl); }
3924
+ .vt-rounded-4xl { border-radius: var(--radius-4xl); }
3925
+ .vt-rounded-full { border-radius: 9999px; }
3926
+ .vt-rounded-none { border-radius: 0; }
3927
+ .vt-rounded-t { border-top-left-radius: 0.25rem; border-top-right-radius: 0.25rem; }
3928
+ .vt-rounded-t-lg { border-top-left-radius: var(--radius-lg); border-top-right-radius: var(--radius-lg); }
3929
+ .vt-rounded-t-xl { border-top-left-radius: var(--radius-xl); border-top-right-radius: var(--radius-xl); }
3930
+ .vt-rounded-bl-sm { border-bottom-left-radius: var(--radius-sm); }
3931
+ .vt-rounded-bl-md { border-bottom-left-radius: 0.375rem; }
3932
+ .vt-rounded-br { border-bottom-right-radius: 0.25rem; }
3933
+ .vt-rounded-br-sm { border-bottom-right-radius: var(--radius-sm); }
3934
+ .vt-rounded-br-md { border-bottom-right-radius: 0.375rem; }
3935
+
3936
+ .vt-bg-surfaces-background { background-color: hsl(var(--surfaces-background)); }
3937
+ .vt-bg-surfaces-background\/80 { background-color: hsl(var(--surfaces-background) / 0.8); }
3938
+ .vt-bg-surfaces-surface { background-color: hsl(var(--surfaces-surface)); }
3939
+ .vt-bg-surfaces-surface\/80 { background-color: hsl(var(--surfaces-surface) / 0.8); }
3940
+ .vt-bg-surfaces-surface\/90 { background-color: hsl(var(--surfaces-surface) / 0.9); }
3941
+ .vt-bg-surfaces-moderate { background-color: hsl(var(--surfaces-moderate)); }
3942
+ .vt-bg-surfaces-moderate\/30 { background-color: hsl(var(--surfaces-moderate) / 0.3); }
3943
+ .vt-bg-surfaces-moderate\/50 { background-color: hsl(var(--surfaces-moderate) / 0.5); }
3944
+ .vt-bg-surfaces-subtle { background-color: hsl(var(--surfaces-subtle)); }
3945
+ .vt-bg-surfaces-subtle\/50 { background-color: hsl(var(--surfaces-subtle) / 0.5); }
3946
+ .vt-bg-border-default { background-color: hsl(var(--border-default)); }
3947
+ .vt-bg-generic-white { background-color: hsl(var(--generic-white)); }
3948
+ .vt-bg-generic-white\/20 { background-color: hsl(var(--generic-white) / 0.2); }
3949
+ .vt-bg-mains-quaternary { background-color: hsl(var(--mains-quaternary)); }
3950
+ .vt-bg-mains-primary\/10 { background-color: hsl(var(--mains-primary) / 0.1); }
3951
+ .vt-bg-mains-primary\/20 { background-color: hsl(var(--mains-primary) / 0.2); }
3952
+ .vt-bg-mains-primary\/50 { background-color: hsl(var(--mains-primary) / 0.5); }
3953
+ .vt-bg-mains-tertiary { background-color: hsl(var(--mains-tertiary)); }
3954
+ .vt-bg-mains-tertiary\/10 { background-color: hsl(var(--mains-tertiary) / 0.1); }
3955
+ .vt-bg-mains-tertiary\/20 { background-color: hsl(var(--mains-tertiary) / 0.2); }
3956
+ .vt-bg-accents-brand { background-color: hsl(var(--accents-brand)); }
3957
+ .vt-bg-accents-brand\/5 { background-color: hsl(var(--accents-brand) / 0.05); }
3958
+ .vt-bg-accents-brand\/10 { background-color: hsl(var(--accents-brand) / 0.1); }
3959
+ .vt-bg-accents-brand\/15 { background-color: hsl(var(--accents-brand) / 0.15); }
3960
+ .vt-bg-accents-brand\/20 { background-color: hsl(var(--accents-brand) / 0.2); }
3961
+ .vt-bg-accents-brand\/30 { background-color: hsl(var(--accents-brand) / 0.3); }
3962
+ .vt-bg-accents-brand\/50 { background-color: hsl(var(--accents-brand) / 0.5); }
3963
+ .vt-bg-info-primary { background-color: hsl(var(--info-primary)); }
3964
+ .vt-bg-info-primary\/5 { background-color: hsl(var(--info-primary) / 0.05); }
3965
+ .vt-bg-info-primary\/10 { background-color: hsl(var(--info-primary) / 0.1); }
3966
+ .vt-bg-info-primary\/15 { background-color: hsl(var(--info-primary) / 0.15); }
3967
+ .vt-bg-info-primary\/20 { background-color: hsl(var(--info-primary) / 0.2); }
3968
+ .vt-bg-info-primary\/30 { background-color: hsl(var(--info-primary) / 0.3); }
3969
+ .vt-bg-info-primary\/50 { background-color: hsl(var(--info-primary) / 0.5); }
3970
+ .vt-bg-success-primary { background-color: hsl(var(--success-primary)); }
3971
+ .vt-bg-success-primary\/10 { background-color: hsl(var(--success-primary) / 0.1); }
3972
+ .vt-bg-success-primary\/15 { background-color: hsl(var(--success-primary) / 0.15); }
3973
+ .vt-bg-success-primary\/20 { background-color: hsl(var(--success-primary) / 0.2); }
3974
+ .vt-bg-success-primary\/50 { background-color: hsl(var(--success-primary) / 0.5); }
3975
+ .vt-bg-warning-primary { background-color: hsl(var(--warning-primary)); }
3976
+ .vt-bg-warning-primary\/10 { background-color: hsl(var(--warning-primary) / 0.1); }
3977
+ .vt-bg-warning-primary\/15 { background-color: hsl(var(--warning-primary) / 0.15); }
3978
+ .vt-bg-warning-primary\/20 { background-color: hsl(var(--warning-primary) / 0.2); }
3979
+ .vt-bg-warning-primary\/50 { background-color: hsl(var(--warning-primary) / 0.5); }
3980
+ .vt-bg-error-primary { background-color: hsl(var(--error-primary)); }
3981
+ .vt-bg-error-primary\/10 { background-color: hsl(var(--error-primary) / 0.1); }
3982
+ .vt-bg-error-primary\/15 { background-color: hsl(var(--error-primary) / 0.15); }
3983
+ .vt-bg-error-primary\/30 { background-color: hsl(var(--error-primary) / 0.3); }
3984
+ .vt-bg-error-primary\/50 { background-color: hsl(var(--error-primary) / 0.5); }
3985
+ .vt-bg-brand-tint { background-color: hsl(var(--accents-brand) / 0.1); }
3986
+ .vt-bg-info-background { background-color: hsl(var(--info-background)); }
3987
+ .vt-bg-warning-background { background-color: hsl(var(--warning-background)); }
3988
+ .vt-bg-error-background { background-color: hsl(var(--error-background)); }
3989
+ .vt-bg-accents-yellow { background-color: hsl(var(--warning-primary)); }
3990
+ .vt-bg-accents-yellow\/10 { background-color: hsl(var(--warning-primary) / 0.1); }
3991
+ .vt-bg-generic-black\/50 { background-color: hsl(var(--generic-black) / 0.5); }
3992
+ .vt-bg-border-strong { background-color: hsl(var(--border-strong)); }
3993
+ .vt-bg-mains-quaternary\/20 { background-color: hsl(var(--mains-quaternary) / 0.2); }
3994
+ .vt-bg-transparent { background-color: transparent; }
3995
+ .vt-bg-current { background-color: currentColor; }
3996
+ .\!bg-transparent { background-color: transparent !important; }
3997
+ .vt-bg-blue-500 { background-color: rgb(59 130 246); }
3998
+ .vt-bg-blue-600 { background-color: rgb(37 99 235); }
3999
+ .vt-bg-green-500 { background-color: rgb(34 197 94); }
4000
+ .vt-bg-purple-500 { background-color: rgb(168 85 247); }
4001
+ .vt-bg-white { background-color: rgb(255 255 255); }
4002
+ .vt-bg-white\/15 { background-color: rgba(255,255,255,0.15); }
4003
+ .vt-bg-white\/20 { background-color: rgba(255,255,255,0.2); }
4004
+ .vt-bg-white\/30 { background-color: rgba(255,255,255,0.3); }
4005
+ .vt-bg-white\/40 { background-color: rgba(255,255,255,0.4); }
4006
+ .vt-bg-white\/50 { background-color: rgba(255,255,255,0.5); }
4007
+ .vt-bg-black\/30 { background-color: rgba(0,0,0,0.3); }
4008
+ .vt-bg-info\/10 { background-color: hsl(var(--info-primary) / 0.1); }
4009
+ .vt-bg-success\/10 { background-color: hsl(var(--success-primary) / 0.1); }
4010
+
4011
+ .vt-bg-gradient-to-t { background-image: linear-gradient(to top, var(--vt-gradient-stops)); }
4012
+ .vt-bg-gradient-to-b { background-image: linear-gradient(to bottom, var(--vt-gradient-stops)); }
4013
+ .vt-bg-gradient-to-br { background-image: linear-gradient(to bottom right, var(--vt-gradient-stops)); }
4014
+ .vt-from-brand-tint { --vt-gradient-from: hsl(var(--accents-brand) / 0.1) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--accents-brand) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4015
+ .vt-from-info-background { --vt-gradient-from: hsl(var(--info-background)) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--info-background) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4016
+ .vt-from-info-primary { --vt-gradient-from: hsl(var(--info-primary)) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--info-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4017
+ .vt-to-info-primary\/70 { --vt-gradient-to: hsl(var(--info-primary) / 0.7) var(--vt-gradient-to-position); }
4018
+ .vt-via-success-background { --vt-gradient-to: hsl(var(--success-background) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), hsl(var(--success-background)) var(--vt-gradient-via-position), var(--vt-gradient-to); }
4019
+ .vt-to-warning-background { --vt-gradient-to: hsl(var(--warning-background)) var(--vt-gradient-to-position); }
4020
+ .vt-from-accents-brand\/20 { --vt-gradient-from: hsl(var(--accents-brand) / 0.2) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--accents-brand) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4021
+ .vt-from-info-primary\/10 { --vt-gradient-from: hsl(var(--info-primary) / 0.1) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--info-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4022
+ .vt-from-info-primary\/20 { --vt-gradient-from: hsl(var(--info-primary) / 0.2) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--info-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4023
+ .vt-from-info-primary\/30 { --vt-gradient-from: hsl(var(--info-primary) / 0.3) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--info-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4024
+ .vt-from-success-primary\/20 { --vt-gradient-from: hsl(var(--success-primary) / 0.2) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--success-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4025
+ .vt-from-success-primary\/30 { --vt-gradient-from: hsl(var(--success-primary) / 0.3) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--success-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4026
+ .vt-from-warning-primary\/20 { --vt-gradient-from: hsl(var(--warning-primary) / 0.2) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--warning-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4027
+ .vt-from-warning-primary\/30 { --vt-gradient-from: hsl(var(--warning-primary) / 0.3) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--warning-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4028
+ .vt-from-error-primary\/20 { --vt-gradient-from: hsl(var(--error-primary) / 0.2) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--error-primary) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4029
+ .vt-from-surfaces-contrast\/20 { --vt-gradient-from: hsl(var(--surfaces-contrast) / 0.2) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--surfaces-contrast) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4030
+ .vt-from-surfaces-contrast\/40 { --vt-gradient-from: hsl(var(--surfaces-contrast) / 0.4) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--surfaces-contrast) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4031
+ .vt-from-generic-black\/80 { --vt-gradient-from: hsl(var(--generic-black) / 0.8) var(--vt-gradient-from-position); --vt-gradient-to: hsl(var(--generic-black) / 0) var(--vt-gradient-to-position); --vt-gradient-stops: var(--vt-gradient-from), var(--vt-gradient-to); }
4032
+ .vt-to-accents-brand\/5 { --vt-gradient-to: hsl(var(--accents-brand) / 0.05) var(--vt-gradient-to-position); }
4033
+ .vt-to-accents-brand\/20 { --vt-gradient-to: hsl(var(--accents-brand) / 0.2) var(--vt-gradient-to-position); }
4034
+ .vt-to-info-primary\/5 { --vt-gradient-to: hsl(var(--info-primary) / 0.05) var(--vt-gradient-to-position); }
4035
+ .vt-to-info-primary\/10 { --vt-gradient-to: hsl(var(--info-primary) / 0.1) var(--vt-gradient-to-position); }
4036
+ .vt-to-info-primary\/20 { --vt-gradient-to: hsl(var(--info-primary) / 0.2) var(--vt-gradient-to-position); }
4037
+ .vt-to-info-primary\/60 { --vt-gradient-to: hsl(var(--info-primary) / 0.6) var(--vt-gradient-to-position); }
4038
+ .vt-to-success-primary\/5 { --vt-gradient-to: hsl(var(--success-primary) / 0.05) var(--vt-gradient-to-position); }
4039
+ .vt-to-success-primary\/10 { --vt-gradient-to: hsl(var(--success-primary) / 0.1) var(--vt-gradient-to-position); }
4040
+ .vt-to-warning-primary\/5 { --vt-gradient-to: hsl(var(--warning-primary) / 0.05) var(--vt-gradient-to-position); }
4041
+ .vt-to-warning-primary\/10 { --vt-gradient-to: hsl(var(--warning-primary) / 0.1) var(--vt-gradient-to-position); }
4042
+ .vt-to-error-primary\/5 { --vt-gradient-to: hsl(var(--error-primary) / 0.05) var(--vt-gradient-to-position); }
4043
+ .vt-to-surfaces-contrast\/5 { --vt-gradient-to: hsl(var(--surfaces-contrast) / 0.05) var(--vt-gradient-to-position); }
4044
+ .vt-to-surfaces-contrast\/10 { --vt-gradient-to: hsl(var(--surfaces-contrast) / 0.1) var(--vt-gradient-to-position); }
4045
+ .vt-to-surfaces-background { --vt-gradient-to: hsl(var(--surfaces-background)) var(--vt-gradient-to-position); }
4046
+ .vt-to-transparent { --vt-gradient-to: transparent var(--vt-gradient-to-position); }
4047
+
4048
+ .vt-text-mains-primary { color: hsl(var(--mains-primary)); }
4049
+ .vt-text-mains-primary\/60 { color: hsl(var(--mains-primary) / 0.6); }
4050
+ .vt-text-mains-secondary { color: hsl(var(--mains-secondary)); }
4051
+ .vt-text-mains-tertiary { color: hsl(var(--mains-tertiary)); }
4052
+ .vt-text-mains-quaternary { color: hsl(var(--mains-quaternary)); }
4053
+ .vt-text-mains-quaternary\/20 { color: hsl(var(--mains-quaternary) / 0.2); }
4054
+ .vt-text-mains-quaternary\/30 { color: hsl(var(--mains-quaternary) / 0.3); }
4055
+ .vt-text-mains-quaternary\/40 { color: hsl(var(--mains-quaternary) / 0.4); }
4056
+ .vt-text-mains-quaternary\/50 { color: hsl(var(--mains-quaternary) / 0.5); }
4057
+ .vt-text-mains-quaternary\/60 { color: hsl(var(--mains-quaternary) / 0.6); }
4058
+ .vt-text-generic-white { color: hsl(var(--generic-white)); }
4059
+ .vt-text-generic-white\/70 { color: hsl(var(--generic-white) / 0.7); }
4060
+ .vt-text-generic-white\/80 { color: hsl(var(--generic-white) / 0.8); }
4061
+ .vt-text-accents-brand { color: hsl(var(--accents-brand)); }
4062
+ .vt-text-accents-brand\/40 { color: hsl(var(--accents-brand) / 0.4); }
4063
+ .vt-text-accents-brand\/60 { color: hsl(var(--accents-brand) / 0.6); }
4064
+ .vt-text-info-primary { color: hsl(var(--info-primary)); }
4065
+ .vt-text-info-primary\/40 { color: hsl(var(--info-primary) / 0.4); }
4066
+ .vt-text-info-primary\/60 { color: hsl(var(--info-primary) / 0.6); }
4067
+ .vt-text-success-primary { color: hsl(var(--success-primary)); }
4068
+ .vt-text-success-primary\/40 { color: hsl(var(--success-primary) / 0.4); }
4069
+ .vt-text-error-primary { color: hsl(var(--error-primary)); }
4070
+ .vt-text-error-primary\/40 { color: hsl(var(--error-primary) / 0.4); }
4071
+ .vt-text-error-primary\/60 { color: hsl(var(--error-primary) / 0.6); }
4072
+ .vt-text-warning-primary { color: hsl(var(--warning-primary)); }
4073
+ .vt-text-warning-primary\/40 { color: hsl(var(--warning-primary) / 0.4); }
4074
+ .vt-text-warning-primary\/60 { color: hsl(var(--warning-primary) / 0.6); }
4075
+ .vt-text-white { color: rgb(255 255 255); }
4076
+ .vt-text-info { color: hsl(var(--info-primary)); }
4077
+ .vt-text-success { color: hsl(var(--success-primary)); }
4078
+ .vt-text-xs { font-size: 0.75rem; line-height: 1rem; }
4079
+ .vt-text-sm { font-size: 0.875rem; line-height: 1.25rem; }
4080
+ .vt-text-base { font-size: 1rem; line-height: 1.5rem; }
4081
+ .vt-text-lg { font-size: 1.125rem; line-height: 1.75rem; }
4082
+ .vt-text-xl { font-size: 1.25rem; line-height: 1.75rem; }
4083
+ .vt-text-2xl { font-size: 1.5rem; line-height: 2rem; }
4084
+ .vt-text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
4085
+ .vt-text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
4086
+ .vt-text-5xl { font-size: 3rem; line-height: 1; }
4087
+ .vt-text-left { text-align: left; }
4088
+ .vt-text-center { text-align: center; }
4089
+ .vt-text-right { text-align: right; }
4090
+ .vt-font-normal { font-weight: 400; }
4091
+ .vt-font-medium { font-weight: 500; }
4092
+ .vt-font-semibold { font-weight: 600; }
4093
+ .vt-font-bold { font-weight: 700; }
4094
+ .vt-font-extrabold { font-weight: 800; }
4095
+ .vt-font-black { font-weight: 900; }
4096
+ .vt-font-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }
4097
+ .vt-font-sans { font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }
4098
+ .vt-leading-none { line-height: 1; }
4099
+ .vt-leading-tight { line-height: 1.25; }
4100
+ .vt-leading-snug { line-height: 1.375; }
4101
+ .vt-leading-relaxed { line-height: 1.625; }
4102
+ .vt-tracking-tight { letter-spacing: -0.025em; }
4103
+ .vt-tracking-wider { letter-spacing: 0.05em; }
4104
+ .vt-uppercase { text-transform: uppercase; }
4105
+ .vt-lowercase { text-transform: lowercase; }
4106
+ .vt-capitalize { text-transform: capitalize; }
4107
+ .vt-italic { font-style: italic; }
4108
+ .vt-underline { text-decoration-line: underline; }
4109
+ .vt-overline { text-decoration-line: overline; }
4110
+ .vt-line-through { text-decoration-line: line-through; }
4111
+ .vt-no-underline { text-decoration-line: none; }
4112
+ .vt-underline-offset-2 { text-underline-offset: 2px; }
4113
+ .vt-underline-offset-4 { text-underline-offset: 4px; }
4114
+ .vt-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
4115
+ .vt-whitespace-nowrap { white-space: nowrap; }
4116
+ .vt-break-words { overflow-wrap: break-word; }
4117
+ .vt-break-all { word-break: break-all; }
4118
+ .vt-list-disc { list-style-type: disc; }
4119
+ .vt-list-decimal { list-style-type: decimal; }
4120
+ .vt-list-inside { list-style-position: inside; }
4121
+ .vt-tabular-nums { --vt-numeric-spacing: tabular-nums; font-variant-numeric: var(--vt-ordinal) var(--vt-slashed-zero) var(--vt-numeric-figure) var(--vt-numeric-spacing) var(--vt-numeric-fraction); }
4122
+ .vt-fill-current { fill: currentColor; }
4123
+ .vt-object-cover { object-fit: cover; }
4124
+ .vt-align-top { vertical-align: top; }
4125
+
4126
+ .vt-shadow-sm { --vt-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); box-shadow: var(--vt-ring-offset-shadow, 0 0 #0000), var(--vt-ring-shadow, 0 0 #0000), var(--vt-shadow); }
4127
+ .vt-shadow { --vt-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); box-shadow: var(--vt-ring-offset-shadow, 0 0 #0000), var(--vt-ring-shadow, 0 0 #0000), var(--vt-shadow); }
4128
+ .vt-shadow-md { --vt-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); box-shadow: var(--vt-ring-offset-shadow, 0 0 #0000), var(--vt-ring-shadow, 0 0 #0000), var(--vt-shadow); }
4129
+ .vt-shadow-lg { --vt-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); box-shadow: var(--vt-ring-offset-shadow, 0 0 #0000), var(--vt-ring-shadow, 0 0 #0000), var(--vt-shadow); }
4130
+ .vt-shadow-xl { --vt-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); box-shadow: var(--vt-ring-offset-shadow, 0 0 #0000), var(--vt-ring-shadow, 0 0 #0000), var(--vt-shadow); }
4131
+ .vt-shadow-2xl { --vt-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25); box-shadow: var(--vt-ring-offset-shadow, 0 0 #0000), var(--vt-ring-shadow, 0 0 #0000), var(--vt-shadow); }
4132
+ .vt-shadow-inner { --vt-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05); box-shadow: var(--vt-ring-offset-shadow, 0 0 #0000), var(--vt-ring-shadow, 0 0 #0000), var(--vt-shadow); }
4133
+ .vt-shadow-none { --vt-shadow: 0 0 #0000; box-shadow: var(--vt-ring-offset-shadow, 0 0 #0000), var(--vt-ring-shadow, 0 0 #0000), var(--vt-shadow); }
4134
+
4135
+ .vt-ring-2 { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(2px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4136
+ .vt-ring-4 { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(4px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4137
+ .vt-ring-accents-brand { --vt-ring-color: hsl(var(--accents-brand)); }
4138
+ .vt-ring-accents-brand\/20 { --vt-ring-color: hsl(var(--accents-brand) / 0.2); }
4139
+ .vt-ring-info-primary { --vt-ring-color: hsl(var(--info-primary)); }
4140
+ .vt-ring-surfaces-background { --vt-ring-color: hsl(var(--surfaces-background)); }
4141
+ .vt-ring-info\/20 { --vt-ring-color: hsl(var(--info-primary) / 0.2); }
4142
+ .vt-ring-primary\/20 { --vt-ring-color: hsl(var(--accents-brand) / 0.2); }
4143
+ .vt-ring-offset-1 { --vt-ring-offset-width: 1px; }
4144
+ .vt-ring-offset-2 { --vt-ring-offset-width: 2px; }
4145
+ .vt-ring-offset-surfaces-background { --vt-ring-offset-color: hsl(var(--surfaces-background)); }
4146
+
4147
+ .vt-opacity-0 { opacity: 0; }
4148
+ .vt-opacity-25 { opacity: 0.25; }
4149
+ .vt-opacity-30 { opacity: 0.3; }
4150
+ .vt-opacity-50 { opacity: 0.5; }
4151
+ .vt-opacity-70 { opacity: 0.7; }
4152
+ .vt-opacity-75 { opacity: 0.75; }
4153
+ .vt-opacity-80 { opacity: 0.8; }
4154
+ .vt-opacity-90 { opacity: 0.9; }
4155
+ .vt-transform { transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4156
+ .vt--translate-y-1\/2 { --vt-translate-y: -50%; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4157
+ .vt--translate-x-1\/2 { --vt-translate-x: -50%; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4158
+ .vt--translate-x-full { --vt-translate-x: -100%; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4159
+ .vt-translate-x-full { --vt-translate-x: 100%; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4160
+ .vt-translate-x-0 { --vt-translate-x: 0; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4161
+ .vt-translate-y-0\.5 { --vt-translate-y: 0.125rem; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4162
+ .vt-translate-y-24 { --vt-translate-y: 6rem; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4163
+ .vt-rotate-45 { --vt-rotate: 45deg; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4164
+ .vt-rotate-12 { --vt-rotate: 12deg; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4165
+ .vt--rotate-12 { --vt-rotate: -12deg; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4166
+ .vt-rotate-90 { --vt-rotate: 90deg; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4167
+ .vt--rotate-90 { --vt-rotate: -90deg; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4168
+ .vt-rotate-180 { --vt-rotate: 180deg; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4169
+
4170
+ .vt-transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
4171
+ .vt-transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
4172
+ .vt-transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
4173
+ .vt-transition-opacity { transition-property: opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
4174
+ .vt-transition-shadow { transition-property: box-shadow; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
4175
+ .vt-transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
4176
+ .vt-duration-200 { transition-duration: 200ms; }
4177
+ .vt-duration-300 { transition-duration: 300ms; }
4178
+ .vt-ease-in-out { transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
4179
+ .vt-ease-out { transition-timing-function: cubic-bezier(0, 0, 0.2, 1); }
4180
+ @keyframes vt-spin { to { transform: rotate(360deg); } }
4181
+ @keyframes vt-ping { 75%, 100% { transform: scale(2); opacity: 0; } }
4182
+ @keyframes vt-pulse { 50% { opacity: 0.5; } }
4183
+ .vt-animate-spin { animation: vt-spin 1s linear infinite; }
4184
+ .vt-animate-ping { animation: vt-ping 1s cubic-bezier(0, 0, 0.2, 1) infinite; }
4185
+ .vt-animate-pulse { animation: vt-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; }
4186
+
4187
+ .vt-overflow-auto { overflow: auto; }
4188
+ .vt-overflow-hidden { overflow: hidden; }
4189
+ .vt-overflow-x-auto { overflow-x: auto; }
4190
+ .vt-overflow-y-auto { overflow-y: auto; }
4191
+ .vt-overflow-y-hidden { overflow-y: hidden; }
4192
+ .vt-cursor-pointer { cursor: pointer; }
4193
+ .vt-cursor-not-allowed { cursor: not-allowed; }
4194
+ .vt-cursor-col-resize { cursor: col-resize; }
4195
+ .vt-cursor-row-resize { cursor: row-resize; }
4196
+ .vt-cursor-wait { cursor: wait; }
4197
+ .vt-cursor-text { cursor: text; }
4198
+ .vt-select-none { user-select: none; }
4199
+ .vt-pointer-events-none { pointer-events: none; }
4200
+ .vt-pointer-events-auto { pointer-events: auto; }
4201
+ .vt-resize-none { resize: none; }
4202
+ .vt-resize-y { resize: vertical; }
4203
+ .vt-appearance-none { appearance: none; }
4204
+ .vt-outline-none { outline: 2px solid transparent; outline-offset: 2px; }
4205
+ .vt-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border-width: 0; }
4206
+ .vt-scroll-mt-6 { scroll-margin-top: 1.5rem; }
4207
+ .vt-aspect-square { aspect-ratio: 1/1; }
4208
+
4209
+ .vt-backdrop-blur { --vt-backdrop-blur: blur(8px); backdrop-filter: var(--vt-backdrop-blur) var(--vt-backdrop-brightness) var(--vt-backdrop-contrast) var(--vt-backdrop-grayscale) var(--vt-backdrop-hue-rotate) var(--vt-backdrop-invert) var(--vt-backdrop-opacity) var(--vt-backdrop-saturate) var(--vt-backdrop-sepia); }
4210
+ .vt-backdrop-blur-sm { --vt-backdrop-blur: blur(4px); backdrop-filter: var(--vt-backdrop-blur) var(--vt-backdrop-brightness) var(--vt-backdrop-contrast) var(--vt-backdrop-grayscale) var(--vt-backdrop-hue-rotate) var(--vt-backdrop-invert) var(--vt-backdrop-opacity) var(--vt-backdrop-saturate) var(--vt-backdrop-sepia); }
4211
+ .vt-backdrop-blur-md { --vt-backdrop-blur: blur(12px); backdrop-filter: var(--vt-backdrop-blur) var(--vt-backdrop-brightness) var(--vt-backdrop-contrast) var(--vt-backdrop-grayscale) var(--vt-backdrop-hue-rotate) var(--vt-backdrop-invert) var(--vt-backdrop-opacity) var(--vt-backdrop-saturate) var(--vt-backdrop-sepia); }
4212
+ .vt-backdrop-blur-lg { --vt-backdrop-blur: blur(16px); backdrop-filter: var(--vt-backdrop-blur) var(--vt-backdrop-brightness) var(--vt-backdrop-contrast) var(--vt-backdrop-grayscale) var(--vt-backdrop-hue-rotate) var(--vt-backdrop-invert) var(--vt-backdrop-opacity) var(--vt-backdrop-saturate) var(--vt-backdrop-sepia); }
4213
+ .vt-backdrop-blur-xl { --vt-backdrop-blur: blur(24px); backdrop-filter: var(--vt-backdrop-blur) var(--vt-backdrop-brightness) var(--vt-backdrop-contrast) var(--vt-backdrop-grayscale) var(--vt-backdrop-hue-rotate) var(--vt-backdrop-invert) var(--vt-backdrop-opacity) var(--vt-backdrop-saturate) var(--vt-backdrop-sepia); }
4214
+ .vt-backdrop-blur-2xl { --vt-backdrop-blur: blur(40px); backdrop-filter: var(--vt-backdrop-blur) var(--vt-backdrop-brightness) var(--vt-backdrop-contrast) var(--vt-backdrop-grayscale) var(--vt-backdrop-hue-rotate) var(--vt-backdrop-invert) var(--vt-backdrop-opacity) var(--vt-backdrop-saturate) var(--vt-backdrop-sepia); }
4215
+ .vt-backdrop-blur-3xl { --vt-backdrop-blur: blur(64px); backdrop-filter: var(--vt-backdrop-blur) var(--vt-backdrop-brightness) var(--vt-backdrop-contrast) var(--vt-backdrop-grayscale) var(--vt-backdrop-hue-rotate) var(--vt-backdrop-invert) var(--vt-backdrop-opacity) var(--vt-backdrop-saturate) var(--vt-backdrop-sepia); }
4216
+ .vt-backdrop-blur-none { --vt-backdrop-blur: ; backdrop-filter: var(--vt-backdrop-blur) var(--vt-backdrop-brightness) var(--vt-backdrop-contrast) var(--vt-backdrop-grayscale) var(--vt-backdrop-hue-rotate) var(--vt-backdrop-invert) var(--vt-backdrop-opacity) var(--vt-backdrop-saturate) var(--vt-backdrop-sepia); }
4217
+ .vt-blur { --vt-blur: blur(8px); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4218
+ .vt-blur-sm { --vt-blur: blur(4px); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4219
+ .vt-blur-md { --vt-blur: blur(12px); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4220
+ .vt-blur-lg { --vt-blur: blur(16px); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4221
+ .vt-blur-xl { --vt-blur: blur(24px); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4222
+ .vt-blur-2xl { --vt-blur: blur(40px); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4223
+ .vt-blur-3xl { --vt-blur: blur(64px); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4224
+ .vt-blur-none { --vt-blur: ; filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4225
+ .vt-drop-shadow { --vt-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06)); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4226
+ .vt-drop-shadow-md { --vt-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06)); filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4227
+ .vt-filter { filter: var(--vt-blur) var(--vt-brightness) var(--vt-contrast) var(--vt-grayscale) var(--vt-hue-rotate) var(--vt-invert) var(--vt-saturate) var(--vt-sepia) var(--vt-drop-shadow); }
4228
+ .vt-group { /* group marker */ }
4229
+ .vt-group\/avatar { /* group/avatar marker */ }
4230
+
4231
+ .vt--mb-\[1px\] { margin-bottom:-1px; }
4232
+ .vt--mb-px { margin-bottom:-1px; }
4233
+ .vt--ml-1 { margin-left:-0.25rem; }
4234
+ .vt--ml-2 { margin-left:-0.5rem; }
4235
+ .vt--mr-1 { margin-right:-0.25rem; }
4236
+ .vt--mt-1 { margin-top:-0.25rem; }
4237
+ .vt--mt-1\.5 { margin-top:-0.375rem; }
4238
+ .vt--mx-1 { margin-left:-0.25rem;margin-right:-0.25rem; }
4239
+ .vt--mx-2 { margin-left:-0.5rem;margin-right:-0.5rem; }
4240
+ .vt--bottom-0\.5 { bottom:-0.125rem; }
4241
+ .vt--right-0\.5 { right:-0.125rem; }
4242
+ .vt--right-1 { right:-0.25rem; }
4243
+ .vt--right-1\.5 { right:-0.375rem; }
4244
+ .vt--right-2 { right:-0.5rem; }
4245
+ .vt--top-0\.5 { top:-0.125rem; }
4246
+ .vt--top-1 { top:-0.25rem; }
4247
+ .vt--top-1\.5 { top:-0.375rem; }
4248
+ .vt--top-3 { top:-0.75rem; }
4249
+
4250
+ /* ── 4. Responsive variants ────────────────────────────── */
4251
+ @media (min-width: 640px) {
4252
+ .vt-sm\:flex { display: flex; }
4253
+ .vt-sm\:flex-row { flex-direction: row; }
4254
+ .vt-sm\:col-span-1 { grid-column: span 1 / span 1; }
4255
+ .vt-sm\:mb-0 { margin-bottom: 0; }
4256
+ .vt-sm\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
4257
+ .vt-sm\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
4258
+ .vt-sm\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
4259
+ .vt-sm\:items-center { align-items: center; }
4260
+ .vt-sm\:rotate-0 { --vt-rotate: 0deg; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4261
+ .vt-sm\:table-cell { display: table-cell; }
4262
+ }
4263
+ @media (min-width: 768px) {
4264
+ .vt-md\:flex-row { flex-direction: row; }
4265
+ .vt-md\:hidden { display: none; }
4266
+ .vt-md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
4267
+ .vt-md\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
4268
+ .vt-md\:px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
4269
+ .vt-md\:py-12 { padding-top: 3rem; padding-bottom: 3rem; }
4270
+ .vt-md\:table-cell { display: table-cell; }
4271
+ }
4272
+ @media (min-width: 1024px) {
4273
+ .vt-lg\:flex { display: flex; }
4274
+ .vt-lg\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
4275
+ .vt-lg\:grid-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
4276
+ }
4277
+
4278
+ /* ── 5. State variants ─────────────────────────────────── */
4279
+ .vt-placeholder\:text-mains-quaternary::placeholder { color: hsl(var(--mains-quaternary)); }
4280
+ .vt-placeholder\:text-mains-quaternary::-moz-placeholder { color: hsl(var(--mains-quaternary)); }
4281
+ .vt-last\:border-b-0:last-child { border-bottom-width: 0; }
4282
+
4283
+ .vt-hover\:bg-accents-brand\/5:hover { background-color:hsl(var(--accents-brand)/0.05); }
4284
+ .vt-hover\:bg-accents-brand\/50:hover { background-color:hsl(var(--accents-brand)/0.5); }
4285
+ .vt-hover\:bg-accents-brand\/90:hover { background-color:hsl(var(--accents-brand)/0.9); }
4286
+ .vt-hover\:bg-info-primary\/5:hover { background-color:hsl(var(--info-primary)/0.05); }
4287
+ .vt-hover\:bg-info-primary\/50:hover { background-color:hsl(var(--info-primary)/0.5); }
4288
+ .vt-hover\:bg-info-primary\/90:hover { background-color:hsl(var(--info-primary)/0.9); }
4289
+ .vt-hover\:bg-error-primary\/10:hover { background-color:hsl(var(--error-primary)/0.1); }
4290
+ .vt-hover\:bg-error-primary\/90:hover { background-color:hsl(var(--error-primary)/0.9); }
4291
+ .vt-hover\:bg-black\/5:hover { background-color:rgba(0,0,0,0.05); }
4292
+ .vt-hover\:bg-surfaces-subtle:hover { background-color:hsl(var(--surfaces-subtle)); }
4293
+ .vt-hover\:bg-surfaces-subtle\/50:hover { background-color:hsl(var(--surfaces-subtle)/0.5); }
4294
+ .vt-hover\:bg-surfaces-subtle\/80:hover { background-color:hsl(var(--surfaces-subtle)/0.8); }
4295
+ .vt-hover\:border-accents-brand:hover { border-color:hsl(var(--accents-brand)); }
4296
+ .vt-hover\:border-accents-brand\/50:hover { border-color:hsl(var(--accents-brand)/0.5); }
4297
+ .vt-hover\:text-accents-brand\/80:hover { color:hsl(var(--accents-brand)/0.8); }
4298
+ .vt-hover\:border-info-primary:hover { border-color:hsl(var(--info-primary)); }
4299
+ .vt-hover\:border-info-primary\/50:hover { border-color:hsl(var(--info-primary)/0.5); }
4300
+ .vt-hover\:text-info-primary\/80:hover { color:hsl(var(--info-primary)/0.8); }
4301
+ .vt-hover\:text-error-primary:hover { color:hsl(var(--error-primary)); }
4302
+ .vt-hover\:text-mains-primary:hover { color:hsl(var(--mains-primary)); }
4303
+ .vt-hover\:text-mains-primary\/80:hover { color:hsl(var(--mains-primary)/0.8); }
4304
+ .vt-hover\:text-generic-white:hover { color:hsl(var(--generic-white)); }
4305
+ .vt-hover\:bg-surfaces-moderate:hover { background-color:hsl(var(--surfaces-moderate)); }
4306
+ .vt-hover\:bg-mains-quaternary\/40:hover { background-color:hsl(var(--mains-quaternary)/0.4); }
4307
+ .vt-hover\:bg-generic-white\/90:hover { background-color:hsl(var(--generic-white)/0.9); }
4308
+ .vt-hover\:border-info-primary\/30:hover { border-color:hsl(var(--info-primary)/0.3); }
4309
+ .vt-hover\:decoration-info-primary:hover { text-decoration-color:hsl(var(--info-primary)); }
4310
+ .vt-hover\:decoration-mains-primary:hover { text-decoration-color:hsl(var(--mains-primary)); }
4311
+ .vt-hover\:shadow-sm:hover { box-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05); }
4312
+ .vt-hover\:underline:hover { text-decoration-line:underline; }
4313
+ .vt-hover\:opacity-100:hover { opacity:1; }
4314
+ .vt-hover\:opacity-70:hover { opacity:0.7; }
4315
+ .vt-hover\:opacity-80:hover { opacity:0.8; }
4316
+ .vt-hover\:opacity-90:hover { opacity:0.9; }
4317
+ .vt-hover\:z-10:hover { z-index:10; }
4318
+ .vt-hover\:ring-2:hover { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(2px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4319
+ .vt-hover\:ring-accents-brand:hover { --vt-ring-color:hsl(var(--accents-brand)); }
4320
+ .vt-hover\:ring-info-primary:hover { --vt-ring-color:hsl(var(--info-primary)); }
4321
+ .vt-focus\:outline-none:focus { outline:2px solid transparent;outline-offset:2px; }
4322
+ .vt-focus\:ring-0:focus { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(0px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4323
+ .vt-focus\:ring-1:focus { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(1px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4324
+ .vt-focus\:ring-2:focus { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(2px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4325
+ .vt-focus\:ring-accents-brand:focus { --vt-ring-color:hsl(var(--accents-brand)); }
4326
+ .vt-focus\:ring-info-primary:focus { --vt-ring-color:hsl(var(--info-primary)); }
4327
+ .vt-focus\:ring-offset-2:focus { --vt-ring-offset-width:2px; }
4328
+ .vt-focus\:ring-offset-surfaces-background:focus { --vt-ring-offset-color:hsl(var(--surfaces-background)); }
4329
+ .vt-focus-visible\:outline-none:focus-visible { outline:2px solid transparent;outline-offset:2px; }
4330
+ .vt-focus-visible\:ring-1:focus-visible { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(1px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4331
+ .vt-focus-visible\:ring-2:focus-visible { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(2px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4332
+ .vt-focus-visible\:ring-accents-brand:focus-visible { --vt-ring-color:hsl(var(--accents-brand)); }
4333
+ .vt-focus-visible\:ring-info-primary:focus-visible { --vt-ring-color:hsl(var(--info-primary)); }
4334
+ .vt-focus-visible\:ring-error-primary:focus-visible { --vt-ring-color:hsl(var(--error-primary)); }
4335
+ .vt-focus-visible\:ring-success-primary:focus-visible { --vt-ring-color:hsl(var(--success-primary)); }
4336
+ .vt-focus-visible\:ring-offset-1:focus-visible { --vt-ring-offset-width:1px; }
4337
+ .vt-focus-visible\:ring-offset-2:focus-visible { --vt-ring-offset-width:2px; }
4338
+ .vt-focus-within\:ring-1:focus-within { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(1px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4339
+ .vt-focus-within\:ring-2:focus-within { --vt-ring-offset-shadow: var(--vt-ring-inset) 0 0 0 var(--vt-ring-offset-width) var(--vt-ring-offset-color); --vt-ring-shadow: var(--vt-ring-inset) 0 0 0 calc(2px + var(--vt-ring-offset-width)) var(--vt-ring-color); box-shadow: var(--vt-ring-offset-shadow), var(--vt-ring-shadow), var(--vt-shadow, 0 0 #0000); }
4340
+ .vt-focus-within\:ring-info-primary:focus-within { --vt-ring-color:hsl(var(--info-primary)); }
4341
+ .vt-focus-within\:border-info-primary:focus-within { border-color:hsl(var(--info-primary)); }
4342
+ .vt-disabled\:cursor-not-allowed:disabled { cursor: not-allowed; }
4343
+ .vt-disabled\:opacity-50:disabled { opacity: 0.5; }
4344
+ .vt-group:hover .vt-group-hover\:opacity-100 { opacity: 1; }
4345
+ .vt-group:hover .vt-group-hover\:pointer-events-auto { pointer-events: auto; }
4346
+ .vt-group:hover .vt-group-hover\:text-info-primary { color: hsl(var(--info-primary)); }
4347
+ .vt-group:hover .vt-group-hover\:translate-x-0\.5 { --vt-translate-x: 0.125rem; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4348
+ .vt-group\/avatar:hover .vt-group-hover\/avatar\:opacity-100 { opacity: 1; }
4349
+ .vt-group\/avatar:hover .vt-group-hover\/avatar\:scale-110 { --vt-scale-x: 1.1; --vt-scale-y: 1.1; transform: translate(var(--vt-translate-x), var(--vt-translate-y)) rotate(var(--vt-rotate)) skew(var(--vt-skew-x)) skewY(var(--vt-skew-y)) scaleX(var(--vt-scale-x)) scaleY(var(--vt-scale-y)); }
4350
+
4351
+ /* ── 6. Dark mode variants ─────────────────────────────── */
4352
+ .vt-dark\:block:is(.dark *) { display: block; }
4353
+ .vt-dark\:hidden:is(.dark *) { display: none; }
4354
+ .vt-dark\:bg-black\/15:is(.dark *) { background-color: rgba(0,0,0,0.15); }
4355
+ .vt-dark\:bg-black\/20:is(.dark *) { background-color: rgba(0,0,0,0.2); }
4356
+ .vt-dark\:bg-black\/30:is(.dark *) { background-color: rgba(0,0,0,0.3); }
4357
+ .vt-dark\:hover\:bg-white\/10:hover:is(.dark *) { background-color: rgba(255,255,255,0.1); }
4358
+
4359
+ /* ── 7. Arbitrary-value one-offs ───────────────────────── */
4360
+ .vt-aspect-\[16\/9\] { aspect-ratio: 16/9; }
4361
+ .vt-aspect-\[21\/9\] { aspect-ratio: 21/9; }
4362
+ .vt-aspect-\[4\/3\] { aspect-ratio: 4/3; }
4363
+ .vt-flex-\[4\] { flex: 4; }
4364
+ .vt-flex-\[6\] { flex: 6; }
4365
+ .vt-h-\[0\.5px\] { height: 0.5px; }
4366
+ .vt-h-\[20px\] { height: 20px; }
4367
+ .vt-h-\[24px\] { height: 24px; }
4368
+ .vt-h-\[calc\(100\%-1\.5rem\)\] { height: calc(100% - 1.5rem); }
4369
+ .vt-left-\[22px\] { left: 22px; }
4370
+ .vt-left-\[2px\] { left: 2px; }
4371
+ .vt-left-\[60\%\] { left: 60%; }
4372
+ .vt-max-w-\[120px\] { max-width: 120px; }
4373
+ .vt-max-w-\[200px\] { max-width: 200px; }
4374
+ .vt-max-w-\[300px\] { max-width: 300px; }
4375
+ .vt-max-w-\[400px\] { max-width: 400px; }
4376
+ .vt-max-w-\[500px\] { max-width: 500px; }
4377
+ .vt-min-h-\[120px\] { min-height: 120px; }
4378
+ .vt-min-h-\[200px\] { min-height: 200px; }
4379
+ .vt-min-h-\[40px\] { min-height: 40px; }
4380
+ .vt-min-h-\[42px\] { min-height: 42px; }
4381
+ .vt-min-h-\[80px\] { min-height: 80px; }
4382
+ .vt-min-w-\[16px\] { min-width: 16px; }
4383
+ .vt-min-w-\[20px\] { min-width: 20px; }
4384
+ .vt-min-w-\[400px\] { min-width: 400px; }
4385
+ .vt-min-w-\[48px\] { min-width: 48px; }
4386
+ .vt-min-w-\[60px\] { min-width: 60px; }
4387
+ .vt-min-w-\[70px\] { min-width: 70px; }
4388
+ .vt-min-w-\[80px\] { min-width: 80px; }
4389
+ .vt-mt-\[68px\] { margin-top: 68px; }
4390
+ .vt-mt-\[84px\] { margin-top: 84px; }
4391
+ .vt-text-\[6px\] { font-size: 6px; }
4392
+ .vt-text-\[7px\] { font-size: 7px; }
4393
+ .vt-text-\[8px\] { font-size: 8px; }
4394
+ .vt-text-\[9px\] { font-size: 9px; }
4395
+ .vt-text-\[10px\] { font-size: 10px; }
4396
+ .vt-text-\[11px\] { font-size: 11px; }
4397
+ .vt-w-\[0\.5px\] { width: 0.5px; }
4398
+ .vt-w-\[20px\] { width: 20px; }
4399
+ .vt-w-\[220px\] { width: 220px; }
4400
+ .vt-w-\[300px\] { width: 300px; }
4401
+ .vt-w-\[44px\] { width: 44px; }
4402
+ .vt-w-\[480px\] { width: 480px; }
4403
+ .vt-w-\[70px\] { width: 70px; }
4404
+ .vt-w-\[calc\(33\.333\%-11px\)\] { width: calc(33.333% - 11px); }
4405
+ .vt-w-\[calc\(50\%-8px\)\] { width: calc(50% - 8px); }
4406
+
4407
+ /* ── 9. Webkit slider-thumb ────────────────────────────── */
4408
+ .\[\&\:\:-webkit-slider-thumb\]\:h-5::-webkit-slider-thumb { height: 1.25rem; }
4409
+ .\[\&\:\:-webkit-slider-thumb\]\:w-5::-webkit-slider-thumb { width: 1.25rem; }
4410
+ .\[\&\:\:-webkit-slider-thumb\]\:appearance-none::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; }
4411
+ .\[\&\:\:-webkit-slider-thumb\]\:rounded-full::-webkit-slider-thumb { border-radius: 9999px; }
4412
+ .\[\&\:\:-webkit-slider-thumb\]\:border-2::-webkit-slider-thumb { border-width: 2px; }
4413
+ .\[\&\:\:-webkit-slider-thumb\]\:bg-accents-brand::-webkit-slider-thumb { background-color: hsl(var(--accents-brand)); }
4414
+ .\[\&\:\:-webkit-slider-thumb\]\:bg-info-primary::-webkit-slider-thumb { background-color: hsl(var(--info-primary)); }
4415
+ .\[\&\:\:-webkit-slider-thumb\]\:shadow::-webkit-slider-thumb { box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); }
4416
+ .\[\&\:\:-webkit-slider-thumb\]\:border-background::-webkit-slider-thumb { border-color: hsl(var(--surfaces-surface)); }
4417
+
4418
+ /* ── 10. Site long-tail ────────────────────────────────── */
4419
+ .vt--right-1\.5 { right: -0.375rem; }
4420
+ .vt-decoration-border-default { text-decoration-color: hsl(var(--border-default)); }
4421
+ .vt-decoration-info-primary\/30 { text-decoration-color: hsl(var(--info-primary) / 0.3); }
4422
+ .vt-decoration-mains-quaternary\/30 { text-decoration-color: hsl(var(--mains-quaternary) / 0.3); }
4423
+ .vt-bg-generic-black { background-color: hsl(var(--generic-black)); }
4424
+ .vt-bg-surfaces-contrast { background-color: hsl(var(--surfaces-contrast)); }
4425
+ .vt-text-generic-black { color: hsl(var(--generic-black)); }
4426
+ .vt-bg-success-primary\/5 { background-color: hsl(var(--success-primary) / 0.05); }
4427
+ .vt-bg-surfaces-surface\/80 { background-color: hsl(var(--surfaces-surface) / 0.8); }
4428
+ .vt-border-generic-white\/10 { border-color: hsl(var(--generic-white) / 0.1); }
4429
+ .vt-ring-info-primary\/20 { --vt-ring-color: hsl(var(--info-primary) / 0.2); }
4430
+ .vt-ring-surfaces-surface { --vt-ring-color: hsl(var(--surfaces-surface)); }
4431
+ .vt-divide-border > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--border-default)); }
4432
+ .vt-max-w-\[420px\] { max-width: 420px; }
4433
+ .vt-min-h-\[2\.5rem\] { min-height: 2.5rem; }
4434
+ .vt-min-h-\[400px\] { min-height: 400px; }
4435
+ .vt-min-h-\[440px\] { min-height: 440px; }
4436
+ .vt-min-h-\[480px\] { min-height: 480px; }
4437
+ .vt-min-h-\[560px\] { min-height: 560px; }
4438
+ .vt-min-w-\[40px\] { min-width: 40px; }
4439
+ .vt-min-w-\[100px\] { min-width: 100px; }
4440
+ .vt-top-\[3rem\] { top: 3rem; }
4441
+
4442
+ :root{font-size:clamp(14px,13.2958px + .1878vw,16px)}:root,html[data-theme=default]{--font-family-base: Inter, system-ui, sans-serif;--radius-sm: 0.5rem;--radius-lg: 0.75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-4xl: 2.5rem;--border-width-none: 0px;--border-width-thin: 0.5px;--border-width-default: 1px;--border-width-medium: 1.5px;--border-width-thick: 2px;--spacing-0: 0;--spacing-1: 0.25rem;--spacing-2: 0.5rem;--spacing-3: 0.75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-14: 3.5rem;--spacing-16: 4rem;--spacing-18: 4.5rem;--spacing-20: 5rem;--spacing-22: 5.5rem;--spacing-24: 6rem;--spacing-28: 7rem;--spacing-32: 8rem;--spacing-36: 9rem;--spacing-40: 10rem;--spacing-44: 11rem;--spacing-48: 12rem;--spacing-52: 13rem;--spacing-56: 14rem;--spacing-60: 15rem;--spacing-64: 16rem;--spacing-72: 18rem;--spacing-80: 20rem;--spacing-96: 24rem;--spacing-0_5: 0.125rem;--spacing-1_5: 0.375rem;--font-size-xs: 0.75rem;--font-size-sm: 0.875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-size-7xl: 4.5rem;--font-size-8xl: 6rem;--font-size-9xl: 8rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-loose: 1.75;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);--shadow-default: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-drawer: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--transition-fast: 150ms ease;--transition-normal: 200ms ease;--transition-slow: 300ms ease;--control-height-sm: 2rem;--control-height-md: 2.5rem;--control-height-lg: 3rem;--control-height-xl: 3.5rem;--control-padding-x-sm: 0.75rem;--control-padding-x-md: 1rem;--control-padding-x-lg: 1.25rem;--control-padding-x-xl: 1.5rem;--control-padding-y-sm: 0.25rem;--control-padding-y-md: 0.5rem;--control-padding-y-lg: 0.5rem;--control-padding-y-xl: 0.75rem;--focus-ring-width: 3px;--focus-ring-offset: 0px;--motion-ease-out: cubic-bezier(0.16, 1, 0.3, 1);--motion-ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);--motion-ease-spring: cubic-bezier(0.5, 1.6, 0.4, 1);--motion-preset-interactive: all 150ms cubic-bezier(0.16, 1, 0.3, 1);--motion-preset-fade: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1);--intent-success: var(--success-primary);--intent-warning: var(--warning-primary);--intent-danger: var(--error-primary);--intent-info: var(--info-primary);--elevation-0: none;--elevation-1: var(--shadow-sm);--elevation-2: var(--shadow-default);--elevation-3: var(--shadow-md);--elevation-4: var(--shadow-lg);--elevation-5: var(--shadow-xl);--generic-white: 0 0% 100%;--generic-black: 0 0% 0%;--mains-primary: 240 3% 6%;--mains-secondary: 228 4% 25%;--mains-tertiary: 227 4% 43%;--mains-quaternary: 229 5% 57%;--surfaces-background: 0 0% 98%;--surfaces-surface: 0 0% 100%;--surfaces-subtle: 0 0% 96%;--surfaces-moderate: 0 5% 92%;--surfaces-contrast: 245 10% 88%;--border-default: 0 5% 92%;--border-strong: 245 10% 88%;--border-focus: 219 88% 54%;--accents-brand: 213 87% 49%;--success-primary: 162 86% 35%;--success-background: 152 39% 89%;--success-border: 152 48% 70%;--warning-primary: 30 100% 44%;--warning-background: 34 100% 95%;--warning-border: 32 94% 78%;--error-primary: 4 83% 55%;--error-background: 0 100% 95%;--error-border: 2 92% 78%;--info-primary: 219 88% 54%;--info-background: 217 100% 92%;--info-border: 216 92% 76%;--brand-50: 213 40% 93%;--brand-100: 213 50% 87%;--brand-200: 213 60% 78%;--brand-300: 213 70% 68%;--brand-400: 213 80% 58%;--brand-500: 213 87% 49%;--brand-600: 213 87% 42%;--brand-700: 213 87% 35%;--brand-800: 213 80% 28%;--brand-900: 213 70% 21%;--brand-950: 213 60% 14%;--brand-hover: var(--brand-600);--brand-active: var(--brand-700);--brand-disabled: var(--brand-200);--on-brand: 0 0% 100%;--on-error: 0 0% 100%;--on-success: 0 0% 100%;--on-warning: 0 0% 100%;--on-info: 0 0% 100%}html[data-theme=editorial]{--font-family-base: 'Source Serif 4', Georgia, serif;--radius-sm: 0.375rem;--radius-lg: 0.75rem;--radius-xl: 0.875rem;--radius-2xl: 1.125rem;--radius-3xl: 1.375rem;--radius-4xl: 1.625rem;--border-width-none: 0px;--border-width-thin: 0.5px;--border-width-default: 1px;--border-width-medium: 1.5px;--border-width-thick: 2px;--spacing-0: 0;--spacing-1: 0.25rem;--spacing-2: 0.5rem;--spacing-3: 0.75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-14: 3.5rem;--spacing-16: 4rem;--spacing-18: 4.5rem;--spacing-20: 5rem;--spacing-22: 5.5rem;--spacing-24: 6rem;--spacing-28: 7rem;--spacing-32: 8rem;--spacing-36: 9rem;--spacing-40: 10rem;--spacing-44: 11rem;--spacing-48: 12rem;--spacing-52: 13rem;--spacing-56: 14rem;--spacing-60: 15rem;--spacing-64: 16rem;--spacing-72: 18rem;--spacing-80: 20rem;--spacing-96: 24rem;--spacing-0_5: 0.125rem;--spacing-1_5: 0.375rem;--font-size-xs: 0.75rem;--font-size-sm: 0.875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-size-7xl: 4.5rem;--font-size-8xl: 6rem;--font-size-9xl: 8rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-loose: 1.75;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);--shadow-default: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-drawer: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--transition-fast: 150ms ease;--transition-normal: 200ms ease;--transition-slow: 300ms ease;--intent-success: var(--success-primary);--intent-warning: var(--warning-primary);--intent-danger: var(--error-primary);--intent-info: var(--info-primary);--generic-white: 0 0% 100%;--generic-black: 0 0% 0%;--mains-primary: 26 14% 16%;--mains-secondary: 26 10% 28%;--mains-tertiary: 27 8% 44%;--mains-quaternary: 28 6% 55%;--surfaces-background: 36 30% 97%;--surfaces-surface: 38 30% 99%;--surfaces-subtle: 36 26% 95%;--surfaces-moderate: 35 24% 93%;--surfaces-contrast: 34 18% 88%;--border-default: 34 16% 86%;--border-strong: 31 14% 72%;--border-focus: 211 74% 45%;--accents-brand: 213 87% 49%;--success-primary: 155 58% 34%;--success-background: 153 40% 90%;--success-border: 155 46% 76%;--warning-primary: 28 80% 49%;--warning-background: 34 100% 95%;--warning-border: 28 64% 76%;--error-primary: 3 68% 52%;--error-background: 0 100% 96%;--error-border: 3 54% 76%;--info-primary: 211 74% 45%;--info-background: 212 100% 94%;--info-border: 211 59% 76%;--brand-50: 213 40% 93%;--brand-100: 213 50% 87%;--brand-200: 213 60% 78%;--brand-300: 213 70% 68%;--brand-400: 213 80% 58%;--brand-500: 213 87% 49%;--brand-600: 213 87% 42%;--brand-700: 213 87% 35%;--brand-800: 213 80% 28%;--brand-900: 213 70% 21%;--brand-950: 213 60% 14%;--brand-hover: var(--brand-600);--brand-active: var(--brand-700);--brand-disabled: var(--brand-200);--on-brand: 0 0% 100%;--on-error: 0 0% 100%;--on-success: 0 0% 100%;--on-warning: 0 0% 100%;--on-info: 0 0% 100%}html[data-theme=rounded-sans]{--font-family-base: Manrope, Inter, system-ui, sans-serif;--radius-sm: 0.75rem;--radius-lg: 0.875rem;--radius-xl: 1.125rem;--radius-2xl: 1.5rem;--radius-3xl: 1.75rem;--radius-4xl: 2rem;--border-width-none: 0px;--border-width-thin: 0.5px;--border-width-default: 1px;--border-width-medium: 1.5px;--border-width-thick: 2px;--spacing-0: 0;--spacing-1: 0.25rem;--spacing-2: 0.5rem;--spacing-3: 0.75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-7: 1.75rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-14: 3.5rem;--spacing-16: 4rem;--spacing-18: 4.5rem;--spacing-20: 5rem;--spacing-22: 5.5rem;--spacing-24: 6rem;--spacing-28: 7rem;--spacing-32: 8rem;--spacing-36: 9rem;--spacing-40: 10rem;--spacing-44: 11rem;--spacing-48: 12rem;--spacing-52: 13rem;--spacing-56: 14rem;--spacing-60: 15rem;--spacing-64: 16rem;--spacing-72: 18rem;--spacing-80: 20rem;--spacing-96: 24rem;--spacing-0_5: 0.125rem;--spacing-1_5: 0.375rem;--font-size-xs: 0.75rem;--font-size-sm: 0.875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-size-7xl: 4.5rem;--font-size-8xl: 6rem;--font-size-9xl: 8rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-loose: 1.75;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);--shadow-default: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-drawer: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--transition-fast: 150ms ease;--transition-normal: 200ms ease;--transition-slow: 300ms ease;--intent-success: var(--success-primary);--intent-warning: var(--warning-primary);--intent-danger: var(--error-primary);--intent-info: var(--info-primary);--generic-white: 0 0% 100%;--generic-black: 0 0% 0%;--mains-primary: 224 26% 15%;--mains-secondary: 225 17% 28%;--mains-tertiary: 225 12% 45%;--mains-quaternary: 226 10% 58%;--surfaces-background: 220 20% 98%;--surfaces-surface: 0 0% 100%;--surfaces-subtle: 220 20% 97%;--surfaces-moderate: 220 18% 95%;--surfaces-contrast: 220 16% 90%;--border-default: 220 14% 90%;--border-strong: 221 15% 78%;--border-focus: 221 84% 55%;--accents-brand: 213 87% 49%;--success-primary: 160 84% 35%;--success-background: 154 48% 91%;--success-border: 160 67% 76%;--warning-primary: 28 96% 56%;--warning-background: 34 100% 95%;--warning-border: 28 77% 76%;--error-primary: 0 78% 56%;--error-background: 0 100% 96%;--error-border: 0 62% 76%;--info-primary: 221 84% 55%;--info-background: 214 100% 95%;--info-border: 221 67% 76%;--brand-50: 213 40% 93%;--brand-100: 213 50% 87%;--brand-200: 213 60% 78%;--brand-300: 213 70% 68%;--brand-400: 213 80% 58%;--brand-500: 213 87% 49%;--brand-600: 213 87% 42%;--brand-700: 213 87% 35%;--brand-800: 213 80% 28%;--brand-900: 213 70% 21%;--brand-950: 213 60% 14%;--brand-hover: var(--brand-600);--brand-active: var(--brand-700);--brand-disabled: var(--brand-200);--on-brand: 0 0% 100%;--on-error: 0 0% 100%;--on-success: 0 0% 100%;--on-warning: 30 100% 10%;--on-info: 0 0% 100%}html.dark:not([data-theme]),html.dark[data-theme=default]{--mains-primary: 0 0% 98%;--mains-secondary: 245 10% 88%;--mains-tertiary: 231 6% 71%;--mains-quaternary: 227 4% 43%;--surfaces-background: 0 0% 0%;--surfaces-surface: 240 3% 6%;--surfaces-subtle: 240 4% 15%;--surfaces-moderate: 228 4% 25%;--surfaces-contrast: 228 4% 34%;--border-default: 240 4% 15%;--border-strong: 228 4% 25%;--border-focus: 218 88% 62%;--accents-brand: 213 87% 49%;--success-primary: 162 86% 35%;--success-background: 150 55% 10%;--success-border: 168 68% 18%;--warning-primary: 30 100% 44%;--warning-background: 30 100% 10%;--warning-border: 24 70% 20%;--error-primary: 4 83% 55%;--error-background: 356 89% 17%;--error-border: 10 64% 32%;--info-primary: 219 88% 54%;--info-background: 216 82% 17%;--info-border: 226 70% 32%;--on-brand: 0 0% 100%;--on-error: 0 0% 100%;--on-success: 0 0% 100%;--on-warning: 0 0% 100%;--on-info: 0 0% 100%}html.dark[data-theme=editorial]{--mains-primary: 40 18% 94%;--mains-secondary: 37 14% 80%;--mains-tertiary: 35 10% 64%;--mains-quaternary: 33 7% 48%;--surfaces-background: 22 16% 4%;--surfaces-surface: 24 16% 10%;--surfaces-subtle: 24 12% 14%;--surfaces-moderate: 25 13% 11%;--surfaces-contrast: 23 10% 20%;--border-default: 23 10% 19%;--border-strong: 25 10% 29%;--border-focus: 211 74% 56%;--accents-brand: 213 87% 56%;--success-primary: 155 58% 43%;--success-background: 153 46% 11%;--success-border: 155 41% 28%;--warning-primary: 30 84% 57%;--warning-background: 30 63% 14%;--warning-border: 30 59% 28%;--error-primary: 3 72% 60%;--error-background: 356 60% 16%;--error-border: 3 50% 28%;--info-primary: 211 74% 56%;--info-background: 211 53% 16%;--info-border: 211 52% 28%;--on-brand: 0 0% 100%;--on-error: 0 0% 100%;--on-success: 150 55% 10%;--on-warning: 30 100% 10%;--on-info: 0 0% 100%}html.dark[data-theme=rounded-sans]{--mains-primary: 220 20% 96%;--mains-secondary: 220 16% 83%;--mains-tertiary: 220 12% 66%;--mains-quaternary: 220 10% 48%;--surfaces-background: 226 24% 4%;--surfaces-surface: 226 24% 10%;--surfaces-subtle: 224 19% 16%;--surfaces-moderate: 226 20% 12%;--surfaces-contrast: 224 16% 22%;--border-default: 224 15% 20%;--border-strong: 224 13% 30%;--border-focus: 221 84% 62%;--accents-brand: 213 87% 56%;--success-primary: 160 84% 45%;--success-background: 157 58% 11%;--success-border: 160 59% 28%;--warning-primary: 32 98% 62%;--warning-background: 29 77% 15%;--warning-border: 32 69% 28%;--error-primary: 0 84% 63%;--error-background: 355 76% 16%;--error-border: 0 59% 28%;--info-primary: 221 84% 62%;--info-background: 219 63% 17%;--info-border: 221 59% 28%;--on-brand: 0 0% 100%;--on-error: 0 0% 100%;--on-success: 150 55% 10%;--on-warning: 30 100% 10%;--on-info: 0 0% 100%}body{font-family:var(--font-family-base, Inter, system-ui, sans-serif)}*,::before,::after{border-color:hsl(var(--border-default))}hr{border:none;border-top:var(--border-width-thin) solid hsl(var(--border-default));margin:0}.vt-container,.vt-container-fluid{width:100%;margin-right:auto;margin-left:auto;padding-right:.75rem;padding-left:.75rem}.vt-container{max-width:1280px}@media(min-width: 640px){.vt-container{padding-right:1rem;padding-left:1rem}}@media(min-width: 1024px){.vt-container{padding-right:1.5rem;padding-left:1.5rem}}.vt-row{--vt-gutter-x: 1rem;--vt-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(-1*var(--vt-gutter-y));margin-right:calc(-0.5*var(--vt-gutter-x));margin-left:calc(-0.5*var(--vt-gutter-x))}.vt-row>*{width:100%;max-width:100%;padding-right:calc(var(--vt-gutter-x)*.5);padding-left:calc(var(--vt-gutter-x)*.5);margin-top:var(--vt-gutter-y)}.vt-col{flex:1 0 0%}.vt-col-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.vt-col-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.vt-col-3{flex:0 0 25%;max-width:25%}.vt-col-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.vt-col-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.vt-col-6{flex:0 0 50%;max-width:50%}.vt-col-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.vt-col-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.vt-col-9{flex:0 0 75%;max-width:75%}.vt-col-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.vt-col-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.vt-col-12{flex:0 0 100%;max-width:100%}:root{--generic-0: 0 0% 100%;--generic-1000: 0 0% 0%;--grey-50: 0 0% 98%;--grey-75: 0 0% 96%;--grey-100: 0 5% 92%;--grey-200: 245 10% 88%;--grey-300: 238 8% 81%;--grey-400: 231 6% 71%;--grey-500: 229 5% 57%;--grey-600: 227 4% 43%;--grey-700: 228 4% 34%;--grey-800: 228 4% 25%;--grey-900: 240 4% 15%;--grey-950: 240 3% 6%;--green-50: 152 39% 89%;--green-100: 149 44% 81%;--green-200: 152 48% 70%;--green-300: 156 52% 58%;--green-400: 160 60% 48%;--green-500: 162 86% 35%;--green-600: 164 80% 29%;--green-700: 166 74% 23%;--green-800: 168 68% 18%;--green-900: 168 58% 14%;--green-950: 150 55% 10%;--blue-50: 217 100% 92%;--blue-100: 215 96% 85%;--blue-200: 216 92% 76%;--blue-300: 217 90% 68%;--blue-400: 218 88% 62%;--blue-500: 219 88% 54%;--blue-600: 222 82% 48%;--blue-700: 224 76% 40%;--blue-800: 226 70% 32%;--blue-900: 228 64% 24%;--blue-950: 216 82% 17%;--brand-50: 213 40% 93%;--brand-100: 213 50% 87%;--brand-200: 213 60% 78%;--brand-300: 213 70% 68%;--brand-400: 213 80% 58%;--brand-500: 213 87% 49%;--brand-600: 213 87% 42%;--brand-700: 213 87% 35%;--brand-800: 213 80% 28%;--brand-900: 213 70% 21%;--brand-950: 213 60% 14%;--red-50: 0 100% 95%;--red-100: 0 96% 88%;--red-200: 2 92% 78%;--red-300: 3 88% 68%;--red-400: 4 84% 60%;--red-500: 4 83% 55%;--red-600: 6 76% 48%;--red-700: 8 70% 40%;--red-800: 10 64% 32%;--red-900: 12 58% 24%;--red-950: 356 89% 17%;--orange-50: 34 100% 95%;--orange-100: 33 96% 88%;--orange-200: 32 94% 78%;--orange-300: 31 92% 66%;--orange-400: 30 96% 55%;--orange-500: 30 100% 44%;--orange-600: 28 90% 35%;--orange-700: 26 80% 27%;--orange-800: 24 70% 20%;--orange-900: 22 60% 14%;--orange-950: 30 100% 10%;--radius-none: 0;--radius-full: 9999px;--radius-xs: 0.25rem}@media(min-width: 640px){.vt-col-sm{flex:1 0 0%}.vt-col-sm-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.vt-col-sm-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.vt-col-sm-3{flex:0 0 25%;max-width:25%}.vt-col-sm-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.vt-col-sm-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.vt-col-sm-6{flex:0 0 50%;max-width:50%}.vt-col-sm-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.vt-col-sm-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.vt-col-sm-9{flex:0 0 75%;max-width:75%}.vt-col-sm-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.vt-col-sm-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.vt-col-sm-12{flex:0 0 100%;max-width:100%}}@media(min-width: 768px){.vt-col-md{flex:1 0 0%}.vt-col-md-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.vt-col-md-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.vt-col-md-3{flex:0 0 25%;max-width:25%}.vt-col-md-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.vt-col-md-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.vt-col-md-6{flex:0 0 50%;max-width:50%}.vt-col-md-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.vt-col-md-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.vt-col-md-9{flex:0 0 75%;max-width:75%}.vt-col-md-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.vt-col-md-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.vt-col-md-12{flex:0 0 100%;max-width:100%}}@media(min-width: 1024px){.vt-col-lg{flex:1 0 0%}.vt-col-lg-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.vt-col-lg-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.vt-col-lg-3{flex:0 0 25%;max-width:25%}.vt-col-lg-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.vt-col-lg-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.vt-col-lg-6{flex:0 0 50%;max-width:50%}.vt-col-lg-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.vt-col-lg-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.vt-col-lg-9{flex:0 0 75%;max-width:75%}.vt-col-lg-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.vt-col-lg-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.vt-col-lg-12{flex:0 0 100%;max-width:100%}}@media(min-width: 1280px){.vt-col-xl{flex:1 0 0%}.vt-col-xl-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.vt-col-xl-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.vt-col-xl-3{flex:0 0 25%;max-width:25%}.vt-col-xl-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.vt-col-xl-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.vt-col-xl-6{flex:0 0 50%;max-width:50%}.vt-col-xl-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.vt-col-xl-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.vt-col-xl-9{flex:0 0 75%;max-width:75%}.vt-col-xl-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.vt-col-xl-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.vt-col-xl-12{flex:0 0 100%;max-width:100%}}.vt-bg-token-grey-50{background:hsl(var(--grey-50))}.vt-bg-token-grey-75{background:hsl(var(--grey-75))}.vt-bg-token-grey-100{background:hsl(var(--grey-100))}.vt-bg-token-grey-200{background:hsl(var(--grey-200))}.vt-bg-token-grey-300{background:hsl(var(--grey-300))}.vt-bg-token-grey-400{background:hsl(var(--grey-400))}.vt-bg-token-grey-500{background:hsl(var(--grey-500))}.vt-bg-token-grey-600{background:hsl(var(--grey-600))}.vt-bg-token-grey-700{background:hsl(var(--grey-700))}.vt-bg-token-grey-800{background:hsl(var(--grey-800))}.vt-bg-token-grey-900{background:hsl(var(--grey-900))}.vt-bg-token-grey-950{background:hsl(var(--grey-950))}.vt-bg-token-green-50{background:hsl(var(--green-50))}.vt-bg-token-green-100{background:hsl(var(--green-100))}.vt-bg-token-green-200{background:hsl(var(--green-200))}.vt-bg-token-green-300{background:hsl(var(--green-300))}.vt-bg-token-green-400{background:hsl(var(--green-400))}.vt-bg-token-green-500{background:hsl(var(--green-500))}.vt-bg-token-green-600{background:hsl(var(--green-600))}.vt-bg-token-green-700{background:hsl(var(--green-700))}.vt-bg-token-green-800{background:hsl(var(--green-800))}.vt-bg-token-green-900{background:hsl(var(--green-900))}.vt-bg-token-green-950{background:hsl(var(--green-950))}.vt-bg-token-blue-50{background:hsl(var(--blue-50))}.vt-bg-token-blue-100{background:hsl(var(--blue-100))}.vt-bg-token-blue-200{background:hsl(var(--blue-200))}.vt-bg-token-blue-300{background:hsl(var(--blue-300))}.vt-bg-token-blue-400{background:hsl(var(--blue-400))}.vt-bg-token-blue-500{background:hsl(var(--blue-500))}.vt-bg-token-blue-600{background:hsl(var(--blue-600))}.vt-bg-token-blue-700{background:hsl(var(--blue-700))}.vt-bg-token-blue-800{background:hsl(var(--blue-800))}.vt-bg-token-blue-900{background:hsl(var(--blue-900))}.vt-bg-token-blue-950{background:hsl(var(--blue-950))}.vt-bg-token-red-50{background:hsl(var(--red-50))}.vt-bg-token-red-100{background:hsl(var(--red-100))}.vt-bg-token-red-200{background:hsl(var(--red-200))}.vt-bg-token-red-300{background:hsl(var(--red-300))}.vt-bg-token-red-400{background:hsl(var(--red-400))}.vt-bg-token-red-500{background:hsl(var(--red-500))}.vt-bg-token-red-600{background:hsl(var(--red-600))}.vt-bg-token-red-700{background:hsl(var(--red-700))}.vt-bg-token-red-800{background:hsl(var(--red-800))}.vt-bg-token-red-900{background:hsl(var(--red-900))}.vt-bg-token-red-950{background:hsl(var(--red-950))}.vt-bg-token-orange-50{background:hsl(var(--orange-50))}.vt-bg-token-orange-100{background:hsl(var(--orange-100))}.vt-bg-token-orange-200{background:hsl(var(--orange-200))}.vt-bg-token-orange-300{background:hsl(var(--orange-300))}.vt-bg-token-orange-400{background:hsl(var(--orange-400))}.vt-bg-token-orange-500{background:hsl(var(--orange-500))}.vt-bg-token-orange-600{background:hsl(var(--orange-600))}.vt-bg-token-orange-700{background:hsl(var(--orange-700))}.vt-bg-token-orange-800{background:hsl(var(--orange-800))}.vt-bg-token-orange-900{background:hsl(var(--orange-900))}.vt-bg-token-orange-950{background:hsl(var(--orange-950))}.vt-bg-token-generic-0{background:hsl(var(--generic-0))}.vt-bg-token-generic-1000{background:hsl(var(--generic-1000))}.vt-surface-card{border:var(--border-width-thin) solid hsl(var(--border-default));border-radius:var(--radius-2xl);background:hsl(var(--surfaces-surface))}.vt-surface-card--clip{overflow:hidden}.vt-table-wrap{border:var(--border-width-thin) solid hsl(var(--border-default));border-radius:var(--radius-xl);background:hsl(var(--surfaces-surface));overflow:hidden}.vt-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.vt-table thead tr{background:hsl(var(--surfaces-subtle));border-bottom:var(--border-width-thin) solid hsl(var(--border-default))}.vt-table th{padding:.75rem 1rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:hsl(var(--mains-quaternary));text-align:left}.vt-table td{padding:.75rem 1rem;font-size:var(--font-size-sm)}.vt-token-table td{vertical-align:middle}.vt-colors-token-table{min-width:680px}.vt-tone-info{background:hsl(var(--info-primary)/0.1);border-color:hsl(var(--info-primary)/0.3);color:hsl(var(--info-primary))}.vt-tone-success{background:hsl(var(--success-primary)/0.1);border-color:hsl(var(--success-primary)/0.3);color:hsl(var(--success-primary))}.vt-tone-warning{background:hsl(var(--warning-primary)/0.1);border-color:hsl(var(--warning-primary)/0.3);color:hsl(var(--mains-primary))}.vt-tone-danger{background:hsl(var(--error-primary)/0.1);border-color:hsl(var(--error-primary)/0.3);color:hsl(var(--error-primary))}.vt-status-pill{display:inline-flex;align-items:center;gap:var(--spacing-1_5);border-radius:var(--radius-full);padding:var(--spacing-0_5) var(--spacing-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.vt-status-dot{width:.375rem;height:.375rem;border-radius:var(--radius-full);background:currentColor;flex-shrink:0}.vt-type-scale{border:var(--border-width-thin) solid hsl(var(--border-default));border-radius:var(--radius-2xl);background:hsl(var(--surfaces-surface));overflow:hidden}.vt-type-row{display:grid;grid-template-columns:140px 1fr;align-items:baseline;gap:24px;padding:20px 24px;border-bottom:var(--border-width-thin) solid hsl(var(--border-default))}.vt-type-row:last-child{border-bottom:0}.vt-type-meta{display:flex;flex-direction:column;gap:2px}.vt-type-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:hsl(var(--mains-primary))}.vt-type-specs{font-size:var(--font-size-xs);color:hsl(var(--mains-quaternary));font-family:"SF Mono",SFMono-Regular,ui-monospace,monospace}.vt-spacing-bar{background:hsl(var(--info-primary)/0.15);border:var(--border-width-default) solid hsl(var(--info-primary)/0.3);border-radius:var(--radius-sm);height:32px;transition:background-color var(--transition-normal)}.vt-spacing-bar:hover{background:hsl(var(--info-primary)/0.25)}.vt-scroll{overflow:auto;scrollbar-width:thin;scrollbar-color:hsl(var(--border-default)) rgba(0,0,0,0)}.vt-scroll::-webkit-scrollbar{width:6px;height:6px}.vt-scroll::-webkit-scrollbar-track{background:rgba(0,0,0,0);border-radius:var(--radius-xs)}.vt-scroll::-webkit-scrollbar-thumb{background:hsl(var(--border-default));border-radius:var(--radius-xs)}.vt-scroll::-webkit-scrollbar-thumb:hover{background:hsl(var(--mains-quaternary))}.vt-scroll::-webkit-scrollbar-corner{background:rgba(0,0,0,0)}.vt-scroll-hidden{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.vt-scroll-hidden::-webkit-scrollbar{display:none}.vt-scroll-autohide{overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,0) rgba(0,0,0,0)}.vt-scroll-autohide::-webkit-scrollbar{width:6px;height:6px}.vt-scroll-autohide::-webkit-scrollbar-track{background:rgba(0,0,0,0)}.vt-scroll-autohide::-webkit-scrollbar-thumb{background:rgba(0,0,0,0);border-radius:var(--radius-xs);transition:background var(--transition-normal)}.vt-scroll-autohide:hover{scrollbar-color:hsl(var(--border-default)) rgba(0,0,0,0)}.vt-scroll-autohide:hover::-webkit-scrollbar-thumb{background:hsl(var(--border-default))}.vt-scroll-autohide::-webkit-scrollbar-corner{background:rgba(0,0,0,0)}.vt-scroll-indicator{position:relative}.vt-scroll-indicator::before,.vt-scroll-indicator::after{content:"";position:absolute;left:0;right:0;height:32px;pointer-events:none;z-index:1;opacity:0;transition:opacity var(--transition-normal)}.vt-scroll-indicator::before{top:0;background:linear-gradient(to bottom, hsl(var(--surfaces-background)), transparent)}.vt-scroll-indicator::after{bottom:0;background:linear-gradient(to top, hsl(var(--surfaces-background)), transparent)}.vt-scroll-indicator.vt-show-top::before{opacity:1}.vt-scroll-indicator.vt-show-bottom::after{opacity:1}.vt-scroll-indicator-h{position:relative}.vt-scroll-indicator-h::before,.vt-scroll-indicator-h::after{content:"";position:absolute;top:0;bottom:0;width:32px;pointer-events:none;z-index:1;opacity:0;transition:opacity var(--transition-normal)}.vt-scroll-indicator-h::before{left:0;background:linear-gradient(to right, hsl(var(--surfaces-background)), transparent)}.vt-scroll-indicator-h::after{right:0;background:linear-gradient(to left, hsl(var(--surfaces-background)), transparent)}.vt-scroll-indicator-h.vt-show-left::before{opacity:1}.vt-scroll-indicator-h.vt-show-right::after{opacity:1}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none !important}[data-astro-transition-scope]{animation:none !important}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.vt-tree-toggle{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;font-size:13px;font-weight:500;color:hsl(var(--mains-primary));width:100%;text-align:left;cursor:pointer;transition:background .15s ease}.vt-tree-toggle:hover{background:hsl(var(--surfaces-subtle))}.vt-tree-chevron{transition:transform .2s ease;color:hsl(var(--mains-quaternary))}[data-tree-branch].open>.vt-tree-toggle>.vt-tree-chevron{transform:rotate(90deg)}.vt-tree-children{overflow:hidden;max-height:0;opacity:0;transition:max-height .25s ease,opacity .2s ease;padding-left:12px;margin-left:15px;border-left:1px solid hsl(var(--border-default)/0.5)}[data-tree-branch].open>.vt-tree-children{max-height:500px;opacity:1}.vt-tree-leaf{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;font-size:13px;color:hsl(var(--mains-secondary));text-decoration:none;cursor:pointer;transition:all .15s ease}.vt-tree-leaf:hover{color:hsl(var(--mains-primary));background:hsl(var(--surfaces-subtle))}.vt-tree-active{color:hsl(var(--info-primary));background:hsl(var(--info-primary)/0.08);font-weight:500}.vt-calendar-day.vt-outside{color:hsl(var(--mains-quaternary)/0.45)}.vt-calendar-day.vt-range-start,.vt-calendar-day.vt-range-end{position:relative;background:hsl(var(--accents-brand));color:hsl(var(--on-brand));font-weight:var(--font-weight-semibold)}.vt-calendar-day.vt-range-middle{position:relative}.vt-calendar-day.vt-range-start::before,.vt-calendar-day.vt-range-end::before,.vt-calendar-day.vt-range-middle::before{content:"";position:absolute;top:0;bottom:0;z-index:-1;background:hsl(var(--accents-brand)/0.15)}.vt-calendar-day.vt-range-middle::before{left:-2px;right:-2px}.vt-calendar-day.vt-range-start::before{left:50%;right:-2px}.vt-calendar-day.vt-range-end::before{left:-2px;right:50%}.vt-component-section{margin-bottom:var(--spacing-8)}.vt-sidebar-overview{font-weight:var(--font-weight-medium)}.vt-theme-toggle{display:flex;flex-direction:column;gap:var(--spacing-2)}.vt-select-wrapper{position:relative}.vt-topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:3.5rem;padding:0 1.25rem;border-bottom:1px solid hsl(var(--border-default));background:hsl(var(--surfaces-surface));flex-shrink:0;z-index:100;position:sticky;top:0}.vt-topbar-left{display:flex;align-items:center;gap:.25rem}.vt-topbar-logo{display:inline-flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:700;color:hsl(var(--mains-primary));text-decoration:none;letter-spacing:-0.01em;margin-right:.5rem;flex-shrink:0}.vt-topbar-logo-img{width:22px;height:22px;display:block}.vt-topbar-nav{display:flex;align-items:center;gap:0}.vt-topbar-link{display:flex;align-items:center;padding:.375rem .625rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;color:hsl(var(--mains-tertiary));text-decoration:none;transition:color .15s,background-color .15s}.vt-topbar-link:hover{color:hsl(var(--mains-primary));background:hsl(var(--surfaces-subtle))}.vt-topbar-link.vt-active{color:hsl(var(--mains-primary));background:hsl(var(--surfaces-subtle))}.vt-topbar-center{display:flex;justify-content:center}.vt-topbar-search{display:flex;align-items:center;gap:.5rem;height:2.125rem;width:220px;padding:0 .625rem;border-radius:var(--radius-sm);border:1px solid hsl(var(--border-default));background:hsl(var(--surfaces-subtle));font-size:.8125rem;color:hsl(var(--mains-quaternary));cursor:pointer;text-align:left;transition:border-color .15s,background .15s,width .2s}.vt-topbar-search:hover{border-color:hsl(var(--border-strong));background:hsl(var(--surfaces-surface));width:260px}.vt-topbar-search-icon{width:13px;height:13px;flex-shrink:0;color:hsl(var(--mains-quaternary))}.vt-topbar-search-placeholder{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vt-topbar-search-kbd{display:inline-flex;align-items:center;height:1.25rem;padding:0 .3em;border-radius:4px;border:1px solid hsl(var(--border-strong));background:hsl(var(--surfaces-background));font-size:.625rem;font-weight:500;color:hsl(var(--mains-quaternary));letter-spacing:0;flex-shrink:0}.vt-topbar-right{display:flex;align-items:center;gap:.5rem;justify-content:flex-end;flex-shrink:0}.vt-topbar-version{font-size:.6875rem;font-weight:500;color:hsl(var(--mains-quaternary));padding:.125rem .5rem;border-radius:var(--radius-full);background:hsl(var(--surfaces-subtle));line-height:1.4;white-space:nowrap}.vt-topbar-github{display:flex;align-items:center;gap:.375rem;height:2rem;padding:0 .5rem;border-radius:var(--radius-sm);border:1px solid hsl(var(--border-default));color:hsl(var(--mains-primary));transition:color .15s,background .15s,border-color .15s;text-decoration:none}.vt-topbar-github:hover{color:hsl(var(--mains-primary));background:hsl(var(--surfaces-subtle));border-color:hsl(var(--border-strong))}.vt-topbar-github-icon{width:18px;height:18px;flex-shrink:0}.vt-topbar-github-stars{font-size:.75rem;font-weight:500;color:hsl(var(--mains-secondary));line-height:1}.vt-topbar-github:hover .vt-topbar-github-stars{color:hsl(var(--mains-primary))}@media(max-width: 960px){.vt-topbar-link-storybook{display:none}}@media(max-width: 900px){.vt-topbar-search{width:180px}.vt-topbar-search:hover{width:200px}}@media(max-width: 640px){.vt-topbar{grid-template-columns:auto 1fr auto;gap:.5rem}.vt-topbar-nav{display:none}.vt-topbar-search{width:100%}.vt-topbar-search:hover{width:100%}.vt-topbar-search-kbd{display:none}}.search-overlay{display:none;position:fixed;inset:0;z-index:500}.search-overlay.open{display:block}.search-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.4);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.search-dialog{position:absolute;top:15vh;left:50%;transform:translateX(-50%);width:100%;max-width:560px;background:hsl(var(--surfaces-surface));border:1px solid hsl(var(--border-default));border-radius:16px;box-shadow:0 24px 64px rgba(0,0,0,.18);overflow:hidden}.search-input-row{display:flex;align-items:center;gap:.625rem;padding:0 1rem;border-bottom:1px solid hsl(var(--border-default))}.search-input-icon{width:16px;height:16px;color:hsl(var(--mains-quaternary));flex-shrink:0}.search-input{flex:1;height:3rem;background:rgba(0,0,0,0);border:none;outline:none;font-size:.9375rem;color:hsl(var(--mains-primary));font-family:inherit}.search-input::placeholder{color:hsl(var(--mains-quaternary))}.search-esc-kbd{display:inline-flex;align-items:center;height:1.375rem;padding:0 .4em;border-radius:5px;border:1px solid hsl(var(--border-strong));background:hsl(var(--surfaces-subtle));font-size:.6875rem;font-weight:500;color:hsl(var(--mains-quaternary));flex-shrink:0}.search-results{max-height:420px;overflow-y:auto;padding:.5rem}.search-group-label{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem .25rem;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--mains-quaternary))}.search-item{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border-radius:8px;font-size:.875rem;color:hsl(var(--mains-primary));text-decoration:none;cursor:pointer;transition:background .1s}.search-item:hover,.search-item.active{background:hsl(var(--surfaces-subtle))}.search-group-icon{display:inline-flex;align-items:center;color:hsl(var(--mains-quaternary));flex-shrink:0}.search-item-category{margin-left:auto;font-size:.6875rem;color:hsl(var(--mains-quaternary));flex-shrink:0}.search-empty{padding:2rem;text-align:center;font-size:.875rem;color:hsl(var(--mains-quaternary))}.vt-color-format-btn{display:inline-flex;align-items:center;border:none;background:rgba(0,0,0,0);color:hsl(var(--mains-quaternary));cursor:pointer}.vt-color-format-btn:hover{color:hsl(var(--mains-secondary))}@keyframes indexFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}.vt-list-check{flex-shrink:0;color:hsl(var(--info-primary))}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.vt-size-label{font-variant-numeric:tabular-nums;font-weight:var(--font-weight-medium);color:hsl(var(--mains-quaternary))}.vt-drag-scroll{cursor:grab;overflow-x:auto;user-select:none}.vt-sidebar-demo-children{overflow:hidden;max-height:0;opacity:0;transition:max-height .2s ease,opacity .15s ease}[data-sidebar-collapsible].open>.vt-sidebar-demo-children{max-height:200px;opacity:1}[data-sidebar-collapsible].open>button>.vt-sidebar-demo-chevron{transform:rotate(180deg)}.vt-inline-033f2d93f8{width:20px;height:16px}.vt-inline-034359d7a8{width:0%}.vt-inline-0404038d40{width:28px;height:28px;border:2px solid hsl(var(--info-primary));border-radius:6px}.vt-inline-051ad07837{width:48px}.vt-inline-079407edad{animation-delay:.3s}.vt-inline-085726dcce{font-size:14px;font-weight:400;line-height:1.5;color:hsl(var(--mains-quaternary));font-family:"Inter",sans-serif}.vt-inline-0951e90987{height:400px}.vt-inline-09bcefcf9b{width:64px}.vt-inline-09c459775e{font-size:14px;font-weight:400;line-height:1.5}.vt-inline-0da05dd940{overflow:hidden}.vt-inline-132097ead4{font-size:16px;font-weight:400;line-height:1.6;color:hsl(var(--fg-disabled));margin-bottom:16px}.vt-inline-134e3c2fff{width:max-content}.vt-inline-13f675f320{height:360px}.vt-inline-1471ba77c4{width:28px;height:28px;border:2px solid hsl(var(--info-primary));border-radius:2px}.vt-inline-152e6f6b5b{width:40px}.vt-inline-16000cc0ae{width:100%}.vt-inline-1f93e2f5fb{width:4px}.vt-inline-23bf870d85{width:72px}.vt-inline-23f2fd6cdd{width:16px;height:48px;background:hsl(var(--info-primary)/0.3);border-radius:2px}.vt-inline-264b407beb{width:67%}.vt-inline-277a169064{font-size:14px;font-weight:500;line-height:1.4;margin-bottom:12px}.vt-inline-2e3809aff8{width:20px;height:20px;border-radius:4px;background:hsl(var(--grey-800))}.vt-inline-33b79c2a1c{font-size:48px;font-weight:800;letter-spacing:-0.02em;line-height:1.1}.vt-inline-393bda6e03{height:320px}.vt-inline-3a484bbae1{width:20px;height:8px}.vt-inline-3ac612ca5a{height:60%}.vt-inline-3ad30fb135{width:16px;height:24px;background:hsl(var(--info-primary)/0.3);border-radius:2px}.vt-inline-3b6c45db71{font-size:20px;font-weight:800;letter-spacing:-0.02em;line-height:1.2;font-family:"Inter",sans-serif}.vt-inline-3ec96985f7{width:40%}.vt-inline-40002a7c05{font-size:24px;font-weight:700;letter-spacing:-0.01em;line-height:1.25;margin-bottom:8px}.vt-inline-4396f59dc1{font-size:20px;font-weight:600;letter-spacing:-0.01em;line-height:1.3}.vt-inline-44b108f16a{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--mains-quaternary));font-family:"Inter",sans-serif}.vt-inline-49b74b9afd{font-family:"Inter",sans-serif}.vt-inline-49c9406408{width:70%}.vt-inline-4ac1dc23f7{width:56px}.vt-inline-50ab3e468c{width:2px}.vt-inline-52a5914ae0{width:20px;height:20px;border-radius:4px;background:hsl(var(--blue-900))}.vt-inline-5acc4551b9{font-size:18px;font-weight:400;line-height:1.6}.vt-inline-5ca9b93416{width:85%}.vt-inline-5d1a114e4e{width:20px;height:20px;border-radius:4px;background:hsl(var(--grey-200))}.vt-inline-6268fbcf32{font-size:clamp(8rem,20vw,16rem)}.vt-inline-6528b2713f{width:30%}.vt-inline-66597ae33c{width:20px;height:20px;border-radius:4px;background:hsl(var(--grey-400))}.vt-inline-6757009252{font-size:11px;font-weight:600;letter-spacing:.06em;line-height:1.4;text-transform:uppercase;color:hsl(var(--fg-disabled))}.vt-inline-67e58e91ec{width:92%;background:hsl(var(--accents-blue))}.vt-inline-68da277b41{width:16px}.vt-inline-6974507855{width:600px}.vt-inline-6b1f0d9798{margin-top:4px}.vt-inline-6e4544473d{width:20px;height:20px;border-radius:4px;background:hsl(var(--blue-200))}.vt-inline-6f0d008055{animation-delay:.5s}.vt-inline-6ffb4c7f1c{width:20px;height:40px}.vt-inline-76d38837f7{font-size:24px;font-weight:700;letter-spacing:-0.01em;line-height:1.25}.vt-inline-77fad25d4d{width:24px}.vt-inline-7b6be8eb86{font-size:18px;font-weight:600;line-height:1.35}.vt-inline-7c076bc33f{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--fg-disabled));margin-bottom:8px}.vt-inline-7fc691584c{font-family:system-ui,sans-serif}.vt-inline-815f5e5040{width:20px;height:48px}.vt-inline-83b8e7afb8{width:20px}.vt-inline-853d287b2c{width:62%}.vt-inline-86d5a62908{width:60%}.vt-inline-89abf09ba1{width:288px}.vt-inline-8b767ad399{width:6px}.vt-inline-94b9d4a0ea{font-size:36px;font-weight:800;letter-spacing:-0.02em;line-height:1.15}.vt-inline-96f0de323d{width:20px;height:24px}.vt-inline-97eebb58d9{font-size:12px;font-weight:400;line-height:1.4;color:hsl(var(--fg-disabled))}.vt-inline-98959f35b1{width:12px}.vt-inline-990f101977{font-size:14px;font-weight:400;line-height:1.8;color:hsl(var(--fg-disabled));padding-left:20px;list-style:disc}.vt-inline-997131a05f{height:380px}.vt-inline-99fa4f924e{height:50%}.vt-inline-9a50b240ae{position:absolute;bottom:0;left:0;right:0}.vt-inline-9d162f2385{background:hsl(var(--info-primary)/0.1)}.vt-inline-9e2b4e9088{width:80%}.vt-inline-9f04c3a0b1{animation-delay:.45s}.vt-inline-9f10868e2b{width:8px}.vt-inline-9fbcc3feef{font-size:clamp(6rem,16vw,12rem)}.vt-inline-a2322f2a5b{font-weight:900}.vt-inline-a3c15d5ad2{width:20px;height:32px}.vt-inline-a76205b062{font-size:30px;font-weight:700;letter-spacing:-0.015em;line-height:1.2}.vt-inline-a93b570b5c{height:40%}.vt-inline-b1ce6b6a8d{width:16px;height:32px;background:hsl(var(--info-primary)/0.3);border-radius:2px}.vt-inline-b271ed4bf8{width:20px;height:20px;border-radius:4px;background:hsl(var(--grey-600))}.vt-inline-b45a0c621b{width:28px;height:28px;border:2px solid hsl(var(--info-primary));border-radius:9999px}.vt-inline-b616c1520f{width:20px;height:20px;border-radius:4px;background:hsl(var(--blue-500))}.vt-inline-c01b56d2ac{animation-delay:.2s}.vt-inline-c0783975c4{width:20px;height:2px}.vt-inline-c15b25bfc3{width:25%}.vt-inline-c311217ce1{width:75%}.vt-inline-c38e748a2c{gap:24px}.vt-inline-c741527ec2{padding:16px}.vt-inline-c8dc34bd64{cursor:grab}.vt-inline-ce68bff415{gap:12px}.vt-inline-d2969e9054{width:20px;height:4px}.vt-inline-d2c3be0324{animation-delay:.1s}.vt-inline-d3f64fb6b8{width:20%}.vt-inline-d4301260e4{background:hsl(var(--warning-primary)/0.1)}.vt-inline-d4f73fa0e1{animation-delay:.15s}.vt-inline-d6699032db{width:16px;height:16px;background:hsl(var(--info-primary)/0.3);border-radius:2px}.vt-inline-dabaad57fd{width:80px}.vt-inline-dbc0d681a2{width:96px}.vt-inline-dc0529dcea{left:calc(60% - 8px)}.vt-inline-dd96c4680c{width:42%;background:hsl(var(--accents-orange))}.vt-inline-df3a6b5ce8{position:fixed;z-index:2000;min-width:180px;pointer-events:none}.vt-inline-e17a83bd94{width:45%}.vt-inline-e324540ca9{width:20px;height:12px}.vt-inline-e48e5e9dd5{width:28px;height:28px;border:2px solid hsl(var(--info-primary));border-radius:12px}.vt-inline-e54a108cdd{max-height:0}.vt-inline-e6ac52fd79{width:20px;height:6px}.vt-inline-e706cba58e{max-height:240px;overflow-y:auto}.vt-inline-e73a22bd90{width:50%}.vt-inline-e85fbed417{clip-path:inset(0 50% 0 0)}.vt-inline-ee552ce15e{font-size:12px;font-weight:400;line-height:1.4;color:hsl(var(--fg-disabled));margin-top:16px}.vt-inline-ef1bb00708{font-size:16px;font-weight:600;line-height:1.4}.vt-inline-f13fab4c77{width:33%}.vt-inline-f15d978070{width:16px;height:8px;background:hsl(var(--info-primary)/0.3);border-radius:2px}.vt-inline-f17001c3cd{gap:8px}.vt-inline-f30ace800f{font-size:14px;font-weight:500;line-height:1.4}.vt-inline-f36cc98dba{width:16px;height:4px;background:hsl(var(--info-primary)/0.3);border-radius:2px}.vt-inline-fb93c57b2c{width:32px}.vt-inline-fd258489e4{width:20px;height:20px;border-radius:4px;background:hsl(var(--blue-600))}.vt-inline-fdbdc6ea16{width:20px;height:0px}.vt-inline-fe7a974f7c{height:300px}.vt-inline-ffb89c08d4{font-size:16px;font-weight:400;line-height:1.6}.vt-popover-content{position:absolute;z-index:50;background:hsl(var(--surfaces-surface));border:1px solid hsl(var(--border-default));border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);opacity:0;visibility:hidden;will-change:transform,opacity;transition:opacity .15s ease-out,transform .15s ease-out,visibility 0s .15s}.vt-popover-content.vt-open{opacity:1;visibility:visible;transition:opacity .15s ease-out,transform .15s ease-out,visibility 0s}.vt-popover-top{bottom:100%;left:50%;transform:translate(-50%, 10px);margin-bottom:8px}.vt-popover-top.vt-open{transform:translate(-50%, 0)}.vt-popover-bottom{top:100%;left:50%;transform:translate(-50%, -10px);margin-top:8px}.vt-popover-bottom.vt-open{transform:translate(-50%, 0)}.vt-popover-left{right:100%;top:50%;transform:translate(10px, -50%);margin-right:8px}.vt-popover-left.vt-open{transform:translate(0, -50%)}.vt-popover-right{left:100%;top:50%;transform:translate(-10px, -50%);margin-left:8px}.vt-popover-right.vt-open{transform:translate(0, -50%)}.vt-popover-bottom-start{top:100%;left:0;transform:translateY(-10px);margin-top:8px}.vt-popover-bottom-start.vt-open{transform:translateY(0)}.vt-command-item,.vt-combobox-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:var(--radius-lg);font-size:.875rem;color:hsl(var(--mains-secondary));cursor:pointer;user-select:none;transition:color .15s,background-color .15s}.vt-command-item:hover,.vt-command-item.vt-selected,.vt-combobox-item:hover,.vt-combobox-item.vt-selected{background:hsl(var(--surfaces-subtle));color:hsl(var(--mains-primary))}.vt-command-item[aria-disabled=true],.vt-combobox-item[aria-disabled=true]{opacity:.5;pointer-events:none}.vt-command-item.vt-command-danger,.vt-combobox-item.vt-command-danger{color:hsl(var(--error-primary))}.vt-command-item.vt-command-danger:hover,.vt-combobox-item.vt-command-danger:hover{color:hsl(var(--error-primary));background:hsl(var(--error-background))}.vt-dropdown-menu{position:absolute;z-index:50;min-width:8rem;background:hsl(var(--surfaces-surface));border:1px solid hsl(var(--border-default));border-radius:var(--radius-xl);padding:.25rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .15s ease-out,transform .15s ease-out,visibility 0s .15s}.vt-dropdown-menu.vt-open{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .15s ease-out,transform .15s ease-out,visibility 0s}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}