@lego-box/ui-kit 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -617,11 +617,15 @@ interface TopBarNavItem {
617
617
  id: string;
618
618
  label: string;
619
619
  href: string;
620
+ /** Optional icon - use responsive sizing (e.g. className="w-4 h-4 sm:w-5 sm:h-5") for different viewports */
621
+ icon?: React.ReactNode;
620
622
  }
621
623
  interface TopBarMoreItem {
622
624
  id: string;
623
625
  label: string;
624
626
  href: string;
627
+ /** Optional icon - rendered in dropdown */
628
+ icon?: React.ReactNode;
625
629
  }
626
630
  interface TopBarProps extends React.HTMLAttributes<HTMLDivElement> {
627
631
  /**
package/dist/index.d.ts CHANGED
@@ -617,11 +617,15 @@ interface TopBarNavItem {
617
617
  id: string;
618
618
  label: string;
619
619
  href: string;
620
+ /** Optional icon - use responsive sizing (e.g. className="w-4 h-4 sm:w-5 sm:h-5") for different viewports */
621
+ icon?: React.ReactNode;
620
622
  }
621
623
  interface TopBarMoreItem {
622
624
  id: string;
623
625
  label: string;
624
626
  href: string;
627
+ /** Optional icon - rendered in dropdown */
628
+ icon?: React.ReactNode;
625
629
  }
626
630
  interface TopBarProps extends React.HTMLAttributes<HTMLDivElement> {
627
631
  /**
package/dist/index.js CHANGED
@@ -3811,6 +3811,16 @@ var TopBar = React32.forwardRef(
3811
3811
  setActiveItemId(null);
3812
3812
  onNavigate?.(logo?.href || "/");
3813
3813
  };
3814
+ const NavIcon = ({ children, size = "default" }) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3815
+ "span",
3816
+ {
3817
+ className: cn(
3818
+ "flex-shrink-0 flex items-center justify-center [&>svg]:w-full [&>svg]:h-full",
3819
+ size === "sm" ? "w-4 h-4" : "w-4 h-4 sm:w-5 sm:h-5 lg:w-5 lg:h-5"
3820
+ ),
3821
+ children
3822
+ }
3823
+ );
3814
3824
  return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
3815
3825
  "header",
3816
3826
  {
@@ -3867,7 +3877,7 @@ var TopBar = React32.forwardRef(
3867
3877
  /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "absolute left-0 mt-2 w-56 bg-background rounded-xl shadow-lg border border-border py-2 z-20", children: [
3868
3878
  navItems.map((item) => {
3869
3879
  const isActive = activeItemId === item.id;
3870
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3880
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
3871
3881
  "button",
3872
3882
  {
3873
3883
  onClick: () => {
@@ -3875,23 +3885,29 @@ var TopBar = React32.forwardRef(
3875
3885
  setShowNavMenu(false);
3876
3886
  },
3877
3887
  className: cn(
3878
- "w-full px-4 py-2.5 text-left text-sm font-medium transition-colors",
3888
+ "w-full px-4 py-2.5 text-left text-sm font-medium transition-colors flex items-center gap-3",
3879
3889
  isActive ? "bg-muted text-foreground" : "text-muted-foreground hover:bg-muted hover:text-foreground"
3880
3890
  ),
3881
- children: item.label
3891
+ children: [
3892
+ item.icon && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(NavIcon, { size: "sm", children: item.icon }),
3893
+ item.label
3894
+ ]
3882
3895
  },
3883
3896
  item.id
3884
3897
  );
3885
3898
  }),
3886
- moreItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "border-t border-border mt-1 pt-1", children: moreItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3899
+ moreItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "border-t border-border mt-1 pt-1", children: moreItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
3887
3900
  "button",
3888
3901
  {
3889
3902
  onClick: () => {
3890
3903
  handleClick(item.href);
3891
3904
  setShowNavMenu(false);
3892
3905
  },
3893
- className: "w-full px-4 py-2 text-left text-sm text-muted-foreground hover:bg-muted hover:text-foreground transition-colors",
3894
- children: item.label
3906
+ className: "w-full px-4 py-2 text-left text-sm text-muted-foreground hover:bg-muted hover:text-foreground transition-colors flex items-center gap-3",
3907
+ children: [
3908
+ item.icon && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(NavIcon, { size: "sm", children: item.icon }),
3909
+ item.label
3910
+ ]
3895
3911
  },
3896
3912
  item.id
3897
3913
  )) }) })
@@ -3901,15 +3917,18 @@ var TopBar = React32.forwardRef(
3901
3917
  /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "hidden lg:flex flex-1 justify-center px-4", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "flex items-center bg-muted rounded-xl p-1 gap-1", children: [
3902
3918
  navItems.map((item) => {
3903
3919
  const isActive = activeItemId === item.id;
3904
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3920
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
3905
3921
  "button",
3906
3922
  {
3907
3923
  onClick: () => handleClick(item.href, item.id),
3908
3924
  className: cn(
3909
- "h-9 px-4 rounded-lg text-sm font-medium transition-all duration-200 whitespace-nowrap",
3925
+ "h-9 px-4 rounded-lg text-sm font-medium transition-all duration-200 whitespace-nowrap flex items-center gap-2",
3910
3926
  isActive ? "bg-background text-foreground shadow-sm" : "text-muted-foreground hover:text-foreground hover:bg-background/50"
3911
3927
  ),
3912
- children: item.label
3928
+ children: [
3929
+ item.icon && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(NavIcon, { children: item.icon }),
3930
+ item.label
3931
+ ]
3913
3932
  },
3914
3933
  item.id
3915
3934
  );
@@ -3947,15 +3966,18 @@ var TopBar = React32.forwardRef(
3947
3966
  onClick: () => setShowMoreDropdown(false)
3948
3967
  }
3949
3968
  ),
3950
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "absolute right-0 mt-2 w-48 bg-background rounded-xl shadow-lg border border-border py-2 z-20", children: moreItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3969
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "absolute right-0 mt-2 w-48 bg-background rounded-xl shadow-lg border border-border py-2 z-20", children: moreItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
3951
3970
  "button",
3952
3971
  {
3953
3972
  onClick: () => {
3954
3973
  handleClick(item.href);
3955
3974
  setShowMoreDropdown(false);
3956
3975
  },
3957
- className: "w-full px-4 py-2 text-left text-sm text-muted-foreground hover:bg-muted hover:text-foreground transition-colors",
3958
- children: item.label
3976
+ className: "w-full px-4 py-2 text-left text-sm text-muted-foreground hover:bg-muted hover:text-foreground transition-colors flex items-center gap-3",
3977
+ children: [
3978
+ item.icon && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(NavIcon, { size: "sm", children: item.icon }),
3979
+ item.label
3980
+ ]
3959
3981
  },
3960
3982
  item.id
3961
3983
  )) })
@@ -4001,7 +4023,7 @@ var TopBar = React32.forwardRef(
4001
4023
  /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "absolute right-0 mt-2 w-56 bg-background rounded-xl shadow-lg border border-border py-2 z-20", children: [
4002
4024
  navItems.map((item) => {
4003
4025
  const isActive = activeItemId === item.id;
4004
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4026
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
4005
4027
  "button",
4006
4028
  {
4007
4029
  onClick: () => {
@@ -4009,23 +4031,29 @@ var TopBar = React32.forwardRef(
4009
4031
  setShowNavMenu(false);
4010
4032
  },
4011
4033
  className: cn(
4012
- "w-full px-4 py-2.5 text-left text-sm font-medium transition-colors",
4034
+ "w-full px-4 py-2.5 text-left text-sm font-medium transition-colors flex items-center gap-3",
4013
4035
  isActive ? "bg-muted text-foreground" : "text-muted-foreground hover:bg-muted hover:text-foreground"
4014
4036
  ),
4015
- children: item.label
4037
+ children: [
4038
+ item.icon && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(NavIcon, { size: "sm", children: item.icon }),
4039
+ item.label
4040
+ ]
4016
4041
  },
4017
4042
  item.id
4018
4043
  );
4019
4044
  }),
4020
- moreItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "border-t border-border mt-1 pt-1", children: moreItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4045
+ moreItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_jsx_runtime37.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "border-t border-border mt-1 pt-1", children: moreItems.map((item) => /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
4021
4046
  "button",
4022
4047
  {
4023
4048
  onClick: () => {
4024
4049
  handleClick(item.href);
4025
4050
  setShowNavMenu(false);
4026
4051
  },
4027
- className: "w-full px-4 py-2 text-left text-sm text-muted-foreground hover:bg-muted hover:text-foreground transition-colors",
4028
- children: item.label
4052
+ className: "w-full px-4 py-2 text-left text-sm text-muted-foreground hover:bg-muted hover:text-foreground transition-colors flex items-center gap-3",
4053
+ children: [
4054
+ item.icon && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(NavIcon, { size: "sm", children: item.icon }),
4055
+ item.label
4056
+ ]
4029
4057
  },
4030
4058
  item.id
4031
4059
  )) }) })
@@ -4817,7 +4845,7 @@ function styleInject(css, { insertAt } = {}) {
4817
4845
  }
4818
4846
 
4819
4847
  // src/index.css
4820
- styleInject('@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&display=swap";\n*,\n::before,\n::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n*,\n::before,\n::after {\n box-sizing: border-box;\n border-width: 0;\n border-style: solid;\n border-color: #e5e7eb;\n}\n::before,\n::after {\n --tw-content: "";\n}\nhtml,\n: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:\n Inter,\n system-ui,\n sans-serif;\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n}\nbody {\n margin: 0;\n line-height: inherit;\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,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\na {\n color: inherit;\n text-decoration: inherit;\n}\nb,\nstrong {\n font-weight: bolder;\n}\ncode,\nkbd,\nsamp,\npre {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n "Liberation Mono",\n "Courier New",\n monospace;\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-size: 1em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\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}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\ninput:where([type=button]),\ninput:where([type=reset]),\ninput:where([type=submit]) {\n -webkit-appearance: button;\n background-color: transparent;\n background-image: none;\n}\n:-moz-focusring {\n outline: auto;\n}\n:-moz-ui-invalid {\n box-shadow: none;\n}\nprogress {\n vertical-align: baseline;\n}\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n[type=search] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\nsummary {\n display: list-item;\n}\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\nfieldset {\n margin: 0;\n padding: 0;\n}\nlegend {\n padding: 0;\n}\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\ndialog {\n padding: 0;\n}\ntextarea {\n resize: vertical;\n}\ninput::-moz-placeholder,\ntextarea::-moz-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\nbutton,\n[role=button] {\n cursor: pointer;\n}\n:disabled {\n cursor: default;\n}\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n vertical-align: middle;\n}\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n[hidden]:where(:not([hidden=until-found])) {\n display: none;\n}\n:root {\n --background: 0 0% 100%;\n --foreground: 222.2 84% 4.9%;\n --card: 0 0% 100%;\n --card-foreground: 222.2 84% 4.9%;\n --primary: 217 91% 60%;\n --primary-foreground: 0 0% 100%;\n --primary-50: 217 91% 97%;\n --primary-100: 217 91% 93%;\n --primary-200: 217 91% 85%;\n --primary-300: 217 91% 75%;\n --primary-400: 217 91% 68%;\n --primary-500: 217 91% 60%;\n --primary-600: 217 75% 50%;\n --secondary: 258 90% 66%;\n --secondary-foreground: 0 0% 100%;\n --secondary-50: 258 90% 97%;\n --secondary-100: 258 90% 93%;\n --secondary-200: 258 90% 85%;\n --destructive: 0 84% 60%;\n --destructive-foreground: 0 0% 100%;\n --success: 158 64% 52%;\n --success-foreground: 0 0% 100%;\n --warning: 38 92% 50%;\n --warning-foreground: 0 0% 100%;\n --muted: 210 40% 96.1%;\n --muted-foreground: 215.4 16.3% 46.9%;\n --accent: 210 40% 96.1%;\n --accent-foreground: 222.2 47.4% 11.2%;\n --border: 210 40% 88%;\n --input: 210 40% 88%;\n --ring: 217 91% 60%;\n --radius: 0.5rem;\n}\n.dark {\n --background: 222.2 84% 4.9%;\n --foreground: 210 40% 98%;\n --card: 222.2 84% 6.9%;\n --card-foreground: 210 40% 98%;\n --primary: 217 91% 60%;\n --primary-foreground: 0 0% 100%;\n --primary-50: 217 70% 15%;\n --primary-100: 217 70% 20%;\n --primary-200: 217 70% 30%;\n --secondary: 258 90% 66%;\n --secondary-foreground: 0 0% 100%;\n --secondary-50: 258 70% 15%;\n --secondary-100: 258 70% 20%;\n --destructive: 0 84% 60%;\n --destructive-foreground: 0 0% 100%;\n --muted: 217.2 32.6% 17.5%;\n --muted-foreground: 215 20.2% 65.1%;\n --accent: 217.2 32.6% 17.5%;\n --accent-foreground: 210 40% 98%;\n --border: 217.2 32.6% 17.5%;\n --input: 217.2 32.6% 17.5%;\n --ring: 217 91% 60%;\n --radius: 0.5rem;\n}\n* {\n border-color: hsl(var(--border));\n}\nbody {\n background-color: hsl(var(--background));\n color: hsl(var(--foreground));\n font-family:\n "Inter",\n system-ui,\n -apple-system,\n sans-serif;\n}\n.container {\n width: 100%;\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.invisible {\n visibility: hidden;\n}\n.collapse {\n visibility: collapse;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.sticky {\n position: sticky;\n}\n.-inset-4 {\n inset: -1rem;\n}\n.inset-0 {\n inset: 0px;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.bottom-full {\n bottom: 100%;\n}\n.left-0 {\n left: 0px;\n}\n.left-1\\/2 {\n left: 50%;\n}\n.left-3 {\n left: 0.75rem;\n}\n.left-full {\n left: 100%;\n}\n.right-0 {\n right: 0px;\n}\n.right-2 {\n right: 0.5rem;\n}\n.right-3 {\n right: 0.75rem;\n}\n.right-4 {\n right: 1rem;\n}\n.right-full {\n right: 100%;\n}\n.top-0 {\n top: 0px;\n}\n.top-1\\/2 {\n top: 50%;\n}\n.top-2 {\n top: 0.5rem;\n}\n.top-4 {\n top: 1rem;\n}\n.top-\\[68px\\] {\n top: 68px;\n}\n.top-full {\n top: 100%;\n}\n.z-10 {\n z-index: 10;\n}\n.z-20 {\n z-index: 20;\n}\n.z-40 {\n z-index: 40;\n}\n.z-50 {\n z-index: 50;\n}\n.mx-4 {\n margin-left: 1rem;\n margin-right: 1rem;\n}\n.mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n.mb-1 {\n margin-bottom: 0.25rem;\n}\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n.mb-3 {\n margin-bottom: 0.75rem;\n}\n.mb-4 {\n margin-bottom: 1rem;\n}\n.mb-6 {\n margin-bottom: 1.5rem;\n}\n.mb-8 {\n margin-bottom: 2rem;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.ml-2 {\n margin-left: 0.5rem;\n}\n.mr-2 {\n margin-right: 0.5rem;\n}\n.mt-0\\.5 {\n margin-top: 0.125rem;\n}\n.mt-1 {\n margin-top: 0.25rem;\n}\n.mt-12 {\n margin-top: 3rem;\n}\n.mt-2 {\n margin-top: 0.5rem;\n}\n.mt-4 {\n margin-top: 1rem;\n}\n.mt-6 {\n margin-top: 1.5rem;\n}\n.line-clamp-2 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n}\n.block {\n display: block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.inline-flex {\n display: inline-flex;\n}\n.table {\n display: table;\n}\n.grid {\n display: grid;\n}\n.contents {\n display: contents;\n}\n.hidden {\n display: none;\n}\n.h-1\\.5 {\n height: 0.375rem;\n}\n.h-10 {\n height: 2.5rem;\n}\n.h-11 {\n height: 2.75rem;\n}\n.h-12 {\n height: 3rem;\n}\n.h-16 {\n height: 4rem;\n}\n.h-2 {\n height: 0.5rem;\n}\n.h-24 {\n height: 6rem;\n}\n.h-3 {\n height: 0.75rem;\n}\n.h-3\\.5 {\n height: 0.875rem;\n}\n.h-4 {\n height: 1rem;\n}\n.h-5 {\n height: 1.25rem;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-64 {\n height: 16rem;\n}\n.h-7 {\n height: 1.75rem;\n}\n.h-8 {\n height: 2rem;\n}\n.h-9 {\n height: 2.25rem;\n}\n.h-\\[140px\\] {\n height: 140px;\n}\n.h-\\[18px\\] {\n height: 18px;\n}\n.h-\\[68px\\] {\n height: 68px;\n}\n.h-full {\n height: 100%;\n}\n.h-px {\n height: 1px;\n}\n.max-h-32 {\n max-height: 8rem;\n}\n.max-h-40 {\n max-height: 10rem;\n}\n.max-h-\\[320px\\] {\n max-height: 320px;\n}\n.max-h-\\[70vh\\] {\n max-height: 70vh;\n}\n.max-h-\\[90vh\\] {\n max-height: 90vh;\n}\n.min-h-0 {\n min-height: 0px;\n}\n.min-h-\\[100px\\] {\n min-height: 100px;\n}\n.min-h-\\[180px\\] {\n min-height: 180px;\n}\n.min-h-\\[200px\\] {\n min-height: 200px;\n}\n.min-h-screen {\n min-height: 100vh;\n}\n.w-1\\.5 {\n width: 0.375rem;\n}\n.w-10 {\n width: 2.5rem;\n}\n.w-12 {\n width: 3rem;\n}\n.w-16 {\n width: 4rem;\n}\n.w-2 {\n width: 0.5rem;\n}\n.w-24 {\n width: 6rem;\n}\n.w-3 {\n width: 0.75rem;\n}\n.w-3\\.5 {\n width: 0.875rem;\n}\n.w-32 {\n width: 8rem;\n}\n.w-4 {\n width: 1rem;\n}\n.w-48 {\n width: 12rem;\n}\n.w-5 {\n width: 1.25rem;\n}\n.w-56 {\n width: 14rem;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-64 {\n width: 16rem;\n}\n.w-7 {\n width: 1.75rem;\n}\n.w-8 {\n width: 2rem;\n}\n.w-9 {\n width: 2.25rem;\n}\n.w-\\[140px\\] {\n width: 140px;\n}\n.w-\\[18px\\] {\n width: 18px;\n}\n.w-\\[260px\\] {\n width: 260px;\n}\n.w-\\[72px\\] {\n width: 72px;\n}\n.w-auto {\n width: auto;\n}\n.w-full {\n width: 100%;\n}\n.w-px {\n width: 1px;\n}\n.min-w-0 {\n min-width: 0px;\n}\n.min-w-\\[1\\.25rem\\] {\n min-width: 1.25rem;\n}\n.min-w-\\[6\\.5rem\\] {\n min-width: 6.5rem;\n}\n.max-w-2xl {\n max-width: 42rem;\n}\n.max-w-\\[120px\\] {\n max-width: 120px;\n}\n.max-w-\\[240px\\] {\n max-width: 240px;\n}\n.max-w-md {\n max-width: 28rem;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.flex-shrink-0 {\n flex-shrink: 0;\n}\n.shrink-0 {\n flex-shrink: 0;\n}\n.-translate-x-1\\/2 {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.-translate-y-1\\/2 {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.-rotate-90 {\n --tw-rotate: -90deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-180 {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-90 {\n --tw-rotate: 90deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n animation-timing-function: cubic-bezier(0.8, 0, 1, 1);\n }\n 50% {\n transform: none;\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n }\n}\n.animate-bounce {\n animation: bounce 1s infinite;\n}\n@keyframes pulse {\n 50% {\n opacity: .5;\n }\n}\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-spin {\n animation: spin 1s linear infinite;\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.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.select-all {\n -webkit-user-select: all;\n -moz-user-select: all;\n user-select: all;\n}\n.grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-col-reverse {\n flex-direction: column-reverse;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.items-start {\n align-items: flex-start;\n}\n.items-center {\n align-items: center;\n}\n.justify-end {\n justify-content: flex-end;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.gap-0 {\n gap: 0px;\n}\n.gap-1 {\n gap: 0.25rem;\n}\n.gap-1\\.5 {\n gap: 0.375rem;\n}\n.gap-2 {\n gap: 0.5rem;\n}\n.gap-2\\.5 {\n gap: 0.625rem;\n}\n.gap-3 {\n gap: 0.75rem;\n}\n.gap-4 {\n gap: 1rem;\n}\n.gap-6 {\n gap: 1.5rem;\n}\n.space-y-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));\n}\n.space-y-1\\.5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));\n}\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n.space-y-3 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));\n}\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n.space-y-\\[2px\\] > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(2px * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(2px * var(--tw-space-y-reverse));\n}\n.divide-y > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-y-reverse: 0;\n border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));\n border-bottom-width: calc(1px * var(--tw-divide-y-reverse));\n}\n.divide-border > :not([hidden]) ~ :not([hidden]) {\n border-color: hsl(var(--border));\n}\n.divide-border\\/60 > :not([hidden]) ~ :not([hidden]) {\n border-color: hsl(var(--border) / 0.6);\n}\n.overflow-hidden {\n overflow: hidden;\n}\n.overflow-x-auto {\n overflow-x: auto;\n}\n.overflow-y-auto {\n overflow-y: auto;\n}\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.whitespace-nowrap {\n white-space: nowrap;\n}\n.whitespace-pre-wrap {\n white-space: pre-wrap;\n}\n.break-all {\n word-break: break-all;\n}\n.rounded {\n border-radius: 0.25rem;\n}\n.rounded-2xl {\n border-radius: 1rem;\n}\n.rounded-3xl {\n border-radius: 1.5rem;\n}\n.rounded-\\[10px\\] {\n border-radius: 10px;\n}\n.rounded-\\[12px\\] {\n border-radius: 12px;\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-lg {\n border-radius: var(--radius);\n}\n.rounded-md {\n border-radius: calc(var(--radius) - 2px);\n}\n.rounded-xl {\n border-radius: 0.75rem;\n}\n.border {\n border-width: 1px;\n}\n.border-0 {\n border-width: 0px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-4 {\n border-width: 4px;\n}\n.border-y {\n border-top-width: 1px;\n border-bottom-width: 1px;\n}\n.border-b {\n border-bottom-width: 1px;\n}\n.border-l {\n border-left-width: 1px;\n}\n.border-r {\n border-right-width: 1px;\n}\n.border-t {\n border-top-width: 1px;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-\\[\\#E7E5E4\\] {\n --tw-border-opacity: 1;\n border-color: rgb(231 229 228 / var(--tw-border-opacity, 1));\n}\n.border-amber-500\\/30 {\n border-color: rgb(245 158 11 / 0.3);\n}\n.border-blue-200 {\n --tw-border-opacity: 1;\n border-color: rgb(191 219 254 / var(--tw-border-opacity, 1));\n}\n.border-blue-600\\/30 {\n border-color: rgb(37 99 235 / 0.3);\n}\n.border-border {\n border-color: hsl(var(--border));\n}\n.border-border\\/60 {\n border-color: hsl(var(--border) / 0.6);\n}\n.border-destructive {\n border-color: hsl(var(--destructive));\n}\n.border-destructive\\/20 {\n border-color: hsl(var(--destructive) / 0.2);\n}\n.border-destructive\\/30 {\n border-color: hsl(var(--destructive) / 0.3);\n}\n.border-green-200 {\n --tw-border-opacity: 1;\n border-color: rgb(187 247 208 / var(--tw-border-opacity, 1));\n}\n.border-input {\n border-color: hsl(var(--input));\n}\n.border-muted {\n border-color: hsl(var(--muted));\n}\n.border-primary\\/20 {\n border-color: hsl(var(--primary) / 0.2);\n}\n.border-primary\\/40 {\n border-color: hsl(var(--primary) / 0.4);\n}\n.border-purple-200 {\n --tw-border-opacity: 1;\n border-color: rgb(233 213 255 / var(--tw-border-opacity, 1));\n}\n.border-red-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 202 202 / var(--tw-border-opacity, 1));\n}\n.border-secondary\\/20 {\n border-color: hsl(var(--secondary) / 0.2);\n}\n.border-slate-200 {\n --tw-border-opacity: 1;\n border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));\n}\n.border-slate-300 {\n --tw-border-opacity: 1;\n border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));\n}\n.border-transparent {\n border-color: transparent;\n}\n.border-yellow-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 240 138 / var(--tw-border-opacity, 1));\n}\n.border-r-blue-600 {\n --tw-border-opacity: 1;\n border-right-color: rgb(37 99 235 / var(--tw-border-opacity, 1));\n}\n.border-t-blue-600 {\n --tw-border-opacity: 1;\n border-top-color: rgb(37 99 235 / var(--tw-border-opacity, 1));\n}\n.bg-\\[\\#2563EB\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));\n}\n.bg-\\[\\#F1F1F1\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(241 241 241 / var(--tw-bg-opacity, 1));\n}\n.bg-amber-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));\n}\n.bg-amber-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));\n}\n.bg-amber-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));\n}\n.bg-background {\n background-color: hsl(var(--background));\n}\n.bg-black\\/50 {\n background-color: rgb(0 0 0 / 0.5);\n}\n.bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));\n}\n.bg-blue-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));\n}\n.bg-blue-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));\n}\n.bg-border {\n background-color: hsl(var(--border));\n}\n.bg-destructive {\n background-color: hsl(var(--destructive));\n}\n.bg-destructive\\/10 {\n background-color: hsl(var(--destructive) / 0.1);\n}\n.bg-emerald-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));\n}\n.bg-emerald-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));\n}\n.bg-emerald-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-900 {\n --tw-bg-opacity: 1;\n background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));\n}\n.bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));\n}\n.bg-muted {\n background-color: hsl(var(--muted));\n}\n.bg-muted-foreground\\/80 {\n background-color: hsl(var(--muted-foreground) / 0.8);\n}\n.bg-muted\\/20 {\n background-color: hsl(var(--muted) / 0.2);\n}\n.bg-muted\\/30 {\n background-color: hsl(var(--muted) / 0.3);\n}\n.bg-muted\\/50 {\n background-color: hsl(var(--muted) / 0.5);\n}\n.bg-muted\\/80 {\n background-color: hsl(var(--muted) / 0.8);\n}\n.bg-primary {\n background-color: hsl(var(--primary));\n}\n.bg-primary\\/10 {\n background-color: hsl(var(--primary) / 0.1);\n}\n.bg-primary\\/5 {\n background-color: hsl(var(--primary) / 0.05);\n}\n.bg-purple-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));\n}\n.bg-red-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));\n}\n.bg-red-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));\n}\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));\n}\n.bg-secondary {\n background-color: hsl(var(--secondary));\n}\n.bg-secondary\\/10 {\n background-color: hsl(var(--secondary) / 0.1);\n}\n.bg-slate-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));\n}\n.bg-transparent {\n background-color: transparent;\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\n}\n.bg-white\\/20 {\n background-color: rgb(255 255 255 / 0.2);\n}\n.bg-yellow-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));\n}\n.bg-gradient-to-br {\n background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));\n}\n.bg-gradient-to-r {\n background-image: linear-gradient(to right, var(--tw-gradient-stops));\n}\n.from-\\[\\#2563EB\\] {\n --tw-gradient-from: #2563EB var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-amber-500 {\n --tw-gradient-from: #f59e0b var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-amber-500\\/20 {\n --tw-gradient-from: rgb(245 158 11 / 0.2) var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-blue-600 {\n --tw-gradient-from: #2563eb var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-blue-600\\/20 {\n --tw-gradient-from: rgb(37 99 235 / 0.2) var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.via-blue-700 {\n --tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n #1d4ed8 var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.via-blue-700\\/20 {\n --tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n rgb(29 78 216 / 0.2) var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.via-orange-500 {\n --tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n #f97316 var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.via-orange-500\\/20 {\n --tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n rgb(249 115 22 / 0.2) var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.to-\\[\\#7C3AED\\] {\n --tw-gradient-to: #7C3AED var(--tw-gradient-to-position);\n}\n.to-blue-700 {\n --tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position);\n}\n.to-indigo-800 {\n --tw-gradient-to: #3730a3 var(--tw-gradient-to-position);\n}\n.to-indigo-800\\/20 {\n --tw-gradient-to: rgb(55 48 163 / 0.2) var(--tw-gradient-to-position);\n}\n.to-red-600 {\n --tw-gradient-to: #dc2626 var(--tw-gradient-to-position);\n}\n.to-red-600\\/20 {\n --tw-gradient-to: rgb(220 38 38 / 0.2) var(--tw-gradient-to-position);\n}\n.bg-clip-text {\n -webkit-background-clip: text;\n background-clip: text;\n}\n.object-cover {\n -o-object-fit: cover;\n object-fit: cover;\n}\n.p-0\\.5 {\n padding: 0.125rem;\n}\n.p-1 {\n padding: 0.25rem;\n}\n.p-1\\.5 {\n padding: 0.375rem;\n}\n.p-3 {\n padding: 0.75rem;\n}\n.p-4 {\n padding: 1rem;\n}\n.p-5 {\n padding: 1.25rem;\n}\n.p-6 {\n padding: 1.5rem;\n}\n.p-8 {\n padding: 2rem;\n}\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n.px-1\\.5 {\n padding-left: 0.375rem;\n padding-right: 0.375rem;\n}\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n.py-12 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n.py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n.py-8 {\n padding-top: 2rem;\n padding-bottom: 2rem;\n}\n.pl-10 {\n padding-left: 2.5rem;\n}\n.pl-2 {\n padding-left: 0.5rem;\n}\n.pl-4 {\n padding-left: 1rem;\n}\n.pl-9 {\n padding-left: 2.25rem;\n}\n.pr-10 {\n padding-right: 2.5rem;\n}\n.pr-4 {\n padding-right: 1rem;\n}\n.pt-0 {\n padding-top: 0px;\n}\n.pt-1 {\n padding-top: 0.25rem;\n}\n.pt-2 {\n padding-top: 0.5rem;\n}\n.pt-3 {\n padding-top: 0.75rem;\n}\n.pt-4 {\n padding-top: 1rem;\n}\n.pt-\\[68px\\] {\n padding-top: 68px;\n}\n.text-left {\n text-align: left;\n}\n.text-center {\n text-align: center;\n}\n.text-right {\n text-align: right;\n}\n.align-middle {\n vertical-align: middle;\n}\n.font-lego {\n font-family: Fredoka, sans-serif;\n}\n.font-mono {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n "Liberation Mono",\n "Courier New",\n monospace;\n}\n.text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.text-8xl {\n font-size: 6rem;\n line-height: 1;\n}\n.text-\\[15px\\] {\n font-size: 15px;\n}\n.text-\\[24px\\] {\n font-size: 24px;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-medium {\n font-weight: 500;\n}\n.font-normal {\n font-weight: 400;\n}\n.font-semibold {\n font-weight: 600;\n}\n.uppercase {\n text-transform: uppercase;\n}\n.lowercase {\n text-transform: lowercase;\n}\n.italic {\n font-style: italic;\n}\n.leading-none {\n line-height: 1;\n}\n.tracking-tight {\n letter-spacing: -0.025em;\n}\n.tracking-wider {\n letter-spacing: 0.05em;\n}\n.text-\\[\\#0F172A\\] {\n --tw-text-opacity: 1;\n color: rgb(15 23 42 / var(--tw-text-opacity, 1));\n}\n.text-\\[\\#64748B\\] {\n --tw-text-opacity: 1;\n color: rgb(100 116 139 / var(--tw-text-opacity, 1));\n}\n.text-amber-500 {\n --tw-text-opacity: 1;\n color: rgb(245 158 11 / var(--tw-text-opacity, 1));\n}\n.text-amber-700 {\n --tw-text-opacity: 1;\n color: rgb(180 83 9 / var(--tw-text-opacity, 1));\n}\n.text-blue-100 {\n --tw-text-opacity: 1;\n color: rgb(219 234 254 / var(--tw-text-opacity, 1));\n}\n.text-blue-500 {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity, 1));\n}\n.text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity, 1));\n}\n.text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity, 1));\n}\n.text-destructive {\n color: hsl(var(--destructive));\n}\n.text-destructive-foreground {\n color: hsl(var(--destructive-foreground));\n}\n.text-destructive\\/80 {\n color: hsl(var(--destructive) / 0.8);\n}\n.text-emerald-500 {\n --tw-text-opacity: 1;\n color: rgb(16 185 129 / var(--tw-text-opacity, 1));\n}\n.text-emerald-700 {\n --tw-text-opacity: 1;\n color: rgb(4 120 87 / var(--tw-text-opacity, 1));\n}\n.text-foreground {\n color: hsl(var(--foreground));\n}\n.text-gray-700 {\n --tw-text-opacity: 1;\n color: rgb(55 65 81 / var(--tw-text-opacity, 1));\n}\n.text-green-700 {\n --tw-text-opacity: 1;\n color: rgb(21 128 61 / var(--tw-text-opacity, 1));\n}\n.text-muted-foreground {\n color: hsl(var(--muted-foreground));\n}\n.text-muted\\/30 {\n color: hsl(var(--muted) / 0.3);\n}\n.text-primary {\n color: hsl(var(--primary));\n}\n.text-primary-foreground {\n color: hsl(var(--primary-foreground));\n}\n.text-purple-600 {\n --tw-text-opacity: 1;\n color: rgb(147 51 234 / var(--tw-text-opacity, 1));\n}\n.text-red-500 {\n --tw-text-opacity: 1;\n color: rgb(239 68 68 / var(--tw-text-opacity, 1));\n}\n.text-red-600 {\n --tw-text-opacity: 1;\n color: rgb(220 38 38 / var(--tw-text-opacity, 1));\n}\n.text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185 28 28 / var(--tw-text-opacity, 1));\n}\n.text-secondary {\n color: hsl(var(--secondary));\n}\n.text-secondary-foreground {\n color: hsl(var(--secondary-foreground));\n}\n.text-slate-600 {\n --tw-text-opacity: 1;\n color: rgb(71 85 105 / var(--tw-text-opacity, 1));\n}\n.text-slate-700 {\n --tw-text-opacity: 1;\n color: rgb(51 65 85 / var(--tw-text-opacity, 1));\n}\n.text-success {\n color: hsl(var(--success));\n}\n.text-transparent {\n color: transparent;\n}\n.text-warning {\n color: hsl(var(--warning));\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.text-yellow-700 {\n --tw-text-opacity: 1;\n color: rgb(161 98 7 / var(--tw-text-opacity, 1));\n}\n.underline-offset-4 {\n text-underline-offset: 4px;\n}\n.opacity-0 {\n opacity: 0;\n}\n.opacity-20 {\n opacity: 0.2;\n}\n.opacity-25 {\n opacity: 0.25;\n}\n.opacity-50 {\n opacity: 0.5;\n}\n.opacity-75 {\n opacity: 0.75;\n}\n.opacity-80 {\n opacity: 0.8;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-2xl {\n --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-blue-600\\/25 {\n --tw-shadow-color: rgb(37 99 235 / 0.25);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.outline {\n outline-style: solid;\n}\n.blur {\n --tw-blur: blur(8px);\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.blur-3xl {\n --tw-blur: blur(64px);\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.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-sm {\n --tw-backdrop-blur: 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-blur-xl {\n --tw-backdrop-blur: blur(24px);\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-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.duration-150 {\n transition-duration: 150ms;\n}\n.duration-200 {\n transition-duration: 200ms;\n}\n.duration-300 {\n transition-duration: 300ms;\n}\n.duration-500 {\n transition-duration: 500ms;\n}\n.ease-in-out {\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n@keyframes enter {\n from {\n opacity: var(--tw-enter-opacity, 1);\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: var(--tw-exit-opacity, 1);\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.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.fade-in {\n --tw-enter-opacity: 0;\n}\n.zoom-in-95 {\n --tw-enter-scale: .95;\n}\n.slide-in-from-bottom-2 {\n --tw-enter-translate-y: 0.5rem;\n}\n.duration-150 {\n animation-duration: 150ms;\n}\n.duration-200 {\n animation-duration: 200ms;\n}\n.duration-300 {\n animation-duration: 300ms;\n}\n.duration-500 {\n animation-duration: 500ms;\n}\n.ease-in-out {\n animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n.dialog-overlay {\n position: fixed !important;\n top: 0 !important;\n left: 0 !important;\n right: 0 !important;\n bottom: 0 !important;\n width: 100vw !important;\n height: 100vh !important;\n min-width: 100vw !important;\n min-height: 100vh !important;\n margin: 0 !important;\n padding: 0 !important;\n box-sizing: border-box !important;\n overflow: hidden !important;\n z-index: 9999 !important;\n}\n.glass {\n background: hsl(var(--background) / 0.8);\n backdrop-filter: blur(12px);\n -webkit-backdrop-filter: blur(12px);\n}\n.font-lego {\n font-family: "Fredoka", sans-serif;\n font-weight: 700;\n color: white;\n -webkit-text-stroke: 3px black;\n text-stroke: 3px black;\n text-shadow: 2px 2px 0 #2563EB, -2px -2px 0 #2563EB;\n paint-order: stroke fill;\n}\n.placeholder\\:text-muted-foreground::-moz-placeholder {\n color: hsl(var(--muted-foreground));\n}\n.placeholder\\:text-muted-foreground::placeholder {\n color: hsl(var(--muted-foreground));\n}\n.placeholder\\:text-slate-400::-moz-placeholder {\n --tw-text-opacity: 1;\n color: rgb(148 163 184 / var(--tw-text-opacity, 1));\n}\n.placeholder\\:text-slate-400::placeholder {\n --tw-text-opacity: 1;\n color: rgb(148 163 184 / var(--tw-text-opacity, 1));\n}\n.checked\\:border-primary:checked {\n border-color: hsl(var(--primary));\n}\n.checked\\:bg-primary:checked {\n background-color: hsl(var(--primary));\n}\n.hover\\:-translate-y-0\\.5:hover {\n --tw-translate-y: -0.125rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:scale-\\[1\\.02\\]:hover {\n --tw-scale-x: 1.02;\n --tw-scale-y: 1.02;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:border-foreground\\/20:hover {\n border-color: hsl(var(--foreground) / 0.2);\n}\n.hover\\:border-primary\\/30:hover {\n border-color: hsl(var(--primary) / 0.3);\n}\n.hover\\:bg-\\[\\#1D4ED8\\]:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-\\[\\#E5E5E5\\]:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(229 229 229 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-\\[\\#F1F1F1\\]:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(241 241 241 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-accent:hover {\n background-color: hsl(var(--accent));\n}\n.hover\\:bg-background\\/50:hover {\n background-color: hsl(var(--background) / 0.5);\n}\n.hover\\:bg-destructive\\/10:hover {\n background-color: hsl(var(--destructive) / 0.1);\n}\n.hover\\:bg-destructive\\/90:hover {\n background-color: hsl(var(--destructive) / 0.9);\n}\n.hover\\:bg-emerald-600:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-muted:hover {\n background-color: hsl(var(--muted));\n}\n.hover\\:bg-muted\\/30:hover {\n background-color: hsl(var(--muted) / 0.3);\n}\n.hover\\:bg-muted\\/40:hover {\n background-color: hsl(var(--muted) / 0.4);\n}\n.hover\\:bg-muted\\/50:hover {\n background-color: hsl(var(--muted) / 0.5);\n}\n.hover\\:bg-muted\\/80:hover {\n background-color: hsl(var(--muted) / 0.8);\n}\n.hover\\:bg-primary\\/90:hover {\n background-color: hsl(var(--primary) / 0.9);\n}\n.hover\\:bg-red-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));\n}\n.hover\\:text-\\[\\#0F172A\\]:hover {\n --tw-text-opacity: 1;\n color: rgb(15 23 42 / var(--tw-text-opacity, 1));\n}\n.hover\\:text-accent-foreground:hover {\n color: hsl(var(--accent-foreground));\n}\n.hover\\:text-destructive:hover {\n color: hsl(var(--destructive));\n}\n.hover\\:text-foreground:hover {\n color: hsl(var(--foreground));\n}\n.hover\\:text-slate-900:hover {\n --tw-text-opacity: 1;\n color: rgb(15 23 42 / var(--tw-text-opacity, 1));\n}\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n.hover\\:opacity-80:hover {\n opacity: 0.8;\n}\n.hover\\:shadow-lg:hover {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-md:hover {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-xl:hover {\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-blue-600\\/30:hover {\n --tw-shadow-color: rgb(37 99 235 / 0.3);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:ring-primary:focus {\n --tw-ring-color: hsl(var(--primary));\n}\n.focus\\:ring-primary\\/20:focus {\n --tw-ring-color: hsl(var(--primary) / 0.2);\n}\n.focus\\:ring-ring:focus {\n --tw-ring-color: hsl(var(--ring));\n}\n.focus\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:border-primary:focus-visible {\n border-color: hsl(var(--primary));\n}\n.focus-visible\\:outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus-visible\\:ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:ring-inset:focus-visible {\n --tw-ring-inset: inset;\n}\n.focus-visible\\:ring-primary\\/20:focus-visible {\n --tw-ring-color: hsl(var(--primary) / 0.2);\n}\n.focus-visible\\:ring-primary\\/50:focus-visible {\n --tw-ring-color: hsl(var(--primary) / 0.5);\n}\n.focus-visible\\:ring-ring:focus-visible {\n --tw-ring-color: hsl(var(--ring));\n}\n.focus-visible\\:ring-offset-2:focus-visible {\n --tw-ring-offset-width: 2px;\n}\n.active\\:translate-y-0:active {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:translate-y-px:active {\n --tw-translate-y: 1px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:shadow-sm:active {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.disabled\\:pointer-events-none:disabled {\n pointer-events: none;\n}\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n.group\\/tooltip:hover .group-hover\\/tooltip\\:visible {\n visibility: visible;\n}\n.group:hover .group-hover\\:bg-primary\\/10 {\n background-color: hsl(var(--primary) / 0.1);\n}\n.group:hover .group-hover\\:text-primary {\n color: hsl(var(--primary));\n}\n.group\\/tooltip:hover .group-hover\\/tooltip\\:opacity-100 {\n opacity: 1;\n}\n.group:hover .group-hover\\:opacity-100 {\n opacity: 1;\n}\n.peer:disabled ~ .peer-disabled\\:cursor-not-allowed {\n cursor: not-allowed;\n}\n.peer:disabled ~ .peer-disabled\\:opacity-70 {\n opacity: 0.7;\n}\n.dark\\:divide-slate-700:is(.dark *) > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-opacity: 1;\n border-color: rgb(51 65 85 / var(--tw-divide-opacity, 1));\n}\n.dark\\:divide-slate-700\\/60:is(.dark *) > :not([hidden]) ~ :not([hidden]) {\n border-color: rgb(51 65 85 / 0.6);\n}\n.dark\\:border-blue-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(30 64 175 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-blue-900\\/50:is(.dark *) {\n border-color: rgb(30 58 138 / 0.5);\n}\n.dark\\:border-green-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(22 101 52 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-purple-900\\/50:is(.dark *) {\n border-color: rgb(88 28 135 / 0.5);\n}\n.dark\\:border-red-900\\/50:is(.dark *) {\n border-color: rgb(127 29 29 / 0.5);\n}\n.dark\\:border-slate-700:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(51 65 85 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-yellow-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(133 77 14 / var(--tw-border-opacity, 1));\n}\n.dark\\:bg-amber-500\\/20:is(.dark *) {\n background-color: rgb(245 158 11 / 0.2);\n}\n.dark\\:bg-amber-900\\/30:is(.dark *) {\n background-color: rgb(120 53 15 / 0.3);\n}\n.dark\\:bg-blue-500\\/20:is(.dark *) {\n background-color: rgb(59 130 246 / 0.2);\n}\n.dark\\:bg-blue-900\\/30:is(.dark *) {\n background-color: rgb(30 58 138 / 0.3);\n}\n.dark\\:bg-emerald-500\\/20:is(.dark *) {\n background-color: rgb(16 185 129 / 0.2);\n}\n.dark\\:bg-emerald-600:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-emerald-900\\/30:is(.dark *) {\n background-color: rgb(6 78 59 / 0.3);\n}\n.dark\\:bg-gray-800:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-green-900\\/30:is(.dark *) {\n background-color: rgb(20 83 45 / 0.3);\n}\n.dark\\:bg-primary\\/15:is(.dark *) {\n background-color: hsl(var(--primary) / 0.15);\n}\n.dark\\:bg-primary\\/20:is(.dark *) {\n background-color: hsl(var(--primary) / 0.2);\n}\n.dark\\:bg-purple-900\\/30:is(.dark *) {\n background-color: rgb(88 28 135 / 0.3);\n}\n.dark\\:bg-red-500\\/20:is(.dark *) {\n background-color: rgb(239 68 68 / 0.2);\n}\n.dark\\:bg-red-900\\/30:is(.dark *) {\n background-color: rgb(127 29 29 / 0.3);\n}\n.dark\\:bg-slate-600:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(71 85 105 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-slate-700\\/80:is(.dark *) {\n background-color: rgb(51 65 85 / 0.8);\n}\n.dark\\:bg-slate-800:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-slate-800\\/50:is(.dark *) {\n background-color: rgb(30 41 59 / 0.5);\n}\n.dark\\:bg-slate-800\\/70:is(.dark *) {\n background-color: rgb(30 41 59 / 0.7);\n}\n.dark\\:bg-slate-800\\/80:is(.dark *) {\n background-color: rgb(30 41 59 / 0.8);\n}\n.dark\\:bg-slate-900:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-yellow-900\\/30:is(.dark *) {\n background-color: rgb(113 63 18 / 0.3);\n}\n.dark\\:text-amber-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(251 191 36 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-blue-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-emerald-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(52 211 153 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(156 163 175 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-green-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(74 222 128 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-primary:is(.dark *) {\n color: hsl(var(--primary));\n}\n.dark\\:text-purple-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(192 132 252 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-red-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-slate-200:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(226 232 240 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-yellow-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(250 204 21 / var(--tw-text-opacity, 1));\n}\n.dark\\:hover\\:bg-emerald-700:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(4 120 87 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-slate-700\\/30:hover:is(.dark *) {\n background-color: rgb(51 65 85 / 0.3);\n}\n.dark\\:hover\\:bg-slate-800:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-slate-800\\/50:hover:is(.dark *) {\n background-color: rgb(30 41 59 / 0.5);\n}\n@media (min-width: 640px) {\n .sm\\:ml-2 {\n margin-left: 0.5rem;\n }\n .sm\\:block {\n display: block;\n }\n .sm\\:flex {\n display: flex;\n }\n .sm\\:w-56 {\n width: 14rem;\n }\n .sm\\:flex-row {\n flex-direction: row;\n }\n .sm\\:items-center {\n align-items: center;\n }\n .sm\\:justify-between {\n justify-content: space-between;\n }\n .sm\\:gap-2 {\n gap: 0.5rem;\n }\n .sm\\:pl-3 {\n padding-left: 0.75rem;\n }\n}\n@media (min-width: 768px) {\n .md\\:block {\n display: block;\n }\n .md\\:flex {\n display: flex;\n }\n .md\\:hidden {\n display: none;\n }\n .md\\:h-16 {\n height: 4rem;\n }\n .md\\:h-32 {\n height: 8rem;\n }\n .md\\:w-16 {\n width: 4rem;\n }\n .md\\:w-32 {\n width: 8rem;\n }\n .md\\:text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n }\n .md\\:text-9xl {\n font-size: 8rem;\n line-height: 1;\n }\n}\n@media (min-width: 1024px) {\n .lg\\:block {\n display: block;\n }\n .lg\\:flex {\n display: flex;\n }\n .lg\\:hidden {\n display: none;\n }\n .lg\\:flex-row {\n flex-direction: row;\n }\n .lg\\:p-12 {\n padding: 3rem;\n }\n .lg\\:p-8 {\n padding: 2rem;\n }\n .lg\\:px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n }\n .lg\\:pl-\\[260px\\] {\n padding-left: 260px;\n }\n .lg\\:pl-\\[72px\\] {\n padding-left: 72px;\n }\n .lg\\:text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n }\n .lg\\:text-\\[28px\\] {\n font-size: 28px;\n }\n}\n');
4848
+ styleInject('@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&display=swap";\n*,\n::before,\n::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n*,\n::before,\n::after {\n box-sizing: border-box;\n border-width: 0;\n border-style: solid;\n border-color: #e5e7eb;\n}\n::before,\n::after {\n --tw-content: "";\n}\nhtml,\n: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:\n Inter,\n system-ui,\n sans-serif;\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n}\nbody {\n margin: 0;\n line-height: inherit;\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,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\na {\n color: inherit;\n text-decoration: inherit;\n}\nb,\nstrong {\n font-weight: bolder;\n}\ncode,\nkbd,\nsamp,\npre {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n "Liberation Mono",\n "Courier New",\n monospace;\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-size: 1em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\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}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\ninput:where([type=button]),\ninput:where([type=reset]),\ninput:where([type=submit]) {\n -webkit-appearance: button;\n background-color: transparent;\n background-image: none;\n}\n:-moz-focusring {\n outline: auto;\n}\n:-moz-ui-invalid {\n box-shadow: none;\n}\nprogress {\n vertical-align: baseline;\n}\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n[type=search] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\nsummary {\n display: list-item;\n}\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\nfieldset {\n margin: 0;\n padding: 0;\n}\nlegend {\n padding: 0;\n}\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\ndialog {\n padding: 0;\n}\ntextarea {\n resize: vertical;\n}\ninput::-moz-placeholder,\ntextarea::-moz-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\nbutton,\n[role=button] {\n cursor: pointer;\n}\n:disabled {\n cursor: default;\n}\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n vertical-align: middle;\n}\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n[hidden]:where(:not([hidden=until-found])) {\n display: none;\n}\n:root {\n --background: 0 0% 100%;\n --foreground: 222.2 84% 4.9%;\n --card: 0 0% 100%;\n --card-foreground: 222.2 84% 4.9%;\n --primary: 217 91% 60%;\n --primary-foreground: 0 0% 100%;\n --primary-50: 217 91% 97%;\n --primary-100: 217 91% 93%;\n --primary-200: 217 91% 85%;\n --primary-300: 217 91% 75%;\n --primary-400: 217 91% 68%;\n --primary-500: 217 91% 60%;\n --primary-600: 217 75% 50%;\n --secondary: 258 90% 66%;\n --secondary-foreground: 0 0% 100%;\n --secondary-50: 258 90% 97%;\n --secondary-100: 258 90% 93%;\n --secondary-200: 258 90% 85%;\n --destructive: 0 84% 60%;\n --destructive-foreground: 0 0% 100%;\n --success: 158 64% 52%;\n --success-foreground: 0 0% 100%;\n --warning: 38 92% 50%;\n --warning-foreground: 0 0% 100%;\n --muted: 210 40% 96.1%;\n --muted-foreground: 215.4 16.3% 46.9%;\n --accent: 210 40% 96.1%;\n --accent-foreground: 222.2 47.4% 11.2%;\n --border: 210 40% 88%;\n --input: 210 40% 88%;\n --ring: 217 91% 60%;\n --radius: 0.5rem;\n}\n.dark {\n --background: 222.2 84% 4.9%;\n --foreground: 210 40% 98%;\n --card: 222.2 84% 6.9%;\n --card-foreground: 210 40% 98%;\n --primary: 217 91% 60%;\n --primary-foreground: 0 0% 100%;\n --primary-50: 217 70% 15%;\n --primary-100: 217 70% 20%;\n --primary-200: 217 70% 30%;\n --secondary: 258 90% 66%;\n --secondary-foreground: 0 0% 100%;\n --secondary-50: 258 70% 15%;\n --secondary-100: 258 70% 20%;\n --destructive: 0 84% 60%;\n --destructive-foreground: 0 0% 100%;\n --muted: 217.2 32.6% 17.5%;\n --muted-foreground: 215 20.2% 65.1%;\n --accent: 217.2 32.6% 17.5%;\n --accent-foreground: 210 40% 98%;\n --border: 217.2 32.6% 17.5%;\n --input: 217.2 32.6% 17.5%;\n --ring: 217 91% 60%;\n --radius: 0.5rem;\n}\n* {\n border-color: hsl(var(--border));\n}\nbody {\n background-color: hsl(var(--background));\n color: hsl(var(--foreground));\n font-family:\n "Inter",\n system-ui,\n -apple-system,\n sans-serif;\n}\n.container {\n width: 100%;\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px;\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px;\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px;\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px;\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px;\n }\n}\n.pointer-events-none {\n pointer-events: none;\n}\n.invisible {\n visibility: hidden;\n}\n.collapse {\n visibility: collapse;\n}\n.fixed {\n position: fixed;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.sticky {\n position: sticky;\n}\n.-inset-4 {\n inset: -1rem;\n}\n.inset-0 {\n inset: 0px;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.bottom-full {\n bottom: 100%;\n}\n.left-0 {\n left: 0px;\n}\n.left-1\\/2 {\n left: 50%;\n}\n.left-3 {\n left: 0.75rem;\n}\n.left-full {\n left: 100%;\n}\n.right-0 {\n right: 0px;\n}\n.right-2 {\n right: 0.5rem;\n}\n.right-3 {\n right: 0.75rem;\n}\n.right-4 {\n right: 1rem;\n}\n.right-full {\n right: 100%;\n}\n.top-0 {\n top: 0px;\n}\n.top-1\\/2 {\n top: 50%;\n}\n.top-2 {\n top: 0.5rem;\n}\n.top-4 {\n top: 1rem;\n}\n.top-\\[68px\\] {\n top: 68px;\n}\n.top-full {\n top: 100%;\n}\n.z-10 {\n z-index: 10;\n}\n.z-20 {\n z-index: 20;\n}\n.z-40 {\n z-index: 40;\n}\n.z-50 {\n z-index: 50;\n}\n.mx-4 {\n margin-left: 1rem;\n margin-right: 1rem;\n}\n.mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n.mb-1 {\n margin-bottom: 0.25rem;\n}\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n.mb-3 {\n margin-bottom: 0.75rem;\n}\n.mb-4 {\n margin-bottom: 1rem;\n}\n.mb-6 {\n margin-bottom: 1.5rem;\n}\n.mb-8 {\n margin-bottom: 2rem;\n}\n.ml-1 {\n margin-left: 0.25rem;\n}\n.ml-2 {\n margin-left: 0.5rem;\n}\n.mr-2 {\n margin-right: 0.5rem;\n}\n.mt-0\\.5 {\n margin-top: 0.125rem;\n}\n.mt-1 {\n margin-top: 0.25rem;\n}\n.mt-12 {\n margin-top: 3rem;\n}\n.mt-2 {\n margin-top: 0.5rem;\n}\n.mt-4 {\n margin-top: 1rem;\n}\n.mt-6 {\n margin-top: 1.5rem;\n}\n.line-clamp-2 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n}\n.block {\n display: block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.inline-flex {\n display: inline-flex;\n}\n.table {\n display: table;\n}\n.grid {\n display: grid;\n}\n.contents {\n display: contents;\n}\n.hidden {\n display: none;\n}\n.h-1\\.5 {\n height: 0.375rem;\n}\n.h-10 {\n height: 2.5rem;\n}\n.h-11 {\n height: 2.75rem;\n}\n.h-12 {\n height: 3rem;\n}\n.h-16 {\n height: 4rem;\n}\n.h-2 {\n height: 0.5rem;\n}\n.h-24 {\n height: 6rem;\n}\n.h-3 {\n height: 0.75rem;\n}\n.h-3\\.5 {\n height: 0.875rem;\n}\n.h-4 {\n height: 1rem;\n}\n.h-5 {\n height: 1.25rem;\n}\n.h-6 {\n height: 1.5rem;\n}\n.h-64 {\n height: 16rem;\n}\n.h-7 {\n height: 1.75rem;\n}\n.h-8 {\n height: 2rem;\n}\n.h-9 {\n height: 2.25rem;\n}\n.h-\\[140px\\] {\n height: 140px;\n}\n.h-\\[18px\\] {\n height: 18px;\n}\n.h-\\[68px\\] {\n height: 68px;\n}\n.h-full {\n height: 100%;\n}\n.h-px {\n height: 1px;\n}\n.max-h-32 {\n max-height: 8rem;\n}\n.max-h-40 {\n max-height: 10rem;\n}\n.max-h-\\[320px\\] {\n max-height: 320px;\n}\n.max-h-\\[70vh\\] {\n max-height: 70vh;\n}\n.max-h-\\[90vh\\] {\n max-height: 90vh;\n}\n.min-h-0 {\n min-height: 0px;\n}\n.min-h-\\[100px\\] {\n min-height: 100px;\n}\n.min-h-\\[180px\\] {\n min-height: 180px;\n}\n.min-h-\\[200px\\] {\n min-height: 200px;\n}\n.min-h-screen {\n min-height: 100vh;\n}\n.w-1\\.5 {\n width: 0.375rem;\n}\n.w-10 {\n width: 2.5rem;\n}\n.w-12 {\n width: 3rem;\n}\n.w-16 {\n width: 4rem;\n}\n.w-2 {\n width: 0.5rem;\n}\n.w-24 {\n width: 6rem;\n}\n.w-3 {\n width: 0.75rem;\n}\n.w-3\\.5 {\n width: 0.875rem;\n}\n.w-32 {\n width: 8rem;\n}\n.w-4 {\n width: 1rem;\n}\n.w-48 {\n width: 12rem;\n}\n.w-5 {\n width: 1.25rem;\n}\n.w-56 {\n width: 14rem;\n}\n.w-6 {\n width: 1.5rem;\n}\n.w-64 {\n width: 16rem;\n}\n.w-7 {\n width: 1.75rem;\n}\n.w-8 {\n width: 2rem;\n}\n.w-9 {\n width: 2.25rem;\n}\n.w-\\[140px\\] {\n width: 140px;\n}\n.w-\\[18px\\] {\n width: 18px;\n}\n.w-\\[260px\\] {\n width: 260px;\n}\n.w-\\[72px\\] {\n width: 72px;\n}\n.w-auto {\n width: auto;\n}\n.w-full {\n width: 100%;\n}\n.w-px {\n width: 1px;\n}\n.min-w-0 {\n min-width: 0px;\n}\n.min-w-\\[1\\.25rem\\] {\n min-width: 1.25rem;\n}\n.min-w-\\[6\\.5rem\\] {\n min-width: 6.5rem;\n}\n.max-w-2xl {\n max-width: 42rem;\n}\n.max-w-\\[120px\\] {\n max-width: 120px;\n}\n.max-w-\\[240px\\] {\n max-width: 240px;\n}\n.max-w-md {\n max-width: 28rem;\n}\n.flex-1 {\n flex: 1 1 0%;\n}\n.flex-shrink-0 {\n flex-shrink: 0;\n}\n.shrink-0 {\n flex-shrink: 0;\n}\n.-translate-x-1\\/2 {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.-translate-y-1\\/2 {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.-rotate-90 {\n --tw-rotate: -90deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-180 {\n --tw-rotate: 180deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.rotate-90 {\n --tw-rotate: 90deg;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes bounce {\n 0%, 100% {\n transform: translateY(-25%);\n animation-timing-function: cubic-bezier(0.8, 0, 1, 1);\n }\n 50% {\n transform: none;\n animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n }\n}\n.animate-bounce {\n animation: bounce 1s infinite;\n}\n@keyframes pulse {\n 50% {\n opacity: .5;\n }\n}\n.animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n@keyframes spin {\n to {\n transform: rotate(360deg);\n }\n}\n.animate-spin {\n animation: spin 1s linear infinite;\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.select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.select-all {\n -webkit-user-select: all;\n -moz-user-select: all;\n user-select: all;\n}\n.grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n.flex-col {\n flex-direction: column;\n}\n.flex-col-reverse {\n flex-direction: column-reverse;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.items-start {\n align-items: flex-start;\n}\n.items-center {\n align-items: center;\n}\n.justify-end {\n justify-content: flex-end;\n}\n.justify-center {\n justify-content: center;\n}\n.justify-between {\n justify-content: space-between;\n}\n.gap-0 {\n gap: 0px;\n}\n.gap-1 {\n gap: 0.25rem;\n}\n.gap-1\\.5 {\n gap: 0.375rem;\n}\n.gap-2 {\n gap: 0.5rem;\n}\n.gap-2\\.5 {\n gap: 0.625rem;\n}\n.gap-3 {\n gap: 0.75rem;\n}\n.gap-4 {\n gap: 1rem;\n}\n.gap-6 {\n gap: 1.5rem;\n}\n.space-y-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));\n}\n.space-y-1\\.5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));\n}\n.space-y-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));\n}\n.space-y-3 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));\n}\n.space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n.space-y-\\[2px\\] > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(2px * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(2px * var(--tw-space-y-reverse));\n}\n.divide-y > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-y-reverse: 0;\n border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));\n border-bottom-width: calc(1px * var(--tw-divide-y-reverse));\n}\n.divide-border > :not([hidden]) ~ :not([hidden]) {\n border-color: hsl(var(--border));\n}\n.divide-border\\/60 > :not([hidden]) ~ :not([hidden]) {\n border-color: hsl(var(--border) / 0.6);\n}\n.overflow-hidden {\n overflow: hidden;\n}\n.overflow-x-auto {\n overflow-x: auto;\n}\n.overflow-y-auto {\n overflow-y: auto;\n}\n.truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.whitespace-nowrap {\n white-space: nowrap;\n}\n.whitespace-pre-wrap {\n white-space: pre-wrap;\n}\n.break-all {\n word-break: break-all;\n}\n.rounded {\n border-radius: 0.25rem;\n}\n.rounded-2xl {\n border-radius: 1rem;\n}\n.rounded-3xl {\n border-radius: 1.5rem;\n}\n.rounded-\\[10px\\] {\n border-radius: 10px;\n}\n.rounded-\\[12px\\] {\n border-radius: 12px;\n}\n.rounded-full {\n border-radius: 9999px;\n}\n.rounded-lg {\n border-radius: var(--radius);\n}\n.rounded-md {\n border-radius: calc(var(--radius) - 2px);\n}\n.rounded-xl {\n border-radius: 0.75rem;\n}\n.border {\n border-width: 1px;\n}\n.border-0 {\n border-width: 0px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-4 {\n border-width: 4px;\n}\n.border-y {\n border-top-width: 1px;\n border-bottom-width: 1px;\n}\n.border-b {\n border-bottom-width: 1px;\n}\n.border-l {\n border-left-width: 1px;\n}\n.border-r {\n border-right-width: 1px;\n}\n.border-t {\n border-top-width: 1px;\n}\n.border-dashed {\n border-style: dashed;\n}\n.border-\\[\\#E7E5E4\\] {\n --tw-border-opacity: 1;\n border-color: rgb(231 229 228 / var(--tw-border-opacity, 1));\n}\n.border-amber-500\\/30 {\n border-color: rgb(245 158 11 / 0.3);\n}\n.border-blue-200 {\n --tw-border-opacity: 1;\n border-color: rgb(191 219 254 / var(--tw-border-opacity, 1));\n}\n.border-blue-600\\/30 {\n border-color: rgb(37 99 235 / 0.3);\n}\n.border-border {\n border-color: hsl(var(--border));\n}\n.border-border\\/60 {\n border-color: hsl(var(--border) / 0.6);\n}\n.border-destructive {\n border-color: hsl(var(--destructive));\n}\n.border-destructive\\/20 {\n border-color: hsl(var(--destructive) / 0.2);\n}\n.border-destructive\\/30 {\n border-color: hsl(var(--destructive) / 0.3);\n}\n.border-green-200 {\n --tw-border-opacity: 1;\n border-color: rgb(187 247 208 / var(--tw-border-opacity, 1));\n}\n.border-input {\n border-color: hsl(var(--input));\n}\n.border-muted {\n border-color: hsl(var(--muted));\n}\n.border-primary\\/20 {\n border-color: hsl(var(--primary) / 0.2);\n}\n.border-primary\\/40 {\n border-color: hsl(var(--primary) / 0.4);\n}\n.border-purple-200 {\n --tw-border-opacity: 1;\n border-color: rgb(233 213 255 / var(--tw-border-opacity, 1));\n}\n.border-red-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 202 202 / var(--tw-border-opacity, 1));\n}\n.border-secondary\\/20 {\n border-color: hsl(var(--secondary) / 0.2);\n}\n.border-slate-200 {\n --tw-border-opacity: 1;\n border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));\n}\n.border-slate-300 {\n --tw-border-opacity: 1;\n border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));\n}\n.border-transparent {\n border-color: transparent;\n}\n.border-yellow-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 240 138 / var(--tw-border-opacity, 1));\n}\n.border-r-blue-600 {\n --tw-border-opacity: 1;\n border-right-color: rgb(37 99 235 / var(--tw-border-opacity, 1));\n}\n.border-t-blue-600 {\n --tw-border-opacity: 1;\n border-top-color: rgb(37 99 235 / var(--tw-border-opacity, 1));\n}\n.bg-\\[\\#2563EB\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));\n}\n.bg-\\[\\#F1F1F1\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(241 241 241 / var(--tw-bg-opacity, 1));\n}\n.bg-amber-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));\n}\n.bg-amber-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));\n}\n.bg-amber-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));\n}\n.bg-background {\n background-color: hsl(var(--background));\n}\n.bg-black\\/50 {\n background-color: rgb(0 0 0 / 0.5);\n}\n.bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));\n}\n.bg-blue-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));\n}\n.bg-blue-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));\n}\n.bg-border {\n background-color: hsl(var(--border));\n}\n.bg-destructive {\n background-color: hsl(var(--destructive));\n}\n.bg-destructive\\/10 {\n background-color: hsl(var(--destructive) / 0.1);\n}\n.bg-emerald-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));\n}\n.bg-emerald-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));\n}\n.bg-emerald-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));\n}\n.bg-gray-900 {\n --tw-bg-opacity: 1;\n background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));\n}\n.bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));\n}\n.bg-muted {\n background-color: hsl(var(--muted));\n}\n.bg-muted-foreground\\/80 {\n background-color: hsl(var(--muted-foreground) / 0.8);\n}\n.bg-muted\\/20 {\n background-color: hsl(var(--muted) / 0.2);\n}\n.bg-muted\\/30 {\n background-color: hsl(var(--muted) / 0.3);\n}\n.bg-muted\\/50 {\n background-color: hsl(var(--muted) / 0.5);\n}\n.bg-muted\\/80 {\n background-color: hsl(var(--muted) / 0.8);\n}\n.bg-primary {\n background-color: hsl(var(--primary));\n}\n.bg-primary\\/10 {\n background-color: hsl(var(--primary) / 0.1);\n}\n.bg-primary\\/5 {\n background-color: hsl(var(--primary) / 0.05);\n}\n.bg-purple-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));\n}\n.bg-red-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));\n}\n.bg-red-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));\n}\n.bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));\n}\n.bg-secondary {\n background-color: hsl(var(--secondary));\n}\n.bg-secondary\\/10 {\n background-color: hsl(var(--secondary) / 0.1);\n}\n.bg-slate-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));\n}\n.bg-transparent {\n background-color: transparent;\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));\n}\n.bg-white\\/20 {\n background-color: rgb(255 255 255 / 0.2);\n}\n.bg-yellow-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));\n}\n.bg-gradient-to-br {\n background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));\n}\n.bg-gradient-to-r {\n background-image: linear-gradient(to right, var(--tw-gradient-stops));\n}\n.from-\\[\\#2563EB\\] {\n --tw-gradient-from: #2563EB var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-amber-500 {\n --tw-gradient-from: #f59e0b var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-amber-500\\/20 {\n --tw-gradient-from: rgb(245 158 11 / 0.2) var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-blue-600 {\n --tw-gradient-from: #2563eb var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.from-blue-600\\/20 {\n --tw-gradient-from: rgb(37 99 235 / 0.2) var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.via-blue-700 {\n --tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n #1d4ed8 var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.via-blue-700\\/20 {\n --tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n rgb(29 78 216 / 0.2) var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.via-orange-500 {\n --tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n #f97316 var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.via-orange-500\\/20 {\n --tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops:\n var(--tw-gradient-from),\n rgb(249 115 22 / 0.2) var(--tw-gradient-via-position),\n var(--tw-gradient-to);\n}\n.to-\\[\\#7C3AED\\] {\n --tw-gradient-to: #7C3AED var(--tw-gradient-to-position);\n}\n.to-blue-700 {\n --tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position);\n}\n.to-indigo-800 {\n --tw-gradient-to: #3730a3 var(--tw-gradient-to-position);\n}\n.to-indigo-800\\/20 {\n --tw-gradient-to: rgb(55 48 163 / 0.2) var(--tw-gradient-to-position);\n}\n.to-red-600 {\n --tw-gradient-to: #dc2626 var(--tw-gradient-to-position);\n}\n.to-red-600\\/20 {\n --tw-gradient-to: rgb(220 38 38 / 0.2) var(--tw-gradient-to-position);\n}\n.bg-clip-text {\n -webkit-background-clip: text;\n background-clip: text;\n}\n.object-cover {\n -o-object-fit: cover;\n object-fit: cover;\n}\n.p-0\\.5 {\n padding: 0.125rem;\n}\n.p-1 {\n padding: 0.25rem;\n}\n.p-1\\.5 {\n padding: 0.375rem;\n}\n.p-3 {\n padding: 0.75rem;\n}\n.p-4 {\n padding: 1rem;\n}\n.p-5 {\n padding: 1.25rem;\n}\n.p-6 {\n padding: 1.5rem;\n}\n.p-8 {\n padding: 2rem;\n}\n.px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n.px-1\\.5 {\n padding-left: 0.375rem;\n padding-right: 0.375rem;\n}\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n.py-12 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n}\n.py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n.py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n.py-8 {\n padding-top: 2rem;\n padding-bottom: 2rem;\n}\n.pl-10 {\n padding-left: 2.5rem;\n}\n.pl-2 {\n padding-left: 0.5rem;\n}\n.pl-4 {\n padding-left: 1rem;\n}\n.pl-9 {\n padding-left: 2.25rem;\n}\n.pr-10 {\n padding-right: 2.5rem;\n}\n.pr-4 {\n padding-right: 1rem;\n}\n.pt-0 {\n padding-top: 0px;\n}\n.pt-1 {\n padding-top: 0.25rem;\n}\n.pt-2 {\n padding-top: 0.5rem;\n}\n.pt-3 {\n padding-top: 0.75rem;\n}\n.pt-4 {\n padding-top: 1rem;\n}\n.pt-\\[68px\\] {\n padding-top: 68px;\n}\n.text-left {\n text-align: left;\n}\n.text-center {\n text-align: center;\n}\n.text-right {\n text-align: right;\n}\n.align-middle {\n vertical-align: middle;\n}\n.font-lego {\n font-family: Fredoka, sans-serif;\n}\n.font-mono {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n "Liberation Mono",\n "Courier New",\n monospace;\n}\n.text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.text-8xl {\n font-size: 6rem;\n line-height: 1;\n}\n.text-\\[15px\\] {\n font-size: 15px;\n}\n.text-\\[24px\\] {\n font-size: 24px;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.font-bold {\n font-weight: 700;\n}\n.font-medium {\n font-weight: 500;\n}\n.font-normal {\n font-weight: 400;\n}\n.font-semibold {\n font-weight: 600;\n}\n.uppercase {\n text-transform: uppercase;\n}\n.lowercase {\n text-transform: lowercase;\n}\n.italic {\n font-style: italic;\n}\n.leading-none {\n line-height: 1;\n}\n.tracking-tight {\n letter-spacing: -0.025em;\n}\n.tracking-wider {\n letter-spacing: 0.05em;\n}\n.text-\\[\\#0F172A\\] {\n --tw-text-opacity: 1;\n color: rgb(15 23 42 / var(--tw-text-opacity, 1));\n}\n.text-\\[\\#64748B\\] {\n --tw-text-opacity: 1;\n color: rgb(100 116 139 / var(--tw-text-opacity, 1));\n}\n.text-amber-500 {\n --tw-text-opacity: 1;\n color: rgb(245 158 11 / var(--tw-text-opacity, 1));\n}\n.text-amber-700 {\n --tw-text-opacity: 1;\n color: rgb(180 83 9 / var(--tw-text-opacity, 1));\n}\n.text-blue-100 {\n --tw-text-opacity: 1;\n color: rgb(219 234 254 / var(--tw-text-opacity, 1));\n}\n.text-blue-500 {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity, 1));\n}\n.text-blue-600 {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity, 1));\n}\n.text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity, 1));\n}\n.text-destructive {\n color: hsl(var(--destructive));\n}\n.text-destructive-foreground {\n color: hsl(var(--destructive-foreground));\n}\n.text-destructive\\/80 {\n color: hsl(var(--destructive) / 0.8);\n}\n.text-emerald-500 {\n --tw-text-opacity: 1;\n color: rgb(16 185 129 / var(--tw-text-opacity, 1));\n}\n.text-emerald-700 {\n --tw-text-opacity: 1;\n color: rgb(4 120 87 / var(--tw-text-opacity, 1));\n}\n.text-foreground {\n color: hsl(var(--foreground));\n}\n.text-gray-700 {\n --tw-text-opacity: 1;\n color: rgb(55 65 81 / var(--tw-text-opacity, 1));\n}\n.text-green-700 {\n --tw-text-opacity: 1;\n color: rgb(21 128 61 / var(--tw-text-opacity, 1));\n}\n.text-muted-foreground {\n color: hsl(var(--muted-foreground));\n}\n.text-muted\\/30 {\n color: hsl(var(--muted) / 0.3);\n}\n.text-primary {\n color: hsl(var(--primary));\n}\n.text-primary-foreground {\n color: hsl(var(--primary-foreground));\n}\n.text-purple-600 {\n --tw-text-opacity: 1;\n color: rgb(147 51 234 / var(--tw-text-opacity, 1));\n}\n.text-red-500 {\n --tw-text-opacity: 1;\n color: rgb(239 68 68 / var(--tw-text-opacity, 1));\n}\n.text-red-600 {\n --tw-text-opacity: 1;\n color: rgb(220 38 38 / var(--tw-text-opacity, 1));\n}\n.text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185 28 28 / var(--tw-text-opacity, 1));\n}\n.text-secondary {\n color: hsl(var(--secondary));\n}\n.text-secondary-foreground {\n color: hsl(var(--secondary-foreground));\n}\n.text-slate-600 {\n --tw-text-opacity: 1;\n color: rgb(71 85 105 / var(--tw-text-opacity, 1));\n}\n.text-slate-700 {\n --tw-text-opacity: 1;\n color: rgb(51 65 85 / var(--tw-text-opacity, 1));\n}\n.text-success {\n color: hsl(var(--success));\n}\n.text-transparent {\n color: transparent;\n}\n.text-warning {\n color: hsl(var(--warning));\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity, 1));\n}\n.text-yellow-700 {\n --tw-text-opacity: 1;\n color: rgb(161 98 7 / var(--tw-text-opacity, 1));\n}\n.underline-offset-4 {\n text-underline-offset: 4px;\n}\n.opacity-0 {\n opacity: 0;\n}\n.opacity-20 {\n opacity: 0.2;\n}\n.opacity-25 {\n opacity: 0.25;\n}\n.opacity-50 {\n opacity: 0.5;\n}\n.opacity-75 {\n opacity: 0.75;\n}\n.opacity-80 {\n opacity: 0.8;\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-2xl {\n --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-md {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.shadow-blue-600\\/25 {\n --tw-shadow-color: rgb(37 99 235 / 0.25);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.outline {\n outline-style: solid;\n}\n.blur {\n --tw-blur: blur(8px);\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.blur-3xl {\n --tw-blur: blur(64px);\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.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-sm {\n --tw-backdrop-blur: 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-blur-xl {\n --tw-backdrop-blur: blur(24px);\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-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.duration-150 {\n transition-duration: 150ms;\n}\n.duration-200 {\n transition-duration: 200ms;\n}\n.duration-300 {\n transition-duration: 300ms;\n}\n.duration-500 {\n transition-duration: 500ms;\n}\n.ease-in-out {\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n@keyframes enter {\n from {\n opacity: var(--tw-enter-opacity, 1);\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: var(--tw-exit-opacity, 1);\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.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.fade-in {\n --tw-enter-opacity: 0;\n}\n.zoom-in-95 {\n --tw-enter-scale: .95;\n}\n.slide-in-from-bottom-2 {\n --tw-enter-translate-y: 0.5rem;\n}\n.duration-150 {\n animation-duration: 150ms;\n}\n.duration-200 {\n animation-duration: 200ms;\n}\n.duration-300 {\n animation-duration: 300ms;\n}\n.duration-500 {\n animation-duration: 500ms;\n}\n.ease-in-out {\n animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n.dialog-overlay {\n position: fixed !important;\n top: 0 !important;\n left: 0 !important;\n right: 0 !important;\n bottom: 0 !important;\n width: 100vw !important;\n height: 100vh !important;\n min-width: 100vw !important;\n min-height: 100vh !important;\n margin: 0 !important;\n padding: 0 !important;\n box-sizing: border-box !important;\n overflow: hidden !important;\n z-index: 9999 !important;\n}\n.glass {\n background: hsl(var(--background) / 0.8);\n backdrop-filter: blur(12px);\n -webkit-backdrop-filter: blur(12px);\n}\n.font-lego {\n font-family: "Fredoka", sans-serif;\n font-weight: 700;\n color: white;\n -webkit-text-stroke: 3px black;\n text-stroke: 3px black;\n text-shadow: 2px 2px 0 #2563EB, -2px -2px 0 #2563EB;\n paint-order: stroke fill;\n}\n.placeholder\\:text-muted-foreground::-moz-placeholder {\n color: hsl(var(--muted-foreground));\n}\n.placeholder\\:text-muted-foreground::placeholder {\n color: hsl(var(--muted-foreground));\n}\n.placeholder\\:text-slate-400::-moz-placeholder {\n --tw-text-opacity: 1;\n color: rgb(148 163 184 / var(--tw-text-opacity, 1));\n}\n.placeholder\\:text-slate-400::placeholder {\n --tw-text-opacity: 1;\n color: rgb(148 163 184 / var(--tw-text-opacity, 1));\n}\n.checked\\:border-primary:checked {\n border-color: hsl(var(--primary));\n}\n.checked\\:bg-primary:checked {\n background-color: hsl(var(--primary));\n}\n.hover\\:-translate-y-0\\.5:hover {\n --tw-translate-y: -0.125rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:scale-\\[1\\.02\\]:hover {\n --tw-scale-x: 1.02;\n --tw-scale-y: 1.02;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:border-foreground\\/20:hover {\n border-color: hsl(var(--foreground) / 0.2);\n}\n.hover\\:border-primary\\/30:hover {\n border-color: hsl(var(--primary) / 0.3);\n}\n.hover\\:bg-\\[\\#1D4ED8\\]:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-\\[\\#E5E5E5\\]:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(229 229 229 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-\\[\\#F1F1F1\\]:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(241 241 241 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-accent:hover {\n background-color: hsl(var(--accent));\n}\n.hover\\:bg-background\\/50:hover {\n background-color: hsl(var(--background) / 0.5);\n}\n.hover\\:bg-destructive\\/10:hover {\n background-color: hsl(var(--destructive) / 0.1);\n}\n.hover\\:bg-destructive\\/90:hover {\n background-color: hsl(var(--destructive) / 0.9);\n}\n.hover\\:bg-emerald-600:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));\n}\n.hover\\:bg-muted:hover {\n background-color: hsl(var(--muted));\n}\n.hover\\:bg-muted\\/30:hover {\n background-color: hsl(var(--muted) / 0.3);\n}\n.hover\\:bg-muted\\/40:hover {\n background-color: hsl(var(--muted) / 0.4);\n}\n.hover\\:bg-muted\\/50:hover {\n background-color: hsl(var(--muted) / 0.5);\n}\n.hover\\:bg-muted\\/80:hover {\n background-color: hsl(var(--muted) / 0.8);\n}\n.hover\\:bg-primary\\/90:hover {\n background-color: hsl(var(--primary) / 0.9);\n}\n.hover\\:bg-red-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));\n}\n.hover\\:text-\\[\\#0F172A\\]:hover {\n --tw-text-opacity: 1;\n color: rgb(15 23 42 / var(--tw-text-opacity, 1));\n}\n.hover\\:text-accent-foreground:hover {\n color: hsl(var(--accent-foreground));\n}\n.hover\\:text-destructive:hover {\n color: hsl(var(--destructive));\n}\n.hover\\:text-foreground:hover {\n color: hsl(var(--foreground));\n}\n.hover\\:text-slate-900:hover {\n --tw-text-opacity: 1;\n color: rgb(15 23 42 / var(--tw-text-opacity, 1));\n}\n.hover\\:underline:hover {\n text-decoration-line: underline;\n}\n.hover\\:opacity-80:hover {\n opacity: 0.8;\n}\n.hover\\:shadow-lg:hover {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-md:hover {\n --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-xl:hover {\n --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.hover\\:shadow-blue-600\\/30:hover {\n --tw-shadow-color: rgb(37 99 235 / 0.3);\n --tw-shadow: var(--tw-shadow-colored);\n}\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:ring-primary:focus {\n --tw-ring-color: hsl(var(--primary));\n}\n.focus\\:ring-primary\\/20:focus {\n --tw-ring-color: hsl(var(--primary) / 0.2);\n}\n.focus\\:ring-ring:focus {\n --tw-ring-color: hsl(var(--ring));\n}\n.focus\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:border-primary:focus-visible {\n border-color: hsl(var(--primary));\n}\n.focus-visible\\:outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus-visible\\:ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:ring-inset:focus-visible {\n --tw-ring-inset: inset;\n}\n.focus-visible\\:ring-primary\\/20:focus-visible {\n --tw-ring-color: hsl(var(--primary) / 0.2);\n}\n.focus-visible\\:ring-primary\\/50:focus-visible {\n --tw-ring-color: hsl(var(--primary) / 0.5);\n}\n.focus-visible\\:ring-ring:focus-visible {\n --tw-ring-color: hsl(var(--ring));\n}\n.focus-visible\\:ring-offset-2:focus-visible {\n --tw-ring-offset-width: 2px;\n}\n.active\\:translate-y-0:active {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:translate-y-px:active {\n --tw-translate-y: 1px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:shadow-sm:active {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.disabled\\:pointer-events-none:disabled {\n pointer-events: none;\n}\n.disabled\\:cursor-not-allowed:disabled {\n cursor: not-allowed;\n}\n.disabled\\:opacity-50:disabled {\n opacity: 0.5;\n}\n.group\\/tooltip:hover .group-hover\\/tooltip\\:visible {\n visibility: visible;\n}\n.group:hover .group-hover\\:bg-primary\\/10 {\n background-color: hsl(var(--primary) / 0.1);\n}\n.group:hover .group-hover\\:text-primary {\n color: hsl(var(--primary));\n}\n.group\\/tooltip:hover .group-hover\\/tooltip\\:opacity-100 {\n opacity: 1;\n}\n.group:hover .group-hover\\:opacity-100 {\n opacity: 1;\n}\n.peer:disabled ~ .peer-disabled\\:cursor-not-allowed {\n cursor: not-allowed;\n}\n.peer:disabled ~ .peer-disabled\\:opacity-70 {\n opacity: 0.7;\n}\n.dark\\:divide-slate-700:is(.dark *) > :not([hidden]) ~ :not([hidden]) {\n --tw-divide-opacity: 1;\n border-color: rgb(51 65 85 / var(--tw-divide-opacity, 1));\n}\n.dark\\:divide-slate-700\\/60:is(.dark *) > :not([hidden]) ~ :not([hidden]) {\n border-color: rgb(51 65 85 / 0.6);\n}\n.dark\\:border-blue-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(30 64 175 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-blue-900\\/50:is(.dark *) {\n border-color: rgb(30 58 138 / 0.5);\n}\n.dark\\:border-green-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(22 101 52 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-purple-900\\/50:is(.dark *) {\n border-color: rgb(88 28 135 / 0.5);\n}\n.dark\\:border-red-900\\/50:is(.dark *) {\n border-color: rgb(127 29 29 / 0.5);\n}\n.dark\\:border-slate-700:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(51 65 85 / var(--tw-border-opacity, 1));\n}\n.dark\\:border-yellow-800:is(.dark *) {\n --tw-border-opacity: 1;\n border-color: rgb(133 77 14 / var(--tw-border-opacity, 1));\n}\n.dark\\:bg-amber-500\\/20:is(.dark *) {\n background-color: rgb(245 158 11 / 0.2);\n}\n.dark\\:bg-amber-900\\/30:is(.dark *) {\n background-color: rgb(120 53 15 / 0.3);\n}\n.dark\\:bg-blue-500\\/20:is(.dark *) {\n background-color: rgb(59 130 246 / 0.2);\n}\n.dark\\:bg-blue-900\\/30:is(.dark *) {\n background-color: rgb(30 58 138 / 0.3);\n}\n.dark\\:bg-emerald-500\\/20:is(.dark *) {\n background-color: rgb(16 185 129 / 0.2);\n}\n.dark\\:bg-emerald-600:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-emerald-900\\/30:is(.dark *) {\n background-color: rgb(6 78 59 / 0.3);\n}\n.dark\\:bg-gray-800:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-green-900\\/30:is(.dark *) {\n background-color: rgb(20 83 45 / 0.3);\n}\n.dark\\:bg-primary\\/15:is(.dark *) {\n background-color: hsl(var(--primary) / 0.15);\n}\n.dark\\:bg-primary\\/20:is(.dark *) {\n background-color: hsl(var(--primary) / 0.2);\n}\n.dark\\:bg-purple-900\\/30:is(.dark *) {\n background-color: rgb(88 28 135 / 0.3);\n}\n.dark\\:bg-red-500\\/20:is(.dark *) {\n background-color: rgb(239 68 68 / 0.2);\n}\n.dark\\:bg-red-900\\/30:is(.dark *) {\n background-color: rgb(127 29 29 / 0.3);\n}\n.dark\\:bg-slate-600:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(71 85 105 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-slate-700\\/80:is(.dark *) {\n background-color: rgb(51 65 85 / 0.8);\n}\n.dark\\:bg-slate-800:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-slate-800\\/50:is(.dark *) {\n background-color: rgb(30 41 59 / 0.5);\n}\n.dark\\:bg-slate-800\\/70:is(.dark *) {\n background-color: rgb(30 41 59 / 0.7);\n}\n.dark\\:bg-slate-800\\/80:is(.dark *) {\n background-color: rgb(30 41 59 / 0.8);\n}\n.dark\\:bg-slate-900:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));\n}\n.dark\\:bg-yellow-900\\/30:is(.dark *) {\n background-color: rgb(113 63 18 / 0.3);\n}\n.dark\\:text-amber-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(251 191 36 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-blue-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-emerald-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(52 211 153 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-gray-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(156 163 175 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-green-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(74 222 128 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-primary:is(.dark *) {\n color: hsl(var(--primary));\n}\n.dark\\:text-purple-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(192 132 252 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-red-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-slate-200:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(226 232 240 / var(--tw-text-opacity, 1));\n}\n.dark\\:text-yellow-400:is(.dark *) {\n --tw-text-opacity: 1;\n color: rgb(250 204 21 / var(--tw-text-opacity, 1));\n}\n.dark\\:hover\\:bg-emerald-700:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(4 120 87 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-slate-700\\/30:hover:is(.dark *) {\n background-color: rgb(51 65 85 / 0.3);\n}\n.dark\\:hover\\:bg-slate-800:hover:is(.dark *) {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));\n}\n.dark\\:hover\\:bg-slate-800\\/50:hover:is(.dark *) {\n background-color: rgb(30 41 59 / 0.5);\n}\n@media (min-width: 640px) {\n .sm\\:ml-2 {\n margin-left: 0.5rem;\n }\n .sm\\:block {\n display: block;\n }\n .sm\\:flex {\n display: flex;\n }\n .sm\\:h-5 {\n height: 1.25rem;\n }\n .sm\\:w-5 {\n width: 1.25rem;\n }\n .sm\\:w-56 {\n width: 14rem;\n }\n .sm\\:flex-row {\n flex-direction: row;\n }\n .sm\\:items-center {\n align-items: center;\n }\n .sm\\:justify-between {\n justify-content: space-between;\n }\n .sm\\:gap-2 {\n gap: 0.5rem;\n }\n .sm\\:pl-3 {\n padding-left: 0.75rem;\n }\n}\n@media (min-width: 768px) {\n .md\\:block {\n display: block;\n }\n .md\\:flex {\n display: flex;\n }\n .md\\:hidden {\n display: none;\n }\n .md\\:h-16 {\n height: 4rem;\n }\n .md\\:h-32 {\n height: 8rem;\n }\n .md\\:w-16 {\n width: 4rem;\n }\n .md\\:w-32 {\n width: 8rem;\n }\n .md\\:text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n }\n .md\\:text-9xl {\n font-size: 8rem;\n line-height: 1;\n }\n}\n@media (min-width: 1024px) {\n .lg\\:block {\n display: block;\n }\n .lg\\:flex {\n display: flex;\n }\n .lg\\:hidden {\n display: none;\n }\n .lg\\:h-5 {\n height: 1.25rem;\n }\n .lg\\:w-5 {\n width: 1.25rem;\n }\n .lg\\:flex-row {\n flex-direction: row;\n }\n .lg\\:p-12 {\n padding: 3rem;\n }\n .lg\\:p-8 {\n padding: 2rem;\n }\n .lg\\:px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n }\n .lg\\:pl-\\[260px\\] {\n padding-left: 260px;\n }\n .lg\\:pl-\\[72px\\] {\n padding-left: 72px;\n }\n .lg\\:text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n }\n .lg\\:text-\\[28px\\] {\n font-size: 28px;\n }\n}\n.\\[\\&\\>svg\\]\\:h-full > svg {\n height: 100%;\n}\n.\\[\\&\\>svg\\]\\:w-full > svg {\n width: 100%;\n}\n');
4821
4849
  // Annotate the CommonJS export names for ESM import in node:
4822
4850
  0 && (module.exports = {
4823
4851
  AccessDenied,