@digo-labs/common 0.1.11 → 0.1.13

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
@@ -4,9 +4,9 @@ import { decode as r, encode as i } from "base64-arraybuffer";
4
4
  import a from "lz-string";
5
5
  import { base64StringToBlob as o, blobToBase64String as s } from "blob-util";
6
6
  import { z as c } from "zod";
7
- import ee from "clsx";
8
- import { twMerge as te } from "tailwind-merge";
9
- for (var ne = class {
7
+ import l from "clsx";
8
+ import { twMerge as u } from "tailwind-merge";
9
+ for (var d = class {
10
10
  static appName;
11
11
  static setCurrentAppName(e) {
12
12
  if (this.appName !== void 0 && this.appName !== e) throw Error(`setCurrentAppName: already set to '${this.appName}', cannot override with '${e}'. This usually means defineApp() was called twice with different names.`);
@@ -24,7 +24,7 @@ for (var ne = 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
- }, l = class a {
27
+ }, f = class a {
28
28
  static copyToClipboard(e) {
29
29
  navigator.clipboard.writeText(e).then(() => {}).catch(() => {
30
30
  console.error("Failed to copy");
@@ -117,7 +117,7 @@ for (var ne = class {
117
117
  return this.getImagePayloadFromFile(n);
118
118
  }
119
119
  static async getImagePayloadFromFile(e) {
120
- let [t, n] = await $(e.arrayBuffer());
120
+ let [t, n] = await X(e.arrayBuffer());
121
121
  return n ? [null, n] : [{
122
122
  base64: a.encodeArrayBufferToBase64(t),
123
123
  mediaType: e.type
@@ -194,7 +194,12 @@ for (var ne = class {
194
194
  behavior: "smooth"
195
195
  });
196
196
  }
197
- }, u = "https://api.digo-labs.com", d = "X-Digo-App", f = "X-Admin-Secret", p = "-digo-labs-storage", m = "wss://ws.digo-labs.com", h = "us-east-1", g = [
197
+ }, ee = "https://api.digo-labs.com", te = "X-Digo-App", ne = "X-Admin-Secret", re = "-digo-labs-storage", ie = [
198
+ "#58C2E3",
199
+ "#79F2A9",
200
+ "#985EFF",
201
+ "#BDF279"
202
+ ], ae = "wss://ws.digo-labs.com", oe = "us-east-1", p = [
198
203
  {
199
204
  name: "Claude 3.7 Sonnet",
200
205
  description: "Anthropic's advanced model",
@@ -210,7 +215,7 @@ for (var ne = class {
210
215
  description: "OpenAi's advanced model",
211
216
  icon: "icon-[simple-icons--openai]"
212
217
  }
213
- ], _ = {
218
+ ], se = {
214
219
  typescript: {
215
220
  icon: "typescript",
216
221
  name: "TypeScript"
@@ -283,9 +288,9 @@ for (var ne = class {
283
288
  icon: "code",
284
289
  name: "Text"
285
290
  }
286
- }, v = /* @__PURE__ */ function(e) {
291
+ }, m = /* @__PURE__ */ function(e) {
287
292
  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;
288
- }(v || {}), y = {
293
+ }(m || {}), h = {
289
294
  arrowUp: {
290
295
  category: "Navigation",
291
296
  icon: "icon-[lucide--arrow-up]"
@@ -1258,6 +1263,10 @@ for (var ne = class {
1258
1263
  category: "Brands",
1259
1264
  icon: "icon-[logos--google-icon]"
1260
1265
  },
1266
+ googleMono: {
1267
+ category: "Brands",
1268
+ icon: "icon-[simple-icons--google]"
1269
+ },
1261
1270
  github: {
1262
1271
  category: "Brands",
1263
1272
  icon: "icon-[mdi--github]"
@@ -2010,53 +2019,75 @@ for (var ne = class {
2010
2019
  category: "Misc",
2011
2020
  icon: "icon-[lucide--package-plus]"
2012
2021
  }
2013
- }, re = class {
2022
+ }, ce = class {
2014
2023
  static getIcon(e) {
2015
- return e in y ? y[e].icon : e;
2024
+ return e in h ? h[e].icon : e;
2016
2025
  }
2017
2026
  static getCategory(e) {
2018
- return y[e].category;
2027
+ return h[e].category;
2019
2028
  }
2020
2029
  static getCategories() {
2021
2030
  let e = /* @__PURE__ */ new Set();
2022
- for (let t of Object.values(y)) e.add(t.category);
2023
- return Object.values(v).filter((t) => e.has(t));
2031
+ for (let t of Object.values(h)) e.add(t.category);
2032
+ return Object.values(m).filter((t) => e.has(t));
2024
2033
  }
2025
2034
  static getByCategory() {
2026
2035
  let e = {};
2027
- for (let t of Object.values(v)) e[t] = [];
2028
- for (let [t, n] of Object.entries(y)) e[n.category].push({
2036
+ for (let t of Object.values(m)) e[t] = [];
2037
+ for (let [t, n] of Object.entries(h)) e[n.category].push({
2029
2038
  id: t,
2030
2039
  category: n.category,
2031
2040
  icon: n.icon
2032
2041
  });
2033
2042
  return e;
2034
2043
  }
2035
- }, b = "@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@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@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}\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}", x = /--font-([\w-]+):\s*'([^']+)'/g, S = /* @__PURE__ */ new Map(), C; (C = x.exec(b)) !== null;) {
2036
- let e = `--font-${C[1]}`, t = C[2];
2037
- S.set(t.toLowerCase(), e);
2044
+ }, g = "@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@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, _ = /* @__PURE__ */ new Map(), v; (v = le.exec(g)) !== null;) {
2045
+ let e = `--font-${v[1]}`, t = v[2];
2046
+ _.set(t.toLowerCase(), e);
2038
2047
  }
2039
- for (var w = /@font-face\s*\{[^}]*?font-family:\s*'([^']+)'[^}]*?font-weight:\s*([\d\s]+)[^}]*?font-style:\s*(\w+)[^}]*?src:\s*url\([^)]*?\/fonts\/([^)]+)\)\s*format\('(\w+)'\)[^}]*?\}/gs, T = [], E; (E = w.exec(b)) !== null;) {
2040
- let e = E[1], t = E[2].trim(), n = E[3], r = E[4], i = E[5] === "truetype" ? "ttf" : "otf", a = t.split(/\s+/).map(Number), o = Math.min(...a), s = Math.max(...a);
2041
- T.push({
2042
- family: e,
2043
- weightMin: o,
2044
- weightMax: s,
2045
- style: n,
2046
- format: i,
2047
- filePath: `/fonts/${r}`,
2048
- fileName: r,
2049
- cssVariable: S.get(e.toLowerCase()) ?? null
2048
+ for (var ue = /@font-face\s*\{([^}]*)\}/gs, y = [], b; (b = ue.exec(g)) !== null;) {
2049
+ let e = b[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+)'\)/);
2050
+ if (!t || !n || !r || !i) continue;
2051
+ 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);
2052
+ y.push({
2053
+ family: a,
2054
+ weightMin: d,
2055
+ weightMax: f,
2056
+ style: s,
2057
+ format: l,
2058
+ filePath: `/fonts/${c}`,
2059
+ fileName: c,
2060
+ cssVariable: _.get(a.toLowerCase()) ?? null
2050
2061
  });
2051
2062
  }
2052
- T.sort((e, t) => e.family.localeCompare(t.family));
2053
- var D = T, O = {
2063
+ y.sort((e, t) => e.family.localeCompare(t.family));
2064
+ var de = y, fe = {
2054
2065
  digoLogo: "https://cdn.digo-labs.com/images/digo-logo.png",
2055
2066
  digoLogoSvg: "https://cdn.digo-labs.com/images/digo-logo.svg",
2056
2067
  pcLogoV1Svg: "https://cdn.digo-labs.com/images/pc-logo-v1.svg",
2057
2068
  pcLogo3d: "https://cdn.digo-labs.com/images/pc-logo-3d.png",
2058
- userPlaceholder: "https://cdn.digo-labs.com/images/user-placeholder.png"
2059
- }, k = {}, A = class {
2069
+ userPlaceholder: "https://cdn.digo-labs.com/images/user-placeholder.png",
2070
+ audio3d: "https://cdn.digo-labs.com/images/audio-3d.jpg",
2071
+ blocks3d: "https://cdn.digo-labs.com/images/blocks-3d.jpg",
2072
+ components3d: "https://cdn.digo-labs.com/images/components-3d.jpg",
2073
+ image3d: "https://cdn.digo-labs.com/images/image-3d.jpg",
2074
+ pages3d: "https://cdn.digo-labs.com/images/pages-3d.jpg",
2075
+ text3d: "https://cdn.digo-labs.com/images/text-3d.jpg",
2076
+ video3d: "https://cdn.digo-labs.com/images/video-3d.jpg"
2077
+ }, x = { brain: "https://bbzocstzdddfuoferejj.supabase.co/storage/v1/object/public/models/brain_hologram.glb" }, S = class {
2078
+ static setValue(e, t) {
2079
+ localStorage.setItem(e, JSON.stringify(t));
2080
+ }
2081
+ static loadValue(e, t) {
2082
+ let n = localStorage.getItem(e);
2083
+ if (!n || n === "undefined") return t;
2084
+ try {
2085
+ return JSON.parse(n);
2086
+ } catch {
2087
+ return t;
2088
+ }
2089
+ }
2090
+ }, C = class {
2060
2091
  static setValue(e, t) {
2061
2092
  sessionStorage.setItem(e, JSON.stringify(t));
2062
2093
  }
@@ -2069,8 +2100,8 @@ var D = T, O = {
2069
2100
  return t;
2070
2101
  }
2071
2102
  }
2072
- }, j = {
2073
- aiText: "text",
2103
+ }, w = {
2104
+ bedrockText: "bedrock-text",
2074
2105
  dmxSend: "dmx-send",
2075
2106
  storagePresignUpload: "storage-presign-upload",
2076
2107
  storagePresignDownload: "storage-presign-download",
@@ -2083,7 +2114,7 @@ var D = T, O = {
2083
2114
  databaseUpdate: "database-update",
2084
2115
  databaseDelete: "database-delete",
2085
2116
  refreshSchemas: "refresh-schemas"
2086
- }, M = class {
2117
+ }, T = class {
2087
2118
  static hashCode(e) {
2088
2119
  return [...e].reduce((e, t) => Math.imul(31, e) + t.charCodeAt(0) | 0, 0);
2089
2120
  }
@@ -2114,7 +2145,7 @@ var D = T, O = {
2114
2145
  static getFirstLetter(e) {
2115
2146
  return e ? e.charAt(0).toUpperCase() : "X";
2116
2147
  }
2117
- }, N = {
2148
+ }, E = {
2118
2149
  digo: "Digo",
2119
2150
  refresh: "Refresh",
2120
2151
  code: "Code",
@@ -2202,181 +2233,172 @@ var D = T, O = {
2202
2233
  generate: "Generate",
2203
2234
  savePreset: "Save Preset",
2204
2235
  image: "Image"
2205
- }, P = [
2206
- {
2207
- id: "us.anthropic.claude-haiku-4-5-20251001-v1:0",
2208
- provider: "Anthropic",
2209
- name: "Claude Haiku",
2210
- version: "4.5",
2211
- description: "Fastest and cheapest, good for short replies."
2212
- },
2213
- {
2214
- id: "us.anthropic.claude-sonnet-4-6",
2215
- provider: "Anthropic",
2216
- name: "Claude Sonnet",
2217
- version: "4.6",
2218
- description: "Balanced quality and speed for most tasks."
2219
- },
2220
- {
2221
- id: "us.anthropic.claude-opus-4-7",
2222
- provider: "Anthropic",
2223
- name: "Claude Opus",
2224
- version: "4.7",
2225
- description: "Highest quality, slower and more expensive."
2226
- },
2227
- {
2228
- id: "us.amazon.nova-micro-v1:0",
2229
- provider: "Amazon",
2230
- name: "Nova Micro",
2231
- version: "1",
2232
- description: "Text-only, extremely fast and cheap."
2233
- },
2234
- {
2235
- id: "us.amazon.nova-lite-v1:0",
2236
- provider: "Amazon",
2237
- name: "Nova Lite",
2238
- version: "1",
2239
- description: "Fast multimodal with image and video input."
2240
- },
2241
- {
2242
- id: "us.amazon.nova-pro-v1:0",
2243
- provider: "Amazon",
2244
- name: "Nova Pro",
2245
- version: "1",
2246
- description: "Higher-quality multimodal, slower than Lite."
2247
- }
2248
- ], F = P[0].id, I = c.object({
2236
+ }, D = c.object({
2237
+ mediaType: c.string(),
2238
+ base64: c.string()
2239
+ }), O = c.object({
2240
+ mediaType: c.string(),
2241
+ base64: c.string()
2242
+ }), k = c.string().regex(/^\d+x\d+$/).transform((e) => e), A = c.string().regex(/^\d+:\d+$/).transform((e) => e), j = c.object({
2243
+ prompt: c.string().min(1),
2244
+ aspectRatio: A.optional(),
2245
+ seed: c.number().int().optional()
2246
+ }), M = c.object({
2247
+ prompt: c.string().min(1),
2248
+ image: c.string().url(),
2249
+ strength: c.number().min(0).max(1).optional()
2250
+ }), N = c.object({
2251
+ image: c.string().url(),
2252
+ factor: c.number().positive().optional()
2253
+ }), P = c.object({ image: c.string().url() }), F = c.object({
2254
+ url: c.string().url(),
2255
+ contentType: c.string().optional(),
2256
+ width: c.number().optional(),
2257
+ height: c.number().optional(),
2258
+ seed: c.number().optional(),
2259
+ model: c.string().optional()
2260
+ }), I = c.object({
2261
+ prompt: c.string().min(1),
2262
+ aspectRatio: A.optional(),
2263
+ durationSeconds: c.number().positive().optional()
2264
+ }), L = c.object({
2265
+ url: c.string().url(),
2266
+ contentType: c.string().optional(),
2267
+ durationSeconds: c.number().optional(),
2268
+ model: c.string().optional()
2269
+ }), R = c.object({
2270
+ text: c.string().min(1),
2271
+ voice: c.string().optional(),
2272
+ speed: c.number().positive().optional()
2273
+ }), z = c.object({
2274
+ prompt: c.string().min(1),
2275
+ durationSeconds: c.number().positive().optional()
2276
+ }), B = c.object({
2277
+ audio: c.string().url(),
2278
+ language: c.string().optional()
2279
+ }), V = c.object({
2280
+ url: c.string().url(),
2281
+ contentType: c.string().optional(),
2282
+ durationSeconds: c.number().optional(),
2283
+ model: c.string().optional()
2284
+ }), H = c.object({
2285
+ text: c.string(),
2286
+ startSecond: c.number(),
2287
+ endSecond: c.number()
2288
+ }), pe = c.object({
2289
+ text: c.string(),
2290
+ segments: c.array(H).optional(),
2291
+ language: c.string().optional(),
2292
+ model: c.string().optional()
2293
+ }), me = c.object({
2249
2294
  type: c.literal("text"),
2250
2295
  text: c.string()
2251
- }), L = c.object({
2296
+ }), he = c.object({
2252
2297
  type: c.literal("image"),
2253
2298
  source: c.object({
2254
2299
  base64: c.string(),
2255
2300
  mediaType: c.string()
2256
2301
  })
2257
- }), R = c.union([c.string(), c.array(c.union([I, L]))]), z = c.object({
2302
+ }), ge = c.union([c.string(), c.array(c.union([me, he]))]), U = c.object({
2258
2303
  role: c.enum(["user", "assistant"]),
2259
- content: R
2260
- }), B = c.object({
2304
+ content: ge
2305
+ }), W = c.object({
2261
2306
  model: c.string().optional(),
2262
- messages: c.array(z).min(1),
2307
+ messages: c.array(U).min(1),
2263
2308
  systemPrompt: c.string().optional(),
2264
2309
  temperature: c.number().min(0).max(2).optional(),
2265
2310
  maxTokens: c.number().int().positive().optional(),
2266
2311
  stopSequences: c.array(c.string()).optional(),
2267
2312
  providerOptions: c.record(c.string(), c.record(c.string(), c.any())).optional()
2268
- }), V = c.object({
2313
+ }), _e = W.omit({
2314
+ model: !0,
2315
+ stopSequences: !0,
2316
+ providerOptions: !0
2317
+ }), ve = c.object({
2269
2318
  channel: c.number().int().min(1).max(512),
2270
2319
  value: c.number().int().min(0).max(255)
2271
- }), H = c.object({ success: c.boolean() }), U = c.string().min(1), W = c.union([
2320
+ }), ye = c.object({ success: c.boolean() }), G = c.string().min(1), K = c.union([
2272
2321
  c.string(),
2273
2322
  c.number(),
2274
2323
  c.boolean(),
2275
2324
  c.null()
2276
- ]), G = c.record(c.string(), c.unknown()), K = c.object({
2277
- table: U,
2278
- limit: c.number().int().positive().optional(),
2325
+ ]), q = c.record(c.string(), c.unknown()), be = c.object({
2326
+ table: G,
2327
+ limit: c.number().int().positive().max(1e3).default(100),
2279
2328
  offset: c.number().int().nonnegative().optional()
2280
- }), q = c.object({ rows: c.array(G) }), J = c.object({
2281
- table: U,
2282
- pk: U,
2283
- value: W
2284
- }), ie = c.object({ row: G.nullable() }), Y = c.object({
2285
- table: U,
2286
- column: U,
2287
- value: W
2288
- }), ae = c.object({ rows: c.array(G) }), oe = c.object({
2289
- table: U,
2290
- record: G
2291
- }), se = c.object({ row: G }), ce = c.object({
2292
- table: U,
2293
- pk: U,
2294
- value: W,
2295
- changes: G
2296
- }), le = c.object({ success: c.boolean() }), ue = c.object({
2297
- table: U,
2298
- pk: U,
2299
- value: W
2300
- }), de = c.object({ success: c.boolean() }), fe = c.object({
2301
- mediaType: c.string(),
2302
- base64: c.string()
2303
- }), pe = c.object({
2304
- mediaType: c.string(),
2305
- base64: c.string()
2306
- }), me = c.string().regex(/^\d+x\d+$/).transform((e) => e), he = c.string().regex(/^\d+:\d+$/).transform((e) => e), ge = c.object({
2329
+ }), xe = c.object({ rows: c.array(q) }), Se = c.object({
2330
+ table: G,
2331
+ pk: G,
2332
+ value: K
2333
+ }), Ce = c.object({ row: q.nullable() }), we = c.object({
2334
+ table: G,
2335
+ column: G,
2336
+ value: K,
2337
+ limit: c.number().int().positive().max(1e3).default(100),
2338
+ offset: c.number().int().nonnegative().optional()
2339
+ }), Te = c.object({ rows: c.array(q) }), Ee = c.object({
2340
+ table: G,
2341
+ record: q
2342
+ }), De = c.object({ row: q }), Oe = c.object({
2343
+ table: G,
2344
+ pk: G,
2345
+ value: K,
2346
+ changes: q
2347
+ }), ke = c.object({ success: c.boolean() }), Ae = c.object({
2348
+ table: G,
2349
+ pk: G,
2350
+ value: K
2351
+ }), je = c.object({ success: c.boolean() }), Me = c.object({
2307
2352
  bucket: c.string().min(1),
2308
2353
  path: c.string().min(1),
2309
2354
  contentType: c.string().min(1),
2310
2355
  expiresIn: c.number().int().positive().max(604800).optional()
2311
- }), X = c.object({
2356
+ }), J = c.object({
2312
2357
  url: c.string().url(),
2313
2358
  expiresAt: c.number()
2314
- }), _e = c.object({
2359
+ }), Ne = c.object({
2315
2360
  bucket: c.string().min(1),
2316
2361
  path: c.string().min(1),
2317
2362
  expiresIn: c.number().int().positive().max(604800).optional()
2318
- }), ve = X, ye = c.object({
2363
+ }), Pe = J, Fe = c.object({
2319
2364
  bucket: c.string().min(1),
2320
2365
  prefix: c.string().optional(),
2321
2366
  limit: c.number().int().positive().max(1e3).optional()
2322
- }), Z = c.object({
2367
+ }), Y = c.object({
2323
2368
  key: c.string(),
2324
2369
  size: c.number(),
2325
2370
  lastModified: c.string(),
2326
2371
  etag: c.string().optional()
2327
- }), be = c.object({ objects: c.array(Z) }), xe = c.object({
2372
+ }), Ie = c.object({ objects: c.array(Y) }), Le = c.object({
2328
2373
  bucket: c.string().min(1),
2329
2374
  paths: c.array(c.string().min(1)).min(1)
2330
- }), Q = c.object({
2375
+ }), Re = c.object({
2331
2376
  success: c.boolean(),
2332
2377
  deleted: c.array(c.string())
2333
- }), Se = /* @__PURE__ */ function(e) {
2378
+ }), ze = /* @__PURE__ */ function(e) {
2334
2379
  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;
2335
- }({}), Ce = /* @__PURE__ */ function(e) {
2380
+ }({}), Be = /* @__PURE__ */ function(e) {
2336
2381
  return e.IDENTIFY = "IDENTIFY", e.SUBSCRIBE = "SUBSCRIBE", e.UNSUBSCRIBE = "UNSUBSCRIBE", e.MESSAGE = "MESSAGE", e.STATE = "STATE", e;
2337
- }({}), we = /* @__PURE__ */ function(e) {
2382
+ }({}), Ve = /* @__PURE__ */ function(e) {
2338
2383
  return e.MESSAGE = "MESSAGE", e.STATE = "STATE", e;
2339
- }({}), Te = "_hub", Ee = /* @__PURE__ */ function(e) {
2384
+ }({}), He = "_hub", Ue = /* @__PURE__ */ function(e) {
2340
2385
  return e.CONNECT = "CONNECT", e.DISCONNECT = "DISCONNECT", e.SUBSCRIBE = "SUBSCRIBE", e.UNSUBSCRIBE = "UNSUBSCRIBE", e.MESSAGE = "MESSAGE", e.STATE = "STATE", e;
2341
- }({}), De = { pcLogo3D: "https://cdn.digo-labs.com/videos/pc-logo-3d.mp4" }, Oe = {
2342
- aalto: "https://cdn.digo-labs.com/fonts/aalto.otf",
2343
- being: "https://cdn.digo-labs.com/fonts/being.otf",
2344
- benzol: "https://cdn.digo-labs.com/fonts/benzol.otf",
2345
- clashGrotesk: "https://cdn.digo-labs.com/fonts/clash-grotesk-variable.ttf",
2346
- digital7Mono: "https://cdn.digo-labs.com/fonts/digital-7-mono.ttf",
2347
- disket: "https://cdn.digo-labs.com/fonts/disket.ttf",
2348
- generalSans: "https://cdn.digo-labs.com/fonts/general-sans.ttf",
2349
- half: "https://cdn.digo-labs.com/fonts/half.otf",
2350
- heming: "https://cdn.digo-labs.com/fonts/heming.ttf",
2351
- humane: "https://cdn.digo-labs.com/fonts/humane-variable.ttf",
2352
- jersey10: "https://cdn.digo-labs.com/fonts/jersey-10-regular.ttf",
2353
- karmaticArcade: "https://cdn.digo-labs.com/fonts/karmatic-arcade-regular.ttf",
2354
- kodeMono: "https://cdn.digo-labs.com/fonts/kode-mono-vf.ttf",
2355
- miratrix: "https://cdn.digo-labs.com/fonts/miratrix.otf",
2356
- nippo: "https://cdn.digo-labs.com/fonts/nippo.ttf",
2357
- obrazec: "https://cdn.digo-labs.com/fonts/obrazec.otf",
2358
- pixelony: "https://cdn.digo-labs.com/fonts/pixelony.ttf",
2359
- triakis: "https://cdn.digo-labs.com/fonts/triakis.otf",
2360
- unknown: "https://cdn.digo-labs.com/fonts/unknown.otf",
2361
- yeager: "https://cdn.digo-labs.com/fonts/yeager.otf",
2362
- geist: "https://cdn.digo-labs.com/fonts/geist.ttf",
2363
- geistMono: "https://cdn.digo-labs.com/fonts/geist-mono.ttf"
2364
- };
2386
+ }({}), We = { pcLogo3D: "https://cdn.digo-labs.com/videos/pc-logo-3d.mp4" };
2365
2387
  //#endregion
2366
2388
  //#region src/utils.ts
2367
- async function $(e) {
2389
+ async function X(e) {
2368
2390
  try {
2369
2391
  return [await e, null];
2370
2392
  } catch (e) {
2371
2393
  return [null, e];
2372
2394
  }
2373
2395
  }
2374
- function ke(...e) {
2375
- return te(ee(e));
2396
+ function Ge(...e) {
2397
+ return u(l(e));
2376
2398
  }
2377
2399
  //#endregion
2378
2400
  //#region src/samples.ts
2379
- var Ae = [
2401
+ var Ke = [
2380
2402
  "New York",
2381
2403
  "Tokyo",
2382
2404
  "Paris",
@@ -2402,7 +2424,7 @@ var Ae = [
2402
2424
  "Mexico City",
2403
2425
  "Oslo",
2404
2426
  "Zürich"
2405
- ], je = [
2427
+ ], Z = [
2406
2428
  "The quick brown fox jumps over the lazy dog.",
2407
2429
  "Pack my box with five dozen liquor jugs.",
2408
2430
  "How vexingly quick daft zebras jump.",
@@ -2413,12 +2435,33 @@ var Ae = [
2413
2435
  "Sixty zippers were quickly picked from the woven jute bag.",
2414
2436
  "We promptly judged antique ivory buckles for the next prize.",
2415
2437
  "A mad boxer shot a quick, gloved jab to the jaw of his dizzy opponent."
2416
- ], Me = { monorepo: { trustedOrigins: [
2438
+ ], qe = { monorepo: { trustedOrigins: [
2417
2439
  "http://localhost:*",
2418
2440
  "http://127.0.0.1:*",
2419
2441
  "https://*.digo-labs.com"
2420
- ] } };
2442
+ ] } }, Q = "productionclub.net", Je = "admin", $ = {
2443
+ public: 0,
2444
+ user: 1,
2445
+ org: 2,
2446
+ admin: 3
2447
+ }, Ye = class {
2448
+ static deriveTier(e) {
2449
+ return e ? this.hasAdminRole(e.role) ? "admin" : this.isOrgUser(e) ? "org" : "user" : "public";
2450
+ }
2451
+ static meetsTier(e, t) {
2452
+ return !this.isTier(e) || !this.isTier(t) ? !1 : $[e] >= $[t];
2453
+ }
2454
+ static isTier(e) {
2455
+ return typeof e == "string" && Object.hasOwn($, e);
2456
+ }
2457
+ static hasAdminRole(e) {
2458
+ return e ? e.split(",").includes(Je) : !1;
2459
+ }
2460
+ static isOrgUser(e) {
2461
+ return e.emailVerified ? e.email.toLowerCase().endsWith(`@${Q}`) : !1;
2462
+ }
2463
+ };
2421
2464
  //#endregion
2422
- export { g as AI_MODELS, Me as AUTH_PROJECTS, h as AWS_DEFAULT_REGION, ne as AppConfigHelpers, u as BACKEND_URL, P as BEDROCK_MODELS, Se as BedrockStyle, Ae as CITIES, l as CommonHelpers, F as DEFAULT_TEXT_MODEL, f as DIGO_ADMIN_SECRET, d as DIGO_HEADERS, p as DIGO_STORAGE_BUCKET_SUFFIX, je as EXCERPTS, Oe as FONTS, D as FONT_FACES, O as IMAGES, re as IconHelpers, _ as LANGUAGE_MAP, A as LocalStorage, k as MODELS, j as ROUTES, N as STRINGS, M as StringHelpers, De as VIDEOS, Te as WEBSOCKET_HUB_CHANNEL, m as WS_URL, we as WebSocketHubEvent, Ce as WebsocketClientEvent, Ee as WebsocketLogEvent, he as aspectRatioSchema, ke as cn, oe as databaseCreateBodySchema, se as databaseCreateResponseSchema, ue as databaseDeleteBodySchema, de as databaseDeleteResponseSchema, K as databaseGetAllBodySchema, q as databaseGetAllResponseSchema, J as databaseGetBodySchema, Y as databaseGetByBodySchema, ae as databaseGetByResponseSchema, ie as databaseGetResponseSchema, ce as databaseUpdateBodySchema, le as databaseUpdateResponseSchema, xe as deleteBodySchema, Q as deleteResponseSchema, V as dmxSendBodySchema, H as dmxSendResponseSchema, fe as filePayloadSchema, pe as imagePayloadSchema, ye as listBodySchema, be as listResponseSchema, _e as presignDownloadBodySchema, ve as presignDownloadResponseSchema, ge as presignUploadBodySchema, X as presignUploadResponseSchema, me as sizeFormattedSchema, Z as storageObjectSchema, B as textBodySchema, z as textMessageSchema, $ as tryCatch };
2465
+ export { p as AI_MODELS, qe as AUTH_PROJECTS, oe as AWS_DEFAULT_REGION, d as AppConfigHelpers, Ye as AuthTierHelpers, ee as BACKEND_URL, ze as BedrockStyle, Ke as CITIES, f as CommonHelpers, ne as DIGO_ADMIN_SECRET, ie as DIGO_COLORS, te as DIGO_HEADERS, re as DIGO_STORAGE_BUCKET_SUFFIX, Z as EXCERPTS, de as FONT_FACES, fe as IMAGES, ce as IconHelpers, se as LANGUAGE_MAP, S as LocalStorage, x as MODELS, Q as ORG_EMAIL_DOMAIN, w as ROUTES, E as STRINGS, C as SessionStorage, T as StringHelpers, We as VIDEOS, He as WEBSOCKET_HUB_CHANNEL, ae as WS_URL, Ve as WebSocketHubEvent, Be as WebsocketClientEvent, Ue as WebsocketLogEvent, A as aspectRatioSchema, z as audioMusicBodySchema, R as audioSpeechBodySchema, B as audioTranscribeBodySchema, Ge as cn, Ee as databaseCreateBodySchema, De as databaseCreateResponseSchema, Ae as databaseDeleteBodySchema, je as databaseDeleteResponseSchema, be as databaseGetAllBodySchema, xe as databaseGetAllResponseSchema, Se as databaseGetBodySchema, we as databaseGetByBodySchema, Te as databaseGetByResponseSchema, Ce as databaseGetResponseSchema, Oe as databaseUpdateBodySchema, ke as databaseUpdateResponseSchema, Le as deleteBodySchema, Re as deleteResponseSchema, ve as dmxSendBodySchema, ye as dmxSendResponseSchema, D as filePayloadSchema, V as generatedAudioSchema, F as generatedImageSchema, L as generatedVideoSchema, M as imageEditBodySchema, j as imageGenerateBodySchema, O as imagePayloadSchema, P as imageRemoveBackgroundBodySchema, N as imageUpscaleBodySchema, Fe as listBodySchema, Ie as listResponseSchema, Ne as presignDownloadBodySchema, Pe as presignDownloadResponseSchema, Me as presignUploadBodySchema, J as presignUploadResponseSchema, k as sizeFormattedSchema, Y as storageObjectSchema, W as textBodySchema, _e as textGenerateBodySchema, U as textMessageSchema, pe as transcriptionSchema, H as transcriptionSegmentSchema, X as tryCatch, I as videoGenerateBodySchema };
2423
2466
 
2424
2467
  //# sourceMappingURL=index.js.map