dev-rexpro commited on
Commit
537a6f0
·
verified ·
1 Parent(s): 6dab1ad

Upload 946 files

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. frontend/build/_app/immutable/assets/0.DHbLCdh1.css +0 -0
  2. frontend/build/_app/immutable/assets/2.CSIpV6yM.css +63 -0
  3. frontend/build/_app/immutable/assets/20.COr-Wk1C.css +40 -0
  4. frontend/build/_app/immutable/assets/25.Bd6gSPVp.css +59 -0
  5. frontend/build/_app/immutable/assets/31.DkL0ojTP.css +9 -0
  6. frontend/build/_app/immutable/assets/37.D2sXyJOc.css +20 -0
  7. frontend/build/_app/immutable/assets/50.e9n4QrU5.css +12 -0
  8. frontend/build/_app/immutable/assets/Chat.BG2xzWQD.css +1639 -0
  9. frontend/build/_app/immutable/assets/Confetti.GO4bkblm.css +94 -0
  10. frontend/build/_app/immutable/assets/ConfirmDialog.DrZLjW6b.css +15 -0
  11. frontend/build/_app/immutable/assets/Drawer.BrPDj7A-.css +15 -0
  12. frontend/build/_app/immutable/assets/EmojiPicker.B9Jvt7RI.css +15 -0
  13. frontend/build/_app/immutable/assets/FileItem.bvLI9b9Q.css +140 -0
  14. frontend/build/_app/immutable/assets/Heart.COe_Qb0n.css +20 -0
  15. frontend/build/_app/immutable/assets/ImportModal.XO2J5IC1.css +20 -0
  16. frontend/build/_app/immutable/assets/KaTeX_AMS-Regular.BQhdFMY1.woff2 +3 -0
  17. frontend/build/_app/immutable/assets/KaTeX_AMS-Regular.DMm9YOAa.woff +0 -0
  18. frontend/build/_app/immutable/assets/KaTeX_AMS-Regular.DRggAlZN.ttf +3 -0
  19. frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Bold.ATXxdsX0.ttf +3 -0
  20. frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Bold.BEiXGLvX.woff +0 -0
  21. frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Bold.Dq_IR9rO.woff2 +3 -0
  22. frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Regular.CTRA-rTL.woff +0 -0
  23. frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Regular.Di6jR-x-.woff2 +3 -0
  24. frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Regular.wX97UBjC.ttf +3 -0
  25. frontend/build/_app/immutable/assets/KaTeX_Fraktur-Bold.BdnERNNW.ttf +3 -0
  26. frontend/build/_app/immutable/assets/KaTeX_Fraktur-Bold.BsDP51OF.woff +0 -0
  27. frontend/build/_app/immutable/assets/KaTeX_Fraktur-Bold.CL6g_b3V.woff2 +3 -0
  28. frontend/build/_app/immutable/assets/KaTeX_Fraktur-Regular.CB_wures.ttf +3 -0
  29. frontend/build/_app/immutable/assets/KaTeX_Fraktur-Regular.CTYiF6lA.woff2 +3 -0
  30. frontend/build/_app/immutable/assets/KaTeX_Fraktur-Regular.Dxdc4cR9.woff +0 -0
  31. frontend/build/_app/immutable/assets/KaTeX_Main-Bold.Cx986IdX.woff2 +3 -0
  32. frontend/build/_app/immutable/assets/KaTeX_Main-Bold.Jm3AIy58.woff +0 -0
  33. frontend/build/_app/immutable/assets/KaTeX_Main-Bold.waoOVXN0.ttf +3 -0
  34. frontend/build/_app/immutable/assets/KaTeX_Main-BoldItalic.DxDJ3AOS.woff2 +3 -0
  35. frontend/build/_app/immutable/assets/KaTeX_Main-BoldItalic.DzxPMmG6.ttf +3 -0
  36. frontend/build/_app/immutable/assets/KaTeX_Main-BoldItalic.SpSLRI95.woff +0 -0
  37. frontend/build/_app/immutable/assets/KaTeX_Main-Italic.3WenGoN9.ttf +3 -0
  38. frontend/build/_app/immutable/assets/KaTeX_Main-Italic.BMLOBm91.woff +0 -0
  39. frontend/build/_app/immutable/assets/KaTeX_Main-Italic.NWA7e6Wa.woff2 +3 -0
  40. frontend/build/_app/immutable/assets/KaTeX_Main-Regular.B22Nviop.woff2 +3 -0
  41. frontend/build/_app/immutable/assets/KaTeX_Main-Regular.Dr94JaBh.woff +0 -0
  42. frontend/build/_app/immutable/assets/KaTeX_Main-Regular.ypZvNtVU.ttf +3 -0
  43. frontend/build/_app/immutable/assets/KaTeX_Math-BoldItalic.B3XSjfu4.ttf +3 -0
  44. frontend/build/_app/immutable/assets/KaTeX_Math-BoldItalic.CZnvNsCZ.woff2 +3 -0
  45. frontend/build/_app/immutable/assets/KaTeX_Math-BoldItalic.iY-2wyZ7.woff +0 -0
  46. frontend/build/_app/immutable/assets/KaTeX_Math-Italic.DA0__PXp.woff +0 -0
  47. frontend/build/_app/immutable/assets/KaTeX_Math-Italic.flOr_0UB.ttf +3 -0
  48. frontend/build/_app/immutable/assets/KaTeX_Math-Italic.t53AETM-.woff2 +3 -0
  49. frontend/build/_app/immutable/assets/KaTeX_SansSerif-Bold.CFMepnvq.ttf +3 -0
  50. frontend/build/_app/immutable/assets/KaTeX_SansSerif-Bold.D1sUS0GD.woff2 +3 -0
frontend/build/_app/immutable/assets/0.DHbLCdh1.css ADDED
The diff for this file is too large to render. See raw diff
 
frontend/build/_app/immutable/assets/2.CSIpV6yM.css ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ input.svelte-12km1ip::-webkit-outer-spin-button,
3
+ input.svelte-12km1ip::-webkit-inner-spin-button {
4
+ /* display: none; <- Crashes Chrome on hover */
5
+ -webkit-appearance: none;
6
+ margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
7
+ }
8
+
9
+ .tabs.svelte-12km1ip::-webkit-scrollbar {
10
+ display: none; /* for Chrome, Safari and Opera */
11
+ }
12
+
13
+ .tabs.svelte-12km1ip {
14
+ -ms-overflow-style: none; /* IE and Edge */
15
+ scrollbar-width: none; /* Firefox */
16
+ }
17
+
18
+ /* (unused) input[type="number"] {
19
+ appearance: textfield;
20
+ -moz-appearance: textfield; /* Firefox *\/
21
+ }*/
22
+
23
+ /* (unused) .loading {
24
+ display: inline-block;
25
+ clip-path: inset(0 1ch 0 0);
26
+ animation: l 1s steps(3) infinite;
27
+ letter-spacing: -0.5px;
28
+ }*/
29
+
30
+ @keyframes svelte-1v2axqk-l {
31
+ to {
32
+ clip-path: inset(0 -1ch 0 0);
33
+ }
34
+ }
35
+
36
+ /* (unused) pre[class*="language-"] {
37
+ position: relative;
38
+ overflow: auto;
39
+
40
+ /* make space *\/
41
+ margin: 5px 0;
42
+ padding: 1.75rem 0 1.75rem 1rem;
43
+ border-radius: 10px;
44
+ }*/
45
+
46
+ /* (unused) pre[class*="language-"] button {
47
+ position: absolute;
48
+ top: 5px;
49
+ right: 5px;
50
+
51
+ font-size: 0.9rem;
52
+ padding: 0.15rem;
53
+ background-color: #828282;
54
+
55
+ border: ridge 1px #7b7b7c;
56
+ border-radius: 5px;
57
+ text-shadow: #c4c4c4 0 0 2px;
58
+ }*/
59
+
60
+ /* (unused) pre[class*="language-"] button:hover {
61
+ cursor: pointer;
62
+ background-color: #bcbabb;
63
+ }*/
frontend/build/_app/immutable/assets/20.COr-Wk1C.css ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ input.svelte-zhsfcf::-webkit-outer-spin-button,
3
+ input.svelte-zhsfcf::-webkit-inner-spin-button {
4
+ /* display: none; <- Crashes Chrome on hover */
5
+ -webkit-appearance: none;
6
+ margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
7
+ }
8
+
9
+ /* (unused) .tabs::-webkit-scrollbar {
10
+ display: none; /* for Chrome, Safari and Opera *\/
11
+ }*/
12
+
13
+ /* (unused) .tabs {
14
+ -ms-overflow-style: none; /* IE and Edge *\/
15
+ scrollbar-width: none; /* Firefox *\/
16
+ }*/
17
+
18
+ /* (unused) input[type='number'] {
19
+ -moz-appearance: textfield; /* Firefox *\/
20
+ }*/
21
+
22
+ input.svelte-1ga5uvq::-webkit-outer-spin-button,
23
+ input.svelte-1ga5uvq::-webkit-inner-spin-button {
24
+ /* display: none; <- Crashes Chrome on hover */
25
+ -webkit-appearance: none;
26
+ margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
27
+ }
28
+
29
+ /* (unused) .tabs::-webkit-scrollbar {
30
+ display: none; /* for Chrome, Safari and Opera *\/
31
+ }*/
32
+
33
+ /* (unused) .tabs {
34
+ -ms-overflow-style: none; /* IE and Edge *\/
35
+ scrollbar-width: none; /* Firefox *\/
36
+ }*/
37
+
38
+ /* (unused) input[type="number"] {
39
+ -moz-appearance: textfield; /* Firefox *\/
40
+ }*/
frontend/build/_app/immutable/assets/25.Bd6gSPVp.css ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ .highlight.svelte-s6wdik {
3
+ animation: svelte-s6wdik-highlightAnimation 2s ease-in-out;
4
+ }
5
+
6
+ @keyframes svelte-s6wdik-highlightAnimation {
7
+ 0% {
8
+ background-color: rgba(0, 60, 255, 0.1);
9
+ }
10
+ 100% {
11
+ background-color: transparent;
12
+ }
13
+ }
14
+
15
+ /* Swipe-to-reply styles */
16
+ .swipe-reply-wrapper.svelte-s6wdik {
17
+ touch-action: pan-y;
18
+ }
19
+
20
+ .swipe-reply-indicator.svelte-s6wdik {
21
+ position: absolute;
22
+ left: 8px;
23
+ top: 0;
24
+ bottom: 0;
25
+ display: flex;
26
+ align-items: center;
27
+ justify-content: center;
28
+ z-index: 5;
29
+ pointer-events: none;
30
+ }
31
+
32
+ .swipe-reply-icon.svelte-s6wdik {
33
+ display: flex;
34
+ align-items: center;
35
+ justify-content: center;
36
+ width: 32px;
37
+ height: 32px;
38
+ border-radius: 50%;
39
+ background-color: rgba(128, 128, 128, 0.15);
40
+ color: rgba(128, 128, 128, 0.8);
41
+ transition:
42
+ background-color 0.15s,
43
+ color 0.15s;
44
+ }
45
+
46
+ .swipe-reply-icon--active.svelte-s6wdik {
47
+ background-color: rgba(59, 130, 246, 0.2);
48
+ color: rgb(59, 130, 246);
49
+ }
50
+
51
+ .dark .swipe-reply-icon.svelte-s6wdik {
52
+ background-color: rgba(200, 200, 200, 0.1);
53
+ color: rgba(200, 200, 200, 0.6);
54
+ }
55
+
56
+ .dark .swipe-reply-icon--active.svelte-s6wdik {
57
+ background-color: rgba(96, 165, 250, 0.2);
58
+ color: rgb(96, 165, 250);
59
+ }
frontend/build/_app/immutable/assets/31.DkL0ojTP.css ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+
2
+ /* (unused) .scrollbar-hidden::-webkit-scrollbar {
3
+ display: none; /* for Chrome, Safari and Opera *\/
4
+ }*/
5
+
6
+ /* (unused) .scrollbar-hidden {
7
+ -ms-overflow-style: none; /* IE and Edge *\/
8
+ scrollbar-width: none; /* Firefox *\/
9
+ }*/
frontend/build/_app/immutable/assets/37.D2sXyJOc.css ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ input.svelte-1bctwft::-webkit-outer-spin-button,
3
+ input.svelte-1bctwft::-webkit-inner-spin-button {
4
+ /* display: none; <- Crashes Chrome on hover */
5
+ -webkit-appearance: none;
6
+ margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
7
+ }
8
+
9
+ /* (unused) .tabs::-webkit-scrollbar {
10
+ display: none; /* for Chrome, Safari and Opera *\/
11
+ }*/
12
+
13
+ /* (unused) .tabs {
14
+ -ms-overflow-style: none; /* IE and Edge *\/
15
+ scrollbar-width: none; /* Firefox *\/
16
+ }*/
17
+
18
+ /* (unused) input[type='number'] {
19
+ -moz-appearance: textfield; /* Firefox *\/
20
+ }*/
frontend/build/_app/immutable/assets/50.e9n4QrU5.css ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ .image.svelte-14ofdb6 {
3
+ position: absolute;
4
+ top: 0;
5
+ left: 0;
6
+ width: 100%;
7
+ height: 100%;
8
+ background-size: cover;
9
+ background-position: center; /* Center the background images */
10
+ transition: opacity 1s ease-in-out; /* Smooth fade effect */
11
+ opacity: 0; /* Make images initially not visible */
12
+ }
frontend/build/_app/immutable/assets/Chat.BG2xzWQD.css ADDED
@@ -0,0 +1,1639 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ .svelte-flow__zoom.svelte-1vl0uat {
3
+ width: 100%;
4
+ height: 100%;
5
+ position: absolute;
6
+ top: 0;
7
+ left: 0;
8
+ z-index: 4;
9
+ }
10
+
11
+ .svelte-flow__pane.svelte-j55c5z {
12
+ position: absolute;
13
+ top: 0;
14
+ left: 0;
15
+ width: 100%;
16
+ height: 100%;
17
+ }
18
+
19
+ .svelte-flow__viewport.svelte-tjeeg3 {
20
+ width: 100%;
21
+ height: 100%;
22
+ position: absolute;
23
+ top: 0;
24
+ left: 0;
25
+ }
26
+
27
+ .svelte-flow__nodes.svelte-v0zrhd {
28
+ width: 100%;
29
+ height: 100%;
30
+ position: absolute;
31
+ left: 0;
32
+ top: 0;
33
+ }
34
+
35
+ .svelte-flow__selection.svelte-1vr3gfi {
36
+ position: absolute;
37
+ top: 0;
38
+ left: 0;
39
+ }
40
+
41
+ .selection-wrapper.svelte-sf2y5e {
42
+ position: absolute;
43
+ top: 0;
44
+ left: 0;
45
+ z-index: 7;
46
+ pointer-events: all;
47
+ }
48
+
49
+ .svelte-flow.svelte-4xqsnx {
50
+ width: 100%;
51
+ height: 100%;
52
+ overflow: hidden;
53
+ position: relative;
54
+ z-index: 0;
55
+
56
+ background-color: var(--background-color, var(--background-color-default));
57
+ }
58
+
59
+ :root {
60
+ --background-color-default: #fff;
61
+ --background-pattern-color-default: #ddd;
62
+
63
+ --minimap-mask-color-default: rgba(240, 240, 240, 0.6);
64
+ --minimap-mask-stroke-color-default: none;
65
+ --minimap-mask-stroke-width-default: 1;
66
+
67
+ --controls-button-background-color-default: #fefefe;
68
+ --controls-button-background-color-hover-default: #f4f4f4;
69
+ --controls-button-color-default: inherit;
70
+ --controls-button-color-hover-default: inherit;
71
+ --controls-button-border-color-default: #eee;
72
+ }
73
+
74
+ .svelte-flow__background.svelte-11j66u4 {
75
+ position: absolute;
76
+ width: 100%;
77
+ height: 100%;
78
+ top: 0;
79
+ left: 0;
80
+ }
81
+
82
+ .json-root.svelte-puld9w {
83
+ font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
84
+ font-size: 0.75rem;
85
+ line-height: 1.6;
86
+ padding: 0.75rem 1rem;
87
+ }
88
+ /* (empty) .json-node {
89
+ /* keep structure visible *\/
90
+ }*/
91
+ .json-toggle.svelte-puld9w {
92
+ cursor: pointer;
93
+ user-select: none;
94
+ }
95
+ .json-toggle.svelte-puld9w:hover {
96
+ opacity: 0.7;
97
+ }
98
+ .json-arrow.svelte-puld9w {
99
+ display: inline-block;
100
+ width: 1em;
101
+ font-size: 0.55em;
102
+ transition: transform 0.15s ease;
103
+ color: #9ca3af;
104
+ vertical-align: middle;
105
+ }
106
+ .json-expanded.svelte-puld9w {
107
+ transform: rotate(90deg);
108
+ }
109
+ .json-children.svelte-puld9w {
110
+ padding-left: 1.25em;
111
+ border-left: 1px solid rgba(128, 128, 128, 0.15);
112
+ margin-left: 0.35em;
113
+ }
114
+ /* (empty) .json-entry {
115
+ /* one entry per line *\/
116
+ }*/
117
+ .json-key.svelte-puld9w {
118
+ color: #0550ae;
119
+ }
120
+ .dark .json-key.svelte-puld9w {
121
+ color: #79c0ff;
122
+ }
123
+ .json-colon.svelte-puld9w {
124
+ color: #6b7280;
125
+ }
126
+ .json-string.svelte-puld9w {
127
+ color: #0a3069;
128
+ }
129
+ .dark .json-string.svelte-puld9w {
130
+ color: #a5d6ff;
131
+ }
132
+ .json-number.svelte-puld9w {
133
+ color: #0550ae;
134
+ }
135
+ .dark .json-number.svelte-puld9w {
136
+ color: #79c0ff;
137
+ }
138
+ .json-boolean.svelte-puld9w {
139
+ color: #cf222e;
140
+ }
141
+ .dark .json-boolean.svelte-puld9w {
142
+ color: #ff7b72;
143
+ }
144
+ .json-null.svelte-puld9w {
145
+ color: #6b7280;
146
+ font-style: italic;
147
+ }
148
+ .json-bracket.svelte-puld9w {
149
+ color: #6b7280;
150
+ }
151
+ .json-comma.svelte-puld9w {
152
+ color: #6b7280;
153
+ }
154
+ .json-preview.svelte-puld9w {
155
+ color: #9ca3af;
156
+ font-size: 0.85em;
157
+ }
158
+ .dark .json-preview.svelte-puld9w {
159
+ color: #6b7280;
160
+ }
161
+
162
+ .nb-cm-editor.svelte-1te01iq {
163
+ width: 100%;
164
+ background: #fffef5;
165
+ }
166
+ .dark .nb-cm-editor.svelte-1te01iq {
167
+ background: transparent;
168
+ }
169
+
170
+ .notebook-view.svelte-1wcdx53 {
171
+ padding: 0;
172
+ font-size: 0.8rem;
173
+ }
174
+ .nb-toolbar.svelte-1wcdx53 {
175
+ position: sticky;
176
+ top: 0;
177
+ z-index: 5;
178
+ background: rgba(255, 255, 255, 0.95);
179
+ backdrop-filter: blur(4px);
180
+ }
181
+ .dark .nb-toolbar.svelte-1wcdx53 {
182
+ background: rgba(17, 24, 39, 0.95);
183
+ }
184
+ .nb-btn.svelte-1wcdx53 {
185
+ font-size: 0.6rem;
186
+ padding: 0.15rem 0.35rem;
187
+ border-radius: 0.25rem;
188
+ color: #6b7280;
189
+ transition: all 0.15s;
190
+ }
191
+ .nb-btn.svelte-1wcdx53:hover:not(:disabled) {
192
+ background: rgba(128, 128, 128, 0.1);
193
+ color: #374151;
194
+ }
195
+ .dark .nb-btn.svelte-1wcdx53:hover:not(:disabled) {
196
+ color: #d1d5db;
197
+ }
198
+ .nb-btn.svelte-1wcdx53:disabled {
199
+ opacity: 0.4;
200
+ cursor: not-allowed;
201
+ }
202
+ .nb-cell.svelte-1wcdx53 {
203
+ padding: 0.25rem 0.75rem;
204
+ }
205
+ .nb-cell-markdown.svelte-1wcdx53 {
206
+ padding-top: 0.5rem;
207
+ padding-bottom: 0.5rem;
208
+ }
209
+ .nb-markdown.svelte-1wcdx53 h1 {
210
+ font-size: 1.4rem;
211
+ }
212
+ .nb-markdown.svelte-1wcdx53 h2 {
213
+ font-size: 1.2rem;
214
+ }
215
+ .nb-markdown.svelte-1wcdx53 h3 {
216
+ font-size: 1.05rem;
217
+ }
218
+ .nb-markdown.svelte-1wcdx53 p {
219
+ margin: 0.4em 0;
220
+ }
221
+ .nb-markdown.svelte-1wcdx53 pre {
222
+ background: rgba(128, 128, 128, 0.06);
223
+ padding: 0.5rem 0.75rem;
224
+ border-radius: 4px;
225
+ font-size: 0.75rem;
226
+ }
227
+ .nb-code-wrap.svelte-1wcdx53 {
228
+ display: flex;
229
+ gap: 0;
230
+ }
231
+ .nb-cell-gutter.svelte-1wcdx53 {
232
+ flex-shrink: 0;
233
+ width: 2.5rem;
234
+ display: flex;
235
+ flex-direction: column;
236
+ align-items: center;
237
+ padding-top: 0.35rem;
238
+ gap: 0.15rem;
239
+ }
240
+ .nb-cell-label.svelte-1wcdx53 {
241
+ color: #9ca3af;
242
+ font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
243
+ font-size: 0.6rem;
244
+ user-select: none;
245
+ text-align: center;
246
+ }
247
+ .dark .nb-cell-label.svelte-1wcdx53 {
248
+ color: #4b5563;
249
+ }
250
+ .nb-run-btn.svelte-1wcdx53 {
251
+ display: flex;
252
+ align-items: center;
253
+ justify-content: center;
254
+ width: 1.25rem;
255
+ height: 1.25rem;
256
+ border-radius: 0.25rem;
257
+ color: #9ca3af;
258
+ transition: all 0.15s;
259
+ }
260
+ .nb-run-btn.svelte-1wcdx53:hover:not(:disabled) {
261
+ color: #059669;
262
+ background: rgba(5, 150, 105, 0.1);
263
+ }
264
+ .dark .nb-run-btn.svelte-1wcdx53 {
265
+ color: #6b7280;
266
+ }
267
+ .dark .nb-run-btn.svelte-1wcdx53:hover:not(:disabled) {
268
+ color: #34d399;
269
+ background: rgba(52, 211, 153, 0.15);
270
+ }
271
+ .nb-run-btn.svelte-1wcdx53:disabled {
272
+ opacity: 0.3;
273
+ cursor: not-allowed;
274
+ }
275
+ .nb-code-content.svelte-1wcdx53 {
276
+ flex: 1;
277
+ min-width: 0;
278
+ border: 1px solid rgba(128, 128, 128, 0.15);
279
+ border-radius: 4px;
280
+ overflow: hidden;
281
+ }
282
+ .dark .nb-code-content.svelte-1wcdx53 {
283
+ border-color: rgba(128, 128, 128, 0.25);
284
+ }
285
+ .nb-code-source-clickable.svelte-1wcdx53 {
286
+ cursor: text;
287
+ }
288
+ .nb-code-source.svelte-1wcdx53 pre.shiki {
289
+ margin: 0;
290
+ padding: 0.5rem 0.75rem;
291
+ font-size: 0.75rem;
292
+ line-height: 1.5;
293
+ border-radius: 0;
294
+ }
295
+ .nb-code-source.svelte-1wcdx53 pre.shiki code > .line::before {
296
+ display: none;
297
+ }
298
+ .nb-code-source-raw.svelte-1wcdx53 {
299
+ margin: 0;
300
+ padding: 0.5rem 0.75rem;
301
+ font-size: 0.75rem;
302
+ line-height: 1.5;
303
+ font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
304
+ background: #f8f8f8;
305
+ color: #1f2937;
306
+ }
307
+ .dark .nb-code-source-raw.svelte-1wcdx53 {
308
+ background: #161b22;
309
+ color: #e6edf3;
310
+ }
311
+ .nb-code-textarea.svelte-1wcdx53,
312
+ .nb-edit-textarea.svelte-1wcdx53 {
313
+ width: 100%;
314
+ padding: 0.5rem 0.75rem;
315
+ font-size: 0.75rem;
316
+ line-height: 1.5;
317
+ font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
318
+ background: #fffef5;
319
+ color: #1f2937;
320
+ border: none;
321
+ outline: none;
322
+ resize: none;
323
+ min-height: 2.5rem;
324
+ overflow: hidden;
325
+ }
326
+ .dark .nb-code-textarea.svelte-1wcdx53,
327
+ .dark .nb-edit-textarea.svelte-1wcdx53 {
328
+ background: #1a1d23;
329
+ color: #e6edf3;
330
+ }
331
+ .nb-edit-textarea.svelte-1wcdx53 {
332
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
333
+ font-size: 0.8rem;
334
+ background: transparent;
335
+ padding: 0.5rem 0.75rem;
336
+ border: 1px dashed rgba(128, 128, 128, 0.3);
337
+ border-radius: 4px;
338
+ }
339
+ .nb-outputs.svelte-1wcdx53 {
340
+ border-top: 1px solid rgba(128, 128, 128, 0.15);
341
+ }
342
+ .dark .nb-outputs.svelte-1wcdx53 {
343
+ border-top-color: rgba(128, 128, 128, 0.25);
344
+ }
345
+ .nb-output-text.svelte-1wcdx53 {
346
+ margin: 0;
347
+ padding: 0.5rem 0.75rem;
348
+ font-size: 0.7rem;
349
+ line-height: 1.5;
350
+ font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
351
+ color: #374151;
352
+ white-space: pre-wrap;
353
+ word-break: break-all;
354
+ }
355
+ .dark .nb-output-text.svelte-1wcdx53 {
356
+ color: #d1d5db;
357
+ }
358
+ .nb-output-img.svelte-1wcdx53 {
359
+ max-width: 100%;
360
+ height: auto;
361
+ padding: 0.5rem 0.75rem;
362
+ }
363
+ .nb-output-html.svelte-1wcdx53 {
364
+ padding: 0.5rem 0.75rem;
365
+ font-size: 0.75rem;
366
+ overflow-x: auto;
367
+ }
368
+ .nb-output-html.svelte-1wcdx53 table {
369
+ border-collapse: collapse;
370
+ font-size: 0.7rem;
371
+ }
372
+ .nb-output-html.svelte-1wcdx53 td,
373
+ .nb-output-html.svelte-1wcdx53 th {
374
+ border: 1px solid rgba(128, 128, 128, 0.2);
375
+ padding: 3px 8px;
376
+ text-align: left;
377
+ }
378
+ .nb-output-html.svelte-1wcdx53 th {
379
+ background: rgba(128, 128, 128, 0.06);
380
+ font-weight: 600;
381
+ }
382
+ .nb-error.svelte-1wcdx53 {
383
+ margin: 0;
384
+ padding: 0.5rem 0.75rem;
385
+ font-size: 0.7rem;
386
+ line-height: 1.5;
387
+ font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
388
+ background: rgba(239, 68, 68, 0.05);
389
+ color: #dc2626;
390
+ white-space: pre-wrap;
391
+ word-break: break-all;
392
+ }
393
+ .dark .nb-error.svelte-1wcdx53 {
394
+ background: rgba(239, 68, 68, 0.1);
395
+ color: #f87171;
396
+ }
397
+ .nb-raw.svelte-1wcdx53 {
398
+ margin: 0;
399
+ padding: 0.5rem 0.75rem;
400
+ font-size: 0.75rem;
401
+ line-height: 1.5;
402
+ font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
403
+ color: #6b7280;
404
+ white-space: pre-wrap;
405
+ }
406
+ .dark .nb-code-source.svelte-1wcdx53 .shiki,
407
+ .dark .nb-code-source.svelte-1wcdx53 .shiki span {
408
+ color: var(--shiki-dark) !important;
409
+ background-color: var(--shiki-dark-bg) !important;
410
+ font-style: var(--shiki-dark-font-style) !important;
411
+ font-weight: var(--shiki-dark-font-weight) !important;
412
+ text-decoration: var(--shiki-dark-text-decoration) !important;
413
+ }
414
+
415
+ .sqlite-table.svelte-1lnyy8y {
416
+ font-size: 0.7rem;
417
+ line-height: 1.4;
418
+ }
419
+ .sqlite-table.svelte-1lnyy8y th:where(.svelte-1lnyy8y),
420
+ .sqlite-table.svelte-1lnyy8y td:where(.svelte-1lnyy8y) {
421
+ padding: 4px 8px;
422
+ text-align: left;
423
+ white-space: nowrap;
424
+ border: 1px solid rgba(128, 128, 128, 0.15);
425
+ }
426
+ .sqlite-table.svelte-1lnyy8y thead:where(.svelte-1lnyy8y) th:where(.svelte-1lnyy8y) {
427
+ position: sticky;
428
+ top: 0;
429
+ background: rgba(243, 244, 246, 0.95);
430
+ backdrop-filter: blur(4px);
431
+ font-weight: 600;
432
+ color: #374151;
433
+ border-bottom: 2px solid rgba(128, 128, 128, 0.25);
434
+ z-index: 1;
435
+ }
436
+ .dark .sqlite-table.svelte-1lnyy8y thead:where(.svelte-1lnyy8y) th:where(.svelte-1lnyy8y) {
437
+ background: rgba(31, 41, 55, 0.95);
438
+ color: #d1d5db;
439
+ }
440
+ .sqlite-table.svelte-1lnyy8y tbody:where(.svelte-1lnyy8y) tr:where(.svelte-1lnyy8y):nth-child(even) {
441
+ background: rgba(128, 128, 128, 0.04);
442
+ }
443
+ .sqlite-table.svelte-1lnyy8y tbody:where(.svelte-1lnyy8y) tr:where(.svelte-1lnyy8y):hover {
444
+ background: rgba(59, 130, 246, 0.06);
445
+ }
446
+ .dark .sqlite-table.svelte-1lnyy8y tbody:where(.svelte-1lnyy8y) tr:where(.svelte-1lnyy8y):hover {
447
+ background: rgba(59, 130, 246, 0.1);
448
+ }
449
+ .sqlite-table.svelte-1lnyy8y td:where(.svelte-1lnyy8y) {
450
+ color: #374151;
451
+ max-width: 300px;
452
+ overflow: hidden;
453
+ text-overflow: ellipsis;
454
+ }
455
+ .dark .sqlite-table.svelte-1lnyy8y td:where(.svelte-1lnyy8y) {
456
+ color: #d1d5db;
457
+ }
458
+ .sqlite-row-num.svelte-1lnyy8y {
459
+ color: #9ca3af;
460
+ font-size: 0.6rem;
461
+ text-align: right !important;
462
+ user-select: none;
463
+ width: 1px;
464
+ padding-right: 6px !important;
465
+ }
466
+ .dark .sqlite-row-num.svelte-1lnyy8y {
467
+ color: #6b7280;
468
+ }
469
+ .sqlite-null.svelte-1lnyy8y {
470
+ color: #9ca3af !important;
471
+ font-style: italic;
472
+ }
473
+ .dark .sqlite-null.svelte-1lnyy8y {
474
+ color: #6b7280 !important;
475
+ }
476
+ .query-editor.svelte-1lnyy8y::placeholder {
477
+ color: #9ca3af;
478
+ }
479
+ .dark .query-editor.svelte-1lnyy8y::placeholder {
480
+ color: #6b7280;
481
+ }
482
+
483
+ .file-code-editor.svelte-d5j1z1 {
484
+ width: 100%;
485
+ height: 100%;
486
+ }
487
+ .file-code-editor.svelte-d5j1z1 .cm-editor {
488
+ height: 100%;
489
+ }
490
+
491
+ .csv-table.svelte-fddz6d {
492
+ font-size: 0.7rem;
493
+ line-height: 1.4;
494
+ }
495
+ .csv-table.svelte-fddz6d th:where(.svelte-fddz6d),
496
+ .csv-table.svelte-fddz6d td:where(.svelte-fddz6d) {
497
+ padding: 4px 8px;
498
+ text-align: left;
499
+ white-space: nowrap;
500
+ border: 1px solid rgba(128, 128, 128, 0.15);
501
+ }
502
+ .csv-table.svelte-fddz6d thead:where(.svelte-fddz6d) th:where(.svelte-fddz6d) {
503
+ position: sticky;
504
+ top: 0;
505
+ background: rgba(243, 244, 246, 0.95);
506
+ backdrop-filter: blur(4px);
507
+ font-weight: 600;
508
+ color: #374151;
509
+ border-bottom: 2px solid rgba(128, 128, 128, 0.25);
510
+ z-index: 1;
511
+ }
512
+ .dark .csv-table.svelte-fddz6d thead:where(.svelte-fddz6d) th:where(.svelte-fddz6d) {
513
+ background: rgba(31, 41, 55, 0.95);
514
+ color: #d1d5db;
515
+ }
516
+ .csv-table.svelte-fddz6d tbody:where(.svelte-fddz6d) tr:where(.svelte-fddz6d):nth-child(even) {
517
+ background: rgba(128, 128, 128, 0.04);
518
+ }
519
+ .csv-table.svelte-fddz6d tbody:where(.svelte-fddz6d) tr:where(.svelte-fddz6d):hover {
520
+ background: rgba(59, 130, 246, 0.06);
521
+ }
522
+ .dark .csv-table.svelte-fddz6d tbody:where(.svelte-fddz6d) tr:where(.svelte-fddz6d):hover {
523
+ background: rgba(59, 130, 246, 0.1);
524
+ }
525
+ .csv-table.svelte-fddz6d td:where(.svelte-fddz6d) {
526
+ color: #374151;
527
+ }
528
+ .dark .csv-table.svelte-fddz6d td:where(.svelte-fddz6d) {
529
+ color: #d1d5db;
530
+ }
531
+ .csv-row-num.svelte-fddz6d {
532
+ color: #9ca3af;
533
+ font-size: 0.6rem;
534
+ text-align: right !important;
535
+ user-select: none;
536
+ width: 1px;
537
+ padding-right: 6px !important;
538
+ }
539
+ .dark .csv-row-num.svelte-fddz6d {
540
+ color: #6b7280;
541
+ }
542
+ /* ── Office preview styles ──────────────────────────────────────── */
543
+ .office-preview {
544
+ font-size: 0.875rem;
545
+ line-height: 1.6;
546
+ color: #1f2937;
547
+ background: #fff;
548
+ border-radius: 4px;
549
+ }
550
+ .dark .office-preview {
551
+ color: #e5e7eb;
552
+ background: #1a1a2e;
553
+ }
554
+ .office-preview table {
555
+ border-collapse: collapse;
556
+ font-size: 0.75rem;
557
+ font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, monospace;
558
+ line-height: 1.3;
559
+ }
560
+ .office-preview table td,
561
+ .office-preview table th {
562
+ border: 1px solid rgba(200, 200, 200, 0.5);
563
+ padding: 4px 10px;
564
+ text-align: left;
565
+ white-space: nowrap;
566
+ user-select: text;
567
+ cursor: cell;
568
+ max-width: 300px;
569
+ overflow: hidden;
570
+ text-overflow: ellipsis;
571
+ }
572
+ .dark .office-preview table td,
573
+ .dark .office-preview table th {
574
+ border-color: rgba(80, 80, 80, 0.5);
575
+ }
576
+ /* Column letter headers */
577
+ .office-preview table th.excel-col-hdr {
578
+ position: sticky;
579
+ top: 0;
580
+ z-index: 2;
581
+ background: #f0f0f0;
582
+ color: #666;
583
+ font-weight: 500;
584
+ font-size: 0.65rem;
585
+ text-align: center;
586
+ padding: 3px 10px;
587
+ border-bottom: 2px solid rgba(180, 180, 180, 0.6);
588
+ }
589
+ .dark .office-preview table th.excel-col-hdr {
590
+ background: #2a2a3e;
591
+ color: #888;
592
+ border-bottom-color: rgba(100, 100, 100, 0.6);
593
+ }
594
+ /* Row number cells */
595
+ .office-preview .excel-row-num {
596
+ position: sticky;
597
+ left: 0;
598
+ z-index: 1;
599
+ background: #f0f0f0;
600
+ color: #999;
601
+ font-size: 0.6rem;
602
+ text-align: right !important;
603
+ padding: 4px 8px 4px 4px !important;
604
+ user-select: none;
605
+ width: 1px;
606
+ white-space: nowrap;
607
+ border-right: 2px solid rgba(180, 180, 180, 0.6) !important;
608
+ }
609
+ .dark .office-preview .excel-row-num {
610
+ background: #2a2a3e;
611
+ color: #666;
612
+ border-right-color: rgba(100, 100, 100, 0.6) !important;
613
+ }
614
+ /* Corner cell (intersection of row nums and col headers) */
615
+ .office-preview thead .excel-row-num {
616
+ z-index: 3;
617
+ }
618
+ /* Number cells right-aligned */
619
+ .office-preview .excel-num {
620
+ text-align: right;
621
+ font-variant-numeric: tabular-nums;
622
+ }
623
+ /* Row hover and selection */
624
+ .office-preview table tbody tr:nth-child(even) td:not(.excel-row-num) {
625
+ background: rgba(0, 0, 0, 0.015);
626
+ }
627
+ .dark .office-preview table tbody tr:nth-child(even) td:not(.excel-row-num) {
628
+ background: rgba(255, 255, 255, 0.02);
629
+ }
630
+ .office-preview table tbody tr:hover td:not(.excel-row-num) {
631
+ background: rgba(59, 130, 246, 0.06);
632
+ }
633
+ .dark .office-preview table tbody tr:hover td:not(.excel-row-num) {
634
+ background: rgba(59, 130, 246, 0.1);
635
+ }
636
+ .office-preview table td:focus {
637
+ outline: 2px solid rgba(59, 130, 246, 0.5);
638
+ outline-offset: -2px;
639
+ }
640
+ /* DOCX / generic office styles */
641
+ .office-preview img {
642
+ max-width: 100%;
643
+ height: auto;
644
+ }
645
+ .office-preview h1 {
646
+ font-size: 1.5rem;
647
+ font-weight: 700;
648
+ margin: 0.75em 0 0.5em;
649
+ }
650
+ .office-preview h2 {
651
+ font-size: 1.25rem;
652
+ font-weight: 600;
653
+ margin: 0.75em 0 0.5em;
654
+ }
655
+ .office-preview h3 {
656
+ font-size: 1.1rem;
657
+ font-weight: 600;
658
+ margin: 0.5em 0 0.25em;
659
+ }
660
+ .office-preview p {
661
+ margin: 0.25em 0;
662
+ }
663
+ .office-preview ul,
664
+ .office-preview ol {
665
+ padding-left: 1.5em;
666
+ margin: 0.5em 0;
667
+ }
668
+ /* ── Shiki code highlighting ─────────────────────────────────── */
669
+ .shiki-preview.svelte-fddz6d pre.shiki {
670
+ margin: 0;
671
+ padding: 0.75rem 1rem;
672
+ font-size: 0.75rem;
673
+ line-height: 1.6;
674
+ border-radius: 0;
675
+ overflow-x: auto;
676
+ min-height: 100%;
677
+ }
678
+ .shiki-preview.svelte-fddz6d pre.shiki code {
679
+ counter-reset: line;
680
+ }
681
+ .shiki-preview.svelte-fddz6d pre.shiki code > .line {
682
+ counter-increment: line;
683
+ display: inline-block;
684
+ width: 100%;
685
+ white-space: pre;
686
+ }
687
+ .shiki-preview.svelte-fddz6d pre.shiki code > .line::before {
688
+ content: counter(line);
689
+ display: inline-block;
690
+ width: 2.5em;
691
+ text-align: right;
692
+ margin-right: 1em;
693
+ color: #9ca3af;
694
+ user-select: none;
695
+ font-size: 0.65rem;
696
+ }
697
+ .dark .shiki-preview.svelte-fddz6d pre.shiki code > .line::before {
698
+ color: #4b5563;
699
+ }
700
+ /* Shiki dual-theme: swap CSS variables in dark mode */
701
+ .dark .shiki-preview.svelte-fddz6d .shiki,
702
+ .dark .shiki-preview.svelte-fddz6d .shiki span {
703
+ color: var(--shiki-dark) !important;
704
+ background-color: var(--shiki-dark-bg) !important;
705
+ font-style: var(--shiki-dark-font-style) !important;
706
+ font-weight: var(--shiki-dark-font-weight) !important;
707
+ text-decoration: var(--shiki-dark-text-decoration) !important;
708
+ }
709
+
710
+ @keyframes svelte-1v7nouw-loading-bar {
711
+ 0% {
712
+ width: 0;
713
+ margin-left: 0;
714
+ }
715
+ 50% {
716
+ width: 60%;
717
+ margin-left: 20%;
718
+ }
719
+ 100% {
720
+ width: 0;
721
+ margin-left: 100%;
722
+ }
723
+ }
724
+ .animate-loading-bar.svelte-1v7nouw {
725
+ animation: svelte-1v7nouw-loading-bar 1.5s ease-in-out infinite;
726
+ }
727
+ /**
728
+ * Copyright (c) 2014 The xterm.js authors. All rights reserved.
729
+ * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
730
+ * https://github.com/chjj/term.js
731
+ * @license MIT
732
+ *
733
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
734
+ * of this software and associated documentation files (the "Software"), to deal
735
+ * in the Software without restriction, including without limitation the rights
736
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
737
+ * copies of the Software, and to permit persons to whom the Software is
738
+ * furnished to do so, subject to the following conditions:
739
+ *
740
+ * The above copyright notice and this permission notice shall be included in
741
+ * all copies or substantial portions of the Software.
742
+ *
743
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
744
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
745
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
746
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
747
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
748
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
749
+ * THE SOFTWARE.
750
+ *
751
+ * Originally forked from (with the author's permission):
752
+ * Fabrice Bellard's javascript vt100 for jslinux:
753
+ * http://bellard.org/jslinux/
754
+ * Copyright (c) 2011 Fabrice Bellard
755
+ * The original design remains. The terminal itself
756
+ * has been extended to include xterm CSI codes, among
757
+ * other features.
758
+ */
759
+
760
+ /**
761
+ * Default styles for xterm.js
762
+ */
763
+
764
+ .xterm {
765
+ cursor: text;
766
+ position: relative;
767
+ user-select: none;
768
+ -ms-user-select: none;
769
+ -webkit-user-select: none;
770
+ }
771
+
772
+ .xterm.focus,
773
+ .xterm:focus {
774
+ outline: none;
775
+ }
776
+
777
+ .xterm .xterm-helpers {
778
+ position: absolute;
779
+ top: 0;
780
+ /**
781
+ * The z-index of the helpers must be higher than the canvases in order for
782
+ * IMEs to appear on top.
783
+ */
784
+ z-index: 5;
785
+ }
786
+
787
+ .xterm .xterm-helper-textarea {
788
+ padding: 0;
789
+ border: 0;
790
+ margin: 0;
791
+ /* Move textarea out of the screen to the far left, so that the cursor is not visible */
792
+ position: absolute;
793
+ opacity: 0;
794
+ left: -9999em;
795
+ top: 0;
796
+ width: 0;
797
+ height: 0;
798
+ z-index: -5;
799
+ /** Prevent wrapping so the IME appears against the textarea at the correct position */
800
+ white-space: nowrap;
801
+ overflow: hidden;
802
+ resize: none;
803
+ }
804
+
805
+ .xterm .composition-view {
806
+ /* TODO: Composition position got messed up somewhere */
807
+ background: #000;
808
+ color: #FFF;
809
+ display: none;
810
+ position: absolute;
811
+ white-space: nowrap;
812
+ z-index: 1;
813
+ }
814
+
815
+ .xterm .composition-view.active {
816
+ display: block;
817
+ }
818
+
819
+ .xterm .xterm-viewport {
820
+ /* On OS X this is required in order for the scroll bar to appear fully opaque */
821
+ background-color: #000;
822
+ overflow-y: scroll;
823
+ cursor: default;
824
+ position: absolute;
825
+ right: 0;
826
+ left: 0;
827
+ top: 0;
828
+ bottom: 0;
829
+ }
830
+
831
+ .xterm .xterm-screen {
832
+ position: relative;
833
+ }
834
+
835
+ .xterm .xterm-screen canvas {
836
+ position: absolute;
837
+ left: 0;
838
+ top: 0;
839
+ }
840
+
841
+ .xterm-char-measure-element {
842
+ display: inline-block;
843
+ visibility: hidden;
844
+ position: absolute;
845
+ top: 0;
846
+ left: -9999em;
847
+ line-height: normal;
848
+ }
849
+
850
+ .xterm.enable-mouse-events {
851
+ /* When mouse events are enabled (eg. tmux), revert to the standard pointer cursor */
852
+ cursor: default;
853
+ }
854
+
855
+ .xterm.xterm-cursor-pointer,
856
+ .xterm .xterm-cursor-pointer {
857
+ cursor: pointer;
858
+ }
859
+
860
+ .xterm.column-select.focus {
861
+ /* Column selection mode */
862
+ cursor: crosshair;
863
+ }
864
+
865
+ .xterm .xterm-accessibility:not(.debug),
866
+ .xterm .xterm-message {
867
+ position: absolute;
868
+ left: 0;
869
+ top: 0;
870
+ bottom: 0;
871
+ right: 0;
872
+ z-index: 10;
873
+ color: transparent;
874
+ pointer-events: none;
875
+ }
876
+
877
+ .xterm .xterm-accessibility-tree:not(.debug) *::selection {
878
+ color: transparent;
879
+ }
880
+
881
+ .xterm .xterm-accessibility-tree {
882
+ font-family: monospace;
883
+ user-select: text;
884
+ white-space: pre;
885
+ }
886
+
887
+ .xterm .xterm-accessibility-tree > div {
888
+ transform-origin: left;
889
+ width: fit-content;
890
+ }
891
+
892
+ .xterm .live-region {
893
+ position: absolute;
894
+ left: -9999px;
895
+ width: 1px;
896
+ height: 1px;
897
+ overflow: hidden;
898
+ }
899
+
900
+ .xterm-dim {
901
+ /* Dim should not apply to background, so the opacity of the foreground color is applied
902
+ * explicitly in the generated class and reset to 1 here */
903
+ opacity: 1 !important;
904
+ }
905
+
906
+ .xterm-underline-1 { text-decoration: underline; }
907
+ .xterm-underline-2 { text-decoration: double underline; }
908
+ .xterm-underline-3 { text-decoration: wavy underline; }
909
+ .xterm-underline-4 { text-decoration: dotted underline; }
910
+ .xterm-underline-5 { text-decoration: dashed underline; }
911
+
912
+ .xterm-overline {
913
+ text-decoration: overline;
914
+ }
915
+
916
+ .xterm-overline.xterm-underline-1 { text-decoration: overline underline; }
917
+ .xterm-overline.xterm-underline-2 { text-decoration: overline double underline; }
918
+ .xterm-overline.xterm-underline-3 { text-decoration: overline wavy underline; }
919
+ .xterm-overline.xterm-underline-4 { text-decoration: overline dotted underline; }
920
+ .xterm-overline.xterm-underline-5 { text-decoration: overline dashed underline; }
921
+
922
+ .xterm-strikethrough {
923
+ text-decoration: line-through;
924
+ }
925
+
926
+ .xterm-screen .xterm-decoration-container .xterm-decoration {
927
+ z-index: 6;
928
+ position: absolute;
929
+ }
930
+
931
+ .xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer {
932
+ z-index: 7;
933
+ }
934
+
935
+ .xterm-decoration-overview-ruler {
936
+ z-index: 8;
937
+ position: absolute;
938
+ top: 0;
939
+ right: 0;
940
+ pointer-events: none;
941
+ }
942
+
943
+ .xterm-decoration-top {
944
+ z-index: 2;
945
+ position: relative;
946
+ }
947
+
948
+
949
+
950
+ /* Derived from vs/base/browser/ui/scrollbar/media/scrollbar.css */
951
+
952
+ /* xterm.js customization: Override xterm's cursor style */
953
+ .xterm .xterm-scrollable-element > .scrollbar {
954
+ cursor: default;
955
+ }
956
+
957
+ /* Arrows */
958
+ .xterm .xterm-scrollable-element > .scrollbar > .scra {
959
+ cursor: pointer;
960
+ font-size: 11px !important;
961
+ }
962
+
963
+ .xterm .xterm-scrollable-element > .visible {
964
+ opacity: 1;
965
+
966
+ /* Background rule added for IE9 - to allow clicks on dom node */
967
+ background:rgba(0,0,0,0);
968
+
969
+ transition: opacity 100ms linear;
970
+ /* In front of peek view */
971
+ z-index: 11;
972
+ }
973
+ .xterm .xterm-scrollable-element > .invisible {
974
+ opacity: 0;
975
+ pointer-events: none;
976
+ }
977
+ .xterm .xterm-scrollable-element > .invisible.fade {
978
+ transition: opacity 800ms linear;
979
+ }
980
+
981
+ /* Scrollable Content Inset Shadow */
982
+ .xterm .xterm-scrollable-element > .shadow {
983
+ position: absolute;
984
+ display: none;
985
+ }
986
+ .xterm .xterm-scrollable-element > .shadow.top {
987
+ display: block;
988
+ top: 0;
989
+ left: 3px;
990
+ height: 3px;
991
+ width: 100%;
992
+ box-shadow: var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset;
993
+ }
994
+ .xterm .xterm-scrollable-element > .shadow.left {
995
+ display: block;
996
+ top: 3px;
997
+ left: 0;
998
+ height: 100%;
999
+ width: 3px;
1000
+ box-shadow: var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset;
1001
+ }
1002
+ .xterm .xterm-scrollable-element > .shadow.top-left-corner {
1003
+ display: block;
1004
+ top: 0;
1005
+ left: 0;
1006
+ height: 3px;
1007
+ width: 3px;
1008
+ }
1009
+ .xterm .xterm-scrollable-element > .shadow.top.left {
1010
+ box-shadow: var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset;
1011
+ }
1012
+ /* this gets exported as style.css and can be used for the default theming */
1013
+ /* these are the necessary styles for React/Svelte Flow, they get used by base.css and style.css */
1014
+ .svelte-flow {
1015
+ direction: ltr;
1016
+
1017
+ --xy-edge-stroke-default: #b1b1b7;
1018
+ --xy-edge-stroke-width-default: 1;
1019
+ --xy-edge-stroke-selected-default: #555;
1020
+
1021
+ --xy-connectionline-stroke-default: #b1b1b7;
1022
+ --xy-connectionline-stroke-width-default: 1;
1023
+
1024
+ --xy-attribution-background-color-default: rgba(255, 255, 255, 0.5);
1025
+
1026
+ --xy-minimap-background-color-default: #fff;
1027
+ --xy-minimap-mask-background-color-default: rgba(240, 240, 240, 0.6);
1028
+ --xy-minimap-mask-stroke-color-default: transparent;
1029
+ --xy-minimap-mask-stroke-width-default: 1;
1030
+ --xy-minimap-node-background-color-default: #e2e2e2;
1031
+ --xy-minimap-node-stroke-color-default: transparent;
1032
+ --xy-minimap-node-stroke-width-default: 2;
1033
+
1034
+ --xy-background-color-default: transparent;
1035
+ --xy-background-pattern-dots-color-default: #91919a;
1036
+ --xy-background-pattern-lines-color-default: #eee;
1037
+ --xy-background-pattern-cross-color-default: #e2e2e2;
1038
+ background-color: var(--xy-background-color, var(--xy-background-color-default));
1039
+ --xy-node-color-default: inherit;
1040
+ --xy-node-border-default: 1px solid #1a192b;
1041
+ --xy-node-background-color-default: #fff;
1042
+ --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);
1043
+ --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
1044
+ --xy-node-boxshadow-selected-default: 0 0 0 0.5px #1a192b;
1045
+ --xy-node-border-radius-default: 3px;
1046
+
1047
+ --xy-handle-background-color-default: #1a192b;
1048
+ --xy-handle-border-color-default: #fff;
1049
+
1050
+ --xy-selection-background-color-default: rgba(0, 89, 220, 0.08);
1051
+ --xy-selection-border-default: 1px dotted rgba(0, 89, 220, 0.8);
1052
+
1053
+ --xy-controls-button-background-color-default: #fefefe;
1054
+ --xy-controls-button-background-color-hover-default: #f4f4f4;
1055
+ --xy-controls-button-color-default: inherit;
1056
+ --xy-controls-button-color-hover-default: inherit;
1057
+ --xy-controls-button-border-color-default: #eee;
1058
+ --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);
1059
+
1060
+ --xy-edge-label-background-color-default: #ffffff;
1061
+ --xy-edge-label-color-default: inherit;
1062
+ --xy-resize-background-color-default: #3367d9;
1063
+ }
1064
+ .svelte-flow.dark {
1065
+ --xy-edge-stroke-default: #3e3e3e;
1066
+ --xy-edge-stroke-width-default: 1;
1067
+ --xy-edge-stroke-selected-default: #727272;
1068
+
1069
+ --xy-connectionline-stroke-default: #b1b1b7;
1070
+ --xy-connectionline-stroke-width-default: 1;
1071
+
1072
+ --xy-attribution-background-color-default: rgba(150, 150, 150, 0.25);
1073
+
1074
+ --xy-minimap-background-color-default: #141414;
1075
+ --xy-minimap-mask-background-color-default: rgba(60, 60, 60, 0.6);
1076
+ --xy-minimap-mask-stroke-color-default: transparent;
1077
+ --xy-minimap-mask-stroke-width-default: 1;
1078
+ --xy-minimap-node-background-color-default: #2b2b2b;
1079
+ --xy-minimap-node-stroke-color-default: transparent;
1080
+ --xy-minimap-node-stroke-width-default: 2;
1081
+
1082
+ --xy-background-color-default: #141414;
1083
+ --xy-background-pattern-dots-color-default: #777;
1084
+ --xy-background-pattern-lines-color-default: #777;
1085
+ --xy-background-pattern-cross-color-default: #777;
1086
+ --xy-node-color-default: #f8f8f8;
1087
+ --xy-node-border-default: 1px solid #3c3c3c;
1088
+ --xy-node-background-color-default: #1e1e1e;
1089
+ --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);
1090
+ --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, 0.08);
1091
+ --xy-node-boxshadow-selected-default: 0 0 0 0.5px #999;
1092
+
1093
+ --xy-handle-background-color-default: #bebebe;
1094
+ --xy-handle-border-color-default: #1e1e1e;
1095
+
1096
+ --xy-selection-background-color-default: rgba(200, 200, 220, 0.08);
1097
+ --xy-selection-border-default: 1px dotted rgba(200, 200, 220, 0.8);
1098
+
1099
+ --xy-controls-button-background-color-default: #2b2b2b;
1100
+ --xy-controls-button-background-color-hover-default: #3e3e3e;
1101
+ --xy-controls-button-color-default: #f8f8f8;
1102
+ --xy-controls-button-color-hover-default: #fff;
1103
+ --xy-controls-button-border-color-default: #5b5b5b;
1104
+ --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);
1105
+
1106
+ --xy-edge-label-background-color-default: #141414;
1107
+ --xy-edge-label-color-default: #f8f8f8;
1108
+ }
1109
+ .svelte-flow__background {
1110
+ background-color: var(--xy-background-color, var(--xy-background-color-props, var(--xy-background-color-default)));
1111
+ pointer-events: none;
1112
+ z-index: -1;
1113
+ }
1114
+ .svelte-flow__container {
1115
+ position: absolute;
1116
+ width: 100%;
1117
+ height: 100%;
1118
+ top: 0;
1119
+ left: 0;
1120
+ }
1121
+ .svelte-flow__pane {
1122
+ z-index: 1;
1123
+ }
1124
+ .svelte-flow__pane.draggable {
1125
+ cursor: grab;
1126
+ }
1127
+ .svelte-flow__pane.dragging {
1128
+ cursor: grabbing;
1129
+ }
1130
+ .svelte-flow__pane.selection {
1131
+ cursor: pointer;
1132
+ }
1133
+ .svelte-flow__viewport {
1134
+ transform-origin: 0 0;
1135
+ z-index: 2;
1136
+ pointer-events: none;
1137
+ }
1138
+ .svelte-flow__renderer {
1139
+ z-index: 4;
1140
+ }
1141
+ .svelte-flow__selection {
1142
+ z-index: 6;
1143
+ }
1144
+ .svelte-flow__nodesselection-rect:focus,
1145
+ .svelte-flow__nodesselection-rect:focus-visible {
1146
+ outline: none;
1147
+ }
1148
+ .svelte-flow__edge-path {
1149
+ stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
1150
+ stroke-width: var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));
1151
+ fill: none;
1152
+ }
1153
+ .svelte-flow__connection-path {
1154
+ stroke: var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));
1155
+ stroke-width: var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));
1156
+ fill: none;
1157
+ }
1158
+ .svelte-flow .svelte-flow__edges {
1159
+ position: absolute;
1160
+ }
1161
+ .svelte-flow .svelte-flow__edges svg {
1162
+ overflow: visible;
1163
+ position: absolute;
1164
+ pointer-events: none;
1165
+ }
1166
+ .svelte-flow__edge {
1167
+ pointer-events: visibleStroke;
1168
+ }
1169
+ .svelte-flow__edge.selectable {
1170
+ cursor: pointer;
1171
+ }
1172
+ .svelte-flow__edge.animated path {
1173
+ stroke-dasharray: 5;
1174
+ animation: dashdraw 0.5s linear infinite;
1175
+ }
1176
+ .svelte-flow__edge.animated path.svelte-flow__edge-interaction {
1177
+ stroke-dasharray: none;
1178
+ animation: none;
1179
+ }
1180
+ .svelte-flow__edge.inactive {
1181
+ pointer-events: none;
1182
+ }
1183
+ .svelte-flow__edge.selected,
1184
+ .svelte-flow__edge:focus,
1185
+ .svelte-flow__edge:focus-visible {
1186
+ outline: none;
1187
+ }
1188
+ .svelte-flow__edge.selected .svelte-flow__edge-path,
1189
+ .svelte-flow__edge.selectable:focus .svelte-flow__edge-path,
1190
+ .svelte-flow__edge.selectable:focus-visible .svelte-flow__edge-path {
1191
+ stroke: var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default));
1192
+ }
1193
+ .svelte-flow__edge-textwrapper {
1194
+ pointer-events: all;
1195
+ }
1196
+ .svelte-flow__edge .svelte-flow__edge-text {
1197
+ pointer-events: none;
1198
+ -webkit-user-select: none;
1199
+ -moz-user-select: none;
1200
+ user-select: none;
1201
+ }
1202
+ .svelte-flow__connection {
1203
+ pointer-events: none;
1204
+ }
1205
+ .svelte-flow__connection .animated {
1206
+ stroke-dasharray: 5;
1207
+ animation: dashdraw 0.5s linear infinite;
1208
+ }
1209
+ svg.svelte-flow__connectionline {
1210
+ z-index: 1001;
1211
+ overflow: visible;
1212
+ position: absolute;
1213
+ }
1214
+ .svelte-flow__nodes {
1215
+ pointer-events: none;
1216
+ transform-origin: 0 0;
1217
+ }
1218
+ .svelte-flow__node {
1219
+ position: absolute;
1220
+ -webkit-user-select: none;
1221
+ -moz-user-select: none;
1222
+ user-select: none;
1223
+ pointer-events: all;
1224
+ transform-origin: 0 0;
1225
+ box-sizing: border-box;
1226
+ cursor: default;
1227
+ }
1228
+ .svelte-flow__node.selectable {
1229
+ cursor: pointer;
1230
+ }
1231
+ .svelte-flow__node.draggable {
1232
+ cursor: grab;
1233
+ pointer-events: all;
1234
+ }
1235
+ .svelte-flow__node.draggable.dragging {
1236
+ cursor: grabbing;
1237
+ }
1238
+ .svelte-flow__nodesselection {
1239
+ z-index: 3;
1240
+ transform-origin: left top;
1241
+ pointer-events: none;
1242
+ }
1243
+ .svelte-flow__nodesselection-rect {
1244
+ position: absolute;
1245
+ pointer-events: all;
1246
+ cursor: grab;
1247
+ }
1248
+ .svelte-flow__handle {
1249
+ position: absolute;
1250
+ pointer-events: none;
1251
+ min-width: 5px;
1252
+ min-height: 5px;
1253
+ width: 6px;
1254
+ height: 6px;
1255
+ background-color: var(--xy-handle-background-color, var(--xy-handle-background-color-default));
1256
+ border: 1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));
1257
+ border-radius: 100%;
1258
+ }
1259
+ .svelte-flow__handle.connectingfrom {
1260
+ pointer-events: all;
1261
+ }
1262
+ .svelte-flow__handle.connectionindicator {
1263
+ pointer-events: all;
1264
+ cursor: crosshair;
1265
+ }
1266
+ .svelte-flow__handle-bottom {
1267
+ top: auto;
1268
+ left: 50%;
1269
+ bottom: 0;
1270
+ transform: translate(-50%, 50%);
1271
+ }
1272
+ .svelte-flow__handle-top {
1273
+ top: 0;
1274
+ left: 50%;
1275
+ transform: translate(-50%, -50%);
1276
+ }
1277
+ .svelte-flow__handle-left {
1278
+ top: 50%;
1279
+ left: 0;
1280
+ transform: translate(-50%, -50%);
1281
+ }
1282
+ .svelte-flow__handle-right {
1283
+ top: 50%;
1284
+ right: 0;
1285
+ transform: translate(50%, -50%);
1286
+ }
1287
+ .svelte-flow__edgeupdater {
1288
+ cursor: move;
1289
+ pointer-events: all;
1290
+ }
1291
+ .svelte-flow__panel {
1292
+ position: absolute;
1293
+ z-index: 5;
1294
+ margin: 15px;
1295
+ }
1296
+ .svelte-flow__panel.top {
1297
+ top: 0;
1298
+ }
1299
+ .svelte-flow__panel.bottom {
1300
+ bottom: 0;
1301
+ }
1302
+ .svelte-flow__panel.top.center, .svelte-flow__panel.bottom.center {
1303
+ left: 50%;
1304
+ transform: translateX(-15px) translateX(-50%);
1305
+ }
1306
+ .svelte-flow__panel.left {
1307
+ left: 0;
1308
+ }
1309
+ .svelte-flow__panel.right {
1310
+ right: 0;
1311
+ }
1312
+ .svelte-flow__panel.left.center, .svelte-flow__panel.right.center {
1313
+ top: 50%;
1314
+ transform: translateY(-15px) translateY(-50%);
1315
+ }
1316
+ .svelte-flow__attribution {
1317
+ font-size: 10px;
1318
+ background: var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));
1319
+ padding: 2px 3px;
1320
+ margin: 0;
1321
+ }
1322
+ .svelte-flow__attribution a {
1323
+ text-decoration: none;
1324
+ color: #999;
1325
+ }
1326
+ @keyframes dashdraw {
1327
+ from {
1328
+ stroke-dashoffset: 10;
1329
+ }
1330
+ }
1331
+ .svelte-flow__edgelabel-renderer {
1332
+ position: absolute;
1333
+ width: 100%;
1334
+ height: 100%;
1335
+ pointer-events: none;
1336
+ -webkit-user-select: none;
1337
+ -moz-user-select: none;
1338
+ user-select: none;
1339
+ left: 0;
1340
+ top: 0;
1341
+ }
1342
+ .svelte-flow__viewport-portal {
1343
+ position: absolute;
1344
+ width: 100%;
1345
+ height: 100%;
1346
+ left: 0;
1347
+ top: 0;
1348
+ -webkit-user-select: none;
1349
+ -moz-user-select: none;
1350
+ user-select: none;
1351
+ }
1352
+ .svelte-flow__minimap {
1353
+ background: var(
1354
+ --xy-minimap-background-color-props,
1355
+ var(--xy-minimap-background-color, var(--xy-minimap-background-color-default))
1356
+ );
1357
+ }
1358
+ .svelte-flow__minimap-svg {
1359
+ display: block;
1360
+ }
1361
+ .svelte-flow__minimap-mask {
1362
+ fill: var(
1363
+ --xy-minimap-mask-background-color-props,
1364
+ var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default))
1365
+ );
1366
+ stroke: var(
1367
+ --xy-minimap-mask-stroke-color-props,
1368
+ var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default))
1369
+ );
1370
+ stroke-width: var(
1371
+ --xy-minimap-mask-stroke-width-props,
1372
+ var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default))
1373
+ );
1374
+ }
1375
+ .svelte-flow__minimap-node {
1376
+ fill: var(
1377
+ --xy-minimap-node-background-color-props,
1378
+ var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default))
1379
+ );
1380
+ stroke: var(
1381
+ --xy-minimap-node-stroke-color-props,
1382
+ var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default))
1383
+ );
1384
+ stroke-width: var(
1385
+ --xy-minimap-node-stroke-width-props,
1386
+ var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default))
1387
+ );
1388
+ }
1389
+ .svelte-flow__background-pattern.dots {
1390
+ fill: var(
1391
+ --xy-background-pattern-color-props,
1392
+ var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default))
1393
+ );
1394
+ }
1395
+ .svelte-flow__background-pattern.lines {
1396
+ stroke: var(
1397
+ --xy-background-pattern-color-props,
1398
+ var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default))
1399
+ );
1400
+ }
1401
+ .svelte-flow__background-pattern.cross {
1402
+ stroke: var(
1403
+ --xy-background-pattern-color-props,
1404
+ var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default))
1405
+ );
1406
+ }
1407
+ .svelte-flow__controls {
1408
+ display: flex;
1409
+ flex-direction: column;
1410
+ box-shadow: var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default));
1411
+ }
1412
+ .svelte-flow__controls.horizontal {
1413
+ flex-direction: row;
1414
+ }
1415
+ .svelte-flow__controls-button {
1416
+ display: flex;
1417
+ justify-content: center;
1418
+ align-items: center;
1419
+ height: 26px;
1420
+ width: 26px;
1421
+ padding: 4px;
1422
+ border: none;
1423
+ background: var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));
1424
+ border-bottom: 1px solid
1425
+ var(
1426
+ --xy-controls-button-border-color-props,
1427
+ var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))
1428
+ );
1429
+ color: var(
1430
+ --xy-controls-button-color-props,
1431
+ var(--xy-controls-button-color, var(--xy-controls-button-color-default))
1432
+ );
1433
+ cursor: pointer;
1434
+ -webkit-user-select: none;
1435
+ -moz-user-select: none;
1436
+ user-select: none;
1437
+ }
1438
+ .svelte-flow__controls-button svg {
1439
+ width: 100%;
1440
+ max-width: 12px;
1441
+ max-height: 12px;
1442
+ fill: currentColor;
1443
+ }
1444
+ .svelte-flow__edge.updating .svelte-flow__edge-path {
1445
+ stroke: #777;
1446
+ }
1447
+ .svelte-flow__edge-text {
1448
+ font-size: 10px;
1449
+ }
1450
+ .svelte-flow__node.selectable:focus,
1451
+ .svelte-flow__node.selectable:focus-visible {
1452
+ outline: none;
1453
+ }
1454
+ .svelte-flow__node-input,
1455
+ .svelte-flow__node-default,
1456
+ .svelte-flow__node-output,
1457
+ .svelte-flow__node-group {
1458
+ padding: 10px;
1459
+ border-radius: var(--xy-node-border-radius, var(--xy-node-border-radius-default));
1460
+ width: 150px;
1461
+ font-size: 12px;
1462
+ color: var(--xy-node-color, var(--xy-node-color-default));
1463
+ text-align: center;
1464
+ border: var(--xy-node-border, var(--xy-node-border-default));
1465
+ background-color: var(--xy-node-background-color, var(--xy-node-background-color-default));
1466
+ }
1467
+ .svelte-flow__node-input.selectable:hover, .svelte-flow__node-default.selectable:hover, .svelte-flow__node-output.selectable:hover, .svelte-flow__node-group.selectable:hover {
1468
+ box-shadow: var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default));
1469
+ }
1470
+ .svelte-flow__node-input.selectable.selected,
1471
+ .svelte-flow__node-input.selectable:focus,
1472
+ .svelte-flow__node-input.selectable:focus-visible,
1473
+ .svelte-flow__node-default.selectable.selected,
1474
+ .svelte-flow__node-default.selectable:focus,
1475
+ .svelte-flow__node-default.selectable:focus-visible,
1476
+ .svelte-flow__node-output.selectable.selected,
1477
+ .svelte-flow__node-output.selectable:focus,
1478
+ .svelte-flow__node-output.selectable:focus-visible,
1479
+ .svelte-flow__node-group.selectable.selected,
1480
+ .svelte-flow__node-group.selectable:focus,
1481
+ .svelte-flow__node-group.selectable:focus-visible {
1482
+ box-shadow: var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default));
1483
+ }
1484
+ .svelte-flow__node-group {
1485
+ background-color: var(--xy-node-group-background-color, var(--xy-node-group-background-color-default));
1486
+ }
1487
+ .svelte-flow__nodesselection-rect,
1488
+ .svelte-flow__selection {
1489
+ background: var(--xy-selection-background-color, var(--xy-selection-background-color-default));
1490
+ border: var(--xy-selection-border, var(--xy-selection-border-default));
1491
+ }
1492
+ .svelte-flow__nodesselection-rect:focus,
1493
+ .svelte-flow__nodesselection-rect:focus-visible,
1494
+ .svelte-flow__selection:focus,
1495
+ .svelte-flow__selection:focus-visible {
1496
+ outline: none;
1497
+ }
1498
+ .svelte-flow__controls-button:hover {
1499
+ background: var(
1500
+ --xy-controls-button-background-color-hover-props,
1501
+ var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default))
1502
+ );
1503
+ color: var(
1504
+ --xy-controls-button-color-hover-props,
1505
+ var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default))
1506
+ );
1507
+ }
1508
+ .svelte-flow__controls-button:disabled {
1509
+ pointer-events: none;
1510
+ }
1511
+ .svelte-flow__controls-button:disabled svg {
1512
+ fill-opacity: 0.4;
1513
+ }
1514
+ .svelte-flow__controls-button:last-child {
1515
+ border-bottom: none;
1516
+ }
1517
+ .svelte-flow__controls.horizontal .svelte-flow__controls-button {
1518
+ border-bottom: none;
1519
+ border-right: 1px solid
1520
+ var(
1521
+ --xy-controls-button-border-color-props,
1522
+ var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))
1523
+ );
1524
+ }
1525
+ .svelte-flow__controls.horizontal .svelte-flow__controls-button:last-child {
1526
+ border-right: none;
1527
+ }
1528
+ .svelte-flow__resize-control {
1529
+ position: absolute;
1530
+ }
1531
+ .svelte-flow__resize-control.left,
1532
+ .svelte-flow__resize-control.right {
1533
+ cursor: ew-resize;
1534
+ }
1535
+ .svelte-flow__resize-control.top,
1536
+ .svelte-flow__resize-control.bottom {
1537
+ cursor: ns-resize;
1538
+ }
1539
+ .svelte-flow__resize-control.top.left,
1540
+ .svelte-flow__resize-control.bottom.right {
1541
+ cursor: nwse-resize;
1542
+ }
1543
+ .svelte-flow__resize-control.bottom.left,
1544
+ .svelte-flow__resize-control.top.right {
1545
+ cursor: nesw-resize;
1546
+ }
1547
+ /* handle styles */
1548
+ .svelte-flow__resize-control.handle {
1549
+ width: 4px;
1550
+ height: 4px;
1551
+ border: 1px solid #fff;
1552
+ border-radius: 1px;
1553
+ background-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));
1554
+ transform: translate(-50%, -50%);
1555
+ }
1556
+ .svelte-flow__resize-control.handle.left {
1557
+ left: 0;
1558
+ top: 50%;
1559
+ }
1560
+ .svelte-flow__resize-control.handle.right {
1561
+ left: 100%;
1562
+ top: 50%;
1563
+ }
1564
+ .svelte-flow__resize-control.handle.top {
1565
+ left: 50%;
1566
+ top: 0;
1567
+ }
1568
+ .svelte-flow__resize-control.handle.bottom {
1569
+ left: 50%;
1570
+ top: 100%;
1571
+ }
1572
+ .svelte-flow__resize-control.handle.top.left {
1573
+ left: 0;
1574
+ }
1575
+ .svelte-flow__resize-control.handle.bottom.left {
1576
+ left: 0;
1577
+ }
1578
+ .svelte-flow__resize-control.handle.top.right {
1579
+ left: 100%;
1580
+ }
1581
+ .svelte-flow__resize-control.handle.bottom.right {
1582
+ left: 100%;
1583
+ }
1584
+ /* line styles */
1585
+ .svelte-flow__resize-control.line {
1586
+ border-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));
1587
+ border-width: 0;
1588
+ border-style: solid;
1589
+ }
1590
+ .svelte-flow__resize-control.line.left,
1591
+ .svelte-flow__resize-control.line.right {
1592
+ width: 1px;
1593
+ transform: translate(-50%, 0);
1594
+ top: 0;
1595
+ height: 100%;
1596
+ }
1597
+ .svelte-flow__resize-control.line.left {
1598
+ left: 0;
1599
+ border-left-width: 1px;
1600
+ }
1601
+ .svelte-flow__resize-control.line.right {
1602
+ left: 100%;
1603
+ border-right-width: 1px;
1604
+ }
1605
+ .svelte-flow__resize-control.line.top,
1606
+ .svelte-flow__resize-control.line.bottom {
1607
+ height: 1px;
1608
+ transform: translate(0, -50%);
1609
+ left: 0;
1610
+ width: 100%;
1611
+ }
1612
+ .svelte-flow__resize-control.line.top {
1613
+ top: 0;
1614
+ border-top-width: 1px;
1615
+ }
1616
+ .svelte-flow__resize-control.line.bottom {
1617
+ border-bottom-width: 1px;
1618
+ top: 100%;
1619
+ }
1620
+ .svelte-flow__edge-label {
1621
+ text-align: center;
1622
+ position: absolute;
1623
+ padding: 2px;
1624
+ font-size: 10px;
1625
+ cursor: pointer;
1626
+ color: var(--xy-edge-label-color, var(--xy-edge-label-color-default));
1627
+ background: var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default));
1628
+ }
1629
+ .svelte-flow__nodes {
1630
+ z-index: 0;
1631
+ }
1632
+ .svelte-flow__edgelabel-renderer {
1633
+ z-index: 0;
1634
+ }
1635
+
1636
+ .svelte-vhdo11::-webkit-scrollbar {
1637
+ height: 0.5rem;
1638
+ width: 0.5rem;
1639
+ }
frontend/build/_app/immutable/assets/Confetti.GO4bkblm.css ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ .confetti-holder.svelte-rtt661 {
3
+ position: relative;
4
+ }
5
+
6
+ @keyframes svelte-rtt661-rotate {
7
+ 0% {
8
+ transform: skew(var(--skew)) rotate3d(var(--full-rotation));
9
+ }
10
+
11
+ 100% {
12
+ transform: skew(var(--skew)) rotate3d(var(--rotation-xyz), calc(var(--rotation-deg) + 360deg));
13
+ }
14
+ }
15
+
16
+ @keyframes svelte-rtt661-translate {
17
+ 0% {
18
+ opacity: 1;
19
+ }
20
+
21
+ 8% {
22
+ transform: translateY(calc(var(--translate-y) * 0.95)) translateX(calc(var(--translate-x) * (var(--x-spread) * 0.9)));
23
+ opacity: 1;
24
+ }
25
+
26
+ 12% {
27
+ transform: translateY(var(--translate-y)) translateX(calc(var(--translate-x) * (var(--x-spread) * 0.95)));
28
+ opacity: 1;
29
+ }
30
+
31
+ 16% {
32
+ transform: translateY(var(--translate-y)) translateX(calc(var(--translate-x) * var(--x-spread)));
33
+ opacity: 1;
34
+ }
35
+
36
+ 100% {
37
+ transform: translateY(calc(var(--translate-y) + var(--fall-distance))) translateX(var(--translate-x));
38
+ opacity: 0;
39
+ }
40
+ }
41
+
42
+ @keyframes svelte-rtt661-no-gravity-translate {
43
+ 0% {
44
+ opacity: 1;
45
+ }
46
+
47
+ 100% {
48
+ transform: translateY(var(--translate-y)) translateX(var(--translate-x));
49
+ opacity: 0;
50
+ }
51
+ }
52
+
53
+ .confetti.svelte-rtt661 {
54
+ --translate-y: calc(-200px * var(--translate-y-multiplier));
55
+ --translate-x: calc(200px * var(--translate-x-multiplier));
56
+ position: absolute;
57
+ height: calc(var(--size) * var(--scale));
58
+ width: calc(var(--size) * var(--scale));
59
+ animation: svelte-rtt661-translate var(--transition-duration) var(--transition-delay) var(--transition-iteration-count) linear;
60
+ opacity: 0;
61
+ pointer-events: none;
62
+ }
63
+
64
+ .confetti.svelte-rtt661::before {
65
+ --full-rotation: var(--rotation-xyz), var(--rotation-deg);
66
+ content: '';
67
+ display: block;
68
+ width: 100%;
69
+ height: 100%;
70
+ background: var(--color);
71
+ background-size: contain;
72
+ transform: skew(var(--skew)) rotate3d(var(--full-rotation));
73
+ animation: svelte-rtt661-rotate var(--transition-duration) var(--transition-delay) var(--transition-iteration-count) linear;
74
+ }
75
+
76
+ .rounded.svelte-rtt661 .confetti:where(.svelte-rtt661)::before {
77
+ border-radius: 50%;
78
+ }
79
+
80
+ .cone.svelte-rtt661 .confetti:where(.svelte-rtt661) {
81
+ --translate-x: calc(200px * var(--translate-y-multiplier) * var(--translate-x-multiplier));
82
+ }
83
+
84
+ .no-gravity.svelte-rtt661 .confetti:where(.svelte-rtt661) {
85
+ animation-name: svelte-rtt661-no-gravity-translate;
86
+ animation-timing-function: ease-out;
87
+ }
88
+
89
+ @media (prefers-reduced-motion) {
90
+ .reduced-motion.svelte-rtt661 .confetti:where(.svelte-rtt661),
91
+ .reduced-motion.svelte-rtt661 .confetti:where(.svelte-rtt661)::before {
92
+ animation: none;
93
+ }
94
+ }
frontend/build/_app/immutable/assets/ConfirmDialog.DrZLjW6b.css ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ /* (unused) .modal-content {
3
+ animation: scaleUp 0.1s ease-out forwards;
4
+ }*/
5
+
6
+ @keyframes svelte-r5cneq-scaleUp {
7
+ from {
8
+ transform: scale(0.985);
9
+ opacity: 0;
10
+ }
11
+ to {
12
+ transform: scale(1);
13
+ opacity: 1;
14
+ }
15
+ }
frontend/build/_app/immutable/assets/Drawer.BrPDj7A-.css ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ .modal-content.svelte-1u2o1qj {
3
+ animation: svelte-1u2o1qj-scaleUp 0.1s ease-out forwards;
4
+ }
5
+
6
+ @keyframes svelte-1u2o1qj-scaleUp {
7
+ from {
8
+ transform: scale(0.985);
9
+ opacity: 0;
10
+ }
11
+ to {
12
+ transform: scale(1);
13
+ opacity: 1;
14
+ }
15
+ }
frontend/build/_app/immutable/assets/EmojiPicker.B9Jvt7RI.css ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ svelte-virtual-list-viewport.svelte-m5no5e {
3
+ position: relative;
4
+ overflow-y: auto;
5
+ -webkit-overflow-scrolling:touch;
6
+ display: block;
7
+ }
8
+
9
+ svelte-virtual-list-contents.svelte-m5no5e, svelte-virtual-list-row.svelte-m5no5e {
10
+ display: block;
11
+ }
12
+
13
+ svelte-virtual-list-row.svelte-m5no5e {
14
+ overflow: hidden;
15
+ }
frontend/build/_app/immutable/assets/FileItem.bvLI9b9Q.css ADDED
@@ -0,0 +1,140 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ /*
3
+ * Minimal textLayer styles extracted from pdfjs-dist/web/pdf_viewer.css.
4
+ * These ensure the invisible text spans are positioned exactly over the
5
+ * rendered canvas so that browser-native Ctrl+F search and text selection
6
+ * work correctly.
7
+ */
8
+ .textLayer {
9
+ position: absolute;
10
+ text-align: initial;
11
+ inset: 0;
12
+ overflow: clip;
13
+ opacity: 1;
14
+ line-height: 1;
15
+ -webkit-text-size-adjust: none;
16
+ -moz-text-size-adjust: none;
17
+ text-size-adjust: none;
18
+ forced-color-adjust: none;
19
+ transform-origin: 0 0;
20
+ caret-color: CanvasText;
21
+ z-index: 0;
22
+ }
23
+
24
+ .textLayer :is(span, br) {
25
+ color: transparent;
26
+ position: absolute;
27
+ white-space: pre;
28
+ cursor: text;
29
+ transform-origin: 0% 0%;
30
+ }
31
+
32
+ .textLayer {
33
+ /* --total-scale-factor is derived from --scale-factor (set on the wrapper)
34
+ and --user-unit (defaults to 1). This mirrors the official pdf_viewer.css. */
35
+ --user-unit: 1;
36
+ --total-scale-factor: calc(var(--scale-factor) * var(--user-unit));
37
+ --min-font-size: 1;
38
+ --text-scale-factor: calc(var(--total-scale-factor) * var(--min-font-size));
39
+ --min-font-size-inv: calc(1 / var(--min-font-size));
40
+ }
41
+
42
+ .textLayer > :not(.markedContent),
43
+ .textLayer .markedContent span:not(.markedContent) {
44
+ z-index: 1;
45
+ --font-height: 0;
46
+ font-size: calc(var(--text-scale-factor) * var(--font-height));
47
+ --scale-x: 1;
48
+ --rotate: 0deg;
49
+ transform: rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv));
50
+ }
51
+
52
+ .textLayer .markedContent {
53
+ display: contents;
54
+ }
55
+
56
+ .textLayer span[role='img'] {
57
+ -webkit-user-select: none;
58
+ -moz-user-select: none;
59
+ user-select: none;
60
+ cursor: default;
61
+ }
62
+
63
+ /* Selection highlight color */
64
+ .textLayer ::-moz-selection {
65
+ background: rgba(0, 0, 255, 0.25);
66
+ }
67
+
68
+ .textLayer ::selection {
69
+ background: rgba(0, 0, 255, 0.25);
70
+ }
71
+
72
+ .textLayer br::-moz-selection {
73
+ background: transparent;
74
+ }
75
+
76
+ .textLayer br::selection {
77
+ background: transparent;
78
+ }
79
+
80
+ .textLayer .endOfContent {
81
+ display: block;
82
+ position: absolute;
83
+ inset: 100% 0 0;
84
+ z-index: 0;
85
+ cursor: default;
86
+ -webkit-user-select: none;
87
+ -moz-user-select: none;
88
+ user-select: none;
89
+ }
90
+
91
+ .textLayer.selecting .endOfContent {
92
+ top: 0;
93
+ }
94
+
95
+ .excel-table-container table {
96
+ width: 100%;
97
+ border-collapse: collapse;
98
+ font-size: 0.875rem;
99
+ line-height: 1.25rem;
100
+ }
101
+
102
+ .excel-table-container table td,
103
+ .excel-table-container table th {
104
+ border-width: 1px;
105
+ border-style: solid;
106
+ border-color: var(--color-gray-300, #cdcdcd);
107
+ padding: 0.5rem 0.75rem;
108
+ text-align: left;
109
+ }
110
+
111
+ .dark .excel-table-container table td,
112
+ .dark .excel-table-container table th {
113
+ border-color: var(--color-gray-600, #676767);
114
+ }
115
+
116
+ .excel-table-container table th {
117
+ background-color: var(--color-gray-100, #ececec);
118
+ font-weight: 600;
119
+ }
120
+
121
+ .dark .excel-table-container table th {
122
+ background-color: var(--color-gray-800, #333);
123
+ color: var(--color-gray-100, #ececec);
124
+ }
125
+
126
+ .excel-table-container table tr:nth-child(even) {
127
+ background-color: var(--color-gray-50, #f9f9f9);
128
+ }
129
+
130
+ .dark .excel-table-container table tr:nth-child(even) {
131
+ background-color: rgba(38, 38, 38, 0.5);
132
+ }
133
+
134
+ .excel-table-container table tr:hover {
135
+ background-color: var(--color-gray-100, #ececec);
136
+ }
137
+
138
+ .dark .excel-table-container table tr:hover {
139
+ background-color: rgba(51, 51, 51, 0.5);
140
+ }
frontend/build/_app/immutable/assets/Heart.COe_Qb0n.css ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ /* (unused) input::-webkit-outer-spin-button,
3
+ input::-webkit-inner-spin-button {
4
+ /* display: none; <- Crashes Chrome on hover *\/
5
+ -webkit-appearance: none;
6
+ margin: 0; /* <-- Apparently some margin are still there even though it's hidden *\/
7
+ }*/
8
+
9
+ /* (unused) .tabs::-webkit-scrollbar {
10
+ display: none; /* for Chrome, Safari and Opera *\/
11
+ }*/
12
+
13
+ /* (unused) .tabs {
14
+ -ms-overflow-style: none; /* IE and Edge *\/
15
+ scrollbar-width: none; /* Firefox *\/
16
+ }*/
17
+
18
+ /* (unused) input[type='number'] {
19
+ -moz-appearance: textfield; /* Firefox *\/
20
+ }*/
frontend/build/_app/immutable/assets/ImportModal.XO2J5IC1.css ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ /* (unused) input::-webkit-outer-spin-button,
3
+ input::-webkit-inner-spin-button {
4
+ /* display: none; <- Crashes Chrome on hover *\/
5
+ -webkit-appearance: none;
6
+ margin: 0; /* <-- Apparently some margin are still there even though it's hidden *\/
7
+ }*/
8
+
9
+ /* (unused) .tabs::-webkit-scrollbar {
10
+ display: none; /* for Chrome, Safari and Opera *\/
11
+ }*/
12
+
13
+ /* (unused) .tabs {
14
+ -ms-overflow-style: none; /* IE and Edge *\/
15
+ scrollbar-width: none; /* Firefox *\/
16
+ }*/
17
+
18
+ /* (unused) input[type="number"] {
19
+ -moz-appearance: textfield; /* Firefox *\/
20
+ }*/
frontend/build/_app/immutable/assets/KaTeX_AMS-Regular.BQhdFMY1.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0cdd387c9590a1a9f9794560022dbb59654a7d86f187aa0c81495ad42d3a7308
3
+ size 28076
frontend/build/_app/immutable/assets/KaTeX_AMS-Regular.DMm9YOAa.woff ADDED
Binary file (33.5 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_AMS-Regular.DRggAlZN.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:68534840bcfdd2bffb6f0e8deb48684dd01e7f04ea2813267577afb906de1d13
3
+ size 63632
frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Bold.ATXxdsX0.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:07d8e303ce4fc12b4bb54f1004170dd190a1f3db45d400fe68060df3e0897268
3
+ size 12368
frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Bold.BEiXGLvX.woff ADDED
Binary file (7.72 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Bold.Dq_IR9rO.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:de7701e42cf1f4cf0b766c03fb27977207eee2f4fd5d76fa82188406da43ea4c
3
+ size 6912
frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Regular.CTRA-rTL.woff ADDED
Binary file (7.66 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Regular.Di6jR-x-.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5d53e70ad607c2352162dec9e0923fb54ecdafaccbf604cd8dcf7d00facb989b
3
+ size 6908
frontend/build/_app/immutable/assets/KaTeX_Caligraphic-Regular.wX97UBjC.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ed0b74372feefcbb9c0666b2e210da37b7e49fa7fbbf3eeb11db5f693dacfbb7
3
+ size 12344
frontend/build/_app/immutable/assets/KaTeX_Fraktur-Bold.BdnERNNW.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9163df9c7122432e6495b4229fa9071cf9ae86a758ae5efc4924ec2e1a6dbce1
3
+ size 19584
frontend/build/_app/immutable/assets/KaTeX_Fraktur-Bold.BsDP51OF.woff ADDED
Binary file (13.3 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Fraktur-Bold.CL6g_b3V.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:74444efd593c005e3f4573b44524704c0af0a937fe911cca9e94068d0d140d3f
3
+ size 11348
frontend/build/_app/immutable/assets/KaTeX_Fraktur-Regular.CB_wures.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1e6f9579e90e2cac37f8f60a597c436e075c114385652b7cbeb0dec0421291b3
3
+ size 19572
frontend/build/_app/immutable/assets/KaTeX_Fraktur-Regular.CTYiF6lA.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:51814d270d06ff0255dba0799994fa4d8c84d11f09951d47595f4abb1f3602dc
3
+ size 11316
frontend/build/_app/immutable/assets/KaTeX_Fraktur-Regular.Dxdc4cR9.woff ADDED
Binary file (13.2 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Main-Bold.Cx986IdX.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0f60d1b897938ec918c8ce073092411baf9438f6739465693ff18b0f9d20b021
3
+ size 25324
frontend/build/_app/immutable/assets/KaTeX_Main-Bold.Jm3AIy58.woff ADDED
Binary file (29.9 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Main-Bold.waoOVXN0.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:138ac28d1663b3037e9c5f52371fa5c63d8324f4a38d22cd573e6ea3a3fd0cf8
3
+ size 51336
frontend/build/_app/immutable/assets/KaTeX_Main-BoldItalic.DxDJ3AOS.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:99cd42a3c072d918f2f44984a807cf7aa16e13545fd0875fc07c6c65f99e715b
3
+ size 16780
frontend/build/_app/immutable/assets/KaTeX_Main-BoldItalic.DzxPMmG6.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:70ee1f64a20f2048c21940ef46d0144fd215baa953ca69afd1e31e98544f708f
3
+ size 32968
frontend/build/_app/immutable/assets/KaTeX_Main-BoldItalic.SpSLRI95.woff ADDED
Binary file (19.4 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Main-Italic.3WenGoN9.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0d85ae7cc30f23790a7f1a58c4a112fdca8aae769b6ba11429af1d98b1b6cb3a
3
+ size 33580
frontend/build/_app/immutable/assets/KaTeX_Main-Italic.BMLOBm91.woff ADDED
Binary file (19.7 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Main-Italic.NWA7e6Wa.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:97479ca6cce906abc961ecac96faa5f9ca2e61b8e7670d475826bcdee9a7c267
3
+ size 16988
frontend/build/_app/immutable/assets/KaTeX_Main-Regular.B22Nviop.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c2342cd8b869e01752a9321dc17213fc40d4d04c79688c1d43f2cf316abd7866
3
+ size 26272
frontend/build/_app/immutable/assets/KaTeX_Main-Regular.Dr94JaBh.woff ADDED
Binary file (30.8 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Main-Regular.ypZvNtVU.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d0332f52868370fd83ae7fa46470f90c8f2eab2fcf12bc4f88080b340c95a830
3
+ size 53580
frontend/build/_app/immutable/assets/KaTeX_Math-BoldItalic.B3XSjfu4.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f9377ab0271cda59af24bcffbd46a4d0c8a3572ffafdbb38de2ad5ea7b0d5ee5
3
+ size 31196
frontend/build/_app/immutable/assets/KaTeX_Math-BoldItalic.CZnvNsCZ.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dc47344dbb6cb5b655c8460d561f4df5f501b90c804ad3c6cec65fe322351ab1
3
+ size 16400
frontend/build/_app/immutable/assets/KaTeX_Math-BoldItalic.iY-2wyZ7.woff ADDED
Binary file (18.7 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Math-Italic.DA0__PXp.woff ADDED
Binary file (18.7 kB). View file
 
frontend/build/_app/immutable/assets/KaTeX_Math-Italic.flOr_0UB.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:08ce98e51b04d58945a301e639e02b6998af29fdfd61a7b8afdd07bbfc479d4a
3
+ size 31308
frontend/build/_app/immutable/assets/KaTeX_Math-Italic.t53AETM-.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7af58c5ec8f132a2ddde9027c6d7814decce4d3b822a11192a42a20e2e973264
3
+ size 16440
frontend/build/_app/immutable/assets/KaTeX_SansSerif-Bold.CFMepnvq.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1ece03f79f95277d57dc7f6b435a74e1379b0d46104a8530286b60ff49369ea0
3
+ size 24504
frontend/build/_app/immutable/assets/KaTeX_SansSerif-Bold.D1sUS0GD.woff2 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e99ae51144bf1232efcc1bfe5add36262c6866b0faab24fa75740e1b98577a62
3
+ size 12216