@flaier/core 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +41 -0
  3. package/dist/catalog.d.ts +1520 -0
  4. package/dist/code-node-sizing.d.ts +3 -0
  5. package/dist/components/Flaier.vue.d.ts +20 -0
  6. package/dist/components/FlaierPanel.vue.d.ts +10 -0
  7. package/dist/components/controls/TimelineControls.vue.d.ts +31 -0
  8. package/dist/components/edges/ArchitectureSmoothEdge.vue.d.ts +6 -0
  9. package/dist/components/nodes/ArchitectureNode.vue.d.ts +24 -0
  10. package/dist/components/nodes/CodeNode.vue.d.ts +28 -0
  11. package/dist/components/nodes/DecisionNode.vue.d.ts +12 -0
  12. package/dist/components/nodes/DescriptionNode.vue.d.ts +11 -0
  13. package/dist/components/nodes/ErrorNode.vue.d.ts +14 -0
  14. package/dist/components/nodes/LinkNode.vue.d.ts +12 -0
  15. package/dist/components/nodes/NodeSourceAnchor.vue.d.ts +6 -0
  16. package/dist/components/nodes/PayloadNode.vue.d.ts +17 -0
  17. package/dist/components/nodes/TriggerNode.vue.d.ts +14 -0
  18. package/dist/components/renderer/FlowTimelineRenderer.vue.d.ts +33 -0
  19. package/dist/composables/useDiagramExport.d.ts +15 -0
  20. package/dist/composables/useFlaierFullscreen.d.ts +5 -0
  21. package/dist/composables/useFlaierRuntime.d.ts +1 -0
  22. package/dist/composables/useShiki.d.ts +10 -0
  23. package/dist/composables/useTimeline.d.ts +20 -0
  24. package/dist/context.d.ts +11 -0
  25. package/dist/custom-nodes.d.ts +11 -0
  26. package/dist/index.d.ts +13 -0
  27. package/dist/index.js +5680 -0
  28. package/dist/index.js.map +1 -0
  29. package/dist/index.unstyled.d.ts +12 -0
  30. package/dist/registry.d.ts +488 -0
  31. package/dist/style.css +2654 -0
  32. package/dist/twoslash.d.ts +10 -0
  33. package/dist/types.d.ts +291 -0
  34. package/package.json +75 -0
package/dist/style.css ADDED
@@ -0,0 +1,2654 @@
1
+ /*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
2
+ @layer properties;
3
+ @layer theme, base, components, utilities;
4
+ @layer theme {
5
+ :root, :host {
6
+ --font-sans: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
7
+ 'Noto Color Emoji';
8
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
9
+ monospace;
10
+ --color-red-100: oklch(93.6% 0.032 17.717);
11
+ --color-red-200: oklch(88.5% 0.062 18.334);
12
+ --color-red-300: oklch(80.8% 0.114 19.571);
13
+ --color-red-400: oklch(70.4% 0.191 22.216);
14
+ --color-red-500: oklch(63.7% 0.237 25.331);
15
+ --color-amber-200: oklch(92.4% 0.12 95.746);
16
+ --color-amber-400: oklch(82.8% 0.189 84.429);
17
+ --color-amber-500: oklch(76.9% 0.188 70.08);
18
+ --color-emerald-200: oklch(90.5% 0.093 164.15);
19
+ --color-emerald-400: oklch(76.5% 0.177 163.223);
20
+ --color-emerald-500: oklch(69.6% 0.17 162.48);
21
+ --color-cyan-500: oklch(71.5% 0.143 215.221);
22
+ --color-sky-400: oklch(74.6% 0.16 232.661);
23
+ --color-sky-500: oklch(68.5% 0.169 237.323);
24
+ --color-blue-200: oklch(88.2% 0.059 254.128);
25
+ --color-blue-400: oklch(70.7% 0.165 254.624);
26
+ --color-indigo-400: oklch(67.3% 0.182 276.935);
27
+ --color-indigo-500: oklch(58.5% 0.233 277.117);
28
+ --color-violet-500: oklch(60.6% 0.25 292.717);
29
+ --color-rose-400: oklch(71.2% 0.194 13.428);
30
+ --color-rose-500: oklch(64.5% 0.246 16.439);
31
+ --color-slate-300: oklch(86.9% 0.022 252.894);
32
+ --color-slate-400: oklch(70.4% 0.04 256.788);
33
+ --color-slate-500: oklch(55.4% 0.046 257.417);
34
+ --spacing: 0.25rem;
35
+ --text-xs: 0.75rem;
36
+ --text-xs--line-height: calc(1 / 0.75);
37
+ --text-sm: 0.875rem;
38
+ --text-sm--line-height: calc(1.25 / 0.875);
39
+ --font-weight-medium: 500;
40
+ --font-weight-semibold: 600;
41
+ --tracking-wide: 0.025em;
42
+ --tracking-wider: 0.05em;
43
+ --leading-snug: 1.375;
44
+ --leading-relaxed: 1.625;
45
+ --radius-md: 0.375rem;
46
+ --radius-lg: 0.5rem;
47
+ --radius-xl: 0.75rem;
48
+ --radius-2xl: 1rem;
49
+ --ease-out: cubic-bezier(0, 0, 0.2, 1);
50
+ --blur-md: 12px;
51
+ --blur-xl: 24px;
52
+ --default-transition-duration: 150ms;
53
+ --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
54
+ --color-border: oklch(0.25 0.005 260);
55
+ --color-background: oklch(0.098 0.005 260);
56
+ --color-foreground: oklch(0.93 0 0);
57
+ --color-card: oklch(0.145 0.006 260);
58
+ --color-muted: oklch(0.2 0.005 260);
59
+ --color-muted-foreground: oklch(0.55 0 0);
60
+ --color-primary: oklch(0.65 0.15 270);
61
+ }
62
+ }
63
+ @layer utilities {
64
+ .flaier {
65
+ .pointer-events-auto {
66
+ pointer-events: auto;
67
+ }
68
+ .pointer-events-none {
69
+ pointer-events: none;
70
+ }
71
+ .visible {
72
+ visibility: visible;
73
+ }
74
+ .absolute {
75
+ position: absolute;
76
+ }
77
+ .fixed {
78
+ position: fixed;
79
+ }
80
+ .relative {
81
+ position: relative;
82
+ }
83
+ .inset-0 {
84
+ inset: calc(var(--spacing) * 0);
85
+ }
86
+ .inset-x-0 {
87
+ inset-inline: calc(var(--spacing) * 0);
88
+ }
89
+ .inset-y-0 {
90
+ inset-block: calc(var(--spacing) * 0);
91
+ }
92
+ .start {
93
+ inset-inline-start: var(--spacing);
94
+ }
95
+ .end {
96
+ inset-inline-end: var(--spacing);
97
+ }
98
+ .top-1\/2 {
99
+ top: calc(1 / 2 * 100%);
100
+ }
101
+ .top-4 {
102
+ top: calc(var(--spacing) * 4);
103
+ }
104
+ .top-16 {
105
+ top: calc(var(--spacing) * 16);
106
+ }
107
+ .top-\[calc\(100\%\+8px\)\] {
108
+ top: calc(100% + 8px);
109
+ }
110
+ .right-0 {
111
+ right: calc(var(--spacing) * 0);
112
+ }
113
+ .right-4 {
114
+ right: calc(var(--spacing) * 4);
115
+ }
116
+ .right-full {
117
+ right: 100%;
118
+ }
119
+ .bottom-2 {
120
+ bottom: calc(var(--spacing) * 2);
121
+ }
122
+ .bottom-3 {
123
+ bottom: calc(var(--spacing) * 3);
124
+ }
125
+ .left-4 {
126
+ left: calc(var(--spacing) * 4);
127
+ }
128
+ .z-0 {
129
+ z-index: 0;
130
+ }
131
+ .z-20 {
132
+ z-index: 20;
133
+ }
134
+ .z-30 {
135
+ z-index: 30;
136
+ }
137
+ .z-\[10\] {
138
+ z-index: 10;
139
+ }
140
+ .container {
141
+ width: 100%;
142
+ @media (width >= 40rem) {
143
+ max-width: 40rem;
144
+ }
145
+ @media (width >= 48rem) {
146
+ max-width: 48rem;
147
+ }
148
+ @media (width >= 64rem) {
149
+ max-width: 64rem;
150
+ }
151
+ @media (width >= 80rem) {
152
+ max-width: 80rem;
153
+ }
154
+ @media (width >= 96rem) {
155
+ max-width: 96rem;
156
+ }
157
+ }
158
+ .mt-0\.5 {
159
+ margin-top: calc(var(--spacing) * 0.5);
160
+ }
161
+ .mt-1 {
162
+ margin-top: calc(var(--spacing) * 1);
163
+ }
164
+ .mt-1\.5 {
165
+ margin-top: calc(var(--spacing) * 1.5);
166
+ }
167
+ .mt-2 {
168
+ margin-top: calc(var(--spacing) * 2);
169
+ }
170
+ .mb-1 {
171
+ margin-bottom: calc(var(--spacing) * 1);
172
+ }
173
+ .mb-1\.5 {
174
+ margin-bottom: calc(var(--spacing) * 1.5);
175
+ }
176
+ .mb-2 {
177
+ margin-bottom: calc(var(--spacing) * 2);
178
+ }
179
+ .block {
180
+ display: block;
181
+ }
182
+ .flex {
183
+ display: flex;
184
+ }
185
+ .hidden {
186
+ display: none;
187
+ }
188
+ .inline-block {
189
+ display: inline-block;
190
+ }
191
+ .inline-flex {
192
+ display: inline-flex;
193
+ }
194
+ .h-1 {
195
+ height: calc(var(--spacing) * 1);
196
+ }
197
+ .h-1\.5 {
198
+ height: calc(var(--spacing) * 1.5);
199
+ }
200
+ .h-2 {
201
+ height: calc(var(--spacing) * 2);
202
+ }
203
+ .h-2\.5 {
204
+ height: calc(var(--spacing) * 2.5);
205
+ }
206
+ .h-3 {
207
+ height: calc(var(--spacing) * 3);
208
+ }
209
+ .h-3\.5 {
210
+ height: calc(var(--spacing) * 3.5);
211
+ }
212
+ .h-4 {
213
+ height: calc(var(--spacing) * 4);
214
+ }
215
+ .h-5 {
216
+ height: calc(var(--spacing) * 5);
217
+ }
218
+ .h-8 {
219
+ height: calc(var(--spacing) * 8);
220
+ }
221
+ .h-9 {
222
+ height: calc(var(--spacing) * 9);
223
+ }
224
+ .h-20 {
225
+ height: calc(var(--spacing) * 20);
226
+ }
227
+ .h-full {
228
+ height: 100%;
229
+ }
230
+ .max-h-\[120px\] {
231
+ max-height: 120px;
232
+ }
233
+ .max-h-\[132px\] {
234
+ max-height: 132px;
235
+ }
236
+ .max-h-\[220px\] {
237
+ max-height: 220px;
238
+ }
239
+ .min-h-0 {
240
+ min-height: calc(var(--spacing) * 0);
241
+ }
242
+ .min-h-\[320px\] {
243
+ min-height: 320px;
244
+ }
245
+ .min-h-full {
246
+ min-height: 100%;
247
+ }
248
+ .w-1\.5 {
249
+ width: calc(var(--spacing) * 1.5);
250
+ }
251
+ .w-2 {
252
+ width: calc(var(--spacing) * 2);
253
+ }
254
+ .w-2\.5 {
255
+ width: calc(var(--spacing) * 2.5);
256
+ }
257
+ .w-3 {
258
+ width: calc(var(--spacing) * 3);
259
+ }
260
+ .w-3\.5 {
261
+ width: calc(var(--spacing) * 3.5);
262
+ }
263
+ .w-4 {
264
+ width: calc(var(--spacing) * 4);
265
+ }
266
+ .w-8 {
267
+ width: calc(var(--spacing) * 8);
268
+ }
269
+ .w-9 {
270
+ width: calc(var(--spacing) * 9);
271
+ }
272
+ .w-44 {
273
+ width: calc(var(--spacing) * 44);
274
+ }
275
+ .w-\[220px\] {
276
+ width: 220px;
277
+ }
278
+ .w-\[240px\] {
279
+ width: 240px;
280
+ }
281
+ .w-\[250px\] {
282
+ width: 250px;
283
+ }
284
+ .w-\[270px\] {
285
+ width: 270px;
286
+ }
287
+ .w-\[280px\] {
288
+ width: 280px;
289
+ }
290
+ .w-\[300px\] {
291
+ width: 300px;
292
+ }
293
+ .w-\[min\(90vw\,430px\)\] {
294
+ width: min(90vw, 430px);
295
+ }
296
+ .w-\[min\(92vw\,430px\)\] {
297
+ width: min(92vw, 430px);
298
+ }
299
+ .w-full {
300
+ width: 100%;
301
+ }
302
+ .w-px {
303
+ width: 1px;
304
+ }
305
+ .max-w-\[260px\] {
306
+ max-width: 260px;
307
+ }
308
+ .max-w-\[980px\] {
309
+ max-width: 980px;
310
+ }
311
+ .max-w-full {
312
+ max-width: 100%;
313
+ }
314
+ .min-w-0 {
315
+ min-width: calc(var(--spacing) * 0);
316
+ }
317
+ .min-w-4 {
318
+ min-width: calc(var(--spacing) * 4);
319
+ }
320
+ .min-w-8 {
321
+ min-width: calc(var(--spacing) * 8);
322
+ }
323
+ .flex-1 {
324
+ flex: 1;
325
+ }
326
+ .shrink-0 {
327
+ flex-shrink: 0;
328
+ }
329
+ .translate-x-px {
330
+ --tw-translate-x: 1px;
331
+ translate: var(--tw-translate-x) var(--tw-translate-y);
332
+ }
333
+ .-translate-y-1\/2 {
334
+ --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
335
+ translate: var(--tw-translate-x) var(--tw-translate-y);
336
+ }
337
+ .rotate-180 {
338
+ rotate: 180deg;
339
+ }
340
+ .transform {
341
+ transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
342
+ }
343
+ .cursor-default {
344
+ cursor: default;
345
+ }
346
+ .cursor-pointer {
347
+ cursor: pointer;
348
+ }
349
+ .flex-col {
350
+ flex-direction: column;
351
+ }
352
+ .flex-wrap {
353
+ flex-wrap: wrap;
354
+ }
355
+ .items-center {
356
+ align-items: center;
357
+ }
358
+ .items-end {
359
+ align-items: flex-end;
360
+ }
361
+ .items-start {
362
+ align-items: flex-start;
363
+ }
364
+ .justify-between {
365
+ justify-content: space-between;
366
+ }
367
+ .justify-center {
368
+ justify-content: center;
369
+ }
370
+ .gap-1 {
371
+ gap: calc(var(--spacing) * 1);
372
+ }
373
+ .gap-1\.5 {
374
+ gap: calc(var(--spacing) * 1.5);
375
+ }
376
+ .gap-2 {
377
+ gap: calc(var(--spacing) * 2);
378
+ }
379
+ .gap-2\.5 {
380
+ gap: calc(var(--spacing) * 2.5);
381
+ }
382
+ .gap-3 {
383
+ gap: calc(var(--spacing) * 3);
384
+ }
385
+ .space-y-0\.5 {
386
+ :where(& > :not(:last-child)) {
387
+ --tw-space-y-reverse: 0;
388
+ margin-block-start: calc(calc(var(--spacing) * 0.5) * var(--tw-space-y-reverse));
389
+ margin-block-end: calc(calc(var(--spacing) * 0.5) * calc(1 - var(--tw-space-y-reverse)));
390
+ }
391
+ }
392
+ .space-y-1 {
393
+ :where(& > :not(:last-child)) {
394
+ --tw-space-y-reverse: 0;
395
+ margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
396
+ margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
397
+ }
398
+ }
399
+ .space-y-2 {
400
+ :where(& > :not(:last-child)) {
401
+ --tw-space-y-reverse: 0;
402
+ margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
403
+ margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
404
+ }
405
+ }
406
+ .truncate {
407
+ overflow: hidden;
408
+ text-overflow: ellipsis;
409
+ white-space: nowrap;
410
+ }
411
+ .overflow-auto {
412
+ overflow: auto;
413
+ }
414
+ .overflow-hidden {
415
+ overflow: hidden;
416
+ }
417
+ .overflow-visible {
418
+ overflow: visible;
419
+ }
420
+ .overflow-x-auto {
421
+ overflow-x: auto;
422
+ }
423
+ .overflow-x-hidden {
424
+ overflow-x: hidden;
425
+ }
426
+ .overflow-y-auto {
427
+ overflow-y: auto;
428
+ }
429
+ .rounded {
430
+ border-radius: 0.25rem;
431
+ }
432
+ .rounded-2xl {
433
+ border-radius: var(--radius-2xl);
434
+ }
435
+ .rounded-full {
436
+ border-radius: calc(infinity * 1px);
437
+ }
438
+ .rounded-lg {
439
+ border-radius: var(--radius-lg);
440
+ }
441
+ .rounded-md {
442
+ border-radius: var(--radius-md);
443
+ }
444
+ .rounded-xl {
445
+ border-radius: var(--radius-xl);
446
+ }
447
+ .rounded-l-lg {
448
+ border-top-left-radius: var(--radius-lg);
449
+ border-bottom-left-radius: var(--radius-lg);
450
+ }
451
+ .rounded-r-none {
452
+ border-top-right-radius: 0;
453
+ border-bottom-right-radius: 0;
454
+ }
455
+ .border {
456
+ border-style: var(--tw-border-style);
457
+ border-width: 1px;
458
+ }
459
+ .border-t {
460
+ border-top-style: var(--tw-border-style);
461
+ border-top-width: 1px;
462
+ }
463
+ .border-r-0 {
464
+ border-right-style: var(--tw-border-style);
465
+ border-right-width: 0px;
466
+ }
467
+ .border-b {
468
+ border-bottom-style: var(--tw-border-style);
469
+ border-bottom-width: 1px;
470
+ }
471
+ .border-dashed {
472
+ --tw-border-style: dashed;
473
+ border-style: dashed;
474
+ }
475
+ .border-amber-400\/35 {
476
+ border-color: color-mix(in srgb, oklch(82.8% 0.189 84.429) 35%, transparent);
477
+ @supports (color: color-mix(in lab, red, red)) {
478
+ border-color: color-mix(in oklab, var(--color-amber-400) 35%, transparent);
479
+ }
480
+ }
481
+ .border-amber-500\/35 {
482
+ border-color: color-mix(in srgb, oklch(76.9% 0.188 70.08) 35%, transparent);
483
+ @supports (color: color-mix(in lab, red, red)) {
484
+ border-color: color-mix(in oklab, var(--color-amber-500) 35%, transparent);
485
+ }
486
+ }
487
+ .border-amber-500\/45 {
488
+ border-color: color-mix(in srgb, oklch(76.9% 0.188 70.08) 45%, transparent);
489
+ @supports (color: color-mix(in lab, red, red)) {
490
+ border-color: color-mix(in oklab, var(--color-amber-500) 45%, transparent);
491
+ }
492
+ }
493
+ .border-blue-400\/35 {
494
+ border-color: color-mix(in srgb, oklch(70.7% 0.165 254.624) 35%, transparent);
495
+ @supports (color: color-mix(in lab, red, red)) {
496
+ border-color: color-mix(in oklab, var(--color-blue-400) 35%, transparent);
497
+ }
498
+ }
499
+ .border-border {
500
+ border-color: var(--color-border);
501
+ }
502
+ .border-border\/50 {
503
+ border-color: color-mix(in srgb, oklch(0.25 0.005 260) 50%, transparent);
504
+ @supports (color: color-mix(in lab, red, red)) {
505
+ border-color: color-mix(in oklab, var(--color-border) 50%, transparent);
506
+ }
507
+ }
508
+ .border-border\/60 {
509
+ border-color: color-mix(in srgb, oklch(0.25 0.005 260) 60%, transparent);
510
+ @supports (color: color-mix(in lab, red, red)) {
511
+ border-color: color-mix(in oklab, var(--color-border) 60%, transparent);
512
+ }
513
+ }
514
+ .border-border\/65 {
515
+ border-color: color-mix(in srgb, oklch(0.25 0.005 260) 65%, transparent);
516
+ @supports (color: color-mix(in lab, red, red)) {
517
+ border-color: color-mix(in oklab, var(--color-border) 65%, transparent);
518
+ }
519
+ }
520
+ .border-border\/70 {
521
+ border-color: color-mix(in srgb, oklch(0.25 0.005 260) 70%, transparent);
522
+ @supports (color: color-mix(in lab, red, red)) {
523
+ border-color: color-mix(in oklab, var(--color-border) 70%, transparent);
524
+ }
525
+ }
526
+ .border-cyan-500\/35 {
527
+ border-color: color-mix(in srgb, oklch(71.5% 0.143 215.221) 35%, transparent);
528
+ @supports (color: color-mix(in lab, red, red)) {
529
+ border-color: color-mix(in oklab, var(--color-cyan-500) 35%, transparent);
530
+ }
531
+ }
532
+ .border-cyan-500\/45 {
533
+ border-color: color-mix(in srgb, oklch(71.5% 0.143 215.221) 45%, transparent);
534
+ @supports (color: color-mix(in lab, red, red)) {
535
+ border-color: color-mix(in oklab, var(--color-cyan-500) 45%, transparent);
536
+ }
537
+ }
538
+ .border-emerald-400\/35 {
539
+ border-color: color-mix(in srgb, oklch(76.5% 0.177 163.223) 35%, transparent);
540
+ @supports (color: color-mix(in lab, red, red)) {
541
+ border-color: color-mix(in oklab, var(--color-emerald-400) 35%, transparent);
542
+ }
543
+ }
544
+ .border-emerald-500\/35 {
545
+ border-color: color-mix(in srgb, oklch(69.6% 0.17 162.48) 35%, transparent);
546
+ @supports (color: color-mix(in lab, red, red)) {
547
+ border-color: color-mix(in oklab, var(--color-emerald-500) 35%, transparent);
548
+ }
549
+ }
550
+ .border-emerald-500\/40 {
551
+ border-color: color-mix(in srgb, oklch(69.6% 0.17 162.48) 40%, transparent);
552
+ @supports (color: color-mix(in lab, red, red)) {
553
+ border-color: color-mix(in oklab, var(--color-emerald-500) 40%, transparent);
554
+ }
555
+ }
556
+ .border-emerald-500\/45 {
557
+ border-color: color-mix(in srgb, oklch(69.6% 0.17 162.48) 45%, transparent);
558
+ @supports (color: color-mix(in lab, red, red)) {
559
+ border-color: color-mix(in oklab, var(--color-emerald-500) 45%, transparent);
560
+ }
561
+ }
562
+ .border-foreground\/70 {
563
+ border-color: color-mix(in srgb, oklch(0.93 0 0) 70%, transparent);
564
+ @supports (color: color-mix(in lab, red, red)) {
565
+ border-color: color-mix(in oklab, var(--color-foreground) 70%, transparent);
566
+ }
567
+ }
568
+ .border-indigo-500\/35 {
569
+ border-color: color-mix(in srgb, oklch(58.5% 0.233 277.117) 35%, transparent);
570
+ @supports (color: color-mix(in lab, red, red)) {
571
+ border-color: color-mix(in oklab, var(--color-indigo-500) 35%, transparent);
572
+ }
573
+ }
574
+ .border-indigo-500\/45 {
575
+ border-color: color-mix(in srgb, oklch(58.5% 0.233 277.117) 45%, transparent);
576
+ @supports (color: color-mix(in lab, red, red)) {
577
+ border-color: color-mix(in oklab, var(--color-indigo-500) 45%, transparent);
578
+ }
579
+ }
580
+ .border-primary\/30 {
581
+ border-color: color-mix(in srgb, oklch(0.65 0.15 270) 30%, transparent);
582
+ @supports (color: color-mix(in lab, red, red)) {
583
+ border-color: color-mix(in oklab, var(--color-primary) 30%, transparent);
584
+ }
585
+ }
586
+ .border-primary\/35 {
587
+ border-color: color-mix(in srgb, oklch(0.65 0.15 270) 35%, transparent);
588
+ @supports (color: color-mix(in lab, red, red)) {
589
+ border-color: color-mix(in oklab, var(--color-primary) 35%, transparent);
590
+ }
591
+ }
592
+ .border-red-400\/35 {
593
+ border-color: color-mix(in srgb, oklch(70.4% 0.191 22.216) 35%, transparent);
594
+ @supports (color: color-mix(in lab, red, red)) {
595
+ border-color: color-mix(in oklab, var(--color-red-400) 35%, transparent);
596
+ }
597
+ }
598
+ .border-red-400\/45 {
599
+ border-color: color-mix(in srgb, oklch(70.4% 0.191 22.216) 45%, transparent);
600
+ @supports (color: color-mix(in lab, red, red)) {
601
+ border-color: color-mix(in oklab, var(--color-red-400) 45%, transparent);
602
+ }
603
+ }
604
+ .border-red-500\/45 {
605
+ border-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 45%, transparent);
606
+ @supports (color: color-mix(in lab, red, red)) {
607
+ border-color: color-mix(in oklab, var(--color-red-500) 45%, transparent);
608
+ }
609
+ }
610
+ .border-rose-500\/35 {
611
+ border-color: color-mix(in srgb, oklch(64.5% 0.246 16.439) 35%, transparent);
612
+ @supports (color: color-mix(in lab, red, red)) {
613
+ border-color: color-mix(in oklab, var(--color-rose-500) 35%, transparent);
614
+ }
615
+ }
616
+ .border-rose-500\/45 {
617
+ border-color: color-mix(in srgb, oklch(64.5% 0.246 16.439) 45%, transparent);
618
+ @supports (color: color-mix(in lab, red, red)) {
619
+ border-color: color-mix(in oklab, var(--color-rose-500) 45%, transparent);
620
+ }
621
+ }
622
+ .border-sky-500\/35 {
623
+ border-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 35%, transparent);
624
+ @supports (color: color-mix(in lab, red, red)) {
625
+ border-color: color-mix(in oklab, var(--color-sky-500) 35%, transparent);
626
+ }
627
+ }
628
+ .border-sky-500\/45 {
629
+ border-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 45%, transparent);
630
+ @supports (color: color-mix(in lab, red, red)) {
631
+ border-color: color-mix(in oklab, var(--color-sky-500) 45%, transparent);
632
+ }
633
+ }
634
+ .border-slate-400\/35 {
635
+ border-color: color-mix(in srgb, oklch(70.4% 0.04 256.788) 35%, transparent);
636
+ @supports (color: color-mix(in lab, red, red)) {
637
+ border-color: color-mix(in oklab, var(--color-slate-400) 35%, transparent);
638
+ }
639
+ }
640
+ .border-slate-500\/35 {
641
+ border-color: color-mix(in srgb, oklch(55.4% 0.046 257.417) 35%, transparent);
642
+ @supports (color: color-mix(in lab, red, red)) {
643
+ border-color: color-mix(in oklab, var(--color-slate-500) 35%, transparent);
644
+ }
645
+ }
646
+ .border-slate-500\/45 {
647
+ border-color: color-mix(in srgb, oklch(55.4% 0.046 257.417) 45%, transparent);
648
+ @supports (color: color-mix(in lab, red, red)) {
649
+ border-color: color-mix(in oklab, var(--color-slate-500) 45%, transparent);
650
+ }
651
+ }
652
+ .border-violet-500\/45 {
653
+ border-color: color-mix(in srgb, oklch(60.6% 0.25 292.717) 45%, transparent);
654
+ @supports (color: color-mix(in lab, red, red)) {
655
+ border-color: color-mix(in oklab, var(--color-violet-500) 45%, transparent);
656
+ }
657
+ }
658
+ .\!bg-transparent {
659
+ background-color: transparent !important;
660
+ }
661
+ .bg-amber-400\/12 {
662
+ background-color: color-mix(in srgb, oklch(82.8% 0.189 84.429) 12%, transparent);
663
+ @supports (color: color-mix(in lab, red, red)) {
664
+ background-color: color-mix(in oklab, var(--color-amber-400) 12%, transparent);
665
+ }
666
+ }
667
+ .bg-amber-500\/10 {
668
+ background-color: color-mix(in srgb, oklch(76.9% 0.188 70.08) 10%, transparent);
669
+ @supports (color: color-mix(in lab, red, red)) {
670
+ background-color: color-mix(in oklab, var(--color-amber-500) 10%, transparent);
671
+ }
672
+ }
673
+ .bg-amber-500\/12 {
674
+ background-color: color-mix(in srgb, oklch(76.9% 0.188 70.08) 12%, transparent);
675
+ @supports (color: color-mix(in lab, red, red)) {
676
+ background-color: color-mix(in oklab, var(--color-amber-500) 12%, transparent);
677
+ }
678
+ }
679
+ .bg-background {
680
+ background-color: var(--color-background);
681
+ }
682
+ .bg-background\/65 {
683
+ background-color: color-mix(in srgb, oklch(0.098 0.005 260) 65%, transparent);
684
+ @supports (color: color-mix(in lab, red, red)) {
685
+ background-color: color-mix(in oklab, var(--color-background) 65%, transparent);
686
+ }
687
+ }
688
+ .bg-background\/70 {
689
+ background-color: color-mix(in srgb, oklch(0.098 0.005 260) 70%, transparent);
690
+ @supports (color: color-mix(in lab, red, red)) {
691
+ background-color: color-mix(in oklab, var(--color-background) 70%, transparent);
692
+ }
693
+ }
694
+ .bg-blue-400\/12 {
695
+ background-color: color-mix(in srgb, oklch(70.7% 0.165 254.624) 12%, transparent);
696
+ @supports (color: color-mix(in lab, red, red)) {
697
+ background-color: color-mix(in oklab, var(--color-blue-400) 12%, transparent);
698
+ }
699
+ }
700
+ .bg-border\/60 {
701
+ background-color: color-mix(in srgb, oklch(0.25 0.005 260) 60%, transparent);
702
+ @supports (color: color-mix(in lab, red, red)) {
703
+ background-color: color-mix(in oklab, var(--color-border) 60%, transparent);
704
+ }
705
+ }
706
+ .bg-card {
707
+ background-color: var(--color-card);
708
+ }
709
+ .bg-card\/35 {
710
+ background-color: color-mix(in srgb, oklch(0.145 0.006 260) 35%, transparent);
711
+ @supports (color: color-mix(in lab, red, red)) {
712
+ background-color: color-mix(in oklab, var(--color-card) 35%, transparent);
713
+ }
714
+ }
715
+ .bg-card\/80 {
716
+ background-color: color-mix(in srgb, oklch(0.145 0.006 260) 80%, transparent);
717
+ @supports (color: color-mix(in lab, red, red)) {
718
+ background-color: color-mix(in oklab, var(--color-card) 80%, transparent);
719
+ }
720
+ }
721
+ .bg-card\/85 {
722
+ background-color: color-mix(in srgb, oklch(0.145 0.006 260) 85%, transparent);
723
+ @supports (color: color-mix(in lab, red, red)) {
724
+ background-color: color-mix(in oklab, var(--color-card) 85%, transparent);
725
+ }
726
+ }
727
+ .bg-card\/95 {
728
+ background-color: color-mix(in srgb, oklch(0.145 0.006 260) 95%, transparent);
729
+ @supports (color: color-mix(in lab, red, red)) {
730
+ background-color: color-mix(in oklab, var(--color-card) 95%, transparent);
731
+ }
732
+ }
733
+ .bg-cyan-500\/12 {
734
+ background-color: color-mix(in srgb, oklch(71.5% 0.143 215.221) 12%, transparent);
735
+ @supports (color: color-mix(in lab, red, red)) {
736
+ background-color: color-mix(in oklab, var(--color-cyan-500) 12%, transparent);
737
+ }
738
+ }
739
+ .bg-emerald-400\/12 {
740
+ background-color: color-mix(in srgb, oklch(76.5% 0.177 163.223) 12%, transparent);
741
+ @supports (color: color-mix(in lab, red, red)) {
742
+ background-color: color-mix(in oklab, var(--color-emerald-400) 12%, transparent);
743
+ }
744
+ }
745
+ .bg-emerald-500\/10 {
746
+ background-color: color-mix(in srgb, oklch(69.6% 0.17 162.48) 10%, transparent);
747
+ @supports (color: color-mix(in lab, red, red)) {
748
+ background-color: color-mix(in oklab, var(--color-emerald-500) 10%, transparent);
749
+ }
750
+ }
751
+ .bg-emerald-500\/12 {
752
+ background-color: color-mix(in srgb, oklch(69.6% 0.17 162.48) 12%, transparent);
753
+ @supports (color: color-mix(in lab, red, red)) {
754
+ background-color: color-mix(in oklab, var(--color-emerald-500) 12%, transparent);
755
+ }
756
+ }
757
+ .bg-foreground {
758
+ background-color: var(--color-foreground);
759
+ }
760
+ .bg-foreground\/10 {
761
+ background-color: color-mix(in srgb, oklch(0.93 0 0) 10%, transparent);
762
+ @supports (color: color-mix(in lab, red, red)) {
763
+ background-color: color-mix(in oklab, var(--color-foreground) 10%, transparent);
764
+ }
765
+ }
766
+ .bg-indigo-500\/12 {
767
+ background-color: color-mix(in srgb, oklch(58.5% 0.233 277.117) 12%, transparent);
768
+ @supports (color: color-mix(in lab, red, red)) {
769
+ background-color: color-mix(in oklab, var(--color-indigo-500) 12%, transparent);
770
+ }
771
+ }
772
+ .bg-muted-foreground\/20 {
773
+ background-color: color-mix(in srgb, oklch(0.55 0 0) 20%, transparent);
774
+ @supports (color: color-mix(in lab, red, red)) {
775
+ background-color: color-mix(in oklab, var(--color-muted-foreground) 20%, transparent);
776
+ }
777
+ }
778
+ .bg-muted-foreground\/50 {
779
+ background-color: color-mix(in srgb, oklch(0.55 0 0) 50%, transparent);
780
+ @supports (color: color-mix(in lab, red, red)) {
781
+ background-color: color-mix(in oklab, var(--color-muted-foreground) 50%, transparent);
782
+ }
783
+ }
784
+ .bg-muted\/20 {
785
+ background-color: color-mix(in srgb, oklch(0.2 0.005 260) 20%, transparent);
786
+ @supports (color: color-mix(in lab, red, red)) {
787
+ background-color: color-mix(in oklab, var(--color-muted) 20%, transparent);
788
+ }
789
+ }
790
+ .bg-muted\/25 {
791
+ background-color: color-mix(in srgb, oklch(0.2 0.005 260) 25%, transparent);
792
+ @supports (color: color-mix(in lab, red, red)) {
793
+ background-color: color-mix(in oklab, var(--color-muted) 25%, transparent);
794
+ }
795
+ }
796
+ .bg-muted\/30 {
797
+ background-color: color-mix(in srgb, oklch(0.2 0.005 260) 30%, transparent);
798
+ @supports (color: color-mix(in lab, red, red)) {
799
+ background-color: color-mix(in oklab, var(--color-muted) 30%, transparent);
800
+ }
801
+ }
802
+ .bg-muted\/45 {
803
+ background-color: color-mix(in srgb, oklch(0.2 0.005 260) 45%, transparent);
804
+ @supports (color: color-mix(in lab, red, red)) {
805
+ background-color: color-mix(in oklab, var(--color-muted) 45%, transparent);
806
+ }
807
+ }
808
+ .bg-muted\/70 {
809
+ background-color: color-mix(in srgb, oklch(0.2 0.005 260) 70%, transparent);
810
+ @supports (color: color-mix(in lab, red, red)) {
811
+ background-color: color-mix(in oklab, var(--color-muted) 70%, transparent);
812
+ }
813
+ }
814
+ .bg-primary\/8 {
815
+ background-color: color-mix(in srgb, oklch(0.65 0.15 270) 8%, transparent);
816
+ @supports (color: color-mix(in lab, red, red)) {
817
+ background-color: color-mix(in oklab, var(--color-primary) 8%, transparent);
818
+ }
819
+ }
820
+ .bg-primary\/10 {
821
+ background-color: color-mix(in srgb, oklch(0.65 0.15 270) 10%, transparent);
822
+ @supports (color: color-mix(in lab, red, red)) {
823
+ background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
824
+ }
825
+ }
826
+ .bg-primary\/14 {
827
+ background-color: color-mix(in srgb, oklch(0.65 0.15 270) 14%, transparent);
828
+ @supports (color: color-mix(in lab, red, red)) {
829
+ background-color: color-mix(in oklab, var(--color-primary) 14%, transparent);
830
+ }
831
+ }
832
+ .bg-red-400\/10 {
833
+ background-color: color-mix(in srgb, oklch(70.4% 0.191 22.216) 10%, transparent);
834
+ @supports (color: color-mix(in lab, red, red)) {
835
+ background-color: color-mix(in oklab, var(--color-red-400) 10%, transparent);
836
+ }
837
+ }
838
+ .bg-red-400\/12 {
839
+ background-color: color-mix(in srgb, oklch(70.4% 0.191 22.216) 12%, transparent);
840
+ @supports (color: color-mix(in lab, red, red)) {
841
+ background-color: color-mix(in oklab, var(--color-red-400) 12%, transparent);
842
+ }
843
+ }
844
+ .bg-red-400\/18 {
845
+ background-color: color-mix(in srgb, oklch(70.4% 0.191 22.216) 18%, transparent);
846
+ @supports (color: color-mix(in lab, red, red)) {
847
+ background-color: color-mix(in oklab, var(--color-red-400) 18%, transparent);
848
+ }
849
+ }
850
+ .bg-red-500\/10 {
851
+ background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 10%, transparent);
852
+ @supports (color: color-mix(in lab, red, red)) {
853
+ background-color: color-mix(in oklab, var(--color-red-500) 10%, transparent);
854
+ }
855
+ }
856
+ .bg-red-500\/12 {
857
+ background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 12%, transparent);
858
+ @supports (color: color-mix(in lab, red, red)) {
859
+ background-color: color-mix(in oklab, var(--color-red-500) 12%, transparent);
860
+ }
861
+ }
862
+ .bg-rose-500\/12 {
863
+ background-color: color-mix(in srgb, oklch(64.5% 0.246 16.439) 12%, transparent);
864
+ @supports (color: color-mix(in lab, red, red)) {
865
+ background-color: color-mix(in oklab, var(--color-rose-500) 12%, transparent);
866
+ }
867
+ }
868
+ .bg-sky-500\/10 {
869
+ background-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 10%, transparent);
870
+ @supports (color: color-mix(in lab, red, red)) {
871
+ background-color: color-mix(in oklab, var(--color-sky-500) 10%, transparent);
872
+ }
873
+ }
874
+ .bg-sky-500\/12 {
875
+ background-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 12%, transparent);
876
+ @supports (color: color-mix(in lab, red, red)) {
877
+ background-color: color-mix(in oklab, var(--color-sky-500) 12%, transparent);
878
+ }
879
+ }
880
+ .bg-slate-400\/12 {
881
+ background-color: color-mix(in srgb, oklch(70.4% 0.04 256.788) 12%, transparent);
882
+ @supports (color: color-mix(in lab, red, red)) {
883
+ background-color: color-mix(in oklab, var(--color-slate-400) 12%, transparent);
884
+ }
885
+ }
886
+ .bg-slate-500\/12 {
887
+ background-color: color-mix(in srgb, oklch(55.4% 0.046 257.417) 12%, transparent);
888
+ @supports (color: color-mix(in lab, red, red)) {
889
+ background-color: color-mix(in oklab, var(--color-slate-500) 12%, transparent);
890
+ }
891
+ }
892
+ .bg-violet-500\/10 {
893
+ background-color: color-mix(in srgb, oklch(60.6% 0.25 292.717) 10%, transparent);
894
+ @supports (color: color-mix(in lab, red, red)) {
895
+ background-color: color-mix(in oklab, var(--color-violet-500) 10%, transparent);
896
+ }
897
+ }
898
+ .bg-gradient-to-b {
899
+ --tw-gradient-position: to bottom in oklab;
900
+ background-image: linear-gradient(var(--tw-gradient-stops));
901
+ }
902
+ .from-card\/95 {
903
+ --tw-gradient-from: color-mix(in srgb, oklch(0.145 0.006 260) 95%, transparent);
904
+ @supports (color: color-mix(in lab, red, red)) {
905
+ --tw-gradient-from: color-mix(in oklab, var(--color-card) 95%, transparent);
906
+ }
907
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
908
+ }
909
+ .via-card\/88 {
910
+ --tw-gradient-via: color-mix(in srgb, oklch(0.145 0.006 260) 88%, transparent);
911
+ @supports (color: color-mix(in lab, red, red)) {
912
+ --tw-gradient-via: color-mix(in oklab, var(--color-card) 88%, transparent);
913
+ }
914
+ --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
915
+ --tw-gradient-stops: var(--tw-gradient-via-stops);
916
+ }
917
+ .via-card\/90 {
918
+ --tw-gradient-via: color-mix(in srgb, oklch(0.145 0.006 260) 90%, transparent);
919
+ @supports (color: color-mix(in lab, red, red)) {
920
+ --tw-gradient-via: color-mix(in oklab, var(--color-card) 90%, transparent);
921
+ }
922
+ --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
923
+ --tw-gradient-stops: var(--tw-gradient-via-stops);
924
+ }
925
+ .to-card\/78 {
926
+ --tw-gradient-to: color-mix(in srgb, oklch(0.145 0.006 260) 78%, transparent);
927
+ @supports (color: color-mix(in lab, red, red)) {
928
+ --tw-gradient-to: color-mix(in oklab, var(--color-card) 78%, transparent);
929
+ }
930
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
931
+ }
932
+ .to-card\/82 {
933
+ --tw-gradient-to: color-mix(in srgb, oklch(0.145 0.006 260) 82%, transparent);
934
+ @supports (color: color-mix(in lab, red, red)) {
935
+ --tw-gradient-to: color-mix(in oklab, var(--color-card) 82%, transparent);
936
+ }
937
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
938
+ }
939
+ .p-1 {
940
+ padding: calc(var(--spacing) * 1);
941
+ }
942
+ .p-2 {
943
+ padding: calc(var(--spacing) * 2);
944
+ }
945
+ .px-0\.5 {
946
+ padding-inline: calc(var(--spacing) * 0.5);
947
+ }
948
+ .px-1 {
949
+ padding-inline: calc(var(--spacing) * 1);
950
+ }
951
+ .px-1\.5 {
952
+ padding-inline: calc(var(--spacing) * 1.5);
953
+ }
954
+ .px-2 {
955
+ padding-inline: calc(var(--spacing) * 2);
956
+ }
957
+ .px-2\.5 {
958
+ padding-inline: calc(var(--spacing) * 2.5);
959
+ }
960
+ .px-3 {
961
+ padding-inline: calc(var(--spacing) * 3);
962
+ }
963
+ .px-4 {
964
+ padding-inline: calc(var(--spacing) * 4);
965
+ }
966
+ .px-6 {
967
+ padding-inline: calc(var(--spacing) * 6);
968
+ }
969
+ .py-0\.5 {
970
+ padding-block: calc(var(--spacing) * 0.5);
971
+ }
972
+ .py-1 {
973
+ padding-block: calc(var(--spacing) * 1);
974
+ }
975
+ .py-1\.5 {
976
+ padding-block: calc(var(--spacing) * 1.5);
977
+ }
978
+ .py-2 {
979
+ padding-block: calc(var(--spacing) * 2);
980
+ }
981
+ .py-2\.5 {
982
+ padding-block: calc(var(--spacing) * 2.5);
983
+ }
984
+ .py-3 {
985
+ padding-block: calc(var(--spacing) * 3);
986
+ }
987
+ .pt-1 {
988
+ padding-top: calc(var(--spacing) * 1);
989
+ }
990
+ .pt-2 {
991
+ padding-top: calc(var(--spacing) * 2);
992
+ }
993
+ .pr-1 {
994
+ padding-right: calc(var(--spacing) * 1);
995
+ }
996
+ .text-center {
997
+ text-align: center;
998
+ }
999
+ .text-left {
1000
+ text-align: left;
1001
+ }
1002
+ .font-mono {
1003
+ font-family: var(--font-mono);
1004
+ }
1005
+ .font-sans {
1006
+ font-family: var(--font-sans);
1007
+ }
1008
+ .text-sm {
1009
+ font-size: var(--text-sm);
1010
+ line-height: var(--tw-leading, var(--text-sm--line-height));
1011
+ }
1012
+ .text-xs {
1013
+ font-size: var(--text-xs);
1014
+ line-height: var(--tw-leading, var(--text-xs--line-height));
1015
+ }
1016
+ .text-\[8px\] {
1017
+ font-size: 8px;
1018
+ }
1019
+ .text-\[9px\] {
1020
+ font-size: 9px;
1021
+ }
1022
+ .text-\[10px\] {
1023
+ font-size: 10px;
1024
+ }
1025
+ .text-\[11px\] {
1026
+ font-size: 11px;
1027
+ }
1028
+ .leading-none {
1029
+ --tw-leading: 1;
1030
+ line-height: 1;
1031
+ }
1032
+ .leading-relaxed {
1033
+ --tw-leading: var(--leading-relaxed);
1034
+ line-height: var(--leading-relaxed);
1035
+ }
1036
+ .leading-snug {
1037
+ --tw-leading: var(--leading-snug);
1038
+ line-height: var(--leading-snug);
1039
+ }
1040
+ .font-medium {
1041
+ --tw-font-weight: var(--font-weight-medium);
1042
+ font-weight: var(--font-weight-medium);
1043
+ }
1044
+ .font-semibold {
1045
+ --tw-font-weight: var(--font-weight-semibold);
1046
+ font-weight: var(--font-weight-semibold);
1047
+ }
1048
+ .tracking-\[0\.12em\] {
1049
+ --tw-tracking: 0.12em;
1050
+ letter-spacing: 0.12em;
1051
+ }
1052
+ .tracking-wide {
1053
+ --tw-tracking: var(--tracking-wide);
1054
+ letter-spacing: var(--tracking-wide);
1055
+ }
1056
+ .tracking-wider {
1057
+ --tw-tracking: var(--tracking-wider);
1058
+ letter-spacing: var(--tracking-wider);
1059
+ }
1060
+ .break-words {
1061
+ overflow-wrap: break-word;
1062
+ }
1063
+ .whitespace-pre {
1064
+ white-space: pre;
1065
+ }
1066
+ .whitespace-pre-wrap {
1067
+ white-space: pre-wrap;
1068
+ }
1069
+ .text-amber-200 {
1070
+ color: var(--color-amber-200);
1071
+ }
1072
+ .text-amber-500 {
1073
+ color: var(--color-amber-500);
1074
+ }
1075
+ .text-background {
1076
+ color: var(--color-background);
1077
+ }
1078
+ .text-blue-200 {
1079
+ color: var(--color-blue-200);
1080
+ }
1081
+ .text-cyan-500 {
1082
+ color: var(--color-cyan-500);
1083
+ }
1084
+ .text-emerald-200 {
1085
+ color: var(--color-emerald-200);
1086
+ }
1087
+ .text-emerald-500 {
1088
+ color: var(--color-emerald-500);
1089
+ }
1090
+ .text-foreground {
1091
+ color: var(--color-foreground);
1092
+ }
1093
+ .text-foreground\/85 {
1094
+ color: color-mix(in srgb, oklch(0.93 0 0) 85%, transparent);
1095
+ @supports (color: color-mix(in lab, red, red)) {
1096
+ color: color-mix(in oklab, var(--color-foreground) 85%, transparent);
1097
+ }
1098
+ }
1099
+ .text-foreground\/90 {
1100
+ color: color-mix(in srgb, oklch(0.93 0 0) 90%, transparent);
1101
+ @supports (color: color-mix(in lab, red, red)) {
1102
+ color: color-mix(in oklab, var(--color-foreground) 90%, transparent);
1103
+ }
1104
+ }
1105
+ .text-indigo-400 {
1106
+ color: var(--color-indigo-400);
1107
+ }
1108
+ .text-muted-foreground {
1109
+ color: var(--color-muted-foreground);
1110
+ }
1111
+ .text-muted-foreground\/40 {
1112
+ color: color-mix(in srgb, oklch(0.55 0 0) 40%, transparent);
1113
+ @supports (color: color-mix(in lab, red, red)) {
1114
+ color: color-mix(in oklab, var(--color-muted-foreground) 40%, transparent);
1115
+ }
1116
+ }
1117
+ .text-muted-foreground\/60 {
1118
+ color: color-mix(in srgb, oklch(0.55 0 0) 60%, transparent);
1119
+ @supports (color: color-mix(in lab, red, red)) {
1120
+ color: color-mix(in oklab, var(--color-muted-foreground) 60%, transparent);
1121
+ }
1122
+ }
1123
+ .text-primary {
1124
+ color: var(--color-primary);
1125
+ }
1126
+ .text-red-100 {
1127
+ color: var(--color-red-100);
1128
+ }
1129
+ .text-red-200 {
1130
+ color: var(--color-red-200);
1131
+ }
1132
+ .text-red-300 {
1133
+ color: var(--color-red-300);
1134
+ }
1135
+ .text-red-500 {
1136
+ color: var(--color-red-500);
1137
+ }
1138
+ .text-rose-400 {
1139
+ color: var(--color-rose-400);
1140
+ }
1141
+ .text-sky-400 {
1142
+ color: var(--color-sky-400);
1143
+ }
1144
+ .text-sky-500 {
1145
+ color: var(--color-sky-500);
1146
+ }
1147
+ .text-slate-300 {
1148
+ color: var(--color-slate-300);
1149
+ }
1150
+ .text-violet-500 {
1151
+ color: var(--color-violet-500);
1152
+ }
1153
+ .uppercase {
1154
+ text-transform: uppercase;
1155
+ }
1156
+ .tabular-nums {
1157
+ --tw-numeric-spacing: tabular-nums;
1158
+ font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
1159
+ }
1160
+ .antialiased {
1161
+ -webkit-font-smoothing: antialiased;
1162
+ -moz-osx-font-smoothing: grayscale;
1163
+ }
1164
+ .opacity-80 {
1165
+ opacity: 80%;
1166
+ }
1167
+ .shadow-2xl {
1168
+ --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
1169
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1170
+ }
1171
+ .shadow-lg {
1172
+ --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1173
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1174
+ }
1175
+ .shadow-sm {
1176
+ --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1177
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1178
+ }
1179
+ .filter {
1180
+ filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1181
+ }
1182
+ .backdrop-blur-md {
1183
+ --tw-backdrop-blur: blur(var(--blur-md));
1184
+ -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
1185
+ backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
1186
+ }
1187
+ .backdrop-blur-xl {
1188
+ --tw-backdrop-blur: blur(var(--blur-xl));
1189
+ -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
1190
+ backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
1191
+ }
1192
+ .transition {
1193
+ transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
1194
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1195
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1196
+ }
1197
+ .transition-\[height\] {
1198
+ transition-property: height;
1199
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1200
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1201
+ }
1202
+ .transition-\[min-height\] {
1203
+ transition-property: min-height;
1204
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1205
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1206
+ }
1207
+ .transition-\[width\] {
1208
+ transition-property: width;
1209
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1210
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1211
+ }
1212
+ .transition-all {
1213
+ transition-property: all;
1214
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1215
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1216
+ }
1217
+ .transition-colors {
1218
+ transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
1219
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1220
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1221
+ }
1222
+ .duration-200 {
1223
+ --tw-duration: 200ms;
1224
+ transition-duration: 200ms;
1225
+ }
1226
+ .duration-300 {
1227
+ --tw-duration: 300ms;
1228
+ transition-duration: 300ms;
1229
+ }
1230
+ .duration-500 {
1231
+ --tw-duration: 500ms;
1232
+ transition-duration: 500ms;
1233
+ }
1234
+ .ease-out {
1235
+ --tw-ease: var(--ease-out);
1236
+ transition-timing-function: var(--ease-out);
1237
+ }
1238
+ .group-hover\:text-foreground {
1239
+ &:is(:where(.group):hover *) {
1240
+ @media (hover: hover) {
1241
+ color: var(--color-foreground);
1242
+ }
1243
+ }
1244
+ }
1245
+ .group-hover\:text-primary {
1246
+ &:is(:where(.group):hover *) {
1247
+ @media (hover: hover) {
1248
+ color: var(--color-primary);
1249
+ }
1250
+ }
1251
+ }
1252
+ .hover\:border-primary\/40 {
1253
+ &:hover {
1254
+ @media (hover: hover) {
1255
+ border-color: color-mix(in srgb, oklch(0.65 0.15 270) 40%, transparent);
1256
+ @supports (color: color-mix(in lab, red, red)) {
1257
+ border-color: color-mix(in oklab, var(--color-primary) 40%, transparent);
1258
+ }
1259
+ }
1260
+ }
1261
+ }
1262
+ .hover\:border-primary\/45 {
1263
+ &:hover {
1264
+ @media (hover: hover) {
1265
+ border-color: color-mix(in srgb, oklch(0.65 0.15 270) 45%, transparent);
1266
+ @supports (color: color-mix(in lab, red, red)) {
1267
+ border-color: color-mix(in oklab, var(--color-primary) 45%, transparent);
1268
+ }
1269
+ }
1270
+ }
1271
+ }
1272
+ .hover\:bg-foreground\/85 {
1273
+ &:hover {
1274
+ @media (hover: hover) {
1275
+ background-color: color-mix(in srgb, oklch(0.93 0 0) 85%, transparent);
1276
+ @supports (color: color-mix(in lab, red, red)) {
1277
+ background-color: color-mix(in oklab, var(--color-foreground) 85%, transparent);
1278
+ }
1279
+ }
1280
+ }
1281
+ }
1282
+ .hover\:bg-muted\/60 {
1283
+ &:hover {
1284
+ @media (hover: hover) {
1285
+ background-color: color-mix(in srgb, oklch(0.2 0.005 260) 60%, transparent);
1286
+ @supports (color: color-mix(in lab, red, red)) {
1287
+ background-color: color-mix(in oklab, var(--color-muted) 60%, transparent);
1288
+ }
1289
+ }
1290
+ }
1291
+ }
1292
+ .hover\:bg-muted\/70 {
1293
+ &:hover {
1294
+ @media (hover: hover) {
1295
+ background-color: color-mix(in srgb, oklch(0.2 0.005 260) 70%, transparent);
1296
+ @supports (color: color-mix(in lab, red, red)) {
1297
+ background-color: color-mix(in oklab, var(--color-muted) 70%, transparent);
1298
+ }
1299
+ }
1300
+ }
1301
+ }
1302
+ .hover\:text-foreground {
1303
+ &:hover {
1304
+ @media (hover: hover) {
1305
+ color: var(--color-foreground);
1306
+ }
1307
+ }
1308
+ }
1309
+ .disabled\:pointer-events-none {
1310
+ &:disabled {
1311
+ pointer-events: none;
1312
+ }
1313
+ }
1314
+ .disabled\:cursor-default {
1315
+ &:disabled {
1316
+ cursor: default;
1317
+ }
1318
+ }
1319
+ .disabled\:opacity-20 {
1320
+ &:disabled {
1321
+ opacity: 20%;
1322
+ }
1323
+ }
1324
+ .disabled\:opacity-55 {
1325
+ &:disabled {
1326
+ opacity: 55%;
1327
+ }
1328
+ }
1329
+ }
1330
+ }
1331
+ .vue-flow {
1332
+ position: relative;
1333
+ width: 100%;
1334
+ height: 100%;
1335
+ overflow: hidden;
1336
+ z-index: 0;
1337
+ direction: ltr;
1338
+ }
1339
+ .vue-flow__container {
1340
+ position: absolute;
1341
+ height: 100%;
1342
+ width: 100%;
1343
+ left: 0;
1344
+ top: 0;
1345
+ }
1346
+ .vue-flow__pane {
1347
+ z-index: 1;
1348
+ }
1349
+ .vue-flow__pane.draggable {
1350
+ cursor: grab;
1351
+ }
1352
+ .vue-flow__pane.selection {
1353
+ cursor: pointer;
1354
+ }
1355
+ .vue-flow__pane.dragging {
1356
+ cursor: grabbing;
1357
+ }
1358
+ .vue-flow__transformationpane {
1359
+ transform-origin: 0 0;
1360
+ z-index: 2;
1361
+ pointer-events: none;
1362
+ }
1363
+ .vue-flow__viewport {
1364
+ z-index: 4;
1365
+ overflow: clip;
1366
+ }
1367
+ .vue-flow__selection {
1368
+ z-index: 6;
1369
+ }
1370
+ .vue-flow__edge-labels {
1371
+ position: absolute;
1372
+ width: 100%;
1373
+ height: 100%;
1374
+ pointer-events: none;
1375
+ -webkit-user-select: none;
1376
+ -moz-user-select: none;
1377
+ user-select: none;
1378
+ }
1379
+ .vue-flow__nodesselection-rect:focus,
1380
+ .vue-flow__nodesselection-rect:focus-visible {
1381
+ outline: none;
1382
+ }
1383
+ .vue-flow .vue-flow__edges {
1384
+ pointer-events: none;
1385
+ overflow: visible;
1386
+ }
1387
+ .vue-flow__edge-path,
1388
+ .vue-flow__connection-path {
1389
+ stroke: #b1b1b7;
1390
+ stroke-width: 1;
1391
+ fill: none;
1392
+ }
1393
+ .vue-flow__edge {
1394
+ pointer-events: visibleStroke;
1395
+ cursor: pointer;
1396
+ }
1397
+ .vue-flow__edge.animated path {
1398
+ stroke-dasharray: 5;
1399
+ animation: dashdraw 0.5s linear infinite;
1400
+ }
1401
+ .vue-flow__edge.animated path.vue-flow__edge-interaction {
1402
+ stroke-dasharray: none;
1403
+ animation: none;
1404
+ }
1405
+ .vue-flow__edge.inactive {
1406
+ pointer-events: none;
1407
+ }
1408
+ .vue-flow__edge.selected,
1409
+ .vue-flow__edge:focus,
1410
+ .vue-flow__edge:focus-visible {
1411
+ outline: none;
1412
+ }
1413
+ .vue-flow__edge.selected .vue-flow__edge-path,
1414
+ .vue-flow__edge:focus .vue-flow__edge-path,
1415
+ .vue-flow__edge:focus-visible .vue-flow__edge-path {
1416
+ stroke: #555;
1417
+ }
1418
+ .vue-flow__edge-textwrapper {
1419
+ pointer-events: all;
1420
+ }
1421
+ .vue-flow__edge-textbg {
1422
+ fill: white;
1423
+ }
1424
+ .vue-flow__edge-text {
1425
+ pointer-events: none;
1426
+ -webkit-user-select: none;
1427
+ -moz-user-select: none;
1428
+ user-select: none;
1429
+ }
1430
+ .vue-flow__connection {
1431
+ pointer-events: none;
1432
+ }
1433
+ .vue-flow__connection .animated {
1434
+ stroke-dasharray: 5;
1435
+ animation: dashdraw 0.5s linear infinite;
1436
+ }
1437
+ .vue-flow__connectionline {
1438
+ z-index: 1001;
1439
+ }
1440
+ .vue-flow__nodes {
1441
+ pointer-events: none;
1442
+ transform-origin: 0 0;
1443
+ }
1444
+ .vue-flow__node {
1445
+ position: absolute;
1446
+ -webkit-user-select: none;
1447
+ -moz-user-select: none;
1448
+ user-select: none;
1449
+ pointer-events: all;
1450
+ transform-origin: 0 0;
1451
+ box-sizing: border-box;
1452
+ cursor: default;
1453
+ }
1454
+ .vue-flow__node.draggable {
1455
+ cursor: grab;
1456
+ pointer-events: all;
1457
+ }
1458
+ .vue-flow__node.draggable.dragging {
1459
+ cursor: grabbing;
1460
+ }
1461
+ .vue-flow__nodesselection {
1462
+ z-index: 3;
1463
+ transform-origin: left top;
1464
+ pointer-events: none;
1465
+ }
1466
+ .vue-flow__nodesselection-rect {
1467
+ position: absolute;
1468
+ pointer-events: all;
1469
+ cursor: grab;
1470
+ }
1471
+ .vue-flow__nodesselection-rect.dragging {
1472
+ cursor: grabbing;
1473
+ }
1474
+ .vue-flow__handle {
1475
+ position: absolute;
1476
+ pointer-events: none;
1477
+ min-width: 5px;
1478
+ min-height: 5px;
1479
+ }
1480
+ .vue-flow__handle.connectable {
1481
+ pointer-events: all;
1482
+ cursor: crosshair;
1483
+ }
1484
+ .vue-flow__handle-bottom {
1485
+ left: 50%;
1486
+ bottom: 0;
1487
+ transform: translate(-50%, 50%);
1488
+ }
1489
+ .vue-flow__handle-top {
1490
+ left: 50%;
1491
+ top: 0;
1492
+ transform: translate(-50%, -50%);
1493
+ }
1494
+ .vue-flow__handle-left {
1495
+ top: 50%;
1496
+ left: 0;
1497
+ transform: translate(-50%, -50%);
1498
+ }
1499
+ .vue-flow__handle-right {
1500
+ top: 50%;
1501
+ right: 0;
1502
+ transform: translate(50%, -50%);
1503
+ }
1504
+ .vue-flow__edgeupdater {
1505
+ cursor: move;
1506
+ pointer-events: all;
1507
+ }
1508
+ .vue-flow__panel {
1509
+ position: absolute;
1510
+ z-index: 5;
1511
+ margin: 15px;
1512
+ }
1513
+ .vue-flow__panel.top {
1514
+ top: 0;
1515
+ }
1516
+ .vue-flow__panel.bottom {
1517
+ bottom: 0;
1518
+ }
1519
+ .vue-flow__panel.left {
1520
+ left: 0;
1521
+ }
1522
+ .vue-flow__panel.right {
1523
+ right: 0;
1524
+ }
1525
+ .vue-flow__panel.center {
1526
+ left: 50%;
1527
+ transform: translateX(-50%);
1528
+ }
1529
+ @keyframes dashdraw {
1530
+ from {
1531
+ stroke-dashoffset: 10;
1532
+ }
1533
+ }
1534
+ :root {
1535
+ --vf-node-bg: #fff;
1536
+ --vf-node-text: #222;
1537
+ --vf-connection-path: #b1b1b7;
1538
+ --vf-handle: #555;
1539
+ }
1540
+ .vue-flow__edge.updating .vue-flow__edge-path {
1541
+ stroke: #777;
1542
+ }
1543
+ .vue-flow__edge-text {
1544
+ font-size: 10px;
1545
+ }
1546
+ .vue-flow__edge-textbg {
1547
+ fill: #fff;
1548
+ }
1549
+ .vue-flow__connection-path {
1550
+ stroke: var(--vf-connection-path);
1551
+ }
1552
+ .vue-flow__node {
1553
+ cursor: grab;
1554
+ }
1555
+ .vue-flow__node.selectable:focus,
1556
+ .vue-flow__node.selectable:focus-visible {
1557
+ outline: none;
1558
+ }
1559
+ .vue-flow__node-default,
1560
+ .vue-flow__node-input,
1561
+ .vue-flow__node-output {
1562
+ padding: 10px;
1563
+ border-radius: 3px;
1564
+ width: 150px;
1565
+ font-size: 12px;
1566
+ text-align: center;
1567
+ border-width: 1px;
1568
+ border-style: solid;
1569
+ color: var(--vf-node-text);
1570
+ background-color: var(--vf-node-bg);
1571
+ border-color: var(--vf-node-color);
1572
+ }
1573
+ .vue-flow__node-default.selected,
1574
+ .vue-flow__node-default.selected:hover,
1575
+ .vue-flow__node-input.selected,
1576
+ .vue-flow__node-input.selected:hover,
1577
+ .vue-flow__node-output.selected,
1578
+ .vue-flow__node-output.selected:hover {
1579
+ box-shadow: 0 0 0 0.5px var(--vf-box-shadow);
1580
+ }
1581
+ .vue-flow__node-default.selected,
1582
+ .vue-flow__node-default:focus,
1583
+ .vue-flow__node-default:focus-visible,
1584
+ .vue-flow__node-input.selected,
1585
+ .vue-flow__node-input:focus,
1586
+ .vue-flow__node-input:focus-visible,
1587
+ .vue-flow__node-output.selected,
1588
+ .vue-flow__node-output:focus,
1589
+ .vue-flow__node-output:focus-visible {
1590
+ outline: none;
1591
+ border: 1px solid #555;
1592
+ }
1593
+ .vue-flow__node-default .vue-flow__handle, .vue-flow__node-input .vue-flow__handle, .vue-flow__node-output .vue-flow__handle {
1594
+ background: var(--vf-handle);
1595
+ }
1596
+ .vue-flow__node-default.selectable:hover, .vue-flow__node-input.selectable:hover, .vue-flow__node-output.selectable:hover {
1597
+ box-shadow: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
1598
+ }
1599
+ .vue-flow__node-input {
1600
+ --vf-node-color: var(--vf-node-color, #0041d0);
1601
+ --vf-handle: var(--vf-node-color, #0041d0);
1602
+ --vf-box-shadow: var(--vf-node-color, #0041d0);
1603
+ background: var(--vf-node-bg);
1604
+ border-color: var(--vf-node-color, #0041d0);
1605
+ }
1606
+ .vue-flow__node-input.selected,
1607
+ .vue-flow__node-input:focus,
1608
+ .vue-flow__node-input:focus-visible {
1609
+ outline: none;
1610
+ border: 1px solid var(--vf-node-color, #0041d0);
1611
+ }
1612
+ .vue-flow__node-default {
1613
+ --vf-handle: var(--vf-node-color, #1a192b);
1614
+ --vf-box-shadow: var(--vf-node-color, #1a192b);
1615
+ background: var(--vf-node-bg);
1616
+ border-color: var(--vf-node-color, #1a192b);
1617
+ }
1618
+ .vue-flow__node-default.selected,
1619
+ .vue-flow__node-default:focus,
1620
+ .vue-flow__node-default:focus-visible {
1621
+ outline: none;
1622
+ border: 1px solid var(--vf-node-color, #1a192b);
1623
+ }
1624
+ .vue-flow__node-output {
1625
+ --vf-handle: var(--vf-node-color, #ff0072);
1626
+ --vf-box-shadow: var(--vf-node-color, #ff0072);
1627
+ background: var(--vf-node-bg);
1628
+ border-color: var(--vf-node-color, #ff0072);
1629
+ }
1630
+ .vue-flow__node-output.selected,
1631
+ .vue-flow__node-output:focus,
1632
+ .vue-flow__node-output:focus-visible {
1633
+ outline: none;
1634
+ border: 1px solid var(--vf-node-color, #ff0072);
1635
+ }
1636
+ .vue-flow__nodesselection-rect,
1637
+ .vue-flow__selection {
1638
+ background: rgba(0, 89, 220, 0.08);
1639
+ border: 1px dotted rgba(0, 89, 220, 0.8);
1640
+ }
1641
+ .vue-flow__nodesselection-rect:focus,
1642
+ .vue-flow__nodesselection-rect:focus-visible,
1643
+ .vue-flow__selection:focus,
1644
+ .vue-flow__selection:focus-visible {
1645
+ outline: none;
1646
+ }
1647
+ .vue-flow__handle {
1648
+ width: 6px;
1649
+ height: 6px;
1650
+ background: var(--vf-handle);
1651
+ border: 1px solid #fff;
1652
+ border-radius: 100%;
1653
+ }
1654
+ .shiki-magic-move-container {
1655
+ position: relative;
1656
+ white-space: pre;
1657
+ }
1658
+ .shiki-magic-move-line-number {
1659
+ opacity: 0.3;
1660
+ user-select: none;
1661
+ }
1662
+ .shiki-magic-move-item {
1663
+ display: inline-block;
1664
+ transition: color var(--smm-duration, 0.5s) var(--smm-easing, 'ease');
1665
+ }
1666
+ .shiki-magic-move-move {
1667
+ transition: all var(--smm-duration, 0.5s) var(--smm-easing, 'ease');
1668
+ }
1669
+ .shiki-magic-move-enter-active,
1670
+ .shiki-magic-move-leave-active {
1671
+ transition: all var(--smm-duration, 0.5s) var(--smm-easing, 'ease');
1672
+ }
1673
+ .shiki-magic-move-container-resize,
1674
+ .shiki-magic-move-container-restyle {
1675
+ transition: all var(--smm-duration, 0.5s) var(--smm-easing, 'ease');
1676
+ transition-delay: calc(var(--smm-duration, 0.5s) * var(--smm-delay-container, 1));
1677
+ }
1678
+ .shiki-magic-move-move {
1679
+ transition-delay: calc(calc(var(--smm-duration, 0.5s) * var(--smm-delay-move, 1)) + var(--smm-stagger, 0));
1680
+ z-index: 1;
1681
+ }
1682
+ .shiki-magic-move-enter-active {
1683
+ transition-delay: calc(calc(var(--smm-duration, 0.5s) * var(--smm-delay-enter, 1)) + var(--smm-stagger, 0));
1684
+ z-index: 1;
1685
+ }
1686
+ .shiki-magic-move-leave-active {
1687
+ transition-delay: calc(calc(var(--smm-duration, 0.5s) * var(--smm-delay-leave, 1)) + var(--smm-stagger, 0));
1688
+ }
1689
+ .shiki-magic-move-enter-from,
1690
+ .shiki-magic-move-leave-to {
1691
+ opacity: 0;
1692
+ }
1693
+ br.shiki-magic-move-leave-active {
1694
+ display: none;
1695
+ }
1696
+ :root {
1697
+ --twoslash-border-color: #8888;
1698
+ --twoslash-underline-color: currentColor;
1699
+ --twoslash-highlighted-border: #c37d0d50;
1700
+ --twoslash-highlighted-bg: #c37d0d20;
1701
+ --twoslash-popup-bg: #f8f8f8;
1702
+ --twoslash-popup-color: inherit;
1703
+ --twoslash-popup-shadow: rgba(0, 0, 0, 0.08) 0px 1px 4px;
1704
+ --twoslash-docs-color: #888;
1705
+ --twoslash-docs-font: sans-serif;
1706
+ --twoslash-code-font: inherit;
1707
+ --twoslash-code-font-size: 1em;
1708
+ --twoslash-matched-color: inherit;
1709
+ --twoslash-unmatched-color: #888;
1710
+ --twoslash-cursor-color: #8888;
1711
+ --twoslash-error-color: #d45656;
1712
+ --twoslash-error-bg: #d4565620;
1713
+ --twoslash-warn-color: #c37d0d;
1714
+ --twoslash-warn-bg: #c37d0d20;
1715
+ --twoslash-tag-color: #3772cf;
1716
+ --twoslash-tag-bg: #3772cf20;
1717
+ --twoslash-tag-warn-color: var(--twoslash-warn-color);
1718
+ --twoslash-tag-warn-bg: var(--twoslash-warn-bg);
1719
+ --twoslash-tag-annotate-color: #1ba673;
1720
+ --twoslash-tag-annotate-bg: #1ba67320;
1721
+ }
1722
+ @media (prefers-reduced-motion: reduce) {
1723
+ .twoslash * {
1724
+ transition: none !important;
1725
+ }
1726
+ }
1727
+ .twoslash:hover .twoslash-hover {
1728
+ border-color: var(--twoslash-underline-color);
1729
+ }
1730
+ .twoslash .twoslash-hover {
1731
+ border-bottom: 1px dotted transparent;
1732
+ transition-timing-function: ease;
1733
+ transition: border-color 0.3s;
1734
+ position: relative;
1735
+ }
1736
+ .twoslash .twoslash-popup-container {
1737
+ position: absolute;
1738
+ opacity: 0;
1739
+ display: inline-flex;
1740
+ flex-direction: column;
1741
+ transform: translateY(1.1em);
1742
+ background: var(--twoslash-popup-bg);
1743
+ color: var(--twoslash-popup-color);
1744
+ border: 1px solid var(--twoslash-border-color);
1745
+ transition: opacity 0.3s;
1746
+ border-radius: 4px;
1747
+ pointer-events: none;
1748
+ z-index: 10;
1749
+ user-select: none;
1750
+ text-align: left;
1751
+ box-shadow: var(--twoslash-popup-shadow);
1752
+ }
1753
+ .twoslash .twoslash-query-persisted .twoslash-popup-container {
1754
+ z-index: 9;
1755
+ transform: translateY(1.5em);
1756
+ }
1757
+ .twoslash .twoslash-hover:hover .twoslash-popup-container,
1758
+ .twoslash .twoslash-error-hover:hover .twoslash-popup-container,
1759
+ .twoslash .twoslash-query-persisted .twoslash-popup-container,
1760
+ .twoslash .twoslash-query-line .twoslash-popup-container {
1761
+ opacity: 1;
1762
+ pointer-events: auto;
1763
+ }
1764
+ .twoslash .twoslash-popup-container:hover {
1765
+ user-select: auto;
1766
+ }
1767
+ .twoslash .twoslash-popup-arrow {
1768
+ position: absolute;
1769
+ top: -4px;
1770
+ left: 1em;
1771
+ border-top: 1px solid var(--twoslash-border-color);
1772
+ border-right: 1px solid var(--twoslash-border-color);
1773
+ background: var(--twoslash-popup-bg);
1774
+ transform: rotate(-45deg);
1775
+ width: 6px;
1776
+ height: 6px;
1777
+ pointer-events: none;
1778
+ }
1779
+ .twoslash .twoslash-popup-code,
1780
+ .twoslash .twoslash-popup-error,
1781
+ .twoslash .twoslash-popup-docs {
1782
+ padding: 6px 8px !important;
1783
+ }
1784
+ .twoslash .twoslash-popup-code {
1785
+ font-family: var(--twoslash-code-font);
1786
+ font-size: var(--twoslash-code-font-size);
1787
+ }
1788
+ .twoslash .twoslash-popup-docs {
1789
+ color: var(--twoslash-docs-color);
1790
+ font-family: var(--twoslash-docs-font);
1791
+ font-size: 0.8em;
1792
+ border-top: 1px solid var(--twoslash-border-color);
1793
+ }
1794
+ .twoslash .twoslash-popup-error {
1795
+ color: var(--twoslash-error-color);
1796
+ background-color: var(--twoslash-error-bg);
1797
+ font-family: var(--twoslash-docs-font);
1798
+ font-size: 0.8em;
1799
+ }
1800
+ .twoslash .twoslash-popup-docs-tags {
1801
+ display: flex;
1802
+ flex-direction: column;
1803
+ font-family: var(--twoslash-docs-font);
1804
+ }
1805
+ .twoslash .twoslash-popup-docs-tags,
1806
+ .twoslash .twoslash-popup-docs-tag-name {
1807
+ margin-right: 0.5em;
1808
+ }
1809
+ .twoslash .twoslash-popup-docs-tag-name {
1810
+ font-family: var(--twoslash-code-font);
1811
+ }
1812
+ .twoslash .twoslash-query-line .twoslash-popup-container {
1813
+ position: relative;
1814
+ margin-bottom: 1.4em;
1815
+ transform: translateY(0.6em);
1816
+ }
1817
+ .twoslash .twoslash-error-line {
1818
+ position: relative;
1819
+ background-color: var(--twoslash-error-bg);
1820
+ border-left: 3px solid var(--twoslash-error-color);
1821
+ color: var(--twoslash-error-color);
1822
+ padding: 6px 12px;
1823
+ margin: 0.2em 0;
1824
+ min-width: 100%;
1825
+ width: max-content;
1826
+ }
1827
+ .twoslash .twoslash-error-line.twoslash-error-level-warning {
1828
+ background-color: var(--twoslash-warn-bg);
1829
+ border-left: 3px solid var(--twoslash-warn-color);
1830
+ color: var(--twoslash-warn-color);
1831
+ }
1832
+ .twoslash .twoslash-error {
1833
+ background: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%206%203'%20enable-background%3D'new%200%200%206%203'%20height%3D'3'%20width%3D'6'%3E%3Cg%20fill%3D'%23c94824'%3E%3Cpolygon%20points%3D'5.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0'%2F%3E%3Cpolygon%20points%3D'4%2C0%206%2C2%206%2C0.6%205.4%2C0'%2F%3E%3Cpolygon%20points%3D'0%2C2%201%2C3%202.4%2C3%200%2C0.6'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")
1834
+ repeat-x bottom left;
1835
+ padding-bottom: 2px;
1836
+ }
1837
+ .twoslash .twoslash-error.twoslash-error-level-warning {
1838
+ background: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%206%203'%20enable-background%3D'new%200%200%206%203'%20height%3D'3'%20width%3D'6'%3E%3Cg%20fill%3D'%23c37d0d'%3E%3Cpolygon%20points%3D'5.5%2C0%202.5%2C3%201.1%2C3%204.1%2C0'%2F%3E%3Cpolygon%20points%3D'4%2C0%206%2C2%206%2C0.6%205.4%2C0'%2F%3E%3Cpolygon%20points%3D'0%2C2%201%2C3%202.4%2C3%200%2C0.6'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")
1839
+ repeat-x bottom left;
1840
+ padding-bottom: 2px;
1841
+ }
1842
+ .twoslash .twoslash-completion-cursor {
1843
+ position: relative;
1844
+ }
1845
+ .twoslash .twoslash-completion-cursor .twoslash-completion-list {
1846
+ user-select: none;
1847
+ position: absolute;
1848
+ top: 0;
1849
+ left: 0;
1850
+ transform: translate(0, 1.2em);
1851
+ margin: 3px 0 0 -1px;
1852
+ display: inline-block;
1853
+ z-index: 8;
1854
+ box-shadow: var(--twoslash-popup-shadow);
1855
+ background: var(--twoslash-popup-bg);
1856
+ border: 1px solid var(--twoslash-border-color);
1857
+ }
1858
+ .twoslash-completion-list {
1859
+ width: 240px;
1860
+ font-size: 0.8rem;
1861
+ padding: 4px;
1862
+ display: flex;
1863
+ flex-direction: column;
1864
+ gap: 4px;
1865
+ }
1866
+ .twoslash-completion-list:hover {
1867
+ user-select: auto;
1868
+ }
1869
+ .twoslash-completion-list::before {
1870
+ background-color: var(--twoslash-cursor-color);
1871
+ width: 2px;
1872
+ position: absolute;
1873
+ top: -1.6em;
1874
+ height: 1.4em;
1875
+ left: -1px;
1876
+ content: ' ';
1877
+ }
1878
+ .twoslash-completion-list li {
1879
+ overflow: hidden;
1880
+ display: flex;
1881
+ align-items: center;
1882
+ gap: 0.25em;
1883
+ line-height: 1em;
1884
+ }
1885
+ .twoslash-completion-list li span.twoslash-completions-unmatched {
1886
+ color: var(--twoslash-unmatched-color);
1887
+ }
1888
+ .twoslash-completion-list .deprecated {
1889
+ text-decoration: line-through;
1890
+ opacity: 0.5;
1891
+ }
1892
+ .twoslash-completion-list li span.twoslash-completions-matched {
1893
+ color: var(--twoslash-matched-color);
1894
+ }
1895
+ .twoslash-highlighted {
1896
+ background-color: var(--twoslash-highlighted-bg);
1897
+ border: 1px solid var(--twoslash-highlighted-border);
1898
+ padding: 1px 2px;
1899
+ margin: -1px -3px;
1900
+ border-radius: 4px;
1901
+ }
1902
+ .twoslash-completion-list .twoslash-completions-icon {
1903
+ color: var(--twoslash-unmatched-color);
1904
+ width: 1em;
1905
+ flex: none;
1906
+ }
1907
+ .twoslash .twoslash-tag-line {
1908
+ position: relative;
1909
+ background-color: var(--twoslash-tag-bg);
1910
+ border-left: 3px solid var(--twoslash-tag-color);
1911
+ color: var(--twoslash-tag-color);
1912
+ padding: 6px 10px;
1913
+ margin: 0.2em 0;
1914
+ display: flex;
1915
+ align-items: center;
1916
+ gap: 0.3em;
1917
+ min-width: 100%;
1918
+ width: max-content;
1919
+ }
1920
+ .twoslash .twoslash-tag-line .twoslash-tag-icon {
1921
+ width: 1.1em;
1922
+ color: inherit;
1923
+ }
1924
+ .twoslash .twoslash-tag-line.twoslash-tag-error-line {
1925
+ background-color: var(--twoslash-error-bg);
1926
+ border-left: 3px solid var(--twoslash-error-color);
1927
+ color: var(--twoslash-error-color);
1928
+ }
1929
+ .twoslash .twoslash-tag-line.twoslash-tag-warn-line {
1930
+ background-color: var(--twoslash-tag-warn-bg);
1931
+ border-left: 3px solid var(--twoslash-tag-warn-color);
1932
+ color: var(--twoslash-tag-warn-color);
1933
+ }
1934
+ .twoslash .twoslash-tag-line.twoslash-tag-annotate-line {
1935
+ background-color: var(--twoslash-tag-annotate-bg);
1936
+ border-left: 3px solid var(--twoslash-tag-annotate-color);
1937
+ color: var(--twoslash-tag-annotate-color);
1938
+ }
1939
+ .flaier {
1940
+ --color-border: oklch(0.25 0.005 260);
1941
+ --color-ring: oklch(0.55 0.12 270);
1942
+ --color-background: oklch(0.098 0.005 260);
1943
+ --color-foreground: oklch(0.93 0 0);
1944
+ --color-card: oklch(0.145 0.006 260);
1945
+ --color-card-foreground: oklch(0.93 0 0);
1946
+ --color-muted: oklch(0.2 0.005 260);
1947
+ --color-muted-foreground: oklch(0.55 0 0);
1948
+ --color-primary: oklch(0.65 0.15 270);
1949
+ --color-primary-foreground: oklch(1 0 0);
1950
+ --fn-grid-dot: oklch(0.22 0.005 260);
1951
+ --fn-edge: oklch(0.3 0.015 260);
1952
+ --fn-edge-overview: oklch(0.42 0.03 260);
1953
+ --fn-edge-active: oklch(0.55 0.12 270);
1954
+ --fn-edge-active-glow: oklch(0.55 0.12 270 / 0.4);
1955
+ --fn-edge-success: oklch(0.74 0.13 155);
1956
+ --fn-edge-error: oklch(0.67 0.2 24);
1957
+ --fn-edge-warning: oklch(0.78 0.12 92);
1958
+ --fn-edge-retry: oklch(0.7 0.11 240);
1959
+ --fn-edge-async: oklch(0.73 0.13 305);
1960
+ --fn-handle-border: oklch(0.2 0.005 260);
1961
+ --fn-handle-bg: oklch(0.35 0.02 260);
1962
+ --fn-inactive-filter: saturate(0.2) brightness(0.7);
1963
+ --twoslash-border-color: oklch(0.34 0.01 260 / 0.85);
1964
+ --twoslash-underline-color: oklch(0.65 0.15 270);
1965
+ --twoslash-highlighted-border: oklch(0.72 0.14 95 / 0.35);
1966
+ --twoslash-highlighted-bg: oklch(0.72 0.14 95 / 0.16);
1967
+ --twoslash-popup-bg: oklch(0.17 0.01 260);
1968
+ --twoslash-popup-color: var(--color-foreground);
1969
+ --twoslash-popup-shadow: rgba(0, 0, 0, 0.4) 0 12px 30px;
1970
+ --twoslash-docs-color: var(--color-muted-foreground);
1971
+ --twoslash-docs-font: ui-sans-serif, system-ui, -apple-system, sans-serif;
1972
+ --twoslash-code-font: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
1973
+ monospace;
1974
+ --twoslash-code-font-size: 0.95em;
1975
+ --twoslash-matched-color: var(--color-foreground);
1976
+ --twoslash-unmatched-color: oklch(0.62 0.008 260);
1977
+ --twoslash-cursor-color: oklch(0.62 0.008 260 / 0.55);
1978
+ --twoslash-error-color: oklch(0.68 0.18 20);
1979
+ --twoslash-error-bg: oklch(0.68 0.18 20 / 0.16);
1980
+ --twoslash-warn-color: oklch(0.76 0.13 75);
1981
+ --twoslash-warn-bg: oklch(0.76 0.13 75 / 0.16);
1982
+ --twoslash-tag-color: oklch(0.66 0.16 250);
1983
+ --twoslash-tag-bg: oklch(0.66 0.16 250 / 0.18);
1984
+ --twoslash-tag-warn-color: var(--twoslash-warn-color);
1985
+ --twoslash-tag-warn-bg: var(--twoslash-warn-bg);
1986
+ --twoslash-tag-annotate-color: oklch(0.74 0.11 170);
1987
+ --twoslash-tag-annotate-bg: oklch(0.74 0.11 170 / 0.16);
1988
+ color-scheme: dark;
1989
+ }
1990
+ .flaier[data-theme="light"] {
1991
+ --color-border: oklch(0.84 0.006 260);
1992
+ --color-ring: oklch(0.59 0.15 250);
1993
+ --color-background: oklch(0.98 0.003 260);
1994
+ --color-foreground: oklch(0.24 0.012 260);
1995
+ --color-card: oklch(1 0 0);
1996
+ --color-card-foreground: oklch(0.24 0.012 260);
1997
+ --color-muted: oklch(0.95 0.005 260);
1998
+ --color-muted-foreground: oklch(0.5 0.01 260);
1999
+ --color-primary: oklch(0.59 0.15 250);
2000
+ --color-primary-foreground: oklch(0.99 0 0);
2001
+ --fn-grid-dot: oklch(0.86 0.006 260);
2002
+ --fn-edge: oklch(0.58 0.028 260);
2003
+ --fn-edge-overview: oklch(0.54 0.03 260);
2004
+ --fn-edge-active: oklch(0.59 0.15 250);
2005
+ --fn-edge-active-glow: oklch(0.59 0.15 250 / 0.3);
2006
+ --fn-edge-success: oklch(0.5 0.16 155);
2007
+ --fn-edge-error: oklch(0.57 0.21 26);
2008
+ --fn-edge-warning: oklch(0.63 0.15 92);
2009
+ --fn-edge-retry: oklch(0.51 0.15 240);
2010
+ --fn-edge-async: oklch(0.53 0.17 305);
2011
+ --fn-handle-border: oklch(0.76 0.01 260);
2012
+ --fn-handle-bg: oklch(0.67 0.05 250);
2013
+ --fn-inactive-filter: saturate(0.4) brightness(0.94);
2014
+ --twoslash-border-color: oklch(0.8 0.01 260 / 0.9);
2015
+ --twoslash-underline-color: oklch(0.59 0.15 250);
2016
+ --twoslash-highlighted-border: oklch(0.75 0.13 95 / 0.5);
2017
+ --twoslash-highlighted-bg: oklch(0.75 0.13 95 / 0.2);
2018
+ --twoslash-popup-bg: oklch(1 0 0);
2019
+ --twoslash-popup-color: var(--color-foreground);
2020
+ --twoslash-popup-shadow: rgba(15, 23, 42, 0.14) 0 10px 24px;
2021
+ --twoslash-docs-color: oklch(0.52 0.012 260);
2022
+ --twoslash-docs-font: ui-sans-serif, system-ui, -apple-system, sans-serif;
2023
+ --twoslash-code-font: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
2024
+ monospace;
2025
+ --twoslash-code-font-size: 0.95em;
2026
+ --twoslash-matched-color: var(--color-foreground);
2027
+ --twoslash-unmatched-color: oklch(0.62 0.015 260);
2028
+ --twoslash-cursor-color: oklch(0.62 0.015 260 / 0.5);
2029
+ --twoslash-error-color: oklch(0.64 0.2 20);
2030
+ --twoslash-error-bg: oklch(0.64 0.2 20 / 0.12);
2031
+ --twoslash-warn-color: oklch(0.7 0.15 75);
2032
+ --twoslash-warn-bg: oklch(0.7 0.15 75 / 0.14);
2033
+ --twoslash-tag-color: oklch(0.59 0.15 250);
2034
+ --twoslash-tag-bg: oklch(0.59 0.15 250 / 0.14);
2035
+ --twoslash-tag-warn-color: var(--twoslash-warn-color);
2036
+ --twoslash-tag-warn-bg: var(--twoslash-warn-bg);
2037
+ --twoslash-tag-annotate-color: oklch(0.62 0.13 170);
2038
+ --twoslash-tag-annotate-bg: oklch(0.62 0.13 170 / 0.12);
2039
+ color-scheme: light;
2040
+ }
2041
+ .vue-flow {
2042
+ --vf-node-bg: transparent;
2043
+ --vf-node-color: var(--color-foreground);
2044
+ --vf-box-shadow: none;
2045
+ background-image: radial-gradient(circle, var(--fn-grid-dot) 1px, transparent 1px);
2046
+ background-size: 24px 24px;
2047
+ }
2048
+ .vue-flow__node {
2049
+ border: none !important;
2050
+ box-shadow: none !important;
2051
+ background: transparent !important;
2052
+ padding: 0 !important;
2053
+ }
2054
+ .vue-flow__edge-path {
2055
+ stroke: var(--fn-edge) !important;
2056
+ stroke-width: 1.8px !important;
2057
+ stroke-linecap: round;
2058
+ stroke-linejoin: round;
2059
+ vector-effect: non-scaling-stroke;
2060
+ }
2061
+ .vue-flow__edge.animated path {
2062
+ stroke-dasharray: 6 4;
2063
+ animation: edge-flow 2s linear infinite;
2064
+ }
2065
+ .vue-flow__edge.edge-kind-success .vue-flow__edge-path,
2066
+ .vue-flow__edge-path.edge-kind-success {
2067
+ stroke: var(--fn-edge-success) !important;
2068
+ }
2069
+ .vue-flow__edge.edge-kind-error .vue-flow__edge-path,
2070
+ .vue-flow__edge-path.edge-kind-error {
2071
+ stroke: var(--fn-edge-error) !important;
2072
+ }
2073
+ .vue-flow__edge.edge-kind-warning .vue-flow__edge-path,
2074
+ .vue-flow__edge-path.edge-kind-warning {
2075
+ stroke: var(--fn-edge-warning) !important;
2076
+ }
2077
+ .vue-flow__edge.edge-kind-retry .vue-flow__edge-path,
2078
+ .vue-flow__edge-path.edge-kind-retry {
2079
+ stroke: var(--fn-edge-retry) !important;
2080
+ }
2081
+ .vue-flow__edge.edge-kind-async .vue-flow__edge-path,
2082
+ .vue-flow__edge-path.edge-kind-async {
2083
+ stroke: var(--fn-edge-async) !important;
2084
+ }
2085
+ .vue-flow__edge-text {
2086
+ fill: var(--color-foreground);
2087
+ font-size: 10px;
2088
+ font-weight: 600;
2089
+ }
2090
+ .vue-flow__edge-textbg {
2091
+ fill: var(--color-card);
2092
+ stroke: var(--color-border);
2093
+ }
2094
+ .vue-flow__edge.selected .vue-flow__edge-path,
2095
+ .vue-flow__edge.active-edge .vue-flow__edge-path,
2096
+ .vue-flow__edge-path.active-edge {
2097
+ stroke: var(--fn-edge-active) !important;
2098
+ stroke-width: 2.3px !important;
2099
+ filter: drop-shadow(0 0 4px var(--fn-edge-active-glow));
2100
+ }
2101
+ .fn-edge-html-label {
2102
+ position: absolute;
2103
+ max-width: 11rem;
2104
+ border: 1px solid var(--color-border);
2105
+ border-radius: 0.5rem;
2106
+ background: color-mix(in srgb, oklch(0.145 0.006 260) 96%, transparent);
2107
+ @supports (color: color-mix(in lab, red, red)) {
2108
+ background: color-mix(in oklch, var(--color-card) 96%, transparent);
2109
+ }
2110
+ color: var(--color-foreground);
2111
+ padding: 0.22rem 0.42rem;
2112
+ font-size: 10px;
2113
+ font-weight: 600;
2114
+ line-height: 1.25;
2115
+ text-align: center;
2116
+ white-space: normal;
2117
+ overflow-wrap: anywhere;
2118
+ box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
2119
+ pointer-events: none;
2120
+ }
2121
+ @keyframes edge-flow {
2122
+ to {
2123
+ stroke-dashoffset: -20;
2124
+ }
2125
+ }
2126
+ .vue-flow__handle {
2127
+ width: 6px !important;
2128
+ height: 6px !important;
2129
+ border: 1.5px solid var(--fn-handle-border) !important;
2130
+ background: var(--fn-handle-bg) !important;
2131
+ opacity: 0;
2132
+ transition: opacity 0.2s;
2133
+ }
2134
+ .vue-flow__node:hover .vue-flow__handle {
2135
+ opacity: 1;
2136
+ }
2137
+ .vue-flow__background pattern circle {
2138
+ fill: var(--fn-grid-dot) !important;
2139
+ }
2140
+ .shiki-magic-move-container {
2141
+ background: transparent !important;
2142
+ font-size: 12px !important;
2143
+ line-height: 1.65 !important;
2144
+ }
2145
+ .shiki-magic-move-container pre {
2146
+ background: transparent !important;
2147
+ padding: 0 !important;
2148
+ margin: 0 !important;
2149
+ }
2150
+ .flaier .twoslash {
2151
+ font-family: var(--twoslash-code-font);
2152
+ }
2153
+ .flaier .twoslash .twoslash-popup-container {
2154
+ backdrop-filter: blur(8px);
2155
+ }
2156
+ .flaier .twoslash .twoslash-popup-code .line {
2157
+ white-space: pre;
2158
+ }
2159
+ .fn-node {
2160
+ transition: opacity 0.4s ease,
2161
+ filter 0.4s ease,
2162
+ transform 0.3s ease;
2163
+ }
2164
+ .fn-node[data-active="false"] {
2165
+ opacity: 0.35;
2166
+ filter: var(--fn-inactive-filter);
2167
+ }
2168
+ .fn-node[data-active="true"] {
2169
+ opacity: 1;
2170
+ filter: none;
2171
+ }
2172
+ .flaier[data-focus-mode="overview"] .fn-node[data-active="false"] {
2173
+ opacity: 1;
2174
+ filter: none;
2175
+ }
2176
+ .flaier[data-focus-mode="overview"] .vue-flow__edge-path {
2177
+ stroke: var(--fn-edge-overview) !important;
2178
+ stroke-width: 1.8px !important;
2179
+ }
2180
+ @property --tw-translate-x {
2181
+ syntax: "*";
2182
+ inherits: false;
2183
+ initial-value: 0;
2184
+ }
2185
+ @property --tw-translate-y {
2186
+ syntax: "*";
2187
+ inherits: false;
2188
+ initial-value: 0;
2189
+ }
2190
+ @property --tw-translate-z {
2191
+ syntax: "*";
2192
+ inherits: false;
2193
+ initial-value: 0;
2194
+ }
2195
+ @property --tw-rotate-x {
2196
+ syntax: "*";
2197
+ inherits: false;
2198
+ }
2199
+ @property --tw-rotate-y {
2200
+ syntax: "*";
2201
+ inherits: false;
2202
+ }
2203
+ @property --tw-rotate-z {
2204
+ syntax: "*";
2205
+ inherits: false;
2206
+ }
2207
+ @property --tw-skew-x {
2208
+ syntax: "*";
2209
+ inherits: false;
2210
+ }
2211
+ @property --tw-skew-y {
2212
+ syntax: "*";
2213
+ inherits: false;
2214
+ }
2215
+ @property --tw-space-y-reverse {
2216
+ syntax: "*";
2217
+ inherits: false;
2218
+ initial-value: 0;
2219
+ }
2220
+ @property --tw-border-style {
2221
+ syntax: "*";
2222
+ inherits: false;
2223
+ initial-value: solid;
2224
+ }
2225
+ @property --tw-gradient-position {
2226
+ syntax: "*";
2227
+ inherits: false;
2228
+ }
2229
+ @property --tw-gradient-from {
2230
+ syntax: "<color>";
2231
+ inherits: false;
2232
+ initial-value: #0000;
2233
+ }
2234
+ @property --tw-gradient-via {
2235
+ syntax: "<color>";
2236
+ inherits: false;
2237
+ initial-value: #0000;
2238
+ }
2239
+ @property --tw-gradient-to {
2240
+ syntax: "<color>";
2241
+ inherits: false;
2242
+ initial-value: #0000;
2243
+ }
2244
+ @property --tw-gradient-stops {
2245
+ syntax: "*";
2246
+ inherits: false;
2247
+ }
2248
+ @property --tw-gradient-via-stops {
2249
+ syntax: "*";
2250
+ inherits: false;
2251
+ }
2252
+ @property --tw-gradient-from-position {
2253
+ syntax: "<length-percentage>";
2254
+ inherits: false;
2255
+ initial-value: 0%;
2256
+ }
2257
+ @property --tw-gradient-via-position {
2258
+ syntax: "<length-percentage>";
2259
+ inherits: false;
2260
+ initial-value: 50%;
2261
+ }
2262
+ @property --tw-gradient-to-position {
2263
+ syntax: "<length-percentage>";
2264
+ inherits: false;
2265
+ initial-value: 100%;
2266
+ }
2267
+ @property --tw-leading {
2268
+ syntax: "*";
2269
+ inherits: false;
2270
+ }
2271
+ @property --tw-font-weight {
2272
+ syntax: "*";
2273
+ inherits: false;
2274
+ }
2275
+ @property --tw-tracking {
2276
+ syntax: "*";
2277
+ inherits: false;
2278
+ }
2279
+ @property --tw-ordinal {
2280
+ syntax: "*";
2281
+ inherits: false;
2282
+ }
2283
+ @property --tw-slashed-zero {
2284
+ syntax: "*";
2285
+ inherits: false;
2286
+ }
2287
+ @property --tw-numeric-figure {
2288
+ syntax: "*";
2289
+ inherits: false;
2290
+ }
2291
+ @property --tw-numeric-spacing {
2292
+ syntax: "*";
2293
+ inherits: false;
2294
+ }
2295
+ @property --tw-numeric-fraction {
2296
+ syntax: "*";
2297
+ inherits: false;
2298
+ }
2299
+ @property --tw-shadow {
2300
+ syntax: "*";
2301
+ inherits: false;
2302
+ initial-value: 0 0 #0000;
2303
+ }
2304
+ @property --tw-shadow-color {
2305
+ syntax: "*";
2306
+ inherits: false;
2307
+ }
2308
+ @property --tw-shadow-alpha {
2309
+ syntax: "<percentage>";
2310
+ inherits: false;
2311
+ initial-value: 100%;
2312
+ }
2313
+ @property --tw-inset-shadow {
2314
+ syntax: "*";
2315
+ inherits: false;
2316
+ initial-value: 0 0 #0000;
2317
+ }
2318
+ @property --tw-inset-shadow-color {
2319
+ syntax: "*";
2320
+ inherits: false;
2321
+ }
2322
+ @property --tw-inset-shadow-alpha {
2323
+ syntax: "<percentage>";
2324
+ inherits: false;
2325
+ initial-value: 100%;
2326
+ }
2327
+ @property --tw-ring-color {
2328
+ syntax: "*";
2329
+ inherits: false;
2330
+ }
2331
+ @property --tw-ring-shadow {
2332
+ syntax: "*";
2333
+ inherits: false;
2334
+ initial-value: 0 0 #0000;
2335
+ }
2336
+ @property --tw-inset-ring-color {
2337
+ syntax: "*";
2338
+ inherits: false;
2339
+ }
2340
+ @property --tw-inset-ring-shadow {
2341
+ syntax: "*";
2342
+ inherits: false;
2343
+ initial-value: 0 0 #0000;
2344
+ }
2345
+ @property --tw-ring-inset {
2346
+ syntax: "*";
2347
+ inherits: false;
2348
+ }
2349
+ @property --tw-ring-offset-width {
2350
+ syntax: "<length>";
2351
+ inherits: false;
2352
+ initial-value: 0px;
2353
+ }
2354
+ @property --tw-ring-offset-color {
2355
+ syntax: "*";
2356
+ inherits: false;
2357
+ initial-value: #fff;
2358
+ }
2359
+ @property --tw-ring-offset-shadow {
2360
+ syntax: "*";
2361
+ inherits: false;
2362
+ initial-value: 0 0 #0000;
2363
+ }
2364
+ @property --tw-blur {
2365
+ syntax: "*";
2366
+ inherits: false;
2367
+ }
2368
+ @property --tw-brightness {
2369
+ syntax: "*";
2370
+ inherits: false;
2371
+ }
2372
+ @property --tw-contrast {
2373
+ syntax: "*";
2374
+ inherits: false;
2375
+ }
2376
+ @property --tw-grayscale {
2377
+ syntax: "*";
2378
+ inherits: false;
2379
+ }
2380
+ @property --tw-hue-rotate {
2381
+ syntax: "*";
2382
+ inherits: false;
2383
+ }
2384
+ @property --tw-invert {
2385
+ syntax: "*";
2386
+ inherits: false;
2387
+ }
2388
+ @property --tw-opacity {
2389
+ syntax: "*";
2390
+ inherits: false;
2391
+ }
2392
+ @property --tw-saturate {
2393
+ syntax: "*";
2394
+ inherits: false;
2395
+ }
2396
+ @property --tw-sepia {
2397
+ syntax: "*";
2398
+ inherits: false;
2399
+ }
2400
+ @property --tw-drop-shadow {
2401
+ syntax: "*";
2402
+ inherits: false;
2403
+ }
2404
+ @property --tw-drop-shadow-color {
2405
+ syntax: "*";
2406
+ inherits: false;
2407
+ }
2408
+ @property --tw-drop-shadow-alpha {
2409
+ syntax: "<percentage>";
2410
+ inherits: false;
2411
+ initial-value: 100%;
2412
+ }
2413
+ @property --tw-drop-shadow-size {
2414
+ syntax: "*";
2415
+ inherits: false;
2416
+ }
2417
+ @property --tw-backdrop-blur {
2418
+ syntax: "*";
2419
+ inherits: false;
2420
+ }
2421
+ @property --tw-backdrop-brightness {
2422
+ syntax: "*";
2423
+ inherits: false;
2424
+ }
2425
+ @property --tw-backdrop-contrast {
2426
+ syntax: "*";
2427
+ inherits: false;
2428
+ }
2429
+ @property --tw-backdrop-grayscale {
2430
+ syntax: "*";
2431
+ inherits: false;
2432
+ }
2433
+ @property --tw-backdrop-hue-rotate {
2434
+ syntax: "*";
2435
+ inherits: false;
2436
+ }
2437
+ @property --tw-backdrop-invert {
2438
+ syntax: "*";
2439
+ inherits: false;
2440
+ }
2441
+ @property --tw-backdrop-opacity {
2442
+ syntax: "*";
2443
+ inherits: false;
2444
+ }
2445
+ @property --tw-backdrop-saturate {
2446
+ syntax: "*";
2447
+ inherits: false;
2448
+ }
2449
+ @property --tw-backdrop-sepia {
2450
+ syntax: "*";
2451
+ inherits: false;
2452
+ }
2453
+ @property --tw-duration {
2454
+ syntax: "*";
2455
+ inherits: false;
2456
+ }
2457
+ @property --tw-ease {
2458
+ syntax: "*";
2459
+ inherits: false;
2460
+ }
2461
+ @layer properties {
2462
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
2463
+ *, ::before, ::after, ::backdrop {
2464
+ --tw-translate-x: 0;
2465
+ --tw-translate-y: 0;
2466
+ --tw-translate-z: 0;
2467
+ --tw-rotate-x: initial;
2468
+ --tw-rotate-y: initial;
2469
+ --tw-rotate-z: initial;
2470
+ --tw-skew-x: initial;
2471
+ --tw-skew-y: initial;
2472
+ --tw-space-y-reverse: 0;
2473
+ --tw-border-style: solid;
2474
+ --tw-gradient-position: initial;
2475
+ --tw-gradient-from: #0000;
2476
+ --tw-gradient-via: #0000;
2477
+ --tw-gradient-to: #0000;
2478
+ --tw-gradient-stops: initial;
2479
+ --tw-gradient-via-stops: initial;
2480
+ --tw-gradient-from-position: 0%;
2481
+ --tw-gradient-via-position: 50%;
2482
+ --tw-gradient-to-position: 100%;
2483
+ --tw-leading: initial;
2484
+ --tw-font-weight: initial;
2485
+ --tw-tracking: initial;
2486
+ --tw-ordinal: initial;
2487
+ --tw-slashed-zero: initial;
2488
+ --tw-numeric-figure: initial;
2489
+ --tw-numeric-spacing: initial;
2490
+ --tw-numeric-fraction: initial;
2491
+ --tw-shadow: 0 0 #0000;
2492
+ --tw-shadow-color: initial;
2493
+ --tw-shadow-alpha: 100%;
2494
+ --tw-inset-shadow: 0 0 #0000;
2495
+ --tw-inset-shadow-color: initial;
2496
+ --tw-inset-shadow-alpha: 100%;
2497
+ --tw-ring-color: initial;
2498
+ --tw-ring-shadow: 0 0 #0000;
2499
+ --tw-inset-ring-color: initial;
2500
+ --tw-inset-ring-shadow: 0 0 #0000;
2501
+ --tw-ring-inset: initial;
2502
+ --tw-ring-offset-width: 0px;
2503
+ --tw-ring-offset-color: #fff;
2504
+ --tw-ring-offset-shadow: 0 0 #0000;
2505
+ --tw-blur: initial;
2506
+ --tw-brightness: initial;
2507
+ --tw-contrast: initial;
2508
+ --tw-grayscale: initial;
2509
+ --tw-hue-rotate: initial;
2510
+ --tw-invert: initial;
2511
+ --tw-opacity: initial;
2512
+ --tw-saturate: initial;
2513
+ --tw-sepia: initial;
2514
+ --tw-drop-shadow: initial;
2515
+ --tw-drop-shadow-color: initial;
2516
+ --tw-drop-shadow-alpha: 100%;
2517
+ --tw-drop-shadow-size: initial;
2518
+ --tw-backdrop-blur: initial;
2519
+ --tw-backdrop-brightness: initial;
2520
+ --tw-backdrop-contrast: initial;
2521
+ --tw-backdrop-grayscale: initial;
2522
+ --tw-backdrop-hue-rotate: initial;
2523
+ --tw-backdrop-invert: initial;
2524
+ --tw-backdrop-opacity: initial;
2525
+ --tw-backdrop-saturate: initial;
2526
+ --tw-backdrop-sepia: initial;
2527
+ --tw-duration: initial;
2528
+ --tw-ease: initial;
2529
+ }
2530
+ }
2531
+ }
2532
+
2533
+ .fn-code-stage[data-wrap="false"][data-v-0cdced90] .shiki-magic-move-container,
2534
+ .fn-code-stage[data-wrap="false"][data-v-0cdced90] .fn-static-code,
2535
+ .fn-code-stage[data-wrap="false"][data-v-0cdced90] .fn-twoslash,
2536
+ .fn-code-stage[data-wrap="false"][data-v-0cdced90] .fn-twoslash .twoslash,
2537
+ .fn-code-stage[data-wrap="false"][data-v-0cdced90] .fn-twoslash pre.shiki {
2538
+ display: inline-block;
2539
+ width: max-content;
2540
+ min-width: max-content;
2541
+ }
2542
+ .fn-code-stage[data-wrap="true"][data-v-0cdced90] .shiki-magic-move-container,
2543
+ .fn-code-stage[data-wrap="true"][data-v-0cdced90] .fn-static-code,
2544
+ .fn-code-stage[data-wrap="true"][data-v-0cdced90] .fn-static-code code,
2545
+ .fn-code-stage[data-wrap="true"][data-v-0cdced90] .fn-twoslash,
2546
+ .fn-code-stage[data-wrap="true"][data-v-0cdced90] .fn-twoslash .twoslash,
2547
+ .fn-code-stage[data-wrap="true"][data-v-0cdced90] .fn-twoslash pre.shiki,
2548
+ .fn-code-stage[data-wrap="true"][data-v-0cdced90] .fn-twoslash pre.shiki > code {
2549
+ display: block;
2550
+ width: 100%;
2551
+ min-width: 0 !important;
2552
+ white-space: pre-wrap !important;
2553
+ overflow-wrap: anywhere;
2554
+ word-break: break-word;
2555
+ }
2556
+ .fn-twoslash[data-v-0cdced90] pre.shiki {
2557
+ margin: 0 !important;
2558
+ padding: 0 !important;
2559
+ background: transparent !important;
2560
+ }
2561
+ .fn-twoslash[data-v-0cdced90] pre.shiki code {
2562
+ font-size: 12px;
2563
+ line-height: 1.65;
2564
+ }
2565
+ .fn-twoslash[data-v-0cdced90] .twoslash-popup-container {
2566
+ max-width: min(520px, calc(100vw - 5rem));
2567
+ }
2568
+
2569
+ .fn-panel[data-v-a0bdb905] {
2570
+ --fn-panel-height: min(72vh, 760px);
2571
+ --fn-panel-min-height: 420px;
2572
+ --fn-panel-z-index: 1400;
2573
+ --fn-panel-toggle-border: rgba(148, 163, 184, 0.5);
2574
+ --fn-panel-toggle-bg: rgba(15, 23, 42, 0.82);
2575
+ --fn-panel-toggle-color: rgba(226, 232, 240, 0.95);
2576
+ --fn-panel-toggle-shadow: 0 10px 26px rgba(15, 23, 42, 0.24);
2577
+ --fn-panel-toggle-hover-border: rgba(125, 211, 252, 0.7);
2578
+ --fn-panel-toggle-hover-bg: rgba(15, 23, 42, 0.96);
2579
+ --fn-panel-backdrop-bg: rgba(2, 6, 23, 0.72);
2580
+ position: relative;
2581
+ width: 100%;
2582
+ }
2583
+ .fn-panel__surface[data-v-a0bdb905] {
2584
+ position: relative;
2585
+ width: 100%;
2586
+ height: var(--fn-panel-height);
2587
+ min-height: var(--fn-panel-min-height);
2588
+ overflow: hidden;
2589
+ isolation: isolate;
2590
+ }
2591
+ .fn-panel__viewer[data-v-a0bdb905] {
2592
+ width: 100%;
2593
+ height: 100%;
2594
+ }
2595
+ .fn-panel__toggle[data-v-a0bdb905] {
2596
+ position: absolute;
2597
+ left: 0.95rem;
2598
+ bottom: 0.95rem;
2599
+ width: 2.3rem;
2600
+ height: 2.3rem;
2601
+ border: 1px solid var(--fn-panel-toggle-border);
2602
+ border-radius: 0.65rem;
2603
+ background: var(--fn-panel-toggle-bg);
2604
+ color: var(--fn-panel-toggle-color);
2605
+ display: inline-flex;
2606
+ align-items: center;
2607
+ justify-content: center;
2608
+ cursor: pointer;
2609
+ z-index: 40;
2610
+ box-shadow: var(--fn-panel-toggle-shadow);
2611
+ transition:
2612
+ transform 0.18s ease,
2613
+ background-color 0.2s ease,
2614
+ border-color 0.2s ease;
2615
+ }
2616
+ .fn-panel__toggle[data-v-a0bdb905]:hover {
2617
+ transform: translateY(-1px);
2618
+ border-color: var(--fn-panel-toggle-hover-border);
2619
+ background: var(--fn-panel-toggle-hover-bg);
2620
+ }
2621
+ .fn-panel__toggle svg[data-v-a0bdb905] {
2622
+ width: 1rem;
2623
+ height: 1rem;
2624
+ }
2625
+ .fn-panel--fullscreen[data-v-a0bdb905] {
2626
+ position: fixed;
2627
+ inset: 0;
2628
+ z-index: var(--fn-panel-z-index);
2629
+ display: grid;
2630
+ place-items: center;
2631
+ padding: 1rem;
2632
+ }
2633
+ .fn-panel__backdrop[data-v-a0bdb905] {
2634
+ position: absolute;
2635
+ inset: 0;
2636
+ border: none;
2637
+ background: var(--fn-panel-backdrop-bg);
2638
+ cursor: default;
2639
+ }
2640
+ .fn-panel--fullscreen .fn-panel__surface[data-v-a0bdb905] {
2641
+ width: min(1480px, 100%);
2642
+ height: min(94vh, 1020px);
2643
+ max-height: 100%;
2644
+ z-index: 1;
2645
+ }
2646
+ @media (max-width: 900px) {
2647
+ .fn-panel--fullscreen[data-v-a0bdb905] {
2648
+ padding: 0.55rem;
2649
+ }
2650
+ .fn-panel--fullscreen .fn-panel__surface[data-v-a0bdb905] {
2651
+ width: 100%;
2652
+ height: 100%;
2653
+ }
2654
+ }