@psnext/design-system 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/README.md +30 -124
  2. package/dist/Stack.cjs +64 -0
  3. package/dist/Stack.cjs.map +1 -0
  4. package/dist/Stack.js +54 -0
  5. package/dist/Stack.js.map +1 -0
  6. package/dist/ThemeProvider.cjs +1886 -0
  7. package/dist/ThemeProvider.cjs.map +1 -0
  8. package/dist/ThemeProvider.d.cts +85 -0
  9. package/dist/ThemeProvider.d.cts.map +1 -0
  10. package/dist/ThemeProvider.d.ts +85 -0
  11. package/dist/ThemeProvider.d.ts.map +1 -0
  12. package/dist/ThemeProvider.js +1508 -0
  13. package/dist/ThemeProvider.js.map +1 -0
  14. package/dist/contexts/index.cjs +0 -60
  15. package/dist/contexts/index.d.cts +1 -23
  16. package/dist/contexts/index.d.ts +1 -23
  17. package/dist/contexts/index.js +1 -58
  18. package/dist/index.cjs +147 -72
  19. package/dist/index.d.cts +1009 -432
  20. package/dist/index.d.cts.map +1 -1
  21. package/dist/index.d.ts +1014 -437
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +6 -7
  24. package/dist/index2.d.cts +4 -16
  25. package/dist/index2.d.ts +4 -16
  26. package/dist/layouts/index.cjs +100 -12
  27. package/dist/layouts/index.cjs.map +1 -0
  28. package/dist/layouts/index.d.cts +70 -127
  29. package/dist/layouts/index.d.cts.map +1 -1
  30. package/dist/layouts/index.d.ts +70 -127
  31. package/dist/layouts/index.d.ts.map +1 -1
  32. package/dist/layouts/index.js +92 -2
  33. package/dist/layouts/index.js.map +1 -0
  34. package/dist/patterns/index.cjs +1004 -7254
  35. package/dist/patterns/index.cjs.map +1 -1
  36. package/dist/patterns/index.d.cts +381 -389
  37. package/dist/patterns/index.d.cts.map +1 -1
  38. package/dist/patterns/index.d.ts +378 -386
  39. package/dist/patterns/index.d.ts.map +1 -1
  40. package/dist/patterns/index.js +970 -7225
  41. package/dist/patterns/index.js.map +1 -1
  42. package/dist/primitives/index.cjs +135 -55
  43. package/dist/primitives/index.d.cts +3 -2
  44. package/dist/primitives/index.d.ts +3 -2
  45. package/dist/primitives/index.js +3 -5
  46. package/dist/primitives.cjs +3961 -1274
  47. package/dist/primitives.cjs.map +1 -1
  48. package/dist/primitives.js +3551 -1001
  49. package/dist/primitives.js.map +1 -1
  50. package/dist/styles/base.css +43 -0
  51. package/dist/styles/glass.css +75 -0
  52. package/dist/styles/index.css +43 -23
  53. package/dist/styles/semantic.css +107 -0
  54. package/dist/styles/theme.css +42 -24
  55. package/dist/styles/tokens/alpha.css +39 -0
  56. package/dist/styles/tokens/border-radius.css +17 -0
  57. package/dist/styles/tokens/chart-colors-dark.css +18 -0
  58. package/dist/styles/tokens/chart-colors-light.css +18 -0
  59. package/dist/styles/tokens/colors.css +251 -0
  60. package/dist/styles/tokens/mode-dark.css +101 -0
  61. package/dist/styles/tokens/mode-light.css +101 -0
  62. package/dist/styles/tokens/shadows.css +14 -0
  63. package/dist/styles/tokens/spacing.css +44 -0
  64. package/dist/styles/tokens/theme-bodhi.css +35 -0
  65. package/dist/styles/tokens/theme-slingshot.css +35 -0
  66. package/dist/styles/tokens/theme-sustain.css +35 -0
  67. package/dist/styles/tokens/typography.css +83 -0
  68. package/dist/utils.cjs +67 -0
  69. package/dist/utils.cjs.map +1 -0
  70. package/dist/utils.js +27 -0
  71. package/dist/utils.js.map +1 -0
  72. package/package.json +15 -41
  73. package/dist/AiChatPanel.cjs +0 -1603
  74. package/dist/AiChatPanel.cjs.map +0 -1
  75. package/dist/AiChatPanel.js +0 -1526
  76. package/dist/AiChatPanel.js.map +0 -1
  77. package/dist/BodhiLogo.cjs +0 -240
  78. package/dist/BodhiLogo.cjs.map +0 -1
  79. package/dist/BodhiLogo.js +0 -194
  80. package/dist/BodhiLogo.js.map +0 -1
  81. package/dist/Skeleton.cjs +0 -19
  82. package/dist/Skeleton.cjs.map +0 -1
  83. package/dist/Skeleton.js +0 -14
  84. package/dist/Skeleton.js.map +0 -1
  85. package/dist/SustainLogo.cjs +0 -415
  86. package/dist/SustainLogo.cjs.map +0 -1
  87. package/dist/SustainLogo.js +0 -378
  88. package/dist/SustainLogo.js.map +0 -1
  89. package/dist/contexts/index.cjs.map +0 -1
  90. package/dist/contexts/index.d.cts.map +0 -1
  91. package/dist/contexts/index.d.ts.map +0 -1
  92. package/dist/contexts/index.js.map +0 -1
  93. package/dist/index2.d.cts.map +0 -1
  94. package/dist/index2.d.ts.map +0 -1
  95. package/dist/layouts.cjs +0 -3245
  96. package/dist/layouts.cjs.map +0 -1
  97. package/dist/layouts.js +0 -3180
  98. package/dist/layouts.js.map +0 -1
  99. package/dist/styles/base/colors.css +0 -300
  100. package/dist/styles/base/component-tokens.css +0 -240
  101. package/dist/styles/base/elevation.css +0 -7
  102. package/dist/styles/base/fonts.css +0 -14
  103. package/dist/styles/base/global.css +0 -305
  104. package/dist/styles/base/radius.css +0 -22
  105. package/dist/styles/base/semantic-aliases.css +0 -53
  106. package/dist/styles/base/spacing.css +0 -33
  107. package/dist/styles/base/typography.css +0 -48
  108. package/dist/styles/generated/bodhi-vars.css +0 -34
  109. package/dist/styles/generated/dark.css +0 -87
  110. package/dist/styles/generated/light.css +0 -87
  111. package/dist/styles/generated/slingshot-vars.css +0 -34
  112. package/dist/styles/generated/sustain-vars.css +0 -34
  113. package/dist/styles/themes/bodhi.css +0 -166
  114. package/dist/styles/themes/slingshot.css +0 -144
  115. package/dist/styles/themes/sustain.css +0 -130
@@ -0,0 +1,1886 @@
1
+ const require_utils = require("./utils.cjs");
2
+ let react = require("react");
3
+ react = require_utils.__toESM(react);
4
+ let lucide_react = require("lucide-react");
5
+ let radix_ui = require("radix-ui");
6
+ let react_jsx_runtime = require("react/jsx-runtime");
7
+ let class_variance_authority = require("class-variance-authority");
8
+ //#region src/primitives/Spinner/Spinner.tsx
9
+ function Spinner({ className, ...props }) {
10
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.Loader2Icon, {
11
+ role: "status",
12
+ "aria-label": "Loading",
13
+ "data-slot": "spinner",
14
+ className: require_utils.cn("size-4 animate-spin", className),
15
+ ...props
16
+ });
17
+ }
18
+ //#endregion
19
+ //#region src/primitives/Button/Button.tsx
20
+ const buttonVariants = (0, class_variance_authority.cva)("inline-flex items-center justify-center gap-2 whitespace-nowrap text-sm font-medium cursor-pointer transition-[background-color,color,border-color,box-shadow,opacity,transform] duration-150 ease-out active:scale-[0.97] disabled:pointer-events-none disabled:opacity-50 disabled:active:scale-100 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", {
21
+ variants: {
22
+ variant: {
23
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
24
+ destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
25
+ outline: "border bg-background text-foreground hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
26
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
27
+ ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
28
+ link: "text-primary underline-offset-4 hover:underline"
29
+ },
30
+ size: {
31
+ xs: "h-7 gap-1 px-2.5 text-xs has-[>svg]:px-2",
32
+ sm: "h-8 gap-1.5 px-3 has-[>svg]:px-2.5",
33
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
34
+ lg: "h-10 px-6 has-[>svg]:px-4",
35
+ icon: "size-9"
36
+ },
37
+ shape: {
38
+ default: "rounded-full",
39
+ square: "rounded-md"
40
+ }
41
+ },
42
+ defaultVariants: {
43
+ variant: "default",
44
+ size: "default",
45
+ shape: "default"
46
+ }
47
+ });
48
+ function Button({ className, variant, size, shape, asChild = false, loading = false, disabled, children, ...props }) {
49
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(asChild ? radix_ui.Slot.Root : "button", {
50
+ "data-slot": "button",
51
+ "data-loading": loading || void 0,
52
+ className: require_utils.cn(buttonVariants({
53
+ variant,
54
+ size,
55
+ shape,
56
+ className
57
+ })),
58
+ disabled: disabled || loading,
59
+ ...props,
60
+ children: asChild ? children : /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [loading ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Spinner, {}) : null, children] })
61
+ });
62
+ }
63
+ //#endregion
64
+ //#region src/primitives/Avatar/Avatar.tsx
65
+ function Avatar({ className, size = "default", shape = "round", ...props }) {
66
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Avatar.Root, {
67
+ "data-slot": "avatar",
68
+ "data-size": size,
69
+ "data-shape": shape,
70
+ className: require_utils.cn("group/avatar relative flex size-10 shrink-0 overflow-hidden rounded-full select-none", "data-[size=sm]:size-8 data-[size=xs]:size-6 data-[size=xxs]:size-5", "data-[shape=roundrect]:rounded-lg", className),
71
+ ...props
72
+ });
73
+ }
74
+ function AvatarImage({ className, ...props }) {
75
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Avatar.Image, {
76
+ "data-slot": "avatar-image",
77
+ className: require_utils.cn("aspect-square size-full", className),
78
+ ...props
79
+ });
80
+ }
81
+ function AvatarFallback({ className, ...props }) {
82
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Avatar.Fallback, {
83
+ "data-slot": "avatar-fallback",
84
+ className: require_utils.cn("bg-muted flex size-full items-center justify-center rounded-full", "group-data-[shape=roundrect]/avatar:rounded-lg", "group-data-[size=sm]/avatar:text-sm group-data-[size=xs]/avatar:text-xs group-data-[size=xxs]/avatar:text-[10px]", className),
85
+ ...props
86
+ });
87
+ }
88
+ function AvatarBadge({ className, ...props }) {
89
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
90
+ "data-slot": "avatar-badge",
91
+ className: require_utils.cn("absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground ring-2 ring-background select-none", "group-data-[size=default]/avatar:size-3 group-data-[size=default]/avatar:[&>svg]:size-2", "group-data-[size=sm]/avatar:size-2.5 group-data-[size=sm]/avatar:[&>svg]:size-2", "group-data-[size=xs]/avatar:size-2 group-data-[size=xs]/avatar:[&>svg]:size-1.5", "group-data-[size=xxs]/avatar:size-1.5 group-data-[size=xxs]/avatar:[&>svg]:size-1", className),
92
+ ...props
93
+ });
94
+ }
95
+ function AvatarGroup({ className, ...props }) {
96
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
97
+ "data-slot": "avatar-group",
98
+ className: require_utils.cn("group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2 *:data-[slot=avatar]:ring-background", className),
99
+ ...props
100
+ });
101
+ }
102
+ function AvatarGroupCount({ className, ...props }) {
103
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
104
+ "data-slot": "avatar-group-count",
105
+ className: require_utils.cn("relative flex size-10 shrink-0 items-center justify-center rounded-full bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=sm]/avatar-group:size-8 [&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-4", className),
106
+ ...props
107
+ });
108
+ }
109
+ //#endregion
110
+ //#region src/primitives/Card/Card.tsx
111
+ const cardVariants = (0, class_variance_authority.cva)("flex flex-col gap-6 rounded-xl border text-card-foreground", {
112
+ variants: {
113
+ variant: {
114
+ default: "bg-card",
115
+ glass: "border-transparent backdrop-blur-[var(--glass-blur)]"
116
+ },
117
+ tint: {
118
+ subtle: "",
119
+ light: "",
120
+ medium: "",
121
+ heavy: ""
122
+ }
123
+ },
124
+ compoundVariants: [
125
+ {
126
+ variant: "glass",
127
+ tint: "subtle",
128
+ class: "bg-[var(--glass-subtle)]"
129
+ },
130
+ {
131
+ variant: "glass",
132
+ tint: "light",
133
+ class: "bg-[var(--glass-light)]"
134
+ },
135
+ {
136
+ variant: "glass",
137
+ tint: "medium",
138
+ class: "bg-[var(--glass-medium)]"
139
+ },
140
+ {
141
+ variant: "glass",
142
+ tint: "heavy",
143
+ class: "bg-[var(--glass-heavy)]"
144
+ }
145
+ ],
146
+ defaultVariants: {
147
+ variant: "default",
148
+ tint: "light"
149
+ }
150
+ });
151
+ function Card({ className, variant, tint, ...props }) {
152
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
153
+ "data-slot": "card",
154
+ "data-variant": variant ?? "default",
155
+ className: require_utils.cn(cardVariants({
156
+ variant,
157
+ tint
158
+ }), className),
159
+ ...props
160
+ });
161
+ }
162
+ function CardHeader({ className, ...props }) {
163
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
164
+ "data-slot": "card-header",
165
+ className: require_utils.cn("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 pt-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6", className),
166
+ ...props
167
+ });
168
+ }
169
+ function CardTitle({ className, ...props }) {
170
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("h4", {
171
+ "data-slot": "card-title",
172
+ className: require_utils.cn("leading-none", className),
173
+ ...props
174
+ });
175
+ }
176
+ function CardDescription({ className, ...props }) {
177
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
178
+ "data-slot": "card-description",
179
+ className: require_utils.cn("text-muted-foreground", className),
180
+ ...props
181
+ });
182
+ }
183
+ function CardAction({ className, ...props }) {
184
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
185
+ "data-slot": "card-action",
186
+ className: require_utils.cn("col-start-2 row-span-2 row-start-1 self-start justify-self-end", className),
187
+ ...props
188
+ });
189
+ }
190
+ function CardContent({ className, ...props }) {
191
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
192
+ "data-slot": "card-content",
193
+ className: require_utils.cn("px-6 [&:last-child]:pb-6", className),
194
+ ...props
195
+ });
196
+ }
197
+ function CardFooter({ className, ...props }) {
198
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
199
+ "data-slot": "card-footer",
200
+ className: require_utils.cn("flex items-center px-6 pb-6 [.border-t]:pt-6", className),
201
+ ...props
202
+ });
203
+ }
204
+ //#endregion
205
+ //#region src/primitives/Credits/Credits.tsx
206
+ const creditsVariants = (0, class_variance_authority.cva)("inline-flex w-fit items-center gap-1 rounded-full px-2.5 py-0.5 text-sm font-medium tabular-nums whitespace-nowrap [&>svg]:size-3.5 [&>svg]:shrink-0", {
207
+ variants: { variant: {
208
+ default: "bg-muted text-foreground [&>svg]:text-muted-foreground",
209
+ warning: "bg-[var(--bg-warning-subtle)] text-[var(--content-warning-bold)]",
210
+ critical: "bg-[var(--bg-error-subtle)] text-[var(--content-error-bold)]"
211
+ } },
212
+ defaultVariants: { variant: "default" }
213
+ });
214
+ /** Escalate the variant as the balance drops. */
215
+ function resolveVariant(value, lowThreshold) {
216
+ if (value <= 0) return "critical";
217
+ if (value <= lowThreshold) return "warning";
218
+ return "default";
219
+ }
220
+ /** Whole-number, thousands-separated (e.g. 9995.79 → "9,995"). */
221
+ function formatCredits(value) {
222
+ return Math.floor(value).toLocaleString();
223
+ }
224
+ function Credits({ className, value, variant, lowThreshold = 200, icon, format = formatCredits, ...props }) {
225
+ const resolved = variant ?? resolveVariant(value, lowThreshold);
226
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
227
+ "data-slot": "credits",
228
+ "data-variant": resolved,
229
+ className: require_utils.cn(creditsVariants({ variant: resolved }), className),
230
+ ...props,
231
+ children: [icon ?? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.CirclePlus, { "aria-hidden": "true" }), format(value)]
232
+ });
233
+ }
234
+ //#endregion
235
+ //#region src/primitives/DropdownMenu/DropdownMenu.tsx
236
+ function DropdownMenu({ ...props }) {
237
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Root, {
238
+ "data-slot": "dropdown-menu",
239
+ ...props
240
+ });
241
+ }
242
+ function DropdownMenuPortal({ ...props }) {
243
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Portal, {
244
+ "data-slot": "dropdown-menu-portal",
245
+ ...props
246
+ });
247
+ }
248
+ function DropdownMenuTrigger({ ...props }) {
249
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Trigger, {
250
+ "data-slot": "dropdown-menu-trigger",
251
+ ...props
252
+ });
253
+ }
254
+ function DropdownMenuContent({ className, sideOffset = 4, ...props }) {
255
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Portal, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Content, {
256
+ "data-slot": "dropdown-menu-content",
257
+ sideOffset,
258
+ className: require_utils.cn("z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95", className),
259
+ ...props
260
+ }) });
261
+ }
262
+ function DropdownMenuGroup({ ...props }) {
263
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Group, {
264
+ "data-slot": "dropdown-menu-group",
265
+ ...props
266
+ });
267
+ }
268
+ function DropdownMenuItem({ className, inset, variant = "default", ...props }) {
269
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Item, {
270
+ "data-slot": "dropdown-menu-item",
271
+ "data-inset": inset,
272
+ "data-variant": variant,
273
+ className: require_utils.cn("relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:text-destructive!", className),
274
+ ...props
275
+ });
276
+ }
277
+ function DropdownMenuCheckboxItem({ className, children, checked, ...props }) {
278
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(radix_ui.DropdownMenu.CheckboxItem, {
279
+ "data-slot": "dropdown-menu-checkbox-item",
280
+ className: require_utils.cn("relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
281
+ checked,
282
+ ...props,
283
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
284
+ className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",
285
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.ItemIndicator, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.CheckIcon, { className: "size-4" }) })
286
+ }), children]
287
+ });
288
+ }
289
+ function DropdownMenuRadioGroup({ ...props }) {
290
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.RadioGroup, {
291
+ "data-slot": "dropdown-menu-radio-group",
292
+ ...props
293
+ });
294
+ }
295
+ function DropdownMenuRadioItem({ className, children, ...props }) {
296
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(radix_ui.DropdownMenu.RadioItem, {
297
+ "data-slot": "dropdown-menu-radio-item",
298
+ className: require_utils.cn("relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
299
+ ...props,
300
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
301
+ className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",
302
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.ItemIndicator, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.CircleIcon, { className: "size-2 fill-current" }) })
303
+ }), children]
304
+ });
305
+ }
306
+ function DropdownMenuLabel({ className, inset, ...props }) {
307
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Label, {
308
+ "data-slot": "dropdown-menu-label",
309
+ "data-inset": inset,
310
+ className: require_utils.cn("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", className),
311
+ ...props
312
+ });
313
+ }
314
+ function DropdownMenuSeparator({ className, ...props }) {
315
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Separator, {
316
+ "data-slot": "dropdown-menu-separator",
317
+ className: require_utils.cn("-mx-1 my-1 h-px bg-border", className),
318
+ ...props
319
+ });
320
+ }
321
+ function DropdownMenuShortcut({ className, ...props }) {
322
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
323
+ "data-slot": "dropdown-menu-shortcut",
324
+ className: require_utils.cn("ml-auto text-xs tracking-widest text-muted-foreground", className),
325
+ ...props
326
+ });
327
+ }
328
+ function DropdownMenuSub({ ...props }) {
329
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.Sub, {
330
+ "data-slot": "dropdown-menu-sub",
331
+ ...props
332
+ });
333
+ }
334
+ function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
335
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(radix_ui.DropdownMenu.SubTrigger, {
336
+ "data-slot": "dropdown-menu-sub-trigger",
337
+ "data-inset": inset,
338
+ className: require_utils.cn("flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[inset]:pl-8 data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground", className),
339
+ ...props,
340
+ children: [children, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.ChevronRightIcon, { className: "ml-auto size-4" })]
341
+ });
342
+ }
343
+ function DropdownMenuSubContent({ className, ...props }) {
344
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.DropdownMenu.SubContent, {
345
+ "data-slot": "dropdown-menu-sub-content",
346
+ className: require_utils.cn("z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95", className),
347
+ ...props
348
+ });
349
+ }
350
+ //#endregion
351
+ //#region src/primitives/Heading/Heading.tsx
352
+ const headingVariants = (0, class_variance_authority.cva)("font-heading text-balance", {
353
+ variants: {
354
+ size: {
355
+ "1": "text-[length:var(--heading-1-font-size)] leading-[var(--heading-1-line-height)] font-normal",
356
+ "2": "text-[length:var(--heading-2-font-size)] leading-[var(--heading-2-line-height)] font-normal",
357
+ "3": "text-[length:var(--heading-3-font-size)] leading-[var(--heading-3-line-height)] font-normal",
358
+ "4": "text-[length:var(--heading-4-font-size)] leading-[var(--heading-4-line-height)] font-normal",
359
+ "5": "text-[length:var(--heading-5-font-size)] leading-[var(--heading-5-line-height)] font-medium",
360
+ "6": "text-[length:var(--heading-6-font-size)] leading-[var(--heading-6-line-height)] font-medium",
361
+ "7": "text-[length:var(--heading-7-font-size)] leading-[var(--heading-7-line-height)] font-medium"
362
+ },
363
+ weight: {
364
+ normal: "font-normal",
365
+ medium: "font-medium",
366
+ semibold: "font-semibold"
367
+ },
368
+ align: {
369
+ left: "text-left",
370
+ center: "text-center",
371
+ right: "text-right"
372
+ },
373
+ gradient: {
374
+ true: "bg-gradient-to-r from-[var(--gradient-heading-from)] to-[var(--gradient-heading-to)] bg-clip-text text-transparent",
375
+ false: "text-foreground"
376
+ }
377
+ },
378
+ defaultVariants: {
379
+ size: "2",
380
+ gradient: false
381
+ }
382
+ });
383
+ function Heading({ as, className, size, weight, align, gradient, ...props }) {
384
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(as ?? "h2", {
385
+ "data-slot": "heading",
386
+ className: require_utils.cn(headingVariants({
387
+ size,
388
+ weight,
389
+ align,
390
+ gradient
391
+ }), className),
392
+ ...props
393
+ });
394
+ }
395
+ //#endregion
396
+ //#region src/primitives/Input/Input.tsx
397
+ const inputVariants = (0, class_variance_authority.cva)(require_utils.cn("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input bg-input-background flex w-full min-w-0 border transition-[color,box-shadow] outline-none file:inline-flex file:border-0 file:bg-transparent file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50", "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]", "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive"), {
398
+ variants: {
399
+ size: {
400
+ xs: "h-6 px-2 py-0.5 text-xs file:h-5 file:text-xs",
401
+ sm: "h-8 px-2.5 py-1 text-sm file:h-6 file:text-xs",
402
+ default: "h-9 px-3 py-1 text-base md:text-sm file:h-7 file:text-sm",
403
+ lg: "h-10 px-4 py-2 text-base file:h-8 file:text-sm"
404
+ },
405
+ shape: {
406
+ default: "rounded-md",
407
+ round: "rounded-full"
408
+ }
409
+ },
410
+ defaultVariants: {
411
+ size: "default",
412
+ shape: "default"
413
+ }
414
+ });
415
+ function Input({ className, type, size, shape, ...props }) {
416
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
417
+ type,
418
+ "data-slot": "input",
419
+ className: require_utils.cn(inputVariants({
420
+ size,
421
+ shape
422
+ }), className),
423
+ ...props
424
+ });
425
+ }
426
+ //#endregion
427
+ //#region src/primitives/Logo/marks/bodhi-icon.tsx
428
+ function BodhiIcon(props) {
429
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
430
+ width: "64",
431
+ height: "64",
432
+ viewBox: "0 0 64 64",
433
+ fill: "none",
434
+ xmlns: "http://www.w3.org/2000/svg",
435
+ ...props,
436
+ style: { fill: "var(--red-500)" },
437
+ children: [
438
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
439
+ d: "M63.3 32.5c0 17.32-14.06 32.05-31.4 32.05C14.55 64.55.5 49.82.5 32.5A31.4 31.4 0 0 1 31.9 1.13 31.4 31.4 0 0 1 63.3 32.5",
440
+ fill: "white"
441
+ }),
442
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M32 .55a32 32 0 0 1 2.64 63.9l-.79-11.57.4-1.01 8.6-8.79a2.38 2.38 0 0 0 4.42-.85l8.54-.87a2.39 2.39 0 1 0 2.74-2.9l.17-9.7c.9-.04 1.6-.75 1.6-1.68a1.69 1.69 0 0 0-2.59-1.42L52.1 18a2.28 2.28 0 0 0-3.36-3.09l-4.88-4.22q.1-.28.1-.59a1.69 1.69 0 0 0-3.17-.8l-6.55-1.27a1.69 1.69 0 0 0-3.32-.01l-6.6 1.29a1.7 1.7 0 0 0-3.08 1.38l-4.88 4.22q-.23-.24-.55-.42a2.29 2.29 0 0 0-2.8 3.51l-5.64 7.66a1.7 1.7 0 0 0-.91-.27 1.69 1.69 0 0 0-.08 3.37l.17 9.85a2.39 2.39 0 1 0 3.26 2.8l8.02.82a2.38 2.38 0 0 0 4.06 1.34l8.4 9.04-.78 11.86C13 63.2 0 50.24 0 32.56a32 32 0 0 1 32-32" }),
443
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M40.52 35.07a2.4 2.4 0 0 0 1.97.3l1.43 4.35c-.82.37-1.4 1.2-1.4 2.17v.07l-8.9 6.9-.2-7.96z" }),
444
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "m30.84 40.87-.42 7.95-7.96-6.2a2.37 2.37 0 0 0-1.28-2.9l1.5-4.54c.62 0 1.2-.25 1.62-.65z" }),
445
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M12.55 33.23a2.6 2.6 0 0 0 2.65.18l3.71 6.47a2.4 2.4 0 0 0-1.1 2.13l-7.95-.81q.04-.2.04-.4c0-.95-.55-1.76-1.35-2.15z" }),
446
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M56.68 38.9a2.4 2.4 0 0 0-.91 2.25l-8.48.86v-.12c0-.85-.44-1.59-1.1-2.01l3.7-6.47a2.6 2.6 0 0 0 2.63-.16z" }),
447
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M39.82 31.79a2.4 2.4 0 0 0 .52 3.15l-6.93 5.69-.28-11.4q.49-.24.81-.64z" }),
448
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M30.6 28.93q.38.3.84.43l-.59 11.22-6.4-6.2a2.4 2.4 0 0 0 .47-2.36z" }),
449
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M20.28 32.92c.07 1.19 1 2.14 2.17 2.25l-1.47 4.47a2.4 2.4 0 0 0-1.88.13l-3.7-6.47q.57-.35.91-.94z" }),
450
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M48.78 32.36q.35.59.92.94L46 39.77a2 2 0 0 0-.8-.25l-.3-.02q-.4 0-.78.14L42.7 35.3c.89-.35 1.52-1.21 1.52-2.23v-.06z" }),
451
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M57.25 28.04c.28.4.73.68 1.25.72l-.17 9.66h-.2q-.68 0-1.21.32l-4.17-5.66a2.6 2.6 0 0 0 .84-2.84z" }),
452
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M11.5 30.24a2.6 2.6 0 0 0 .87 2.86l-4.02 5.47a2.4 2.4 0 0 0-1.59-.04l-.17-9.77c.52-.04.97-.32 1.25-.72z" }),
453
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M49.21 29.17a2.6 2.6 0 0 0-.53 2.99l-4.49.64a2.4 2.4 0 0 0-1.33-1.87l.85-8.06h.02q.5-.01.88-.25z" }),
454
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M20.49 22.62q.4.24.88.25h.02l.8 7.58a2.4 2.4 0 0 0-1.9 2.25l-3.87-.54a2.6 2.6 0 0 0-.53-3z" }),
455
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M29.83 26.32a2.4 2.4 0 0 0 .55 2.4l-5.57 3.04a2.4 2.4 0 0 0-2.41-1.34l-.8-7.57q.55-.08.93-.44z" }),
456
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M42.57 22.41q.38.37.93.45l-.84 7.98a2.4 2.4 0 0 0-2.54.57l-.18.2-5.87-3.2a2.4 2.4 0 0 0 .4-1.66z" }),
457
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M48.4 17.6a2.3 2.3 0 0 0 2.9.99l.2-.1q.25-.14.44-.33l5.62 7.63a1.7 1.7 0 0 0-.42 2.06l-3.62 2.18a2.64 2.64 0 0 0-4.15-1L44.8 22.5a1.7 1.7 0 0 0 .32-2.28z" }),
458
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M19.98 20.22a1.7 1.7 0 0 0 .33 2.28l-4.58 6.52a2.63 2.63 0 0 0-4.15 1.01l-3.62-2.18a1.7 1.7 0 0 0-.42-2.06l5.61-7.63q.2.18.45.32c1.1.61 2.48.22 3.1-.88z" }),
459
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "m42.06 20.92-.02.27q.01.61.38 1.06l-8 4.28a2.4 2.4 0 0 0-1.91-1.81l.08-4.14c.83 0 1.51-.6 1.65-1.4z" }),
460
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M30.94 19.3c.16.67.73 1.19 1.44 1.27l-.08 4.12-.2-.01c-.98 0-1.82.6-2.19 1.44l-7.23-3.87a1.7 1.7 0 0 0 .36-1.3z" }),
461
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M21.33 10.9c.25.46.71.8 1.26.87l.23.02c.48 0 .9-.2 1.21-.51l7.42 6.37a1.7 1.7 0 0 0-.55 1.43L23 20.74a1.69 1.69 0 0 0-2.88-.69L16.8 17.4c.34-.78.21-1.68-.3-2.33z" }),
462
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M48.6 15.07c-.51.65-.64 1.54-.3 2.33l-3.32 2.65a1.68 1.68 0 0 0-2.87.66l-7.85-1.75v-.06q0-.54-.29-.96l7.15-6.61a1.68 1.68 0 0 0 2.65-.44z" }),
463
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M40.7 9.5a1.7 1.7 0 0 0 .27 1.67l-7.13 6.6c-.3-.32-.72-.54-1.19-.56L32.8 10c.83-.11 1.48-.82 1.48-1.68v-.06z" }),
464
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M30.89 8.32c0 .93.75 1.68 1.69 1.68l-.14 7.22q-.46.04-.82.29l-7.45-6.4a1.7 1.7 0 0 0 .23-1.6l6.5-1.27z" })
465
+ ]
466
+ });
467
+ }
468
+ //#endregion
469
+ //#region src/primitives/Logo/marks/bodhi-logo.tsx
470
+ function BodhiLogo(props) {
471
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
472
+ width: "101",
473
+ height: "37",
474
+ viewBox: "0 0 101 37",
475
+ fill: "none",
476
+ xmlns: "http://www.w3.org/2000/svg",
477
+ ...props,
478
+ style: {
479
+ "--logo-circle-bg": "var(--background)",
480
+ "--logo-icon-red": "var(--red-500)",
481
+ "--logo-text-dark": "var(--foreground)"
482
+ },
483
+ children: [
484
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
485
+ d: "M35.6 18.28c0 9.74-7.9 18.03-17.66 18.03S.28 28.02.28 18.28 8.18.64 17.94.64s17.67 7.9 17.67 17.64",
486
+ fill: "var(--logo-circle-bg)"
487
+ }),
488
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
489
+ d: "M18 .31a18 18 0 0 1 1.48 35.95l-.44-6.52.23-.56 4.83-4.95a1.34 1.34 0 0 0 2.49-.47l4.8-.5a1.34 1.34 0 1 0 1.55-1.63l.09-5.45c.5-.02.9-.42.9-.95a.95.95 0 0 0-1.46-.8l-3.17-4.3a1.28 1.28 0 0 0-1.89-1.74L24.67 6q.06-.15.06-.33a.95.95 0 0 0-1.79-.45l-3.68-.71a.95.95 0 0 0-1.87 0l-3.71.71a.95.95 0 0 0-1.73.78L9.2 8.4a1.29 1.29 0 0 0-1.89 1.74l-3.16 4.3a1 1 0 0 0-.52-.15.95.95 0 0 0-.04 1.9l.1 5.54a1.34 1.34 0 1 0 1.83 1.57l4.5.47a1.34 1.34 0 0 0 2.3.75l4.72 5.08-.44 6.68C7.3 35.55 0 28.26 0 18.3a18 18 0 0 1 18-18",
490
+ fill: "var(--logo-icon-red)"
491
+ }),
492
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
493
+ d: "M22.8 19.73a1.3 1.3 0 0 0 1.1.16l.8 2.45c-.46.21-.78.68-.78 1.22v.04l-5.01 3.89L18.8 23z",
494
+ fill: "var(--logo-icon-red)"
495
+ }),
496
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
497
+ d: "m17.35 22.99-.24 4.47-4.47-3.49a1.34 1.34 0 0 0-.73-1.63l.85-2.55q.54-.01.9-.37z",
498
+ fill: "var(--logo-icon-red)"
499
+ }),
500
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
501
+ d: "M7.06 18.7a1.5 1.5 0 0 0 1.5.1l2.08 3.63a1.3 1.3 0 0 0-.62 1.2l-4.47-.45.02-.23c0-.53-.31-.99-.76-1.2z",
502
+ fill: "var(--logo-icon-red)"
503
+ }),
504
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
505
+ d: "M31.88 21.88a1.3 1.3 0 0 0-.51 1.26l-4.77.5v-.08c0-.47-.25-.9-.62-1.13l2.09-3.64a1.5 1.5 0 0 0 1.47-.09z",
506
+ fill: "var(--logo-icon-red)"
507
+ }),
508
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
509
+ d: "M22.4 17.88a1.34 1.34 0 0 0 .3 1.78l-3.9 3.2-.16-6.42q.26-.13.45-.36z",
510
+ fill: "var(--logo-icon-red)"
511
+ }),
512
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
513
+ d: "M17.22 16.27q.2.17.46.25l-.33 6.3-3.6-3.48a1.3 1.3 0 0 0 .27-1.33z",
514
+ fill: "var(--logo-icon-red)"
515
+ }),
516
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
517
+ d: "M11.41 18.52c.04.67.56 1.2 1.22 1.26l-.83 2.52a1.3 1.3 0 0 0-1.06.07l-2.08-3.64q.32-.2.52-.53z",
518
+ fill: "var(--logo-icon-red)"
519
+ }),
520
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
521
+ d: "M27.44 18.2q.2.33.52.53l-2.09 3.64a1 1 0 0 0-.45-.14l-.16-.01q-.23 0-.44.08l-.8-2.45c.5-.19.85-.68.85-1.25v-.03z",
522
+ fill: "var(--logo-icon-red)"
523
+ }),
524
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
525
+ d: "M32.2 15.77q.26.36.7.4l-.09 5.44h-.12q-.37 0-.67.18l-2.35-3.18a1.5 1.5 0 0 0 .47-1.6z",
526
+ fill: "var(--logo-icon-red)"
527
+ }),
528
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
529
+ d: "M6.47 17.01a1.5 1.5 0 0 0 .49 1.61L4.7 21.7a1.3 1.3 0 0 0-.9-.02l-.1-5.5q.47-.04.71-.4z",
530
+ fill: "var(--logo-icon-red)"
531
+ }),
532
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
533
+ d: "M27.68 16.4a1.5 1.5 0 0 0-.3 1.69l-2.52.36a1.3 1.3 0 0 0-.75-1.05l.48-4.53q.29-.01.5-.14z",
534
+ fill: "var(--logo-icon-red)"
535
+ }),
536
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
537
+ d: "M11.53 12.73q.2.13.49.14h.01l.45 4.26c-.6.12-1.05.64-1.07 1.27l-2.17-.31a1.5 1.5 0 0 0-.3-1.68z",
538
+ fill: "var(--logo-icon-red)"
539
+ }),
540
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
541
+ d: "M16.78 14.8a1.3 1.3 0 0 0 .31 1.36l-3.13 1.7a1.3 1.3 0 0 0-1.36-.75l-.45-4.25q.3-.05.52-.26z",
542
+ fill: "var(--logo-icon-red)"
543
+ }),
544
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
545
+ d: "M23.94 12.6q.23.21.53.26l-.48 4.49a1.3 1.3 0 0 0-1.43.32l-.1.11-3.3-1.8a1.3 1.3 0 0 0 .23-.93z",
546
+ fill: "var(--logo-icon-red)"
547
+ }),
548
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
549
+ d: "M27.23 9.9c.32.58 1.02.81 1.62.55l.12-.05q.14-.08.25-.18l3.16 4.29a.95.95 0 0 0-.24 1.16l-2.04 1.22a1.5 1.5 0 0 0-2.33-.57l-2.58-3.66a.95.95 0 0 0 .19-1.29z",
550
+ fill: "var(--logo-icon-red)"
551
+ }),
552
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
553
+ d: "M11.24 11.37a.95.95 0 0 0 .19 1.29l-2.58 3.66a1.48 1.48 0 0 0-2.33.57l-2.04-1.22a.94.94 0 0 0-.24-1.17l3.16-4.28q.11.1.25.18c.62.34 1.4.12 1.74-.5z",
554
+ fill: "var(--logo-icon-red)"
555
+ }),
556
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
557
+ d: "m23.66 11.77-.01.15q0 .34.21.6l-4.5 2.4a1.3 1.3 0 0 0-1.07-1.01l.04-2.33c.47 0 .85-.35.93-.8z",
558
+ fill: "var(--logo-icon-red)"
559
+ }),
560
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
561
+ d: "M17.4 10.85c.1.38.41.67.81.72l-.04 2.32h-.11c-.55 0-1.03.33-1.23.8l-4.07-2.18a1 1 0 0 0 .2-.73z",
562
+ fill: "var(--logo-icon-red)"
563
+ }),
564
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
565
+ d: "M12 6.13c.14.26.4.45.7.5h.14q.4 0 .68-.29l4.17 3.59a1 1 0 0 0-.3.8l-4.46.93a.95.95 0 0 0-1.61-.38L9.45 9.79c.2-.44.12-.95-.17-1.31z",
566
+ fill: "var(--logo-icon-red)"
567
+ }),
568
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
569
+ d: "M27.34 8.48c-.3.36-.36.87-.17 1.3l-1.87 1.5a.95.95 0 0 0-1.61.37l-4.42-.99v-.03q0-.3-.16-.54l4.02-3.72a.95.95 0 0 0 1.49-.24z",
570
+ fill: "var(--logo-icon-red)"
571
+ }),
572
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
573
+ d: "M22.9 5.35a1 1 0 0 0 .15.94L19.03 10a1 1 0 0 0-.66-.32l.08-4.06a.95.95 0 0 0 .82-.94v-.04z",
574
+ fill: "var(--logo-icon-red)"
575
+ }),
576
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
577
+ d: "M17.38 4.68c0 .52.42.95.94.95l-.07 4.05a1 1 0 0 0-.47.17l-4.18-3.6a1 1 0 0 0 .13-.9l3.65-.71z",
578
+ fill: "var(--logo-icon-red)"
579
+ }),
580
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
581
+ "fill-rule": "evenodd",
582
+ "clip-rule": "evenodd",
583
+ d: "M66.27 5.17a.5.5 0 0 0 .49-.5.5.5 0 0 0-.5-.5.5.5 0 0 0-.48.5c0 .28.22.5.49.5",
584
+ fill: "var(--logo-text-dark)"
585
+ }),
586
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
587
+ "fill-rule": "evenodd",
588
+ "clip-rule": "evenodd",
589
+ d: "M65.88 12.73h.76V6.1h-.76z",
590
+ fill: "var(--logo-text-dark)"
591
+ }),
592
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
593
+ "fill-rule": "evenodd",
594
+ "clip-rule": "evenodd",
595
+ d: "M50.72 9.4c0-1.38 1.06-2.5 2.37-2.5 1.3 0 2.37 1.12 2.37 2.5v.1c-.05 1.37-1.1 2.44-2.37 2.44-1.28 0-2.37-1.14-2.37-2.54m2.37 3.32c.92 0 1.77-.41 2.37-1.15v1.16h.76V6.1h-.76v1.14a3 3 0 0 0-2.37-1.14 3.2 3.2 0 0 0-3.13 3.3c0 1.8 1.4 3.31 3.13 3.31",
596
+ fill: "var(--logo-text-dark)"
597
+ }),
598
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
599
+ "fill-rule": "evenodd",
600
+ "clip-rule": "evenodd",
601
+ d: "M61.35 11.94c-1.28 0-2.32-1.07-2.37-2.43v-.1c0-1.4 1.06-2.52 2.37-2.52 1.3 0 2.37 1.13 2.37 2.51 0 1.39-1.07 2.54-2.37 2.54m3.13-2.54c0-1.81-1.4-3.29-3.13-3.29-.93 0-1.78.41-2.37 1.14V6.1h-.76v9h.76v-3.53c.6.73 1.45 1.14 2.37 1.14 1.72 0 3.13-1.49 3.13-3.32",
602
+ fill: "var(--logo-text-dark)"
603
+ }),
604
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
605
+ "fill-rule": "evenodd",
606
+ "clip-rule": "evenodd",
607
+ d: "M78.73 6.11c-.72 0-1.4.3-1.9.84V6.1h-.74v6.62h.73V8.8a1.95 1.95 0 0 1 1.9-1.93c1.03 0 1.9.86 1.9 1.93v3.92h.75V8.8c0-1.49-1.19-2.7-2.64-2.7",
608
+ fill: "var(--logo-text-dark)"
609
+ }),
610
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
611
+ "fill-rule": "evenodd",
612
+ "clip-rule": "evenodd",
613
+ d: "m85.3 11.97-.07.02q-.11.04-.37.05-.44.02-.44-.67v-4.5h.9V6.1h-.9V3.89h-.78V6.1h-.9v.76h.9v4.53q0 .74.28 1.01.27.3.77.31.37 0 .61-.1l.05-.01z",
614
+ fill: "var(--logo-text-dark)"
615
+ }),
616
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
617
+ "fill-rule": "evenodd",
618
+ "clip-rule": "evenodd",
619
+ d: "M71.42 6.88c1.11 0 2.07.83 2.3 1.97h-4.65a2.4 2.4 0 0 1 2.34-1.97m1.98 3.94a2.3 2.3 0 0 1-1.99 1.14 2.46 2.46 0 0 1-2.39-2.36h5.14c.2 0 .37-.15.37-.35v-.06c-.13-1.75-1.47-3.08-3.12-3.08a3.24 3.24 0 0 0-3.14 3.32c0 1.83 1.41 3.3 3.14 3.3 1.06 0 2.04-.56 2.61-1.5z",
620
+ fill: "var(--logo-text-dark)"
621
+ }),
622
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
623
+ "fill-rule": "evenodd",
624
+ "clip-rule": "evenodd",
625
+ d: "M48.2 9.53s-.2-.16-.41-.25c-.22-.09-.52-.2-1.16-.35q-.12-.04-.25-.06-.63-.17-1-.44-.33-.28-.3-.61.01-.39.4-.67.45-.34 1.18-.3c.54.02.95.3 1.39.62l.04.03.55-.53-.26-.2c-.44-.3-.97-.62-1.69-.65q-.95-.04-1.6.38c-.47.32-.77.79-.77 1.28-.01.37.07.72.43 1.08.43.43 1.1.65 1.72.77.53.1 1.02.3 1.26.51.3.28.4.48.4.77q-.02.42-.48.72c-.3.23-.73.35-1.18.33a3.2 3.2 0 0 1-1.82-.78l-.04-.04-.54.51.05.05q1.09.95 2.31 1.02a2.6 2.6 0 0 0 1.64-.46q.77-.54.81-1.32a1.7 1.7 0 0 0-.68-1.41",
626
+ fill: "var(--logo-text-dark)"
627
+ }),
628
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
629
+ d: "M53.33 27.23a2.75 2.75 0 1 0-5.5-.02 2.77 2.77 0 0 0 2.76 2.74 2.77 2.77 0 0 0 2.74-2.72m-7.96-12.08h2.76v8.42Q49.5 22 51.39 22c2.7 0 4.76 2.24 4.76 5.2 0 3.04-2.04 5.22-4.82 5.22a3.9 3.9 0 0 1-3.2-1.58v1.28h-2.76zm15.19 12.02a2.74 2.74 0 0 0 2.76 2.78 2.8 2.8 0 0 0 2.78-2.74 2.8 2.8 0 0 0-2.78-2.74 2.8 2.8 0 0 0-2.76 2.7m-2.84-.04c0-2.98 2.38-5.14 5.62-5.14s5.58 2.16 5.58 5.2c0 3.16-2.36 5.22-5.64 5.22-3.34 0-5.56-2.18-5.56-5.28m21.1.1a2.76 2.76 0 0 0-2.75-2.76 2.76 2.76 0 0 0-2.74 2.74c0 1.5 1.24 2.74 2.74 2.74a2.8 2.8 0 0 0 2.74-2.72m-.3-3.66v-8.42h2.75v16.96h-2.76v-1.28a3.9 3.9 0 0 1-3.2 1.58c-2.76 0-4.82-2.22-4.82-5.22 0-2.92 2.06-5.2 4.76-5.2q1.92.01 3.26 1.58m5.34 8.54V15.15h2.76v8.44a3.6 3.6 0 0 1 3.06-1.6c1.4 0 2.3.52 2.96 1.34.52.66.68 1.54.68 2.62v6.16h-2.76v-5.38c0-1.74-.5-2.4-1.86-2.4q-2.09 0-2.08 2.76v5.02zm12.01-9.8h2.76v9.8h-2.76zm-.26-4.14c0-.9.74-1.64 1.64-1.64s1.64.74 1.64 1.64-.74 1.64-1.64 1.64-1.64-.74-1.64-1.64",
630
+ fill: "var(--logo-text-dark)"
631
+ })
632
+ ]
633
+ });
634
+ }
635
+ //#endregion
636
+ //#region src/primitives/Logo/marks/psai-logo.tsx
637
+ function PSAILogo(props) {
638
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
639
+ width: "151",
640
+ height: "38",
641
+ viewBox: "0 0 151 38",
642
+ fill: "none",
643
+ xmlns: "http://www.w3.org/2000/svg",
644
+ ...props,
645
+ style: {
646
+ "--psai-primary-red": "var(--red-500)",
647
+ "--psai-accent-white": "var(--logo-accent)",
648
+ "--psai-text-dark": "var(--foreground)"
649
+ },
650
+ children: [
651
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
652
+ d: "M18.08 0C8.11 0 0 8.29 0 18.47s8.11 18.47 18.08 18.47 18.08-8.28 18.08-18.47S28.06 0 18.08 0",
653
+ fill: "var(--psai-primary-red)"
654
+ }),
655
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
656
+ "fill-rule": "evenodd",
657
+ "clip-rule": "evenodd",
658
+ d: "M31.58 24.2c-.27.66-1.02.97-1.67.7a1.3 1.3 0 0 1-.69-1.7 1.27 1.27 0 0 1 1.67-.7c.65.27.96 1.03.69 1.7",
659
+ fill: "var(--psai-accent-white)"
660
+ }),
661
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
662
+ "fill-rule": "evenodd",
663
+ "clip-rule": "evenodd",
664
+ d: "M23.66 32.26c-.65.28-1.4-.04-1.66-.7-.27-.67.04-1.43.69-1.7.65-.28 1.4.04 1.66.7.27.67-.04 1.43-.69 1.7",
665
+ fill: "var(--psai-accent-white)"
666
+ }),
667
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
668
+ "fill-rule": "evenodd",
669
+ "clip-rule": "evenodd",
670
+ d: "M12.48 32.26a1.3 1.3 0 0 1-.7-1.7 1.27 1.27 0 0 1 1.67-.71c.65.28.96 1.04.7 1.7-.28.67-1.02.98-1.67.7",
671
+ fill: "var(--psai-accent-white)"
672
+ }),
673
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
674
+ "fill-rule": "evenodd",
675
+ "clip-rule": "evenodd",
676
+ d: "M4.57 24.17c-.26-.67.05-1.43.7-1.7.65-.28 1.4.04 1.66.7.27.67-.04 1.43-.7 1.7-.64.28-1.39-.04-1.66-.7",
677
+ fill: "var(--psai-accent-white)"
678
+ }),
679
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
680
+ "fill-rule": "evenodd",
681
+ "clip-rule": "evenodd",
682
+ d: "M4.59 12.74a1.27 1.27 0 0 1 1.66-.7c.65.28.96 1.04.7 1.7-.28.67-1.02.98-1.67.7a1.3 1.3 0 0 1-.7-1.7",
683
+ fill: "var(--psai-accent-white)"
684
+ }),
685
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
686
+ "fill-rule": "evenodd",
687
+ "clip-rule": "evenodd",
688
+ d: "M12.5 4.67c.65-.27 1.4.04 1.67.7.27.67-.04 1.43-.7 1.7-.64.28-1.39-.03-1.66-.7s.04-1.42.7-1.7",
689
+ fill: "var(--psai-accent-white)"
690
+ }),
691
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
692
+ "fill-rule": "evenodd",
693
+ "clip-rule": "evenodd",
694
+ d: "M23.69 4.68c.65.28.95 1.04.68 1.7-.27.67-1.01.98-1.66.7a1.3 1.3 0 0 1-.69-1.7 1.27 1.27 0 0 1 1.67-.7",
695
+ fill: "var(--psai-accent-white)"
696
+ }),
697
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
698
+ "fill-rule": "evenodd",
699
+ "clip-rule": "evenodd",
700
+ d: "M31.59 12.77c.27.67-.04 1.43-.7 1.7-.64.28-1.39-.04-1.66-.7-.27-.67.04-1.43.7-1.7.65-.28 1.39.04 1.66.7",
701
+ fill: "var(--psai-accent-white)"
702
+ }),
703
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
704
+ "fill-rule": "evenodd",
705
+ "clip-rule": "evenodd",
706
+ d: "M19.42 20.97c-1 1.39-1.7 3.64-.39 4.98.89.91.22 2.42-.98 2.42s-1.87-1.5-.98-2.42c1.31-1.34.6-3.59-.39-4.98a9 9 0 0 0-1.04-1.14c-1.37-1-3.58-1.73-4.89-.39-.88.9-2.36.22-2.36-1 0-1.23 1.48-1.91 2.36-1 1.31 1.34 3.52.62 4.89-.4.23-.17.95-.84 1.1-1.07 1-1.4 1.7-3.64.39-4.98-.89-.91-.22-2.42.98-2.42s1.87 1.5.98 2.42c-1.31 1.34-.6 3.59.39 4.98.17.25.82.97 1.04 1.13 1.37 1.02 3.57 1.74 4.89.4.88-.9 2.36-.22 2.36 1 0 1.23-1.48 1.91-2.36 1-1.31-1.34-3.52-.62-4.89.4-.23.17-.95.84-1.1 1.07",
707
+ fill: "var(--psai-accent-white)"
708
+ }),
709
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
710
+ "fill-rule": "evenodd",
711
+ "clip-rule": "evenodd",
712
+ d: "M25.04 11.37c.74.76.74 2 0 2.77-.75.76-1.97.76-2.72 0-.74-.77-.74-2 0-2.77a1.9 1.9 0 0 1 2.72 0",
713
+ fill: "var(--psai-accent-white)"
714
+ }),
715
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
716
+ "fill-rule": "evenodd",
717
+ "clip-rule": "evenodd",
718
+ d: "M25.04 25.57c-.75.77-1.97.77-2.72 0-.74-.76-.74-2 0-2.76a1.9 1.9 0 0 1 2.72 0c.74.76.74 2 0 2.76",
719
+ fill: "var(--psai-accent-white)"
720
+ }),
721
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
722
+ "fill-rule": "evenodd",
723
+ "clip-rule": "evenodd",
724
+ d: "M11.13 25.57c-.75-.76-.75-2 0-2.76a1.9 1.9 0 0 1 2.7 0c.76.76.76 2 0 2.76-.74.77-1.95.77-2.7 0",
725
+ fill: "var(--psai-accent-white)"
726
+ }),
727
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
728
+ "fill-rule": "evenodd",
729
+ "clip-rule": "evenodd",
730
+ d: "M11.13 11.37a1.9 1.9 0 0 1 2.7 0c.76.76.76 2 0 2.77-.74.76-1.95.76-2.7 0-.75-.77-.75-2 0-2.77",
731
+ fill: "var(--psai-accent-white)"
732
+ }),
733
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
734
+ "fill-rule": "evenodd",
735
+ "clip-rule": "evenodd",
736
+ d: "M66.37 5.64a.5.5 0 0 0 .48-.5.5.5 0 0 0-.48-.5.5.5 0 0 0-.5.5c0 .28.23.5.5.5",
737
+ fill: "var(--psai-text-dark)"
738
+ }),
739
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
740
+ "fill-rule": "evenodd",
741
+ "clip-rule": "evenodd",
742
+ d: "M65.98 13.2h.76V6.58h-.76z",
743
+ fill: "var(--psai-text-dark)"
744
+ }),
745
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
746
+ "fill-rule": "evenodd",
747
+ "clip-rule": "evenodd",
748
+ d: "M50.82 9.87c0-1.38 1.06-2.5 2.37-2.5 1.3 0 2.37 1.12 2.37 2.5v.1c-.06 1.37-1.1 2.44-2.37 2.44-1.28 0-2.37-1.14-2.37-2.54m2.37 3.32c.92 0 1.77-.41 2.36-1.14v1.15h.77V6.58h-.77v1.14a3 3 0 0 0-2.36-1.14 3.2 3.2 0 0 0-3.14 3.3c0 1.8 1.4 3.31 3.14 3.31",
749
+ fill: "var(--psai-text-dark)"
750
+ }),
751
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
752
+ "fill-rule": "evenodd",
753
+ "clip-rule": "evenodd",
754
+ d: "M61.45 12.41c-1.28 0-2.32-1.07-2.37-2.43v-.1c0-1.4 1.06-2.52 2.37-2.52 1.3 0 2.36 1.13 2.36 2.51 0 1.39-1.06 2.54-2.36 2.54m3.13-2.54c0-1.81-1.4-3.29-3.13-3.29-.93 0-1.78.41-2.37 1.14V6.58h-.77v9h.77v-3.53c.6.73 1.44 1.14 2.37 1.14 1.72 0 3.13-1.49 3.13-3.32",
755
+ fill: "var(--psai-text-dark)"
756
+ }),
757
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
758
+ "fill-rule": "evenodd",
759
+ "clip-rule": "evenodd",
760
+ d: "M78.83 6.58c-.73 0-1.41.3-1.9.84v-.84h-.74v6.62h.73V9.28a1.95 1.95 0 0 1 1.9-1.93c1.03 0 1.9.86 1.9 1.93v3.92h.75V9.28c0-1.49-1.19-2.7-2.64-2.7",
761
+ fill: "var(--psai-text-dark)"
762
+ }),
763
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
764
+ "fill-rule": "evenodd",
765
+ "clip-rule": "evenodd",
766
+ d: "m85.4 12.44-.07.02q-.11.04-.37.05-.45.02-.44-.67v-4.5h.9v-.76h-.9V4.36h-.78v2.22h-.9v.76h.9v4.53q0 .74.28 1.01.27.3.76.31.38 0 .62-.1l.04-.01z",
767
+ fill: "var(--psai-text-dark)"
768
+ }),
769
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
770
+ "fill-rule": "evenodd",
771
+ "clip-rule": "evenodd",
772
+ d: "M71.51 7.35c1.12 0 2.08.83 2.3 1.97h-4.64a2.4 2.4 0 0 1 2.34-1.97m1.99 3.94a2.3 2.3 0 0 1-1.99 1.14 2.46 2.46 0 0 1-2.39-2.36h5.14c.2 0 .37-.15.37-.35v-.06c-.13-1.75-1.47-3.08-3.12-3.08a3.24 3.24 0 0 0-3.14 3.32c0 1.83 1.4 3.3 3.14 3.3 1.06 0 2.04-.56 2.61-1.5z",
773
+ fill: "var(--psai-text-dark)"
774
+ }),
775
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
776
+ "fill-rule": "evenodd",
777
+ "clip-rule": "evenodd",
778
+ d: "M48.3 10s-.2-.16-.41-.25c-.22-.09-.52-.2-1.16-.35q-.12-.04-.25-.06a3 3 0 0 1-1-.44q-.34-.28-.3-.61.01-.39.4-.67.45-.34 1.18-.3c.53.02.94.3 1.38.62l.05.03.55-.53-.27-.2c-.43-.3-.97-.62-1.68-.65q-.95-.04-1.61.38c-.47.32-.76.79-.77 1.28 0 .38.07.72.44 1.08.43.43 1.1.65 1.72.77.53.1 1.02.3 1.26.51.3.28.4.48.4.77q-.03.42-.49.72c-.3.23-.73.35-1.17.33q-.9-.05-1.82-.78l-.04-.04-.55.51.06.05q1.08.95 2.31 1.02a2.6 2.6 0 0 0 1.64-.46q.77-.54.8-1.32A1.7 1.7 0 0 0 48.3 10",
779
+ fill: "var(--psai-text-dark)"
780
+ }),
781
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
782
+ d: "M53.26 27.7a2.76 2.76 0 0 0-2.74-2.76 2.7 2.7 0 0 0-2.74 2.74c0 1.52 1.2 2.74 2.74 2.74a2.8 2.8 0 0 0 2.74-2.72m-.3-3.66v-1.26h2.76v9.8h-2.76V31.3a3.9 3.9 0 0 1-3.2 1.58c-2.76 0-4.82-2.26-4.82-5.22 0-2.92 2.04-5.2 4.76-5.2q1.92.01 3.26 1.58m5.32-1.26h2.76v9.8h-2.76zm-.26-4.14c0-.9.74-1.64 1.64-1.64s1.64.74 1.64 1.64-.74 1.64-1.64 1.64-1.64-.74-1.64-1.64m17.5 9.06a2.75 2.75 0 1 0-5.5-.02 2.77 2.77 0 0 0 2.76 2.74c1.5 0 2.74-1.26 2.74-2.72m-5.2 3.6v6.5h-2.76V22.78h2.76v1.26a4 4 0 0 1 3.2-1.58c2.76 0 4.82 2.28 4.82 5.22 0 2.96-2.08 5.2-4.76 5.2a4.1 4.1 0 0 1-3.26-1.58m10.11 1.28v-9.8h2.76v1.48q1.02-1.8 2.84-1.8.57 0 1.2.24l-.38 2.58a3 3 0 0 0-1.32-.34q-2.34 0-2.34 2.94v4.7zm10.43-4.94a2.74 2.74 0 0 0 2.76 2.78 2.8 2.8 0 0 0 2.78-2.74 2.8 2.8 0 0 0-2.78-2.74 2.8 2.8 0 0 0-2.76 2.7m-2.84-.04c0-2.98 2.38-5.14 5.62-5.14s5.58 2.16 5.58 5.2c0 3.16-2.36 5.22-5.64 5.22-3.34 0-5.56-2.18-5.56-5.28m21.1.1a2.76 2.76 0 0 0-2.75-2.76 2.76 2.76 0 0 0-2.74 2.74c0 1.5 1.24 2.74 2.74 2.74a2.8 2.8 0 0 0 2.74-2.72m-.3-3.66v-8.42h2.75v16.96h-2.76V31.3a3.9 3.9 0 0 1-3.2 1.58c-2.76 0-4.82-2.22-4.82-5.22 0-2.92 2.06-5.2 4.76-5.2q1.92.01 3.26 1.58m5.34-1.26h2.76v5.56q0 2.22 1.98 2.22 2 0 2-2.22v-5.56h2.74v6.02c0 2.62-1.7 4.08-4.74 4.08s-4.74-1.46-4.74-4.08zm19.43.28v2.7a3.6 3.6 0 0 0-2.24-.82 2.7 2.7 0 0 0-2.8 2.74c0 1.6 1.2 2.74 2.8 2.74q1.2 0 2.24-.82v2.7q-1.26.57-2.52.58a5.22 5.22 0 1 1 .04-10.42q1.35 0 2.48.6m2.1 2.08h-1.08v-2.36h1.08v-3.34h2.76v3.34h1.92v2.36h-1.92v2.92c0 1.52.18 2.4 1.2 2.4q.28 0 .5-.04v2.4c-.3.04-.86.06-1.16.06-2.14 0-3.3-1.58-3.3-3.84zm13.16-1.68-1.36 1.6a2.7 2.7 0 0 0-1.62-.64c-.6 0-1.06.36-1.06.82 0 .48.26.64 1.56 1.1 2.28.8 2.98 1.48 2.98 3.04 0 2.06-1.7 3.52-4.1 3.52a4.8 4.8 0 0 1-3.72-1.62l1.42-1.68q1.14 1.15 2.32 1.16c.7 0 1.24-.46 1.24-1.08 0-.54-.22-.78-1.5-1.24-2.38-.84-2.86-1.48-2.86-2.9 0-1.9 1.54-3.12 3.5-3.12q1.8 0 3.2 1.04",
783
+ fill: "var(--psai-text-dark)"
784
+ })
785
+ ]
786
+ });
787
+ }
788
+ //#endregion
789
+ //#region src/primitives/Logo/marks/slingshot-icon.tsx
790
+ function SlingshotIcon(props) {
791
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
792
+ width: "64",
793
+ height: "64",
794
+ viewBox: "0 0 64 64",
795
+ fill: "none",
796
+ xmlns: "http://www.w3.org/2000/svg",
797
+ ...props,
798
+ style: { fill: "var(--red-500)" },
799
+ children: [
800
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M32 0C14.35 0 0 14.35 0 32s14.35 32 32 32 32-14.35 32-32S49.64 0 32 0" }),
801
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
802
+ "fill-rule": "evenodd",
803
+ "clip-rule": "evenodd",
804
+ d: "M55.88 41.92a2.25 2.25 0 1 1-4.15-1.72 2.25 2.25 0 0 1 4.15 1.72",
805
+ fill: "white"
806
+ }),
807
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
808
+ "fill-rule": "evenodd",
809
+ "clip-rule": "evenodd",
810
+ d: "M41.87 55.9a2.26 2.26 0 1 1-1.72-4.18 2.26 2.26 0 0 1 1.72 4.18",
811
+ fill: "white"
812
+ }),
813
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
814
+ "fill-rule": "evenodd",
815
+ "clip-rule": "evenodd",
816
+ d: "M22.08 55.88a2.26 2.26 0 1 1 1.74-4.16 2.26 2.26 0 0 1-1.74 4.16",
817
+ fill: "white"
818
+ }),
819
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
820
+ "fill-rule": "evenodd",
821
+ "clip-rule": "evenodd",
822
+ d: "M8.1 41.87",
823
+ fill: "white"
824
+ }),
825
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
826
+ "fill-rule": "evenodd",
827
+ "clip-rule": "evenodd",
828
+ d: "M8.12 22.08a2.25 2.25 0 1 1 1.22 2.94 2.26 2.26 0 0 1-1.22-2.94",
829
+ fill: "white"
830
+ }),
831
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
832
+ "fill-rule": "evenodd",
833
+ "clip-rule": "evenodd",
834
+ d: "M22.13 8.1a2.26 2.26 0 1 1-1.22 2.94 2.26 2.26 0 0 1 1.22-2.95",
835
+ fill: "white"
836
+ }),
837
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
838
+ "fill-rule": "evenodd",
839
+ "clip-rule": "evenodd",
840
+ d: "M41.92 8.12",
841
+ fill: "white"
842
+ }),
843
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
844
+ "fill-rule": "evenodd",
845
+ "clip-rule": "evenodd",
846
+ d: "M55.9 22.13a2.26 2.26 0 1 1-2.95-1.22 2.26 2.26 0 0 1 2.95 1.22",
847
+ fill: "white"
848
+ }),
849
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
850
+ "fill-rule": "evenodd",
851
+ "clip-rule": "evenodd",
852
+ d: "M34.36 36.32c-1.75 2.42-3 6.33-.68 8.64 1.57 1.58.38 4.19-1.74 4.19s-3.3-2.61-1.73-4.19c2.32-2.32 1.07-6.22-.69-8.64-.3-.42-1.46-1.68-1.85-1.96-2.42-1.75-6.32-3-8.64-.68-1.57 1.57-4.18.39-4.18-1.73s2.61-3.31 4.18-1.74c2.32 2.32 6.23 1.07 8.64-.68.42-.3 1.68-1.47 1.96-1.86 1.76-2.41 3-6.31.69-8.64-1.58-1.57-.4-4.18 1.73-4.18s3.3 2.61 1.73 4.18c-2.31 2.32-1.07 6.23.69 8.64.3.42 1.46 1.68 1.85 1.96 2.42 1.76 6.32 3 8.64.69 1.57-1.58 4.18-.39 4.18 1.73s-2.6 3.31-4.18 1.74c-2.32-2.32-6.22-1.07-8.64.68-.42.3-1.68 1.47-1.96 1.85",
853
+ fill: "white"
854
+ }),
855
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
856
+ "fill-rule": "evenodd",
857
+ "clip-rule": "evenodd",
858
+ d: "M44.3 19.7a3.39 3.39 0 1 1-4.78 4.8 3.39 3.39 0 0 1 4.78-4.8",
859
+ fill: "white"
860
+ }),
861
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
862
+ "fill-rule": "evenodd",
863
+ "clip-rule": "evenodd",
864
+ d: "M44.3 44.3a3.4 3.4 0 1 1-4.79-4.79 3.4 3.4 0 0 1 4.8 4.8",
865
+ fill: "white"
866
+ }),
867
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
868
+ "fill-rule": "evenodd",
869
+ "clip-rule": "evenodd",
870
+ d: "M19.7 44.3a3.39 3.39 0 1 1 4.78-4.79 3.39 3.39 0 0 1-4.79 4.8",
871
+ fill: "white"
872
+ }),
873
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
874
+ "fill-rule": "evenodd",
875
+ "clip-rule": "evenodd",
876
+ d: "M19.7 19.7a3.39 3.39 0 1 1 4.79 4.78 3.39 3.39 0 0 1-4.8-4.78",
877
+ fill: "white"
878
+ })
879
+ ]
880
+ });
881
+ }
882
+ //#endregion
883
+ //#region src/primitives/Logo/marks/slingshot-logo.tsx
884
+ function SlingshotLogo(props) {
885
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
886
+ width: "133",
887
+ height: "36",
888
+ viewBox: "0 0 133 36",
889
+ fill: "none",
890
+ xmlns: "http://www.w3.org/2000/svg",
891
+ ...props,
892
+ style: {
893
+ "--slingshot-primary-red": "var(--red-500)",
894
+ "--slingshot-accent-white": "var(--logo-accent)",
895
+ "--slingshot-text-dark": "var(--foreground)"
896
+ },
897
+ children: [
898
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
899
+ d: "M18 0C8.07 0 0 8.07 0 18s8.07 18 18 18 18-8.07 18-18S27.92 0 18 0",
900
+ fill: "var(--slingshot-primary-red)"
901
+ }),
902
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
903
+ "fill-rule": "evenodd",
904
+ "clip-rule": "evenodd",
905
+ d: "M31.43 23.58a1.27 1.27 0 1 1-2.33-.97 1.27 1.27 0 0 1 2.33.97",
906
+ fill: "var(--slingshot-accent-white)"
907
+ }),
908
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
909
+ "fill-rule": "evenodd",
910
+ "clip-rule": "evenodd",
911
+ d: "M23.55 31.44a1.27 1.27 0 1 1-.96-2.35 1.27 1.27 0 0 1 .96 2.35",
912
+ fill: "var(--slingshot-accent-white)"
913
+ }),
914
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
915
+ "fill-rule": "evenodd",
916
+ "clip-rule": "evenodd",
917
+ d: "M12.42 31.43a1.27 1.27 0 1 1 .98-2.34 1.27 1.27 0 0 1-.98 2.34",
918
+ fill: "var(--slingshot-accent-white)"
919
+ }),
920
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
921
+ "fill-rule": "evenodd",
922
+ "clip-rule": "evenodd",
923
+ d: "M4.55 23.55",
924
+ fill: "var(--slingshot-accent-white)"
925
+ }),
926
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
927
+ "fill-rule": "evenodd",
928
+ "clip-rule": "evenodd",
929
+ d: "M4.57 12.42a1.27 1.27 0 1 1 .69 1.66 1.27 1.27 0 0 1-.7-1.66",
930
+ fill: "var(--slingshot-accent-white)"
931
+ }),
932
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
933
+ "fill-rule": "evenodd",
934
+ "clip-rule": "evenodd",
935
+ d: "M12.45 4.55a1.27 1.27 0 1 1-.7 1.66c-.26-.65.05-1.39.7-1.66",
936
+ fill: "var(--slingshot-accent-white)"
937
+ }),
938
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
939
+ "fill-rule": "evenodd",
940
+ "clip-rule": "evenodd",
941
+ d: "M23.58 4.57",
942
+ fill: "var(--slingshot-accent-white)"
943
+ }),
944
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
945
+ "fill-rule": "evenodd",
946
+ "clip-rule": "evenodd",
947
+ d: "M31.45 12.45a1.27 1.27 0 1 1-1.66-.7c.65-.26 1.39.05 1.66.7",
948
+ fill: "var(--slingshot-accent-white)"
949
+ }),
950
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
951
+ "fill-rule": "evenodd",
952
+ "clip-rule": "evenodd",
953
+ d: "M19.33 20.43c-.99 1.36-1.7 3.56-.39 4.86.89.89.22 2.35-.97 2.35-1.2 0-1.86-1.46-.98-2.35 1.3-1.3.6-3.5-.38-4.86a9 9 0 0 0-1.04-1.1c-1.37-.99-3.56-1.69-4.86-.39-.89.89-2.36.22-2.36-.97 0-1.2 1.47-1.86 2.36-.98 1.3 1.3 3.5.6 4.86-.38.23-.17.94-.82 1.1-1.04.98-1.36 1.69-3.56.38-4.86-.88-.89-.22-2.36.98-2.36s1.86 1.47.97 2.36c-1.3 1.3-.6 3.5.39 4.86.17.23.82.94 1.04 1.1 1.36.99 3.55 1.69 4.86.38.89-.88 2.35-.21 2.35.98 0 1.2-1.46 1.86-2.35.98-1.3-1.3-3.5-.6-4.86.38-.24.17-.94.82-1.1 1.04",
954
+ fill: "var(--slingshot-accent-white)"
955
+ }),
956
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
957
+ "fill-rule": "evenodd",
958
+ "clip-rule": "evenodd",
959
+ d: "M24.92 11.08a1.9 1.9 0 1 1-2.7 2.7 1.9 1.9 0 0 1 2.7-2.7",
960
+ fill: "var(--slingshot-accent-white)"
961
+ }),
962
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
963
+ "fill-rule": "evenodd",
964
+ "clip-rule": "evenodd",
965
+ d: "M24.92 24.92a1.9 1.9 0 1 1-2.7-2.7 1.9 1.9 0 0 1 2.7 2.7",
966
+ fill: "var(--slingshot-accent-white)"
967
+ }),
968
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
969
+ "fill-rule": "evenodd",
970
+ "clip-rule": "evenodd",
971
+ d: "M11.08 24.92a1.9 1.9 0 1 1 2.69-2.7 1.9 1.9 0 0 1-2.7 2.7",
972
+ fill: "var(--slingshot-accent-white)"
973
+ }),
974
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
975
+ "fill-rule": "evenodd",
976
+ "clip-rule": "evenodd",
977
+ d: "M11.08 11.08a1.9 1.9 0 1 1 2.7 2.69 1.9 1.9 0 0 1-2.7-2.69",
978
+ fill: "var(--slingshot-accent-white)"
979
+ }),
980
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
981
+ "fill-rule": "evenodd",
982
+ "clip-rule": "evenodd",
983
+ d: "M66.2 2.12a.5.5 0 0 0 .49-.5.5.5 0 0 0-.49-.5.5.5 0 0 0-.49.5c0 .28.22.5.5.5",
984
+ fill: "var(--slingshot-text-dark)"
985
+ }),
986
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
987
+ "fill-rule": "evenodd",
988
+ "clip-rule": "evenodd",
989
+ d: "M65.81 9.68h.77V3.06h-.77z",
990
+ fill: "var(--slingshot-text-dark)"
991
+ }),
992
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
993
+ "fill-rule": "evenodd",
994
+ "clip-rule": "evenodd",
995
+ d: "M50.65 6.35c0-1.38 1.06-2.51 2.37-2.51 1.3 0 2.37 1.13 2.37 2.51v.1c-.05 1.37-1.1 2.44-2.37 2.44-1.28 0-2.37-1.14-2.37-2.54m2.37 3.32c.92 0 1.77-.42 2.37-1.15v1.16h.76V3.06h-.76V4.2a3 3 0 0 0-2.37-1.14 3.2 3.2 0 0 0-3.13 3.3c0 1.8 1.4 3.31 3.13 3.31",
996
+ fill: "var(--slingshot-text-dark)"
997
+ }),
998
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
999
+ "fill-rule": "evenodd",
1000
+ "clip-rule": "evenodd",
1001
+ d: "M61.28 8.9c-1.28 0-2.32-1.08-2.37-2.44v-.1c0-1.4 1.06-2.52 2.37-2.52 1.3 0 2.37 1.13 2.37 2.51 0 1.39-1.06 2.54-2.37 2.54m3.13-2.55c0-1.81-1.4-3.29-3.13-3.29-.92 0-1.78.41-2.37 1.14V3.06h-.76v9h.76V8.52c.6.74 1.45 1.15 2.37 1.15 1.73 0 3.13-1.49 3.13-3.32",
1002
+ fill: "var(--slingshot-text-dark)"
1003
+ }),
1004
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1005
+ "fill-rule": "evenodd",
1006
+ "clip-rule": "evenodd",
1007
+ d: "M78.66 3.06c-.72 0-1.4.3-1.9.83v-.83h-.74v6.62h.74V5.76a1.95 1.95 0 0 1 1.9-1.93c1.03 0 1.9.86 1.9 1.93v3.92h.74V5.76c0-1.49-1.18-2.7-2.64-2.7",
1008
+ fill: "var(--slingshot-text-dark)"
1009
+ }),
1010
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1011
+ "fill-rule": "evenodd",
1012
+ "clip-rule": "evenodd",
1013
+ d: "m85.24 8.92-.08.02q-.11.04-.37.05-.44.02-.43-.67v-4.5h.9v-.76h-.9V.84h-.78v2.22h-.9v.76h.9v4.52q0 .74.27 1.02.27.3.77.31.38 0 .62-.1l.04-.01z",
1014
+ fill: "var(--slingshot-text-dark)"
1015
+ }),
1016
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1017
+ "fill-rule": "evenodd",
1018
+ "clip-rule": "evenodd",
1019
+ d: "M71.35 3.83c1.12 0 2.07.82 2.3 1.97h-4.64a2.4 2.4 0 0 1 2.34-1.97m1.98 3.94a2.3 2.3 0 0 1-1.98 1.14 2.46 2.46 0 0 1-2.4-2.36h5.14c.21 0 .38-.15.38-.35v-.06c-.14-1.75-1.48-3.08-3.12-3.08a3.24 3.24 0 0 0-3.15 3.32c0 1.83 1.41 3.3 3.15 3.3 1.06 0 2.03-.56 2.6-1.5z",
1020
+ fill: "var(--slingshot-text-dark)"
1021
+ }),
1022
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1023
+ "fill-rule": "evenodd",
1024
+ "clip-rule": "evenodd",
1025
+ d: "M48.13 6.48s-.2-.16-.4-.25c-.22-.09-.53-.2-1.16-.36q-.13-.02-.25-.06-.64-.16-1-.43-.34-.28-.31-.61.01-.39.4-.67.46-.34 1.18-.3c.54.02.95.3 1.39.62l.04.03.55-.53-.26-.2c-.44-.3-.97-.62-1.69-.65q-.94-.04-1.6.38c-.47.32-.77.79-.77 1.28 0 .37.07.72.43 1.08.43.42 1.1.65 1.72.77.53.1 1.02.3 1.27.51.3.28.4.48.4.76q-.04.43-.5.73c-.3.23-.72.35-1.17.33a3 3 0 0 1-1.81-.78l-.05-.04-.54.51.05.05q1.09.95 2.32 1.02A2.6 2.6 0 0 0 48 9.21q.76-.54.8-1.32a1.7 1.7 0 0 0-.68-1.41",
1026
+ fill: "var(--slingshot-text-dark)"
1027
+ }),
1028
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1029
+ d: "M127.12 20.6h-1.22v-2.7h1.22v-3.84h3.1v3.83h2.15v2.71h-2.16v3.35c0 1.74.2 2.75 1.35 2.75l.56-.04v2.75c-.33.04-.96.07-1.3.07-2.4 0-3.7-1.82-3.7-4.4z",
1030
+ fill: "var(--slingshot-text-dark)"
1031
+ }),
1032
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1033
+ d: "M116.04 23.47a3.1 3.1 0 0 0 3.1 3.19 3.14 3.14 0 0 0 0-6.28c-1.71 0-3.1 1.44-3.1 3.1m-2.85-.04c0-3.02 2.33-5.9 5.97-5.9a5.84 5.84 0 0 1 5.92 5.96 5.8 5.8 0 0 1-5.99 5.99c-3.68 0-5.9-3.04-5.9-6.05",
1034
+ fill: "var(--slingshot-text-dark)"
1035
+ }),
1036
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1037
+ d: "m98.89 18.68-1.53 1.83a3 3 0 0 0-1.82-.73c-.67 0-1.19.41-1.19.94s.3.73 1.75 1.26c2.56.92 3.35 1.7 3.35 3.49 0 2.36-1.9 4.03-4.6 4.03a5.4 5.4 0 0 1-4.18-1.86l1.6-1.92q1.28 1.32 2.6 1.33c.78 0 1.4-.53 1.4-1.24 0-.62-.26-.9-1.7-1.42-2.66-.97-3.2-1.7-3.2-3.33 0-2.18 1.73-3.57 3.93-3.57q2-.01 3.59 1.19",
1038
+ fill: "var(--slingshot-text-dark)"
1039
+ }),
1040
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1041
+ d: "M65.46 29.14V17.9h3.1v1.4a4.2 4.2 0 0 1 3.43-1.77c2.22 0 4.09 1.3 4.09 4.34v7.27h-3.1v-6.17c0-1.88-.52-2.76-2.09-2.76s-2.33 1-2.33 3.1v5.83z",
1042
+ fill: "var(--slingshot-text-dark)"
1043
+ }),
1044
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1045
+ d: "M60.17 17.9h3.1v11.23h-3.1zm-.29-3.45c0-1.03.83-1.88 1.84-1.88s1.84.85 1.84 1.88-.83 1.88-1.84 1.88a1.87 1.87 0 0 1-1.84-1.88",
1046
+ fill: "var(--slingshot-text-dark)"
1047
+ }),
1048
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1049
+ d: "m52.22 18.68-1.53 1.83a3 3 0 0 0-1.82-.73c-.67 0-1.19.41-1.19.94s.3.73 1.75 1.26c2.56.92 3.35 1.7 3.35 3.49 0 2.36-1.9 4.03-4.6 4.03A5.4 5.4 0 0 1 44 27.64l1.6-1.92q1.28 1.32 2.6 1.33c.78 0 1.39-.53 1.39-1.24 0-.62-.25-.9-1.68-1.42-2.68-.97-3.21-1.7-3.21-3.33 0-2.18 1.72-3.57 3.92-3.57q2.02-.01 3.6 1.19",
1050
+ fill: "var(--slingshot-text-dark)"
1051
+ }),
1052
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1053
+ d: "M57.17 23.6c0 1.75.3 2.76 1.44 2.76q.2 0 .43-.05v2.75c-.34.05-.74.07-1.04.07-2.74 0-3.92-1.95-3.92-4.54V12.7h3.1z",
1054
+ fill: "var(--slingshot-text-dark)"
1055
+ }),
1056
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1057
+ d: "M104.03 19.36a4 4 0 0 1 3.43-1.83c1.58 0 2.59.6 3.33 1.53.58.76.76 1.77.76 3v7.07h-3.1v-6.17c0-2-.56-2.75-2.09-2.75q-2.34 0-2.33 3.17v5.75h-3.1V12.57h3.1z",
1058
+ fill: "var(--slingshot-text-dark)"
1059
+ }),
1060
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1061
+ "fill-rule": "evenodd",
1062
+ "clip-rule": "evenodd",
1063
+ d: "m89.41 28-.03 1.78q-.08 1.21-.3 1.85c-.7 2.09-2.88 3.53-5.55 3.53-3.19 0-5.61-2.04-5.86-4.7h3.32q.49 2.03 2.6 2.02c1.63 0 2.57-.86 2.72-2.63v-1.77c-4.29 2.94-8.66-.68-8.66-4.59a5.5 5.5 0 0 1 4.98-5.64c1.46 0 2.74.25 3.68 1.47v-1.47h3.1zm-6.04-7.67a3.14 3.14 0 0 0-3.07 3.12 3.1 3.1 0 0 0 3.07 3.16 3.15 3.15 0 0 0 0-6.28",
1064
+ fill: "var(--slingshot-text-dark)"
1065
+ })
1066
+ ]
1067
+ });
1068
+ }
1069
+ //#endregion
1070
+ //#region src/primitives/Logo/marks/sustain-icon.tsx
1071
+ function SustainIcon(props) {
1072
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
1073
+ width: "65",
1074
+ height: "65",
1075
+ viewBox: "0 0 65 65",
1076
+ fill: "none",
1077
+ xmlns: "http://www.w3.org/2000/svg",
1078
+ ...props,
1079
+ style: { fill: "var(--red-500)" },
1080
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1081
+ d: "M63.3 32.5c0 17.32-14.06 32.05-31.4 32.05C14.55 64.55.5 49.82.5 32.5A31.4 31.4 0 0 1 31.9 1.13 31.4 31.4 0 0 1 63.3 32.5",
1082
+ fill: "white"
1083
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M58.8 33.3q2.7 0 5.2.53-.15 3.15-.86 6.1-2.09-.46-4.36-.48v.18a2.05 2.05 0 0 0-3.85.95 2.05 2.05 0 0 0 3.98.66q1.93 0 3.75.43a33 33 0 0 1-2.01 5.09q-.91-.15-1.87-.15a12.65 12.65 0 0 0-12.63 12.62v1.94a32 32 0 0 1-4.94 1.94q-.3-1.32-.37-2.72c.6-.36 1-1.01 1-1.77 0-1.13-.9-2.04-2.04-2.04-1.13 0-2.04.91-2.04 2.04 0 1.14.55 1.62 1.31 1.92q.12 1.54.43 3.05-2.95.71-6.1.85a25.96 25.96 0 0 1 25.4-31.12zm-53.66 0a25.96 25.96 0 0 1 25.41 31.12q-3.15-.14-6.1-.86.33-1.45.43-2.97a2.04 2.04 0 0 0 1.44-1.97c0-1.13-.91-2.04-2.05-2.04s-2.04.91-2.04 2.04c0 .7.36 1.31.89 1.7q-.09 1.42-.38 2.76a31 31 0 0 1-5.1-2.04q.12-.9.13-1.81c0-6.96-5.67-12.62-12.63-12.62H3.3a32 32 0 0 1-1.95-4.97q1.78-.39 3.63-.4a2.05 2.05 0 1 0 1.94-2.7c-1.14 0-1.41.4-1.77 1.01v-.1q-2.2.02-4.28.48-.71-2.96-.86-6.07a27 27 0 0 1 5.12-.5zm41.13 27.8c-.07.48-.1 3.35-.11.07zM5.14 48.38c5.98 0 10.87 4.86 10.87 10.86s0 .6-.05.9a32 32 0 0 1-11.7-11.71c.3 0 .58-.05.88-.05m53.67 0q.48-.01.96.05a32 32 0 0 1-11.78 11.77q-.04-.48-.05-.96c0-5.97 4.87-10.86 10.87-10.86M31.99 11.98a27.8 27.8 0 0 0 21 20.16 27.8 27.8 0 0 0-21 20.16 27.8 27.8 0 0 0-21-20.16 27.8 27.8 0 0 0 21-20.16M3.34 46.71c-.44-.06-3.5-.1-.05-.1zm28.67-23.06a8.8 8.8 0 0 1-8.77 8.77 8.8 8.8 0 0 1 8.77 8.8 8.8 8.8 0 0 1 8.78-8.8A8.8 8.8 0 0 1 32 23.65M30.68.45q.41 2.23.4 4.6A26.07 26.07 0 0 1 5.04 31.01c-4.87 0-4.52-.18-4.99-.53q.2-3.11.96-6.05 1.96.42 4.03.43c.3.73 1.04 1.23 1.9 1.23 1.13 0 2.03-.9 2.03-2.04 0-1.13-.9-2.04-2.04-2.04-1.13 0-1.43.43-1.79 1.06a17 17 0 0 1-3.63-.38 30 30 0 0 1 2.15-5.09q.75.09 1.5.1c6.96 0 12.64-5.67 12.64-12.62V3.76q2.42-1.2 5.06-2 .25 1.32.3 2.71c-.55.38-.9.99-.9 1.7 0 1.13.9 2.03 2.04 2.03a2.04 2.04 0 0 0 .63-3.98q-.06-1.49-.35-2.92c1.96-.45 4-.76 6.07-.83zm2.62 0q3.13.12 6.07.82-.29 1.47-.35 3a2 2 0 0 0-1.29 1.9c0 .85.91 2.03 2.05 2.03a2.03 2.03 0 0 0 1-3.8q.05-1.35.3-2.67 2.7.8 5.15 2.01-.08.64-.08 1.31c0 6.96 5.68 12.63 12.63 12.63h1.64a33 33 0 0 1 2.1 4.99q-1.82.37-3.71.37A2.1 2.1 0 0 0 56.99 22c-1.13 0-2.04.9-2.04 2.04a2.06 2.06 0 0 0 3.93.8q2.13 0 4.14-.45.76 2.95.96 6.07-2.51.51-5.17.53A25.96 25.96 0 0 1 33.27.44zm27.08 17.14c.41.04 3.87.08.04.08zm-44.4-12.5.03-.03c0 5.97-4.87 10.86-10.87 10.86H4.6a32.5 32.5 0 0 1 11.4-11.2zm31.99-.44a32 32 0 0 1 11.47 11.22h-.63A10.9 10.9 0 0 1 47.94 5v-.37z" })]
1084
+ });
1085
+ }
1086
+ //#endregion
1087
+ //#region src/primitives/Logo/marks/sustain-logo.tsx
1088
+ function SustainLogo(props) {
1089
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
1090
+ width: "113",
1091
+ height: "37",
1092
+ viewBox: "0 0 113 37",
1093
+ fill: "none",
1094
+ xmlns: "http://www.w3.org/2000/svg",
1095
+ ...props,
1096
+ style: {
1097
+ "--sustain-circle-bg": "var(--background)",
1098
+ "--sustain-primary-red": "var(--red-500)",
1099
+ "--sustain-accent-white": "var(--foreground)",
1100
+ "--sustain-text-dark": "var(--foreground)"
1101
+ },
1102
+ children: [
1103
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1104
+ d: "M35.6 18.28c0 9.74-7.9 18.03-17.66 18.03S.28 28.02.28 18.28 8.18.64 17.94.64s17.67 7.9 17.67 17.64",
1105
+ fill: "var(--sustain-circle-bg)"
1106
+ }),
1107
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1108
+ d: "M33.08 18.73q1.5 0 2.92.3a18 18 0 0 1-.48 3.43q-1.19-.26-2.45-.27v.1a1.15 1.15 0 0 0-2.17.54c0 .64.5 1.15 1.14 1.15.51 0 .94-.33 1.1-.78q1.09 0 2.1.24-.44 1.48-1.13 2.86-.52-.09-1.04-.08a7.1 7.1 0 0 0-7.1 7.1c0 3.9.02.7.08 1.04a18 18 0 0 1-2.87 1.14q-.16-.74-.21-1.53c.34-.2.57-.57.57-1 0-.63-.51-1.14-1.15-1.14s-1.15.5-1.15 1.15c0 .63.31.9.74 1.07q.06.87.24 1.72-1.66.4-3.43.48-.3-1.43-.3-2.92a14.6 14.6 0 0 1 14.59-14.58z",
1109
+ fill: "var(--sustain-primary-red)"
1110
+ }),
1111
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1112
+ d: "M2.9 18.73a14.6 14.6 0 0 1 14.28 17.5 18 18 0 0 1-3.43-.48q.19-.8.24-1.67c.47-.14.81-.58.81-1.1 0-.64-.5-1.15-1.15-1.15-.63 0-1.14.5-1.14 1.15 0 .4.2.73.5.95q-.05.79-.22 1.55-1.49-.45-2.86-1.14.07-.51.07-1.02c0-3.92-3.2-7.1-7.1-7.1-3.92 0-.69.02-1.01.07Q1.2 24.92.75 23.42a10 10 0 0 1 2.04-.22 1.15 1.15 0 1 0 1.1-1.52c-.64 0-.8.23-1 .57v-.06q-1.24 0-2.4.27A18 18 0 0 1 0 19.04q1.41-.27 2.88-.28z",
1113
+ fill: "var(--sustain-primary-red)"
1114
+ }),
1115
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1116
+ d: "M33.08 27.2q.26-.01.54.04A18 18 0 0 1 27 33.85q-.03-.27-.03-.53c0-3.36 2.73-6.11 6.1-6.11",
1117
+ fill: "var(--sustain-primary-red)"
1118
+ }),
1119
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1120
+ d: "M2.9 27.2A6.1 6.1 0 0 1 9 33.33c0 3.37 0 .34-.02.5a18 18 0 0 1-6.58-6.58q.24-.02.5-.03",
1121
+ fill: "var(--sustain-primary-red)"
1122
+ }),
1123
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1124
+ "fill-rule": "evenodd",
1125
+ "clip-rule": "evenodd",
1126
+ d: "M18 6.74a15.7 15.7 0 0 0 11.8 11.34A15.6 15.6 0 0 0 18 29.42 15.6 15.6 0 0 0 6.17 18.08 15.6 15.6 0 0 0 18 6.74m0 6.56a4.94 4.94 0 0 1-4.93 4.94 4.94 4.94 0 0 1 4.94 4.94 4.96 4.96 0 0 1 4.93-4.94 4.94 4.94 0 0 1-4.93-4.94",
1127
+ fill: "var(--sustain-primary-red)"
1128
+ }),
1129
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1130
+ d: "M18.73.25q1.76.07 3.42.47a11 11 0 0 0-.2 1.68c-.43.17-.72.59-.72 1.07s.5 1.15 1.14 1.15a1.14 1.14 0 0 0 .57-2.14q.02-.77.17-1.5 1.5.44 2.9 1.13-.05.36-.05.73c0 3.92 3.2 7.1 7.1 7.1 3.92 0 .6-.02.9-.05q.72 1.36 1.2 2.86-1.02.21-2.08.21c-.2-.35-.58-.6-1.02-.6-.64 0-1.15.52-1.15 1.16s.51 1.14 1.15 1.14c.48 0 .88-.28 1.06-.69q1.2 0 2.33-.26.42 1.66.54 3.42-1.42.28-2.91.3A14.6 14.6 0 0 1 18.72.25z",
1131
+ fill: "var(--sustain-primary-red)"
1132
+ }),
1133
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1134
+ d: "M17.26.25q.22 1.25.22 2.6c0 8.03-6.6 14.6-14.64 14.6-2.74 0-2.55-.11-2.81-.3q.1-1.77.54-3.4 1.1.23 2.27.23c.17.41.58.7 1.06.7.64 0 1.15-.51 1.15-1.15s-.51-1.15-1.15-1.15-.8.24-1 .6q-1.05 0-2.05-.21.47-1.5 1.2-2.87.43.05.86.06c3.91 0 7.1-3.19 7.1-7.1s0-.48-.04-.72q1.38-.69 2.89-1.15.14.74.17 1.53a1.14 1.14 0 0 0 .64 2.1 1.15 1.15 0 0 0 .35-2.24q-.03-.85-.2-1.65a18 18 0 0 1 3.42-.47z",
1135
+ fill: "var(--sustain-primary-red)"
1136
+ }),
1137
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1138
+ d: "M9 2.84C9 6.2 6.27 8.95 2.9 8.95h-.32A18 18 0 0 1 9 2.65v.2z",
1139
+ fill: "var(--sustain-primary-red)"
1140
+ }),
1141
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1142
+ d: "M26.98 2.62a18 18 0 0 1 6.45 6.3h-.35a6.1 6.1 0 0 1-6.11-6.1V2.6z",
1143
+ fill: "var(--sustain-primary-red)"
1144
+ }),
1145
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1146
+ "fill-rule": "evenodd",
1147
+ "clip-rule": "evenodd",
1148
+ d: "M66.27 5.17a.5.5 0 0 0 .49-.5.5.5 0 0 0-.5-.5.5.5 0 0 0-.48.5c0 .28.22.5.49.5",
1149
+ fill: "var(--sustain-accent-white)"
1150
+ }),
1151
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1152
+ "fill-rule": "evenodd",
1153
+ "clip-rule": "evenodd",
1154
+ d: "M65.88 12.73h.76V6.1h-.76z",
1155
+ fill: "var(--sustain-accent-white)"
1156
+ }),
1157
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1158
+ "fill-rule": "evenodd",
1159
+ "clip-rule": "evenodd",
1160
+ d: "M50.72 9.4c0-1.38 1.06-2.5 2.37-2.5 1.3 0 2.37 1.12 2.37 2.5v.1c-.05 1.37-1.1 2.44-2.37 2.44-1.28 0-2.37-1.14-2.37-2.54m2.37 3.32c.92 0 1.77-.41 2.37-1.15v1.16h.76V6.1h-.76v1.14a3 3 0 0 0-2.37-1.14 3.2 3.2 0 0 0-3.13 3.3c0 1.8 1.4 3.31 3.13 3.31",
1161
+ fill: "var(--sustain-accent-white)"
1162
+ }),
1163
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1164
+ "fill-rule": "evenodd",
1165
+ "clip-rule": "evenodd",
1166
+ d: "M61.35 11.94c-1.28 0-2.32-1.07-2.37-2.43v-.1c0-1.4 1.06-2.52 2.37-2.52 1.3 0 2.37 1.13 2.37 2.51 0 1.39-1.07 2.54-2.37 2.54m3.13-2.54c0-1.81-1.4-3.29-3.13-3.29-.93 0-1.78.41-2.37 1.14V6.1h-.76v9h.76v-3.53c.6.73 1.45 1.14 2.37 1.14 1.72 0 3.13-1.49 3.13-3.32",
1167
+ fill: "var(--sustain-accent-white)"
1168
+ }),
1169
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1170
+ "fill-rule": "evenodd",
1171
+ "clip-rule": "evenodd",
1172
+ d: "M78.73 6.11c-.72 0-1.4.3-1.9.84V6.1h-.74v6.62h.73V8.8a1.95 1.95 0 0 1 1.9-1.93c1.03 0 1.9.86 1.9 1.93v3.92h.75V8.8c0-1.49-1.19-2.7-2.64-2.7",
1173
+ fill: "var(--sustain-accent-white)"
1174
+ }),
1175
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1176
+ "fill-rule": "evenodd",
1177
+ "clip-rule": "evenodd",
1178
+ d: "m85.3 11.97-.07.02q-.11.04-.37.05-.44.02-.44-.67v-4.5h.9V6.1h-.9V3.89h-.78V6.1h-.9v.76h.9v4.53q0 .74.28 1.01.27.3.77.31.37 0 .61-.1l.05-.01z",
1179
+ fill: "var(--sustain-accent-white)"
1180
+ }),
1181
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1182
+ "fill-rule": "evenodd",
1183
+ "clip-rule": "evenodd",
1184
+ d: "M71.42 6.88c1.11 0 2.07.83 2.3 1.97h-4.65a2.4 2.4 0 0 1 2.34-1.97m1.98 3.94a2.3 2.3 0 0 1-1.99 1.14 2.46 2.46 0 0 1-2.39-2.36h5.14c.2 0 .37-.15.37-.35v-.06c-.13-1.75-1.47-3.08-3.12-3.08a3.24 3.24 0 0 0-3.14 3.32c0 1.83 1.41 3.3 3.14 3.3 1.06 0 2.04-.56 2.61-1.5z",
1185
+ fill: "var(--sustain-accent-white)"
1186
+ }),
1187
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1188
+ "fill-rule": "evenodd",
1189
+ "clip-rule": "evenodd",
1190
+ d: "M48.2 9.53s-.2-.16-.41-.25c-.22-.09-.52-.2-1.16-.35q-.12-.04-.25-.06-.63-.17-1-.44-.33-.28-.3-.61.01-.39.4-.67.45-.34 1.18-.3c.54.02.95.3 1.39.62l.04.03.55-.53-.26-.2c-.44-.3-.97-.62-1.69-.65q-.95-.04-1.6.38c-.47.32-.77.79-.77 1.28-.01.37.07.72.43 1.08.43.43 1.1.65 1.72.77.53.1 1.02.3 1.26.51.3.28.4.48.4.77q-.02.42-.48.72c-.3.23-.73.35-1.18.33a3.2 3.2 0 0 1-1.82-.78l-.04-.04-.54.51.05.05q1.09.95 2.31 1.02a2.6 2.6 0 0 0 1.64-.46q.77-.54.81-1.32a1.7 1.7 0 0 0-.68-1.41",
1191
+ fill: "var(--sustain-accent-white)"
1192
+ }),
1193
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1194
+ d: "m52.1 23-1.35 1.6a2.7 2.7 0 0 0-1.62-.65c-.6 0-1.06.36-1.06.82 0 .48.26.64 1.56 1.1 2.28.8 2.98 1.48 2.98 3.04 0 2.06-1.7 3.52-4.1 3.52a4.8 4.8 0 0 1-3.72-1.62l1.42-1.68q1.15 1.15 2.32 1.16c.7 0 1.24-.46 1.24-1.08 0-.54-.22-.78-1.5-1.24-2.38-.84-2.86-1.48-2.86-2.9 0-1.9 1.54-3.12 3.5-3.12q1.8 0 3.2 1.04m2.43-.69h2.76v5.56q0 2.22 1.98 2.22 2 0 2-2.22v-5.56H64v6.02c0 2.62-1.7 4.08-4.74 4.08s-4.74-1.46-4.74-4.08zm18.8.68-1.35 1.6a2.7 2.7 0 0 0-1.62-.64c-.6 0-1.06.36-1.06.82 0 .48.26.64 1.56 1.1 2.28.8 2.98 1.48 2.98 3.04 0 2.06-1.7 3.52-4.1 3.52a4.8 4.8 0 0 1-3.72-1.62l1.42-1.68q1.15 1.15 2.32 1.16c.7 0 1.24-.46 1.24-1.08 0-.54-.22-.78-1.5-1.24-2.38-.84-2.86-1.48-2.86-2.9 0-1.9 1.54-3.12 3.5-3.12q1.8 0 3.2 1.04m2.45 1.68H74.7v-2.36h1.08v-3.34h2.76v3.34h1.92v2.36h-1.92v2.92c0 1.52.18 2.4 1.2 2.4q.28 0 .5-.04v2.4c-.3.04-.86.06-1.16.06-2.14 0-3.3-1.58-3.3-3.84zM90 27.23a2.76 2.76 0 0 0-2.74-2.76 2.7 2.7 0 0 0-2.74 2.74c0 1.52 1.2 2.74 2.74 2.74A2.8 2.8 0 0 0 90 27.23m-.3-3.66v-1.26h2.76v9.8H89.7v-1.28a3.9 3.9 0 0 1-3.2 1.58c-2.76 0-4.82-2.26-4.82-5.22 0-2.92 2.04-5.2 4.76-5.2q1.91.01 3.26 1.58m5.31-1.26h2.76v9.8h-2.76zm-.26-4.14c0-.9.74-1.64 1.64-1.64s1.64.74 1.64 1.64-.74 1.64-1.64 1.64-1.64-.74-1.64-1.64m5.58 13.94v-9.8h2.76v1.22a3.7 3.7 0 0 1 3.06-1.54c1.98 0 3.64 1.14 3.64 3.78v6.34h-2.76v-5.38c0-1.64-.46-2.4-1.86-2.4-1.38 0-2.08.86-2.08 2.7v5.08z",
1195
+ fill: "var(--sustain-accent-white)"
1196
+ })
1197
+ ]
1198
+ });
1199
+ }
1200
+ //#endregion
1201
+ //#region src/primitives/Logo/Logo.tsx
1202
+ const MARKS = {
1203
+ bodhi: {
1204
+ logo: BodhiLogo,
1205
+ icon: BodhiIcon
1206
+ },
1207
+ slingshot: {
1208
+ logo: SlingshotLogo,
1209
+ icon: SlingshotIcon
1210
+ },
1211
+ sustain: {
1212
+ logo: SustainLogo,
1213
+ icon: SustainIcon
1214
+ },
1215
+ psai: {
1216
+ logo: PSAILogo,
1217
+ icon: PSAILogo
1218
+ }
1219
+ };
1220
+ function Logo({ brand, variant = "logo", ...props }) {
1221
+ const Mark = MARKS[brand][variant];
1222
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Mark, {
1223
+ "data-slot": "logo",
1224
+ "data-brand": brand,
1225
+ "data-variant": variant,
1226
+ ...props
1227
+ });
1228
+ }
1229
+ //#endregion
1230
+ //#region src/primitives/Popover/Popover.tsx
1231
+ function Popover({ ...props }) {
1232
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Popover.Root, {
1233
+ "data-slot": "popover",
1234
+ ...props
1235
+ });
1236
+ }
1237
+ function PopoverTrigger({ ...props }) {
1238
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Popover.Trigger, {
1239
+ "data-slot": "popover-trigger",
1240
+ ...props
1241
+ });
1242
+ }
1243
+ function PopoverContent({ className, align = "center", sideOffset = 4, ...props }) {
1244
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Popover.Portal, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Popover.Content, {
1245
+ "data-slot": "popover-content",
1246
+ align,
1247
+ sideOffset,
1248
+ className: require_utils.cn("z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border bg-card p-4 text-card-foreground shadow-md outline-hidden data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95", className),
1249
+ ...props
1250
+ }) });
1251
+ }
1252
+ function PopoverAnchor({ ...props }) {
1253
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Popover.Anchor, {
1254
+ "data-slot": "popover-anchor",
1255
+ ...props
1256
+ });
1257
+ }
1258
+ function PopoverHeader({ className, ...props }) {
1259
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
1260
+ "data-slot": "popover-header",
1261
+ className: require_utils.cn("flex flex-col gap-1 text-sm", className),
1262
+ ...props
1263
+ });
1264
+ }
1265
+ function PopoverTitle({ className, ...props }) {
1266
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
1267
+ "data-slot": "popover-title",
1268
+ className: require_utils.cn("font-medium", className),
1269
+ ...props
1270
+ });
1271
+ }
1272
+ function PopoverDescription({ className, ...props }) {
1273
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
1274
+ "data-slot": "popover-description",
1275
+ className: require_utils.cn("text-muted-foreground", className),
1276
+ ...props
1277
+ });
1278
+ }
1279
+ //#endregion
1280
+ //#region src/primitives/Skeleton/Skeleton.tsx
1281
+ function Skeleton({ className, ...props }) {
1282
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
1283
+ "data-slot": "skeleton",
1284
+ className: require_utils.cn("skeleton-shimmer rounded-md", className),
1285
+ ...props
1286
+ });
1287
+ }
1288
+ function SkeletonAvatar({ className, ...props }) {
1289
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Skeleton, {
1290
+ "data-slot": "skeleton-avatar",
1291
+ className: require_utils.cn("size-10 rounded-full", className),
1292
+ ...props
1293
+ });
1294
+ }
1295
+ function SkeletonLine({ className, ...props }) {
1296
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Skeleton, {
1297
+ "data-slot": "skeleton-line",
1298
+ className: require_utils.cn("h-4 w-full rounded-full", className),
1299
+ ...props
1300
+ });
1301
+ }
1302
+ function SkeletonObject({ className, ...props }) {
1303
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Skeleton, {
1304
+ "data-slot": "skeleton-object",
1305
+ className: require_utils.cn("h-24 w-full rounded-md", className),
1306
+ ...props
1307
+ });
1308
+ }
1309
+ //#endregion
1310
+ //#region src/primitives/Table/Table.tsx
1311
+ function Table({ className, striped = false, ...props }) {
1312
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
1313
+ "data-slot": "table-container",
1314
+ className: "relative w-full overflow-x-auto",
1315
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("table", {
1316
+ "data-slot": "table",
1317
+ "data-striped": striped || void 0,
1318
+ className: require_utils.cn("w-full caption-bottom text-sm", striped && "[&_tbody_tr:nth-child(even)]:bg-muted/50", className),
1319
+ ...props
1320
+ })
1321
+ });
1322
+ }
1323
+ function TableHeader({ className, ...props }) {
1324
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("thead", {
1325
+ "data-slot": "table-header",
1326
+ className: require_utils.cn("[&_tr]:border-b", className),
1327
+ ...props
1328
+ });
1329
+ }
1330
+ function TableBody({ className, ...props }) {
1331
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tbody", {
1332
+ "data-slot": "table-body",
1333
+ className: require_utils.cn("[&_tr:last-child]:border-0", className),
1334
+ ...props
1335
+ });
1336
+ }
1337
+ function TableFooter({ className, ...props }) {
1338
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tfoot", {
1339
+ "data-slot": "table-footer",
1340
+ className: require_utils.cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className),
1341
+ ...props
1342
+ });
1343
+ }
1344
+ function TableRow({ className, ...props }) {
1345
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tr", {
1346
+ "data-slot": "table-row",
1347
+ className: require_utils.cn("border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted", className),
1348
+ ...props
1349
+ });
1350
+ }
1351
+ function TableHead({ className, ...props }) {
1352
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("th", {
1353
+ "data-slot": "table-head",
1354
+ className: require_utils.cn("h-10 px-2 text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
1355
+ ...props
1356
+ });
1357
+ }
1358
+ function TableCell({ className, ...props }) {
1359
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("td", {
1360
+ "data-slot": "table-cell",
1361
+ className: require_utils.cn("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
1362
+ ...props
1363
+ });
1364
+ }
1365
+ function TableCaption({ className, ...props }) {
1366
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("caption", {
1367
+ "data-slot": "table-caption",
1368
+ className: require_utils.cn("mt-4 text-sm text-muted-foreground", className),
1369
+ ...props
1370
+ });
1371
+ }
1372
+ //#endregion
1373
+ //#region src/primitives/Text/Text.tsx
1374
+ const textVariants = (0, class_variance_authority.cva)("", {
1375
+ variants: {
1376
+ size: {
1377
+ large: "text-[length:var(--paragraph-large-font-size)] leading-[var(--paragraph-large-line-height)]",
1378
+ regular: "text-[length:var(--paragraph-regular-font-size)] leading-[var(--paragraph-regular-line-height)]",
1379
+ small: "text-[length:var(--paragraph-small-font-size)] leading-[var(--paragraph-small-line-height)]",
1380
+ mini: "text-[length:var(--paragraph-mini-font-size)] leading-[var(--paragraph-mini-line-height)]",
1381
+ caption: "text-[length:var(--caption-font-size)] leading-[var(--caption-line-height)] tracking-[var(--caption-letter-spacing)] uppercase"
1382
+ },
1383
+ weight: {
1384
+ normal: "font-normal",
1385
+ medium: "font-medium",
1386
+ semibold: "font-semibold"
1387
+ },
1388
+ variant: {
1389
+ default: "text-foreground",
1390
+ muted: "text-muted-foreground",
1391
+ primary: "text-primary",
1392
+ destructive: "text-destructive",
1393
+ success: "text-[var(--content-success)]"
1394
+ },
1395
+ font: {
1396
+ body: "font-sans",
1397
+ heading: "font-heading",
1398
+ mono: "font-mono"
1399
+ },
1400
+ align: {
1401
+ left: "text-left",
1402
+ center: "text-center",
1403
+ right: "text-right"
1404
+ },
1405
+ truncate: { true: "truncate" }
1406
+ },
1407
+ defaultVariants: {
1408
+ size: "regular",
1409
+ weight: "normal",
1410
+ variant: "default",
1411
+ font: "body"
1412
+ }
1413
+ });
1414
+ function Text({ as, className, size, weight, variant, font, align, truncate, ...props }) {
1415
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(as ?? "p", {
1416
+ "data-slot": "text",
1417
+ className: require_utils.cn(textVariants({
1418
+ size,
1419
+ weight,
1420
+ variant,
1421
+ font,
1422
+ align,
1423
+ truncate
1424
+ }), className),
1425
+ ...props
1426
+ });
1427
+ }
1428
+ //#endregion
1429
+ //#region src/primitives/ThemeProvider/ThemeProvider.tsx
1430
+ const PRODUCTS = [
1431
+ "slingshot",
1432
+ "sustain",
1433
+ "bodhi",
1434
+ "psai"
1435
+ ];
1436
+ const ThemeContext = react.createContext(null);
1437
+ const DEFAULT_STORAGE_KEY = "ds-theme-preferences";
1438
+ function readStored(storageKey) {
1439
+ try {
1440
+ const raw = localStorage.getItem(storageKey);
1441
+ if (!raw) return {};
1442
+ const parsed = JSON.parse(raw);
1443
+ return {
1444
+ theme: parsed.theme === "dark" || parsed.theme === "light" ? parsed.theme : void 0,
1445
+ product: PRODUCTS.includes(parsed.product) ? parsed.product : void 0
1446
+ };
1447
+ } catch {
1448
+ return {};
1449
+ }
1450
+ }
1451
+ function prefersDark() {
1452
+ try {
1453
+ return window.matchMedia("(prefers-color-scheme: dark)").matches;
1454
+ } catch {
1455
+ return false;
1456
+ }
1457
+ }
1458
+ function applyToDocument({ theme, product }) {
1459
+ const root = document.documentElement;
1460
+ root.classList.toggle("dark", theme === "dark");
1461
+ for (const p of PRODUCTS) root.classList.toggle(`theme-${p}`, p === product);
1462
+ }
1463
+ function ThemeProvider({ children, defaultTheme = "light", defaultProduct = "slingshot", storageKey = DEFAULT_STORAGE_KEY }) {
1464
+ const [prefs, setPrefs] = react.useState(() => {
1465
+ if (typeof window === "undefined") return {
1466
+ theme: defaultTheme,
1467
+ product: defaultProduct
1468
+ };
1469
+ const stored = readStored(storageKey);
1470
+ return {
1471
+ theme: stored.theme ?? (prefersDark() ? "dark" : defaultTheme),
1472
+ product: stored.product ?? defaultProduct
1473
+ };
1474
+ });
1475
+ react.useEffect(() => {
1476
+ applyToDocument(prefs);
1477
+ try {
1478
+ localStorage.setItem(storageKey, JSON.stringify(prefs));
1479
+ } catch {}
1480
+ }, [prefs, storageKey]);
1481
+ const value = react.useMemo(() => ({
1482
+ ...prefs,
1483
+ setTheme: (theme) => setPrefs((p) => ({
1484
+ ...p,
1485
+ theme
1486
+ })),
1487
+ toggleTheme: () => setPrefs((p) => ({
1488
+ ...p,
1489
+ theme: p.theme === "dark" ? "light" : "dark"
1490
+ })),
1491
+ setProduct: (product) => setPrefs((p) => ({
1492
+ ...p,
1493
+ product
1494
+ }))
1495
+ }), [prefs]);
1496
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ThemeContext.Provider, {
1497
+ value,
1498
+ children
1499
+ });
1500
+ }
1501
+ function useTheme() {
1502
+ const ctx = react.useContext(ThemeContext);
1503
+ if (!ctx) throw new Error("useTheme must be used within a <ThemeProvider>.");
1504
+ return ctx;
1505
+ }
1506
+ //#endregion
1507
+ Object.defineProperty(exports, "Avatar", {
1508
+ enumerable: true,
1509
+ get: function() {
1510
+ return Avatar;
1511
+ }
1512
+ });
1513
+ Object.defineProperty(exports, "AvatarBadge", {
1514
+ enumerable: true,
1515
+ get: function() {
1516
+ return AvatarBadge;
1517
+ }
1518
+ });
1519
+ Object.defineProperty(exports, "AvatarFallback", {
1520
+ enumerable: true,
1521
+ get: function() {
1522
+ return AvatarFallback;
1523
+ }
1524
+ });
1525
+ Object.defineProperty(exports, "AvatarGroup", {
1526
+ enumerable: true,
1527
+ get: function() {
1528
+ return AvatarGroup;
1529
+ }
1530
+ });
1531
+ Object.defineProperty(exports, "AvatarGroupCount", {
1532
+ enumerable: true,
1533
+ get: function() {
1534
+ return AvatarGroupCount;
1535
+ }
1536
+ });
1537
+ Object.defineProperty(exports, "AvatarImage", {
1538
+ enumerable: true,
1539
+ get: function() {
1540
+ return AvatarImage;
1541
+ }
1542
+ });
1543
+ Object.defineProperty(exports, "Button", {
1544
+ enumerable: true,
1545
+ get: function() {
1546
+ return Button;
1547
+ }
1548
+ });
1549
+ Object.defineProperty(exports, "Card", {
1550
+ enumerable: true,
1551
+ get: function() {
1552
+ return Card;
1553
+ }
1554
+ });
1555
+ Object.defineProperty(exports, "CardAction", {
1556
+ enumerable: true,
1557
+ get: function() {
1558
+ return CardAction;
1559
+ }
1560
+ });
1561
+ Object.defineProperty(exports, "CardContent", {
1562
+ enumerable: true,
1563
+ get: function() {
1564
+ return CardContent;
1565
+ }
1566
+ });
1567
+ Object.defineProperty(exports, "CardDescription", {
1568
+ enumerable: true,
1569
+ get: function() {
1570
+ return CardDescription;
1571
+ }
1572
+ });
1573
+ Object.defineProperty(exports, "CardFooter", {
1574
+ enumerable: true,
1575
+ get: function() {
1576
+ return CardFooter;
1577
+ }
1578
+ });
1579
+ Object.defineProperty(exports, "CardHeader", {
1580
+ enumerable: true,
1581
+ get: function() {
1582
+ return CardHeader;
1583
+ }
1584
+ });
1585
+ Object.defineProperty(exports, "CardTitle", {
1586
+ enumerable: true,
1587
+ get: function() {
1588
+ return CardTitle;
1589
+ }
1590
+ });
1591
+ Object.defineProperty(exports, "Credits", {
1592
+ enumerable: true,
1593
+ get: function() {
1594
+ return Credits;
1595
+ }
1596
+ });
1597
+ Object.defineProperty(exports, "DropdownMenu", {
1598
+ enumerable: true,
1599
+ get: function() {
1600
+ return DropdownMenu;
1601
+ }
1602
+ });
1603
+ Object.defineProperty(exports, "DropdownMenuCheckboxItem", {
1604
+ enumerable: true,
1605
+ get: function() {
1606
+ return DropdownMenuCheckboxItem;
1607
+ }
1608
+ });
1609
+ Object.defineProperty(exports, "DropdownMenuContent", {
1610
+ enumerable: true,
1611
+ get: function() {
1612
+ return DropdownMenuContent;
1613
+ }
1614
+ });
1615
+ Object.defineProperty(exports, "DropdownMenuGroup", {
1616
+ enumerable: true,
1617
+ get: function() {
1618
+ return DropdownMenuGroup;
1619
+ }
1620
+ });
1621
+ Object.defineProperty(exports, "DropdownMenuItem", {
1622
+ enumerable: true,
1623
+ get: function() {
1624
+ return DropdownMenuItem;
1625
+ }
1626
+ });
1627
+ Object.defineProperty(exports, "DropdownMenuLabel", {
1628
+ enumerable: true,
1629
+ get: function() {
1630
+ return DropdownMenuLabel;
1631
+ }
1632
+ });
1633
+ Object.defineProperty(exports, "DropdownMenuPortal", {
1634
+ enumerable: true,
1635
+ get: function() {
1636
+ return DropdownMenuPortal;
1637
+ }
1638
+ });
1639
+ Object.defineProperty(exports, "DropdownMenuRadioGroup", {
1640
+ enumerable: true,
1641
+ get: function() {
1642
+ return DropdownMenuRadioGroup;
1643
+ }
1644
+ });
1645
+ Object.defineProperty(exports, "DropdownMenuRadioItem", {
1646
+ enumerable: true,
1647
+ get: function() {
1648
+ return DropdownMenuRadioItem;
1649
+ }
1650
+ });
1651
+ Object.defineProperty(exports, "DropdownMenuSeparator", {
1652
+ enumerable: true,
1653
+ get: function() {
1654
+ return DropdownMenuSeparator;
1655
+ }
1656
+ });
1657
+ Object.defineProperty(exports, "DropdownMenuShortcut", {
1658
+ enumerable: true,
1659
+ get: function() {
1660
+ return DropdownMenuShortcut;
1661
+ }
1662
+ });
1663
+ Object.defineProperty(exports, "DropdownMenuSub", {
1664
+ enumerable: true,
1665
+ get: function() {
1666
+ return DropdownMenuSub;
1667
+ }
1668
+ });
1669
+ Object.defineProperty(exports, "DropdownMenuSubContent", {
1670
+ enumerable: true,
1671
+ get: function() {
1672
+ return DropdownMenuSubContent;
1673
+ }
1674
+ });
1675
+ Object.defineProperty(exports, "DropdownMenuSubTrigger", {
1676
+ enumerable: true,
1677
+ get: function() {
1678
+ return DropdownMenuSubTrigger;
1679
+ }
1680
+ });
1681
+ Object.defineProperty(exports, "DropdownMenuTrigger", {
1682
+ enumerable: true,
1683
+ get: function() {
1684
+ return DropdownMenuTrigger;
1685
+ }
1686
+ });
1687
+ Object.defineProperty(exports, "Heading", {
1688
+ enumerable: true,
1689
+ get: function() {
1690
+ return Heading;
1691
+ }
1692
+ });
1693
+ Object.defineProperty(exports, "Input", {
1694
+ enumerable: true,
1695
+ get: function() {
1696
+ return Input;
1697
+ }
1698
+ });
1699
+ Object.defineProperty(exports, "Logo", {
1700
+ enumerable: true,
1701
+ get: function() {
1702
+ return Logo;
1703
+ }
1704
+ });
1705
+ Object.defineProperty(exports, "Popover", {
1706
+ enumerable: true,
1707
+ get: function() {
1708
+ return Popover;
1709
+ }
1710
+ });
1711
+ Object.defineProperty(exports, "PopoverAnchor", {
1712
+ enumerable: true,
1713
+ get: function() {
1714
+ return PopoverAnchor;
1715
+ }
1716
+ });
1717
+ Object.defineProperty(exports, "PopoverContent", {
1718
+ enumerable: true,
1719
+ get: function() {
1720
+ return PopoverContent;
1721
+ }
1722
+ });
1723
+ Object.defineProperty(exports, "PopoverDescription", {
1724
+ enumerable: true,
1725
+ get: function() {
1726
+ return PopoverDescription;
1727
+ }
1728
+ });
1729
+ Object.defineProperty(exports, "PopoverHeader", {
1730
+ enumerable: true,
1731
+ get: function() {
1732
+ return PopoverHeader;
1733
+ }
1734
+ });
1735
+ Object.defineProperty(exports, "PopoverTitle", {
1736
+ enumerable: true,
1737
+ get: function() {
1738
+ return PopoverTitle;
1739
+ }
1740
+ });
1741
+ Object.defineProperty(exports, "PopoverTrigger", {
1742
+ enumerable: true,
1743
+ get: function() {
1744
+ return PopoverTrigger;
1745
+ }
1746
+ });
1747
+ Object.defineProperty(exports, "Skeleton", {
1748
+ enumerable: true,
1749
+ get: function() {
1750
+ return Skeleton;
1751
+ }
1752
+ });
1753
+ Object.defineProperty(exports, "SkeletonAvatar", {
1754
+ enumerable: true,
1755
+ get: function() {
1756
+ return SkeletonAvatar;
1757
+ }
1758
+ });
1759
+ Object.defineProperty(exports, "SkeletonLine", {
1760
+ enumerable: true,
1761
+ get: function() {
1762
+ return SkeletonLine;
1763
+ }
1764
+ });
1765
+ Object.defineProperty(exports, "SkeletonObject", {
1766
+ enumerable: true,
1767
+ get: function() {
1768
+ return SkeletonObject;
1769
+ }
1770
+ });
1771
+ Object.defineProperty(exports, "Spinner", {
1772
+ enumerable: true,
1773
+ get: function() {
1774
+ return Spinner;
1775
+ }
1776
+ });
1777
+ Object.defineProperty(exports, "Table", {
1778
+ enumerable: true,
1779
+ get: function() {
1780
+ return Table;
1781
+ }
1782
+ });
1783
+ Object.defineProperty(exports, "TableBody", {
1784
+ enumerable: true,
1785
+ get: function() {
1786
+ return TableBody;
1787
+ }
1788
+ });
1789
+ Object.defineProperty(exports, "TableCaption", {
1790
+ enumerable: true,
1791
+ get: function() {
1792
+ return TableCaption;
1793
+ }
1794
+ });
1795
+ Object.defineProperty(exports, "TableCell", {
1796
+ enumerable: true,
1797
+ get: function() {
1798
+ return TableCell;
1799
+ }
1800
+ });
1801
+ Object.defineProperty(exports, "TableFooter", {
1802
+ enumerable: true,
1803
+ get: function() {
1804
+ return TableFooter;
1805
+ }
1806
+ });
1807
+ Object.defineProperty(exports, "TableHead", {
1808
+ enumerable: true,
1809
+ get: function() {
1810
+ return TableHead;
1811
+ }
1812
+ });
1813
+ Object.defineProperty(exports, "TableHeader", {
1814
+ enumerable: true,
1815
+ get: function() {
1816
+ return TableHeader;
1817
+ }
1818
+ });
1819
+ Object.defineProperty(exports, "TableRow", {
1820
+ enumerable: true,
1821
+ get: function() {
1822
+ return TableRow;
1823
+ }
1824
+ });
1825
+ Object.defineProperty(exports, "Text", {
1826
+ enumerable: true,
1827
+ get: function() {
1828
+ return Text;
1829
+ }
1830
+ });
1831
+ Object.defineProperty(exports, "ThemeContext", {
1832
+ enumerable: true,
1833
+ get: function() {
1834
+ return ThemeContext;
1835
+ }
1836
+ });
1837
+ Object.defineProperty(exports, "ThemeProvider", {
1838
+ enumerable: true,
1839
+ get: function() {
1840
+ return ThemeProvider;
1841
+ }
1842
+ });
1843
+ Object.defineProperty(exports, "buttonVariants", {
1844
+ enumerable: true,
1845
+ get: function() {
1846
+ return buttonVariants;
1847
+ }
1848
+ });
1849
+ Object.defineProperty(exports, "cardVariants", {
1850
+ enumerable: true,
1851
+ get: function() {
1852
+ return cardVariants;
1853
+ }
1854
+ });
1855
+ Object.defineProperty(exports, "creditsVariants", {
1856
+ enumerable: true,
1857
+ get: function() {
1858
+ return creditsVariants;
1859
+ }
1860
+ });
1861
+ Object.defineProperty(exports, "headingVariants", {
1862
+ enumerable: true,
1863
+ get: function() {
1864
+ return headingVariants;
1865
+ }
1866
+ });
1867
+ Object.defineProperty(exports, "inputVariants", {
1868
+ enumerable: true,
1869
+ get: function() {
1870
+ return inputVariants;
1871
+ }
1872
+ });
1873
+ Object.defineProperty(exports, "textVariants", {
1874
+ enumerable: true,
1875
+ get: function() {
1876
+ return textVariants;
1877
+ }
1878
+ });
1879
+ Object.defineProperty(exports, "useTheme", {
1880
+ enumerable: true,
1881
+ get: function() {
1882
+ return useTheme;
1883
+ }
1884
+ });
1885
+
1886
+ //# sourceMappingURL=ThemeProvider.cjs.map