@peak-ai/canvas 1.6.0 → 1.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/GrapesjsCanvas.d.ts +7 -0
- package/GrapesjsCanvas.js +4 -4
- package/GrapesjsCanvas.js.map +1 -1
- package/helpers/css.d.ts +1 -1
- package/helpers/css.js +1 -1
- package/helpers/css.js.map +1 -1
- package/package.json +1 -1
- package/plugins/grapejs-plugin.d.ts +6 -1
- package/plugins/grapejs-plugin.js +2 -2
- package/plugins/grapejs-plugin.js.map +1 -1
- package/plugins/helpers/data-table.d.ts +3 -1
- package/plugins/helpers/data-table.js +3 -3
- package/plugins/helpers/data-table.js.map +1 -1
- package/plugins/helpers/download-data-button.d.ts +11 -0
- package/plugins/helpers/download-data-button.js +2 -0
- package/plugins/helpers/download-data-button.js.map +1 -0
- package/plugins/helpers/render-components.js +5 -5
- package/plugins/helpers/render-components.js.map +1 -1
- package/shadcn/components/ui/styled-elements.d.ts +9 -0
- package/shadcn/components/ui/styled-elements.js +2 -0
- package/shadcn/components/ui/styled-elements.js.map +1 -0
package/helpers/css.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"css.js","names":["tailwindCompiledCss"],"sources":["../../src/helpers/css.ts"],"sourcesContent":["export const tailwindCompiledCss = `/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */\n:root, :host {\n --font-sans: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n --color-red-50: oklch(97.1% 0.013 17.38);\n --color-red-100: oklch(93.6% 0.032 17.717);\n --color-red-200: oklch(88.5% 0.062 18.334);\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-red-500: oklch(63.7% 0.237 25.331);\n --color-red-600: oklch(57.7% 0.245 27.325);\n --color-red-900: oklch(39.6% 0.141 25.723);\n --color-orange-50: oklch(98% 0.016 73.684);\n --color-orange-900: oklch(40.8% 0.123 38.172);\n --color-amber-50: oklch(98.7% 0.022 95.277);\n --color-amber-900: oklch(41.4% 0.112 45.904);\n --color-yellow-50: oklch(98.7% 0.026 102.212);\n --color-yellow-900: oklch(42.1% 0.095 57.708);\n --color-lime-50: oklch(98.6% 0.031 120.757);\n --color-lime-900: oklch(40.5% 0.101 131.063);\n --color-green-50: oklch(98.2% 0.018 155.826);\n --color-green-300: oklch(87.1% 0.15 154.449);\n --color-green-600: oklch(62.7% 0.194 149.214);\n --color-green-900: oklch(39.3% 0.095 152.535);\n --color-emerald-50: oklch(97.9% 0.021 166.113);\n --color-emerald-900: oklch(37.8% 0.077 168.94);\n --color-teal-50: oklch(98.4% 0.014 180.72);\n --color-teal-900: oklch(38.6% 0.063 188.416);\n --color-cyan-50: oklch(98.4% 0.019 200.873);\n --color-cyan-900: oklch(39.8% 0.07 227.392);\n --color-blue-50: oklch(97% 0.014 254.604);\n --color-blue-500: oklch(62.3% 0.214 259.815);\n --color-blue-600: oklch(54.6% 0.245 262.881);\n --color-blue-700: oklch(48.8% 0.243 264.376);\n --color-blue-900: oklch(37.9% 0.146 265.522);\n --color-purple-50: oklch(97.7% 0.014 308.299);\n --color-purple-600: oklch(55.8% 0.288 302.321);\n --color-purple-900: oklch(38.1% 0.176 304.987);\n --color-fuchsia-50: oklch(97.7% 0.017 320.058);\n --color-fuchsia-900: oklch(40.1% 0.17 325.612);\n --color-pink-50: oklch(97.1% 0.014 343.198);\n --color-pink-900: oklch(40.8% 0.153 2.432);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-gray-50: oklch(98.5% 0.002 247.839);\n --color-gray-100: oklch(96.7% 0.003 264.542);\n --color-gray-200: oklch(92.8% 0.006 264.531);\n --color-gray-300: oklch(87.2% 0.01 258.338);\n --color-gray-400: oklch(70.7% 0.022 261.325);\n --color-gray-500: oklch(55.1% 0.027 264.364);\n --color-gray-600: oklch(44.6% 0.03 256.802);\n --color-gray-700: oklch(37.3% 0.034 259.733);\n --color-gray-800: oklch(27.8% 0.033 256.848);\n --color-gray-900: oklch(21% 0.034 264.665);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --container-sm: 24rem;\n --container-md: 28rem;\n --container-lg: 32rem;\n --container-2xl: 42rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-base: 1rem;\n --text-base--line-height: calc(1.5 / 1);\n --text-lg: 1.125rem;\n --text-lg--line-height: calc(1.75 / 1.125);\n --text-xl: 1.25rem;\n --text-xl--line-height: calc(1.75 / 1.25);\n --text-2xl: 1.5rem;\n --text-2xl--line-height: calc(2 / 1.5);\n --text-3xl: 1.875rem;\n --text-3xl--line-height: calc(2.25 / 1.875);\n --text-4xl: 2.25rem;\n --text-4xl--line-height: calc(2.5 / 2.25);\n --text-5xl: 3rem;\n --text-5xl--line-height: 1;\n --font-weight-normal: 400;\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --leading-snug: 1.375;\n --leading-normal: 1.5;\n --leading-relaxed: 1.625;\n --radius-sm: calc(0.625rem - 4px);\n --radius-md: calc(0.625rem - 2px);\n --radius-lg: 0.625rem;\n --radius-xl: calc(0.625rem + 4px);\n --radius-2xl: 1rem;\n --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n --animate-spin: spin 1s linear infinite;\n --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n --blur-xs: 4px;\n --blur-sm: 8px;\n --blur-md: 12px;\n --aspect-video: 16 / 9;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: var(--font-sans);\n --default-mono-font-family: var(--font-mono);\n --color-border: oklch(0.922 0 0);\n }\n*, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\nhtml, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");\n font-feature-settings: normal;\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\nhr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\nb, strong {\n font-weight: bolder;\n }\ncode, kbd, samp, pre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);\n font-feature-settings: normal;\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\nsmall {\n font-size: 80%;\n }\nsub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\nsub {\n bottom: -0.25em;\n }\nsup {\n top: -0.5em;\n }\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n:-moz-focusring {\n outline: auto;\n }\nprogress {\n vertical-align: baseline;\n }\nsummary {\n display: list-item;\n }\nol, ul, menu {\n list-style: none;\n }\nimg, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\nimg, video {\n max-width: 100%;\n height: auto;\n }\nbutton, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n:where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n:where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n }\n::file-selector-button {\n margin-inline-end: 4px;\n }\n::-moz-placeholder {\n opacity: 1;\n }\n::placeholder {\n opacity: 1;\n }\n@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::-moz-placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n ::placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\ntextarea {\n resize: vertical;\n }\n::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n::-webkit-datetime-edit {\n display: inline-flex;\n }\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n:-moz-ui-invalid {\n box-shadow: none;\n }\nbutton, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n -webkit-appearance: button;\n -moz-appearance: button;\n appearance: button;\n }\n::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n[hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n.\\\\@container\\\\/card-header {\n container-type: inline-size;\n container-name: card-header;\n }\n.\\\\@container\\\\/field-group {\n container-type: inline-size;\n container-name: field-group;\n }\n.\\\\@container {\n container-type: inline-size;\n }\n.pointer-events-auto {\n pointer-events: auto;\n }\n.pointer-events-none {\n pointer-events: none;\n }\n.visible {\n visibility: visible;\n }\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n }\n.absolute {\n position: absolute;\n }\n.fixed {\n position: fixed;\n }\n.relative {\n position: relative;\n }\n.sticky {\n position: sticky;\n }\n.inset-0 {\n inset: calc(0.25rem * 0);\n inset: calc(var(--spacing) * 0);\n }\n.-top-2 {\n top: calc(0.25rem * -2);\n top: calc(var(--spacing) * -2);\n }\n.top-0 {\n top: calc(0.25rem * 0);\n top: calc(var(--spacing) * 0);\n }\n.top-1 {\n top: calc(0.25rem * 1);\n top: calc(var(--spacing) * 1);\n }\n.top-1\\\\/2 {\n top: calc(1/2 * 100%);\n }\n.top-1\\\\/4 {\n top: calc(1/4 * 100%);\n }\n.top-2 {\n top: calc(0.25rem * 2);\n top: calc(var(--spacing) * 2);\n }\n.top-4 {\n top: calc(0.25rem * 4);\n top: calc(var(--spacing) * 4);\n }\n.top-7 {\n top: calc(0.25rem * 7);\n top: calc(var(--spacing) * 7);\n }\n.top-full {\n top: 100%;\n }\n.-right-2 {\n right: calc(0.25rem * -2);\n right: calc(var(--spacing) * -2);\n }\n.right-0 {\n right: calc(0.25rem * 0);\n right: calc(var(--spacing) * 0);\n }\n.right-2 {\n right: calc(0.25rem * 2);\n right: calc(var(--spacing) * 2);\n }\n.right-3 {\n right: calc(0.25rem * 3);\n right: calc(var(--spacing) * 3);\n }\n.right-4 {\n right: calc(0.25rem * 4);\n right: calc(var(--spacing) * 4);\n }\n.right-10 {\n right: calc(0.25rem * 10);\n right: calc(var(--spacing) * 10);\n }\n.bottom-0 {\n bottom: calc(0.25rem * 0);\n bottom: calc(var(--spacing) * 0);\n }\n.left-0 {\n left: calc(0.25rem * 0);\n left: calc(var(--spacing) * 0);\n }\n.left-1 {\n left: calc(0.25rem * 1);\n left: calc(var(--spacing) * 1);\n }\n.left-1\\\\/2 {\n left: calc(1/2 * 100%);\n }\n.left-2 {\n left: calc(0.25rem * 2);\n left: calc(var(--spacing) * 2);\n }\n.left-3 {\n left: calc(0.25rem * 3);\n left: calc(var(--spacing) * 3);\n }\n.\\\\!z-\\\\[9999\\\\] {\n z-index: 9999 !important;\n }\n.z-2 {\n z-index: 2;\n }\n.z-10 {\n z-index: 10;\n }\n.z-50 {\n z-index: 50;\n }\n.z-\\\\[999\\\\] {\n z-index: 999;\n }\n.z-\\\\[1000\\\\] {\n z-index: 1000;\n }\n.z-\\\\[1001\\\\] {\n z-index: 1001;\n }\n.z-\\\\[9999\\\\] {\n z-index: 9999;\n }\n.col-start-2 {\n grid-column-start: 2;\n }\n.row-span-2 {\n grid-row: span 2 / span 2;\n }\n.row-start-1 {\n grid-row-start: 1;\n }\n.container {\n width: 100%;\n max-width: 40rem;\n max-width: 48rem;\n max-width: 64rem;\n max-width: 80rem;\n max-width: 96rem\n }\n.-m-0 {\n margin: calc(0.25rem * -0);\n margin: calc(var(--spacing) * -0);\n }\n.-m-0\\\\.5 {\n margin: calc(0.25rem * -0.5);\n margin: calc(var(--spacing) * -0.5);\n }\n.m-0 {\n margin: calc(0.25rem * 0);\n margin: calc(var(--spacing) * 0);\n }\n.m-6 {\n margin: calc(0.25rem * 6);\n margin: calc(var(--spacing) * 6);\n }\n.-mx-1 {\n margin-inline: calc(0.25rem * -1);\n margin-inline: calc(var(--spacing) * -1);\n }\n.-mx-4 {\n margin-inline: calc(0.25rem * -4);\n margin-inline: calc(var(--spacing) * -4);\n }\n.mx-auto {\n margin-inline: auto;\n }\n.-my-2 {\n margin-block: calc(0.25rem * -2);\n margin-block: calc(var(--spacing) * -2);\n }\n.my-0 {\n margin-block: calc(0.25rem * 0);\n margin-block: calc(var(--spacing) * 0);\n }\n.my-0\\\\.5 {\n margin-block: calc(0.25rem * 0.5);\n margin-block: calc(var(--spacing) * 0.5);\n }\n.my-1 {\n margin-block: calc(0.25rem * 1);\n margin-block: calc(var(--spacing) * 1);\n }\n.my-4 {\n margin-block: calc(0.25rem * 4);\n margin-block: calc(var(--spacing) * 4);\n }\n.my-6 {\n margin-block: calc(0.25rem * 6);\n margin-block: calc(var(--spacing) * 6);\n }\n.mt-1 {\n margin-top: calc(0.25rem * 1);\n margin-top: calc(var(--spacing) * 1);\n }\n.mt-2 {\n margin-top: calc(0.25rem * 2);\n margin-top: calc(var(--spacing) * 2);\n }\n.mt-4 {\n margin-top: calc(0.25rem * 4);\n margin-top: calc(var(--spacing) * 4);\n }\n.mt-6 {\n margin-top: calc(0.25rem * 6);\n margin-top: calc(var(--spacing) * 6);\n }\n.mt-auto {\n margin-top: auto;\n }\n.mr-1 {\n margin-right: calc(0.25rem * 1);\n margin-right: calc(var(--spacing) * 1);\n }\n.mr-2 {\n margin-right: calc(0.25rem * 2);\n margin-right: calc(var(--spacing) * 2);\n }\n.-mb-4 {\n margin-bottom: calc(0.25rem * -4);\n margin-bottom: calc(var(--spacing) * -4);\n }\n.mb-1 {\n margin-bottom: calc(0.25rem * 1);\n margin-bottom: calc(var(--spacing) * 1);\n }\n.mb-1\\\\.5 {\n margin-bottom: calc(0.25rem * 1.5);\n margin-bottom: calc(var(--spacing) * 1.5);\n }\n.mb-2 {\n margin-bottom: calc(0.25rem * 2);\n margin-bottom: calc(var(--spacing) * 2);\n }\n.mb-3 {\n margin-bottom: calc(0.25rem * 3);\n margin-bottom: calc(var(--spacing) * 3);\n }\n.mb-4 {\n margin-bottom: calc(0.25rem * 4);\n margin-bottom: calc(var(--spacing) * 4);\n }\n.mb-6 {\n margin-bottom: calc(0.25rem * 6);\n margin-bottom: calc(var(--spacing) * 6);\n }\n.mb-8 {\n margin-bottom: calc(0.25rem * 8);\n margin-bottom: calc(var(--spacing) * 8);\n }\n.ml-1 {\n margin-left: calc(0.25rem * 1);\n margin-left: calc(var(--spacing) * 1);\n }\n.ml-1\\\\.5 {\n margin-left: calc(0.25rem * 1.5);\n margin-left: calc(var(--spacing) * 1.5);\n }\n.ml-2 {\n margin-left: calc(0.25rem * 2);\n margin-left: calc(var(--spacing) * 2);\n }\n.ml-2\\\\.5 {\n margin-left: calc(0.25rem * 2.5);\n margin-left: calc(var(--spacing) * 2.5);\n }\n.ml-3 {\n margin-left: calc(0.25rem * 3);\n margin-left: calc(var(--spacing) * 3);\n }\n.ml-4 {\n margin-left: calc(0.25rem * 4);\n margin-left: calc(var(--spacing) * 4);\n }\n.ml-auto {\n margin-left: auto;\n }\n.block {\n display: block;\n }\n.flex {\n display: flex;\n }\n.grid {\n display: grid;\n }\n.hidden {\n display: none;\n }\n.inline {\n display: inline;\n }\n.inline-block {\n display: inline-block;\n }\n.inline-flex {\n display: inline-flex;\n }\n.table {\n display: table;\n }\n.table-caption {\n display: table-caption;\n }\n.table-cell {\n display: table-cell;\n }\n.table-row {\n display: table-row;\n }\n.field-sizing-content {\n field-sizing: content;\n }\n.aspect-auto {\n aspect-ratio: auto;\n }\n.aspect-video {\n aspect-ratio: 16 / 9;\n aspect-ratio: var(--aspect-video);\n }\n.size-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.size-2\\\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.size-3 {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n.size-3\\\\.5 {\n width: calc(0.25rem * 3.5);\n width: calc(var(--spacing) * 3.5);\n height: calc(0.25rem * 3.5);\n height: calc(var(--spacing) * 3.5);\n }\n.size-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n.size-9 {\n width: calc(0.25rem * 9);\n width: calc(var(--spacing) * 9);\n height: calc(0.25rem * 9);\n height: calc(var(--spacing) * 9);\n }\n.size-full {\n width: 100%;\n height: 100%;\n }\n.h-2 {\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.h-2\\\\.5 {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.h-3 {\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n.h-4 {\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n.h-5 {\n height: calc(0.25rem * 5);\n height: calc(var(--spacing) * 5);\n }\n.h-6 {\n height: calc(0.25rem * 6);\n height: calc(var(--spacing) * 6);\n }\n.h-8 {\n height: calc(0.25rem * 8);\n height: calc(var(--spacing) * 8);\n }\n.h-9 {\n height: calc(0.25rem * 9);\n height: calc(var(--spacing) * 9);\n }\n.h-10 {\n height: calc(0.25rem * 10);\n height: calc(var(--spacing) * 10);\n }\n.h-12 {\n height: calc(0.25rem * 12);\n height: calc(var(--spacing) * 12);\n }\n.h-20 {\n height: calc(0.25rem * 20);\n height: calc(var(--spacing) * 20);\n }\n.h-28 {\n height: calc(0.25rem * 28);\n height: calc(var(--spacing) * 28);\n }\n.h-30 {\n height: calc(0.25rem * 30);\n height: calc(var(--spacing) * 30);\n }\n.h-35 {\n height: calc(0.25rem * 35);\n height: calc(var(--spacing) * 35);\n }\n.h-40 {\n height: calc(0.25rem * 40);\n height: calc(var(--spacing) * 40);\n }\n.h-50 {\n height: calc(0.25rem * 50);\n height: calc(var(--spacing) * 50);\n }\n.h-\\\\[38px\\\\] {\n height: 38px;\n }\n.h-\\\\[258px\\\\] {\n height: 258px;\n }\n.h-auto {\n height: auto;\n }\n.h-fit {\n height: -moz-fit-content;\n height: fit-content;\n }\n.h-full {\n height: 100%;\n }\n.h-px {\n height: 1px;\n }\n.max-h-48 {\n max-height: calc(0.25rem * 48);\n max-height: calc(var(--spacing) * 48);\n }\n.max-h-64 {\n max-height: calc(0.25rem * 64);\n max-height: calc(var(--spacing) * 64);\n }\n.max-h-96 {\n max-height: calc(0.25rem * 96);\n max-height: calc(var(--spacing) * 96);\n }\n.max-h-\\\\[60vh\\\\] {\n max-height: 60vh;\n }\n.max-h-\\\\[90vh\\\\] {\n max-height: 90vh;\n }\n.max-h-\\\\[calc\\\\(90vh-160px\\\\)\\\\] {\n max-height: calc(90vh - 160px);\n }\n.min-h-16 {\n min-height: calc(0.25rem * 16);\n min-height: calc(var(--spacing) * 16);\n }\n.min-h-\\\\[45vh\\\\] {\n min-height: 45vh;\n }\n.min-h-\\\\[100px\\\\] {\n min-height: 100px;\n }\n.min-h-\\\\[200px\\\\] {\n min-height: 200px;\n }\n.w-0 {\n width: calc(0.25rem * 0);\n width: calc(var(--spacing) * 0);\n }\n.w-1 {\n width: calc(0.25rem * 1);\n width: calc(var(--spacing) * 1);\n }\n.w-1\\\\/3 {\n width: calc(1/3 * 100%);\n }\n.w-1\\\\/6 {\n width: calc(1/6 * 100%);\n }\n.w-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n }\n.w-2\\\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n.w-3 {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n }\n.w-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n }\n.w-4\\\\/5 {\n width: calc(4/5 * 100%);\n }\n.w-5 {\n width: calc(0.25rem * 5);\n width: calc(var(--spacing) * 5);\n }\n.w-6 {\n width: calc(0.25rem * 6);\n width: calc(var(--spacing) * 6);\n }\n.w-12 {\n width: calc(0.25rem * 12);\n width: calc(var(--spacing) * 12);\n }\n.w-56 {\n width: calc(0.25rem * 56);\n width: calc(var(--spacing) * 56);\n }\n.w-64 {\n width: calc(0.25rem * 64);\n width: calc(var(--spacing) * 64);\n }\n.w-72 {\n width: calc(0.25rem * 72);\n width: calc(var(--spacing) * 72);\n }\n.w-80 {\n width: calc(0.25rem * 80);\n width: calc(var(--spacing) * 80);\n }\n.w-\\\\[280px\\\\] {\n width: 280px;\n }\n.w-\\\\[320px\\\\] {\n width: 320px;\n }\n.w-\\\\[380px\\\\] {\n width: 380px;\n }\n.w-\\\\[481px\\\\] {\n width: 481px;\n }\n.w-\\\\[640px\\\\] {\n width: 640px;\n }\n.w-auto {\n width: auto;\n }\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n }\n.w-full {\n width: 100%;\n }\n.max-w-2xl {\n max-width: 42rem;\n max-width: var(--container-2xl);\n }\n.max-w-\\\\[200px\\\\] {\n max-width: 200px;\n }\n.max-w-\\\\[320px\\\\] {\n max-width: 320px;\n }\n.max-w-full {\n max-width: 100%;\n }\n.max-w-lg {\n max-width: 32rem;\n max-width: var(--container-lg);\n }\n.max-w-md {\n max-width: 28rem;\n max-width: var(--container-md);\n }\n.max-w-sm {\n max-width: 24rem;\n max-width: var(--container-sm);\n }\n.min-w-0 {\n min-width: calc(0.25rem * 0);\n min-width: calc(var(--spacing) * 0);\n }\n.min-w-\\\\[8rem\\\\] {\n min-width: 8rem;\n }\n.min-w-\\\\[200px\\\\] {\n min-width: 200px;\n }\n.flex-1 {\n flex: 1;\n }\n.flex-shrink {\n flex-shrink: 1;\n }\n.flex-shrink-0 {\n flex-shrink: 0;\n }\n.shrink-0 {\n flex-shrink: 0;\n }\n.flex-grow {\n flex-grow: 1;\n }\n.caption-bottom {\n caption-side: bottom;\n }\n.border-collapse {\n border-collapse: collapse;\n }\n.origin-\\\\(--radix-hover-card-content-transform-origin\\\\) {\n transform-origin: var(--radix-hover-card-content-transform-origin);\n }\n.origin-\\\\[var\\\\(--radix-tooltip-content-transform-origin\\\\)\\\\] {\n transform-origin: var(--radix-tooltip-content-transform-origin);\n }\n.-translate-x-1 {\n --tw-translate-x: calc(var(--spacing) * -1);\n translate: calc(0.25rem * -1) var(--tw-translate-y);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-x-1\\\\/2 {\n --tw-translate-x: calc(calc(1/2 * 100%) * -1);\n translate: calc(calc(1/2 * 100%) * -1) var(--tw-translate-y);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-1 {\n --tw-translate-y: calc(var(--spacing) * -1);\n translate: var(--tw-translate-x) calc(0.25rem * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-1\\\\/2 {\n --tw-translate-y: calc(calc(1/2 * 100%) * -1);\n translate: var(--tw-translate-x) calc(calc(1/2 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-1\\\\/5 {\n --tw-translate-y: calc(calc(1/5 * 100%) * -1);\n translate: var(--tw-translate-x) calc(calc(1/5 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-2 {\n --tw-translate-y: calc(var(--spacing) * -2);\n translate: var(--tw-translate-x) calc(0.25rem * -2);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-\\\\[2px\\\\] {\n --tw-translate-y: calc(2px * -1);\n translate: var(--tw-translate-x) calc(2px * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.scale-100 {\n --tw-scale-x: 100%;\n --tw-scale-y: 100%;\n --tw-scale-z: 100%;\n scale: 100% 100%;\n scale: var(--tw-scale-x) var(--tw-scale-y);\n }\n.rotate-45 {\n rotate: 45deg;\n }\n.rotate-180 {\n rotate: 180deg;\n }\n.transform {\n transform: ;\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n }\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n animation: var(--animate-pulse);\n }\n.animate-spin {\n animation: spin 1s linear infinite;\n animation: var(--animate-spin);\n }\n.cursor-default {\n cursor: default;\n }\n.cursor-not-allowed {\n cursor: not-allowed;\n }\n.cursor-pointer {\n cursor: pointer;\n }\n.touch-none {\n touch-action: none;\n }\n.resize {\n resize: both;\n }\n.scroll-my-1 {\n scroll-margin-block: calc(0.25rem * 1);\n scroll-margin-block: calc(var(--spacing) * 1);\n }\n.list-disc {\n list-style-type: disc;\n }\n.auto-rows-min {\n grid-auto-rows: min-content;\n }\n.grid-rows-\\\\[auto_auto\\\\] {\n grid-template-rows: auto auto;\n }\n.flex-col {\n flex-direction: column;\n }\n.flex-col-reverse {\n flex-direction: column-reverse;\n }\n.flex-row {\n flex-direction: row;\n }\n.flex-wrap {\n flex-wrap: wrap;\n }\n.items-center {\n align-items: center;\n }\n.items-end {\n align-items: flex-end;\n }\n.items-start {\n align-items: flex-start;\n }\n.items-stretch {\n align-items: stretch;\n }\n.justify-between {\n justify-content: space-between;\n }\n.justify-center {\n justify-content: center;\n }\n.justify-end {\n justify-content: flex-end;\n }\n.gap-0 {\n gap: calc(0.25rem * 0);\n gap: calc(var(--spacing) * 0);\n }\n.gap-0\\\\.5 {\n gap: calc(0.25rem * 0.5);\n gap: calc(var(--spacing) * 0.5);\n }\n.gap-1 {\n gap: calc(0.25rem * 1);\n gap: calc(var(--spacing) * 1);\n }\n.gap-1\\\\.5 {\n gap: calc(0.25rem * 1.5);\n gap: calc(var(--spacing) * 1.5);\n }\n.gap-2 {\n gap: calc(0.25rem * 2);\n gap: calc(var(--spacing) * 2);\n }\n.gap-3 {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n.gap-4 {\n gap: calc(0.25rem * 4);\n gap: calc(var(--spacing) * 4);\n }\n.gap-5 {\n gap: calc(0.25rem * 5);\n gap: calc(var(--spacing) * 5);\n }\n.gap-6 {\n gap: calc(0.25rem * 6);\n gap: calc(var(--spacing) * 6);\n }\n.space-y-1 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 1) * 0);\n margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 1) * calc(1 - 0));\n margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n.space-y-2 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 2) * 0);\n margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 2) * calc(1 - 0));\n margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n.space-y-3 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 3) * 0);\n margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 3) * calc(1 - 0));\n margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n.space-y-4 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 4) * 0);\n margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 4) * calc(1 - 0));\n margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n.space-x-2 {\n :where(& > :not(:last-child)) {\n --tw-space-x-reverse: 0;\n margin-inline-start: calc(calc(0.25rem * 2) * 0);\n margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));\n margin-inline-end: calc(calc(0.25rem * 2) * calc(1 - 0));\n margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));\n }\n }\n.self-end {\n align-self: flex-end;\n }\n.self-start {\n align-self: flex-start;\n }\n.justify-self-end {\n justify-self: flex-end;\n }\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n.overflow-auto {\n overflow: auto;\n }\n.overflow-hidden {\n overflow: hidden;\n }\n.overflow-x-auto {\n overflow-x: auto;\n }\n.overflow-x-hidden {\n overflow-x: hidden;\n }\n.overflow-y-auto {\n overflow-y: auto;\n }\n.rounded {\n border-radius: 0.25rem;\n }\n.rounded-2xl {\n border-radius: 1rem;\n border-radius: var(--radius-2xl);\n }\n.rounded-\\\\[2px\\\\] {\n border-radius: 2px;\n }\n.rounded-\\\\[4px\\\\] {\n border-radius: 4px;\n }\n.rounded-\\\\[16px\\\\] {\n border-radius: 16px;\n }\n.rounded-\\\\[inherit\\\\] {\n border-radius: inherit;\n }\n.rounded-full {\n border-radius: calc(infinity * 1px);\n }\n.rounded-lg {\n border-radius: 0.625rem;\n }\n.rounded-md {\n border-radius: calc(0.625rem - 2px);\n }\n.rounded-none {\n border-radius: 0;\n }\n.rounded-sm {\n border-radius: calc(0.625rem - 4px);\n }\n.rounded-xl {\n border-radius: calc(0.625rem + 4px);\n }\n.rounded-b-xl {\n border-bottom-right-radius: calc(0.625rem + 4px);\n border-bottom-left-radius: calc(0.625rem + 4px);\n }\n.border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n.border-0 {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n.border-\\\\[1\\\\.5px\\\\] {\n border-style: var(--tw-border-style);\n border-width: 1.5px;\n }\n.border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n }\n.border-t-2 {\n border-top-style: var(--tw-border-style);\n border-top-width: 2px;\n }\n.border-b {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n.border-b-2 {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 2px;\n }\n.border-l {\n border-left-style: var(--tw-border-style);\n border-left-width: 1px;\n }\n.border-dashed {\n --tw-border-style: dashed;\n border-style: dashed;\n }\n.border-\\\\(--color-border\\\\) {\n border-color: oklch(0.922 0 0);\n border-color: var(--color-border);\n }\n.border-\\\\[\\\\#2A44D4\\\\] {\n border-color: #2A44D4;\n }\n.border-\\\\[\\\\#D4D5DE\\\\] {\n border-color: #D4D5DE;\n }\n.border-blue-600 {\n border-color: oklch(54.6% 0.245 262.881);\n border-color: var(--color-blue-600);\n }\n.border-border {\n border-color: oklch(0.922 0 0);\n }\n.border-border\\\\/50 {\n border-color: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n.border-destructive {\n border-color: oklch(0.577 0.245 27.325);\n }\n.border-gray-200 {\n border-color: oklch(92.8% 0.006 264.531);\n border-color: var(--color-gray-200);\n }\n.border-gray-300 {\n border-color: oklch(87.2% 0.01 258.338);\n border-color: var(--color-gray-300);\n }\n.border-input {\n border-color: oklch(0.922 0 0);\n }\n.border-purple-600 {\n border-color: oklch(55.8% 0.288 302.321);\n border-color: var(--color-purple-600);\n }\n.border-red-100 {\n border-color: oklch(93.6% 0.032 17.717);\n border-color: var(--color-red-100);\n }\n.border-red-200 {\n border-color: oklch(88.5% 0.062 18.334);\n border-color: var(--color-red-200);\n }\n.border-t-transparent {\n border-top-color: transparent;\n }\n.border-l-transparent {\n border-left-color: transparent;\n }\n.bg-\\\\(--color-bg\\\\) {\n background-color: var(--color-bg);\n }\n.bg-\\\\[\\\\#2A44D4\\\\] {\n background-color: #2A44D4;\n }\n.bg-\\\\[\\\\#EAECFB\\\\] {\n background-color: #EAECFB;\n }\n.bg-\\\\[\\\\#F9F9FE\\\\] {\n background-color: #F9F9FE;\n }\n.bg-accent {\n background-color: oklch(0.97 0 0);\n }\n.bg-amber-50 {\n background-color: oklch(98.7% 0.022 95.277);\n background-color: var(--color-amber-50);\n }\n.bg-background {\n background-color: oklch(1 0 0);\n }\n.bg-black {\n background-color: #000;\n background-color: var(--color-black);\n }\n.bg-black\\\\/10 {\n background-color: color-mix(in srgb, #000 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, #000 10%, transparent);\n background-color: color-mix(in oklab, var(--color-black) 10%, transparent);\n }\n }\n.bg-blue-50 {\n background-color: oklch(97% 0.014 254.604);\n background-color: var(--color-blue-50);\n }\n.bg-blue-600 {\n background-color: oklch(54.6% 0.245 262.881);\n background-color: var(--color-blue-600);\n }\n.bg-border {\n background-color: oklch(0.922 0 0);\n }\n.bg-cyan-50 {\n background-color: oklch(98.4% 0.019 200.873);\n background-color: var(--color-cyan-50);\n }\n.bg-destructive {\n background-color: oklch(0.577 0.245 27.325);\n }\n.bg-emerald-50 {\n background-color: oklch(97.9% 0.021 166.113);\n background-color: var(--color-emerald-50);\n }\n.bg-fuchsia-50 {\n background-color: oklch(97.7% 0.017 320.058);\n background-color: var(--color-fuchsia-50);\n }\n.bg-gray-50 {\n background-color: oklch(98.5% 0.002 247.839);\n background-color: var(--color-gray-50);\n }\n.bg-gray-100 {\n background-color: oklch(96.7% 0.003 264.542);\n background-color: var(--color-gray-100);\n }\n.bg-gray-300 {\n background-color: oklch(87.2% 0.01 258.338);\n background-color: var(--color-gray-300);\n }\n.bg-gray-400 {\n background-color: oklch(70.7% 0.022 261.325);\n background-color: var(--color-gray-400);\n }\n.bg-gray-500 {\n background-color: oklch(55.1% 0.027 264.364);\n background-color: var(--color-gray-500);\n }\n.bg-green-50 {\n background-color: oklch(98.2% 0.018 155.826);\n background-color: var(--color-green-50);\n }\n.bg-green-300 {\n background-color: oklch(87.1% 0.15 154.449);\n background-color: var(--color-green-300);\n }\n.bg-lime-50 {\n background-color: oklch(98.6% 0.031 120.757);\n background-color: var(--color-lime-50);\n }\n.bg-muted {\n background-color: oklch(0.97 0 0);\n }\n.bg-muted\\\\/50 {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent);\n }\n.bg-orange-50 {\n background-color: oklch(98% 0.016 73.684);\n background-color: var(--color-orange-50);\n }\n.bg-pink-50 {\n background-color: oklch(97.1% 0.014 343.198);\n background-color: var(--color-pink-50);\n }\n.bg-popover {\n background-color: oklch(1 0 0);\n }\n.bg-primary {\n background-color: oklch(0.205 0 0);\n }\n.bg-purple-50 {\n background-color: oklch(97.7% 0.014 308.299);\n background-color: var(--color-purple-50);\n }\n.bg-red-50 {\n background-color: oklch(97.1% 0.013 17.38);\n background-color: var(--color-red-50);\n }\n.bg-red-100 {\n background-color: oklch(93.6% 0.032 17.717);\n background-color: var(--color-red-100);\n }\n.bg-secondary {\n background-color: oklch(0.97 0 0);\n }\n.bg-slate-100 {\n background-color: oklch(96.8% 0.007 247.896);\n background-color: var(--color-slate-100);\n }\n.bg-teal-50 {\n background-color: oklch(98.4% 0.014 180.72);\n background-color: var(--color-teal-50);\n }\n.bg-transparent {\n background-color: transparent;\n }\n.bg-white {\n background-color: #fff;\n background-color: var(--color-white);\n }\n.bg-yellow-50 {\n background-color: oklch(98.7% 0.026 102.212);\n background-color: var(--color-yellow-50);\n }\n.fill-primary {\n fill: oklch(0.205 0 0);\n }\n.p-0 {\n padding: calc(0.25rem * 0);\n padding: calc(var(--spacing) * 0);\n }\n.p-0\\\\.5 {\n padding: calc(0.25rem * 0.5);\n padding: calc(var(--spacing) * 0.5);\n }\n.p-1 {\n padding: calc(0.25rem * 1);\n padding: calc(var(--spacing) * 1);\n }\n.p-2 {\n padding: calc(0.25rem * 2);\n padding: calc(var(--spacing) * 2);\n }\n.p-3 {\n padding: calc(0.25rem * 3);\n padding: calc(var(--spacing) * 3);\n }\n.p-4 {\n padding: calc(0.25rem * 4);\n padding: calc(var(--spacing) * 4);\n }\n.p-6 {\n padding: calc(0.25rem * 6);\n padding: calc(var(--spacing) * 6);\n }\n.p-\\\\[1em\\\\] {\n padding: 1em;\n }\n.p-px {\n padding: 1px;\n }\n.px-1 {\n padding-inline: calc(0.25rem * 1);\n padding-inline: calc(var(--spacing) * 1);\n }\n.px-2 {\n padding-inline: calc(0.25rem * 2);\n padding-inline: calc(var(--spacing) * 2);\n }\n.px-2\\\\.5 {\n padding-inline: calc(0.25rem * 2.5);\n padding-inline: calc(var(--spacing) * 2.5);\n }\n.px-3 {\n padding-inline: calc(0.25rem * 3);\n padding-inline: calc(var(--spacing) * 3);\n }\n.px-4 {\n padding-inline: calc(0.25rem * 4);\n padding-inline: calc(var(--spacing) * 4);\n }\n.px-6 {\n padding-inline: calc(0.25rem * 6);\n padding-inline: calc(var(--spacing) * 6);\n }\n.px-\\\\[1em\\\\] {\n padding-inline: 1em;\n }\n.py-0 {\n padding-block: calc(0.25rem * 0);\n padding-block: calc(var(--spacing) * 0);\n }\n.py-1 {\n padding-block: calc(0.25rem * 1);\n padding-block: calc(var(--spacing) * 1);\n }\n.py-1\\\\.5 {\n padding-block: calc(0.25rem * 1.5);\n padding-block: calc(var(--spacing) * 1.5);\n }\n.py-2 {\n padding-block: calc(0.25rem * 2);\n padding-block: calc(var(--spacing) * 2);\n }\n.py-3 {\n padding-block: calc(0.25rem * 3);\n padding-block: calc(var(--spacing) * 3);\n }\n.py-4 {\n padding-block: calc(0.25rem * 4);\n padding-block: calc(var(--spacing) * 4);\n }\n.py-6 {\n padding-block: calc(0.25rem * 6);\n padding-block: calc(var(--spacing) * 6);\n }\n.py-8 {\n padding-block: calc(0.25rem * 8);\n padding-block: calc(var(--spacing) * 8);\n }\n.py-12 {\n padding-block: calc(0.25rem * 12);\n padding-block: calc(var(--spacing) * 12);\n }\n.py-16 {\n padding-block: calc(0.25rem * 16);\n padding-block: calc(var(--spacing) * 16);\n }\n.py-\\\\[11px\\\\] {\n padding-block: 11px;\n }\n.pt-1 {\n padding-top: calc(0.25rem * 1);\n padding-top: calc(var(--spacing) * 1);\n }\n.pt-2 {\n padding-top: calc(0.25rem * 2);\n padding-top: calc(var(--spacing) * 2);\n }\n.pt-3 {\n padding-top: calc(0.25rem * 3);\n padding-top: calc(var(--spacing) * 3);\n }\n.pt-4 {\n padding-top: calc(0.25rem * 4);\n padding-top: calc(var(--spacing) * 4);\n }\n.pr-2 {\n padding-right: calc(0.25rem * 2);\n padding-right: calc(var(--spacing) * 2);\n }\n.pr-8 {\n padding-right: calc(0.25rem * 8);\n padding-right: calc(var(--spacing) * 8);\n }\n.pr-16 {\n padding-right: calc(0.25rem * 16);\n padding-right: calc(var(--spacing) * 16);\n }\n.pb-3 {\n padding-bottom: calc(0.25rem * 3);\n padding-bottom: calc(var(--spacing) * 3);\n }\n.pb-4 {\n padding-bottom: calc(0.25rem * 4);\n padding-bottom: calc(var(--spacing) * 4);\n }\n.pl-1 {\n padding-left: calc(0.25rem * 1);\n padding-left: calc(var(--spacing) * 1);\n }\n.pl-2 {\n padding-left: calc(0.25rem * 2);\n padding-left: calc(var(--spacing) * 2);\n }\n.pl-4 {\n padding-left: calc(0.25rem * 4);\n padding-left: calc(var(--spacing) * 4);\n }\n.pl-9 {\n padding-left: calc(0.25rem * 9);\n padding-left: calc(var(--spacing) * 9);\n }\n.text-center {\n text-align: center;\n }\n.text-left {\n text-align: left;\n }\n.align-middle {\n vertical-align: middle;\n }\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--font-mono);\n }\n.text-2xl {\n font-size: 1.5rem;\n font-size: var(--text-2xl);\n line-height: calc(2 / 1.5);\n line-height: var(--tw-leading, var(--text-2xl--line-height));\n }\n.text-3xl {\n font-size: 1.875rem;\n font-size: var(--text-3xl);\n line-height: calc(2.25 / 1.875);\n line-height: var(--tw-leading, var(--text-3xl--line-height));\n }\n.text-4xl {\n font-size: 2.25rem;\n font-size: var(--text-4xl);\n line-height: calc(2.5 / 2.25);\n line-height: var(--tw-leading, var(--text-4xl--line-height));\n }\n.text-5xl {\n font-size: 3rem;\n font-size: var(--text-5xl);\n line-height: 1;\n line-height: var(--tw-leading, var(--text-5xl--line-height));\n }\n.text-base {\n font-size: 1rem;\n font-size: var(--text-base);\n line-height: calc(1.5 / 1);\n line-height: var(--tw-leading, var(--text-base--line-height));\n }\n.text-lg {\n font-size: 1.125rem;\n font-size: var(--text-lg);\n line-height: calc(1.75 / 1.125);\n line-height: var(--tw-leading, var(--text-lg--line-height));\n }\n.text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n.text-xl {\n font-size: 1.25rem;\n font-size: var(--text-xl);\n line-height: calc(1.75 / 1.25);\n line-height: var(--tw-leading, var(--text-xl--line-height));\n }\n.text-xs {\n font-size: 0.75rem;\n font-size: var(--text-xs);\n line-height: calc(1 / 0.75);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n }\n.text-\\\\[0\\\\.8rem\\\\] {\n font-size: 0.8rem;\n }\n.leading-4 {\n --tw-leading: calc(var(--spacing) * 4);\n line-height: calc(0.25rem * 4);\n line-height: calc(var(--spacing) * 4);\n }\n.leading-\\\\[2\\\\.5rem\\\\] {\n --tw-leading: 2.5rem;\n line-height: 2.5rem;\n }\n.leading-\\\\[2rem\\\\] {\n --tw-leading: 2rem;\n line-height: 2rem;\n }\n.leading-\\\\[3rem\\\\] {\n --tw-leading: 3rem;\n line-height: 3rem;\n }\n.leading-\\\\[4rem\\\\] {\n --tw-leading: 4rem;\n line-height: 4rem;\n }\n.leading-none {\n --tw-leading: 1;\n line-height: 1;\n }\n.leading-normal {\n --tw-leading: var(--leading-normal);\n line-height: 1.5;\n line-height: var(--leading-normal);\n }\n.leading-relaxed {\n --tw-leading: var(--leading-relaxed);\n line-height: 1.625;\n line-height: var(--leading-relaxed);\n }\n.leading-snug {\n --tw-leading: var(--leading-snug);\n line-height: 1.375;\n line-height: var(--leading-snug);\n }\n.font-bold {\n --tw-font-weight: var(--font-weight-bold);\n font-weight: 700;\n font-weight: var(--font-weight-bold);\n }\n.font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n.font-normal {\n --tw-font-weight: var(--font-weight-normal);\n font-weight: 400;\n font-weight: var(--font-weight-normal);\n }\n.font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: 600;\n font-weight: var(--font-weight-semibold);\n }\n.text-balance {\n text-wrap: balance;\n }\n.text-wrap {\n text-wrap: wrap;\n }\n.break-words {\n overflow-wrap: break-word;\n }\n.break-all {\n word-break: break-all;\n }\n.whitespace-normal {\n white-space: normal;\n }\n.whitespace-nowrap {\n white-space: nowrap;\n }\n.whitespace-pre-wrap {\n white-space: pre-wrap;\n }\n.text-\\\\[\\\\#020D21\\\\] {\n color: #020D21;\n }\n.text-\\\\[\\\\#263DBF\\\\] {\n color: #263DBF;\n }\n.text-\\\\[\\\\#687387\\\\] {\n color: #687387;\n }\n.text-amber-900 {\n color: oklch(41.4% 0.112 45.904);\n color: var(--color-amber-900);\n }\n.text-black {\n color: #000;\n color: var(--color-black);\n }\n.text-blue-500 {\n color: oklch(62.3% 0.214 259.815);\n color: var(--color-blue-500);\n }\n.text-blue-600 {\n color: oklch(54.6% 0.245 262.881);\n color: var(--color-blue-600);\n }\n.text-blue-900 {\n color: oklch(37.9% 0.146 265.522);\n color: var(--color-blue-900);\n }\n.text-card-foreground {\n color: oklch(0.145 0 0);\n }\n.text-current {\n color: currentcolor;\n }\n.text-cyan-900 {\n color: oklch(39.8% 0.07 227.392);\n color: var(--color-cyan-900);\n }\n.text-destructive {\n color: oklch(0.577 0.245 27.325);\n }\n.text-emerald-900 {\n color: oklch(37.8% 0.077 168.94);\n color: var(--color-emerald-900);\n }\n.text-foreground {\n color: oklch(0.145 0 0);\n }\n.text-fuchsia-900 {\n color: oklch(40.1% 0.17 325.612);\n color: var(--color-fuchsia-900);\n }\n.text-gray-400 {\n color: oklch(70.7% 0.022 261.325);\n color: var(--color-gray-400);\n }\n.text-gray-500 {\n color: oklch(55.1% 0.027 264.364);\n color: var(--color-gray-500);\n }\n.text-gray-600 {\n color: oklch(44.6% 0.03 256.802);\n color: var(--color-gray-600);\n }\n.text-gray-700 {\n color: oklch(37.3% 0.034 259.733);\n color: var(--color-gray-700);\n }\n.text-gray-800 {\n color: oklch(27.8% 0.033 256.848);\n color: var(--color-gray-800);\n }\n.text-gray-900 {\n color: oklch(21% 0.034 264.665);\n color: var(--color-gray-900);\n }\n.text-green-600 {\n color: oklch(62.7% 0.194 149.214);\n color: var(--color-green-600);\n }\n.text-green-900 {\n color: oklch(39.3% 0.095 152.535);\n color: var(--color-green-900);\n }\n.text-lime-900 {\n color: oklch(40.5% 0.101 131.063);\n color: var(--color-lime-900);\n }\n.text-muted-foreground {\n color: oklch(0.556 0 0);\n }\n.text-orange-900 {\n color: oklch(40.8% 0.123 38.172);\n color: var(--color-orange-900);\n }\n.text-pink-900 {\n color: oklch(40.8% 0.153 2.432);\n color: var(--color-pink-900);\n }\n.text-popover-foreground {\n color: oklch(0.145 0 0);\n }\n.text-primary {\n color: oklch(0.205 0 0);\n }\n.text-primary-foreground {\n color: oklch(0.985 0 0);\n }\n.text-purple-900 {\n color: oklch(38.1% 0.176 304.987);\n color: var(--color-purple-900);\n }\n.text-red-500 {\n color: oklch(63.7% 0.237 25.331);\n color: var(--color-red-500);\n }\n.text-red-600 {\n color: oklch(57.7% 0.245 27.325);\n color: var(--color-red-600);\n }\n.text-red-900 {\n color: oklch(39.6% 0.141 25.723);\n color: var(--color-red-900);\n }\n.text-secondary-foreground {\n color: oklch(0.205 0 0);\n }\n.text-teal-900 {\n color: oklch(38.6% 0.063 188.416);\n color: var(--color-teal-900);\n }\n.text-white {\n color: #fff;\n color: var(--color-white);\n }\n.text-yellow-900 {\n color: oklch(42.1% 0.095 57.708);\n color: var(--color-yellow-900);\n }\n.italic {\n font-style: italic;\n }\n.tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: tabular-nums ;\n font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);\n }\n.underline {\n text-decoration-line: underline;\n }\n.underline-offset-4 {\n text-underline-offset: 4px;\n }\n.opacity-50 {\n opacity: 50%;\n }\n.opacity-60 {\n opacity: 60%;\n }\n.opacity-100 {\n opacity: 100%;\n }\n.shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-2xl {\n --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 25px 50px -12px rgb(0 0 0 / 0.25);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-\\\\[0px_8px_16px_-4px_rgba\\\\(0\\\\,0\\\\,0\\\\,0\\\\.1\\\\)\\\\] {\n --tw-shadow: 0px 8px 16px -4px var(--tw-shadow-color, rgba(0,0,0,0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0px 8px 16px -4px rgba(0,0,0,0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-none {\n --tw-shadow: 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xs {\n --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 2px 0 rgb(0 0 0 / 0.05);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-1 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-2 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-black {\n --tw-ring-color: var(--color-black);\n }\n.ring-blue-500 {\n --tw-ring-color: var(--color-blue-500);\n }\n.ring-foreground {\n --tw-ring-color: oklch(0.145 0 0);\n }\n.ring-gray-500 {\n --tw-ring-color: var(--color-gray-500);\n }\n.ring-gray-500\\\\/10 {\n --tw-ring-color: color-mix(in srgb, oklch(55.1% 0.027 264.364) 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-gray-500) 10%, transparent);\n }\n }\n.ring-offset-background {\n --tw-ring-offset-color: oklch(1 0 0);\n }\n.outline-hidden {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n.outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n.filter {\n filter: ;\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n.backdrop-blur-md {\n --tw-backdrop-blur: blur(var(--blur-md));\n -webkit-backdrop-filter: blur(12px) ;\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: blur(12px) ;\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n.backdrop-blur-sm {\n --tw-backdrop-blur: blur(var(--blur-sm));\n -webkit-backdrop-filter: blur(8px) ;\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: blur(8px) ;\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n.backdrop-blur-xs {\n --tw-backdrop-blur: blur(var(--blur-xs));\n -webkit-backdrop-filter: blur(4px) ;\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: blur(4px) ;\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n.backdrop-filter {\n -webkit-backdrop-filter: ;\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: ;\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n.transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-\\\\[color\\\\,box-shadow\\\\] {\n transition-property: color,box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-transform {\n transition-property: transform, translate, scale, rotate;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-none {\n transition-property: none;\n }\n.duration-100 {\n --tw-duration: 100ms;\n transition-duration: 100ms;\n }\n.duration-200 {\n --tw-duration: 200ms;\n transition-duration: 200ms;\n }\n.ease-in-out {\n --tw-ease: var(--ease-in-out);\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--ease-in-out);\n }\n.animate-in {\n animation-name: enter;\n animation-duration: 150ms;\n --tw-enter-opacity: initial;\n --tw-enter-scale: initial;\n --tw-enter-rotate: initial;\n --tw-enter-translate-x: initial;\n --tw-enter-translate-y: initial;\n }\n.outline-none {\n --tw-outline-style: none;\n outline-style: none;\n }\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n.duration-100 {\n animation-duration: 100ms;\n }\n.duration-200 {\n animation-duration: 200ms;\n }\n.ease-in-out {\n animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n }\n.fade-in-0 {\n --tw-enter-opacity: 0;\n }\n.ring-inset {\n --tw-ring-inset: inset;\n }\n.zoom-in-95 {\n --tw-enter-scale: .95;\n }\n.group-has-\\\\[\\\\[data-orientation\\\\=horizontal\\\\]\\\\]\\\\/field\\\\:text-balance {\n &:is(:where(.group\\\\/field):has(*:is([data-orientation=horizontal])) *) {\n text-wrap: balance;\n }\n }\n.group-data-\\\\[disabled\\\\=true\\\\]\\\\:pointer-events-none {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n pointer-events: none;\n }\n }\n.group-data-\\\\[disabled\\\\=true\\\\]\\\\:opacity-50 {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n opacity: 50%;\n }\n }\n.group-data-\\\\[disabled\\\\=true\\\\]\\\\/field\\\\:opacity-50 {\n &:is(:where(.group\\\\/field)[data-disabled=\"true\"] *) {\n opacity: 50%;\n }\n }\n.group-data-\\\\[variant\\\\=outline\\\\]\\\\/field-group\\\\:-mb-2 {\n &:is(:where(.group\\\\/field-group)[data-variant=\"outline\"] *) {\n margin-bottom: calc(0.25rem * -2);\n margin-bottom: calc(var(--spacing) * -2);\n }\n }\n.peer-disabled\\\\:cursor-not-allowed {\n &:is(:where(.peer):disabled ~ *) {\n cursor: not-allowed;\n }\n }\n.peer-disabled\\\\:opacity-50 {\n &:is(:where(.peer):disabled ~ *) {\n opacity: 50%;\n }\n }\n.selection\\\\:bg-primary {\n & *::-moz-selection {\n background-color: oklch(0.205 0 0);\n }\n & *::selection {\n background-color: oklch(0.205 0 0);\n }\n &::-moz-selection {\n background-color: oklch(0.205 0 0);\n }\n &::selection {\n background-color: oklch(0.205 0 0);\n }\n }\n.selection\\\\:text-primary-foreground {\n & *::-moz-selection {\n color: oklch(0.985 0 0);\n }\n & *::selection {\n color: oklch(0.985 0 0);\n }\n &::-moz-selection {\n color: oklch(0.985 0 0);\n }\n &::selection {\n color: oklch(0.985 0 0);\n }\n }\n.file\\\\:inline-flex {\n &::file-selector-button {\n display: inline-flex;\n }\n }\n.file\\\\:h-7 {\n &::file-selector-button {\n height: calc(0.25rem * 7);\n height: calc(var(--spacing) * 7);\n }\n }\n.file\\\\:border-0 {\n &::file-selector-button {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.file\\\\:bg-transparent {\n &::file-selector-button {\n background-color: transparent;\n }\n }\n.file\\\\:text-sm {\n &::file-selector-button {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n }\n.file\\\\:font-medium {\n &::file-selector-button {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n }\n.file\\\\:text-foreground {\n &::file-selector-button {\n color: oklch(0.145 0 0);\n }\n }\n.placeholder\\\\:text-muted-foreground {\n &::-moz-placeholder {\n color: oklch(0.556 0 0);\n }\n &::placeholder {\n color: oklch(0.556 0 0);\n }\n }\n.last\\\\:mt-0 {\n &:last-child {\n margin-top: calc(0.25rem * 0);\n margin-top: calc(var(--spacing) * 0);\n }\n }\n.last\\\\:border-b-0 {\n &:last-child {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 0px;\n }\n }\n.hover\\\\:cursor-pointer {\n &:hover {\n cursor: pointer\n }\n }\n.hover\\\\:bg-\\\\[\\\\#2A44D4\\\\] {\n &:hover {\n background-color: #2A44D4\n }\n }\n.hover\\\\:bg-\\\\[\\\\#EAECFB\\\\] {\n &:hover {\n background-color: #EAECFB\n }\n }\n.hover\\\\:bg-accent {\n &:hover {\n background-color: oklch(0.97 0 0)\n }\n }\n.hover\\\\:bg-destructive\\\\/90 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 90%, transparent)\n }\n }\n.hover\\\\:bg-gray-50 {\n &:hover {\n background-color: oklch(98.5% 0.002 247.839);\n background-color: var(--color-gray-50)\n }\n }\n.hover\\\\:bg-gray-100 {\n &:hover {\n background-color: oklch(96.7% 0.003 264.542);\n background-color: var(--color-gray-100)\n }\n }\n.hover\\\\:bg-gray-200 {\n &:hover {\n background-color: oklch(92.8% 0.006 264.531);\n background-color: var(--color-gray-200)\n }\n }\n.hover\\\\:bg-muted\\\\/30 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 30%, transparent)\n }\n }\n.hover\\\\:bg-muted\\\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent)\n }\n }\n.hover\\\\:bg-primary\\\\/90 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.205 0 0) 90%, transparent)\n }\n }\n.hover\\\\:bg-red-200 {\n &:hover {\n background-color: oklch(88.5% 0.062 18.334);\n background-color: var(--color-red-200)\n }\n }\n.hover\\\\:bg-secondary\\\\/80 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 80%, transparent)\n }\n }\n.hover\\\\:text-\\\\[\\\\#263DBF\\\\] {\n &:hover {\n color: #263DBF\n }\n }\n.hover\\\\:text-accent-foreground {\n &:hover {\n color: oklch(0.205 0 0)\n }\n }\n.hover\\\\:text-blue-600 {\n &:hover {\n color: oklch(54.6% 0.245 262.881);\n color: var(--color-blue-600)\n }\n }\n.hover\\\\:text-gray-600 {\n &:hover {\n color: oklch(44.6% 0.03 256.802);\n color: var(--color-gray-600)\n }\n }\n.hover\\\\:text-white {\n &:hover {\n color: #fff;\n color: var(--color-white)\n }\n }\n.hover\\\\:underline {\n &:hover {\n text-decoration-line: underline\n }\n }\n.focus\\\\:bg-blue-50 {\n &:focus {\n background-color: oklch(97% 0.014 254.604);\n background-color: var(--color-blue-50);\n }\n }\n.focus\\\\:ring-2 {\n &:focus {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus\\\\:ring-\\\\[\\\\#2A44D4\\\\] {\n &:focus {\n --tw-ring-color: #2A44D4;\n }\n }\n.focus\\\\:ring-blue-500 {\n &:focus {\n --tw-ring-color: var(--color-blue-500);\n }\n }\n.focus\\\\:outline-none {\n &:focus {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n.focus-visible\\\\:border-ring {\n &:focus-visible {\n border-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\\\:ring-2 {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\\\:ring-\\\\[3px\\\\] {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\\\:ring-destructive {\n &:focus-visible {\n --tw-ring-color: oklch(0.577 0.245 27.325);\n }\n }\n.focus-visible\\\\:ring-destructive\\\\/20 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 20%, transparent);\n }\n }\n.focus-visible\\\\:ring-ring {\n &:focus-visible {\n --tw-ring-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\\\:ring-ring\\\\/50 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.708 0 0) 50%, transparent);\n }\n }\n.focus-visible\\\\:ring-offset-2 {\n &:focus-visible {\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n }\n }\n.focus-visible\\\\:outline-none {\n &:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n.disabled\\\\:pointer-events-none {\n &:disabled {\n pointer-events: none;\n }\n }\n.disabled\\\\:cursor-not-allowed {\n &:disabled {\n cursor: not-allowed;\n }\n }\n.disabled\\\\:text-gray-400 {\n &:disabled {\n color: oklch(70.7% 0.022 261.325);\n color: var(--color-gray-400);\n }\n }\n.disabled\\\\:opacity-50 {\n &:disabled {\n opacity: 50%;\n }\n }\n.has-data-checked\\\\:border-primary\\\\/30 {\n &:has(*[data-checked]) {\n border-color: color-mix(in oklab, oklch(0.205 0 0) 30%, transparent);\n }\n }\n.has-data-checked\\\\:bg-primary\\\\/5 {\n &:has(*[data-checked]) {\n background-color: color-mix(in oklab, oklch(0.205 0 0) 5%, transparent);\n }\n }\n.has-data-\\\\[slot\\\\=card-action\\\\]\\\\:grid-cols-\\\\[1fr_auto\\\\] {\n &:has(*[data-slot=\"card-action\"]) {\n grid-template-columns: 1fr auto;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=checkbox-group\\\\]\\\\]\\\\:gap-3 {\n &:has(>[data-slot=checkbox-group]) {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field-content\\\\]\\\\]\\\\:items-start {\n &:has(>[data-slot=field-content]) {\n align-items: flex-start;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field\\\\]\\\\]\\\\:w-full {\n &:has(>[data-slot=field]) {\n width: 100%;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field\\\\]\\\\]\\\\:flex-col {\n &:has(>[data-slot=field]) {\n flex-direction: column;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field\\\\]\\\\]\\\\:rounded-lg {\n &:has(>[data-slot=field]) {\n border-radius: 0.625rem;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field\\\\]\\\\]\\\\:border {\n &:has(>[data-slot=field]) {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=radio-group\\\\]\\\\]\\\\:gap-3 {\n &:has(>[data-slot=radio-group]) {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n }\n.has-\\\\[\\\\>svg\\\\]\\\\:px-2\\\\.5 {\n &:has(>svg) {\n padding-inline: calc(0.25rem * 2.5);\n padding-inline: calc(var(--spacing) * 2.5);\n }\n }\n.has-\\\\[\\\\>svg\\\\]\\\\:px-3 {\n &:has(>svg) {\n padding-inline: calc(0.25rem * 3);\n padding-inline: calc(var(--spacing) * 3);\n }\n }\n.has-\\\\[\\\\>svg\\\\]\\\\:px-4 {\n &:has(>svg) {\n padding-inline: calc(0.25rem * 4);\n padding-inline: calc(var(--spacing) * 4);\n }\n }\n.aria-invalid\\\\:border-destructive {\n &[aria-invalid=\"true\"] {\n border-color: oklch(0.577 0.245 27.325);\n }\n }\n.aria-invalid\\\\:ring-destructive\\\\/20 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 20%, transparent);\n }\n }\n.data-\\\\[invalid\\\\=true\\\\]\\\\:text-destructive {\n &[data-invalid=\"true\"] {\n color: oklch(0.577 0.245 27.325);\n }\n }\n.data-\\\\[orientation\\\\=horizontal\\\\]\\\\:h-px {\n &[data-orientation=\"horizontal\"] {\n height: 1px;\n }\n }\n.data-\\\\[orientation\\\\=horizontal\\\\]\\\\:w-full {\n &[data-orientation=\"horizontal\"] {\n width: 100%;\n }\n }\n.data-\\\\[orientation\\\\=vertical\\\\]\\\\:h-full {\n &[data-orientation=\"vertical\"] {\n height: 100%;\n }\n }\n.data-\\\\[orientation\\\\=vertical\\\\]\\\\:w-px {\n &[data-orientation=\"vertical\"] {\n width: 1px;\n }\n }\n.data-\\\\[side\\\\=bottom\\\\]\\\\:slide-in-from-top-2 {\n &[data-side=\"bottom\"] {\n --tw-enter-translate-y: -0.5rem;\n }\n }\n.data-\\\\[side\\\\=left\\\\]\\\\:slide-in-from-right-2 {\n &[data-side=\"left\"] {\n --tw-enter-translate-x: 0.5rem;\n }\n }\n.data-\\\\[side\\\\=right\\\\]\\\\:slide-in-from-left-2 {\n &[data-side=\"right\"] {\n --tw-enter-translate-x: -0.5rem;\n }\n }\n.data-\\\\[side\\\\=top\\\\]\\\\:slide-in-from-bottom-2 {\n &[data-side=\"top\"] {\n --tw-enter-translate-y: 0.5rem;\n }\n }\n.data-\\\\[slot\\\\=checkbox-group\\\\]\\\\:gap-3 {\n &[data-slot=\"checkbox-group\"] {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:rounded-md {\n &[data-state=\"active\"] {\n border-radius: calc(0.625rem - 2px);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:border {\n &[data-state=\"active\"] {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:border-solid {\n &[data-state=\"active\"] {\n --tw-border-style: solid;\n border-style: solid;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:border-\\\\[\\\\#2A44D4\\\\] {\n &[data-state=\"active\"] {\n border-color: #2A44D4;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:bg-\\\\[\\\\#EAECFB\\\\] {\n &[data-state=\"active\"] {\n background-color: #EAECFB;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:bg-background {\n &[data-state=\"active\"] {\n background-color: oklch(1 0 0);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:text-\\\\[\\\\#263DBF\\\\] {\n &[data-state=\"active\"] {\n color: #263DBF;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:text-foreground {\n &[data-state=\"active\"] {\n color: oklch(0.145 0 0);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:shadow {\n &[data-state=\"active\"] {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:shadow-none {\n &[data-state=\"active\"] {\n --tw-shadow: 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.data-\\\\[state\\\\=checked\\\\]\\\\:border-primary {\n &[data-state=\"checked\"] {\n border-color: oklch(0.205 0 0);\n }\n }\n.data-\\\\[state\\\\=checked\\\\]\\\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.data-\\\\[state\\\\=checked\\\\]\\\\:text-primary-foreground {\n &[data-state=\"checked\"] {\n color: oklch(0.985 0 0);\n }\n }\n.data-\\\\[state\\\\=closed\\\\]\\\\:animate-out {\n &[data-state=\"closed\"] {\n animation-name: exit;\n animation-duration: 150ms;\n --tw-exit-opacity: initial;\n --tw-exit-scale: initial;\n --tw-exit-rotate: initial;\n --tw-exit-translate-x: initial;\n --tw-exit-translate-y: initial;\n }\n }\n.data-\\\\[state\\\\=closed\\\\]\\\\:fade-out-0 {\n &[data-state=\"closed\"] {\n --tw-exit-opacity: 0;\n }\n }\n.data-\\\\[state\\\\=closed\\\\]\\\\:zoom-out-95 {\n &[data-state=\"closed\"] {\n --tw-exit-scale: .95;\n }\n }\n.data-\\\\[state\\\\=open\\\\]\\\\:animate-in {\n &[data-state=\"open\"] {\n animation-name: enter;\n animation-duration: 150ms;\n --tw-enter-opacity: initial;\n --tw-enter-scale: initial;\n --tw-enter-rotate: initial;\n --tw-enter-translate-x: initial;\n --tw-enter-translate-y: initial;\n }\n }\n.data-\\\\[state\\\\=open\\\\]\\\\:fade-in-0 {\n &[data-state=\"open\"] {\n --tw-enter-opacity: 0;\n }\n }\n.data-\\\\[state\\\\=open\\\\]\\\\:zoom-in-95 {\n &[data-state=\"open\"] {\n --tw-enter-scale: .95;\n }\n }\n.data-\\\\[state\\\\=selected\\\\]\\\\:bg-muted {\n &[data-state=\"selected\"] {\n background-color: oklch(0.97 0 0);\n }\n }\n.data-\\\\[variant\\\\=label\\\\]\\\\:text-sm {\n &[data-variant=\"label\"] {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n }\n.data-\\\\[variant\\\\=legend\\\\]\\\\:text-base {\n &[data-variant=\"legend\"] {\n font-size: 1rem;\n font-size: var(--text-base);\n line-height: calc(1.5 / 1);\n line-height: var(--tw-leading, var(--text-base--line-height));\n }\n }\n.nth-last-2\\\\:-mt-1 {\n &:nth-last-child(2) {\n margin-top: calc(0.25rem * -1);\n margin-top: calc(var(--spacing) * -1);\n }\n }\n.sm\\\\:flex-row {\n flex-direction: row\n }\n.sm\\\\:justify-end {\n justify-content: flex-end\n }\n.md\\\\:text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height))\n }\n.\\\\@md\\\\/field-group\\\\:flex-row {\n @container field-group (width >= 28rem) {\n flex-direction: row;\n }\n }\n.\\\\@md\\\\/field-group\\\\:items-center {\n @container field-group (width >= 28rem) {\n align-items: center;\n }\n }\n.\\\\@md\\\\/field-group\\\\:has-\\\\[\\\\>\\\\[data-slot\\\\=field-content\\\\]\\\\]\\\\:items-start {\n @container field-group (width >= 28rem) {\n &:has(>[data-slot=field-content]) {\n align-items: flex-start;\n }\n }\n }\n.dark\\\\:border-input {\n border-color: oklch(0.922 0 0)\n }\n.dark\\\\:bg-destructive\\\\/60 {\n background-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 60%, transparent)\n }\n.dark\\\\:bg-input\\\\/30 {\n background-color: color-mix(in oklab, oklch(0.922 0 0) 30%, transparent)\n }\n.dark\\\\:hover\\\\:bg-accent\\\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent)\n }\n }\n.dark\\\\:hover\\\\:bg-input\\\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent)\n }\n }\n.dark\\\\:focus-visible\\\\:ring-destructive\\\\/40 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 40%, transparent);\n }\n }\n.dark\\\\:has-data-checked\\\\:border-primary\\\\/20 {\n &:has(*[data-checked]) {\n border-color: color-mix(in oklab, oklch(0.205 0 0) 20%, transparent);\n }\n }\n.dark\\\\:has-data-checked\\\\:bg-primary\\\\/10 {\n &:has(*[data-checked]) {\n background-color: color-mix(in oklab, oklch(0.205 0 0) 10%, transparent);\n }\n }\n.dark\\\\:aria-invalid\\\\:ring-destructive\\\\/40 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 40%, transparent);\n }\n }\n.dark\\\\:data-\\\\[state\\\\=checked\\\\]\\\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-cartesian-axis-tick_text\\\\]\\\\:fill-muted-foreground {\n & .recharts-cartesian-axis-tick text {\n fill: oklch(0.556 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-cartesian-grid_line\\\\[stroke\\\\=\\\\'\\\\#ccc\\\\'\\\\]\\\\]\\\\:stroke-border\\\\/50 {\n & .recharts-cartesian-grid line[stroke='#ccc'] {\n stroke: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-curve\\\\.recharts-tooltip-cursor\\\\]\\\\:stroke-border {\n & .recharts-curve.recharts-tooltip-cursor {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-dot\\\\[stroke\\\\=\\\\'\\\\#fff\\\\'\\\\]\\\\]\\\\:stroke-transparent {\n & .recharts-dot[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\\\[\\\\&_\\\\.recharts-layer\\\\]\\\\:outline-hidden {\n & .recharts-layer {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\\\[\\\\&_\\\\.recharts-polar-grid_\\\\[stroke\\\\=\\\\'\\\\#ccc\\\\'\\\\]\\\\]\\\\:stroke-border {\n & .recharts-polar-grid [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-radial-bar-background-sector\\\\]\\\\:fill-muted {\n & .recharts-radial-bar-background-sector {\n fill: oklch(0.97 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-rectangle\\\\.recharts-tooltip-cursor\\\\]\\\\:fill-muted {\n & .recharts-rectangle.recharts-tooltip-cursor {\n fill: oklch(0.97 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-reference-line_\\\\[stroke\\\\=\\\\'\\\\#ccc\\\\'\\\\]\\\\]\\\\:stroke-border {\n & .recharts-reference-line [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-sector\\\\]\\\\:outline-hidden {\n & .recharts-sector {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\\\[\\\\&_\\\\.recharts-sector\\\\[stroke\\\\=\\\\'\\\\#fff\\\\'\\\\]\\\\]\\\\:stroke-transparent {\n & .recharts-sector[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\\\[\\\\&_\\\\.recharts-surface\\\\]\\\\:outline-hidden {\n & .recharts-surface {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\\\[\\\\&_svg\\\\]\\\\:pointer-events-none {\n & svg {\n pointer-events: none;\n }\n }\n.\\\\[\\\\&_svg\\\\]\\\\:shrink-0 {\n & svg {\n flex-shrink: 0;\n }\n }\n.\\\\[\\\\&_svg\\\\:not\\\\(\\\\[class\\\\*\\\\=\\\\'size-\\\\'\\\\]\\\\)\\\\]\\\\:size-4 {\n & svg:not([class*='size-']) {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n }\n.\\\\[\\\\&_tr\\\\]\\\\:border-b {\n & tr {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n }\n.\\\\[\\\\&_tr\\\\:last-child\\\\]\\\\:border-0 {\n & tr:last-child {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.\\\\[\\\\&\\\\:has\\\\(\\\\[role\\\\=checkbox\\\\]\\\\)\\\\]\\\\:pr-0 {\n &:has([role=checkbox]) {\n padding-right: calc(0.25rem * 0);\n padding-right: calc(var(--spacing) * 0);\n }\n }\n.\\\\[\\\\.border-b\\\\]\\\\:pb-6 {\n &:is(.border-b) {\n padding-bottom: calc(0.25rem * 6);\n padding-bottom: calc(var(--spacing) * 6);\n }\n }\n.\\\\*\\\\:\\\\[a\\\\]\\\\:underline {\n :is(& > *) {\n &:is(a) {\n text-decoration-line: underline;\n }\n }\n }\n.\\\\*\\\\:\\\\[a\\\\]\\\\:underline-offset-3 {\n :is(& > *) {\n &:is(a) {\n text-underline-offset: 3px;\n }\n }\n }\n.\\\\*\\\\:\\\\[a\\\\]\\\\:hover\\\\:text-foreground {\n :is(& > *) {\n &:is(a) {\n &:hover {\n color: oklch(0.145 0 0)\n }\n }\n }\n }\n.\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:w-full {\n &>* {\n width: 100%;\n }\n }\n.\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:data-\\\\[slot\\\\=field\\\\]\\\\:p-2\\\\.5 {\n &>* {\n &[data-slot=\"field\"] {\n padding: calc(0.25rem * 2.5);\n padding: calc(var(--spacing) * 2.5);\n }\n }\n }\n.\\\\@md\\\\/field-group\\\\:\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:w-auto {\n @container field-group (width >= 28rem) {\n &>* {\n width: auto;\n }\n }\n }\n.\\\\[\\\\&\\\\>\\\\.sr-only\\\\]\\\\:w-auto {\n &>.sr-only {\n width: auto;\n }\n }\n.\\\\[\\\\&\\\\>\\\\[data-slot\\\\=field-group\\\\]\\\\]\\\\:gap-4 {\n &>[data-slot=field-group] {\n gap: calc(0.25rem * 4);\n gap: calc(var(--spacing) * 4);\n }\n }\n.\\\\[\\\\&\\\\>\\\\[data-slot\\\\=field-label\\\\]\\\\]\\\\:flex-auto {\n &>[data-slot=field-label] {\n flex: auto;\n }\n }\n.\\\\@md\\\\/field-group\\\\:\\\\[\\\\&\\\\>\\\\[data-slot\\\\=field-label\\\\]\\\\]\\\\:flex-auto {\n @container field-group (width >= 28rem) {\n &>[data-slot=field-label] {\n flex: auto;\n }\n }\n }\n.\\\\[\\\\&\\\\>\\\\[role\\\\=checkbox\\\\]\\\\]\\\\:translate-y-\\\\[2px\\\\] {\n &>[role=checkbox] {\n --tw-translate-y: 2px;\n translate: var(--tw-translate-x) 2px;\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field-content\\\\]\\\\]\\\\:\\\\[\\\\&\\\\>\\\\[role\\\\=checkbox\\\\]\\\\,\\\\[role\\\\=radio\\\\]\\\\]\\\\:mt-px {\n &:has(>[data-slot=field-content]) {\n &>[role=checkbox],[role=radio] {\n margin-top: 1px;\n }\n }\n }\n.\\\\@md\\\\/field-group\\\\:has-\\\\[\\\\>\\\\[data-slot\\\\=field-content\\\\]\\\\]\\\\:\\\\[\\\\&\\\\>\\\\[role\\\\=checkbox\\\\]\\\\,\\\\[role\\\\=radio\\\\]\\\\]\\\\:mt-px {\n @container field-group (width >= 28rem) {\n &:has(>[data-slot=field-content]) {\n &>[role=checkbox],[role=radio] {\n margin-top: 1px;\n }\n }\n }\n }\n.\\\\[\\\\&\\\\>a\\\\]\\\\:underline {\n &>a {\n text-decoration-line: underline;\n }\n }\n.\\\\[\\\\&\\\\>a\\\\]\\\\:underline-offset-4 {\n &>a {\n text-underline-offset: 4px;\n }\n }\n.\\\\[\\\\&\\\\>a\\\\:hover\\\\]\\\\:text-primary {\n &>a:hover {\n color: oklch(0.205 0 0);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:h-2\\\\.5 {\n &>svg {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:h-3 {\n &>svg {\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:w-2\\\\.5 {\n &>svg {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:w-3 {\n &>svg {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:text-muted-foreground {\n &>svg {\n color: oklch(0.556 0 0);\n }\n }\n.\\\\[\\\\&\\\\>tr\\\\]\\\\:last\\\\:border-b-0 {\n &>tr {\n &:last-child {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 0px;\n }\n }\n }\n.\\\\[\\\\[data-variant\\\\=legend\\\\]\\\\+\\\\&\\\\]\\\\:-mt-1\\\\.5 {\n [data-variant=legend]+& {\n margin-top: calc(0.25rem * -1.5);\n margin-top: calc(var(--spacing) * -1.5);\n }\n }\n@keyframes enter {\n from {\n opacity: 1;\n opacity: var(--tw-enter-opacity, 1);\n transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0);\n transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));\n }\n}\n@keyframes exit {\n to {\n opacity: 1;\n opacity: var(--tw-exit-opacity, 1);\n transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0);\n transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));\n }\n}\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-scale-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-space-y-reverse {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-space-x-reverse {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-leading {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ordinal {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-slashed-zero {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-figure {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-spacing {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-fraction {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-outline-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-duration {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ease {\n syntax: \"*\";\n inherits: false;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-scale-z: 1;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-space-y-reverse: 0;\n --tw-space-x-reverse: 0;\n --tw-border-style: solid;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-ordinal: initial;\n --tw-slashed-zero: initial;\n --tw-numeric-figure: initial;\n --tw-numeric-spacing: initial;\n --tw-numeric-fraction: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n --tw-backdrop-blur: initial;\n --tw-backdrop-brightness: initial;\n --tw-backdrop-contrast: initial;\n --tw-backdrop-grayscale: initial;\n --tw-backdrop-hue-rotate: initial;\n --tw-backdrop-invert: initial;\n --tw-backdrop-opacity: initial;\n --tw-backdrop-saturate: initial;\n --tw-backdrop-sepia: initial;\n --tw-duration: initial;\n --tw-ease: initial;\n }\n }\n`"],"mappings":"AAAA,MAAO,IAAM,CAAAA,mBAAmB,uo0FA4zG/B","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"css.js","names":["tailwindCompiledCss"],"sources":["../../src/helpers/css.ts"],"sourcesContent":["export const tailwindCompiledCss = `/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */\n:root, :host {\n --font-sans: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n --color-red-50: oklch(97.1% 0.013 17.38);\n --color-red-100: oklch(93.6% 0.032 17.717);\n --color-red-200: oklch(88.5% 0.062 18.334);\n --color-red-300: oklch(80.8% 0.114 19.571);\n --color-red-500: oklch(63.7% 0.237 25.331);\n --color-red-600: oklch(57.7% 0.245 27.325);\n --color-red-900: oklch(39.6% 0.141 25.723);\n --color-orange-50: oklch(98% 0.016 73.684);\n --color-orange-900: oklch(40.8% 0.123 38.172);\n --color-amber-50: oklch(98.7% 0.022 95.277);\n --color-amber-900: oklch(41.4% 0.112 45.904);\n --color-yellow-50: oklch(98.7% 0.026 102.212);\n --color-yellow-900: oklch(42.1% 0.095 57.708);\n --color-lime-50: oklch(98.6% 0.031 120.757);\n --color-lime-900: oklch(40.5% 0.101 131.063);\n --color-green-50: oklch(98.2% 0.018 155.826);\n --color-green-300: oklch(87.1% 0.15 154.449);\n --color-green-600: oklch(62.7% 0.194 149.214);\n --color-green-900: oklch(39.3% 0.095 152.535);\n --color-emerald-50: oklch(97.9% 0.021 166.113);\n --color-emerald-900: oklch(37.8% 0.077 168.94);\n --color-teal-50: oklch(98.4% 0.014 180.72);\n --color-teal-900: oklch(38.6% 0.063 188.416);\n --color-cyan-50: oklch(98.4% 0.019 200.873);\n --color-cyan-900: oklch(39.8% 0.07 227.392);\n --color-blue-50: oklch(97% 0.014 254.604);\n --color-blue-500: oklch(62.3% 0.214 259.815);\n --color-blue-600: oklch(54.6% 0.245 262.881);\n --color-blue-700: oklch(48.8% 0.243 264.376);\n --color-blue-900: oklch(37.9% 0.146 265.522);\n --color-purple-50: oklch(97.7% 0.014 308.299);\n --color-purple-600: oklch(55.8% 0.288 302.321);\n --color-purple-900: oklch(38.1% 0.176 304.987);\n --color-fuchsia-50: oklch(97.7% 0.017 320.058);\n --color-fuchsia-900: oklch(40.1% 0.17 325.612);\n --color-pink-50: oklch(97.1% 0.014 343.198);\n --color-pink-900: oklch(40.8% 0.153 2.432);\n --color-slate-100: oklch(96.8% 0.007 247.896);\n --color-gray-50: oklch(98.5% 0.002 247.839);\n --color-gray-100: oklch(96.7% 0.003 264.542);\n --color-gray-200: oklch(92.8% 0.006 264.531);\n --color-gray-300: oklch(87.2% 0.01 258.338);\n --color-gray-400: oklch(70.7% 0.022 261.325);\n --color-gray-500: oklch(55.1% 0.027 264.364);\n --color-gray-600: oklch(44.6% 0.03 256.802);\n --color-gray-700: oklch(37.3% 0.034 259.733);\n --color-gray-800: oklch(27.8% 0.033 256.848);\n --color-gray-900: oklch(21% 0.034 264.665);\n --color-black: #000;\n --color-white: #fff;\n --spacing: 0.25rem;\n --container-sm: 24rem;\n --container-md: 28rem;\n --container-lg: 32rem;\n --container-2xl: 42rem;\n --text-xs: 0.75rem;\n --text-xs--line-height: calc(1 / 0.75);\n --text-sm: 0.875rem;\n --text-sm--line-height: calc(1.25 / 0.875);\n --text-base: 1rem;\n --text-base--line-height: calc(1.5 / 1);\n --text-lg: 1.125rem;\n --text-lg--line-height: calc(1.75 / 1.125);\n --text-xl: 1.25rem;\n --text-xl--line-height: calc(1.75 / 1.25);\n --text-2xl: 1.5rem;\n --text-2xl--line-height: calc(2 / 1.5);\n --text-3xl: 1.875rem;\n --text-3xl--line-height: calc(2.25 / 1.875);\n --text-4xl: 2.25rem;\n --text-4xl--line-height: calc(2.5 / 2.25);\n --text-5xl: 3rem;\n --text-5xl--line-height: 1;\n --font-weight-normal: 400;\n --font-weight-medium: 500;\n --font-weight-semibold: 600;\n --font-weight-bold: 700;\n --leading-snug: 1.375;\n --leading-normal: 1.5;\n --leading-relaxed: 1.625;\n --radius-sm: calc(0.625rem - 4px);\n --radius-md: calc(0.625rem - 2px);\n --radius-lg: 0.625rem;\n --radius-xl: calc(0.625rem + 4px);\n --radius-2xl: 1rem;\n --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n --animate-spin: spin 1s linear infinite;\n --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n --blur-xs: 4px;\n --blur-sm: 8px;\n --blur-md: 12px;\n --aspect-video: 16 / 9;\n --default-transition-duration: 150ms;\n --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --default-font-family: var(--font-sans);\n --default-mono-font-family: var(--font-mono);\n --color-border: oklch(0.922 0 0);\n }\n*, ::after, ::before, ::backdrop, ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n }\nhtml, :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n font-family: ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\");\n font-feature-settings: normal;\n font-feature-settings: var(--default-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-font-variation-settings, normal);\n -webkit-tap-highlight-color: transparent;\n }\nhr {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n }\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\nh1, h2, h3, h4, h5, h6 {\n font-size: inherit;\n font-weight: inherit;\n }\na {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\nb, strong {\n font-weight: bolder;\n }\ncode, kbd, samp, pre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace);\n font-feature-settings: normal;\n font-feature-settings: var(--default-mono-font-feature-settings, normal);\n font-variation-settings: normal;\n font-variation-settings: var(--default-mono-font-variation-settings, normal);\n font-size: 1em;\n }\nsmall {\n font-size: 80%;\n }\nsub, sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\nsub {\n bottom: -0.25em;\n }\nsup {\n top: -0.5em;\n }\ntable {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n:-moz-focusring {\n outline: auto;\n }\nprogress {\n vertical-align: baseline;\n }\nsummary {\n display: list-item;\n }\nol, ul, menu {\n list-style: none;\n }\nimg, svg, video, canvas, audio, iframe, embed, object {\n display: block;\n vertical-align: middle;\n }\nimg, video {\n max-width: 100%;\n height: auto;\n }\nbutton, input, select, optgroup, textarea, ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n:where(select:is([multiple], [size])) optgroup {\n font-weight: bolder;\n }\n:where(select:is([multiple], [size])) optgroup option {\n padding-inline-start: 20px;\n }\n::file-selector-button {\n margin-inline-end: 4px;\n }\n::-moz-placeholder {\n opacity: 1;\n }\n::placeholder {\n opacity: 1;\n }\n@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::-moz-placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n ::placeholder {\n color: currentcolor;\n @supports (color: color-mix(in lab, red, red)) {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n }\ntextarea {\n resize: vertical;\n }\n::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n::-webkit-date-and-time-value {\n min-height: 1lh;\n text-align: inherit;\n }\n::-webkit-datetime-edit {\n display: inline-flex;\n }\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n }\n::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {\n padding-block: 0;\n }\n:-moz-ui-invalid {\n box-shadow: none;\n }\nbutton, input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]), ::file-selector-button {\n -webkit-appearance: button;\n -moz-appearance: button;\n appearance: button;\n }\n::-webkit-inner-spin-button, ::-webkit-outer-spin-button {\n height: auto;\n }\n[hidden]:where(:not([hidden=\"until-found\"])) {\n display: none !important;\n }\n.\\\\@container\\\\/card-header {\n container-type: inline-size;\n container-name: card-header;\n }\n.\\\\@container\\\\/field-group {\n container-type: inline-size;\n container-name: field-group;\n }\n.\\\\@container {\n container-type: inline-size;\n }\n.pointer-events-auto {\n pointer-events: auto;\n }\n.pointer-events-none {\n pointer-events: none;\n }\n.visible {\n visibility: visible;\n }\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n }\n.absolute {\n position: absolute;\n }\n.fixed {\n position: fixed;\n }\n.relative {\n position: relative;\n }\n.sticky {\n position: sticky;\n }\n.inset-0 {\n inset: calc(0.25rem * 0);\n inset: calc(var(--spacing) * 0);\n }\n.-top-2 {\n top: calc(0.25rem * -2);\n top: calc(var(--spacing) * -2);\n }\n.top-0 {\n top: calc(0.25rem * 0);\n top: calc(var(--spacing) * 0);\n }\n.top-1 {\n top: calc(0.25rem * 1);\n top: calc(var(--spacing) * 1);\n }\n.top-1\\\\/2 {\n top: calc(1/2 * 100%);\n }\n.top-1\\\\/4 {\n top: calc(1/4 * 100%);\n }\n.top-2 {\n top: calc(0.25rem * 2);\n top: calc(var(--spacing) * 2);\n }\n.top-4 {\n top: calc(0.25rem * 4);\n top: calc(var(--spacing) * 4);\n }\n.top-7 {\n top: calc(0.25rem * 7);\n top: calc(var(--spacing) * 7);\n }\n.top-full {\n top: 100%;\n }\n.-right-2 {\n right: calc(0.25rem * -2);\n right: calc(var(--spacing) * -2);\n }\n.right-0 {\n right: calc(0.25rem * 0);\n right: calc(var(--spacing) * 0);\n }\n.right-2 {\n right: calc(0.25rem * 2);\n right: calc(var(--spacing) * 2);\n }\n.right-3 {\n right: calc(0.25rem * 3);\n right: calc(var(--spacing) * 3);\n }\n.right-4 {\n right: calc(0.25rem * 4);\n right: calc(var(--spacing) * 4);\n }\n.right-10 {\n right: calc(0.25rem * 10);\n right: calc(var(--spacing) * 10);\n }\n.right-full {\n right: 100%;\n }\n.bottom-0 {\n bottom: calc(0.25rem * 0);\n bottom: calc(var(--spacing) * 0);\n }\n.bottom-2 {\n bottom: calc(0.25rem * 2);\n bottom: calc(var(--spacing) * 2);\n }\n.left-0 {\n left: calc(0.25rem * 0);\n left: calc(var(--spacing) * 0);\n }\n.left-1 {\n left: calc(0.25rem * 1);\n left: calc(var(--spacing) * 1);\n }\n.left-1\\\\/2 {\n left: calc(1/2 * 100%);\n }\n.left-2 {\n left: calc(0.25rem * 2);\n left: calc(var(--spacing) * 2);\n }\n.left-3 {\n left: calc(0.25rem * 3);\n left: calc(var(--spacing) * 3);\n }\n.\\\\!z-\\\\[9999\\\\] {\n z-index: 9999 !important;\n }\n.z-2 {\n z-index: 2;\n }\n.z-10 {\n z-index: 10;\n }\n.z-40 {\n z-index: 40;\n }\n.z-50 {\n z-index: 50;\n }\n.z-\\\\[999\\\\] {\n z-index: 999;\n }\n.z-\\\\[1000\\\\] {\n z-index: 1000;\n }\n.z-\\\\[1001\\\\] {\n z-index: 1001;\n }\n.z-\\\\[9999\\\\] {\n z-index: 9999;\n }\n.col-start-2 {\n grid-column-start: 2;\n }\n.row-span-2 {\n grid-row: span 2 / span 2;\n }\n.row-start-1 {\n grid-row-start: 1;\n }\n.container {\n width: 100%;\n max-width: 40rem;\n max-width: 48rem;\n max-width: 64rem;\n max-width: 80rem;\n max-width: 96rem\n }\n.-m-0 {\n margin: calc(0.25rem * -0);\n margin: calc(var(--spacing) * -0);\n }\n.-m-0\\\\.5 {\n margin: calc(0.25rem * -0.5);\n margin: calc(var(--spacing) * -0.5);\n }\n.m-0 {\n margin: calc(0.25rem * 0);\n margin: calc(var(--spacing) * 0);\n }\n.m-6 {\n margin: calc(0.25rem * 6);\n margin: calc(var(--spacing) * 6);\n }\n.-mx-1 {\n margin-inline: calc(0.25rem * -1);\n margin-inline: calc(var(--spacing) * -1);\n }\n.-mx-4 {\n margin-inline: calc(0.25rem * -4);\n margin-inline: calc(var(--spacing) * -4);\n }\n.mx-auto {\n margin-inline: auto;\n }\n.-my-2 {\n margin-block: calc(0.25rem * -2);\n margin-block: calc(var(--spacing) * -2);\n }\n.my-0 {\n margin-block: calc(0.25rem * 0);\n margin-block: calc(var(--spacing) * 0);\n }\n.my-0\\\\.5 {\n margin-block: calc(0.25rem * 0.5);\n margin-block: calc(var(--spacing) * 0.5);\n }\n.my-1 {\n margin-block: calc(0.25rem * 1);\n margin-block: calc(var(--spacing) * 1);\n }\n.my-4 {\n margin-block: calc(0.25rem * 4);\n margin-block: calc(var(--spacing) * 4);\n }\n.my-6 {\n margin-block: calc(0.25rem * 6);\n margin-block: calc(var(--spacing) * 6);\n }\n.mt-1 {\n margin-top: calc(0.25rem * 1);\n margin-top: calc(var(--spacing) * 1);\n }\n.mt-2 {\n margin-top: calc(0.25rem * 2);\n margin-top: calc(var(--spacing) * 2);\n }\n.mt-4 {\n margin-top: calc(0.25rem * 4);\n margin-top: calc(var(--spacing) * 4);\n }\n.mt-6 {\n margin-top: calc(0.25rem * 6);\n margin-top: calc(var(--spacing) * 6);\n }\n.mt-auto {\n margin-top: auto;\n }\n.mr-1 {\n margin-right: calc(0.25rem * 1);\n margin-right: calc(var(--spacing) * 1);\n }\n.mr-2 {\n margin-right: calc(0.25rem * 2);\n margin-right: calc(var(--spacing) * 2);\n }\n.-mb-4 {\n margin-bottom: calc(0.25rem * -4);\n margin-bottom: calc(var(--spacing) * -4);\n }\n.mb-1 {\n margin-bottom: calc(0.25rem * 1);\n margin-bottom: calc(var(--spacing) * 1);\n }\n.mb-1\\\\.5 {\n margin-bottom: calc(0.25rem * 1.5);\n margin-bottom: calc(var(--spacing) * 1.5);\n }\n.mb-2 {\n margin-bottom: calc(0.25rem * 2);\n margin-bottom: calc(var(--spacing) * 2);\n }\n.mb-3 {\n margin-bottom: calc(0.25rem * 3);\n margin-bottom: calc(var(--spacing) * 3);\n }\n.mb-4 {\n margin-bottom: calc(0.25rem * 4);\n margin-bottom: calc(var(--spacing) * 4);\n }\n.mb-6 {\n margin-bottom: calc(0.25rem * 6);\n margin-bottom: calc(var(--spacing) * 6);\n }\n.mb-8 {\n margin-bottom: calc(0.25rem * 8);\n margin-bottom: calc(var(--spacing) * 8);\n }\n.ml-1 {\n margin-left: calc(0.25rem * 1);\n margin-left: calc(var(--spacing) * 1);\n }\n.ml-1\\\\.5 {\n margin-left: calc(0.25rem * 1.5);\n margin-left: calc(var(--spacing) * 1.5);\n }\n.ml-2 {\n margin-left: calc(0.25rem * 2);\n margin-left: calc(var(--spacing) * 2);\n }\n.ml-2\\\\.5 {\n margin-left: calc(0.25rem * 2.5);\n margin-left: calc(var(--spacing) * 2.5);\n }\n.ml-3 {\n margin-left: calc(0.25rem * 3);\n margin-left: calc(var(--spacing) * 3);\n }\n.ml-4 {\n margin-left: calc(0.25rem * 4);\n margin-left: calc(var(--spacing) * 4);\n }\n.ml-auto {\n margin-left: auto;\n }\n.block {\n display: block;\n }\n.flex {\n display: flex;\n }\n.grid {\n display: grid;\n }\n.hidden {\n display: none;\n }\n.inline {\n display: inline;\n }\n.inline-block {\n display: inline-block;\n }\n.inline-flex {\n display: inline-flex;\n }\n.table {\n display: table;\n }\n.table-caption {\n display: table-caption;\n }\n.table-cell {\n display: table-cell;\n }\n.table-row {\n display: table-row;\n }\n.field-sizing-content {\n field-sizing: content;\n }\n.aspect-auto {\n aspect-ratio: auto;\n }\n.aspect-video {\n aspect-ratio: 16 / 9;\n aspect-ratio: var(--aspect-video);\n }\n.size-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.size-2\\\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.size-3 {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n.size-3\\\\.5 {\n width: calc(0.25rem * 3.5);\n width: calc(var(--spacing) * 3.5);\n height: calc(0.25rem * 3.5);\n height: calc(var(--spacing) * 3.5);\n }\n.size-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n.size-9 {\n width: calc(0.25rem * 9);\n width: calc(var(--spacing) * 9);\n height: calc(0.25rem * 9);\n height: calc(var(--spacing) * 9);\n }\n.size-full {\n width: 100%;\n height: 100%;\n }\n.h-2 {\n height: calc(0.25rem * 2);\n height: calc(var(--spacing) * 2);\n }\n.h-2\\\\.5 {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n.h-3 {\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n.h-4 {\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n.h-5 {\n height: calc(0.25rem * 5);\n height: calc(var(--spacing) * 5);\n }\n.h-6 {\n height: calc(0.25rem * 6);\n height: calc(var(--spacing) * 6);\n }\n.h-8 {\n height: calc(0.25rem * 8);\n height: calc(var(--spacing) * 8);\n }\n.h-9 {\n height: calc(0.25rem * 9);\n height: calc(var(--spacing) * 9);\n }\n.h-10 {\n height: calc(0.25rem * 10);\n height: calc(var(--spacing) * 10);\n }\n.h-12 {\n height: calc(0.25rem * 12);\n height: calc(var(--spacing) * 12);\n }\n.h-20 {\n height: calc(0.25rem * 20);\n height: calc(var(--spacing) * 20);\n }\n.h-28 {\n height: calc(0.25rem * 28);\n height: calc(var(--spacing) * 28);\n }\n.h-30 {\n height: calc(0.25rem * 30);\n height: calc(var(--spacing) * 30);\n }\n.h-35 {\n height: calc(0.25rem * 35);\n height: calc(var(--spacing) * 35);\n }\n.h-40 {\n height: calc(0.25rem * 40);\n height: calc(var(--spacing) * 40);\n }\n.h-50 {\n height: calc(0.25rem * 50);\n height: calc(var(--spacing) * 50);\n }\n.h-\\\\[38px\\\\] {\n height: 38px;\n }\n.h-\\\\[258px\\\\] {\n height: 258px;\n }\n.h-auto {\n height: auto;\n }\n.h-fit {\n height: -moz-fit-content;\n height: fit-content;\n }\n.h-full {\n height: 100%;\n }\n.h-px {\n height: 1px;\n }\n.max-h-48 {\n max-height: calc(0.25rem * 48);\n max-height: calc(var(--spacing) * 48);\n }\n.max-h-64 {\n max-height: calc(0.25rem * 64);\n max-height: calc(var(--spacing) * 64);\n }\n.max-h-96 {\n max-height: calc(0.25rem * 96);\n max-height: calc(var(--spacing) * 96);\n }\n.max-h-\\\\[60vh\\\\] {\n max-height: 60vh;\n }\n.max-h-\\\\[90vh\\\\] {\n max-height: 90vh;\n }\n.max-h-\\\\[calc\\\\(90vh-160px\\\\)\\\\] {\n max-height: calc(90vh - 160px);\n }\n.min-h-16 {\n min-height: calc(0.25rem * 16);\n min-height: calc(var(--spacing) * 16);\n }\n.min-h-\\\\[45vh\\\\] {\n min-height: 45vh;\n }\n.min-h-\\\\[100px\\\\] {\n min-height: 100px;\n }\n.min-h-\\\\[200px\\\\] {\n min-height: 200px;\n }\n.w-0 {\n width: calc(0.25rem * 0);\n width: calc(var(--spacing) * 0);\n }\n.w-1 {\n width: calc(0.25rem * 1);\n width: calc(var(--spacing) * 1);\n }\n.w-1\\\\/3 {\n width: calc(1/3 * 100%);\n }\n.w-1\\\\/6 {\n width: calc(1/6 * 100%);\n }\n.w-2 {\n width: calc(0.25rem * 2);\n width: calc(var(--spacing) * 2);\n }\n.w-2\\\\.5 {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n.w-3 {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n }\n.w-4 {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n }\n.w-4\\\\/5 {\n width: calc(4/5 * 100%);\n }\n.w-5 {\n width: calc(0.25rem * 5);\n width: calc(var(--spacing) * 5);\n }\n.w-6 {\n width: calc(0.25rem * 6);\n width: calc(var(--spacing) * 6);\n }\n.w-8 {\n width: calc(0.25rem * 8);\n width: calc(var(--spacing) * 8);\n }\n.w-12 {\n width: calc(0.25rem * 12);\n width: calc(var(--spacing) * 12);\n }\n.w-48 {\n width: calc(0.25rem * 48);\n width: calc(var(--spacing) * 48);\n }\n.w-56 {\n width: calc(0.25rem * 56);\n width: calc(var(--spacing) * 56);\n }\n.w-64 {\n width: calc(0.25rem * 64);\n width: calc(var(--spacing) * 64);\n }\n.w-72 {\n width: calc(0.25rem * 72);\n width: calc(var(--spacing) * 72);\n }\n.w-80 {\n width: calc(0.25rem * 80);\n width: calc(var(--spacing) * 80);\n }\n.w-\\\\[280px\\\\] {\n width: 280px;\n }\n.w-\\\\[320px\\\\] {\n width: 320px;\n }\n.w-\\\\[380px\\\\] {\n width: 380px;\n }\n.w-\\\\[481px\\\\] {\n width: 481px;\n }\n.w-\\\\[640px\\\\] {\n width: 640px;\n }\n.w-auto {\n width: auto;\n }\n.w-fit {\n width: -moz-fit-content;\n width: fit-content;\n }\n.w-full {\n width: 100%;\n }\n.max-w-2xl {\n max-width: 42rem;\n max-width: var(--container-2xl);\n }\n.max-w-\\\\[200px\\\\] {\n max-width: 200px;\n }\n.max-w-\\\\[320px\\\\] {\n max-width: 320px;\n }\n.max-w-full {\n max-width: 100%;\n }\n.max-w-lg {\n max-width: 32rem;\n max-width: var(--container-lg);\n }\n.max-w-md {\n max-width: 28rem;\n max-width: var(--container-md);\n }\n.max-w-sm {\n max-width: 24rem;\n max-width: var(--container-sm);\n }\n.min-w-0 {\n min-width: calc(0.25rem * 0);\n min-width: calc(var(--spacing) * 0);\n }\n.min-w-\\\\[8rem\\\\] {\n min-width: 8rem;\n }\n.min-w-\\\\[200px\\\\] {\n min-width: 200px;\n }\n.flex-1 {\n flex: 1;\n }\n.flex-shrink {\n flex-shrink: 1;\n }\n.flex-shrink-0 {\n flex-shrink: 0;\n }\n.shrink-0 {\n flex-shrink: 0;\n }\n.flex-grow {\n flex-grow: 1;\n }\n.caption-bottom {\n caption-side: bottom;\n }\n.border-collapse {\n border-collapse: collapse;\n }\n.origin-\\\\(--radix-hover-card-content-transform-origin\\\\) {\n transform-origin: var(--radix-hover-card-content-transform-origin);\n }\n.origin-\\\\[var\\\\(--radix-tooltip-content-transform-origin\\\\)\\\\] {\n transform-origin: var(--radix-tooltip-content-transform-origin);\n }\n.-translate-x-1 {\n --tw-translate-x: calc(var(--spacing) * -1);\n translate: calc(0.25rem * -1) var(--tw-translate-y);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-x-1\\\\/2 {\n --tw-translate-x: calc(calc(1/2 * 100%) * -1);\n translate: calc(calc(1/2 * 100%) * -1) var(--tw-translate-y);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-1 {\n --tw-translate-y: calc(var(--spacing) * -1);\n translate: var(--tw-translate-x) calc(0.25rem * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-1\\\\/2 {\n --tw-translate-y: calc(calc(1/2 * 100%) * -1);\n translate: var(--tw-translate-x) calc(calc(1/2 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-1\\\\/5 {\n --tw-translate-y: calc(calc(1/5 * 100%) * -1);\n translate: var(--tw-translate-x) calc(calc(1/5 * 100%) * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-2 {\n --tw-translate-y: calc(var(--spacing) * -2);\n translate: var(--tw-translate-x) calc(0.25rem * -2);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.-translate-y-\\\\[2px\\\\] {\n --tw-translate-y: calc(2px * -1);\n translate: var(--tw-translate-x) calc(2px * -1);\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n.scale-100 {\n --tw-scale-x: 100%;\n --tw-scale-y: 100%;\n --tw-scale-z: 100%;\n scale: 100% 100%;\n scale: var(--tw-scale-x) var(--tw-scale-y);\n }\n.rotate-45 {\n rotate: 45deg;\n }\n.rotate-180 {\n rotate: 180deg;\n }\n.transform {\n transform: ;\n transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);\n }\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n animation: var(--animate-pulse);\n }\n.animate-spin {\n animation: spin 1s linear infinite;\n animation: var(--animate-spin);\n }\n.cursor-default {\n cursor: default;\n }\n.cursor-not-allowed {\n cursor: not-allowed;\n }\n.cursor-pointer {\n cursor: pointer;\n }\n.touch-none {\n touch-action: none;\n }\n.resize {\n resize: both;\n }\n.scroll-my-1 {\n scroll-margin-block: calc(0.25rem * 1);\n scroll-margin-block: calc(var(--spacing) * 1);\n }\n.list-disc {\n list-style-type: disc;\n }\n.auto-rows-min {\n grid-auto-rows: min-content;\n }\n.grid-rows-\\\\[auto_auto\\\\] {\n grid-template-rows: auto auto;\n }\n.flex-col {\n flex-direction: column;\n }\n.flex-col-reverse {\n flex-direction: column-reverse;\n }\n.flex-row {\n flex-direction: row;\n }\n.flex-wrap {\n flex-wrap: wrap;\n }\n.items-center {\n align-items: center;\n }\n.items-end {\n align-items: flex-end;\n }\n.items-start {\n align-items: flex-start;\n }\n.items-stretch {\n align-items: stretch;\n }\n.justify-between {\n justify-content: space-between;\n }\n.justify-center {\n justify-content: center;\n }\n.justify-end {\n justify-content: flex-end;\n }\n.gap-0 {\n gap: calc(0.25rem * 0);\n gap: calc(var(--spacing) * 0);\n }\n.gap-0\\\\.5 {\n gap: calc(0.25rem * 0.5);\n gap: calc(var(--spacing) * 0.5);\n }\n.gap-1 {\n gap: calc(0.25rem * 1);\n gap: calc(var(--spacing) * 1);\n }\n.gap-1\\\\.5 {\n gap: calc(0.25rem * 1.5);\n gap: calc(var(--spacing) * 1.5);\n }\n.gap-2 {\n gap: calc(0.25rem * 2);\n gap: calc(var(--spacing) * 2);\n }\n.gap-3 {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n.gap-4 {\n gap: calc(0.25rem * 4);\n gap: calc(var(--spacing) * 4);\n }\n.gap-5 {\n gap: calc(0.25rem * 5);\n gap: calc(var(--spacing) * 5);\n }\n.gap-6 {\n gap: calc(0.25rem * 6);\n gap: calc(var(--spacing) * 6);\n }\n.space-y-1 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 1) * 0);\n margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 1) * calc(1 - 0));\n margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n.space-y-2 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 2) * 0);\n margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 2) * calc(1 - 0));\n margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n.space-y-3 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 3) * 0);\n margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 3) * calc(1 - 0));\n margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n.space-y-4 {\n :where(& > :not(:last-child)) {\n --tw-space-y-reverse: 0;\n margin-block-start: calc(calc(0.25rem * 4) * 0);\n margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));\n margin-block-end: calc(calc(0.25rem * 4) * calc(1 - 0));\n margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));\n }\n }\n.space-x-2 {\n :where(& > :not(:last-child)) {\n --tw-space-x-reverse: 0;\n margin-inline-start: calc(calc(0.25rem * 2) * 0);\n margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));\n margin-inline-end: calc(calc(0.25rem * 2) * calc(1 - 0));\n margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));\n }\n }\n.self-end {\n align-self: flex-end;\n }\n.self-start {\n align-self: flex-start;\n }\n.justify-self-end {\n justify-self: flex-end;\n }\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n.overflow-auto {\n overflow: auto;\n }\n.overflow-hidden {\n overflow: hidden;\n }\n.overflow-visible {\n overflow: visible;\n }\n.overflow-x-auto {\n overflow-x: auto;\n }\n.overflow-x-hidden {\n overflow-x: hidden;\n }\n.overflow-y-auto {\n overflow-y: auto;\n }\n.rounded {\n border-radius: 0.25rem;\n }\n.rounded-2xl {\n border-radius: 1rem;\n border-radius: var(--radius-2xl);\n }\n.rounded-\\\\[2px\\\\] {\n border-radius: 2px;\n }\n.rounded-\\\\[4px\\\\] {\n border-radius: 4px;\n }\n.rounded-\\\\[16px\\\\] {\n border-radius: 16px;\n }\n.rounded-\\\\[inherit\\\\] {\n border-radius: inherit;\n }\n.rounded-full {\n border-radius: calc(infinity * 1px);\n }\n.rounded-lg {\n border-radius: 0.625rem;\n }\n.rounded-md {\n border-radius: calc(0.625rem - 2px);\n }\n.rounded-none {\n border-radius: 0;\n }\n.rounded-sm {\n border-radius: calc(0.625rem - 4px);\n }\n.rounded-xl {\n border-radius: calc(0.625rem + 4px);\n }\n.rounded-b-xl {\n border-bottom-right-radius: calc(0.625rem + 4px);\n border-bottom-left-radius: calc(0.625rem + 4px);\n }\n.border {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n.border-0 {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n.border-2 {\n border-style: var(--tw-border-style);\n border-width: 2px;\n }\n.border-\\\\[1\\\\.5px\\\\] {\n border-style: var(--tw-border-style);\n border-width: 1.5px;\n }\n.border-t {\n border-top-style: var(--tw-border-style);\n border-top-width: 1px;\n }\n.border-t-2 {\n border-top-style: var(--tw-border-style);\n border-top-width: 2px;\n }\n.border-b {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n.border-b-2 {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 2px;\n }\n.border-l {\n border-left-style: var(--tw-border-style);\n border-left-width: 1px;\n }\n.border-dashed {\n --tw-border-style: dashed;\n border-style: dashed;\n }\n.border-none {\n --tw-border-style: none;\n border-style: none;\n }\n.border-\\\\(--color-border\\\\) {\n border-color: oklch(0.922 0 0);\n border-color: var(--color-border);\n }\n.border-\\\\[\\\\#2A44D4\\\\] {\n border-color: #2A44D4;\n }\n.border-\\\\[\\\\#3d55d9\\\\] {\n border-color: #3d55d9;\n }\n.border-\\\\[\\\\#D4D5DE\\\\] {\n border-color: #D4D5DE;\n }\n.border-blue-600 {\n border-color: oklch(54.6% 0.245 262.881);\n border-color: var(--color-blue-600);\n }\n.border-border {\n border-color: oklch(0.922 0 0);\n }\n.border-border\\\\/50 {\n border-color: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n.border-destructive {\n border-color: oklch(0.577 0.245 27.325);\n }\n.border-gray-200 {\n border-color: oklch(92.8% 0.006 264.531);\n border-color: var(--color-gray-200);\n }\n.border-gray-300 {\n border-color: oklch(87.2% 0.01 258.338);\n border-color: var(--color-gray-300);\n }\n.border-input {\n border-color: oklch(0.922 0 0);\n }\n.border-purple-600 {\n border-color: oklch(55.8% 0.288 302.321);\n border-color: var(--color-purple-600);\n }\n.border-red-100 {\n border-color: oklch(93.6% 0.032 17.717);\n border-color: var(--color-red-100);\n }\n.border-red-200 {\n border-color: oklch(88.5% 0.062 18.334);\n border-color: var(--color-red-200);\n }\n.border-t-transparent {\n border-top-color: transparent;\n }\n.border-l-transparent {\n border-left-color: transparent;\n }\n.bg-\\\\(--color-bg\\\\) {\n background-color: var(--color-bg);\n }\n.bg-\\\\[\\\\#2A44D4\\\\] {\n background-color: #2A44D4;\n }\n.bg-\\\\[\\\\#EAECFB\\\\] {\n background-color: #EAECFB;\n }\n.bg-\\\\[\\\\#F9F9FE\\\\] {\n background-color: #F9F9FE;\n }\n.bg-accent {\n background-color: oklch(0.97 0 0);\n }\n.bg-amber-50 {\n background-color: oklch(98.7% 0.022 95.277);\n background-color: var(--color-amber-50);\n }\n.bg-background {\n background-color: oklch(1 0 0);\n }\n.bg-black {\n background-color: #000;\n background-color: var(--color-black);\n }\n.bg-black\\\\/10 {\n background-color: color-mix(in srgb, #000 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n background-color: color-mix(in oklab, #000 10%, transparent);\n background-color: color-mix(in oklab, var(--color-black) 10%, transparent);\n }\n }\n.bg-blue-50 {\n background-color: oklch(97% 0.014 254.604);\n background-color: var(--color-blue-50);\n }\n.bg-blue-600 {\n background-color: oklch(54.6% 0.245 262.881);\n background-color: var(--color-blue-600);\n }\n.bg-border {\n background-color: oklch(0.922 0 0);\n }\n.bg-cyan-50 {\n background-color: oklch(98.4% 0.019 200.873);\n background-color: var(--color-cyan-50);\n }\n.bg-destructive {\n background-color: oklch(0.577 0.245 27.325);\n }\n.bg-emerald-50 {\n background-color: oklch(97.9% 0.021 166.113);\n background-color: var(--color-emerald-50);\n }\n.bg-fuchsia-50 {\n background-color: oklch(97.7% 0.017 320.058);\n background-color: var(--color-fuchsia-50);\n }\n.bg-gray-50 {\n background-color: oklch(98.5% 0.002 247.839);\n background-color: var(--color-gray-50);\n }\n.bg-gray-100 {\n background-color: oklch(96.7% 0.003 264.542);\n background-color: var(--color-gray-100);\n }\n.bg-gray-300 {\n background-color: oklch(87.2% 0.01 258.338);\n background-color: var(--color-gray-300);\n }\n.bg-gray-400 {\n background-color: oklch(70.7% 0.022 261.325);\n background-color: var(--color-gray-400);\n }\n.bg-gray-500 {\n background-color: oklch(55.1% 0.027 264.364);\n background-color: var(--color-gray-500);\n }\n.bg-green-50 {\n background-color: oklch(98.2% 0.018 155.826);\n background-color: var(--color-green-50);\n }\n.bg-green-300 {\n background-color: oklch(87.1% 0.15 154.449);\n background-color: var(--color-green-300);\n }\n.bg-lime-50 {\n background-color: oklch(98.6% 0.031 120.757);\n background-color: var(--color-lime-50);\n }\n.bg-muted {\n background-color: oklch(0.97 0 0);\n }\n.bg-muted\\\\/50 {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent);\n }\n.bg-orange-50 {\n background-color: oklch(98% 0.016 73.684);\n background-color: var(--color-orange-50);\n }\n.bg-pink-50 {\n background-color: oklch(97.1% 0.014 343.198);\n background-color: var(--color-pink-50);\n }\n.bg-popover {\n background-color: oklch(1 0 0);\n }\n.bg-primary {\n background-color: oklch(0.205 0 0);\n }\n.bg-purple-50 {\n background-color: oklch(97.7% 0.014 308.299);\n background-color: var(--color-purple-50);\n }\n.bg-red-50 {\n background-color: oklch(97.1% 0.013 17.38);\n background-color: var(--color-red-50);\n }\n.bg-red-100 {\n background-color: oklch(93.6% 0.032 17.717);\n background-color: var(--color-red-100);\n }\n.bg-secondary {\n background-color: oklch(0.97 0 0);\n }\n.bg-slate-100 {\n background-color: oklch(96.8% 0.007 247.896);\n background-color: var(--color-slate-100);\n }\n.bg-teal-50 {\n background-color: oklch(98.4% 0.014 180.72);\n background-color: var(--color-teal-50);\n }\n.bg-transparent {\n background-color: transparent;\n }\n.bg-white {\n background-color: #fff;\n background-color: var(--color-white);\n }\n.bg-yellow-50 {\n background-color: oklch(98.7% 0.026 102.212);\n background-color: var(--color-yellow-50);\n }\n.fill-primary {\n fill: oklch(0.205 0 0);\n }\n.p-0 {\n padding: calc(0.25rem * 0);\n padding: calc(var(--spacing) * 0);\n }\n.p-0\\\\.5 {\n padding: calc(0.25rem * 0.5);\n padding: calc(var(--spacing) * 0.5);\n }\n.p-1 {\n padding: calc(0.25rem * 1);\n padding: calc(var(--spacing) * 1);\n }\n.p-2 {\n padding: calc(0.25rem * 2);\n padding: calc(var(--spacing) * 2);\n }\n.p-3 {\n padding: calc(0.25rem * 3);\n padding: calc(var(--spacing) * 3);\n }\n.p-4 {\n padding: calc(0.25rem * 4);\n padding: calc(var(--spacing) * 4);\n }\n.p-6 {\n padding: calc(0.25rem * 6);\n padding: calc(var(--spacing) * 6);\n }\n.p-\\\\[1em\\\\] {\n padding: 1em;\n }\n.p-px {\n padding: 1px;\n }\n.px-1 {\n padding-inline: calc(0.25rem * 1);\n padding-inline: calc(var(--spacing) * 1);\n }\n.px-2 {\n padding-inline: calc(0.25rem * 2);\n padding-inline: calc(var(--spacing) * 2);\n }\n.px-2\\\\.5 {\n padding-inline: calc(0.25rem * 2.5);\n padding-inline: calc(var(--spacing) * 2.5);\n }\n.px-3 {\n padding-inline: calc(0.25rem * 3);\n padding-inline: calc(var(--spacing) * 3);\n }\n.px-4 {\n padding-inline: calc(0.25rem * 4);\n padding-inline: calc(var(--spacing) * 4);\n }\n.px-6 {\n padding-inline: calc(0.25rem * 6);\n padding-inline: calc(var(--spacing) * 6);\n }\n.px-\\\\[1em\\\\] {\n padding-inline: 1em;\n }\n.py-0 {\n padding-block: calc(0.25rem * 0);\n padding-block: calc(var(--spacing) * 0);\n }\n.py-1 {\n padding-block: calc(0.25rem * 1);\n padding-block: calc(var(--spacing) * 1);\n }\n.py-1\\\\.5 {\n padding-block: calc(0.25rem * 1.5);\n padding-block: calc(var(--spacing) * 1.5);\n }\n.py-2 {\n padding-block: calc(0.25rem * 2);\n padding-block: calc(var(--spacing) * 2);\n }\n.py-3 {\n padding-block: calc(0.25rem * 3);\n padding-block: calc(var(--spacing) * 3);\n }\n.py-4 {\n padding-block: calc(0.25rem * 4);\n padding-block: calc(var(--spacing) * 4);\n }\n.py-6 {\n padding-block: calc(0.25rem * 6);\n padding-block: calc(var(--spacing) * 6);\n }\n.py-8 {\n padding-block: calc(0.25rem * 8);\n padding-block: calc(var(--spacing) * 8);\n }\n.py-12 {\n padding-block: calc(0.25rem * 12);\n padding-block: calc(var(--spacing) * 12);\n }\n.py-16 {\n padding-block: calc(0.25rem * 16);\n padding-block: calc(var(--spacing) * 16);\n }\n.py-\\\\[11px\\\\] {\n padding-block: 11px;\n }\n.pt-1 {\n padding-top: calc(0.25rem * 1);\n padding-top: calc(var(--spacing) * 1);\n }\n.pt-2 {\n padding-top: calc(0.25rem * 2);\n padding-top: calc(var(--spacing) * 2);\n }\n.pt-3 {\n padding-top: calc(0.25rem * 3);\n padding-top: calc(var(--spacing) * 3);\n }\n.pt-4 {\n padding-top: calc(0.25rem * 4);\n padding-top: calc(var(--spacing) * 4);\n }\n.pr-2 {\n padding-right: calc(0.25rem * 2);\n padding-right: calc(var(--spacing) * 2);\n }\n.pr-8 {\n padding-right: calc(0.25rem * 8);\n padding-right: calc(var(--spacing) * 8);\n }\n.pr-16 {\n padding-right: calc(0.25rem * 16);\n padding-right: calc(var(--spacing) * 16);\n }\n.pb-3 {\n padding-bottom: calc(0.25rem * 3);\n padding-bottom: calc(var(--spacing) * 3);\n }\n.pb-4 {\n padding-bottom: calc(0.25rem * 4);\n padding-bottom: calc(var(--spacing) * 4);\n }\n.pl-1 {\n padding-left: calc(0.25rem * 1);\n padding-left: calc(var(--spacing) * 1);\n }\n.pl-2 {\n padding-left: calc(0.25rem * 2);\n padding-left: calc(var(--spacing) * 2);\n }\n.pl-4 {\n padding-left: calc(0.25rem * 4);\n padding-left: calc(var(--spacing) * 4);\n }\n.pl-9 {\n padding-left: calc(0.25rem * 9);\n padding-left: calc(var(--spacing) * 9);\n }\n.text-center {\n text-align: center;\n }\n.text-left {\n text-align: left;\n }\n.align-middle {\n vertical-align: middle;\n }\n.font-mono {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n \"Courier New\", monospace;\n font-family: var(--font-mono);\n }\n.text-2xl {\n font-size: 1.5rem;\n font-size: var(--text-2xl);\n line-height: calc(2 / 1.5);\n line-height: var(--tw-leading, var(--text-2xl--line-height));\n }\n.text-3xl {\n font-size: 1.875rem;\n font-size: var(--text-3xl);\n line-height: calc(2.25 / 1.875);\n line-height: var(--tw-leading, var(--text-3xl--line-height));\n }\n.text-4xl {\n font-size: 2.25rem;\n font-size: var(--text-4xl);\n line-height: calc(2.5 / 2.25);\n line-height: var(--tw-leading, var(--text-4xl--line-height));\n }\n.text-5xl {\n font-size: 3rem;\n font-size: var(--text-5xl);\n line-height: 1;\n line-height: var(--tw-leading, var(--text-5xl--line-height));\n }\n.text-base {\n font-size: 1rem;\n font-size: var(--text-base);\n line-height: calc(1.5 / 1);\n line-height: var(--tw-leading, var(--text-base--line-height));\n }\n.text-lg {\n font-size: 1.125rem;\n font-size: var(--text-lg);\n line-height: calc(1.75 / 1.125);\n line-height: var(--tw-leading, var(--text-lg--line-height));\n }\n.text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n.text-xl {\n font-size: 1.25rem;\n font-size: var(--text-xl);\n line-height: calc(1.75 / 1.25);\n line-height: var(--tw-leading, var(--text-xl--line-height));\n }\n.text-xs {\n font-size: 0.75rem;\n font-size: var(--text-xs);\n line-height: calc(1 / 0.75);\n line-height: var(--tw-leading, var(--text-xs--line-height));\n }\n.text-\\\\[0\\\\.8rem\\\\] {\n font-size: 0.8rem;\n }\n.leading-4 {\n --tw-leading: calc(var(--spacing) * 4);\n line-height: calc(0.25rem * 4);\n line-height: calc(var(--spacing) * 4);\n }\n.leading-\\\\[2\\\\.5rem\\\\] {\n --tw-leading: 2.5rem;\n line-height: 2.5rem;\n }\n.leading-\\\\[2rem\\\\] {\n --tw-leading: 2rem;\n line-height: 2rem;\n }\n.leading-\\\\[3rem\\\\] {\n --tw-leading: 3rem;\n line-height: 3rem;\n }\n.leading-\\\\[4rem\\\\] {\n --tw-leading: 4rem;\n line-height: 4rem;\n }\n.leading-none {\n --tw-leading: 1;\n line-height: 1;\n }\n.leading-normal {\n --tw-leading: var(--leading-normal);\n line-height: 1.5;\n line-height: var(--leading-normal);\n }\n.leading-relaxed {\n --tw-leading: var(--leading-relaxed);\n line-height: 1.625;\n line-height: var(--leading-relaxed);\n }\n.leading-snug {\n --tw-leading: var(--leading-snug);\n line-height: 1.375;\n line-height: var(--leading-snug);\n }\n.font-bold {\n --tw-font-weight: var(--font-weight-bold);\n font-weight: 700;\n font-weight: var(--font-weight-bold);\n }\n.font-medium {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n.font-normal {\n --tw-font-weight: var(--font-weight-normal);\n font-weight: 400;\n font-weight: var(--font-weight-normal);\n }\n.font-semibold {\n --tw-font-weight: var(--font-weight-semibold);\n font-weight: 600;\n font-weight: var(--font-weight-semibold);\n }\n.text-balance {\n text-wrap: balance;\n }\n.text-wrap {\n text-wrap: wrap;\n }\n.break-words {\n overflow-wrap: break-word;\n }\n.break-all {\n word-break: break-all;\n }\n.whitespace-normal {\n white-space: normal;\n }\n.whitespace-nowrap {\n white-space: nowrap;\n }\n.whitespace-pre-wrap {\n white-space: pre-wrap;\n }\n.text-\\\\[\\\\#020D21\\\\] {\n color: #020D21;\n }\n.text-\\\\[\\\\#263DBF\\\\] {\n color: #263DBF;\n }\n.text-\\\\[\\\\#687387\\\\] {\n color: #687387;\n }\n.text-amber-900 {\n color: oklch(41.4% 0.112 45.904);\n color: var(--color-amber-900);\n }\n.text-black {\n color: #000;\n color: var(--color-black);\n }\n.text-blue-500 {\n color: oklch(62.3% 0.214 259.815);\n color: var(--color-blue-500);\n }\n.text-blue-600 {\n color: oklch(54.6% 0.245 262.881);\n color: var(--color-blue-600);\n }\n.text-blue-900 {\n color: oklch(37.9% 0.146 265.522);\n color: var(--color-blue-900);\n }\n.text-card-foreground {\n color: oklch(0.145 0 0);\n }\n.text-current {\n color: currentcolor;\n }\n.text-cyan-900 {\n color: oklch(39.8% 0.07 227.392);\n color: var(--color-cyan-900);\n }\n.text-destructive {\n color: oklch(0.577 0.245 27.325);\n }\n.text-emerald-900 {\n color: oklch(37.8% 0.077 168.94);\n color: var(--color-emerald-900);\n }\n.text-foreground {\n color: oklch(0.145 0 0);\n }\n.text-fuchsia-900 {\n color: oklch(40.1% 0.17 325.612);\n color: var(--color-fuchsia-900);\n }\n.text-gray-400 {\n color: oklch(70.7% 0.022 261.325);\n color: var(--color-gray-400);\n }\n.text-gray-500 {\n color: oklch(55.1% 0.027 264.364);\n color: var(--color-gray-500);\n }\n.text-gray-600 {\n color: oklch(44.6% 0.03 256.802);\n color: var(--color-gray-600);\n }\n.text-gray-700 {\n color: oklch(37.3% 0.034 259.733);\n color: var(--color-gray-700);\n }\n.text-gray-800 {\n color: oklch(27.8% 0.033 256.848);\n color: var(--color-gray-800);\n }\n.text-gray-900 {\n color: oklch(21% 0.034 264.665);\n color: var(--color-gray-900);\n }\n.text-green-600 {\n color: oklch(62.7% 0.194 149.214);\n color: var(--color-green-600);\n }\n.text-green-900 {\n color: oklch(39.3% 0.095 152.535);\n color: var(--color-green-900);\n }\n.text-lime-900 {\n color: oklch(40.5% 0.101 131.063);\n color: var(--color-lime-900);\n }\n.text-muted-foreground {\n color: oklch(0.556 0 0);\n }\n.text-orange-900 {\n color: oklch(40.8% 0.123 38.172);\n color: var(--color-orange-900);\n }\n.text-pink-900 {\n color: oklch(40.8% 0.153 2.432);\n color: var(--color-pink-900);\n }\n.text-popover-foreground {\n color: oklch(0.145 0 0);\n }\n.text-primary {\n color: oklch(0.205 0 0);\n }\n.text-primary-foreground {\n color: oklch(0.985 0 0);\n }\n.text-purple-900 {\n color: oklch(38.1% 0.176 304.987);\n color: var(--color-purple-900);\n }\n.text-red-500 {\n color: oklch(63.7% 0.237 25.331);\n color: var(--color-red-500);\n }\n.text-red-600 {\n color: oklch(57.7% 0.245 27.325);\n color: var(--color-red-600);\n }\n.text-red-900 {\n color: oklch(39.6% 0.141 25.723);\n color: var(--color-red-900);\n }\n.text-secondary-foreground {\n color: oklch(0.205 0 0);\n }\n.text-teal-900 {\n color: oklch(38.6% 0.063 188.416);\n color: var(--color-teal-900);\n }\n.text-white {\n color: #fff;\n color: var(--color-white);\n }\n.text-yellow-900 {\n color: oklch(42.1% 0.095 57.708);\n color: var(--color-yellow-900);\n }\n.italic {\n font-style: italic;\n }\n.tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: tabular-nums ;\n font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);\n }\n.underline {\n text-decoration-line: underline;\n }\n.underline-offset-4 {\n text-underline-offset: 4px;\n }\n.opacity-50 {\n opacity: 50%;\n }\n.opacity-60 {\n opacity: 60%;\n }\n.opacity-100 {\n opacity: 100%;\n }\n.shadow {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-2xl {\n --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 25px 50px -12px rgb(0 0 0 / 0.25);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-\\\\[0px_8px_16px_-4px_rgba\\\\(0\\\\,0\\\\,0\\\\,0\\\\.1\\\\)\\\\] {\n --tw-shadow: 0px 8px 16px -4px var(--tw-shadow-color, rgba(0,0,0,0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0px 8px 16px -4px rgba(0,0,0,0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-none {\n --tw-shadow: 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-sm {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xl {\n --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.shadow-xs {\n --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 2px 0 rgb(0 0 0 / 0.05);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-1 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-2 {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n.ring-black {\n --tw-ring-color: var(--color-black);\n }\n.ring-blue-500 {\n --tw-ring-color: var(--color-blue-500);\n }\n.ring-foreground {\n --tw-ring-color: oklch(0.145 0 0);\n }\n.ring-gray-400 {\n --tw-ring-color: var(--color-gray-400);\n }\n.ring-gray-500 {\n --tw-ring-color: var(--color-gray-500);\n }\n.ring-gray-500\\\\/10 {\n --tw-ring-color: color-mix(in srgb, oklch(55.1% 0.027 264.364) 10%, transparent);\n @supports (color: color-mix(in lab, red, red)) {\n --tw-ring-color: color-mix(in oklab, var(--color-gray-500) 10%, transparent);\n }\n }\n.ring-offset-background {\n --tw-ring-offset-color: oklch(1 0 0);\n }\n.outline-hidden {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n.outline {\n outline-style: var(--tw-outline-style);\n outline-width: 1px;\n }\n.filter {\n filter: ;\n filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);\n }\n.backdrop-blur-md {\n --tw-backdrop-blur: blur(var(--blur-md));\n -webkit-backdrop-filter: blur(12px) ;\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: blur(12px) ;\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n.backdrop-blur-sm {\n --tw-backdrop-blur: blur(var(--blur-sm));\n -webkit-backdrop-filter: blur(8px) ;\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: blur(8px) ;\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n.backdrop-blur-xs {\n --tw-backdrop-blur: blur(var(--blur-xs));\n -webkit-backdrop-filter: blur(4px) ;\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: blur(4px) ;\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n.backdrop-filter {\n -webkit-backdrop-filter: ;\n -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n backdrop-filter: ;\n backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);\n }\n.transition {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-\\\\[color\\\\,box-shadow\\\\] {\n transition-property: color,box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-colors {\n transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-transform {\n transition-property: transform, translate, scale, rotate;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));\n transition-duration: 150ms;\n transition-duration: var(--tw-duration, var(--default-transition-duration));\n }\n.transition-none {\n transition-property: none;\n }\n.duration-100 {\n --tw-duration: 100ms;\n transition-duration: 100ms;\n }\n.duration-200 {\n --tw-duration: 200ms;\n transition-duration: 200ms;\n }\n.ease-in-out {\n --tw-ease: var(--ease-in-out);\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-timing-function: var(--ease-in-out);\n }\n.animate-in {\n animation-name: enter;\n animation-duration: 150ms;\n --tw-enter-opacity: initial;\n --tw-enter-scale: initial;\n --tw-enter-rotate: initial;\n --tw-enter-translate-x: initial;\n --tw-enter-translate-y: initial;\n }\n.outline-none {\n --tw-outline-style: none;\n outline-style: none;\n }\n.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n.duration-100 {\n animation-duration: 100ms;\n }\n.duration-200 {\n animation-duration: 200ms;\n }\n.ease-in-out {\n animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n }\n.fade-in-0 {\n --tw-enter-opacity: 0;\n }\n.ring-inset {\n --tw-ring-inset: inset;\n }\n.running {\n animation-play-state: running;\n }\n.zoom-in-95 {\n --tw-enter-scale: .95;\n }\n.group-has-\\\\[\\\\[data-orientation\\\\=horizontal\\\\]\\\\]\\\\/field\\\\:text-balance {\n &:is(:where(.group\\\\/field):has(*:is([data-orientation=horizontal])) *) {\n text-wrap: balance;\n }\n }\n.group-data-\\\\[disabled\\\\=true\\\\]\\\\:pointer-events-none {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n pointer-events: none;\n }\n }\n.group-data-\\\\[disabled\\\\=true\\\\]\\\\:opacity-50 {\n &:is(:where(.group)[data-disabled=\"true\"] *) {\n opacity: 50%;\n }\n }\n.group-data-\\\\[disabled\\\\=true\\\\]\\\\/field\\\\:opacity-50 {\n &:is(:where(.group\\\\/field)[data-disabled=\"true\"] *) {\n opacity: 50%;\n }\n }\n.group-data-\\\\[variant\\\\=outline\\\\]\\\\/field-group\\\\:-mb-2 {\n &:is(:where(.group\\\\/field-group)[data-variant=\"outline\"] *) {\n margin-bottom: calc(0.25rem * -2);\n margin-bottom: calc(var(--spacing) * -2);\n }\n }\n.peer-disabled\\\\:cursor-not-allowed {\n &:is(:where(.peer):disabled ~ *) {\n cursor: not-allowed;\n }\n }\n.peer-disabled\\\\:opacity-50 {\n &:is(:where(.peer):disabled ~ *) {\n opacity: 50%;\n }\n }\n.selection\\\\:bg-primary {\n & *::-moz-selection {\n background-color: oklch(0.205 0 0);\n }\n & *::selection {\n background-color: oklch(0.205 0 0);\n }\n &::-moz-selection {\n background-color: oklch(0.205 0 0);\n }\n &::selection {\n background-color: oklch(0.205 0 0);\n }\n }\n.selection\\\\:text-primary-foreground {\n & *::-moz-selection {\n color: oklch(0.985 0 0);\n }\n & *::selection {\n color: oklch(0.985 0 0);\n }\n &::-moz-selection {\n color: oklch(0.985 0 0);\n }\n &::selection {\n color: oklch(0.985 0 0);\n }\n }\n.file\\\\:inline-flex {\n &::file-selector-button {\n display: inline-flex;\n }\n }\n.file\\\\:h-7 {\n &::file-selector-button {\n height: calc(0.25rem * 7);\n height: calc(var(--spacing) * 7);\n }\n }\n.file\\\\:border-0 {\n &::file-selector-button {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.file\\\\:bg-transparent {\n &::file-selector-button {\n background-color: transparent;\n }\n }\n.file\\\\:text-sm {\n &::file-selector-button {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n }\n.file\\\\:font-medium {\n &::file-selector-button {\n --tw-font-weight: var(--font-weight-medium);\n font-weight: 500;\n font-weight: var(--font-weight-medium);\n }\n }\n.file\\\\:text-foreground {\n &::file-selector-button {\n color: oklch(0.145 0 0);\n }\n }\n.placeholder\\\\:text-muted-foreground {\n &::-moz-placeholder {\n color: oklch(0.556 0 0);\n }\n &::placeholder {\n color: oklch(0.556 0 0);\n }\n }\n.last\\\\:mt-0 {\n &:last-child {\n margin-top: calc(0.25rem * 0);\n margin-top: calc(var(--spacing) * 0);\n }\n }\n.last\\\\:border-b-0 {\n &:last-child {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 0px;\n }\n }\n.hover\\\\:cursor-pointer {\n &:hover {\n cursor: pointer\n }\n }\n.hover\\\\:bg-\\\\[\\\\#2A44D4\\\\] {\n &:hover {\n background-color: #2A44D4\n }\n }\n.hover\\\\:bg-\\\\[\\\\#EAECFB\\\\] {\n &:hover {\n background-color: #EAECFB\n }\n }\n.hover\\\\:bg-accent {\n &:hover {\n background-color: oklch(0.97 0 0)\n }\n }\n.hover\\\\:bg-destructive\\\\/90 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 90%, transparent)\n }\n }\n.hover\\\\:bg-gray-50 {\n &:hover {\n background-color: oklch(98.5% 0.002 247.839);\n background-color: var(--color-gray-50)\n }\n }\n.hover\\\\:bg-gray-100 {\n &:hover {\n background-color: oklch(96.7% 0.003 264.542);\n background-color: var(--color-gray-100)\n }\n }\n.hover\\\\:bg-gray-200 {\n &:hover {\n background-color: oklch(92.8% 0.006 264.531);\n background-color: var(--color-gray-200)\n }\n }\n.hover\\\\:bg-muted\\\\/30 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 30%, transparent)\n }\n }\n.hover\\\\:bg-muted\\\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent)\n }\n }\n.hover\\\\:bg-primary\\\\/90 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.205 0 0) 90%, transparent)\n }\n }\n.hover\\\\:bg-red-200 {\n &:hover {\n background-color: oklch(88.5% 0.062 18.334);\n background-color: var(--color-red-200)\n }\n }\n.hover\\\\:bg-secondary\\\\/80 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 80%, transparent)\n }\n }\n.hover\\\\:text-\\\\[\\\\#263DBF\\\\] {\n &:hover {\n color: #263DBF\n }\n }\n.hover\\\\:text-accent-foreground {\n &:hover {\n color: oklch(0.205 0 0)\n }\n }\n.hover\\\\:text-black {\n &:hover {\n color: #000;\n color: var(--color-black)\n }\n }\n.hover\\\\:text-blue-600 {\n &:hover {\n color: oklch(54.6% 0.245 262.881);\n color: var(--color-blue-600)\n }\n }\n.hover\\\\:text-gray-600 {\n &:hover {\n color: oklch(44.6% 0.03 256.802);\n color: var(--color-gray-600)\n }\n }\n.hover\\\\:text-white {\n &:hover {\n color: #fff;\n color: var(--color-white)\n }\n }\n.hover\\\\:underline {\n &:hover {\n text-decoration-line: underline\n }\n }\n.focus\\\\:bg-accent {\n &:focus {\n background-color: oklch(0.97 0 0);\n }\n }\n.focus\\\\:bg-blue-50 {\n &:focus {\n background-color: oklch(97% 0.014 254.604);\n background-color: var(--color-blue-50);\n }\n }\n.focus\\\\:ring-2 {\n &:focus {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus\\\\:ring-\\\\[\\\\#2A44D4\\\\] {\n &:focus {\n --tw-ring-color: #2A44D4;\n }\n }\n.focus\\\\:ring-blue-500 {\n &:focus {\n --tw-ring-color: var(--color-blue-500);\n }\n }\n.focus\\\\:outline-none {\n &:focus {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n.focus-visible\\\\:border-ring {\n &:focus-visible {\n border-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\\\:ring-2 {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\\\:ring-\\\\[3px\\\\] {\n &:focus-visible {\n --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.focus-visible\\\\:ring-destructive {\n &:focus-visible {\n --tw-ring-color: oklch(0.577 0.245 27.325);\n }\n }\n.focus-visible\\\\:ring-destructive\\\\/20 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 20%, transparent);\n }\n }\n.focus-visible\\\\:ring-ring {\n &:focus-visible {\n --tw-ring-color: oklch(0.708 0 0);\n }\n }\n.focus-visible\\\\:ring-ring\\\\/50 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.708 0 0) 50%, transparent);\n }\n }\n.focus-visible\\\\:ring-offset-2 {\n &:focus-visible {\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n }\n }\n.focus-visible\\\\:outline-none {\n &:focus-visible {\n --tw-outline-style: none;\n outline-style: none;\n }\n }\n.disabled\\\\:pointer-events-none {\n &:disabled {\n pointer-events: none;\n }\n }\n.disabled\\\\:cursor-not-allowed {\n &:disabled {\n cursor: not-allowed;\n }\n }\n.disabled\\\\:text-gray-400 {\n &:disabled {\n color: oklch(70.7% 0.022 261.325);\n color: var(--color-gray-400);\n }\n }\n.disabled\\\\:opacity-50 {\n &:disabled {\n opacity: 50%;\n }\n }\n.disabled\\\\:opacity-70 {\n &:disabled {\n opacity: 70%;\n }\n }\n.has-data-checked\\\\:border-primary\\\\/30 {\n &:has(*[data-checked]) {\n border-color: color-mix(in oklab, oklch(0.205 0 0) 30%, transparent);\n }\n }\n.has-data-checked\\\\:bg-primary\\\\/5 {\n &:has(*[data-checked]) {\n background-color: color-mix(in oklab, oklch(0.205 0 0) 5%, transparent);\n }\n }\n.has-data-\\\\[slot\\\\=card-action\\\\]\\\\:grid-cols-\\\\[1fr_auto\\\\] {\n &:has(*[data-slot=\"card-action\"]) {\n grid-template-columns: 1fr auto;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=checkbox-group\\\\]\\\\]\\\\:gap-3 {\n &:has(>[data-slot=checkbox-group]) {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field-content\\\\]\\\\]\\\\:items-start {\n &:has(>[data-slot=field-content]) {\n align-items: flex-start;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field\\\\]\\\\]\\\\:w-full {\n &:has(>[data-slot=field]) {\n width: 100%;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field\\\\]\\\\]\\\\:flex-col {\n &:has(>[data-slot=field]) {\n flex-direction: column;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field\\\\]\\\\]\\\\:rounded-lg {\n &:has(>[data-slot=field]) {\n border-radius: 0.625rem;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field\\\\]\\\\]\\\\:border {\n &:has(>[data-slot=field]) {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=radio-group\\\\]\\\\]\\\\:gap-3 {\n &:has(>[data-slot=radio-group]) {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n }\n.has-\\\\[\\\\>svg\\\\]\\\\:px-2\\\\.5 {\n &:has(>svg) {\n padding-inline: calc(0.25rem * 2.5);\n padding-inline: calc(var(--spacing) * 2.5);\n }\n }\n.has-\\\\[\\\\>svg\\\\]\\\\:px-3 {\n &:has(>svg) {\n padding-inline: calc(0.25rem * 3);\n padding-inline: calc(var(--spacing) * 3);\n }\n }\n.has-\\\\[\\\\>svg\\\\]\\\\:px-4 {\n &:has(>svg) {\n padding-inline: calc(0.25rem * 4);\n padding-inline: calc(var(--spacing) * 4);\n }\n }\n.aria-invalid\\\\:border-destructive {\n &[aria-invalid=\"true\"] {\n border-color: oklch(0.577 0.245 27.325);\n }\n }\n.aria-invalid\\\\:ring-destructive\\\\/20 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 20%, transparent);\n }\n }\n.data-\\\\[invalid\\\\=true\\\\]\\\\:text-destructive {\n &[data-invalid=\"true\"] {\n color: oklch(0.577 0.245 27.325);\n }\n }\n.data-\\\\[orientation\\\\=horizontal\\\\]\\\\:h-px {\n &[data-orientation=\"horizontal\"] {\n height: 1px;\n }\n }\n.data-\\\\[orientation\\\\=horizontal\\\\]\\\\:w-full {\n &[data-orientation=\"horizontal\"] {\n width: 100%;\n }\n }\n.data-\\\\[orientation\\\\=vertical\\\\]\\\\:h-full {\n &[data-orientation=\"vertical\"] {\n height: 100%;\n }\n }\n.data-\\\\[orientation\\\\=vertical\\\\]\\\\:w-px {\n &[data-orientation=\"vertical\"] {\n width: 1px;\n }\n }\n.data-\\\\[side\\\\=bottom\\\\]\\\\:slide-in-from-top-2 {\n &[data-side=\"bottom\"] {\n --tw-enter-translate-y: -0.5rem;\n }\n }\n.data-\\\\[side\\\\=left\\\\]\\\\:slide-in-from-right-2 {\n &[data-side=\"left\"] {\n --tw-enter-translate-x: 0.5rem;\n }\n }\n.data-\\\\[side\\\\=right\\\\]\\\\:slide-in-from-left-2 {\n &[data-side=\"right\"] {\n --tw-enter-translate-x: -0.5rem;\n }\n }\n.data-\\\\[side\\\\=top\\\\]\\\\:slide-in-from-bottom-2 {\n &[data-side=\"top\"] {\n --tw-enter-translate-y: 0.5rem;\n }\n }\n.data-\\\\[slot\\\\=checkbox-group\\\\]\\\\:gap-3 {\n &[data-slot=\"checkbox-group\"] {\n gap: calc(0.25rem * 3);\n gap: calc(var(--spacing) * 3);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:rounded-md {\n &[data-state=\"active\"] {\n border-radius: calc(0.625rem - 2px);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:border {\n &[data-state=\"active\"] {\n border-style: var(--tw-border-style);\n border-width: 1px;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:border-solid {\n &[data-state=\"active\"] {\n --tw-border-style: solid;\n border-style: solid;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:border-\\\\[\\\\#2A44D4\\\\] {\n &[data-state=\"active\"] {\n border-color: #2A44D4;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:bg-\\\\[\\\\#EAECFB\\\\] {\n &[data-state=\"active\"] {\n background-color: #EAECFB;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:bg-background {\n &[data-state=\"active\"] {\n background-color: oklch(1 0 0);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:text-\\\\[\\\\#263DBF\\\\] {\n &[data-state=\"active\"] {\n color: #263DBF;\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:text-foreground {\n &[data-state=\"active\"] {\n color: oklch(0.145 0 0);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:shadow {\n &[data-state=\"active\"] {\n --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.data-\\\\[state\\\\=active\\\\]\\\\:shadow-none {\n &[data-state=\"active\"] {\n --tw-shadow: 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), 0 0 #0000;\n box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n }\n }\n.data-\\\\[state\\\\=checked\\\\]\\\\:border-primary {\n &[data-state=\"checked\"] {\n border-color: oklch(0.205 0 0);\n }\n }\n.data-\\\\[state\\\\=checked\\\\]\\\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.data-\\\\[state\\\\=checked\\\\]\\\\:text-primary-foreground {\n &[data-state=\"checked\"] {\n color: oklch(0.985 0 0);\n }\n }\n.data-\\\\[state\\\\=closed\\\\]\\\\:animate-out {\n &[data-state=\"closed\"] {\n animation-name: exit;\n animation-duration: 150ms;\n --tw-exit-opacity: initial;\n --tw-exit-scale: initial;\n --tw-exit-rotate: initial;\n --tw-exit-translate-x: initial;\n --tw-exit-translate-y: initial;\n }\n }\n.data-\\\\[state\\\\=closed\\\\]\\\\:fade-out-0 {\n &[data-state=\"closed\"] {\n --tw-exit-opacity: 0;\n }\n }\n.data-\\\\[state\\\\=closed\\\\]\\\\:zoom-out-95 {\n &[data-state=\"closed\"] {\n --tw-exit-scale: .95;\n }\n }\n.data-\\\\[state\\\\=open\\\\]\\\\:animate-in {\n &[data-state=\"open\"] {\n animation-name: enter;\n animation-duration: 150ms;\n --tw-enter-opacity: initial;\n --tw-enter-scale: initial;\n --tw-enter-rotate: initial;\n --tw-enter-translate-x: initial;\n --tw-enter-translate-y: initial;\n }\n }\n.data-\\\\[state\\\\=open\\\\]\\\\:fade-in-0 {\n &[data-state=\"open\"] {\n --tw-enter-opacity: 0;\n }\n }\n.data-\\\\[state\\\\=open\\\\]\\\\:zoom-in-95 {\n &[data-state=\"open\"] {\n --tw-enter-scale: .95;\n }\n }\n.data-\\\\[state\\\\=selected\\\\]\\\\:bg-muted {\n &[data-state=\"selected\"] {\n background-color: oklch(0.97 0 0);\n }\n }\n.data-\\\\[variant\\\\=label\\\\]\\\\:text-sm {\n &[data-variant=\"label\"] {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height));\n }\n }\n.data-\\\\[variant\\\\=legend\\\\]\\\\:text-base {\n &[data-variant=\"legend\"] {\n font-size: 1rem;\n font-size: var(--text-base);\n line-height: calc(1.5 / 1);\n line-height: var(--tw-leading, var(--text-base--line-height));\n }\n }\n.nth-last-2\\\\:-mt-1 {\n &:nth-last-child(2) {\n margin-top: calc(0.25rem * -1);\n margin-top: calc(var(--spacing) * -1);\n }\n }\n.sm\\\\:flex-row {\n flex-direction: row\n }\n.sm\\\\:justify-end {\n justify-content: flex-end\n }\n.md\\\\:text-sm {\n font-size: 0.875rem;\n font-size: var(--text-sm);\n line-height: calc(1.25 / 0.875);\n line-height: var(--tw-leading, var(--text-sm--line-height))\n }\n.\\\\@md\\\\/field-group\\\\:flex-row {\n @container field-group (width >= 28rem) {\n flex-direction: row;\n }\n }\n.\\\\@md\\\\/field-group\\\\:items-center {\n @container field-group (width >= 28rem) {\n align-items: center;\n }\n }\n.\\\\@md\\\\/field-group\\\\:has-\\\\[\\\\>\\\\[data-slot\\\\=field-content\\\\]\\\\]\\\\:items-start {\n @container field-group (width >= 28rem) {\n &:has(>[data-slot=field-content]) {\n align-items: flex-start;\n }\n }\n }\n.dark\\\\:border-input {\n border-color: oklch(0.922 0 0)\n }\n.dark\\\\:bg-destructive\\\\/60 {\n background-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 60%, transparent)\n }\n.dark\\\\:bg-input\\\\/30 {\n background-color: color-mix(in oklab, oklch(0.922 0 0) 30%, transparent)\n }\n.dark\\\\:hover\\\\:bg-accent\\\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.97 0 0) 50%, transparent)\n }\n }\n.dark\\\\:hover\\\\:bg-input\\\\/50 {\n &:hover {\n background-color: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent)\n }\n }\n.dark\\\\:focus-visible\\\\:ring-destructive\\\\/40 {\n &:focus-visible {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 40%, transparent);\n }\n }\n.dark\\\\:has-data-checked\\\\:border-primary\\\\/20 {\n &:has(*[data-checked]) {\n border-color: color-mix(in oklab, oklch(0.205 0 0) 20%, transparent);\n }\n }\n.dark\\\\:has-data-checked\\\\:bg-primary\\\\/10 {\n &:has(*[data-checked]) {\n background-color: color-mix(in oklab, oklch(0.205 0 0) 10%, transparent);\n }\n }\n.dark\\\\:aria-invalid\\\\:ring-destructive\\\\/40 {\n &[aria-invalid=\"true\"] {\n --tw-ring-color: color-mix(in oklab, oklch(0.577 0.245 27.325) 40%, transparent);\n }\n }\n.dark\\\\:data-\\\\[state\\\\=checked\\\\]\\\\:bg-primary {\n &[data-state=\"checked\"] {\n background-color: oklch(0.205 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-cartesian-axis-tick_text\\\\]\\\\:fill-muted-foreground {\n & .recharts-cartesian-axis-tick text {\n fill: oklch(0.556 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-cartesian-grid_line\\\\[stroke\\\\=\\\\'\\\\#ccc\\\\'\\\\]\\\\]\\\\:stroke-border\\\\/50 {\n & .recharts-cartesian-grid line[stroke='#ccc'] {\n stroke: color-mix(in oklab, oklch(0.922 0 0) 50%, transparent);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-curve\\\\.recharts-tooltip-cursor\\\\]\\\\:stroke-border {\n & .recharts-curve.recharts-tooltip-cursor {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-dot\\\\[stroke\\\\=\\\\'\\\\#fff\\\\'\\\\]\\\\]\\\\:stroke-transparent {\n & .recharts-dot[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\\\[\\\\&_\\\\.recharts-layer\\\\]\\\\:outline-hidden {\n & .recharts-layer {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\\\[\\\\&_\\\\.recharts-polar-grid_\\\\[stroke\\\\=\\\\'\\\\#ccc\\\\'\\\\]\\\\]\\\\:stroke-border {\n & .recharts-polar-grid [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-radial-bar-background-sector\\\\]\\\\:fill-muted {\n & .recharts-radial-bar-background-sector {\n fill: oklch(0.97 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-rectangle\\\\.recharts-tooltip-cursor\\\\]\\\\:fill-muted {\n & .recharts-rectangle.recharts-tooltip-cursor {\n fill: oklch(0.97 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-reference-line_\\\\[stroke\\\\=\\\\'\\\\#ccc\\\\'\\\\]\\\\]\\\\:stroke-border {\n & .recharts-reference-line [stroke='#ccc'] {\n stroke: oklch(0.922 0 0);\n }\n }\n.\\\\[\\\\&_\\\\.recharts-sector\\\\]\\\\:outline-hidden {\n & .recharts-sector {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\\\[\\\\&_\\\\.recharts-sector\\\\[stroke\\\\=\\\\'\\\\#fff\\\\'\\\\]\\\\]\\\\:stroke-transparent {\n & .recharts-sector[stroke='#fff'] {\n stroke: transparent;\n }\n }\n.\\\\[\\\\&_\\\\.recharts-surface\\\\]\\\\:outline-hidden {\n & .recharts-surface {\n --tw-outline-style: none;\n outline-style: none;\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n }\n.\\\\[\\\\&_svg\\\\]\\\\:pointer-events-none {\n & svg {\n pointer-events: none;\n }\n }\n.\\\\[\\\\&_svg\\\\]\\\\:shrink-0 {\n & svg {\n flex-shrink: 0;\n }\n }\n.\\\\[\\\\&_svg\\\\:not\\\\(\\\\[class\\\\*\\\\=\\\\'size-\\\\'\\\\]\\\\)\\\\]\\\\:size-4 {\n & svg:not([class*='size-']) {\n width: calc(0.25rem * 4);\n width: calc(var(--spacing) * 4);\n height: calc(0.25rem * 4);\n height: calc(var(--spacing) * 4);\n }\n }\n.\\\\[\\\\&_tr\\\\]\\\\:border-b {\n & tr {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 1px;\n }\n }\n.\\\\[\\\\&_tr\\\\:last-child\\\\]\\\\:border-0 {\n & tr:last-child {\n border-style: var(--tw-border-style);\n border-width: 0px;\n }\n }\n.\\\\[\\\\&\\\\:has\\\\(\\\\[role\\\\=checkbox\\\\]\\\\)\\\\]\\\\:pr-0 {\n &:has([role=checkbox]) {\n padding-right: calc(0.25rem * 0);\n padding-right: calc(var(--spacing) * 0);\n }\n }\n.\\\\[\\\\.border-b\\\\]\\\\:pb-6 {\n &:is(.border-b) {\n padding-bottom: calc(0.25rem * 6);\n padding-bottom: calc(var(--spacing) * 6);\n }\n }\n.\\\\*\\\\:\\\\[a\\\\]\\\\:underline {\n :is(& > *) {\n &:is(a) {\n text-decoration-line: underline;\n }\n }\n }\n.\\\\*\\\\:\\\\[a\\\\]\\\\:underline-offset-3 {\n :is(& > *) {\n &:is(a) {\n text-underline-offset: 3px;\n }\n }\n }\n.\\\\*\\\\:\\\\[a\\\\]\\\\:hover\\\\:text-foreground {\n :is(& > *) {\n &:is(a) {\n &:hover {\n color: oklch(0.145 0 0)\n }\n }\n }\n }\n.\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:w-full {\n &>* {\n width: 100%;\n }\n }\n.\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:data-\\\\[slot\\\\=field\\\\]\\\\:p-2\\\\.5 {\n &>* {\n &[data-slot=\"field\"] {\n padding: calc(0.25rem * 2.5);\n padding: calc(var(--spacing) * 2.5);\n }\n }\n }\n.\\\\@md\\\\/field-group\\\\:\\\\[\\\\&\\\\>\\\\*\\\\]\\\\:w-auto {\n @container field-group (width >= 28rem) {\n &>* {\n width: auto;\n }\n }\n }\n.\\\\[\\\\&\\\\>\\\\.sr-only\\\\]\\\\:w-auto {\n &>.sr-only {\n width: auto;\n }\n }\n.\\\\[\\\\&\\\\>\\\\[data-slot\\\\=field-group\\\\]\\\\]\\\\:gap-4 {\n &>[data-slot=field-group] {\n gap: calc(0.25rem * 4);\n gap: calc(var(--spacing) * 4);\n }\n }\n.\\\\[\\\\&\\\\>\\\\[data-slot\\\\=field-label\\\\]\\\\]\\\\:flex-auto {\n &>[data-slot=field-label] {\n flex: auto;\n }\n }\n.\\\\@md\\\\/field-group\\\\:\\\\[\\\\&\\\\>\\\\[data-slot\\\\=field-label\\\\]\\\\]\\\\:flex-auto {\n @container field-group (width >= 28rem) {\n &>[data-slot=field-label] {\n flex: auto;\n }\n }\n }\n.\\\\[\\\\&\\\\>\\\\[role\\\\=checkbox\\\\]\\\\]\\\\:translate-y-\\\\[2px\\\\] {\n &>[role=checkbox] {\n --tw-translate-y: 2px;\n translate: var(--tw-translate-x) 2px;\n translate: var(--tw-translate-x) var(--tw-translate-y);\n }\n }\n.has-\\\\[\\\\>\\\\[data-slot\\\\=field-content\\\\]\\\\]\\\\:\\\\[\\\\&\\\\>\\\\[role\\\\=checkbox\\\\]\\\\,\\\\[role\\\\=radio\\\\]\\\\]\\\\:mt-px {\n &:has(>[data-slot=field-content]) {\n &>[role=checkbox],[role=radio] {\n margin-top: 1px;\n }\n }\n }\n.\\\\@md\\\\/field-group\\\\:has-\\\\[\\\\>\\\\[data-slot\\\\=field-content\\\\]\\\\]\\\\:\\\\[\\\\&\\\\>\\\\[role\\\\=checkbox\\\\]\\\\,\\\\[role\\\\=radio\\\\]\\\\]\\\\:mt-px {\n @container field-group (width >= 28rem) {\n &:has(>[data-slot=field-content]) {\n &>[role=checkbox],[role=radio] {\n margin-top: 1px;\n }\n }\n }\n }\n.\\\\[\\\\&\\\\>a\\\\]\\\\:underline {\n &>a {\n text-decoration-line: underline;\n }\n }\n.\\\\[\\\\&\\\\>a\\\\]\\\\:underline-offset-4 {\n &>a {\n text-underline-offset: 4px;\n }\n }\n.\\\\[\\\\&\\\\>a\\\\:hover\\\\]\\\\:text-primary {\n &>a:hover {\n color: oklch(0.205 0 0);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:h-2\\\\.5 {\n &>svg {\n height: calc(0.25rem * 2.5);\n height: calc(var(--spacing) * 2.5);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:h-3 {\n &>svg {\n height: calc(0.25rem * 3);\n height: calc(var(--spacing) * 3);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:w-2\\\\.5 {\n &>svg {\n width: calc(0.25rem * 2.5);\n width: calc(var(--spacing) * 2.5);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:w-3 {\n &>svg {\n width: calc(0.25rem * 3);\n width: calc(var(--spacing) * 3);\n }\n }\n.\\\\[\\\\&\\\\>svg\\\\]\\\\:text-muted-foreground {\n &>svg {\n color: oklch(0.556 0 0);\n }\n }\n.\\\\[\\\\&\\\\>tr\\\\]\\\\:last\\\\:border-b-0 {\n &>tr {\n &:last-child {\n border-bottom-style: var(--tw-border-style);\n border-bottom-width: 0px;\n }\n }\n }\n.\\\\[\\\\[data-variant\\\\=legend\\\\]\\\\+\\\\&\\\\]\\\\:-mt-1\\\\.5 {\n [data-variant=legend]+& {\n margin-top: calc(0.25rem * -1.5);\n margin-top: calc(var(--spacing) * -1.5);\n }\n }\n@keyframes enter {\n from {\n opacity: 1;\n opacity: var(--tw-enter-opacity, 1);\n transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0);\n transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));\n }\n}\n@keyframes exit {\n to {\n opacity: 1;\n opacity: var(--tw-exit-opacity, 1);\n transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0);\n transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));\n }\n}\n@property --tw-translate-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-translate-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-scale-x {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-y {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-scale-z {\n syntax: \"*\";\n inherits: false;\n initial-value: 1;\n}\n@property --tw-rotate-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-rotate-z {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-x {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-skew-y {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-space-y-reverse {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-space-x-reverse {\n syntax: \"*\";\n inherits: false;\n initial-value: 0;\n}\n@property --tw-border-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-leading {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-font-weight {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ordinal {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-slashed-zero {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-figure {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-spacing {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-numeric-fraction {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-inset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-inset-ring-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-inset-ring-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-ring-inset {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ring-offset-width {\n syntax: \"<length>\";\n inherits: false;\n initial-value: 0px;\n}\n@property --tw-ring-offset-color {\n syntax: \"*\";\n inherits: false;\n initial-value: #fff;\n}\n@property --tw-ring-offset-shadow {\n syntax: \"*\";\n inherits: false;\n initial-value: 0 0 #0000;\n}\n@property --tw-outline-style {\n syntax: \"*\";\n inherits: false;\n initial-value: solid;\n}\n@property --tw-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-color {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-drop-shadow-alpha {\n syntax: \"<percentage>\";\n inherits: false;\n initial-value: 100%;\n}\n@property --tw-drop-shadow-size {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-blur {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-brightness {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-contrast {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-grayscale {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-hue-rotate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-invert {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-opacity {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-saturate {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-backdrop-sepia {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-duration {\n syntax: \"*\";\n inherits: false;\n}\n@property --tw-ease {\n syntax: \"*\";\n inherits: false;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n@keyframes pulse {\n 50% {\n opacity: 0.5;\n }\n}\n@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {\n *, ::before, ::after, ::backdrop {\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-translate-z: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-scale-z: 1;\n --tw-rotate-x: initial;\n --tw-rotate-y: initial;\n --tw-rotate-z: initial;\n --tw-skew-x: initial;\n --tw-skew-y: initial;\n --tw-space-y-reverse: 0;\n --tw-space-x-reverse: 0;\n --tw-border-style: solid;\n --tw-leading: initial;\n --tw-font-weight: initial;\n --tw-ordinal: initial;\n --tw-slashed-zero: initial;\n --tw-numeric-figure: initial;\n --tw-numeric-spacing: initial;\n --tw-numeric-fraction: initial;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-color: initial;\n --tw-shadow-alpha: 100%;\n --tw-inset-shadow: 0 0 #0000;\n --tw-inset-shadow-color: initial;\n --tw-inset-shadow-alpha: 100%;\n --tw-ring-color: initial;\n --tw-ring-shadow: 0 0 #0000;\n --tw-inset-ring-color: initial;\n --tw-inset-ring-shadow: 0 0 #0000;\n --tw-ring-inset: initial;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-outline-style: solid;\n --tw-blur: initial;\n --tw-brightness: initial;\n --tw-contrast: initial;\n --tw-grayscale: initial;\n --tw-hue-rotate: initial;\n --tw-invert: initial;\n --tw-opacity: initial;\n --tw-saturate: initial;\n --tw-sepia: initial;\n --tw-drop-shadow: initial;\n --tw-drop-shadow-color: initial;\n --tw-drop-shadow-alpha: 100%;\n --tw-drop-shadow-size: initial;\n --tw-backdrop-blur: initial;\n --tw-backdrop-brightness: initial;\n --tw-backdrop-contrast: initial;\n --tw-backdrop-grayscale: initial;\n --tw-backdrop-hue-rotate: initial;\n --tw-backdrop-invert: initial;\n --tw-backdrop-opacity: initial;\n --tw-backdrop-saturate: initial;\n --tw-backdrop-sepia: initial;\n --tw-duration: initial;\n --tw-ease: initial;\n }\n }\n`"],"mappings":"AAAA,MAAO,IAAM,CAAAA,mBAAmB,wm2FAk3G/B","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Editor, Component } from 'grapesjs';
|
|
3
|
-
export declare function createGrapesjsShadcnGenericPlugin(modeRef: React.MutableRefObject<'editor' | 'preview'>, performInteraction: (payload: Record<string, any>) => void, renderedComponents: Record<string, Component> | undefined, setHasChanged: (hasChanged: boolean) => void, isTemplateView: boolean | undefined, isStreamingRef: React.MutableRefObject<boolean>, navigateToPage?: (pageId: string) => void
|
|
3
|
+
export declare function createGrapesjsShadcnGenericPlugin(modeRef: React.MutableRefObject<'editor' | 'preview'>, performInteraction: (payload: Record<string, any>) => void, renderedComponents: Record<string, Component> | undefined, setHasChanged: (hasChanged: boolean) => void, isTemplateView: boolean | undefined, isStreamingRef: React.MutableRefObject<boolean>, navigateToPage?: (pageId: string) => void, downloadTable?: (data: {
|
|
4
|
+
tableId: string;
|
|
5
|
+
title: string;
|
|
6
|
+
limit: number;
|
|
7
|
+
headerMapper?: Record<string, string>;
|
|
8
|
+
}) => Promise<void>): (editor: Editor) => void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import _extends from"@babel/runtime/helpers/extends";/* eslint-disable import/no-named-as-default-member *//* eslint-disable func-names *//* eslint-disable @typescript-eslint/no-explicit-any */import React from"react";import ReactDOM from"react-dom";import{getRenderers}from"./helpers/render-components";import{QueryCacheProvider}from"./helpers/query-cache-context";import{jsx as _jsx}from"react/jsx-runtime";export function createGrapesjsShadcnGenericPlugin(modeRef,performInteraction,renderedComponents,setHasChanged,isTemplateView,isStreamingRef,navigateToPage){if(renderedComponents===void 0){renderedComponents={}}if(isTemplateView===void 0){isTemplateView=false}return function grapesjsShadcnGenericPlugin(editor){editor.DomComponents.addType("shadcn-generic",{model:{defaults:{tagName:"div",droppable:false,componentName:"Card",componentProps:{},traits:[]}},view:{events:{"input [data-slot]":"handleSlotInput"},handleSlotInput:function handleSlotInput(e){var target=e.target;var slot=target.dataset.slot;var text=target.innerText;var props=this.model.get("componentProps")||{};if(!slot){return}if(slot.startsWith("table-header-")){var _props$data;var idx=parseInt(slot.split("-")[2],10);var dataKeys=Object.keys(((_props$data=props.data)==null?void 0:_props$data[0])||{});if(!props.headerMapper){props.headerMapper={}}var key=dataKeys[idx];if(key){props.headerMapper[key]=text}}else{props[slot]=text}this.model.set("componentProps",_extends({},props));if(!["search-input"].includes(slot)){setHasChanged(true)}},render:function render(){var _this=this;var compName=this.model.get("componentName");var compProps=this.model.get("componentProps");if(typeof compProps==="string"){try{compProps=JSON.parse(compProps)}catch(err){// eslint-disable-next-line no-console
|
|
2
|
-
console.error("Invalid JSON in componentProps",err);compProps={}}}compProps.performInteraction=performInteraction;compProps.navigateToPage=navigateToPage;compProps.isTemplateView=isTemplateView;compProps.isEditable=modeRef.current==="editor"&&!isStreamingRef.current;compProps.onChange=function(data){_this.model.set("componentProps",_extends({},_this.model.get("componentProps"),data))};var renderers=getRenderers();var Renderer=renderers[compName];if(Renderer){if(compName==="Tabs"){this._cleanupTabsSetup();ReactDOM.render(/*#__PURE__*/_jsx(QueryCacheProvider,{maxCacheSize:100,maxCacheAge:5*60*1000,children:/*#__PURE__*/_jsx(Renderer,_extends({},compProps,{gjsModel:this.model}))}),this.el);var children=this.model.components();if(children.length===0){return this}var tabAttributes=this.model.get("attributes")||{};var hasTabsError=tabAttributes.error||compProps.error;var hasTabsMissing=tabAttributes.isMissing||compProps.isMissing;var injectChildren=function injectChildren(){var tabsContent=_this.el.querySelectorAll(".tabs-content");var isFallback=Array.from(tabsContent).some(function(el){return el.dataset.fallback==="true"});if(isFallback||tabsContent.length===0){return false}children.each(function(childModel){_this.stopListening(childModel,"change:attributes")});children.each(function(childModel,i){var container=tabsContent[i];if(!container){return}var childView=_this.createView(childModel);if(childView){container.innerHTML="";childView.render();container.appendChild(childView.el);_this.listenTo(childModel,"change:attributes",function(){var childAttributes=childModel.get("attributes")||{};var childProps=childModel.get("componentProps")||{};var hasError=hasTabsError||childAttributes.error||childProps.error;var hasMissing=hasTabsMissing||childAttributes.isMissing||childProps.isMissing;if(hasError||hasMissing){childModel.set("attributes",_extends({},childAttributes,{loading:false,error:hasError,isMissing:hasMissing,inheritedFromParent:!!(hasTabsError||hasTabsMissing)}),{silent:false})}})}});return true};if(injectChildren()){return this}this._tabsTimeoutId=setTimeout(function(){if(injectChildren()){return}// eslint-disable-next-line no-console
|
|
1
|
+
import _extends from"@babel/runtime/helpers/extends";/* eslint-disable import/no-named-as-default-member *//* eslint-disable func-names *//* eslint-disable @typescript-eslint/no-explicit-any */import React from"react";import ReactDOM from"react-dom";import{getRenderers}from"./helpers/render-components";import{QueryCacheProvider}from"./helpers/query-cache-context";import{jsx as _jsx}from"react/jsx-runtime";export function createGrapesjsShadcnGenericPlugin(modeRef,performInteraction,renderedComponents,setHasChanged,isTemplateView,isStreamingRef,navigateToPage,downloadTable){if(renderedComponents===void 0){renderedComponents={}}if(isTemplateView===void 0){isTemplateView=false}return function grapesjsShadcnGenericPlugin(editor){editor.DomComponents.addType("shadcn-generic",{model:{defaults:{tagName:"div",droppable:false,componentName:"Card",componentProps:{},traits:[]}},view:{events:{"input [data-slot]":"handleSlotInput"},handleSlotInput:function handleSlotInput(e){var target=e.target;var slot=target.dataset.slot;var text=target.innerText;var props=this.model.get("componentProps")||{};if(!slot){return}if(slot.startsWith("table-header-")){var _props$data;var idx=parseInt(slot.split("-")[2],10);var dataKeys=Object.keys(((_props$data=props.data)==null?void 0:_props$data[0])||{});if(!props.headerMapper){props.headerMapper={}}var key=dataKeys[idx];if(key){props.headerMapper[key]=text}}else{props[slot]=text}this.model.set("componentProps",_extends({},props));if(!["search-input"].includes(slot)){setHasChanged(true)}},render:function render(){var _this=this;var compName=this.model.get("componentName");var compProps=this.model.get("componentProps");if(typeof compProps==="string"){try{compProps=JSON.parse(compProps)}catch(err){// eslint-disable-next-line no-console
|
|
2
|
+
console.error("Invalid JSON in componentProps",err);compProps={}}}compProps.performInteraction=performInteraction;compProps.navigateToPage=navigateToPage;compProps.downloadTable=downloadTable;compProps.isTemplateView=isTemplateView;compProps.isEditable=modeRef.current==="editor"&&!isStreamingRef.current;compProps.onChange=function(data){_this.model.set("componentProps",_extends({},_this.model.get("componentProps"),data))};var renderers=getRenderers();var Renderer=renderers[compName];if(Renderer){if(compName==="Tabs"){this._cleanupTabsSetup();ReactDOM.render(/*#__PURE__*/_jsx(QueryCacheProvider,{maxCacheSize:100,maxCacheAge:5*60*1000,children:/*#__PURE__*/_jsx(Renderer,_extends({},compProps,{gjsModel:this.model}))}),this.el);var children=this.model.components();if(children.length===0){return this}var tabAttributes=this.model.get("attributes")||{};var hasTabsError=tabAttributes.error||compProps.error;var hasTabsMissing=tabAttributes.isMissing||compProps.isMissing;var injectChildren=function injectChildren(){var tabsContent=_this.el.querySelectorAll(".tabs-content");var isFallback=Array.from(tabsContent).some(function(el){return el.dataset.fallback==="true"});if(isFallback||tabsContent.length===0){return false}children.each(function(childModel){_this.stopListening(childModel,"change:attributes")});children.each(function(childModel,i){var container=tabsContent[i];if(!container){return}var childView=_this.createView(childModel);if(childView){container.innerHTML="";childView.render();container.appendChild(childView.el);_this.listenTo(childModel,"change:attributes",function(){var childAttributes=childModel.get("attributes")||{};var childProps=childModel.get("componentProps")||{};var hasError=hasTabsError||childAttributes.error||childProps.error;var hasMissing=hasTabsMissing||childAttributes.isMissing||childProps.isMissing;if(hasError||hasMissing){childModel.set("attributes",_extends({},childAttributes,{loading:false,error:hasError,isMissing:hasMissing,inheritedFromParent:!!(hasTabsError||hasTabsMissing)}),{silent:false})}})}});return true};if(injectChildren()){return this}this._tabsTimeoutId=setTimeout(function(){if(injectChildren()){return}// eslint-disable-next-line no-console
|
|
3
3
|
console.warn("Could not inject tabs content after delay")},100)}else{ReactDOM.render(/*#__PURE__*/_jsx(QueryCacheProvider,{maxCacheSize:100,maxCacheAge:5*60*1000,children:/*#__PURE__*/_jsx(Renderer,_extends({},compProps,{gjsModel:this.model}))}),this.el)}}else{this.el.innerHTML="<div>Unsupported component: "+compName+"</div>"}renderedComponents[this.model.get("id")]=this.model;return this},_cleanupTabsSetup:function _cleanupTabsSetup(){if(this._tabsTimeoutId){clearTimeout(this._tabsTimeoutId);this._tabsTimeoutId=null}},createView:function createView(model){var _this$em$get$getType;var ComponentView=(_this$em$get$getType=this.em.get("DomComponents").getType(model.get("type")))==null?void 0:_this$em$get$getType.view;if(!ComponentView){// eslint-disable-next-line no-console
|
|
4
4
|
console.warn("No view found for component type:",model.get("type"));return null}var view=new ComponentView({model:model,config:this.config,componentTypes:this.componentTypes});return view},remove:function remove(){this.stopListening();this._cleanupTabsSetup();// eslint-disable-next-line import/no-named-as-default-member
|
|
5
5
|
ReactDOM.unmountComponentAtNode(this.el);return this}}})}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grapejs-plugin.js","names":["React","ReactDOM","getRenderers","QueryCacheProvider","jsx","_jsx","createGrapesjsShadcnGenericPlugin","modeRef","performInteraction","renderedComponents","setHasChanged","isTemplateView","isStreamingRef","navigateToPage","grapesjsShadcnGenericPlugin","editor","DomComponents","addType","model","defaults","tagName","droppable","componentName","componentProps","traits","view","events","handleSlotInput","e","target","slot","dataset","text","innerText","props","get","startsWith","_props$data","idx","parseInt","split","dataKeys","Object","keys","data","headerMapper","key","set","_extends","includes","render","_this","compName","compProps","JSON","parse","err","console","error","isEditable","current","onChange","renderers","Renderer","_cleanupTabsSetup","maxCacheSize","maxCacheAge","children","gjsModel","el","components","length","tabAttributes","hasTabsError","hasTabsMissing","isMissing","injectChildren","tabsContent","querySelectorAll","isFallback","Array","from","some","fallback","each","childModel","stopListening","i","container","childView","createView","innerHTML","appendChild","listenTo","childAttributes","childProps","hasError","hasMissing","loading","inheritedFromParent","silent","_tabsTimeoutId","setTimeout","warn","clearTimeout","_this$em$get$getType","ComponentView","em","getType","config","componentTypes","remove","unmountComponentAtNode"],"sources":["../../src/plugins/grapejs-plugin.tsx"],"sourcesContent":["/* eslint-disable import/no-named-as-default-member */\n/* eslint-disable func-names */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Editor, Component } from 'grapesjs';\nimport { getRenderers } from './helpers/render-components';\nimport { QueryCacheProvider } from './helpers/query-cache-context';\n\nexport function createGrapesjsShadcnGenericPlugin(\n modeRef: React.MutableRefObject<'editor' | 'preview'>,\n performInteraction: (payload: Record<string, any>) => void,\n renderedComponents: Record<string, Component> = {},\n setHasChanged: (hasChanged: boolean) => void,\n isTemplateView = false,\n isStreamingRef: React.MutableRefObject<boolean>,\n navigateToPage?: (pageId: string) => void,\n) {\n return function grapesjsShadcnGenericPlugin(editor: Editor): void {\n editor.DomComponents.addType('shadcn-generic', {\n model: {\n defaults: {\n tagName: 'div',\n droppable: false,\n componentName: 'Card',\n componentProps: {},\n traits: [],\n },\n },\n view: {\n events: {\n 'input [data-slot]': 'handleSlotInput',\n } as any,\n handleSlotInput(e: Event) {\n const target = e.target as HTMLElement;\n const slot = target.dataset.slot;\n const text = target.innerText;\n\n const props = this.model.get('componentProps') || {};\n\n if (!slot) {\n return;\n }\n\n if (slot.startsWith('table-header-')) {\n const idx = parseInt(slot.split('-')[2], 10);\n const dataKeys = Object.keys(props.data?.[0] || {});\n\n if (!props.headerMapper) {\n props.headerMapper = {};\n }\n\n const key = dataKeys[idx];\n\n if (key) {\n props.headerMapper[key] = text;\n }\n } else {\n props[slot] = text;\n }\n\n this.model.set('componentProps', {\n ...props,\n });\n\n if (!['search-input'].includes(slot)) {\n setHasChanged(true);\n }\n },\n render: function () {\n const compName: string = this.model.get('componentName');\n let compProps: any = this.model.get('componentProps');\n\n if (typeof compProps === 'string') {\n try {\n compProps = JSON.parse(compProps);\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('Invalid JSON in componentProps', err);\n compProps = {};\n }\n }\n\n compProps.performInteraction = performInteraction;\n compProps.navigateToPage = navigateToPage;\n compProps.isTemplateView = isTemplateView;\n compProps.isEditable = modeRef.current === 'editor' && !isStreamingRef.current;\n\n compProps.onChange = (data: Record<string, any>) => {\n this.model.set('componentProps', {\n ...this.model.get('componentProps'),\n ...data,\n });\n };\n\n const renderers = getRenderers();\n const Renderer = renderers[compName];\n\n if (Renderer) {\n if (compName === 'Tabs') {\n this._cleanupTabsSetup();\n\n ReactDOM.render(\n <QueryCacheProvider maxCacheSize={100} maxCacheAge={5 * 60 * 1000}>\n <Renderer {...compProps} gjsModel={this.model} />\n </QueryCacheProvider>,\n this.el,\n );\n\n const children = this.model.components();\n\n if (children.length === 0) {\n return this;\n }\n\n const tabAttributes = this.model.get('attributes') || {};\n const hasTabsError = tabAttributes.error || compProps.error;\n const hasTabsMissing = tabAttributes.isMissing || compProps.isMissing;\n\n const injectChildren = () => {\n const tabsContent = this.el.querySelectorAll('.tabs-content');\n const isFallback = Array.from(tabsContent).some(\n (el: Element) => (el as HTMLElement).dataset.fallback === 'true',\n );\n\n if (isFallback || tabsContent.length === 0) {\n return false;\n }\n\n children.each((childModel: any) => {\n this.stopListening(childModel, 'change:attributes');\n });\n\n children.each((childModel: any, i: number) => {\n const container = tabsContent[i];\n\n if (!container) {\n return;\n }\n\n const childView = this.createView(childModel);\n\n if (childView) {\n container.innerHTML = '';\n childView.render();\n container.appendChild(childView.el);\n\n this.listenTo(childModel, 'change:attributes', () => {\n const childAttributes = childModel.get('attributes') || {};\n const childProps = childModel.get('componentProps') || {};\n const hasError = hasTabsError || childAttributes.error || childProps.error;\n const hasMissing =\n hasTabsMissing || childAttributes.isMissing || childProps.isMissing;\n\n if (hasError || hasMissing) {\n childModel.set(\n 'attributes',\n {\n ...childAttributes,\n loading: false,\n error: hasError,\n isMissing: hasMissing,\n inheritedFromParent: !!(hasTabsError || hasTabsMissing),\n },\n { silent: false },\n );\n }\n });\n }\n });\n\n return true;\n };\n\n if (injectChildren()) {\n return this;\n }\n\n this._tabsTimeoutId = setTimeout(() => {\n if (injectChildren()) {\n return;\n }\n\n // eslint-disable-next-line no-console\n console.warn('Could not inject tabs content after delay');\n }, 100);\n } else {\n ReactDOM.render(\n <QueryCacheProvider maxCacheSize={100} maxCacheAge={5 * 60 * 1000}>\n <Renderer {...compProps} gjsModel={this.model} />\n </QueryCacheProvider>,\n this.el,\n );\n }\n } else {\n this.el.innerHTML = `<div>Unsupported component: ${compName}</div>`;\n }\n\n renderedComponents[this.model.get('id')] = this.model;\n\n return this;\n },\n _cleanupTabsSetup: function () {\n if (this._tabsTimeoutId) {\n clearTimeout(this._tabsTimeoutId);\n this._tabsTimeoutId = null;\n }\n },\n createView(model: any) {\n const ComponentView = this.em.get('DomComponents').getType(model.get('type'))?.view;\n\n if (!ComponentView) {\n // eslint-disable-next-line no-console\n console.warn('No view found for component type:', model.get('type'));\n\n return null;\n }\n\n const view = new ComponentView({\n model,\n config: this.config,\n componentTypes: this.componentTypes,\n });\n\n return view;\n },\n remove: function () {\n this.stopListening();\n\n this._cleanupTabsSetup();\n\n // eslint-disable-next-line import/no-named-as-default-member\n ReactDOM.unmountComponentAtNode(this.el);\n\n return this;\n },\n },\n });\n };\n}\n"],"mappings":"qDAAA,sDACA,+BACA,uDACA,MAAO,CAAAA,KAAK,KAAM,OAAO,CACzB,MAAO,CAAAC,QAAQ,KAAM,WAAW,CAEhC,OAASC,YAAY,KAAQ,6BAA6B,CAC1D,OAASC,kBAAkB,KAAQ,+BAA+B,CAAC,OAAAC,GAAA,IAAAC,IAAA,yBAEnE,MAAO,SAAS,CAAAC,iCAAiCA,CAC/CC,OAAqD,CACrDC,kBAA0D,CAC1DC,kBAA6C,CAC7CC,aAA4C,CAC5CC,cAAc,CACdC,cAA+C,CAC/CC,cAAyC,CACzC,IALAJ,kBAA6C,WAA7CA,kBAA6C,CAAG,CAAC,CAAC,IAElDE,cAAc,WAAdA,cAAc,CAAG,KAAK,CAItB,MAAO,SAAS,CAAAG,2BAA2BA,CAACC,MAAc,CAAQ,CAChEA,MAAM,CAACC,aAAa,CAACC,OAAO,CAAC,gBAAgB,CAAE,CAC7CC,KAAK,CAAE,CACLC,QAAQ,CAAE,CACRC,OAAO,CAAE,KAAK,CACdC,SAAS,CAAE,KAAK,CAChBC,aAAa,CAAE,MAAM,CACrBC,cAAc,CAAE,CAAC,CAAC,CAClBC,MAAM,CAAE,EACV,CACF,CAAC,CACDC,IAAI,CAAE,CACJC,MAAM,CAAE,CACN,mBAAmB,CAAE,iBACvB,CAAQ,CACRC,eAAe,SAAf,CAAAA,eAAeA,CAACC,CAAQ,CAAE,CACxB,GAAM,CAAAC,MAAM,CAAGD,CAAC,CAACC,MAAqB,CACtC,GAAM,CAAAC,IAAI,CAAGD,MAAM,CAACE,OAAO,CAACD,IAAI,CAChC,GAAM,CAAAE,IAAI,CAAGH,MAAM,CAACI,SAAS,CAE7B,GAAM,CAAAC,KAAK,CAAG,IAAI,CAAChB,KAAK,CAACiB,GAAG,CAAC,gBAAgB,CAAC,EAAI,CAAC,CAAC,CAEpD,GAAI,CAACL,IAAI,CAAE,CACT,MACF,CAEA,GAAIA,IAAI,CAACM,UAAU,CAAC,eAAe,CAAC,CAAE,KAAAC,WAAA,CACpC,GAAM,CAAAC,GAAG,CAAGC,QAAQ,CAACT,IAAI,CAACU,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,EAAE,CAAC,CAC5C,GAAM,CAAAC,QAAQ,CAAGC,MAAM,CAACC,IAAI,CAAC,EAAAN,WAAA,CAAAH,KAAK,CAACU,IAAI,eAAVP,WAAA,CAAa,CAAC,CAAC,GAAI,CAAC,CAAC,CAAC,CAEnD,GAAI,CAACH,KAAK,CAACW,YAAY,CAAE,CACvBX,KAAK,CAACW,YAAY,CAAG,CAAC,CACxB,CAEA,GAAM,CAAAC,GAAG,CAAGL,QAAQ,CAACH,GAAG,CAAC,CAEzB,GAAIQ,GAAG,CAAE,CACPZ,KAAK,CAACW,YAAY,CAACC,GAAG,CAAC,CAAGd,IAC5B,CACF,CAAC,IAAM,CACLE,KAAK,CAACJ,IAAI,CAAC,CAAGE,IAChB,CAEA,IAAI,CAACd,KAAK,CAAC6B,GAAG,CAAC,gBAAgB,CAAAC,QAAA,IAC1Bd,KAAK,CACT,CAAC,CAEF,GAAI,CAAC,CAAC,cAAc,CAAC,CAACe,QAAQ,CAACnB,IAAI,CAAC,CAAE,CACpCpB,aAAa,CAAC,IAAI,CACpB,CACF,CAAC,CACDwC,MAAM,CAAE,QAAR,CAAAA,MAAMA,CAAA,CAAc,KAAAC,KAAA,MAClB,GAAM,CAAAC,QAAgB,CAAG,IAAI,CAAClC,KAAK,CAACiB,GAAG,CAAC,eAAe,CAAC,CACxD,GAAI,CAAAkB,SAAc,CAAG,IAAI,CAACnC,KAAK,CAACiB,GAAG,CAAC,gBAAgB,CAAC,CAErD,GAAI,MAAO,CAAAkB,SAAS,GAAK,QAAQ,CAAE,CACjC,GAAI,CACFA,SAAS,CAAGC,IAAI,CAACC,KAAK,CAACF,SAAS,CAClC,CAAE,MAAOG,GAAG,CAAE,CACZ;AACAC,OAAO,CAACC,KAAK,CAAC,gCAAgC,CAAEF,GAAG,CAAC,CACpDH,SAAS,CAAG,CAAC,CACf,CACF,CAEAA,SAAS,CAAC7C,kBAAkB,CAAGA,kBAAkB,CACjD6C,SAAS,CAACxC,cAAc,CAAGA,cAAc,CACzCwC,SAAS,CAAC1C,cAAc,CAAGA,cAAc,CACzC0C,SAAS,CAACM,UAAU,CAAGpD,OAAO,CAACqD,OAAO,GAAK,QAAQ,EAAI,CAAChD,cAAc,CAACgD,OAAO,CAE9EP,SAAS,CAACQ,QAAQ,CAAG,SAACjB,IAAyB,CAAK,CAClDO,KAAI,CAACjC,KAAK,CAAC6B,GAAG,CAAC,gBAAgB,CAAAC,QAAA,IAC1BG,KAAI,CAACjC,KAAK,CAACiB,GAAG,CAAC,gBAAgB,CAAC,CAChCS,IAAI,CACR,CACH,CAAC,CAED,GAAM,CAAAkB,SAAS,CAAG5D,YAAY,CAAC,CAAC,CAChC,GAAM,CAAA6D,QAAQ,CAAGD,SAAS,CAACV,QAAQ,CAAC,CAEpC,GAAIW,QAAQ,CAAE,CACZ,GAAIX,QAAQ,GAAK,MAAM,CAAE,CACvB,IAAI,CAACY,iBAAiB,CAAC,CAAC,CAExB/D,QAAQ,CAACiD,MAAM,cACb7C,IAAA,CAACF,kBAAkB,EAAC8D,YAAY,CAAE,GAAI,CAACC,WAAW,CAAE,CAAC,CAAG,EAAE,CAAG,IAAK,CAAAC,QAAA,cAChE9D,IAAA,CAAC0D,QAAQ,CAAAf,QAAA,IAAKK,SAAS,EAAEe,QAAQ,CAAE,IAAI,CAAClD,KAAM,EAAE,CAAC,CAC/B,CAAC,CACrB,IAAI,CAACmD,EACP,CAAC,CAED,GAAM,CAAAF,QAAQ,CAAG,IAAI,CAACjD,KAAK,CAACoD,UAAU,CAAC,CAAC,CAExC,GAAIH,QAAQ,CAACI,MAAM,GAAK,CAAC,CAAE,CACzB,MAAO,KACT,CAEA,GAAM,CAAAC,aAAa,CAAG,IAAI,CAACtD,KAAK,CAACiB,GAAG,CAAC,YAAY,CAAC,EAAI,CAAC,CAAC,CACxD,GAAM,CAAAsC,YAAY,CAAGD,aAAa,CAACd,KAAK,EAAIL,SAAS,CAACK,KAAK,CAC3D,GAAM,CAAAgB,cAAc,CAAGF,aAAa,CAACG,SAAS,EAAItB,SAAS,CAACsB,SAAS,CAErE,GAAM,CAAAC,cAAc,CAAG,QAAjB,CAAAA,cAAcA,CAAA,CAAS,CAC3B,GAAM,CAAAC,WAAW,CAAG1B,KAAI,CAACkB,EAAE,CAACS,gBAAgB,CAAC,eAAe,CAAC,CAC7D,GAAM,CAAAC,UAAU,CAAGC,KAAK,CAACC,IAAI,CAACJ,WAAW,CAAC,CAACK,IAAI,CAC7C,SAACb,EAAW,QAAM,CAAAA,EAAE,CAAiBtC,OAAO,CAACoD,QAAQ,GAAK,MAAM,CAClE,CAAC,CAED,GAAIJ,UAAU,EAAIF,WAAW,CAACN,MAAM,GAAK,CAAC,CAAE,CAC1C,MAAO,MACT,CAEAJ,QAAQ,CAACiB,IAAI,CAAC,SAACC,UAAe,CAAK,CACjClC,KAAI,CAACmC,aAAa,CAACD,UAAU,CAAE,mBAAmB,CACpD,CAAC,CAAC,CAEFlB,QAAQ,CAACiB,IAAI,CAAC,SAACC,UAAe,CAAEE,CAAS,CAAK,CAC5C,GAAM,CAAAC,SAAS,CAAGX,WAAW,CAACU,CAAC,CAAC,CAEhC,GAAI,CAACC,SAAS,CAAE,CACd,MACF,CAEA,GAAM,CAAAC,SAAS,CAAGtC,KAAI,CAACuC,UAAU,CAACL,UAAU,CAAC,CAE7C,GAAII,SAAS,CAAE,CACbD,SAAS,CAACG,SAAS,CAAG,EAAE,CACxBF,SAAS,CAACvC,MAAM,CAAC,CAAC,CAClBsC,SAAS,CAACI,WAAW,CAACH,SAAS,CAACpB,EAAE,CAAC,CAEnClB,KAAI,CAAC0C,QAAQ,CAACR,UAAU,CAAE,mBAAmB,CAAE,UAAM,CACnD,GAAM,CAAAS,eAAe,CAAGT,UAAU,CAAClD,GAAG,CAAC,YAAY,CAAC,EAAI,CAAC,CAAC,CAC1D,GAAM,CAAA4D,UAAU,CAAGV,UAAU,CAAClD,GAAG,CAAC,gBAAgB,CAAC,EAAI,CAAC,CAAC,CACzD,GAAM,CAAA6D,QAAQ,CAAGvB,YAAY,EAAIqB,eAAe,CAACpC,KAAK,EAAIqC,UAAU,CAACrC,KAAK,CAC1E,GAAM,CAAAuC,UAAU,CACdvB,cAAc,EAAIoB,eAAe,CAACnB,SAAS,EAAIoB,UAAU,CAACpB,SAAS,CAErE,GAAIqB,QAAQ,EAAIC,UAAU,CAAE,CAC1BZ,UAAU,CAACtC,GAAG,CACZ,YAAY,CAAAC,QAAA,IAEP8C,eAAe,EAClBI,OAAO,CAAE,KAAK,CACdxC,KAAK,CAAEsC,QAAQ,CACfrB,SAAS,CAAEsB,UAAU,CACrBE,mBAAmB,CAAE,CAAC,EAAE1B,YAAY,EAAIC,cAAc,CAAC,GAEzD,CAAE0B,MAAM,CAAE,KAAM,CAClB,CACF,CACF,CAAC,CACH,CACF,CAAC,CAAC,CAEF,MAAO,KACT,CAAC,CAED,GAAIxB,cAAc,CAAC,CAAC,CAAE,CACpB,MAAO,KACT,CAEA,IAAI,CAACyB,cAAc,CAAGC,UAAU,CAAC,UAAM,CACrC,GAAI1B,cAAc,CAAC,CAAC,CAAE,CACpB,MACF,CAEA;AACAnB,OAAO,CAAC8C,IAAI,CAAC,2CAA2C,CAC1D,CAAC,CAAE,GAAG,CACR,CAAC,IAAM,CACLtG,QAAQ,CAACiD,MAAM,cACb7C,IAAA,CAACF,kBAAkB,EAAC8D,YAAY,CAAE,GAAI,CAACC,WAAW,CAAE,CAAC,CAAG,EAAE,CAAG,IAAK,CAAAC,QAAA,cAChE9D,IAAA,CAAC0D,QAAQ,CAAAf,QAAA,IAAKK,SAAS,EAAEe,QAAQ,CAAE,IAAI,CAAClD,KAAM,EAAE,CAAC,CAC/B,CAAC,CACrB,IAAI,CAACmD,EACP,CACF,CACF,CAAC,IAAM,CACL,IAAI,CAACA,EAAE,CAACsB,SAAS,gCAAkCvC,QAAQ,SAC7D,CAEA3C,kBAAkB,CAAC,IAAI,CAACS,KAAK,CAACiB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAG,IAAI,CAACjB,KAAK,CAErD,MAAO,KACT,CAAC,CACD8C,iBAAiB,CAAE,QAAnB,CAAAA,iBAAiBA,CAAA,CAAc,CAC7B,GAAI,IAAI,CAACqC,cAAc,CAAE,CACvBG,YAAY,CAAC,IAAI,CAACH,cAAc,CAAC,CACjC,IAAI,CAACA,cAAc,CAAG,IACxB,CACF,CAAC,CACDX,UAAU,SAAV,CAAAA,UAAUA,CAACxE,KAAU,CAAE,KAAAuF,oBAAA,CACrB,GAAM,CAAAC,aAAa,EAAAD,oBAAA,CAAG,IAAI,CAACE,EAAE,CAACxE,GAAG,CAAC,eAAe,CAAC,CAACyE,OAAO,CAAC1F,KAAK,CAACiB,GAAG,CAAC,MAAM,CAAC,CAAC,eAAvDsE,oBAAA,CAAyDhF,IAAI,CAEnF,GAAI,CAACiF,aAAa,CAAE,CAClB;AACAjD,OAAO,CAAC8C,IAAI,CAAC,mCAAmC,CAAErF,KAAK,CAACiB,GAAG,CAAC,MAAM,CAAC,CAAC,CAEpE,MAAO,KACT,CAEA,GAAM,CAAAV,IAAI,CAAG,GAAI,CAAAiF,aAAa,CAAC,CAC7BxF,KAAK,CAALA,KAAK,CACL2F,MAAM,CAAE,IAAI,CAACA,MAAM,CACnBC,cAAc,CAAE,IAAI,CAACA,cACvB,CAAC,CAAC,CAEF,MAAO,CAAArF,IACT,CAAC,CACDsF,MAAM,CAAE,QAAR,CAAAA,MAAMA,CAAA,CAAc,CAClB,IAAI,CAACzB,aAAa,CAAC,CAAC,CAEpB,IAAI,CAACtB,iBAAiB,CAAC,CAAC,CAExB;AACA/D,QAAQ,CAAC+G,sBAAsB,CAAC,IAAI,CAAC3C,EAAE,CAAC,CAExC,MAAO,KACT,CACF,CACF,CAAC,CACH,CACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"grapejs-plugin.js","names":["React","ReactDOM","getRenderers","QueryCacheProvider","jsx","_jsx","createGrapesjsShadcnGenericPlugin","modeRef","performInteraction","renderedComponents","setHasChanged","isTemplateView","isStreamingRef","navigateToPage","downloadTable","grapesjsShadcnGenericPlugin","editor","DomComponents","addType","model","defaults","tagName","droppable","componentName","componentProps","traits","view","events","handleSlotInput","e","target","slot","dataset","text","innerText","props","get","startsWith","_props$data","idx","parseInt","split","dataKeys","Object","keys","data","headerMapper","key","set","_extends","includes","render","_this","compName","compProps","JSON","parse","err","console","error","isEditable","current","onChange","renderers","Renderer","_cleanupTabsSetup","maxCacheSize","maxCacheAge","children","gjsModel","el","components","length","tabAttributes","hasTabsError","hasTabsMissing","isMissing","injectChildren","tabsContent","querySelectorAll","isFallback","Array","from","some","fallback","each","childModel","stopListening","i","container","childView","createView","innerHTML","appendChild","listenTo","childAttributes","childProps","hasError","hasMissing","loading","inheritedFromParent","silent","_tabsTimeoutId","setTimeout","warn","clearTimeout","_this$em$get$getType","ComponentView","em","getType","config","componentTypes","remove","unmountComponentAtNode"],"sources":["../../src/plugins/grapejs-plugin.tsx"],"sourcesContent":["/* eslint-disable import/no-named-as-default-member */\n/* eslint-disable func-names */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Editor, Component } from 'grapesjs';\nimport { getRenderers } from './helpers/render-components';\nimport { QueryCacheProvider } from './helpers/query-cache-context';\n\nexport function createGrapesjsShadcnGenericPlugin(\n modeRef: React.MutableRefObject<'editor' | 'preview'>,\n performInteraction: (payload: Record<string, any>) => void,\n renderedComponents: Record<string, Component> = {},\n setHasChanged: (hasChanged: boolean) => void,\n isTemplateView = false,\n isStreamingRef: React.MutableRefObject<boolean>,\n navigateToPage?: (pageId: string) => void,\n downloadTable?: (data: { tableId: string; title: string; limit: number; headerMapper?: Record<string, string> }) => Promise<void>,\n) {\n return function grapesjsShadcnGenericPlugin(editor: Editor): void {\n editor.DomComponents.addType('shadcn-generic', {\n model: {\n defaults: {\n tagName: 'div',\n droppable: false,\n componentName: 'Card',\n componentProps: {},\n traits: [],\n },\n },\n view: {\n events: {\n 'input [data-slot]': 'handleSlotInput',\n } as any,\n handleSlotInput(e: Event) {\n const target = e.target as HTMLElement;\n const slot = target.dataset.slot;\n const text = target.innerText;\n\n const props = this.model.get('componentProps') || {};\n\n if (!slot) {\n return;\n }\n\n if (slot.startsWith('table-header-')) {\n const idx = parseInt(slot.split('-')[2], 10);\n const dataKeys = Object.keys(props.data?.[0] || {});\n\n if (!props.headerMapper) {\n props.headerMapper = {};\n }\n\n const key = dataKeys[idx];\n\n if (key) {\n props.headerMapper[key] = text;\n }\n } else {\n props[slot] = text;\n }\n\n this.model.set('componentProps', {\n ...props,\n });\n\n if (!['search-input'].includes(slot)) {\n setHasChanged(true);\n }\n },\n render: function () {\n const compName: string = this.model.get('componentName');\n let compProps: any = this.model.get('componentProps');\n\n if (typeof compProps === 'string') {\n try {\n compProps = JSON.parse(compProps);\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('Invalid JSON in componentProps', err);\n compProps = {};\n }\n }\n\n compProps.performInteraction = performInteraction;\n compProps.navigateToPage = navigateToPage;\n compProps.downloadTable = downloadTable;\n compProps.isTemplateView = isTemplateView;\n compProps.isEditable = modeRef.current === 'editor' && !isStreamingRef.current;\n\n compProps.onChange = (data: Record<string, any>) => {\n this.model.set('componentProps', {\n ...this.model.get('componentProps'),\n ...data,\n });\n };\n\n const renderers = getRenderers();\n const Renderer = renderers[compName];\n\n if (Renderer) {\n if (compName === 'Tabs') {\n this._cleanupTabsSetup();\n\n ReactDOM.render(\n <QueryCacheProvider maxCacheSize={100} maxCacheAge={5 * 60 * 1000}>\n <Renderer {...compProps} gjsModel={this.model} />\n </QueryCacheProvider>,\n this.el,\n );\n\n const children = this.model.components();\n\n if (children.length === 0) {\n return this;\n }\n\n const tabAttributes = this.model.get('attributes') || {};\n const hasTabsError = tabAttributes.error || compProps.error;\n const hasTabsMissing = tabAttributes.isMissing || compProps.isMissing;\n\n const injectChildren = () => {\n const tabsContent = this.el.querySelectorAll('.tabs-content');\n const isFallback = Array.from(tabsContent).some(\n (el: Element) => (el as HTMLElement).dataset.fallback === 'true',\n );\n\n if (isFallback || tabsContent.length === 0) {\n return false;\n }\n\n children.each((childModel: any) => {\n this.stopListening(childModel, 'change:attributes');\n });\n\n children.each((childModel: any, i: number) => {\n const container = tabsContent[i];\n\n if (!container) {\n return;\n }\n\n const childView = this.createView(childModel);\n\n if (childView) {\n container.innerHTML = '';\n childView.render();\n container.appendChild(childView.el);\n\n this.listenTo(childModel, 'change:attributes', () => {\n const childAttributes = childModel.get('attributes') || {};\n const childProps = childModel.get('componentProps') || {};\n const hasError = hasTabsError || childAttributes.error || childProps.error;\n const hasMissing =\n hasTabsMissing || childAttributes.isMissing || childProps.isMissing;\n\n if (hasError || hasMissing) {\n childModel.set(\n 'attributes',\n {\n ...childAttributes,\n loading: false,\n error: hasError,\n isMissing: hasMissing,\n inheritedFromParent: !!(hasTabsError || hasTabsMissing),\n },\n { silent: false },\n );\n }\n });\n }\n });\n\n return true;\n };\n\n if (injectChildren()) {\n return this;\n }\n\n this._tabsTimeoutId = setTimeout(() => {\n if (injectChildren()) {\n return;\n }\n\n // eslint-disable-next-line no-console\n console.warn('Could not inject tabs content after delay');\n }, 100);\n } else {\n ReactDOM.render(\n <QueryCacheProvider maxCacheSize={100} maxCacheAge={5 * 60 * 1000}>\n <Renderer {...compProps} gjsModel={this.model} />\n </QueryCacheProvider>,\n this.el,\n );\n }\n } else {\n this.el.innerHTML = `<div>Unsupported component: ${compName}</div>`;\n }\n\n renderedComponents[this.model.get('id')] = this.model;\n\n return this;\n },\n _cleanupTabsSetup: function () {\n if (this._tabsTimeoutId) {\n clearTimeout(this._tabsTimeoutId);\n this._tabsTimeoutId = null;\n }\n },\n createView(model: any) {\n const ComponentView = this.em.get('DomComponents').getType(model.get('type'))?.view;\n\n if (!ComponentView) {\n // eslint-disable-next-line no-console\n console.warn('No view found for component type:', model.get('type'));\n\n return null;\n }\n\n const view = new ComponentView({\n model,\n config: this.config,\n componentTypes: this.componentTypes,\n });\n\n return view;\n },\n remove: function () {\n this.stopListening();\n\n this._cleanupTabsSetup();\n\n // eslint-disable-next-line import/no-named-as-default-member\n ReactDOM.unmountComponentAtNode(this.el);\n\n return this;\n },\n },\n });\n };\n}\n"],"mappings":"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","ignoreList":[]}
|