@digo-labs/common 0.1.18 → 0.1.19

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.
package/dist/index.js CHANGED
@@ -24,7 +24,690 @@ for (var d = class {
24
24
  if (!/^[a-z][a-z0-9_]*$/.test(t)) throw Error(`sanitizeAppName: invalid app name '${e}' (sanitized: '${t}')`);
25
25
  return t;
26
26
  }
27
- }, f = class a {
27
+ }, f = {
28
+ white: "#FFFFFF",
29
+ black: "#000000",
30
+ orange: "#FF6200",
31
+ yellow: "#F3C300",
32
+ yellowLight: "#FFDD42",
33
+ yellowMuted: "#B49E61",
34
+ pink: "#FF4D8B",
35
+ purple: "#B052FF",
36
+ blue: "#0578FF",
37
+ green: "#6EE750"
38
+ }, p = {
39
+ scale: {
40
+ 1: "scaleOne",
41
+ 2: "scaleTwo",
42
+ 3: "scaleThree"
43
+ },
44
+ connect: {
45
+ 1: "connectOne",
46
+ 2: "connectTwo",
47
+ 3: "connectThree"
48
+ },
49
+ spark: {
50
+ 1: "sparkOne",
51
+ 2: "sparkTwo",
52
+ 3: "sparkThree"
53
+ },
54
+ pivot: {
55
+ 1: "pivotOne",
56
+ 2: "pivotTwo",
57
+ 3: "pivotThree"
58
+ }
59
+ }, m = {
60
+ expo: [
61
+ .9,
62
+ 0,
63
+ .1,
64
+ 1
65
+ ],
66
+ circle: [
67
+ 0,
68
+ .56,
69
+ .46,
70
+ 1
71
+ ]
72
+ }, ee = {
73
+ enter: .35,
74
+ move: .5,
75
+ resize: .5,
76
+ hold: .3
77
+ }, te = 48, ne = [
78
+ .25,
79
+ .5,
80
+ 1,
81
+ 2,
82
+ 4
83
+ ], h = "0 0 72 72", g = {
84
+ scaleOne: "M32.9873 53.559 C28.9705 57.5759 22.4578 57.5759 18.441 53.559 C14.4241 49.5421 14.4241 43.0295 18.441 39.0127 C23.5068 33.9468 27.8352 37.9669 32.9011 32.901 C37.9669 27.8352 33.9468 23.5069 39.0127 18.441 C43.0295 14.4241 49.5422 14.4241 53.559 18.441 C57.5759 22.4579 57.5759 28.9705 53.559 32.9874 C48.4932 38.0532 44.1648 34.0331 39.0989 39.099 C34.0331 44.1648 38.0532 48.4931 32.9873 53.559 Z",
85
+ scaleTwo: "M36 50.3989 C42.6374 50.3989 42.8394 55.8681 49.4769 55.8681 C54.74 55.8681 59.0065 51.6016 59.0065 46.3385 C59.0065 41.0755 54.7399 36.8089 49.4769 36.8089 C42.8394 36.8089 42.6375 42.2781 36 42.2781 C29.3625 42.2781 29.1606 36.8089 22.5231 36.8089 C17.26 36.8089 12.9935 41.0754 12.9935 46.3385 C12.9935 51.6016 17.26 55.8681 22.5231 55.8681 C29.1606 55.8681 29.3625 50.3989 36 50.3989 Z M22.5231 35.1911 C17.26 35.1911 12.9935 30.9245 12.9935 25.6615 C12.9935 20.3984 17.26 16.1319 22.5231 16.1319 C29.1606 16.1319 29.3625 21.6011 36 21.6011 C42.6375 21.6011 42.8394 16.1319 49.4769 16.1319 C54.7399 16.1319 59.0065 20.3984 59.0065 25.6615 C59.0065 30.9245 54.74 35.1911 49.4769 35.1911 C42.8394 35.1911 42.6374 29.7219 36 29.7219 C29.3625 29.7219 29.1606 35.1911 22.5231 35.1911 Z",
86
+ scaleThree: "M46.534 36 C46.534 30.1823 41.8177 25.466 36 25.466 C30.1823 25.466 25.466 30.1823 25.466 36 C25.466 41.8177 30.1823 46.534 36 46.534 C41.8177 46.534 46.534 41.8177 46.534 36 Z M10.2127 51.1055 C10.2127 43.6723 16.3429 43.4395 16.3429 35.9998 C16.3429 28.5601 10.2127 28.3338 10.2127 20.894 C10.2127 14.9949 14.9953 10.2131 20.8945 10.2131 C28.3277 10.2131 28.5606 16.3433 36.0003 16.3433 C43.4399 16.3434 43.6663 10.2131 51.106 10.2131 C57.0051 10.2131 61.7873 14.9953 61.7873 20.8945 C61.7873 28.3277 55.6571 28.5605 55.6571 36.0002 C55.6571 43.4399 61.7873 43.6662 61.7873 51.106 C61.7873 57.0051 57.0047 61.7869 51.1055 61.7869 C43.6723 61.7869 43.4394 55.6567 35.9997 55.6567 C28.5601 55.6566 28.3337 61.7869 20.894 61.7869 C14.9949 61.7869 10.2127 57.0047 10.2127 51.1055 Z",
87
+ connectOne: "M25.5602 35.9945 C25.5602 25.5293 33.394 16.8783 43.5673 15.4888 C45.1444 15.273 46.4401 16.5835 46.4401 18.1745 L46.4401 53.811 C46.4401 55.4022 45.1444 56.7126 43.5673 56.4966 C33.394 55.1106 25.5602 46.4598 25.5602 35.9945 Z",
88
+ connectTwo: "M37.9659 35.9669 C37.9659 25.6277 45.7384 17.0884 55.7966 15.7961 C57.2547 15.609 58.4536 16.8183 58.4536 18.2907 L58.4536 53.643 C58.4536 55.1116 57.2547 56.3248 55.7966 56.1342 C45.7345 54.8419 37.9659 46.3026 37.9659 35.9634 L37.9659 35.9669 Z M34.1066 35.9669 C34.1066 25.6133 26.2046 17.0667 15.977 15.7926 C14.5189 15.609 13.3201 16.8183 13.3201 18.2907 L13.3201 53.643 C13.3201 55.1155 14.5189 56.3248 15.977 56.1411 C26.2011 54.8632 34.1066 46.3169 34.1066 35.9669 Z",
89
+ connectThree: "M38.8462 55.6591 C37.7229 56.7859 37.7086 58.6396 39.0334 59.518 C44.6887 63.2731 52.429 62.6214 57.4582 57.5923 C62.4908 52.5592 63.139 44.8193 59.3878 39.1675 C58.5055 37.8427 56.6518 37.8531 55.5285 38.9799 L38.8462 55.6626 L38.8462 55.6591 Z M55.3197 33.5118 C56.443 34.6347 58.2971 34.6494 59.1898 33.3316 C63.0739 27.5791 62.509 19.7345 57.4616 14.691 C52.4182 9.6437 44.5736 9.0783 38.8207 12.9628 C37.5032 13.8521 37.5141 15.7062 38.6409 16.833 L55.3231 33.5153 L55.3197 33.5118 Z M16.9113 38.7676 C15.7845 37.6408 13.9338 37.63 13.0411 38.9478 C9.157 44.7003 9.7219 52.5449 14.7693 57.5884 C19.8166 62.6357 27.6573 63.2046 33.4099 59.3165 C34.7277 58.4273 34.7168 56.5732 33.59 55.4464 L16.9078 38.7641 L16.9113 38.7676 Z M14.7693 14.896 C9.7362 19.929 9.0884 27.6689 12.8431 33.3208 C13.7254 34.6456 15.5791 34.6347 16.7024 33.5079 L33.3847 16.8256 C34.5115 15.7023 34.5223 13.8447 33.1975 12.9663 C27.5422 9.2116 19.8019 9.8634 14.7727 14.8925 L14.7693 14.896 Z",
90
+ sparkOne: "M35.9002 53.28 C45.3524 53.28 53.015 45.6174 53.015 36.1652 C53.015 26.713 45.3524 19.0504 35.9002 19.0504 C26.448 19.0504 18.7854 26.713 18.7854 36.1652 C18.7854 45.6174 26.448 53.28 35.9002 53.28 Z",
91
+ sparkTwo: "M22.9409 36.6826 C29.4471 36.6826 34.7219 31.4081 34.7219 24.9015 C34.7219 18.3949 29.4471 13.1205 22.9409 13.1205 C16.4343 13.1205 11.1599 18.3949 11.1599 24.9015 C11.1599 31.4081 16.4343 36.6826 22.9409 36.6826 Z M48.7968 36.6826 C55.3034 36.6826 60.5778 31.4081 60.5778 24.9015 C60.5778 18.3949 55.3034 13.1205 48.7968 13.1205 C42.2906 13.1205 37.0162 18.3949 37.0162 24.9015 C37.0162 31.4078 42.2906 36.6826 48.7968 36.6826 Z M35.7774 59.0395 C42.2836 59.0395 47.5584 53.7651 47.5584 47.2585 C47.5584 40.7523 42.2836 35.4779 35.7774 35.4779 C29.2708 35.4779 23.996 40.7523 23.996 47.2585 C23.996 53.7651 29.2708 59.0395 35.7774 59.0395 Z",
92
+ sparkThree: "M11.9817 23.2892 C14.87 26.7409 20.0076 27.2013 23.464 24.3184 C26.9199 21.4355 27.3884 16.2983 24.5109 12.8377 C21.6269 9.3697 16.4761 8.9001 13.0124 11.7892 C9.5487 14.6786 9.0872 19.8302 11.9817 23.2892 Z M47.6808 23.2795 C50.5637 26.7359 55.7009 27.2044 59.1615 24.3269 C62.6295 21.4429 63.0991 16.2921 60.2101 12.8284 C57.3206 9.3647 52.169 8.9032 48.71 11.7977 C45.2583 14.686 44.7979 19.8236 47.6808 23.2795 Z M34.9048 48.9715 C42.1456 49.6264 48.5492 44.2927 49.2152 37.0526 C49.8825 29.797 44.5352 23.3764 37.2781 22.72 C30.0209 22.064 23.6089 27.4214 22.9641 34.6793 C22.3205 41.9217 27.6635 48.3171 34.9048 48.9715 Z M47.6886 58.9965 C50.5769 62.4482 55.7149 62.9085 59.1708 60.0256 C62.6268 57.1424 63.0949 52.0055 60.2174 48.5453 C57.3338 45.077 52.183 44.6073 48.7193 47.4968 C45.2559 50.3859 44.7941 55.5374 47.6886 58.9965 Z M11.9739 58.9876 C14.8568 62.4435 19.9937 62.912 23.4543 60.0346 C26.9222 57.1505 27.3923 51.9997 24.5028 48.536 C21.6137 45.0727 16.4622 44.6108 13.0031 47.5053 C9.5514 50.3936 9.0911 55.5316 11.9739 58.9876 Z",
93
+ pivotOne: "M55.4371 41.3248 C55.4371 40.3498 54.6466 39.5665 53.674 39.493 C42.3402 38.6354 33.2964 29.5897 32.4362 18.257 C32.3625 17.2848 31.5798 16.4916 30.6034 16.4916 L17.9249 16.4916 C16.9523 16.4916 16.158 17.2836 16.2007 18.2578 C17.0957 38.5451 33.3855 54.8323 53.674 55.7301 C54.6466 55.7732 55.4371 54.9787 55.4371 54.0038 L55.4371 41.3248 Z",
94
+ pivotTwo: "M59.3972 32.8542 C59.3972 32.058 58.75 31.4178 57.9557 31.3578 C48.6949 30.6568 41.3056 23.266 40.6043 14.0063 C40.5461 13.212 39.903 12.5641 39.1086 12.5641 L28.7473 12.5641 C27.953 12.5641 27.302 13.2112 27.3369 14.0071 C28.0731 30.5832 41.3792 43.8909 57.9557 44.6244 C58.75 44.6596 59.3972 44.0106 59.3972 43.2139 L59.3972 32.8542 Z M12.597 28.714 C12.597 27.9173 13.2442 27.2683 14.0423 27.3036 C30.6188 28.037 43.925 41.3447 44.6573 57.9208 C44.6922 58.7167 44.0451 59.3642 43.2469 59.3642 L32.8895 59.3642 C32.0913 59.3642 31.4519 58.716 31.3938 57.9216 C30.6925 48.6623 23.2993 41.2711 14.0423 40.5702 C13.248 40.5101 12.597 39.8704 12.597 39.0737 L12.597 28.714 Z",
95
+ pivotThree: "M9.102 34.5022 C22.6832 33.9012 33.5831 23.0002 34.1798 9.4247 C34.2108 8.773 33.6761 8.2441 33.0251 8.2441 L24.5393 8.2441 C23.8883 8.2441 23.3613 8.7769 23.3109 9.4247 C22.7414 17.0101 16.685 23.0653 9.0981 23.6376 C8.4471 23.688 7.9202 24.2099 7.9202 24.8616 L7.9202 33.3467 C7.9202 33.9985 8.4471 34.5313 9.0981 34.5022 L9.102 34.5022 Z M62.7915 34.7974 C63.4502 34.8265 63.9888 34.2898 63.9888 33.6276 L63.9888 25.0453 C63.9888 24.3862 63.4502 23.8573 62.7915 23.8069 C55.1232 23.2272 49.001 17.1035 48.4237 9.4356 C48.3733 8.7769 47.8425 8.2402 47.1837 8.2402 L38.601 8.2402 C37.9423 8.2402 37.4037 8.7769 37.4308 9.4356 C38.0391 23.166 49.063 34.1891 62.7915 34.7974 Z M47.1798 63.7164 C47.8386 63.7164 48.3733 63.1801 48.4198 62.5214 C48.9971 54.8531 55.1232 48.7298 62.7876 48.1501 C63.4502 48.0997 63.9849 47.5704 63.9849 46.9117 L63.9849 38.3294 C63.9849 37.6702 63.4502 37.1305 62.7876 37.1592 C49.0592 37.7675 38.0353 48.791 37.4269 62.5214 C37.3998 63.1801 37.9345 63.7164 38.5971 63.7164 L47.1798 63.7164 Z M33.029 63.7164 C33.68 63.7164 34.2108 63.1871 34.1837 62.5358 C33.5831 48.9564 22.6832 38.0554 9.1058 37.4579 C8.4549 37.4292 7.924 37.962 7.924 38.6138 L7.924 47.0988 C7.924 47.7506 8.4549 48.276 9.1058 48.3264 C16.6928 48.8987 22.7452 54.9539 23.3187 62.5392 C23.3691 63.191 23.8922 63.7199 24.547 63.7199 L33.0329 63.7199 L33.029 63.7164 Z"
96
+ }, _ = class e {
97
+ static getGlyphPath(e, t) {
98
+ return g[p[e][t]];
99
+ }
100
+ static getPaletteColor(e) {
101
+ return Object.entries(f).find(([, t]) => t.toLowerCase() === e.toLowerCase())?.[0] ?? "black";
102
+ }
103
+ static getShapeColor(e) {
104
+ return e === "black" ? "white" : "black";
105
+ }
106
+ static getStageFrame(e, t) {
107
+ return e.markers?.find((e) => e.payload.name === `stage-${t}`)?.time ?? e.totalFrames - 1;
108
+ }
109
+ static isCrossed(e, t, n) {
110
+ return n >= t ? e > t && e <= n : e < t && e >= n;
111
+ }
112
+ static getBounds(e) {
113
+ let t = Math.min(...e.map((e) => e.x)), n = Math.min(...e.map((e) => e.y)), r = Math.max(...e.map((e) => e.x + e.size)), i = Math.max(...e.map((e) => e.y + e.size));
114
+ return {
115
+ x: t,
116
+ y: n,
117
+ width: r - t,
118
+ height: i - n
119
+ };
120
+ }
121
+ static getLayout(t, n, r, i) {
122
+ let a = e.getBounds(i === "pose" ? n.blocks : t.flatMap((e) => e.blocks)), o = i ? Math.min(r.width / a.width, r.height / a.height) : 48;
123
+ return {
124
+ unit: o,
125
+ offset: i ? {
126
+ x: (r.width - a.width * o) / 2 - a.x * o,
127
+ y: (r.height - a.height * o) / 2 - a.y * o
128
+ } : {
129
+ x: -a.x * o,
130
+ y: -a.y * o
131
+ }
132
+ };
133
+ }
134
+ static getContact(e, t) {
135
+ for (let n of t.blocks) {
136
+ if (n.id === e.id) continue;
137
+ let t = Math.max(e.x, n.x), r = Math.min(e.x + e.size, n.x + n.size), i = Math.max(e.y, n.y), a = Math.min(e.y + e.size, n.y + n.size);
138
+ if (!(r < t || a < i || r > t && a > i)) return {
139
+ id: n.id,
140
+ x: (t + r) / 2,
141
+ y: (i + a) / 2
142
+ };
143
+ }
144
+ return null;
145
+ }
146
+ static getBlockOrigin(t, n) {
147
+ let r = e.getContact(t, n);
148
+ return r ? `${(r.x - t.x) / t.size * 100}% ${(r.y - t.y) / t.size * 100}%` : "50% 50%";
149
+ }
150
+ static projectContact(e, t, n) {
151
+ let r = t.blocks.find((t) => t.id === e.id), i = n.blocks.find((t) => t.id === e.id);
152
+ return !r || !i ? null : {
153
+ x: i.x + (e.x - r.x) / r.size * i.size,
154
+ y: i.y + (e.y - r.y) / r.size * i.size
155
+ };
156
+ }
157
+ }, v = {
158
+ stair: {
159
+ blocks: {
160
+ a: {
161
+ color: "black",
162
+ family: "connect"
163
+ },
164
+ b: {
165
+ color: "orange",
166
+ family: "connect"
167
+ },
168
+ c: {
169
+ color: "yellow",
170
+ family: "connect"
171
+ }
172
+ },
173
+ poses: [
174
+ { blocks: [{
175
+ id: "a",
176
+ x: 2,
177
+ y: 3,
178
+ size: 1,
179
+ stage: 1
180
+ }] },
181
+ { blocks: [{
182
+ id: "b",
183
+ x: 1,
184
+ y: 3,
185
+ size: 1,
186
+ stage: 1
187
+ }, {
188
+ id: "a",
189
+ x: 2,
190
+ y: 2,
191
+ size: 2,
192
+ stage: 2
193
+ }] },
194
+ {
195
+ blocks: [
196
+ {
197
+ id: "c",
198
+ x: 0,
199
+ y: 3,
200
+ size: 1,
201
+ stage: 1
202
+ },
203
+ {
204
+ id: "b",
205
+ x: 1,
206
+ y: 2,
207
+ size: 2,
208
+ stage: 2
209
+ },
210
+ {
211
+ id: "a",
212
+ x: 3,
213
+ y: 0,
214
+ size: 4,
215
+ stage: 3
216
+ }
217
+ ],
218
+ hold: 1
219
+ }
220
+ ]
221
+ },
222
+ trade: {
223
+ blocks: {
224
+ a: { color: "orange" },
225
+ b: { color: "blue" }
226
+ },
227
+ poses: [{ blocks: [{
228
+ id: "b",
229
+ x: .5,
230
+ y: .5,
231
+ size: 1
232
+ }, {
233
+ id: "a",
234
+ x: 1.5,
235
+ y: 0,
236
+ size: 2
237
+ }] }, { blocks: [{
238
+ id: "b",
239
+ x: 0,
240
+ y: 0,
241
+ size: 2
242
+ }, {
243
+ id: "a",
244
+ x: 2,
245
+ y: .5,
246
+ size: 1
247
+ }] }]
248
+ },
249
+ column: {
250
+ fit: "pose",
251
+ blocks: {
252
+ a: { color: "orange" },
253
+ b: { color: "blue" },
254
+ c: { color: "yellow" }
255
+ },
256
+ poses: [
257
+ { blocks: [{
258
+ id: "a",
259
+ x: 0,
260
+ y: 3,
261
+ size: 4
262
+ }] },
263
+ { blocks: [{
264
+ id: "a",
265
+ x: 0,
266
+ y: 3,
267
+ size: 4
268
+ }, {
269
+ id: "b",
270
+ x: 1,
271
+ y: 1,
272
+ size: 2
273
+ }] },
274
+ {
275
+ blocks: [
276
+ {
277
+ id: "a",
278
+ x: 0,
279
+ y: 3,
280
+ size: 4
281
+ },
282
+ {
283
+ id: "b",
284
+ x: 1,
285
+ y: 1,
286
+ size: 2
287
+ },
288
+ {
289
+ id: "c",
290
+ x: 1.5,
291
+ y: 0,
292
+ size: 1
293
+ }
294
+ ],
295
+ hold: 1.1
296
+ },
297
+ { blocks: [{
298
+ id: "a",
299
+ x: 0,
300
+ y: 3,
301
+ size: 4
302
+ }, {
303
+ id: "b",
304
+ x: 1,
305
+ y: 1,
306
+ size: 2
307
+ }] }
308
+ ]
309
+ },
310
+ satellites: {
311
+ blocks: {
312
+ core: { color: "orange" },
313
+ light: { color: "yellow" },
314
+ dark: { color: "blue" }
315
+ },
316
+ poses: [
317
+ { blocks: [{
318
+ id: "core",
319
+ x: 1.5,
320
+ y: 1.5,
321
+ size: 1
322
+ }] },
323
+ {
324
+ blocks: [
325
+ {
326
+ id: "core",
327
+ x: 1,
328
+ y: 1,
329
+ size: 2
330
+ },
331
+ {
332
+ id: "light",
333
+ x: 0,
334
+ y: 3,
335
+ size: 1
336
+ },
337
+ {
338
+ id: "dark",
339
+ x: 1.5,
340
+ y: 0,
341
+ size: 1
342
+ }
343
+ ],
344
+ hold: .2
345
+ },
346
+ {
347
+ blocks: [
348
+ {
349
+ id: "core",
350
+ x: 1.5,
351
+ y: 1.5,
352
+ size: 1
353
+ },
354
+ {
355
+ id: "light",
356
+ x: 2.5,
357
+ y: 2.5,
358
+ size: 1
359
+ },
360
+ {
361
+ id: "dark",
362
+ x: .5,
363
+ y: .5,
364
+ size: 1
365
+ }
366
+ ],
367
+ hold: .2
368
+ },
369
+ { blocks: [
370
+ {
371
+ id: "core",
372
+ x: 1,
373
+ y: 1,
374
+ size: 2
375
+ },
376
+ {
377
+ id: "light",
378
+ x: 3,
379
+ y: 0,
380
+ size: 1
381
+ },
382
+ {
383
+ id: "dark",
384
+ x: 0,
385
+ y: 3,
386
+ size: 1
387
+ }
388
+ ] },
389
+ { blocks: [{
390
+ id: "core",
391
+ x: 1.5,
392
+ y: 1.5,
393
+ size: 1
394
+ }] }
395
+ ]
396
+ },
397
+ swap: {
398
+ blocks: {
399
+ core: { color: "orange" },
400
+ medium: { color: "blue" },
401
+ light: { color: "yellow" }
402
+ },
403
+ poses: [
404
+ { blocks: [
405
+ {
406
+ id: "core",
407
+ x: 2,
408
+ y: 2,
409
+ size: 4
410
+ },
411
+ {
412
+ id: "medium",
413
+ x: 0,
414
+ y: 0,
415
+ size: 2
416
+ },
417
+ {
418
+ id: "light",
419
+ x: 6,
420
+ y: 6,
421
+ size: 1
422
+ }
423
+ ] },
424
+ { blocks: [
425
+ {
426
+ id: "core",
427
+ x: 2,
428
+ y: 3,
429
+ size: 4
430
+ },
431
+ {
432
+ id: "light",
433
+ x: 6,
434
+ y: 1,
435
+ size: 2
436
+ },
437
+ {
438
+ id: "medium",
439
+ x: 1,
440
+ y: 7,
441
+ size: 1
442
+ }
443
+ ] },
444
+ { blocks: [{
445
+ id: "core",
446
+ x: 3,
447
+ y: 3,
448
+ size: 4
449
+ }, {
450
+ id: "medium",
451
+ x: 7,
452
+ y: 7,
453
+ size: 2
454
+ }] },
455
+ { blocks: [{
456
+ id: "core",
457
+ x: 3,
458
+ y: 2,
459
+ size: 4
460
+ }, {
461
+ id: "light",
462
+ x: 2,
463
+ y: 6,
464
+ size: 1
465
+ }] }
466
+ ]
467
+ },
468
+ orbit: {
469
+ blocks: {
470
+ a: { color: "orange" },
471
+ b: { color: "blue" }
472
+ },
473
+ poses: [
474
+ {
475
+ blocks: [{
476
+ id: "a",
477
+ x: 0,
478
+ y: 0,
479
+ size: 1
480
+ }, {
481
+ id: "b",
482
+ x: 1,
483
+ y: 1,
484
+ size: 1
485
+ }],
486
+ hold: .2
487
+ },
488
+ {
489
+ blocks: [{
490
+ id: "a",
491
+ x: 0,
492
+ y: 1,
493
+ size: 1
494
+ }, {
495
+ id: "b",
496
+ x: 1,
497
+ y: 0,
498
+ size: 1
499
+ }],
500
+ hold: .2
501
+ },
502
+ {
503
+ blocks: [{
504
+ id: "a",
505
+ x: 1,
506
+ y: 1,
507
+ size: 1
508
+ }, {
509
+ id: "b",
510
+ x: 0,
511
+ y: 0,
512
+ size: 1
513
+ }],
514
+ hold: .2
515
+ },
516
+ {
517
+ blocks: [{
518
+ id: "a",
519
+ x: 1,
520
+ y: 0,
521
+ size: 1
522
+ }, {
523
+ id: "b",
524
+ x: 0,
525
+ y: 1,
526
+ size: 1
527
+ }],
528
+ hold: .2
529
+ }
530
+ ]
531
+ },
532
+ cluster: {
533
+ blocks: {
534
+ orange: {
535
+ color: "orange",
536
+ family: "pivot"
537
+ },
538
+ blue: {
539
+ color: "blue",
540
+ family: "spark"
541
+ },
542
+ pink: {
543
+ color: "pink",
544
+ family: "connect"
545
+ },
546
+ yellow: {
547
+ color: "yellowLight",
548
+ family: "scale"
549
+ },
550
+ olive: {
551
+ color: "yellowMuted",
552
+ family: "spark"
553
+ }
554
+ },
555
+ poses: [
556
+ {
557
+ blocks: [{
558
+ id: "orange",
559
+ x: 1,
560
+ y: 1,
561
+ size: 2,
562
+ stage: 1
563
+ }],
564
+ hold: .4
565
+ },
566
+ { blocks: [{
567
+ id: "orange",
568
+ x: 1,
569
+ y: 1,
570
+ size: 2,
571
+ stage: 1
572
+ }, {
573
+ id: "blue",
574
+ x: 0,
575
+ y: 3,
576
+ size: 1,
577
+ stage: 1
578
+ }] },
579
+ {
580
+ blocks: [
581
+ {
582
+ id: "orange",
583
+ x: 2,
584
+ y: 1,
585
+ size: 2,
586
+ stage: 2
587
+ },
588
+ {
589
+ id: "blue",
590
+ x: 1,
591
+ y: 2,
592
+ size: 1,
593
+ stage: 1
594
+ },
595
+ {
596
+ id: "olive",
597
+ x: 4,
598
+ y: 0,
599
+ size: 1,
600
+ stage: 1
601
+ }
602
+ ],
603
+ hold: .6
604
+ },
605
+ { blocks: [
606
+ {
607
+ id: "orange",
608
+ x: 2,
609
+ y: 2,
610
+ size: 2,
611
+ stage: 2
612
+ },
613
+ {
614
+ id: "blue",
615
+ x: 1,
616
+ y: 1,
617
+ size: 1,
618
+ stage: 2
619
+ },
620
+ {
621
+ id: "pink",
622
+ x: 2,
623
+ y: 1,
624
+ size: 1,
625
+ stage: 2
626
+ },
627
+ {
628
+ id: "yellow",
629
+ x: 4,
630
+ y: 2,
631
+ size: 1,
632
+ stage: 2
633
+ },
634
+ {
635
+ id: "olive",
636
+ x: 4,
637
+ y: 3,
638
+ size: 1,
639
+ stage: 2
640
+ }
641
+ ] },
642
+ {
643
+ blocks: [
644
+ {
645
+ id: "orange",
646
+ x: 1,
647
+ y: 2,
648
+ size: 2,
649
+ stage: 3
650
+ },
651
+ {
652
+ id: "blue",
653
+ x: 2,
654
+ y: 1,
655
+ size: 1,
656
+ stage: 3
657
+ },
658
+ {
659
+ id: "pink",
660
+ x: 3,
661
+ y: 1,
662
+ size: 1,
663
+ stage: 2
664
+ },
665
+ {
666
+ id: "yellow",
667
+ x: 3,
668
+ y: 2,
669
+ size: 1,
670
+ stage: 2
671
+ },
672
+ {
673
+ id: "olive",
674
+ x: 3,
675
+ y: 3,
676
+ size: 1,
677
+ stage: 2
678
+ }
679
+ ],
680
+ hold: 2
681
+ }
682
+ ]
683
+ }
684
+ }, y = "0 0 72 72", b = {
685
+ scaleOne: "M32.9873 53.559 C28.9705 57.5759 22.4578 57.5759 18.441 53.559 C14.4241 49.5421 14.4241 43.0295 18.441 39.0127 C23.5068 33.9468 27.8352 37.9669 32.9011 32.901 C37.9669 27.8352 33.9468 23.5069 39.0127 18.441 C43.0295 14.4241 49.5422 14.4241 53.559 18.441 C57.5759 22.4579 57.5759 28.9705 53.559 32.9874 C48.4932 38.0532 44.1648 34.0331 39.0989 39.099 C34.0331 44.1648 38.0532 48.4931 32.9873 53.559 Z",
686
+ scaleTwo: "M36 50.3989 C42.6374 50.3989 42.8394 55.8681 49.4769 55.8681 C54.74 55.8681 59.0065 51.6016 59.0065 46.3385 C59.0065 41.0755 54.7399 36.8089 49.4769 36.8089 C42.8394 36.8089 42.6375 42.2781 36 42.2781 C29.3625 42.2781 29.1606 36.8089 22.5231 36.8089 C17.26 36.8089 12.9935 41.0754 12.9935 46.3385 C12.9935 51.6016 17.26 55.8681 22.5231 55.8681 C29.1606 55.8681 29.3625 50.3989 36 50.3989 Z M22.5231 35.1911 C17.26 35.1911 12.9935 30.9245 12.9935 25.6615 C12.9935 20.3984 17.26 16.1319 22.5231 16.1319 C29.1606 16.1319 29.3625 21.6011 36 21.6011 C42.6375 21.6011 42.8394 16.1319 49.4769 16.1319 C54.7399 16.1319 59.0065 20.3984 59.0065 25.6615 C59.0065 30.9245 54.74 35.1911 49.4769 35.1911 C42.8394 35.1911 42.6374 29.7219 36 29.7219 C29.3625 29.7219 29.1606 35.1911 22.5231 35.1911 Z",
687
+ scaleThree: "M46.534 36 C46.534 30.1823 41.8177 25.466 36 25.466 C30.1823 25.466 25.466 30.1823 25.466 36 C25.466 41.8177 30.1823 46.534 36 46.534 C41.8177 46.534 46.534 41.8177 46.534 36 Z M10.2127 51.1055 C10.2127 43.6723 16.3429 43.4395 16.3429 35.9998 C16.3429 28.5601 10.2127 28.3338 10.2127 20.894 C10.2127 14.9949 14.9953 10.2131 20.8945 10.2131 C28.3277 10.2131 28.5606 16.3433 36.0003 16.3433 C43.4399 16.3434 43.6663 10.2131 51.106 10.2131 C57.0051 10.2131 61.7873 14.9953 61.7873 20.8945 C61.7873 28.3277 55.6571 28.5605 55.6571 36.0002 C55.6571 43.4399 61.7873 43.6662 61.7873 51.106 C61.7873 57.0051 57.0047 61.7869 51.1055 61.7869 C43.6723 61.7869 43.4394 55.6567 35.9997 55.6567 C28.5601 55.6566 28.3337 61.7869 20.894 61.7869 C14.9949 61.7869 10.2127 57.0047 10.2127 51.1055 Z",
688
+ connectOne: "M25.5602 35.9945 C25.5602 25.5293 33.394 16.8783 43.5673 15.4888 C45.1444 15.273 46.4401 16.5835 46.4401 18.1745 L46.4401 53.811 C46.4401 55.4022 45.1444 56.7126 43.5673 56.4966 C33.394 55.1106 25.5602 46.4598 25.5602 35.9945 Z",
689
+ connectTwo: "M37.9659 35.9669 C37.9659 25.6277 45.7384 17.0884 55.7966 15.7961 C57.2547 15.609 58.4536 16.8183 58.4536 18.2907 L58.4536 53.643 C58.4536 55.1116 57.2547 56.3248 55.7966 56.1342 C45.7345 54.8419 37.9659 46.3026 37.9659 35.9634 L37.9659 35.9669 Z M34.1066 35.9669 C34.1066 25.6133 26.2046 17.0667 15.977 15.7926 C14.5189 15.609 13.3201 16.8183 13.3201 18.2907 L13.3201 53.643 C13.3201 55.1155 14.5189 56.3248 15.977 56.1411 C26.2011 54.8632 34.1066 46.3169 34.1066 35.9669 Z",
690
+ connectThree: "M38.8462 55.6591 C37.7229 56.7859 37.7086 58.6396 39.0334 59.518 C44.6887 63.2731 52.429 62.6214 57.4582 57.5923 C62.4908 52.5592 63.139 44.8193 59.3878 39.1675 C58.5055 37.8427 56.6518 37.8531 55.5285 38.9799 L38.8462 55.6626 L38.8462 55.6591 Z M55.3197 33.5118 C56.443 34.6347 58.2971 34.6494 59.1898 33.3316 C63.0739 27.5791 62.509 19.7345 57.4616 14.691 C52.4182 9.6437 44.5736 9.0783 38.8207 12.9628 C37.5032 13.8521 37.5141 15.7062 38.6409 16.833 L55.3231 33.5153 L55.3197 33.5118 Z M16.9113 38.7676 C15.7845 37.6408 13.9338 37.63 13.0411 38.9478 C9.157 44.7003 9.7219 52.5449 14.7693 57.5884 C19.8166 62.6357 27.6573 63.2046 33.4099 59.3165 C34.7277 58.4273 34.7168 56.5732 33.59 55.4464 L16.9078 38.7641 L16.9113 38.7676 Z M14.7693 14.896 C9.7362 19.929 9.0884 27.6689 12.8431 33.3208 C13.7254 34.6456 15.5791 34.6347 16.7024 33.5079 L33.3847 16.8256 C34.5115 15.7023 34.5223 13.8447 33.1975 12.9663 C27.5422 9.2116 19.8019 9.8634 14.7727 14.8925 L14.7693 14.896 Z",
691
+ sparkOne: "M35.9002 53.28 C45.3524 53.28 53.015 45.6174 53.015 36.1652 C53.015 26.713 45.3524 19.0504 35.9002 19.0504 C26.448 19.0504 18.7854 26.713 18.7854 36.1652 C18.7854 45.6174 26.448 53.28 35.9002 53.28 Z",
692
+ sparkTwo: "M22.9409 36.6826 C29.4471 36.6826 34.7219 31.4081 34.7219 24.9015 C34.7219 18.3949 29.4471 13.1205 22.9409 13.1205 C16.4343 13.1205 11.1599 18.3949 11.1599 24.9015 C11.1599 31.4081 16.4343 36.6826 22.9409 36.6826 Z M48.7968 36.6826 C55.3034 36.6826 60.5778 31.4081 60.5778 24.9015 C60.5778 18.3949 55.3034 13.1205 48.7968 13.1205 C42.2906 13.1205 37.0162 18.3949 37.0162 24.9015 C37.0162 31.4078 42.2906 36.6826 48.7968 36.6826 Z M35.7774 59.0395 C42.2836 59.0395 47.5584 53.7651 47.5584 47.2585 C47.5584 40.7523 42.2836 35.4779 35.7774 35.4779 C29.2708 35.4779 23.996 40.7523 23.996 47.2585 C23.996 53.7651 29.2708 59.0395 35.7774 59.0395 Z",
693
+ sparkThree: "M11.9817 23.2892 C14.87 26.7409 20.0076 27.2013 23.464 24.3184 C26.9199 21.4355 27.3884 16.2983 24.5109 12.8377 C21.6269 9.3697 16.4761 8.9001 13.0124 11.7892 C9.5487 14.6786 9.0872 19.8302 11.9817 23.2892 Z M47.6808 23.2795 C50.5637 26.7359 55.7009 27.2044 59.1615 24.3269 C62.6295 21.4429 63.0991 16.2921 60.2101 12.8284 C57.3206 9.3647 52.169 8.9032 48.71 11.7977 C45.2583 14.686 44.7979 19.8236 47.6808 23.2795 Z M34.9048 48.9715 C42.1456 49.6264 48.5492 44.2927 49.2152 37.0526 C49.8825 29.797 44.5352 23.3764 37.2781 22.72 C30.0209 22.064 23.6089 27.4214 22.9641 34.6793 C22.3205 41.9217 27.6635 48.3171 34.9048 48.9715 Z M47.6886 58.9965 C50.5769 62.4482 55.7149 62.9085 59.1708 60.0256 C62.6268 57.1424 63.0949 52.0055 60.2174 48.5453 C57.3338 45.077 52.183 44.6073 48.7193 47.4968 C45.2559 50.3859 44.7941 55.5374 47.6886 58.9965 Z M11.9739 58.9876 C14.8568 62.4435 19.9937 62.912 23.4543 60.0346 C26.9222 57.1505 27.3923 51.9997 24.5028 48.536 C21.6137 45.0727 16.4622 44.6108 13.0031 47.5053 C9.5514 50.3936 9.0911 55.5316 11.9739 58.9876 Z",
694
+ pivotOne: "M55.4371 41.3248 C55.4371 40.3498 54.6466 39.5665 53.674 39.493 C42.3402 38.6354 33.2964 29.5897 32.4362 18.257 C32.3625 17.2848 31.5798 16.4916 30.6034 16.4916 L17.9249 16.4916 C16.9523 16.4916 16.158 17.2836 16.2007 18.2578 C17.0957 38.5451 33.3855 54.8323 53.674 55.7301 C54.6466 55.7732 55.4371 54.9787 55.4371 54.0038 L55.4371 41.3248 Z",
695
+ pivotTwo: "M59.3972 32.8542 C59.3972 32.058 58.75 31.4178 57.9557 31.3578 C48.6949 30.6568 41.3056 23.266 40.6043 14.0063 C40.5461 13.212 39.903 12.5641 39.1086 12.5641 L28.7473 12.5641 C27.953 12.5641 27.302 13.2112 27.3369 14.0071 C28.0731 30.5832 41.3792 43.8909 57.9557 44.6244 C58.75 44.6596 59.3972 44.0106 59.3972 43.2139 L59.3972 32.8542 Z M12.597 28.714 C12.597 27.9173 13.2442 27.2683 14.0423 27.3036 C30.6188 28.037 43.925 41.3447 44.6573 57.9208 C44.6922 58.7167 44.0451 59.3642 43.2469 59.3642 L32.8895 59.3642 C32.0913 59.3642 31.4519 58.716 31.3938 57.9216 C30.6925 48.6623 23.2993 41.2711 14.0423 40.5702 C13.248 40.5101 12.597 39.8704 12.597 39.0737 L12.597 28.714 Z",
696
+ pivotThree: "M9.102 34.5022 C22.6832 33.9012 33.5831 23.0002 34.1798 9.4247 C34.2108 8.773 33.6761 8.2441 33.0251 8.2441 L24.5393 8.2441 C23.8883 8.2441 23.3613 8.7769 23.3109 9.4247 C22.7414 17.0101 16.685 23.0653 9.0981 23.6376 C8.4471 23.688 7.9202 24.2099 7.9202 24.8616 L7.9202 33.3467 C7.9202 33.9985 8.4471 34.5313 9.0981 34.5022 L9.102 34.5022 Z M62.7915 34.7974 C63.4502 34.8265 63.9888 34.2898 63.9888 33.6276 L63.9888 25.0453 C63.9888 24.3862 63.4502 23.8573 62.7915 23.8069 C55.1232 23.2272 49.001 17.1035 48.4237 9.4356 C48.3733 8.7769 47.8425 8.2402 47.1837 8.2402 L38.601 8.2402 C37.9423 8.2402 37.4037 8.7769 37.4308 9.4356 C38.0391 23.166 49.063 34.1891 62.7915 34.7974 Z M47.1798 63.7164 C47.8386 63.7164 48.3733 63.1801 48.4198 62.5214 C48.9971 54.8531 55.1232 48.7298 62.7876 48.1501 C63.4502 48.0997 63.9849 47.5704 63.9849 46.9117 L63.9849 38.3294 C63.9849 37.6702 63.4502 37.1305 62.7876 37.1592 C49.0592 37.7675 38.0353 48.791 37.4269 62.5214 C37.3998 63.1801 37.9345 63.7164 38.5971 63.7164 L47.1798 63.7164 Z M33.029 63.7164 C33.68 63.7164 34.2108 63.1871 34.1837 62.5358 C33.5831 48.9564 22.6832 38.0554 9.1058 37.4579 C8.4549 37.4292 7.924 37.962 7.924 38.6138 L7.924 47.0988 C7.924 47.7506 8.4549 48.276 9.1058 48.3264 C16.6928 48.8987 22.7452 54.9539 23.3187 62.5392 C23.3691 63.191 23.8922 63.7199 24.547 63.7199 L33.0329 63.7199 L33.029 63.7164 Z"
697
+ }, x = "M273.5,143.7c-32.9,24.3-80.7,37.2-121.8,37.2c-57.6,0-109.5-21.3-148.7-56.7c-3.1-2.8-0.3-6.6,3.4-4.4c42.4,24.6,94.7,39.5,148.8,39.5c36.5,0,76.6-7.6,113.5-23.2C274.2,133.6,278.9,139.7,273.5,143.7z M287.2,128.1c-4.2-5.4-27.8-2.6-38.5-1.3c-3.2,0.4-3.7-2.4-0.8-4.5c18.8-13.2,49.7-9.4,53.3-5c3.6,4.5-1,35.4-18.6,50.2c-2.7,2.3-5.3,1.1-4.1-1.9C282.5,155.7,291.4,133.4,287.2,128.1z", S = {
698
+ white: "#FFFFFF",
699
+ black: "#000000",
700
+ orange: "#FF6200",
701
+ yellow: "#F3C300",
702
+ pink: "#FF4D8B",
703
+ purple: "#B052FF",
704
+ blue: "#0578FF",
705
+ green: "#6EE750"
706
+ }, re = class {
707
+ static getColor(e) {
708
+ return Object.entries(S).find(([, t]) => t.toLowerCase() === e.toLowerCase())?.[0] ?? "black";
709
+ }
710
+ }, ie = class a {
28
711
  static isImagePayload(e) {
29
712
  return e.mediaType.startsWith("image/");
30
713
  }
@@ -206,22 +889,22 @@ for (var d = class {
206
889
  behavior: "smooth"
207
890
  });
208
891
  }
209
- }, p = "https://api.digo-labs.com", m = "X-Digo-App", ee = "X-Admin-Secret", te = "-digo-labs-storage", ne = [
892
+ }, C = "https://api.digo-labs.com", ae = "X-Digo-App", oe = "X-Admin-Secret", se = "-digo-labs-storage", ce = [
210
893
  "#58C2E3",
211
894
  "#79F2A9",
212
895
  "#985EFF",
213
896
  "#BDF279"
214
- ], re = "wss://ws.digo-labs.com", ie = {
215
- url: `${p}/api/proxy/replicate`,
897
+ ], le = "wss://ws.digo-labs.com", ue = {
898
+ url: `${C}/api/proxy/replicate`,
216
899
  targetHeader: "x-replicate-target-url",
217
900
  hosts: /(\.|^)replicate\.com$/
218
- }, ae = "us-east-1", oe = {
901
+ }, de = "us-east-1", fe = {
219
902
  sm: 640,
220
903
  md: 768,
221
904
  lg: 1024,
222
905
  xl: 1280,
223
906
  "2xl": 1536
224
- }, h = {
907
+ }, w = {
225
908
  "font-size": [{ typo: [
226
909
  "1",
227
910
  "2",
@@ -259,7 +942,7 @@ for (var d = class {
259
942
  "typo-body",
260
943
  "typo-code"
261
944
  ]
262
- }, g = [
945
+ }, pe = [
263
946
  {
264
947
  name: "Claude 3.7 Sonnet",
265
948
  description: "Anthropic's advanced model",
@@ -275,7 +958,7 @@ for (var d = class {
275
958
  description: "OpenAi's advanced model",
276
959
  icon: "icon-[simple-icons--openai]"
277
960
  }
278
- ], se = {
961
+ ], T = {
279
962
  typescript: {
280
963
  icon: "typescript",
281
964
  name: "TypeScript"
@@ -348,9 +1031,9 @@ for (var d = class {
348
1031
  icon: "code",
349
1032
  name: "Text"
350
1033
  }
351
- }, _ = /* @__PURE__ */ function(e) {
1034
+ }, E = /* @__PURE__ */ function(e) {
352
1035
  return e.Navigation = "Navigation", e.Actions = "Actions", e.Status = "Status", e.Media = "Media", e.Files = "Files", e.UI = "UI", e.Brands = "Brands", e.Programming = "Programming", e.Tools = "Tools", e.Data = "Data", e.Communication = "Communication", e.Design = "Design", e.AI = "AI", e.Numbers = "Numbers", e.Misc = "Misc", e;
353
- }(_ || {}), v = {
1036
+ }(E || {}), D = {
354
1037
  arrowUp: {
355
1038
  category: "Navigation",
356
1039
  icon: "icon-[lucide--arrow-up]"
@@ -2091,37 +2774,37 @@ for (var d = class {
2091
2774
  category: "Misc",
2092
2775
  icon: "icon-[lucide--package-plus]"
2093
2776
  }
2094
- }, ce = class {
2777
+ }, O = class {
2095
2778
  static getIcon(e) {
2096
- return e in v ? v[e].icon : e;
2779
+ return e in D ? D[e].icon : e;
2097
2780
  }
2098
2781
  static getCategory(e) {
2099
- return v[e].category;
2782
+ return D[e].category;
2100
2783
  }
2101
2784
  static getCategories() {
2102
2785
  let e = /* @__PURE__ */ new Set();
2103
- for (let t of Object.values(v)) e.add(t.category);
2104
- return Object.values(_).filter((t) => e.has(t));
2786
+ for (let t of Object.values(D)) e.add(t.category);
2787
+ return Object.values(E).filter((t) => e.has(t));
2105
2788
  }
2106
2789
  static getByCategory() {
2107
2790
  let e = {};
2108
- for (let t of Object.values(_)) e[t] = [];
2109
- for (let [t, n] of Object.entries(v)) e[n.category].push({
2791
+ for (let t of Object.values(E)) e[t] = [];
2792
+ for (let [t, n] of Object.entries(D)) e[n.category].push({
2110
2793
  id: t,
2111
2794
  category: n.category,
2112
2795
  icon: n.icon
2113
2796
  });
2114
2797
  return e;
2115
2798
  }
2116
- }, y = "@plugin \"@iconify/tailwind4\";\n\n@plugin \"tailwindcss-animate\";\n\n@source inline(\"typo-1 typo-2 typo-3 typo-4 typo-5 typo-6 typo-7 typo-8 typo-9 typo-10 typo-11 typo-12 typo-13 typo-14 typo-15 typo-16 typo-17 typo-18 typo-weight-100 typo-weight-200 typo-weight-300 typo-weight-400 typo-weight-500 typo-weight-600 typo-weight-700 typo-weight-800 typo-weight-900\");\n\n@source \"./index.js\";\n@source \"./**/*.{ts,tsx}\";\n\n@theme static {\n --font-code: 'geist-mono', monospace;\n --font-geist: 'geist', sans-serif;\n --font-geist-mono: 'geist-mono', monospace;\n --font-pixel-circle: 'geist-pixel-circle', monospace;\n --font-pixel-grid: 'geist-pixel-grid', monospace;\n --font-pixel-line: 'geist-pixel-line', monospace;\n --font-pixel-square: 'geist-pixel-square', monospace;\n --font-pixel-triangle: 'geist-pixel-triangle', monospace;\n --font-clash-grotesk: 'clash-grotesk-variable', sans-serif;\n --font-nippo: 'nippo', sans-serif;\n --font-humane: 'humane-variable', sans-serif;\n --font-general-sans: 'general-sans', sans-serif;\n --font-kode-mono: 'kode-mono-vf', monospace;\n --font-aalto: 'Aalto', display;\n --font-being: 'being', display;\n --font-benzol: 'benzol', display;\n --font-half: 'half', display;\n --font-miratrix: 'miratrix', display;\n --font-triakis: 'triakis', display;\n --font-yeager: 'yeager', display;\n --font-karmatic-arcade: 'karmatic-arcade-regular', display;\n --font-digital-7: 'digital-7-mono', monospace;\n --font-pixelony: 'pixelony', display;\n --font-unknown: 'unknown', display;\n --font-disket: 'disket', display;\n --font-heming: 'heming', display;\n --font-obrazec: 'obrazec', display;\n\n --color-neutral-1: #111111;\n --color-neutral-2: #191919;\n --color-neutral-3: #222222;\n --color-neutral-4: #2a2a2a;\n --color-neutral-5: #313131;\n --color-neutral-6: #3a3a3a;\n --color-neutral-7: #484848;\n --color-neutral-8: #606060;\n --color-neutral-9: #6e6e6e;\n --color-neutral-10: #7b7b7b;\n --color-neutral-11: #b4b4b4;\n --color-neutral-12: #eeeeee;\n\n --color-neutralA-1: #FFFFFF05;\n --color-neutralA-2: #FFFFFF09;\n --color-neutralA-3: #FFFFFF12;\n --color-neutralA-4: #FFFFFF1B;\n --color-neutralA-5: #FFFFFF22;\n --color-neutralA-6: #FFFFFF2C;\n --color-neutralA-7: #FFFFFF3B;\n --color-neutralA-8: #FFFFFF55;\n --color-neutralA-9: #FFFFFF64;\n --color-neutralA-10: #FFFFFF72;\n --color-neutralA-11: #FFFFFFAF;\n --color-neutralA-12: #FFFFFFED;\n\n --color-shadows-1: #0000000D;\n --color-shadows-2: #0000001A;\n --color-shadows-3: #00000026;\n --color-shadows-4: #00000033;\n --color-shadows-5: #0000004D;\n --color-shadows-6: #00000066;\n --color-shadows-7: #00000080;\n --color-shadows-8: #00000099;\n --color-shadows-9: #000000B3;\n --color-shadows-10: #000000CC;\n --color-shadows-11: #000000E6;\n --color-shadows-12: #000000F2;\n\n --color-accent-1: #0e1512;\n --color-accent-2: #121b17;\n --color-accent-3: #132d21;\n --color-accent-4: #113b29;\n --color-accent-5: #174933;\n --color-accent-6: #20573e;\n --color-accent-7: #28684a;\n --color-accent-8: #2f7c57;\n --color-accent-9: #30a46c;\n --color-accent-10: #33b074;\n --color-accent-11: #3dd68c;\n --color-accent-12: #b1f1cb;\n\n --color-accentA-1: #00de4505;\n --color-accentA-2: #29f99d0b;\n --color-accentA-3: #22ff991e;\n --color-accentA-4: #11ff992d;\n --color-accentA-5: #2bffa23c;\n --color-accentA-6: #44ffaa4b;\n --color-accentA-7: #50fdac5e;\n --color-accentA-8: #54ffad73;\n --color-accentA-9: #44ffa49e;\n --color-accentA-10: #43fea4ab;\n --color-accentA-11: #46fea5d4;\n --color-accentA-12: #bbffd7f0;\n\n --color-error-1: #191113;\n --color-error-2: #1e1517;\n --color-error-3: #3a141e;\n --color-error-4: #4e1325;\n --color-error-5: #5e1a2e;\n --color-error-6: #6f2539;\n --color-error-7: #883447;\n --color-error-8: #b3445a;\n --color-error-9: #e54666;\n --color-error-10: #ec5a72;\n --color-error-11: #ff949d;\n --color-error-12: #fed2e1;\n\n --color-errorA-1: #f4126709;\n --color-errorA-2: #f22f7a11;\n --color-errorA-3: #fe2a8b2a;\n --color-errorA-4: #fd158741;\n --color-errorA-5: #fd278f51;\n --color-errorA-6: #fe459763;\n --color-errorA-7: #fd559b7f;\n --color-errorA-8: #fe5b9bab;\n --color-errorA-9: #fe418de8;\n --color-errorA-10: #ff5693ed;\n --color-errorA-11: #ff92ad;\n --color-errorA-12: #ffd5eafd;\n\n --color-success-1: #0d1512;\n --color-success-2: #121c18;\n --color-success-3: #0f2e22;\n --color-success-4: #0b3b2c;\n --color-success-5: #114837;\n --color-success-6: #1b5745;\n --color-success-7: #246854;\n --color-success-8: #2a7e68;\n --color-success-9: #29a383;\n --color-success-10: #27b08b;\n --color-success-11: #1fd8a4;\n --color-success-12: #adf0d4;\n\n --color-successA-1: #00de4505;\n --color-successA-2: #29f99d0b;\n --color-successA-3: #22ff991e;\n --color-successA-4: #11ff992d;\n --color-successA-5: #2bffa23c;\n --color-successA-6: #44ffaa4b;\n --color-successA-7: #50fdac5e;\n --color-successA-8: #54ffad73;\n --color-successA-9: #44ffa49e;\n --color-successA-10: #43fea4ab;\n --color-successA-11: #46fea5d4;\n --color-successA-12: #bbffd7f0;\n\n --color-warning-1: #16120c;\n --color-warning-2: #1d180f;\n --color-warning-3: #302008;\n --color-warning-4: #3f2700;\n --color-warning-5: #4d3000;\n --color-warning-6: #5c3d05;\n --color-warning-7: #714f19;\n --color-warning-8: #8f6424;\n --color-warning-9: #f5d90a;\n --color-warning-10: #ffef5c;\n --color-warning-11: #f0c000;\n --color-warning-12: #fffad1;\n\n --color-warningA-1: #d1510004;\n --color-warningA-2: #f9b4000b;\n --color-warningA-3: #ffaa001e;\n --color-warningA-4: #fdb70028;\n --color-warningA-5: #febb0036;\n --color-warningA-6: #fec40046;\n --color-warningA-7: #fdcb225c;\n --color-warningA-8: #fdca327b;\n --color-warningA-9: #ffe629;\n --color-warningA-10: #ffff57;\n --color-warningA-11: #fee949f5;\n --color-warningA-12: #fef6baf6;\n\n --color-info-1: #0d1520;\n --color-info-2: #111927;\n --color-info-3: #0d2847;\n --color-info-4: #003362;\n --color-info-5: #004074;\n --color-info-6: #104d87;\n --color-info-7: #205d9e;\n --color-info-8: #2870bd;\n --color-info-9: #0090ff;\n --color-info-10: #3b9eff;\n --color-info-11: #70b8ff;\n --color-info-12: #c2e6ff;\n\n --color-infoA-1: #004df211;\n --color-infoA-2: #1166fb18;\n --color-infoA-3: #0077ff3a;\n --color-infoA-4: #0075ff57;\n --color-infoA-5: #0081fd6b;\n --color-infoA-6: #0f89fd7f;\n --color-infoA-7: #2a91fe98;\n --color-infoA-8: #3094feb9;\n --color-infoA-9: #0090ff;\n --color-infoA-10: #3b9eff;\n --color-infoA-11: #70b8ff;\n --color-infoA-12: #c2e6ff;\n\n --text-xxs: 0.625rem;\n --text-10xl: 10rem;\n --text-11xl: 12rem;\n --text-12xl: 14rem;\n --text-13xl: 16rem;\n}\n\n@theme {\n --radius: 0.5rem;\n --radius-xxs: calc(var(--radius) * 0.25);\n --radius-xs: calc(var(--radius) * 0.375);\n --radius-sm: calc(var(--radius) * 0.625);\n --radius-md: calc(var(--radius) * 0.875);\n --radius-lg: calc(var(--radius) * 1.25);\n --radius-xl: calc(var(--radius) * 1.75);\n --radius-2xl: calc(var(--radius) * 2.5);\n --radius-3xl: calc(var(--radius) * 3.5);\n\n --typo-header-font: 'geist', sans-serif;\n --typo-header-weight: 600;\n --typo-header-tracking: 0.025em;\n --typo-header-leading: 1;\n\n --typo-label-font: 'geist', sans-serif;\n --typo-label-weight: 500;\n --typo-label-tracking: 0.025em;\n --typo-label-leading: 1;\n\n --typo-body-font: 'geist', sans-serif;\n --typo-body-weight: 400;\n --typo-body-tracking: 0.025em;\n --typo-body-leading: 1.375;\n\n --typo-code-font: 'geist-mono', monospace;\n --typo-code-weight: 500;\n --typo-code-tracking: 0;\n --typo-code-leading: 1.5;\n\n --typo-scale-factor: 1;\n\n --shadow-xs-color: var(--color-neutral-9);\n --shadow-xs-offsetX: 0px;\n --shadow-xs-offsetY: 0px;\n --shadow-xs-blur: 2px;\n --shadow-xs-spread: 0px;\n --shadow-xs-opacity: 5%;\n --shadow-xs: var(--shadow-xs-offsetX) var(--shadow-xs-offsetY) var(--shadow-xs-blur) var(--shadow-xs-spread) color-mix(in srgb, var(--shadow-xs-color) var(--shadow-xs-opacity), transparent);\n\n --shadow-s-color: var(--color-neutral-9);\n --shadow-s-offsetX: 0px;\n --shadow-s-offsetY: 0px;\n --shadow-s-blur: 4px;\n --shadow-s-spread: 0px;\n --shadow-s-opacity: 10%;\n --shadow-s: var(--shadow-s-offsetX) var(--shadow-s-offsetY) var(--shadow-s-blur) var(--shadow-s-spread) color-mix(in srgb, var(--shadow-s-color) var(--shadow-s-opacity), transparent);\n\n --shadow-m-color: var(--color-neutral-9);\n --shadow-m-offsetX: 0px;\n --shadow-m-offsetY: 0px;\n --shadow-m-blur: 8px;\n --shadow-m-spread: -1px;\n --shadow-m-opacity: 15%;\n --shadow-m: var(--shadow-m-offsetX) var(--shadow-m-offsetY) var(--shadow-m-blur) var(--shadow-m-spread) color-mix(in srgb, var(--shadow-m-color) var(--shadow-m-opacity), transparent);\n\n --shadow-l-color: var(--color-neutral-9);\n --shadow-l-offsetX: 0px;\n --shadow-l-offsetY: 0px;\n --shadow-l-blur: 16px;\n --shadow-l-spread: -2px;\n --shadow-l-opacity: 20%;\n --shadow-l: var(--shadow-l-offsetX) var(--shadow-l-offsetY) var(--shadow-l-blur) var(--shadow-l-spread) color-mix(in srgb, var(--shadow-l-color) var(--shadow-l-opacity), transparent);\n\n --shadow-xl-color: var(--color-neutral-9);\n --shadow-xl-offsetX: 0px;\n --shadow-xl-offsetY: 0px;\n --shadow-xl-blur: 40px;\n --shadow-xl-spread: -8px;\n --shadow-xl-opacity: 30%;\n --shadow-xl: var(--shadow-xl-offsetX) var(--shadow-xl-offsetY) var(--shadow-xl-blur) var(--shadow-xl-spread) color-mix(in srgb, var(--shadow-xl-color) var(--shadow-xl-opacity), transparent);\n}\n\n@utility typo-weight-100 {\n @apply font-thin;\n}\n\n@utility typo-weight-200 {\n @apply font-extralight;\n}\n\n@utility typo-weight-300 {\n @apply font-light;\n}\n\n@utility typo-weight-400 {\n @apply font-normal;\n}\n\n@utility typo-weight-500 {\n @apply font-medium;\n}\n\n@utility typo-weight-600 {\n @apply font-semibold;\n}\n\n@utility typo-weight-700 {\n @apply font-bold;\n}\n\n@utility typo-weight-800 {\n @apply font-extrabold;\n}\n\n@utility typo-weight-900 {\n @apply font-black;\n}\n\n@utility typo-header {\n font-family: var(--typo-header-font);\n font-weight: var(--typo-header-weight);\n -webkit-font-smoothing: antialiased;\n white-space: nowrap;\n letter-spacing: var(--typo-header-tracking);\n line-height: var(--typo-header-leading);\n}\n\n@utility typo-label {\n font-family: var(--typo-label-font);\n font-weight: var(--typo-label-weight);\n -webkit-font-smoothing: antialiased;\n white-space: nowrap;\n letter-spacing: var(--typo-label-tracking);\n line-height: var(--typo-label-leading);\n}\n\n@utility typo-body {\n font-family: var(--typo-body-font);\n font-weight: var(--typo-body-weight);\n -webkit-font-smoothing: antialiased;\n text-wrap: wrap;\n letter-spacing: var(--typo-body-tracking);\n line-height: var(--typo-body-leading);\n}\n\n@utility typo-code {\n font-family: var(--typo-code-font);\n font-weight: var(--typo-code-weight);\n -webkit-font-smoothing: antialiased;\n white-space: nowrap;\n letter-spacing: var(--typo-code-tracking);\n line-height: var(--typo-code-leading);\n font-variant-numeric: tabular-nums;\n}\n\n@utility typo-1 {\n @apply typo-body;\n font-size: calc(var(--text-xxs) * var(--typo-scale-factor));\n}\n\n@utility typo-2 {\n @apply typo-body;\n font-size: calc(var(--text-xs) * var(--typo-scale-factor));\n}\n\n@utility typo-3 {\n @apply typo-body;\n font-size: calc(var(--text-sm) * var(--typo-scale-factor));\n}\n\n@utility typo-4 {\n @apply typo-body;\n font-size: calc(var(--text-base) * var(--typo-scale-factor));\n}\n\n@utility typo-5 {\n @apply typo-body;\n font-size: calc(var(--text-lg) * var(--typo-scale-factor));\n}\n\n@utility typo-6 {\n @apply typo-body;\n font-size: calc(var(--text-xl) * var(--typo-scale-factor));\n}\n\n@utility typo-7 {\n @apply typo-body;\n font-size: calc(var(--text-2xl) * var(--typo-scale-factor));\n}\n\n@utility typo-8 {\n @apply typo-body;\n font-size: calc(var(--text-3xl) * var(--typo-scale-factor));\n}\n\n@utility typo-9 {\n @apply typo-body;\n font-size: calc(var(--text-4xl) * var(--typo-scale-factor));\n}\n\n@utility typo-10 {\n @apply typo-body;\n font-size: calc(var(--text-5xl) * var(--typo-scale-factor));\n}\n\n@utility typo-11 {\n @apply typo-body;\n font-size: calc(var(--text-6xl) * var(--typo-scale-factor));\n}\n\n@utility typo-12 {\n @apply typo-body;\n font-size: calc(var(--text-7xl) * var(--typo-scale-factor));\n}\n\n@utility typo-13 {\n @apply typo-body;\n font-size: calc(var(--text-8xl) * var(--typo-scale-factor));\n}\n\n@utility typo-14 {\n @apply typo-body;\n font-size: calc(var(--text-9xl) * var(--typo-scale-factor));\n}\n\n@utility typo-15 {\n @apply typo-body;\n font-size: calc(var(--text-10xl) * var(--typo-scale-factor));\n}\n\n@utility typo-16 {\n @apply typo-body;\n font-size: calc(var(--text-11xl) * var(--typo-scale-factor));\n}\n\n@utility typo-17 {\n @apply typo-body;\n font-size: calc(var(--text-12xl) * var(--typo-scale-factor));\n}\n\n@utility typo-18 {\n @apply typo-body;\n font-size: calc(var(--text-13xl) * var(--typo-scale-factor));\n}\n\n@utility filter-none {\n filter: none;\n}\n\n@utility flex-col-center {\n @apply flex flex-col justify-center items-center align-middle;\n}\n\n@utility grid-hor-center {\n @apply grid grid-flow-col items-center;\n}\n\n@utility grid-ver-center {\n @apply grid grid-flow-row items-center;\n}\n\n@utility flex-row-center {\n @apply flex flex-row justify-center items-center align-middle;\n}\n\n@utility cs-border-dashed {\n @apply border border-dashed border-neutralA-4;\n}\n\n@utility cs-disabled {\n @apply disabled:pointer-events-none disabled:opacity-50 data-disabled:pointer-events-none data-disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50;\n }\n\n@utility cs-has-disabled {\n @apply has-[[data-slot=control]:disabled]:pointer-events-none has-[[data-slot=control]:disabled]:opacity-50;\n}\n\n@utility cs-transition {\n @apply transition-all duration-200 ease-in-out;\n}\n\n@utility cs-contrast {\n @apply drop-shadow-[0_-1px_1px_#fff4];\n}\n\n@utility cs-popup-animation {\n @apply origin-(--transform-origin) transition-[scale,opacity] duration-[0.25s] ease-[cubic-bezier(0.34,1.56,0.64,1)] data-starting-style:scale-90 data-starting-style:opacity-0 data-ending-style:scale-90 data-ending-style:opacity-0 data-instant:transition-none;\n}\n\n@utility cs-focus {\n @apply outline-none focus-visible:duration-0 focus-visible:outline-solid focus-visible:z-1 focus-visible:ring-[3px] focus-visible:ring-accent-4 focus-visible:outline-1 focus-visible:-outline-offset-1 focus-visible:outline-accent-9; \n}\n\n@utility cs-has-focus {\n @apply has-[[data-slot=control]:focus-visible]:z-1 has-[[data-slot=control]:focus-visible]:ring-[3px] has-[[data-slot=control]:focus-visible]:ring-accent-4 has-[[data-slot=control]:focus-visible]:outline-1 has-[[data-slot=control]:focus-visible]:outline-solid has-[[data-slot=control]:focus-visible]:-outline-offset-1 has-[[data-slot=control]:focus-visible]:outline-accent-9;\n}\n\n@utility cs-invalid {\n @apply aria-invalid:ring-3 aria-invalid:ring-error-6 aria-invalid:border-error-9 focus-visible:aria-invalid:ring-error-4 focus-visible:aria-invalid:outline-error-9;\n}\n\n@utility cs-has-invalid {\n @apply has-[[data-slot=control][aria-invalid=true]]:ring-3 has-[[data-slot=control][aria-invalid=true]]:ring-error-6 has-[[data-slot=control][aria-invalid=true]]:border-error-9 has-[[data-slot=control][aria-invalid=true]:focus-visible]:ring-error-4 has-[[data-slot=control][aria-invalid=true]:focus-visible]:outline-error-9;\n}\n\n@utility cs-steps {\n counter-reset: step;\n}\n\n@utility cs-step {\n &::before {\n --tw-content: counter(step);\n content: var(--tw-content);\n counter-increment: step;\n }\n}\n\n@utility cs-masonry {\n columns: 3;\n & > * {\n break-inside: avoid-column;\n }\n}\n\n@utility cs-stroke {\n -webkit-text-stroke-width: var(--stroke-w, 2px);\n -webkit-text-stroke-color: var(--stroke-color, var(--color-neutral-12));\n color: transparent;\n paint-order: stroke fill;\n}\n\n@utility cs-backdrop-panel {\n @apply rounded-md border-neutralA-4 bg-neutral-1/60 text-neutral-11 backdrop-blur-lg border shadow-m;\n }\n\n@utility animate-collapsible-down {\n animation: collapsible-down 0.2s ease-out;\n}\n\n@utility animate-collapsible-up {\n animation: collapsible-up 0.2s ease-out;\n}\n\n@utility no-scrollbar {\n @apply [scrollbar-width:none] [&::-webkit-scrollbar]:hidden;\n}\n\n@utility cs-gutter {\n background: repeating-linear-gradient(315deg, var(--color-neutral-3) 0 1px, transparent 1px 50%);\n background-size: 10px 10px;\n background-attachment: fixed;\n}\n\n@utility cs-dots {\n background-image: radial-gradient(var(--color-neutral-4) 1px, transparent 1px);\n background-size: 20px 20px;\n}\n\n@keyframes stripes {\n from { background-position: 0 0; }\n to { background-position: 16px 0; }\n}\n\n@utility cs-stripes {\n background-image: repeating-linear-gradient(315deg, var(--color-neutralA-4) 0 4px, transparent 2px 50%);\n background-size: 16px 16px;\n animation: stripes 0.6s linear infinite;\n}\n\n@utility cs-guides {\n overflow: clip;\n isolation: isolate;\n\n & > * {\n position: relative;\n z-index: 0;\n\n &::after {\n content: '';\n position: absolute;\n left: 0;\n right: -1px;\n top: -9999px;\n bottom: -9999px;\n border-left: 1px solid var(--color-neutral-4);\n border-right: 1px solid var(--color-neutral-4);\n pointer-events: none;\n z-index: 1;\n }\n\n &::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: -1px;\n left: -9999px;\n right: -9999px;\n border-top: 1px solid var(--color-neutral-4);\n border-bottom: 1px solid var(--color-neutral-4);\n pointer-events: none;\n z-index: 1;\n }\n }\n}\n\n@utility cs-page-container {\n @apply grid grid-cols-[1fr_minmax(0,var(--page-max-w,64rem))_1fr];\n}\n\n@utility cs-page-grid {\n position: relative;\n max-width: var(--page-max-w, 64rem);\n width: 100%;\n margin-inline: auto;\n border-inline: 1px solid var(--color-neutral-4);\n\n & > :where(*) {\n position: relative;\n\n &::after {\n content: '';\n position: absolute;\n bottom: 0;\n left: -100vw;\n width: 200vw;\n height: 1px;\n background-color: var(--color-neutral-4);\n pointer-events: none;\n }\n }\n\n & > :where(*:first-child)::before {\n content: '';\n position: absolute;\n top: 0;\n left: -100vw;\n width: 200vw;\n height: 1px;\n background-color: var(--color-neutral-4);\n pointer-events: none;\n }\n}\n\n@utility cs-page-gutter {\n &::before, &::after {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n width: var(--page-gutter-w, 2.5rem);\n pointer-events: none;\n background: repeating-linear-gradient(315deg, var(--color-neutral-3) 0 1px, transparent 1px 50%);\n background-size: 10px 10px;\n background-attachment: fixed;\n }\n\n &::before {\n right: 100%;\n border-left: 1px solid var(--color-neutral-4);\n }\n\n &::after {\n left: 100%;\n border-right: 1px solid var(--color-neutral-4);\n }\n}\n\n@media (pointer: coarse) {\n input,\n select,\n textarea {\n font-size: max(16px, 1em);\n }\n}\n\n@layer base {\n\n * {\n @apply transition-colors duration-200;\n }\n\n body {\n color: var(--color-neutral-12);\n background-color: var(--color-neutral-1);\n }\n\n\n @font-face {\n font-family: 'geist';\n font-weight: 100 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-mono';\n font-weight: 100 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-mono.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-circle';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-circle.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-grid';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-grid.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-line';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-line.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-square';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-square.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-triangle';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-triangle.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'clash-grotesk-variable';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/clash-grotesk-variable.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'nippo';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/nippo.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'being';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/being.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'Aalto';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/aalto.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'humane-variable';\n font-weight: 200 800;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/humane-variable.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'general-sans';\n font-weight: 200 800;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/general-sans.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'karmatic-arcade-regular';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/karmatic-arcade-regular.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'kode-mono-vf';\n font-style: normal;\n font-weight: 400 700;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/kode-mono-vf.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'digital-7-mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/digital-7-mono.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'pixelony';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/pixelony.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'unknown';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 140%;\n src: url(https://cdn.digo-labs.com/fonts/unknown.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'benzol';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/benzol.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'half';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/half.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'miratrix';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/miratrix.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'triakis';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/triakis.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'yeager';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/yeager.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'disket';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/disket.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'heming';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/heming.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'obrazec';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/obrazec.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'satoshi';\n font-weight: 300 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/satoshi.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'chillax';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/chillax.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'panchang';\n font-weight: 200 800;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/panchang.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'zodiak';\n font-weight: 100 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/zodiak.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'supreme';\n font-weight: 100 800;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/supreme.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'boska';\n font-weight: 200 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/boska.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'tanker';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/tanker.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'gambarino';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/gambarino.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'neco';\n font-weight: 400 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/neco.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'erode';\n font-weight: 300 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/erode.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'pramukh-rounded';\n font-weight: 200 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/pramukh-rounded.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'bevellier';\n font-weight: 100 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/bevellier.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'comico';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/comico.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'aktura';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/aktura.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'technor';\n font-weight: 200 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/technor.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'array';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/array.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'styro';\n font-weight: 200 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/styro.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'recia';\n font-weight: 300 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/recia.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'melodrama';\n font-weight: 300 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/melodrama.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'boxing';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/boxing.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'kola';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/kola.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'zina';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/zina.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'tabular';\n font-weight: 300 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/tabular.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'expose';\n font-weight: 400 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/expose.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'kihim';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/kihim.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'pilcrow-rounded';\n font-weight: 400 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/pilcrow-rounded.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'new-title';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/new-title.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'kohinoor-zerone';\n font-weight: 100;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/kohinoor-zerone.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'roundo';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/roundo.woff2) format('woff2');\n }\n \n}\n\n@layer utilities {\n * {\n scrollbar-width: thin;\n scrollbar-color: #ffffff50 transparent;\n }\n}\n\n@layer base {\n ::selection {\n background-color: var(--color-neutral-12);\n color: var(--color-neutral-1);\n }\n\n ::-moz-selection {\n background-color: var(--color-neutral-12);\n color: var(--color-neutral-1);\n }\n}", le = /--font-([\w-]+):\s*'([^']+)'/g, b = /* @__PURE__ */ new Map(), x; (x = le.exec(y)) !== null;) {
2117
- let e = `--font-${x[1]}`, t = x[2];
2118
- b.set(t.toLowerCase(), e);
2799
+ }, k = "@plugin \"@iconify/tailwind4\";\n\n@plugin \"tailwindcss-animate\";\n\n@source inline(\"typo-1 typo-2 typo-3 typo-4 typo-5 typo-6 typo-7 typo-8 typo-9 typo-10 typo-11 typo-12 typo-13 typo-14 typo-15 typo-16 typo-17 typo-18 typo-weight-100 typo-weight-200 typo-weight-300 typo-weight-400 typo-weight-500 typo-weight-600 typo-weight-700 typo-weight-800 typo-weight-900\");\n\n@source \"./index.js\";\n@source \"./**/*.{ts,tsx}\";\n\n@theme static {\n --font-code: 'geist-mono', monospace;\n --font-geist: 'geist', sans-serif;\n --font-geist-mono: 'geist-mono', monospace;\n --font-pixel-circle: 'geist-pixel-circle', monospace;\n --font-pixel-grid: 'geist-pixel-grid', monospace;\n --font-pixel-line: 'geist-pixel-line', monospace;\n --font-pixel-square: 'geist-pixel-square', monospace;\n --font-pixel-triangle: 'geist-pixel-triangle', monospace;\n --font-clash-grotesk: 'clash-grotesk-variable', sans-serif;\n --font-nippo: 'nippo', sans-serif;\n --font-humane: 'humane-variable', sans-serif;\n --font-general-sans: 'general-sans', sans-serif;\n --font-kode-mono: 'kode-mono-vf', monospace;\n --font-aalto: 'Aalto', display;\n --font-being: 'being', display;\n --font-benzol: 'benzol', display;\n --font-half: 'half', display;\n --font-miratrix: 'miratrix', display;\n --font-triakis: 'triakis', display;\n --font-yeager: 'yeager', display;\n --font-karmatic-arcade: 'karmatic-arcade-regular', display;\n --font-digital-7: 'digital-7-mono', monospace;\n --font-pixelony: 'pixelony', display;\n --font-unknown: 'unknown', display;\n --font-disket: 'disket', display;\n --font-heming: 'heming', display;\n --font-obrazec: 'obrazec', display;\n\n --color-neutral-1: #111111;\n --color-neutral-2: #191919;\n --color-neutral-3: #222222;\n --color-neutral-4: #2a2a2a;\n --color-neutral-5: #313131;\n --color-neutral-6: #3a3a3a;\n --color-neutral-7: #484848;\n --color-neutral-8: #606060;\n --color-neutral-9: #6e6e6e;\n --color-neutral-10: #7b7b7b;\n --color-neutral-11: #b4b4b4;\n --color-neutral-12: #eeeeee;\n\n --color-neutralA-1: #FFFFFF05;\n --color-neutralA-2: #FFFFFF09;\n --color-neutralA-3: #FFFFFF12;\n --color-neutralA-4: #FFFFFF1B;\n --color-neutralA-5: #FFFFFF22;\n --color-neutralA-6: #FFFFFF2C;\n --color-neutralA-7: #FFFFFF3B;\n --color-neutralA-8: #FFFFFF55;\n --color-neutralA-9: #FFFFFF64;\n --color-neutralA-10: #FFFFFF72;\n --color-neutralA-11: #FFFFFFAF;\n --color-neutralA-12: #FFFFFFED;\n\n --color-shadows-1: #0000000D;\n --color-shadows-2: #0000001A;\n --color-shadows-3: #00000026;\n --color-shadows-4: #00000033;\n --color-shadows-5: #0000004D;\n --color-shadows-6: #00000066;\n --color-shadows-7: #00000080;\n --color-shadows-8: #00000099;\n --color-shadows-9: #000000B3;\n --color-shadows-10: #000000CC;\n --color-shadows-11: #000000E6;\n --color-shadows-12: #000000F2;\n\n --color-accent-1: #0e1512;\n --color-accent-2: #121b17;\n --color-accent-3: #132d21;\n --color-accent-4: #113b29;\n --color-accent-5: #174933;\n --color-accent-6: #20573e;\n --color-accent-7: #28684a;\n --color-accent-8: #2f7c57;\n --color-accent-9: #30a46c;\n --color-accent-10: #33b074;\n --color-accent-11: #3dd68c;\n --color-accent-12: #b1f1cb;\n\n --color-accentA-1: #00de4505;\n --color-accentA-2: #29f99d0b;\n --color-accentA-3: #22ff991e;\n --color-accentA-4: #11ff992d;\n --color-accentA-5: #2bffa23c;\n --color-accentA-6: #44ffaa4b;\n --color-accentA-7: #50fdac5e;\n --color-accentA-8: #54ffad73;\n --color-accentA-9: #44ffa49e;\n --color-accentA-10: #43fea4ab;\n --color-accentA-11: #46fea5d4;\n --color-accentA-12: #bbffd7f0;\n\n --color-error-1: #191113;\n --color-error-2: #1e1517;\n --color-error-3: #3a141e;\n --color-error-4: #4e1325;\n --color-error-5: #5e1a2e;\n --color-error-6: #6f2539;\n --color-error-7: #883447;\n --color-error-8: #b3445a;\n --color-error-9: #e54666;\n --color-error-10: #ec5a72;\n --color-error-11: #ff949d;\n --color-error-12: #fed2e1;\n\n --color-errorA-1: #f4126709;\n --color-errorA-2: #f22f7a11;\n --color-errorA-3: #fe2a8b2a;\n --color-errorA-4: #fd158741;\n --color-errorA-5: #fd278f51;\n --color-errorA-6: #fe459763;\n --color-errorA-7: #fd559b7f;\n --color-errorA-8: #fe5b9bab;\n --color-errorA-9: #fe418de8;\n --color-errorA-10: #ff5693ed;\n --color-errorA-11: #ff92ad;\n --color-errorA-12: #ffd5eafd;\n\n --color-success-1: #0d1512;\n --color-success-2: #121c18;\n --color-success-3: #0f2e22;\n --color-success-4: #0b3b2c;\n --color-success-5: #114837;\n --color-success-6: #1b5745;\n --color-success-7: #246854;\n --color-success-8: #2a7e68;\n --color-success-9: #29a383;\n --color-success-10: #27b08b;\n --color-success-11: #1fd8a4;\n --color-success-12: #adf0d4;\n\n --color-successA-1: #00de4505;\n --color-successA-2: #29f99d0b;\n --color-successA-3: #22ff991e;\n --color-successA-4: #11ff992d;\n --color-successA-5: #2bffa23c;\n --color-successA-6: #44ffaa4b;\n --color-successA-7: #50fdac5e;\n --color-successA-8: #54ffad73;\n --color-successA-9: #44ffa49e;\n --color-successA-10: #43fea4ab;\n --color-successA-11: #46fea5d4;\n --color-successA-12: #bbffd7f0;\n\n --color-warning-1: #16120c;\n --color-warning-2: #1d180f;\n --color-warning-3: #302008;\n --color-warning-4: #3f2700;\n --color-warning-5: #4d3000;\n --color-warning-6: #5c3d05;\n --color-warning-7: #714f19;\n --color-warning-8: #8f6424;\n --color-warning-9: #f5d90a;\n --color-warning-10: #ffef5c;\n --color-warning-11: #f0c000;\n --color-warning-12: #fffad1;\n\n --color-warningA-1: #d1510004;\n --color-warningA-2: #f9b4000b;\n --color-warningA-3: #ffaa001e;\n --color-warningA-4: #fdb70028;\n --color-warningA-5: #febb0036;\n --color-warningA-6: #fec40046;\n --color-warningA-7: #fdcb225c;\n --color-warningA-8: #fdca327b;\n --color-warningA-9: #ffe629;\n --color-warningA-10: #ffff57;\n --color-warningA-11: #fee949f5;\n --color-warningA-12: #fef6baf6;\n\n --color-info-1: #0d1520;\n --color-info-2: #111927;\n --color-info-3: #0d2847;\n --color-info-4: #003362;\n --color-info-5: #004074;\n --color-info-6: #104d87;\n --color-info-7: #205d9e;\n --color-info-8: #2870bd;\n --color-info-9: #0090ff;\n --color-info-10: #3b9eff;\n --color-info-11: #70b8ff;\n --color-info-12: #c2e6ff;\n\n --color-infoA-1: #004df211;\n --color-infoA-2: #1166fb18;\n --color-infoA-3: #0077ff3a;\n --color-infoA-4: #0075ff57;\n --color-infoA-5: #0081fd6b;\n --color-infoA-6: #0f89fd7f;\n --color-infoA-7: #2a91fe98;\n --color-infoA-8: #3094feb9;\n --color-infoA-9: #0090ff;\n --color-infoA-10: #3b9eff;\n --color-infoA-11: #70b8ff;\n --color-infoA-12: #c2e6ff;\n\n --text-xxs: 0.625rem;\n --text-10xl: 10rem;\n --text-11xl: 12rem;\n --text-12xl: 14rem;\n --text-13xl: 16rem;\n}\n\n@theme {\n --radius: 0.5rem;\n --radius-xxs: calc(var(--radius) * 0.25);\n --radius-xs: calc(var(--radius) * 0.375);\n --radius-sm: calc(var(--radius) * 0.625);\n --radius-md: calc(var(--radius) * 0.875);\n --radius-lg: calc(var(--radius) * 1.25);\n --radius-xl: calc(var(--radius) * 1.75);\n --radius-2xl: calc(var(--radius) * 2.5);\n --radius-3xl: calc(var(--radius) * 3.5);\n\n --typo-header-font: 'geist', sans-serif;\n --typo-header-weight: 600;\n --typo-header-tracking: 0.025em;\n --typo-header-leading: 1;\n\n --typo-label-font: 'geist', sans-serif;\n --typo-label-weight: 500;\n --typo-label-tracking: 0.025em;\n --typo-label-leading: 1;\n\n --typo-body-font: 'geist', sans-serif;\n --typo-body-weight: 400;\n --typo-body-tracking: 0.025em;\n --typo-body-leading: 1.375;\n\n --typo-code-font: 'geist-mono', monospace;\n --typo-code-weight: 500;\n --typo-code-tracking: 0;\n --typo-code-leading: 1.5;\n\n --typo-scale-factor: 1;\n\n --shadow-xs-color: var(--color-neutral-9);\n --shadow-xs-offsetX: 0px;\n --shadow-xs-offsetY: 0px;\n --shadow-xs-blur: 2px;\n --shadow-xs-spread: 0px;\n --shadow-xs-opacity: 5%;\n --shadow-xs: var(--shadow-xs-offsetX) var(--shadow-xs-offsetY) var(--shadow-xs-blur) var(--shadow-xs-spread) color-mix(in srgb, var(--shadow-xs-color) var(--shadow-xs-opacity), transparent);\n\n --shadow-s-color: var(--color-neutral-9);\n --shadow-s-offsetX: 0px;\n --shadow-s-offsetY: 0px;\n --shadow-s-blur: 4px;\n --shadow-s-spread: 0px;\n --shadow-s-opacity: 10%;\n --shadow-s: var(--shadow-s-offsetX) var(--shadow-s-offsetY) var(--shadow-s-blur) var(--shadow-s-spread) color-mix(in srgb, var(--shadow-s-color) var(--shadow-s-opacity), transparent);\n\n --shadow-m-color: var(--color-neutral-9);\n --shadow-m-offsetX: 0px;\n --shadow-m-offsetY: 0px;\n --shadow-m-blur: 8px;\n --shadow-m-spread: -1px;\n --shadow-m-opacity: 15%;\n --shadow-m: var(--shadow-m-offsetX) var(--shadow-m-offsetY) var(--shadow-m-blur) var(--shadow-m-spread) color-mix(in srgb, var(--shadow-m-color) var(--shadow-m-opacity), transparent);\n\n --shadow-l-color: var(--color-neutral-9);\n --shadow-l-offsetX: 0px;\n --shadow-l-offsetY: 0px;\n --shadow-l-blur: 16px;\n --shadow-l-spread: -2px;\n --shadow-l-opacity: 20%;\n --shadow-l: var(--shadow-l-offsetX) var(--shadow-l-offsetY) var(--shadow-l-blur) var(--shadow-l-spread) color-mix(in srgb, var(--shadow-l-color) var(--shadow-l-opacity), transparent);\n\n --shadow-xl-color: var(--color-neutral-9);\n --shadow-xl-offsetX: 0px;\n --shadow-xl-offsetY: 0px;\n --shadow-xl-blur: 40px;\n --shadow-xl-spread: -8px;\n --shadow-xl-opacity: 30%;\n --shadow-xl: var(--shadow-xl-offsetX) var(--shadow-xl-offsetY) var(--shadow-xl-blur) var(--shadow-xl-spread) color-mix(in srgb, var(--shadow-xl-color) var(--shadow-xl-opacity), transparent);\n}\n\n@utility typo-weight-100 {\n @apply font-thin;\n}\n\n@utility typo-weight-200 {\n @apply font-extralight;\n}\n\n@utility typo-weight-300 {\n @apply font-light;\n}\n\n@utility typo-weight-400 {\n @apply font-normal;\n}\n\n@utility typo-weight-500 {\n @apply font-medium;\n}\n\n@utility typo-weight-600 {\n @apply font-semibold;\n}\n\n@utility typo-weight-700 {\n @apply font-bold;\n}\n\n@utility typo-weight-800 {\n @apply font-extrabold;\n}\n\n@utility typo-weight-900 {\n @apply font-black;\n}\n\n@utility typo-header {\n font-family: var(--typo-header-font);\n font-weight: var(--typo-header-weight);\n -webkit-font-smoothing: antialiased;\n white-space: nowrap;\n letter-spacing: var(--typo-header-tracking);\n line-height: var(--typo-header-leading);\n}\n\n@utility typo-label {\n font-family: var(--typo-label-font);\n font-weight: var(--typo-label-weight);\n -webkit-font-smoothing: antialiased;\n white-space: nowrap;\n letter-spacing: var(--typo-label-tracking);\n line-height: var(--typo-label-leading);\n}\n\n@utility typo-body {\n font-family: var(--typo-body-font);\n font-weight: var(--typo-body-weight);\n -webkit-font-smoothing: antialiased;\n text-wrap: wrap;\n letter-spacing: var(--typo-body-tracking);\n line-height: var(--typo-body-leading);\n}\n\n@utility typo-code {\n font-family: var(--typo-code-font);\n font-weight: var(--typo-code-weight);\n -webkit-font-smoothing: antialiased;\n white-space: nowrap;\n letter-spacing: var(--typo-code-tracking);\n line-height: var(--typo-code-leading);\n font-variant-numeric: tabular-nums;\n}\n\n@utility typo-1 {\n @apply typo-body;\n font-size: calc(var(--text-xxs) * var(--typo-scale-factor));\n}\n\n@utility typo-2 {\n @apply typo-body;\n font-size: calc(var(--text-xs) * var(--typo-scale-factor));\n}\n\n@utility typo-3 {\n @apply typo-body;\n font-size: calc(var(--text-sm) * var(--typo-scale-factor));\n}\n\n@utility typo-4 {\n @apply typo-body;\n font-size: calc(var(--text-base) * var(--typo-scale-factor));\n}\n\n@utility typo-5 {\n @apply typo-body;\n font-size: calc(var(--text-lg) * var(--typo-scale-factor));\n}\n\n@utility typo-6 {\n @apply typo-body;\n font-size: calc(var(--text-xl) * var(--typo-scale-factor));\n}\n\n@utility typo-7 {\n @apply typo-body;\n font-size: calc(var(--text-2xl) * var(--typo-scale-factor));\n}\n\n@utility typo-8 {\n @apply typo-body;\n font-size: calc(var(--text-3xl) * var(--typo-scale-factor));\n}\n\n@utility typo-9 {\n @apply typo-body;\n font-size: calc(var(--text-4xl) * var(--typo-scale-factor));\n}\n\n@utility typo-10 {\n @apply typo-body;\n font-size: calc(var(--text-5xl) * var(--typo-scale-factor));\n}\n\n@utility typo-11 {\n @apply typo-body;\n font-size: calc(var(--text-6xl) * var(--typo-scale-factor));\n}\n\n@utility typo-12 {\n @apply typo-body;\n font-size: calc(var(--text-7xl) * var(--typo-scale-factor));\n}\n\n@utility typo-13 {\n @apply typo-body;\n font-size: calc(var(--text-8xl) * var(--typo-scale-factor));\n}\n\n@utility typo-14 {\n @apply typo-body;\n font-size: calc(var(--text-9xl) * var(--typo-scale-factor));\n}\n\n@utility typo-15 {\n @apply typo-body;\n font-size: calc(var(--text-10xl) * var(--typo-scale-factor));\n}\n\n@utility typo-16 {\n @apply typo-body;\n font-size: calc(var(--text-11xl) * var(--typo-scale-factor));\n}\n\n@utility typo-17 {\n @apply typo-body;\n font-size: calc(var(--text-12xl) * var(--typo-scale-factor));\n}\n\n@utility typo-18 {\n @apply typo-body;\n font-size: calc(var(--text-13xl) * var(--typo-scale-factor));\n}\n\n@utility filter-none {\n filter: none;\n}\n\n@utility flex-col-center {\n @apply flex flex-col justify-center items-center align-middle;\n}\n\n@utility grid-hor-center {\n @apply grid grid-flow-col items-center;\n}\n\n@utility grid-ver-center {\n @apply grid grid-flow-row items-center;\n}\n\n@utility flex-row-center {\n @apply flex flex-row justify-center items-center align-middle;\n}\n\n@utility cs-border-dashed {\n @apply border border-dashed border-neutralA-4;\n}\n\n@utility cs-disabled {\n @apply disabled:pointer-events-none disabled:opacity-50 data-disabled:pointer-events-none data-disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50;\n }\n\n@utility cs-has-disabled {\n @apply has-[[data-slot=control]:disabled]:pointer-events-none has-[[data-slot=control]:disabled]:opacity-50;\n}\n\n@utility cs-transition {\n @apply transition-all duration-200 ease-in-out;\n}\n\n@utility cs-contrast {\n @apply drop-shadow-[0_-1px_1px_#fff4];\n}\n\n@utility cs-popup-animation {\n @apply origin-(--transform-origin) transition-[scale,opacity] duration-[0.25s] ease-[cubic-bezier(0.34,1.56,0.64,1)] data-starting-style:scale-90 data-starting-style:opacity-0 data-ending-style:scale-90 data-ending-style:opacity-0 data-instant:transition-none;\n}\n\n@utility cs-focus {\n @apply outline-none focus-visible:duration-0 focus-visible:outline-solid focus-visible:z-1 focus-visible:ring-[3px] focus-visible:ring-accent-4 focus-visible:outline-1 focus-visible:-outline-offset-1 focus-visible:outline-accent-9; \n}\n\n@utility cs-has-focus {\n @apply has-[[data-slot=control]:focus-visible]:z-1 has-[[data-slot=control]:focus-visible]:ring-[3px] has-[[data-slot=control]:focus-visible]:ring-accent-4 has-[[data-slot=control]:focus-visible]:outline-1 has-[[data-slot=control]:focus-visible]:outline-solid has-[[data-slot=control]:focus-visible]:-outline-offset-1 has-[[data-slot=control]:focus-visible]:outline-accent-9;\n}\n\n@utility cs-invalid {\n @apply aria-invalid:ring-3 aria-invalid:ring-error-6 aria-invalid:border-error-9 focus-visible:aria-invalid:ring-error-4 focus-visible:aria-invalid:outline-error-9;\n}\n\n@utility cs-has-invalid {\n @apply has-[[data-slot=control][aria-invalid=true]]:ring-3 has-[[data-slot=control][aria-invalid=true]]:ring-error-6 has-[[data-slot=control][aria-invalid=true]]:border-error-9 has-[[data-slot=control][aria-invalid=true]:focus-visible]:ring-error-4 has-[[data-slot=control][aria-invalid=true]:focus-visible]:outline-error-9;\n}\n\n@utility cs-steps {\n counter-reset: step;\n}\n\n@utility cs-step {\n &::before {\n --tw-content: counter(step);\n content: var(--tw-content);\n counter-increment: step;\n }\n}\n\n@utility cs-masonry {\n columns: 3;\n & > * {\n break-inside: avoid-column;\n }\n}\n\n@utility cs-stroke {\n -webkit-text-stroke-width: var(--stroke-w, 2px);\n -webkit-text-stroke-color: var(--stroke-color, var(--color-neutral-12));\n color: transparent;\n paint-order: stroke fill;\n}\n\n@utility cs-backdrop-panel {\n @apply rounded-md border-neutralA-4 bg-neutral-1/60 text-neutral-11 backdrop-blur-lg border shadow-m;\n }\n\n@utility animate-collapsible-down {\n animation: collapsible-down 0.2s ease-out;\n}\n\n@utility animate-collapsible-up {\n animation: collapsible-up 0.2s ease-out;\n}\n\n@utility no-scrollbar {\n @apply [scrollbar-width:none] [&::-webkit-scrollbar]:hidden;\n}\n\n@utility cs-gutter {\n background: repeating-linear-gradient(315deg, var(--color-neutral-3) 0 1px, transparent 1px 50%);\n background-size: 10px 10px;\n background-attachment: fixed;\n}\n\n@utility cs-dots {\n background-image: radial-gradient(var(--color-neutral-4) 1px, transparent 1px);\n background-size: 20px 20px;\n}\n\n@keyframes stripes {\n from { background-position: 0 0; }\n to { background-position: 16px 0; }\n}\n\n@utility cs-stripes {\n background-image: repeating-linear-gradient(315deg, var(--color-neutralA-4) 0 4px, transparent 2px 50%);\n background-size: 16px 16px;\n animation: stripes 0.6s linear infinite;\n}\n\n@utility cs-guides {\n overflow: clip;\n isolation: isolate;\n\n & > * {\n position: relative;\n z-index: 0;\n\n &::after {\n content: '';\n position: absolute;\n left: 0;\n right: -1px;\n top: -9999px;\n bottom: -9999px;\n border-left: 1px solid var(--color-neutral-4);\n border-right: 1px solid var(--color-neutral-4);\n pointer-events: none;\n z-index: 1;\n }\n\n &::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: -1px;\n left: -9999px;\n right: -9999px;\n border-top: 1px solid var(--color-neutral-4);\n border-bottom: 1px solid var(--color-neutral-4);\n pointer-events: none;\n z-index: 1;\n }\n }\n}\n\n@utility cs-page-container {\n @apply grid grid-cols-[1fr_minmax(0,var(--page-max-w,64rem))_1fr];\n}\n\n@utility cs-page-grid {\n position: relative;\n max-width: var(--page-max-w, 64rem);\n width: 100%;\n margin-inline: auto;\n border-inline: 1px solid var(--color-neutral-4);\n\n & > :where(*) {\n position: relative;\n\n &::after {\n content: '';\n position: absolute;\n bottom: 0;\n left: -100vw;\n width: 200vw;\n height: 1px;\n background-color: var(--color-neutral-4);\n pointer-events: none;\n }\n }\n\n & > :where(*:first-child)::before {\n content: '';\n position: absolute;\n top: 0;\n left: -100vw;\n width: 200vw;\n height: 1px;\n background-color: var(--color-neutral-4);\n pointer-events: none;\n }\n}\n\n@utility cs-page-gutter {\n &::before, &::after {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n width: var(--page-gutter-w, 2.5rem);\n pointer-events: none;\n background: repeating-linear-gradient(315deg, var(--color-neutral-3) 0 1px, transparent 1px 50%);\n background-size: 10px 10px;\n background-attachment: fixed;\n }\n\n &::before {\n right: 100%;\n border-left: 1px solid var(--color-neutral-4);\n }\n\n &::after {\n left: 100%;\n border-right: 1px solid var(--color-neutral-4);\n }\n}\n\n@media (pointer: coarse) {\n input,\n select,\n textarea {\n font-size: max(16px, 1em);\n }\n}\n\n@layer base {\n\n * {\n @apply transition-colors duration-200;\n }\n\n body {\n color: var(--color-neutral-12);\n background-color: var(--color-neutral-1);\n }\n\n\n @font-face {\n font-family: 'geist';\n font-weight: 100 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-mono';\n font-weight: 100 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-mono.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-circle';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-circle.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-grid';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-grid.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-line';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-line.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-square';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-square.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'geist-pixel-triangle';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/geist-pixel-triangle.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'clash-grotesk-variable';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/clash-grotesk-variable.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'nippo';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/nippo.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'being';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/being.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'Aalto';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/aalto.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'humane-variable';\n font-weight: 200 800;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/humane-variable.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'general-sans';\n font-weight: 200 800;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/general-sans.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'karmatic-arcade-regular';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/karmatic-arcade-regular.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'kode-mono-vf';\n font-style: normal;\n font-weight: 400 700;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/kode-mono-vf.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'digital-7-mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/digital-7-mono.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'pixelony';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/pixelony.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'unknown';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 140%;\n src: url(https://cdn.digo-labs.com/fonts/unknown.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'benzol';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/benzol.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'half';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/half.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'miratrix';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/miratrix.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'triakis';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/triakis.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'yeager';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/yeager.otf) format('opentype');\n }\n\n @font-face {\n font-family: 'disket';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/disket.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'heming';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/heming.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'obrazec';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/obrazec.ttf) format('truetype');\n }\n\n @font-face {\n font-family: 'satoshi';\n font-weight: 300 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/satoshi.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'chillax';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/chillax.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'panchang';\n font-weight: 200 800;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/panchang.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'zodiak';\n font-weight: 100 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/zodiak.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'supreme';\n font-weight: 100 800;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/supreme.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'boska';\n font-weight: 200 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/boska.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'tanker';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/tanker.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'gambarino';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/gambarino.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'neco';\n font-weight: 400 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/neco.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'erode';\n font-weight: 300 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/erode.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'pramukh-rounded';\n font-weight: 200 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/pramukh-rounded.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'bevellier';\n font-weight: 100 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/bevellier.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'comico';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/comico.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'aktura';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/aktura.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'technor';\n font-weight: 200 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/technor.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'array';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/array.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'styro';\n font-weight: 200 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/styro.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'recia';\n font-weight: 300 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/recia.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'melodrama';\n font-weight: 300 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/melodrama.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'boxing';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/boxing.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'kola';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/kola.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'zina';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/zina.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'tabular';\n font-weight: 300 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/tabular.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'expose';\n font-weight: 400 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/expose.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'kihim';\n font-weight: 400;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/kihim.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'pilcrow-rounded';\n font-weight: 400 900;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/pilcrow-rounded.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'new-title';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/new-title.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'kohinoor-zerone';\n font-weight: 100;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/kohinoor-zerone.woff2) format('woff2');\n }\n\n @font-face {\n font-family: 'roundo';\n font-weight: 200 700;\n font-style: normal;\n font-display: swap;\n size-adjust: 100%;\n src: url(https://cdn.digo-labs.com/fonts/roundo.woff2) format('woff2');\n }\n \n}\n\n@layer utilities {\n * {\n scrollbar-width: thin;\n scrollbar-color: #ffffff50 transparent;\n }\n}\n\n@layer base {\n ::selection {\n background-color: var(--color-neutral-12);\n color: var(--color-neutral-1);\n }\n\n ::-moz-selection {\n background-color: var(--color-neutral-12);\n color: var(--color-neutral-1);\n }\n}", A = /--font-([\w-]+):\s*'([^']+)'/g, j = /* @__PURE__ */ new Map(), M; (M = A.exec(k)) !== null;) {
2800
+ let e = `--font-${M[1]}`, t = M[2];
2801
+ j.set(t.toLowerCase(), e);
2119
2802
  }
2120
- for (var ue = /@font-face\s*\{([^}]*)\}/gs, S = [], C; (C = ue.exec(y)) !== null;) {
2121
- let e = C[1], t = e.match(/font-family:\s*'([^']+)'/), n = e.match(/font-weight:\s*([\d\s]+)/), r = e.match(/font-style:\s*(\w+)/), i = e.match(/src:\s*url\([^)]*?\/fonts\/([^)]+)\)\s*format\('(\w+)'\)/);
2803
+ for (var N = /@font-face\s*\{([^}]*)\}/gs, P = [], F; (F = N.exec(k)) !== null;) {
2804
+ let e = F[1], t = e.match(/font-family:\s*'([^']+)'/), n = e.match(/font-weight:\s*([\d\s]+)/), r = e.match(/font-style:\s*(\w+)/), i = e.match(/src:\s*url\([^)]*?\/fonts\/([^)]+)\)\s*format\('(\w+)'\)/);
2122
2805
  if (!t || !n || !r || !i) continue;
2123
2806
  let a = t[1], o = n[1].trim(), s = r[1], c = i[1], l = i[2] === "truetype" ? "ttf" : i[2] === "opentype" ? "otf" : "woff2", u = o.split(/\s+/).map(Number), d = Math.min(...u), f = Math.max(...u);
2124
- S.push({
2807
+ P.push({
2125
2808
  family: a,
2126
2809
  weightMin: d,
2127
2810
  weightMax: f,
@@ -2129,40 +2812,11 @@ for (var ue = /@font-face\s*\{([^}]*)\}/gs, S = [], C; (C = ue.exec(y)) !== null
2129
2812
  format: l,
2130
2813
  filePath: `/fonts/${c}`,
2131
2814
  fileName: c,
2132
- cssVariable: b.get(a.toLowerCase()) ?? null
2815
+ cssVariable: j.get(a.toLowerCase()) ?? null
2133
2816
  });
2134
2817
  }
2135
- S.sort((e, t) => e.family.localeCompare(t.family));
2136
- var de = S, fe = "0 0 72 72", w = {
2137
- scaleOne: "M32.9873 53.559 C28.9705 57.5759 22.4578 57.5759 18.441 53.559 C14.4241 49.5421 14.4241 43.0295 18.441 39.0127 C23.5068 33.9468 27.8352 37.9669 32.9011 32.901 C37.9669 27.8352 33.9468 23.5069 39.0127 18.441 C43.0295 14.4241 49.5422 14.4241 53.559 18.441 C57.5759 22.4579 57.5759 28.9705 53.559 32.9874 C48.4932 38.0532 44.1648 34.0331 39.0989 39.099 C34.0331 44.1648 38.0532 48.4931 32.9873 53.559 Z",
2138
- scaleTwo: "M36 50.3989 C42.6374 50.3989 42.8394 55.8681 49.4769 55.8681 C54.74 55.8681 59.0065 51.6016 59.0065 46.3385 C59.0065 41.0755 54.7399 36.8089 49.4769 36.8089 C42.8394 36.8089 42.6375 42.2781 36 42.2781 C29.3625 42.2781 29.1606 36.8089 22.5231 36.8089 C17.26 36.8089 12.9935 41.0754 12.9935 46.3385 C12.9935 51.6016 17.26 55.8681 22.5231 55.8681 C29.1606 55.8681 29.3625 50.3989 36 50.3989 Z M22.5231 35.1911 C17.26 35.1911 12.9935 30.9245 12.9935 25.6615 C12.9935 20.3984 17.26 16.1319 22.5231 16.1319 C29.1606 16.1319 29.3625 21.6011 36 21.6011 C42.6375 21.6011 42.8394 16.1319 49.4769 16.1319 C54.7399 16.1319 59.0065 20.3984 59.0065 25.6615 C59.0065 30.9245 54.74 35.1911 49.4769 35.1911 C42.8394 35.1911 42.6374 29.7219 36 29.7219 C29.3625 29.7219 29.1606 35.1911 22.5231 35.1911 Z",
2139
- scaleThree: "M46.534 36 C46.534 30.1823 41.8177 25.466 36 25.466 C30.1823 25.466 25.466 30.1823 25.466 36 C25.466 41.8177 30.1823 46.534 36 46.534 C41.8177 46.534 46.534 41.8177 46.534 36 Z M10.2127 51.1055 C10.2127 43.6723 16.3429 43.4395 16.3429 35.9998 C16.3429 28.5601 10.2127 28.3338 10.2127 20.894 C10.2127 14.9949 14.9953 10.2131 20.8945 10.2131 C28.3277 10.2131 28.5606 16.3433 36.0003 16.3433 C43.4399 16.3434 43.6663 10.2131 51.106 10.2131 C57.0051 10.2131 61.7873 14.9953 61.7873 20.8945 C61.7873 28.3277 55.6571 28.5605 55.6571 36.0002 C55.6571 43.4399 61.7873 43.6662 61.7873 51.106 C61.7873 57.0051 57.0047 61.7869 51.1055 61.7869 C43.6723 61.7869 43.4394 55.6567 35.9997 55.6567 C28.5601 55.6566 28.3337 61.7869 20.894 61.7869 C14.9949 61.7869 10.2127 57.0047 10.2127 51.1055 Z",
2140
- connectOne: "M25.5602 35.9945 C25.5602 25.5293 33.394 16.8783 43.5673 15.4888 C45.1444 15.273 46.4401 16.5835 46.4401 18.1745 L46.4401 53.811 C46.4401 55.4022 45.1444 56.7126 43.5673 56.4966 C33.394 55.1106 25.5602 46.4598 25.5602 35.9945 Z",
2141
- connectTwo: "M37.9659 35.9669 C37.9659 25.6277 45.7384 17.0884 55.7966 15.7961 C57.2547 15.609 58.4536 16.8183 58.4536 18.2907 L58.4536 53.643 C58.4536 55.1116 57.2547 56.3248 55.7966 56.1342 C45.7345 54.8419 37.9659 46.3026 37.9659 35.9634 L37.9659 35.9669 Z M34.1066 35.9669 C34.1066 25.6133 26.2046 17.0667 15.977 15.7926 C14.5189 15.609 13.3201 16.8183 13.3201 18.2907 L13.3201 53.643 C13.3201 55.1155 14.5189 56.3248 15.977 56.1411 C26.2011 54.8632 34.1066 46.3169 34.1066 35.9669 Z",
2142
- connectThree: "M38.8462 55.6591 C37.7229 56.7859 37.7086 58.6396 39.0334 59.518 C44.6887 63.2731 52.429 62.6214 57.4582 57.5923 C62.4908 52.5592 63.139 44.8193 59.3878 39.1675 C58.5055 37.8427 56.6518 37.8531 55.5285 38.9799 L38.8462 55.6626 L38.8462 55.6591 Z M55.3197 33.5118 C56.443 34.6347 58.2971 34.6494 59.1898 33.3316 C63.0739 27.5791 62.509 19.7345 57.4616 14.691 C52.4182 9.6437 44.5736 9.0783 38.8207 12.9628 C37.5032 13.8521 37.5141 15.7062 38.6409 16.833 L55.3231 33.5153 L55.3197 33.5118 Z M16.9113 38.7676 C15.7845 37.6408 13.9338 37.63 13.0411 38.9478 C9.157 44.7003 9.7219 52.5449 14.7693 57.5884 C19.8166 62.6357 27.6573 63.2046 33.4099 59.3165 C34.7277 58.4273 34.7168 56.5732 33.59 55.4464 L16.9078 38.7641 L16.9113 38.7676 Z M14.7693 14.896 C9.7362 19.929 9.0884 27.6689 12.8431 33.3208 C13.7254 34.6456 15.5791 34.6347 16.7024 33.5079 L33.3847 16.8256 C34.5115 15.7023 34.5223 13.8447 33.1975 12.9663 C27.5422 9.2116 19.8019 9.8634 14.7727 14.8925 L14.7693 14.896 Z",
2143
- sparkOne: "M35.9002 53.28 C45.3524 53.28 53.015 45.6174 53.015 36.1652 C53.015 26.713 45.3524 19.0504 35.9002 19.0504 C26.448 19.0504 18.7854 26.713 18.7854 36.1652 C18.7854 45.6174 26.448 53.28 35.9002 53.28 Z",
2144
- sparkTwo: "M22.9409 36.6826 C29.4471 36.6826 34.7219 31.4081 34.7219 24.9015 C34.7219 18.3949 29.4471 13.1205 22.9409 13.1205 C16.4343 13.1205 11.1599 18.3949 11.1599 24.9015 C11.1599 31.4081 16.4343 36.6826 22.9409 36.6826 Z M48.7968 36.6826 C55.3034 36.6826 60.5778 31.4081 60.5778 24.9015 C60.5778 18.3949 55.3034 13.1205 48.7968 13.1205 C42.2906 13.1205 37.0162 18.3949 37.0162 24.9015 C37.0162 31.4078 42.2906 36.6826 48.7968 36.6826 Z M35.7774 59.0395 C42.2836 59.0395 47.5584 53.7651 47.5584 47.2585 C47.5584 40.7523 42.2836 35.4779 35.7774 35.4779 C29.2708 35.4779 23.996 40.7523 23.996 47.2585 C23.996 53.7651 29.2708 59.0395 35.7774 59.0395 Z",
2145
- sparkThree: "M11.9817 23.2892 C14.87 26.7409 20.0076 27.2013 23.464 24.3184 C26.9199 21.4355 27.3884 16.2983 24.5109 12.8377 C21.6269 9.3697 16.4761 8.9001 13.0124 11.7892 C9.5487 14.6786 9.0872 19.8302 11.9817 23.2892 Z M47.6808 23.2795 C50.5637 26.7359 55.7009 27.2044 59.1615 24.3269 C62.6295 21.4429 63.0991 16.2921 60.2101 12.8284 C57.3206 9.3647 52.169 8.9032 48.71 11.7977 C45.2583 14.686 44.7979 19.8236 47.6808 23.2795 Z M34.9048 48.9715 C42.1456 49.6264 48.5492 44.2927 49.2152 37.0526 C49.8825 29.797 44.5352 23.3764 37.2781 22.72 C30.0209 22.064 23.6089 27.4214 22.9641 34.6793 C22.3205 41.9217 27.6635 48.3171 34.9048 48.9715 Z M47.6886 58.9965 C50.5769 62.4482 55.7149 62.9085 59.1708 60.0256 C62.6268 57.1424 63.0949 52.0055 60.2174 48.5453 C57.3338 45.077 52.183 44.6073 48.7193 47.4968 C45.2559 50.3859 44.7941 55.5374 47.6886 58.9965 Z M11.9739 58.9876 C14.8568 62.4435 19.9937 62.912 23.4543 60.0346 C26.9222 57.1505 27.3923 51.9997 24.5028 48.536 C21.6137 45.0727 16.4622 44.6108 13.0031 47.5053 C9.5514 50.3936 9.0911 55.5316 11.9739 58.9876 Z",
2146
- pivotOne: "M55.4371 41.3248 C55.4371 40.3498 54.6466 39.5665 53.674 39.493 C42.3402 38.6354 33.2964 29.5897 32.4362 18.257 C32.3625 17.2848 31.5798 16.4916 30.6034 16.4916 L17.9249 16.4916 C16.9523 16.4916 16.158 17.2836 16.2007 18.2578 C17.0957 38.5451 33.3855 54.8323 53.674 55.7301 C54.6466 55.7732 55.4371 54.9787 55.4371 54.0038 L55.4371 41.3248 Z",
2147
- pivotTwo: "M59.3972 32.8542 C59.3972 32.058 58.75 31.4178 57.9557 31.3578 C48.6949 30.6568 41.3056 23.266 40.6043 14.0063 C40.5461 13.212 39.903 12.5641 39.1086 12.5641 L28.7473 12.5641 C27.953 12.5641 27.302 13.2112 27.3369 14.0071 C28.0731 30.5832 41.3792 43.8909 57.9557 44.6244 C58.75 44.6596 59.3972 44.0106 59.3972 43.2139 L59.3972 32.8542 Z M12.597 28.714 C12.597 27.9173 13.2442 27.2683 14.0423 27.3036 C30.6188 28.037 43.925 41.3447 44.6573 57.9208 C44.6922 58.7167 44.0451 59.3642 43.2469 59.3642 L32.8895 59.3642 C32.0913 59.3642 31.4519 58.716 31.3938 57.9216 C30.6925 48.6623 23.2993 41.2711 14.0423 40.5702 C13.248 40.5101 12.597 39.8704 12.597 39.0737 L12.597 28.714 Z",
2148
- pivotThree: "M9.102 34.5022 C22.6832 33.9012 33.5831 23.0002 34.1798 9.4247 C34.2108 8.773 33.6761 8.2441 33.0251 8.2441 L24.5393 8.2441 C23.8883 8.2441 23.3613 8.7769 23.3109 9.4247 C22.7414 17.0101 16.685 23.0653 9.0981 23.6376 C8.4471 23.688 7.9202 24.2099 7.9202 24.8616 L7.9202 33.3467 C7.9202 33.9985 8.4471 34.5313 9.0981 34.5022 L9.102 34.5022 Z M62.7915 34.7974 C63.4502 34.8265 63.9888 34.2898 63.9888 33.6276 L63.9888 25.0453 C63.9888 24.3862 63.4502 23.8573 62.7915 23.8069 C55.1232 23.2272 49.001 17.1035 48.4237 9.4356 C48.3733 8.7769 47.8425 8.2402 47.1837 8.2402 L38.601 8.2402 C37.9423 8.2402 37.4037 8.7769 37.4308 9.4356 C38.0391 23.166 49.063 34.1891 62.7915 34.7974 Z M47.1798 63.7164 C47.8386 63.7164 48.3733 63.1801 48.4198 62.5214 C48.9971 54.8531 55.1232 48.7298 62.7876 48.1501 C63.4502 48.0997 63.9849 47.5704 63.9849 46.9117 L63.9849 38.3294 C63.9849 37.6702 63.4502 37.1305 62.7876 37.1592 C49.0592 37.7675 38.0353 48.791 37.4269 62.5214 C37.3998 63.1801 37.9345 63.7164 38.5971 63.7164 L47.1798 63.7164 Z M33.029 63.7164 C33.68 63.7164 34.2108 63.1871 34.1837 62.5358 C33.5831 48.9564 22.6832 38.0554 9.1058 37.4579 C8.4549 37.4292 7.924 37.962 7.924 38.6138 L7.924 47.0988 C7.924 47.7506 8.4549 48.276 9.1058 48.3264 C16.6928 48.8987 22.7452 54.9539 23.3187 62.5392 C23.3691 63.191 23.8922 63.7199 24.547 63.7199 L33.0329 63.7199 L33.029 63.7164 Z"
2149
- }, T = "M273.5,143.7c-32.9,24.3-80.7,37.2-121.8,37.2c-57.6,0-109.5-21.3-148.7-56.7c-3.1-2.8-0.3-6.6,3.4-4.4c42.4,24.6,94.7,39.5,148.8,39.5c36.5,0,76.6-7.6,113.5-23.2C274.2,133.6,278.9,139.7,273.5,143.7z M287.2,128.1c-4.2-5.4-27.8-2.6-38.5-1.3c-3.2,0.4-3.7-2.4-0.8-4.5c18.8-13.2,49.7-9.4,53.3-5c3.6,4.5-1,35.4-18.6,50.2c-2.7,2.3-5.3,1.1-4.1-1.9C282.5,155.7,291.4,133.4,287.2,128.1z", E = {
2150
- orange: "#FF6200",
2151
- yellow: "#F3C300",
2152
- pink: "#FF4D8B",
2153
- purple: "#B052FF",
2154
- blue: "#0578FF",
2155
- green: "#6EE750",
2156
- white: "#FFFFFF",
2157
- black: "#000000"
2158
- };
2159
- function D(e) {
2160
- let t = e.toUpperCase();
2161
- return Object.entries(E).find(([, e]) => e.toUpperCase() === t)?.[0] ?? "black";
2162
- }
2163
- //#endregion
2164
- //#region src/images.ts
2165
- var O = {
2818
+ P.sort((e, t) => e.family.localeCompare(t.family));
2819
+ var I = P, L = {
2166
2820
  digoLogo: "https://cdn.digo-labs.com/images/digo-logo.png",
2167
2821
  digoLogoSvg: "https://cdn.digo-labs.com/images/digo-logo.svg",
2168
2822
  pcLogoV1Svg: "https://cdn.digo-labs.com/images/pc-logo-v1.svg",
@@ -2185,7 +2839,7 @@ var O = {
2185
2839
  drawingPen: "https://cdn.digo-labs.com/images/pen.svg",
2186
2840
  drawingPenTip: "https://cdn.digo-labs.com/images/pen-tip.svg",
2187
2841
  drawingEraser: "https://cdn.digo-labs.com/images/eraser.png"
2188
- }, k = { porsche: "https://cdn.digo-labs.com/models/porsche.glb" }, A = class {
2842
+ }, R = { porsche: "https://cdn.digo-labs.com/models/porsche.glb" }, z = class {
2189
2843
  static setValue(e, t) {
2190
2844
  localStorage.setItem(e, JSON.stringify(t));
2191
2845
  }
@@ -2198,7 +2852,7 @@ var O = {
2198
2852
  return t;
2199
2853
  }
2200
2854
  }
2201
- }, j = class {
2855
+ }, B = class {
2202
2856
  static setValue(e, t) {
2203
2857
  sessionStorage.setItem(e, JSON.stringify(t));
2204
2858
  }
@@ -2211,7 +2865,7 @@ var O = {
2211
2865
  return t;
2212
2866
  }
2213
2867
  }
2214
- }, M = {
2868
+ }, me = {
2215
2869
  bedrockText: "bedrock-text",
2216
2870
  dmxSend: "dmx-send",
2217
2871
  storagePresignUpload: "storage-presign-upload",
@@ -2225,7 +2879,7 @@ var O = {
2225
2879
  databaseUpdate: "database-update",
2226
2880
  databaseDelete: "database-delete",
2227
2881
  refreshSchemas: "refresh-schemas"
2228
- }, N = class {
2882
+ }, he = class {
2229
2883
  static hashCode(e) {
2230
2884
  return [...e].reduce((e, t) => Math.imul(31, e) + t.charCodeAt(0) | 0, 0);
2231
2885
  }
@@ -2256,7 +2910,7 @@ var O = {
2256
2910
  static getFirstLetter(e) {
2257
2911
  return e ? e.charAt(0).toUpperCase() : "X";
2258
2912
  }
2259
- }, P = {
2913
+ }, ge = {
2260
2914
  digo: "Digo",
2261
2915
  refresh: "Refresh",
2262
2916
  code: "Code",
@@ -2344,52 +2998,52 @@ var O = {
2344
2998
  generate: "Generate",
2345
2999
  savePreset: "Save Preset",
2346
3000
  image: "Image"
2347
- }, F = c.object({
3001
+ }, _e = c.object({
2348
3002
  mediaType: c.string(),
2349
3003
  base64: c.string(),
2350
3004
  name: c.string().optional()
2351
- }), I = c.object({
3005
+ }), ve = c.object({
2352
3006
  mediaType: c.string(),
2353
3007
  base64: c.string(),
2354
3008
  name: c.string().optional()
2355
- }), L = c.string().regex(/^\d+x\d+$/).transform((e) => e), R = c.string().regex(/^\d+:\d+$/).transform((e) => e), z = c.object({
3009
+ }), ye = c.string().regex(/^\d+x\d+$/).transform((e) => e), V = c.string().regex(/^\d+:\d+$/).transform((e) => e), be = c.object({
2356
3010
  prompt: c.string().min(1),
2357
- aspectRatio: R.optional(),
3011
+ aspectRatio: V.optional(),
2358
3012
  seed: c.number().int().optional()
2359
- }), B = c.object({
3013
+ }), xe = c.object({
2360
3014
  prompt: c.string().min(1),
2361
3015
  image: c.string().url(),
2362
3016
  strength: c.number().min(0).max(1).optional()
2363
- }), V = c.object({
3017
+ }), Se = c.object({
2364
3018
  image: c.string().url(),
2365
3019
  factor: c.number().positive().optional()
2366
- }), pe = c.object({ image: c.string().url() }), me = c.object({
3020
+ }), Ce = c.object({ image: c.string().url() }), we = c.object({
2367
3021
  url: c.string().url(),
2368
3022
  contentType: c.string().optional(),
2369
3023
  width: c.number().optional(),
2370
3024
  height: c.number().optional(),
2371
3025
  seed: c.number().optional(),
2372
3026
  model: c.string().optional()
2373
- }), he = c.object({
3027
+ }), Te = c.object({
2374
3028
  prompt: c.string().min(1),
2375
- aspectRatio: R.optional(),
3029
+ aspectRatio: V.optional(),
2376
3030
  durationSeconds: c.number().positive().optional()
2377
- }), ge = c.object({
3031
+ }), Ee = c.object({
2378
3032
  url: c.string().url(),
2379
3033
  contentType: c.string().optional(),
2380
3034
  durationSeconds: c.number().optional(),
2381
3035
  model: c.string().optional()
2382
- }), _e = c.object({
3036
+ }), De = c.object({
2383
3037
  text: c.string().min(1),
2384
3038
  voice: c.string().optional(),
2385
3039
  speed: c.number().positive().optional()
2386
- }), ve = c.object({
3040
+ }), Oe = c.object({
2387
3041
  prompt: c.string().min(1),
2388
3042
  durationSeconds: c.number().positive().optional()
2389
- }), ye = c.object({
3043
+ }), ke = c.object({
2390
3044
  audio: c.string().url(),
2391
3045
  language: c.string().optional()
2392
- }), be = c.object({
3046
+ }), Ae = c.object({
2393
3047
  url: c.string().url(),
2394
3048
  contentType: c.string().optional(),
2395
3049
  durationSeconds: c.number().optional(),
@@ -2398,23 +3052,23 @@ var O = {
2398
3052
  text: c.string(),
2399
3053
  startSecond: c.number(),
2400
3054
  endSecond: c.number()
2401
- }), xe = c.object({
3055
+ }), je = c.object({
2402
3056
  text: c.string(),
2403
3057
  segments: c.array(H).optional(),
2404
3058
  language: c.string().optional(),
2405
3059
  model: c.string().optional()
2406
- }), Se = c.object({
3060
+ }), Me = c.object({
2407
3061
  type: c.literal("text"),
2408
3062
  text: c.string()
2409
- }), Ce = c.object({
3063
+ }), Ne = c.object({
2410
3064
  type: c.literal("image"),
2411
3065
  source: c.object({
2412
3066
  base64: c.string(),
2413
3067
  mediaType: c.string()
2414
3068
  })
2415
- }), we = c.union([c.string(), c.array(c.union([Se, Ce]))]), U = c.object({
3069
+ }), Pe = c.union([c.string(), c.array(c.union([Me, Ne]))]), U = c.object({
2416
3070
  role: c.enum(["user", "assistant"]),
2417
- content: we
3071
+ content: Pe
2418
3072
  }), W = c.object({
2419
3073
  model: c.string().optional(),
2420
3074
  messages: c.array(U).min(1),
@@ -2423,45 +3077,45 @@ var O = {
2423
3077
  maxTokens: c.number().int().positive().optional(),
2424
3078
  stopSequences: c.array(c.string()).optional(),
2425
3079
  providerOptions: c.record(c.string(), c.record(c.string(), c.any())).optional()
2426
- }), Te = W.omit({
3080
+ }), Fe = W.omit({
2427
3081
  model: !0,
2428
3082
  stopSequences: !0,
2429
3083
  providerOptions: !0
2430
- }), Ee = c.object({
3084
+ }), Ie = c.object({
2431
3085
  channel: c.number().int().min(1).max(512),
2432
3086
  value: c.number().int().min(0).max(255)
2433
- }), De = c.object({ success: c.boolean() }), G = c.string().min(1), K = c.union([
3087
+ }), Le = c.object({ success: c.boolean() }), G = c.string().min(1), K = c.union([
2434
3088
  c.string(),
2435
3089
  c.number(),
2436
3090
  c.boolean(),
2437
3091
  c.null()
2438
- ]), q = c.record(c.string(), c.unknown()), Oe = c.object({
3092
+ ]), q = c.record(c.string(), c.unknown()), Re = c.object({
2439
3093
  table: G,
2440
3094
  limit: c.number().int().positive().max(1e3).default(100),
2441
3095
  offset: c.number().int().nonnegative().optional()
2442
- }), ke = c.object({ rows: c.array(q) }), Ae = c.object({
3096
+ }), ze = c.object({ rows: c.array(q) }), Be = c.object({
2443
3097
  table: G,
2444
3098
  pk: G,
2445
3099
  value: K
2446
- }), je = c.object({ row: q.nullable() }), Me = c.object({
3100
+ }), Ve = c.object({ row: q.nullable() }), He = c.object({
2447
3101
  table: G,
2448
3102
  column: G,
2449
3103
  value: K,
2450
3104
  limit: c.number().int().positive().max(1e3).default(100),
2451
3105
  offset: c.number().int().nonnegative().optional()
2452
- }), Ne = c.object({ rows: c.array(q) }), Pe = c.object({
3106
+ }), Ue = c.object({ rows: c.array(q) }), We = c.object({
2453
3107
  table: G,
2454
3108
  record: q
2455
- }), Fe = c.object({ row: q }), Ie = c.object({
3109
+ }), Ge = c.object({ row: q }), Ke = c.object({
2456
3110
  table: G,
2457
3111
  pk: G,
2458
3112
  value: K,
2459
3113
  changes: q
2460
- }), Le = c.object({ success: c.boolean() }), Re = c.object({
3114
+ }), qe = c.object({ success: c.boolean() }), Je = c.object({
2461
3115
  table: G,
2462
3116
  pk: G,
2463
3117
  value: K
2464
- }), ze = c.object({ success: c.boolean() }), Be = c.object({
3118
+ }), Ye = c.object({ success: c.boolean() }), Xe = c.object({
2465
3119
  bucket: c.string().min(1),
2466
3120
  path: c.string().min(1),
2467
3121
  contentType: c.string().min(1),
@@ -2469,11 +3123,11 @@ var O = {
2469
3123
  }), J = c.object({
2470
3124
  url: c.string().url(),
2471
3125
  expiresAt: c.number()
2472
- }), Ve = c.object({
3126
+ }), Ze = c.object({
2473
3127
  bucket: c.string().min(1),
2474
3128
  path: c.string().min(1),
2475
3129
  expiresIn: c.number().int().positive().max(604800).optional()
2476
- }), He = J, Ue = c.object({
3130
+ }), Qe = J, $e = c.object({
2477
3131
  bucket: c.string().min(1),
2478
3132
  prefix: c.string().optional(),
2479
3133
  limit: c.number().int().positive().max(1e3).optional()
@@ -2482,21 +3136,21 @@ var O = {
2482
3136
  size: c.number(),
2483
3137
  lastModified: c.string(),
2484
3138
  etag: c.string().optional()
2485
- }), We = c.object({ objects: c.array(Y) }), Ge = c.object({
3139
+ }), et = c.object({ objects: c.array(Y) }), tt = c.object({
2486
3140
  bucket: c.string().min(1),
2487
3141
  paths: c.array(c.string().min(1)).min(1)
2488
- }), Ke = c.object({
3142
+ }), nt = c.object({
2489
3143
  success: c.boolean(),
2490
3144
  deleted: c.array(c.string())
2491
- }), qe = /* @__PURE__ */ function(e) {
3145
+ }), rt = /* @__PURE__ */ function(e) {
2492
3146
  return e.ANIMATED_FILM = "3D_ANIMATED_FAMILY_FILM", e.FLAT_VECTOR_ILLUSTRATION = "FLAT_VECTOR_ILLUSTRATION", e.GRAPHIC_NOVEL_ILLUSTRATION = "GRAPHIC_NOVEL_ILLUSTRATION", e.MAXIMALISM = "MAXIMALISM", e.MIDCENTURY_RETRO = "MIDCENTURY_RETRO", e.PHOTOREALISM = "PHOTOREALISM", e.SOFT_DIGITAL_PAINTING = "SOFT_DIGITAL_PAINTING", e;
2493
- }({}), Je = /* @__PURE__ */ function(e) {
3147
+ }({}), it = /* @__PURE__ */ function(e) {
2494
3148
  return e.IDENTIFY = "IDENTIFY", e.SUBSCRIBE = "SUBSCRIBE", e.UNSUBSCRIBE = "UNSUBSCRIBE", e.MESSAGE = "MESSAGE", e.STATE = "STATE", e;
2495
- }({}), Ye = /* @__PURE__ */ function(e) {
3149
+ }({}), X = /* @__PURE__ */ function(e) {
2496
3150
  return e.MESSAGE = "MESSAGE", e.STATE = "STATE", e;
2497
- }({}), Xe = "_hub", Ze = /* @__PURE__ */ function(e) {
3151
+ }({}), at = "_hub", ot = /* @__PURE__ */ function(e) {
2498
3152
  return e.CONNECT = "CONNECT", e.DISCONNECT = "DISCONNECT", e.SUBSCRIBE = "SUBSCRIBE", e.UNSUBSCRIBE = "UNSUBSCRIBE", e.MESSAGE = "MESSAGE", e.STATE = "STATE", e;
2499
- }({}), X = { pcLogo3D: "https://cdn.digo-labs.com/videos/pc-logo-3d.mp4" };
3153
+ }({}), st = { pcLogo3D: "https://cdn.digo-labs.com/videos/pc-logo-3d.mp4" };
2500
3154
  //#endregion
2501
3155
  //#region src/utils.ts
2502
3156
  async function Z(e) {
@@ -2506,13 +3160,13 @@ async function Z(e) {
2506
3160
  return [null, e];
2507
3161
  }
2508
3162
  }
2509
- var Qe = u({ extend: { classGroups: h } });
2510
- function $e(...e) {
2511
- return Qe(l(e));
3163
+ var ct = u({ extend: { classGroups: w } });
3164
+ function lt(...e) {
3165
+ return ct(l(e));
2512
3166
  }
2513
3167
  //#endregion
2514
3168
  //#region src/samples.ts
2515
- var et = [
3169
+ var ut = [
2516
3170
  "New York",
2517
3171
  "Tokyo",
2518
3172
  "Paris",
@@ -2538,7 +3192,7 @@ var et = [
2538
3192
  "Mexico City",
2539
3193
  "Oslo",
2540
3194
  "Zürich"
2541
- ], tt = [
3195
+ ], dt = [
2542
3196
  "The quick brown fox jumps over the lazy dog.",
2543
3197
  "Pack my box with five dozen liquor jugs.",
2544
3198
  "How vexingly quick daft zebras jump.",
@@ -2549,16 +3203,16 @@ var et = [
2549
3203
  "Sixty zippers were quickly picked from the woven jute bag.",
2550
3204
  "We promptly judged antique ivory buckles for the next prize.",
2551
3205
  "A mad boxer shot a quick, gloved jab to the jaw of his dizzy opponent."
2552
- ], nt = { monorepo: { trustedOrigins: [
3206
+ ], ft = { monorepo: { trustedOrigins: [
2553
3207
  "http://localhost:*",
2554
3208
  "http://127.0.0.1:*",
2555
3209
  "https://*.digo-labs.com"
2556
- ] } }, Q = "productionclub.net", rt = "admin", $ = {
3210
+ ] } }, Q = "productionclub.net", pt = "admin", $ = {
2557
3211
  public: 0,
2558
3212
  user: 1,
2559
3213
  org: 2,
2560
3214
  admin: 3
2561
- }, it = class {
3215
+ }, mt = class {
2562
3216
  static deriveTier(e) {
2563
3217
  return e ? this.hasAdminRole(e.role) ? "admin" : this.isOrgUser(e) ? "org" : "user" : "public";
2564
3218
  }
@@ -2569,13 +3223,13 @@ var et = [
2569
3223
  return typeof e == "string" && Object.hasOwn($, e);
2570
3224
  }
2571
3225
  static hasAdminRole(e) {
2572
- return e ? e.split(",").includes(rt) : !1;
3226
+ return e ? e.split(",").includes(pt) : !1;
2573
3227
  }
2574
3228
  static isOrgUser(e) {
2575
3229
  return e.emailVerified ? e.email.toLowerCase().endsWith(`@${Q}`) : !1;
2576
3230
  }
2577
3231
  };
2578
3232
  //#endregion
2579
- export { g as AI_MODELS, nt as AUTH_PROJECTS, T as AWS_ARROW_PATH, E as AWS_COLORS, ae as AWS_DEFAULT_REGION, w as AWS_GLYPHS, d as AppConfigHelpers, it as AuthTierHelpers, p as BACKEND_URL, oe as BREAKPOINTS, fe as BRICK_GLYPH_VIEWBOX, qe as BedrockStyle, et as CITIES, f as CommonHelpers, ee as DIGO_ADMIN_SECRET, ne as DIGO_COLORS, m as DIGO_HEADERS, te as DIGO_STORAGE_BUCKET_SUFFIX, tt as EXCERPTS, de as FONT_FACES, O as IMAGES, ce as IconHelpers, se as LANGUAGE_MAP, A as LocalStorage, k as MODELS, Q as ORG_EMAIL_DOMAIN, ie as REPLICATE_PROXY, M as ROUTES, P as STRINGS, j as SessionStorage, N as StringHelpers, h as TYPO_CLASS_GROUPS, X as VIDEOS, Xe as WEBSOCKET_HUB_CHANNEL, re as WS_URL, Ye as WebSocketHubEvent, Je as WebsocketClientEvent, Ze as WebsocketLogEvent, R as aspectRatioSchema, ve as audioMusicBodySchema, _e as audioSpeechBodySchema, ye as audioTranscribeBodySchema, $e as cn, Pe as databaseCreateBodySchema, Fe as databaseCreateResponseSchema, Re as databaseDeleteBodySchema, ze as databaseDeleteResponseSchema, Oe as databaseGetAllBodySchema, ke as databaseGetAllResponseSchema, Ae as databaseGetBodySchema, Me as databaseGetByBodySchema, Ne as databaseGetByResponseSchema, je as databaseGetResponseSchema, Ie as databaseUpdateBodySchema, Le as databaseUpdateResponseSchema, Ge as deleteBodySchema, Ke as deleteResponseSchema, Ee as dmxSendBodySchema, De as dmxSendResponseSchema, F as filePayloadSchema, be as generatedAudioSchema, me as generatedImageSchema, ge as generatedVideoSchema, D as getAwsColor, B as imageEditBodySchema, z as imageGenerateBodySchema, I as imagePayloadSchema, pe as imageRemoveBackgroundBodySchema, V as imageUpscaleBodySchema, Ue as listBodySchema, We as listResponseSchema, Ve as presignDownloadBodySchema, He as presignDownloadResponseSchema, Be as presignUploadBodySchema, J as presignUploadResponseSchema, L as sizeFormattedSchema, Y as storageObjectSchema, W as textBodySchema, Te as textGenerateBodySchema, U as textMessageSchema, xe as transcriptionSchema, H as transcriptionSegmentSchema, Z as tryCatch, he as videoGenerateBodySchema };
3233
+ export { pe as AI_MODELS, ft as AUTH_PROJECTS, v as AWS_BLOCK_GROUPS, ne as AWS_BLOCK_SIZES, de as AWS_DEFAULT_REGION, ee as AWS_DURATIONS, m as AWS_EASINGS, g as AWS_GLYPHS, p as AWS_GLYPH_FAMILIES, h as AWS_GLYPH_VIEWBOX, f as AWS_PALETTE, te as AWS_UNIT, d as AppConfigHelpers, mt as AuthTierHelpers, _ as AwsHelpers, C as BACKEND_URL, fe as BREAKPOINTS, x as BRICK_ARROW_PATH, S as BRICK_COLORS, b as BRICK_GLYPHS, y as BRICK_GLYPH_VIEWBOX, rt as BedrockStyle, re as BrickHelpers, ut as CITIES, ie as CommonHelpers, oe as DIGO_ADMIN_SECRET, ce as DIGO_COLORS, ae as DIGO_HEADERS, se as DIGO_STORAGE_BUCKET_SUFFIX, dt as EXCERPTS, I as FONT_FACES, L as IMAGES, O as IconHelpers, T as LANGUAGE_MAP, z as LocalStorage, R as MODELS, Q as ORG_EMAIL_DOMAIN, ue as REPLICATE_PROXY, me as ROUTES, ge as STRINGS, B as SessionStorage, he as StringHelpers, w as TYPO_CLASS_GROUPS, st as VIDEOS, at as WEBSOCKET_HUB_CHANNEL, le as WS_URL, X as WebSocketHubEvent, it as WebsocketClientEvent, ot as WebsocketLogEvent, V as aspectRatioSchema, Oe as audioMusicBodySchema, De as audioSpeechBodySchema, ke as audioTranscribeBodySchema, lt as cn, We as databaseCreateBodySchema, Ge as databaseCreateResponseSchema, Je as databaseDeleteBodySchema, Ye as databaseDeleteResponseSchema, Re as databaseGetAllBodySchema, ze as databaseGetAllResponseSchema, Be as databaseGetBodySchema, He as databaseGetByBodySchema, Ue as databaseGetByResponseSchema, Ve as databaseGetResponseSchema, Ke as databaseUpdateBodySchema, qe as databaseUpdateResponseSchema, tt as deleteBodySchema, nt as deleteResponseSchema, Ie as dmxSendBodySchema, Le as dmxSendResponseSchema, _e as filePayloadSchema, Ae as generatedAudioSchema, we as generatedImageSchema, Ee as generatedVideoSchema, xe as imageEditBodySchema, be as imageGenerateBodySchema, ve as imagePayloadSchema, Ce as imageRemoveBackgroundBodySchema, Se as imageUpscaleBodySchema, $e as listBodySchema, et as listResponseSchema, Ze as presignDownloadBodySchema, Qe as presignDownloadResponseSchema, Xe as presignUploadBodySchema, J as presignUploadResponseSchema, ye as sizeFormattedSchema, Y as storageObjectSchema, W as textBodySchema, Fe as textGenerateBodySchema, U as textMessageSchema, je as transcriptionSchema, H as transcriptionSegmentSchema, Z as tryCatch, Te as videoGenerateBodySchema };
2580
3234
 
2581
3235
  //# sourceMappingURL=index.js.map