@kwik-id/sdk-web 0.1.0-alpha.7 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -33144,7 +33144,10 @@ class FaceDetector {
33144
33144
  return window;
33145
33145
  }
33146
33146
  try {
33147
- const module2 = await import("@mediapipe/face_mesh");
33147
+ const module2 = await import(
33148
+ /* webpackIgnore: true */
33149
+ "@mediapipe/face_mesh"
33150
+ );
33148
33151
  return module2;
33149
33152
  } catch {
33150
33153
  return new Promise((resolve, reject) => {
@@ -34320,6 +34323,7 @@ class KwikIdSDK {
34320
34323
  // Org details from session
34321
34324
  orgName;
34322
34325
  orgLogoUrl;
34326
+ allowedDocumentTypes;
34323
34327
  // Results
34324
34328
  lastQualityResult = null;
34325
34329
  lastFaceDetection = null;
@@ -34375,6 +34379,7 @@ class KwikIdSDK {
34375
34379
  const sessionResponse = await this.apiClient.validateSession(this.config.clientSecret);
34376
34380
  this.orgName = sessionResponse.orgName;
34377
34381
  this.orgLogoUrl = sessionResponse.orgLogoUrl;
34382
+ this.allowedDocumentTypes = sessionResponse.config?.documentTypes;
34378
34383
  this.log("Session validated:", sessionResponse);
34379
34384
  await this.faceDetector.initialize();
34380
34385
  this.activeLiveness = new ActiveLivenessDetector(this.faceDetector, this.camera, {
@@ -34392,7 +34397,11 @@ class KwikIdSDK {
34392
34397
  * Get organization info from the session
34393
34398
  */
34394
34399
  getOrgInfo() {
34395
- return { orgName: this.orgName, orgLogoUrl: this.orgLogoUrl };
34400
+ return {
34401
+ orgName: this.orgName,
34402
+ orgLogoUrl: this.orgLogoUrl,
34403
+ documentTypes: this.allowedDocumentTypes
34404
+ };
34396
34405
  }
34397
34406
  // ============================================
34398
34407
  // Camera Operations
@@ -35216,6 +35225,17 @@ function hexToHSL(hex2) {
35216
35225
  const lPercent = Math.round(l * 100);
35217
35226
  return `${h2} ${s}% ${lPercent}%`;
35218
35227
  }
35228
+ function hexLuminance(hex2) {
35229
+ hex2 = hex2.replace("#", "");
35230
+ const r2 = parseInt(hex2.substring(0, 2), 16) / 255;
35231
+ const g = parseInt(hex2.substring(2, 4), 16) / 255;
35232
+ const b = parseInt(hex2.substring(4, 6), 16) / 255;
35233
+ const toLinear = (c) => c <= 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);
35234
+ return 0.2126 * toLinear(r2) + 0.7152 * toLinear(g) + 0.0722 * toLinear(b);
35235
+ }
35236
+ function contrastingForeground(hex2) {
35237
+ return hexLuminance(hex2) > 0.4 ? "222 47% 11%" : "0 0% 100%";
35238
+ }
35219
35239
  const KwikIDContext = reactExports.createContext(void 0);
35220
35240
  const useKwikID = () => {
35221
35241
  const context = reactExports.useContext(KwikIDContext);
@@ -35234,32 +35254,47 @@ const KwikIDProvider = ({
35234
35254
  const [isSDKReady, setIsSDKReady] = reactExports.useState(false);
35235
35255
  const [orgName, setOrgName] = reactExports.useState(void 0);
35236
35256
  const [orgLogoUrl, setOrgLogoUrl] = reactExports.useState(void 0);
35257
+ const [allowedDocumentTypes, setAllowedDocumentTypes] = reactExports.useState(
35258
+ void 0
35259
+ );
35237
35260
  const [qualityResult, setQualityResult] = reactExports.useState(null);
35238
35261
  const [detectedFace, setDetectedFace] = reactExports.useState(null);
35239
35262
  const [alignmentResult, setAlignmentResult] = reactExports.useState(null);
35240
35263
  const [livenessResult, setLivenessResult] = reactExports.useState(null);
35241
35264
  reactExports.useEffect(() => {
35242
- if (config.theme) {
35243
- const root = document.documentElement;
35265
+ if (!config.theme) return;
35266
+ const targets = document.querySelectorAll("[data-kwik-id]");
35267
+ if (targets.length === 0) return;
35268
+ const applyTo = (el) => {
35244
35269
  if (config.theme.primary) {
35245
35270
  const hslValue = hexToHSL(config.theme.primary);
35246
- root.style.setProperty("--primary", hslValue);
35247
- root.style.setProperty("--primary-foreground", "0 0% 100%");
35271
+ el.style.setProperty("--primary", hslValue);
35272
+ el.style.setProperty(
35273
+ "--primary-foreground",
35274
+ contrastingForeground(config.theme.primary)
35275
+ );
35248
35276
  }
35249
35277
  if (config.theme.accent) {
35250
35278
  const hslValue = hexToHSL(config.theme.accent);
35251
- root.style.setProperty("--accent", hslValue);
35252
- root.style.setProperty("--accent-foreground", "222 47% 11%");
35279
+ el.style.setProperty("--accent", hslValue);
35280
+ el.style.setProperty(
35281
+ "--accent-foreground",
35282
+ contrastingForeground(config.theme.accent)
35283
+ );
35253
35284
  }
35254
35285
  if (config.theme.background) {
35255
35286
  const hslValue = hexToHSL(config.theme.background);
35256
- root.style.setProperty("--background", hslValue);
35287
+ el.style.setProperty("--background", hslValue);
35257
35288
  }
35258
35289
  if (config.theme.foreground) {
35259
35290
  const hslValue = hexToHSL(config.theme.foreground);
35260
- root.style.setProperty("--foreground", hslValue);
35291
+ el.style.setProperty("--foreground", hslValue);
35261
35292
  }
35262
- }
35293
+ if (config.theme.fontFamily) {
35294
+ el.style.fontFamily = config.theme.fontFamily;
35295
+ }
35296
+ };
35297
+ targets.forEach(applyTo);
35263
35298
  }, [config.theme]);
35264
35299
  const initializeSDK = reactExports.useCallback(
35265
35300
  async (secret) => {
@@ -35274,6 +35309,7 @@ const KwikIDProvider = ({
35274
35309
  const orgInfo = sdkRef.current.getOrgInfo();
35275
35310
  setOrgName(orgInfo.orgName);
35276
35311
  setOrgLogoUrl(orgInfo.orgLogoUrl);
35312
+ setAllowedDocumentTypes(orgInfo.documentTypes);
35277
35313
  setIsSDKReady(true);
35278
35314
  } catch (error) {
35279
35315
  console.error("SDK initialization error:", error);
@@ -35376,6 +35412,7 @@ const KwikIDProvider = ({
35376
35412
  isSDKReady,
35377
35413
  orgName,
35378
35414
  orgLogoUrl,
35415
+ allowedDocumentTypes,
35379
35416
  qualityResult,
35380
35417
  detectedFace,
35381
35418
  alignmentResult,
@@ -35393,6 +35430,7 @@ const KwikIDProvider = ({
35393
35430
  isSDKReady,
35394
35431
  orgName,
35395
35432
  orgLogoUrl,
35433
+ allowedDocumentTypes,
35396
35434
  qualityResult,
35397
35435
  detectedFace,
35398
35436
  alignmentResult,
@@ -38241,18 +38279,18 @@ const MotionConfigContext = reactExports.createContext({
38241
38279
  isStatic: false,
38242
38280
  reducedMotion: "never"
38243
38281
  });
38244
- function setRef$2(ref, value2) {
38282
+ function setRef$3(ref, value2) {
38245
38283
  if (typeof ref === "function") {
38246
38284
  return ref(value2);
38247
38285
  } else if (ref !== null && ref !== void 0) {
38248
38286
  ref.current = value2;
38249
38287
  }
38250
38288
  }
38251
- function composeRefs$2(...refs) {
38289
+ function composeRefs$3(...refs) {
38252
38290
  return (node) => {
38253
38291
  let hasCleanup = false;
38254
38292
  const cleanups = refs.map((ref) => {
38255
- const cleanup = setRef$2(ref, node);
38293
+ const cleanup = setRef$3(ref, node);
38256
38294
  if (!hasCleanup && typeof cleanup === "function") {
38257
38295
  hasCleanup = true;
38258
38296
  }
@@ -38265,7 +38303,7 @@ function composeRefs$2(...refs) {
38265
38303
  if (typeof cleanup === "function") {
38266
38304
  cleanup();
38267
38305
  } else {
38268
- setRef$2(refs[i], null);
38306
+ setRef$3(refs[i], null);
38269
38307
  }
38270
38308
  }
38271
38309
  };
@@ -38273,7 +38311,7 @@ function composeRefs$2(...refs) {
38273
38311
  };
38274
38312
  }
38275
38313
  function useComposedRefs$2(...refs) {
38276
- return reactExports.useCallback(composeRefs$2(...refs), refs);
38314
+ return reactExports.useCallback(composeRefs$3(...refs), refs);
38277
38315
  }
38278
38316
  class PopChildMeasure extends reactExports.Component {
38279
38317
  getSnapshotBeforeUpdate(prevProps) {
@@ -42916,18 +42954,18 @@ const createLucideIcon = (iconName, iconNode) => {
42916
42954
  * This source code is licensed under the ISC license.
42917
42955
  * See the LICENSE file in the root directory of this source tree.
42918
42956
  */
42919
- const __iconNode$s = [
42957
+ const __iconNode$t = [
42920
42958
  ["path", { d: "m12 19-7-7 7-7", key: "1l729n" }],
42921
42959
  ["path", { d: "M19 12H5", key: "x3x0zl" }]
42922
42960
  ];
42923
- const ArrowLeft = createLucideIcon("arrow-left", __iconNode$s);
42961
+ const ArrowLeft = createLucideIcon("arrow-left", __iconNode$t);
42924
42962
  /**
42925
42963
  * @license lucide-react v0.545.0 - ISC
42926
42964
  *
42927
42965
  * This source code is licensed under the ISC license.
42928
42966
  * See the LICENSE file in the root directory of this source tree.
42929
42967
  */
42930
- const __iconNode$r = [
42968
+ const __iconNode$s = [
42931
42969
  ["path", { d: "M12 7v14", key: "1akyts" }],
42932
42970
  [
42933
42971
  "path",
@@ -42937,14 +42975,14 @@ const __iconNode$r = [
42937
42975
  }
42938
42976
  ]
42939
42977
  ];
42940
- const BookOpen = createLucideIcon("book-open", __iconNode$r);
42978
+ const BookOpen = createLucideIcon("book-open", __iconNode$s);
42941
42979
  /**
42942
42980
  * @license lucide-react v0.545.0 - ISC
42943
42981
  *
42944
42982
  * This source code is licensed under the ISC license.
42945
42983
  * See the LICENSE file in the root directory of this source tree.
42946
42984
  */
42947
- const __iconNode$q = [
42985
+ const __iconNode$r = [
42948
42986
  [
42949
42987
  "path",
42950
42988
  {
@@ -42954,69 +42992,80 @@ const __iconNode$q = [
42954
42992
  ],
42955
42993
  ["circle", { cx: "12", cy: "13", r: "3", key: "1vg3eu" }]
42956
42994
  ];
42957
- const Camera = createLucideIcon("camera", __iconNode$q);
42995
+ const Camera = createLucideIcon("camera", __iconNode$r);
42958
42996
  /**
42959
42997
  * @license lucide-react v0.545.0 - ISC
42960
42998
  *
42961
42999
  * This source code is licensed under the ISC license.
42962
43000
  * See the LICENSE file in the root directory of this source tree.
42963
43001
  */
42964
- const __iconNode$p = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
42965
- const Check = createLucideIcon("check", __iconNode$p);
43002
+ const __iconNode$q = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
43003
+ const Check = createLucideIcon("check", __iconNode$q);
42966
43004
  /**
42967
43005
  * @license lucide-react v0.545.0 - ISC
42968
43006
  *
42969
43007
  * This source code is licensed under the ISC license.
42970
43008
  * See the LICENSE file in the root directory of this source tree.
42971
43009
  */
42972
- const __iconNode$o = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
42973
- const ChevronRight = createLucideIcon("chevron-right", __iconNode$o);
43010
+ const __iconNode$p = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
43011
+ const ChevronRight = createLucideIcon("chevron-right", __iconNode$p);
42974
43012
  /**
42975
43013
  * @license lucide-react v0.545.0 - ISC
42976
43014
  *
42977
43015
  * This source code is licensed under the ISC license.
42978
43016
  * See the LICENSE file in the root directory of this source tree.
42979
43017
  */
42980
- const __iconNode$n = [
43018
+ const __iconNode$o = [
42981
43019
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
42982
43020
  ["line", { x1: "12", x2: "12", y1: "8", y2: "12", key: "1pkeuh" }],
42983
43021
  ["line", { x1: "12", x2: "12.01", y1: "16", y2: "16", key: "4dfq90" }]
42984
43022
  ];
42985
- const CircleAlert = createLucideIcon("circle-alert", __iconNode$n);
43023
+ const CircleAlert = createLucideIcon("circle-alert", __iconNode$o);
42986
43024
  /**
42987
43025
  * @license lucide-react v0.545.0 - ISC
42988
43026
  *
42989
43027
  * This source code is licensed under the ISC license.
42990
43028
  * See the LICENSE file in the root directory of this source tree.
42991
43029
  */
42992
- const __iconNode$m = [
43030
+ const __iconNode$n = [
42993
43031
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
42994
43032
  ["path", { d: "m9 12 2 2 4-4", key: "dzmm74" }]
42995
43033
  ];
42996
- const CircleCheck = createLucideIcon("circle-check", __iconNode$m);
43034
+ const CircleCheck = createLucideIcon("circle-check", __iconNode$n);
42997
43035
  /**
42998
43036
  * @license lucide-react v0.545.0 - ISC
42999
43037
  *
43000
43038
  * This source code is licensed under the ISC license.
43001
43039
  * See the LICENSE file in the root directory of this source tree.
43002
43040
  */
43003
- const __iconNode$l = [
43041
+ const __iconNode$m = [
43004
43042
  ["path", { d: "M21.801 10A10 10 0 1 1 17 3.335", key: "yps3ct" }],
43005
43043
  ["path", { d: "m9 11 3 3L22 4", key: "1pflzl" }]
43006
43044
  ];
43007
- const CircleCheckBig = createLucideIcon("circle-check-big", __iconNode$l);
43045
+ const CircleCheckBig = createLucideIcon("circle-check-big", __iconNode$m);
43008
43046
  /**
43009
43047
  * @license lucide-react v0.545.0 - ISC
43010
43048
  *
43011
43049
  * This source code is licensed under the ISC license.
43012
43050
  * See the LICENSE file in the root directory of this source tree.
43013
43051
  */
43014
- const __iconNode$k = [
43052
+ const __iconNode$l = [
43015
43053
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
43016
43054
  ["path", { d: "m15 9-6 6", key: "1uzhvr" }],
43017
43055
  ["path", { d: "m9 9 6 6", key: "z0biqf" }]
43018
43056
  ];
43019
- const CircleX = createLucideIcon("circle-x", __iconNode$k);
43057
+ const CircleX = createLucideIcon("circle-x", __iconNode$l);
43058
+ /**
43059
+ * @license lucide-react v0.545.0 - ISC
43060
+ *
43061
+ * This source code is licensed under the ISC license.
43062
+ * See the LICENSE file in the root directory of this source tree.
43063
+ */
43064
+ const __iconNode$k = [
43065
+ ["path", { d: "M12 6v6l4 2", key: "mmk7yg" }],
43066
+ ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]
43067
+ ];
43068
+ const Clock = createLucideIcon("clock", __iconNode$k);
43020
43069
  /**
43021
43070
  * @license lucide-react v0.545.0 - ISC
43022
43071
  *
@@ -45770,11 +45819,11 @@ const KwikIDBranding = () => {
45770
45819
  /* @__PURE__ */ jsxRuntimeExports.jsx(
45771
45820
  "a",
45772
45821
  {
45773
- href: "https://kwiknkap.com",
45822
+ href: "https://identity.kwiknkap.com",
45774
45823
  target: "_blank",
45775
45824
  rel: "noopener noreferrer",
45776
45825
  className: "text-primary hover:text-primary/80 transition-colors font-medium",
45777
- children: "Kwik Nkap"
45826
+ children: "Kwik ID"
45778
45827
  }
45779
45828
  )
45780
45829
  ] })
@@ -45859,18 +45908,18 @@ function composeContextScopes(...scopes) {
45859
45908
  createScope.scopeName = baseScope.scopeName;
45860
45909
  return createScope;
45861
45910
  }
45862
- function setRef$1(ref, value2) {
45911
+ function setRef$2(ref, value2) {
45863
45912
  if (typeof ref === "function") {
45864
45913
  return ref(value2);
45865
45914
  } else if (ref !== null && ref !== void 0) {
45866
45915
  ref.current = value2;
45867
45916
  }
45868
45917
  }
45869
- function composeRefs$1(...refs) {
45918
+ function composeRefs$2(...refs) {
45870
45919
  return (node) => {
45871
45920
  let hasCleanup = false;
45872
45921
  const cleanups = refs.map((ref) => {
45873
- const cleanup = setRef$1(ref, node);
45922
+ const cleanup = setRef$2(ref, node);
45874
45923
  if (!hasCleanup && typeof cleanup == "function") {
45875
45924
  hasCleanup = true;
45876
45925
  }
@@ -45883,7 +45932,7 @@ function composeRefs$1(...refs) {
45883
45932
  if (typeof cleanup == "function") {
45884
45933
  cleanup();
45885
45934
  } else {
45886
- setRef$1(refs[i], null);
45935
+ setRef$2(refs[i], null);
45887
45936
  }
45888
45937
  }
45889
45938
  };
@@ -45891,15 +45940,15 @@ function composeRefs$1(...refs) {
45891
45940
  };
45892
45941
  }
45893
45942
  function useComposedRefs$1(...refs) {
45894
- return reactExports.useCallback(composeRefs$1(...refs), refs);
45943
+ return reactExports.useCallback(composeRefs$2(...refs), refs);
45895
45944
  }
45896
45945
  // @__NO_SIDE_EFFECTS__
45897
- function createSlot(ownerName) {
45898
- const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);
45946
+ function createSlot$1(ownerName) {
45947
+ const SlotClone = /* @__PURE__ */ createSlotClone$1(ownerName);
45899
45948
  const Slot2 = reactExports.forwardRef((props, forwardedRef) => {
45900
45949
  const { children, ...slotProps } = props;
45901
45950
  const childrenArray = reactExports.Children.toArray(children);
45902
- const slottable = childrenArray.find(isSlottable);
45951
+ const slottable = childrenArray.find(isSlottable$1);
45903
45952
  if (slottable) {
45904
45953
  const newElement = slottable.props.children;
45905
45954
  const newChildren = childrenArray.map((child) => {
@@ -45917,16 +45966,15 @@ function createSlot(ownerName) {
45917
45966
  Slot2.displayName = `${ownerName}.Slot`;
45918
45967
  return Slot2;
45919
45968
  }
45920
- var Slot$1 = /* @__PURE__ */ createSlot("Slot");
45921
45969
  // @__NO_SIDE_EFFECTS__
45922
- function createSlotClone(ownerName) {
45970
+ function createSlotClone$1(ownerName) {
45923
45971
  const SlotClone = reactExports.forwardRef((props, forwardedRef) => {
45924
45972
  const { children, ...slotProps } = props;
45925
45973
  if (reactExports.isValidElement(children)) {
45926
- const childrenRef = getElementRef$1(children);
45927
- const props2 = mergeProps(slotProps, children.props);
45974
+ const childrenRef = getElementRef$2(children);
45975
+ const props2 = mergeProps$1(slotProps, children.props);
45928
45976
  if (children.type !== reactExports.Fragment) {
45929
- props2.ref = forwardedRef ? composeRefs$1(forwardedRef, childrenRef) : childrenRef;
45977
+ props2.ref = forwardedRef ? composeRefs$2(forwardedRef, childrenRef) : childrenRef;
45930
45978
  }
45931
45979
  return reactExports.cloneElement(children, props2);
45932
45980
  }
@@ -45935,11 +45983,11 @@ function createSlotClone(ownerName) {
45935
45983
  SlotClone.displayName = `${ownerName}.SlotClone`;
45936
45984
  return SlotClone;
45937
45985
  }
45938
- var SLOTTABLE_IDENTIFIER = Symbol("radix.slottable");
45939
- function isSlottable(child) {
45940
- return reactExports.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
45986
+ var SLOTTABLE_IDENTIFIER$1 = Symbol("radix.slottable");
45987
+ function isSlottable$1(child) {
45988
+ return reactExports.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER$1;
45941
45989
  }
45942
- function mergeProps(slotProps, childProps) {
45990
+ function mergeProps$1(slotProps, childProps) {
45943
45991
  const overrideProps = { ...childProps };
45944
45992
  for (const propName in childProps) {
45945
45993
  const slotPropValue = slotProps[propName];
@@ -45963,7 +46011,7 @@ function mergeProps(slotProps, childProps) {
45963
46011
  }
45964
46012
  return { ...slotProps, ...overrideProps };
45965
46013
  }
45966
- function getElementRef$1(element) {
46014
+ function getElementRef$2(element) {
45967
46015
  let getter = Object.getOwnPropertyDescriptor(element.props, "ref")?.get;
45968
46016
  let mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
45969
46017
  if (mayWarn) {
@@ -46007,7 +46055,7 @@ var NODES = [
46007
46055
  "ul"
46008
46056
  ];
46009
46057
  var Primitive = NODES.reduce((primitive, node) => {
46010
- const Slot2 = /* @__PURE__ */ createSlot(`Primitive.${node}`);
46058
+ const Slot2 = /* @__PURE__ */ createSlot$1(`Primitive.${node}`);
46011
46059
  const Node2 = reactExports.forwardRef((props, forwardedRef) => {
46012
46060
  const { asChild, ...primitiveProps } = props;
46013
46061
  const Comp = asChild ? Slot2 : node;
@@ -46032,7 +46080,7 @@ var Presence = (props) => {
46032
46080
  const { present, children } = props;
46033
46081
  const presence = usePresence(present);
46034
46082
  const child = typeof children === "function" ? children({ present: presence.isPresent }) : reactExports.Children.only(children);
46035
- const ref = useComposedRefs$1(presence.ref, getElementRef(child));
46083
+ const ref = useComposedRefs$1(presence.ref, getElementRef$1(child));
46036
46084
  const forceMount = typeof children === "function";
46037
46085
  return forceMount || presence.isPresent ? reactExports.cloneElement(child, { ref }) : null;
46038
46086
  };
@@ -46131,7 +46179,7 @@ function usePresence(present) {
46131
46179
  function getAnimationName(styles2) {
46132
46180
  return styles2?.animationName || "none";
46133
46181
  }
46134
- function getElementRef(element) {
46182
+ function getElementRef$1(element) {
46135
46183
  let getter = Object.getOwnPropertyDescriptor(element.props, "ref")?.get;
46136
46184
  let mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
46137
46185
  if (mayWarn) {
@@ -50367,7 +50415,7 @@ var DialogOverlay = reactExports.forwardRef(
50367
50415
  }
50368
50416
  );
50369
50417
  DialogOverlay.displayName = OVERLAY_NAME;
50370
- var Slot = /* @__PURE__ */ createSlot("DialogOverlay.RemoveScroll");
50418
+ var Slot$1 = /* @__PURE__ */ createSlot$1("DialogOverlay.RemoveScroll");
50371
50419
  var DialogOverlayImpl = reactExports.forwardRef(
50372
50420
  (props, forwardedRef) => {
50373
50421
  const { __scopeDialog, ...overlayProps } = props;
@@ -50375,7 +50423,7 @@ var DialogOverlayImpl = reactExports.forwardRef(
50375
50423
  return (
50376
50424
  // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`
50377
50425
  // ie. when `Overlay` and `Content` are siblings
50378
- /* @__PURE__ */ jsxRuntimeExports.jsx(ReactRemoveScroll, { as: Slot, allowPinchZoom: true, shards: [context.contentRef], children: /* @__PURE__ */ jsxRuntimeExports.jsx(
50426
+ /* @__PURE__ */ jsxRuntimeExports.jsx(ReactRemoveScroll, { as: Slot$1, allowPinchZoom: true, shards: [context.contentRef], children: /* @__PURE__ */ jsxRuntimeExports.jsx(
50379
50427
  Primitive.div,
50380
50428
  {
50381
50429
  "data-state": getState(context.open),
@@ -50583,6 +50631,120 @@ var DescriptionWarning = ({ contentRef, descriptionId }) => {
50583
50631
  };
50584
50632
  var Overlay$1 = DialogOverlay;
50585
50633
  var Content$1 = DialogContent;
50634
+ function setRef$1(ref, value2) {
50635
+ if (typeof ref === "function") {
50636
+ return ref(value2);
50637
+ } else if (ref !== null && ref !== void 0) {
50638
+ ref.current = value2;
50639
+ }
50640
+ }
50641
+ function composeRefs$1(...refs) {
50642
+ return (node) => {
50643
+ let hasCleanup = false;
50644
+ const cleanups = refs.map((ref) => {
50645
+ const cleanup = setRef$1(ref, node);
50646
+ if (!hasCleanup && typeof cleanup == "function") {
50647
+ hasCleanup = true;
50648
+ }
50649
+ return cleanup;
50650
+ });
50651
+ if (hasCleanup) {
50652
+ return () => {
50653
+ for (let i = 0; i < cleanups.length; i++) {
50654
+ const cleanup = cleanups[i];
50655
+ if (typeof cleanup == "function") {
50656
+ cleanup();
50657
+ } else {
50658
+ setRef$1(refs[i], null);
50659
+ }
50660
+ }
50661
+ };
50662
+ }
50663
+ };
50664
+ }
50665
+ // @__NO_SIDE_EFFECTS__
50666
+ function createSlot(ownerName) {
50667
+ const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);
50668
+ const Slot2 = reactExports.forwardRef((props, forwardedRef) => {
50669
+ const { children, ...slotProps } = props;
50670
+ const childrenArray = reactExports.Children.toArray(children);
50671
+ const slottable = childrenArray.find(isSlottable);
50672
+ if (slottable) {
50673
+ const newElement = slottable.props.children;
50674
+ const newChildren = childrenArray.map((child) => {
50675
+ if (child === slottable) {
50676
+ if (reactExports.Children.count(newElement) > 1) return reactExports.Children.only(null);
50677
+ return reactExports.isValidElement(newElement) ? newElement.props.children : null;
50678
+ } else {
50679
+ return child;
50680
+ }
50681
+ });
50682
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: reactExports.isValidElement(newElement) ? reactExports.cloneElement(newElement, void 0, newChildren) : null });
50683
+ }
50684
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });
50685
+ });
50686
+ Slot2.displayName = `${ownerName}.Slot`;
50687
+ return Slot2;
50688
+ }
50689
+ var Slot = /* @__PURE__ */ createSlot("Slot");
50690
+ // @__NO_SIDE_EFFECTS__
50691
+ function createSlotClone(ownerName) {
50692
+ const SlotClone = reactExports.forwardRef((props, forwardedRef) => {
50693
+ const { children, ...slotProps } = props;
50694
+ if (reactExports.isValidElement(children)) {
50695
+ const childrenRef = getElementRef(children);
50696
+ const props2 = mergeProps(slotProps, children.props);
50697
+ if (children.type !== reactExports.Fragment) {
50698
+ props2.ref = forwardedRef ? composeRefs$1(forwardedRef, childrenRef) : childrenRef;
50699
+ }
50700
+ return reactExports.cloneElement(children, props2);
50701
+ }
50702
+ return reactExports.Children.count(children) > 1 ? reactExports.Children.only(null) : null;
50703
+ });
50704
+ SlotClone.displayName = `${ownerName}.SlotClone`;
50705
+ return SlotClone;
50706
+ }
50707
+ var SLOTTABLE_IDENTIFIER = Symbol("radix.slottable");
50708
+ function isSlottable(child) {
50709
+ return reactExports.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
50710
+ }
50711
+ function mergeProps(slotProps, childProps) {
50712
+ const overrideProps = { ...childProps };
50713
+ for (const propName in childProps) {
50714
+ const slotPropValue = slotProps[propName];
50715
+ const childPropValue = childProps[propName];
50716
+ const isHandler = /^on[A-Z]/.test(propName);
50717
+ if (isHandler) {
50718
+ if (slotPropValue && childPropValue) {
50719
+ overrideProps[propName] = (...args) => {
50720
+ const result = childPropValue(...args);
50721
+ slotPropValue(...args);
50722
+ return result;
50723
+ };
50724
+ } else if (slotPropValue) {
50725
+ overrideProps[propName] = slotPropValue;
50726
+ }
50727
+ } else if (propName === "style") {
50728
+ overrideProps[propName] = { ...slotPropValue, ...childPropValue };
50729
+ } else if (propName === "className") {
50730
+ overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(" ");
50731
+ }
50732
+ }
50733
+ return { ...slotProps, ...overrideProps };
50734
+ }
50735
+ function getElementRef(element) {
50736
+ let getter = Object.getOwnPropertyDescriptor(element.props, "ref")?.get;
50737
+ let mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
50738
+ if (mayWarn) {
50739
+ return element.ref;
50740
+ }
50741
+ getter = Object.getOwnPropertyDescriptor(element, "ref")?.get;
50742
+ mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
50743
+ if (mayWarn) {
50744
+ return element.props.ref;
50745
+ }
50746
+ return element.props.ref || element.ref;
50747
+ }
50586
50748
  const falsyToString = (value2) => typeof value2 === "boolean" ? `${value2}` : value2 === 0 ? "0" : value2;
50587
50749
  const cx = clsx;
50588
50750
  const cva = (base, config) => (props) => {
@@ -50655,7 +50817,7 @@ function Button({
50655
50817
  asChild = false,
50656
50818
  ...props
50657
50819
  }) {
50658
- const Comp = asChild ? Slot$1 : "button";
50820
+ const Comp = asChild ? Slot : "button";
50659
50821
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
50660
50822
  Comp,
50661
50823
  {
@@ -53710,7 +53872,22 @@ const DOCUMENT_OPTIONS = [
53710
53872
  icon: Vote
53711
53873
  }
53712
53874
  ];
53713
- function DocumentTypeSelection({ selectedType, onSelect }) {
53875
+ function useAutoSelect(options2, onSelect) {
53876
+ const fired = reactExports.useRef(false);
53877
+ reactExports.useEffect(() => {
53878
+ if (options2.length === 1 && !fired.current) {
53879
+ fired.current = true;
53880
+ onSelect(options2[0].value);
53881
+ }
53882
+ }, [options2, onSelect]);
53883
+ }
53884
+ function DocumentTypeSelection({
53885
+ selectedType,
53886
+ onSelect,
53887
+ allowedTypes
53888
+ }) {
53889
+ const filteredOptions = allowedTypes ? DOCUMENT_OPTIONS.filter((opt) => allowedTypes.includes(opt.value)) : DOCUMENT_OPTIONS;
53890
+ useAutoSelect(filteredOptions, onSelect);
53714
53891
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
53715
53892
  motion.div,
53716
53893
  {
@@ -53724,7 +53901,7 @@ function DocumentTypeSelection({ selectedType, onSelect }) {
53724
53901
  /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { className: "text-xl md:text-2xl font-semibold text-foreground", children: "Select Your Document Type" }),
53725
53902
  /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-sm text-muted-foreground", children: "Choose the type of ID you want to verify" })
53726
53903
  ] }),
53727
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 gap-3 pt-2", children: DOCUMENT_OPTIONS.map((option, index2) => {
53904
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid grid-cols-1 gap-3 pt-2", children: filteredOptions.map((option, index2) => {
53728
53905
  const Icon2 = option.icon;
53729
53906
  const isSelected = selectedType === option.value;
53730
53907
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
@@ -71338,7 +71515,7 @@ function VerificationStep({
71338
71515
  {
71339
71516
  animate: { rotate: 360 },
71340
71517
  transition: { duration: 2, repeat: Infinity, ease: "linear" },
71341
- className: "w-16 h-16 rounded-full border-4 border-primary/20 border-t-primary"
71518
+ className: "w-16 h-16 rounded-full border-4 border-blue-200 border-t-blue-600"
71342
71519
  }
71343
71520
  ),
71344
71521
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "text-center space-y-2", children: [
@@ -71370,7 +71547,7 @@ function VerificationStep({
71370
71547
  animate: { opacity: isActive || isCompleted ? 1 : 0.4 },
71371
71548
  className: "flex items-center gap-3 p-3 rounded-lg bg-secondary/50",
71372
71549
  children: [
71373
- isCompleted ? /* @__PURE__ */ jsxRuntimeExports.jsx(CircleCheck, { className: "w-4 h-4 text-green-600" }) : isActive ? /* @__PURE__ */ jsxRuntimeExports.jsx(LoaderCircle, { className: "w-4 h-4 text-primary animate-spin" }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-4 h-4 rounded-full border-2 border-muted-foreground/30" }),
71550
+ isCompleted ? /* @__PURE__ */ jsxRuntimeExports.jsx(CircleCheck, { className: "w-4 h-4 text-green-600" }) : isActive ? /* @__PURE__ */ jsxRuntimeExports.jsx(LoaderCircle, { className: "w-4 h-4 text-blue-600 animate-spin" }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-4 h-4 rounded-full border-2 border-muted-foreground/30" }),
71374
71551
  /* @__PURE__ */ jsxRuntimeExports.jsx(
71375
71552
  "span",
71376
71553
  {
@@ -71388,6 +71565,7 @@ function VerificationStep({
71388
71565
  );
71389
71566
  }
71390
71567
  const isSuccess = result.success;
71568
+ const isSessionExpired = result.errorCode === "SESSION_EXPIRED";
71391
71569
  const contextualFailureMessage = !isSuccess && result.errorDetails ? `${result.errorDetails.document === "front" ? "Front" : "Back"} document failed${result.errorDetails.errorMessage ? `: ${result.errorDetails.errorMessage}` : " quality check"}` : result.message;
71392
71570
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
71393
71571
  motion.div,
@@ -71412,6 +71590,14 @@ function VerificationStep({
71412
71590
  transition: { delay: 0.3, type: "spring", stiffness: 200, damping: 15 },
71413
71591
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(BsFileEarmarkCheck, { className: "w-12 h-12 text-green-600" })
71414
71592
  }
71593
+ ) }) : isSessionExpired ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-20 h-20 rounded-full bg-amber-500/10 flex items-center justify-center", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
71594
+ motion.div,
71595
+ {
71596
+ initial: { scale: 0 },
71597
+ animate: { scale: 1 },
71598
+ transition: { delay: 0.3, type: "spring", stiffness: 200, damping: 15 },
71599
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(Clock, { className: "w-12 h-12 text-amber-600", strokeWidth: 2.5 })
71600
+ }
71415
71601
  ) }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-20 h-20 rounded-full bg-destructive/10 flex items-center justify-center", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
71416
71602
  motion.div,
71417
71603
  {
@@ -71431,7 +71617,7 @@ function VerificationStep({
71431
71617
  transition: { delay: 0.4 },
71432
71618
  className: "text-center space-y-1",
71433
71619
  children: [
71434
- /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { className: "text-xl font-semibold text-foreground", children: isSuccess ? "Submitted for Review" : "Submission Failed" }),
71620
+ /* @__PURE__ */ jsxRuntimeExports.jsx("h2", { className: "text-xl font-semibold text-foreground", children: isSuccess ? "Submitted for Review" : isSessionExpired ? "Session Expired" : "Submission Failed" }),
71435
71621
  /* @__PURE__ */ jsxRuntimeExports.jsx("p", { className: "text-muted-foreground max-w-md mx-auto", children: isSuccess ? "Preliminary checks passed. Your documents have been submitted for full review — we'll notify you once complete." : contextualFailureMessage })
71436
71622
  ]
71437
71623
  }
@@ -71491,7 +71677,7 @@ function VerificationStep({
71491
71677
  animate: { opacity: 1, y: 0 },
71492
71678
  transition: { delay: 0.7 },
71493
71679
  className: "space-y-3",
71494
- children: isSuccess ? /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: onComplete, className: "w-full h-12", size: "lg", children: "Done" }) : /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex gap-3", children: [
71680
+ children: isSuccess ? /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: onComplete, className: "w-full h-12", size: "lg", children: "Done" }) : isSessionExpired ? /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: onComplete, className: "w-full h-12", size: "lg", children: "Close" }) : /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex gap-3", children: [
71495
71681
  /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { variant: "outline", onClick: onComplete, className: "flex-1 h-12", children: "Cancel" }),
71496
71682
  /* @__PURE__ */ jsxRuntimeExports.jsxs(Button, { onClick: onRetry, className: "flex-1 h-12", children: [
71497
71683
  /* @__PURE__ */ jsxRuntimeExports.jsx(RefreshCw, { className: "w-4 h-4 mr-2" }),
@@ -71500,7 +71686,7 @@ function VerificationStep({
71500
71686
  ] })
71501
71687
  }
71502
71688
  ),
71503
- !isSuccess && /* @__PURE__ */ jsxRuntimeExports.jsxs(
71689
+ !isSuccess && !isSessionExpired && /* @__PURE__ */ jsxRuntimeExports.jsxs(
71504
71690
  motion.div,
71505
71691
  {
71506
71692
  initial: { opacity: 0 },
@@ -71677,9 +71863,14 @@ function KYCModalFlow({ isOpen, onClose, onComplete }) {
71677
71863
  goToNextStep();
71678
71864
  } catch (error) {
71679
71865
  const errorMessage = error.message || "An error occurred during submission";
71866
+ const isSessionError = errorMessage.toLowerCase().includes("session") && (errorMessage.toLowerCase().includes("expired") || errorMessage.toLowerCase().includes("invalid") || errorMessage.toLowerCase().includes("validate"));
71867
+ if (isSessionError && config.onError) {
71868
+ config.onError(new Error("SESSION_EXPIRED"));
71869
+ }
71680
71870
  const result = {
71681
71871
  success: false,
71682
- message: errorMessage
71872
+ message: isSessionError ? "Your verification session has expired. Please close and start a new verification." : errorMessage,
71873
+ errorCode: isSessionError ? "SESSION_EXPIRED" : void 0
71683
71874
  };
71684
71875
  setVerificationResult(result);
71685
71876
  goToNextStep();
@@ -71756,285 +71947,293 @@ function KYCModalFlow({ isOpen, onClose, onComplete }) {
71756
71947
  opacity: 0
71757
71948
  })
71758
71949
  };
71759
- return /* @__PURE__ */ jsxRuntimeExports.jsx(AnimatePresence, { children: isOpen && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "fixed inset-0 z-[1099] flex items-center justify-center", children: [
71760
- /* @__PURE__ */ jsxRuntimeExports.jsx(
71761
- motion.div,
71762
- {
71763
- initial: { opacity: 0 },
71764
- animate: { opacity: 1 },
71765
- exit: { opacity: 0 },
71766
- transition: { duration: 0.3 },
71767
- className: "absolute inset-0 bg-black/60 backdrop-blur-sm",
71768
- onClick: handleClose
71769
- }
71770
- ),
71771
- /* @__PURE__ */ jsxRuntimeExports.jsxs(
71772
- motion.div,
71773
- {
71774
- initial: { opacity: 0, scale: 0.95 },
71775
- animate: { opacity: 1, scale: 1 },
71776
- exit: { opacity: 0, scale: 0.95 },
71777
- transition: { duration: 0.3, ease: [0.4, 0, 0.2, 1] },
71778
- className: "relative w-full md:max-w-[500px] h-full md:max-h-[900px] md:mx-4 bg-background md:rounded-3xl shadow-2xl overflow-hidden flex flex-col",
71779
- onClick: (e) => e.stopPropagation(),
71780
- children: [
71781
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex-shrink-0 px-2 md:px-6 pt-2 pb-2 border-b border-border/50", children: [
71782
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-between", children: [
71783
- canGoBack && /* @__PURE__ */ jsxRuntimeExports.jsx(
71784
- motion.button,
71785
- {
71786
- initial: { opacity: 0, x: -10 },
71787
- animate: { opacity: 1, x: 0 },
71788
- onClick: goToPreviousStep,
71789
- className: "w-10 h-10 rounded-full flex items-center justify-center hover:bg-secondary/80 transition-colors",
71790
- "aria-label": "Go back",
71791
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(ArrowLeft, { className: "w-5 h-5 text-foreground" })
71792
- }
71793
- ),
71794
- !canGoBack && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-10" }),
71795
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2", children: [
71796
- config.showLogo !== false && (config.orgLogoUrl ? /* @__PURE__ */ jsxRuntimeExports.jsx(
71797
- "img",
71798
- {
71799
- src: config.orgLogoUrl,
71800
- alt: config.appName || config.orgName || "",
71801
- className: "w-8 h-8 rounded-lg object-cover flex-shrink-0"
71802
- }
71803
- ) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-8 h-8 rounded-lg bg-primary flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-primary-foreground font-bold text-sm", children: (config.appName || config.orgName || "K").charAt(0).toUpperCase() }) })),
71804
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col leading-none", children: [
71805
- (config.appName || config.orgName) && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] text-muted-foreground font-medium", children: config.appName || config.orgName }),
71806
- /* @__PURE__ */ jsxRuntimeExports.jsx("h1", { className: "text-base font-semibold text-foreground", children: "Identity Verification" })
71807
- ] })
71808
- ] }),
71809
- canClose && /* @__PURE__ */ jsxRuntimeExports.jsx(
71810
- motion.button,
71811
- {
71812
- whileHover: { scale: 1.05 },
71813
- whileTap: { scale: 0.95 },
71814
- onClick: handleClose,
71815
- className: "w-10 h-10 rounded-full flex items-center justify-center hover:bg-secondary/80 transition-colors",
71816
- "aria-label": "Close",
71817
- children: /* @__PURE__ */ jsxRuntimeExports.jsx(X, { className: "w-5 h-5 text-muted-foreground" })
71818
- }
71819
- ),
71820
- !canClose && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-10" })
71821
- ] }),
71822
- showProgressBar && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-full mt-2 h-1.5 bg-secondary rounded-full overflow-hidden", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
71823
- motion.div,
71824
- {
71825
- className: "h-full bg-primary",
71826
- initial: { width: 0 },
71827
- animate: { width: `${getProgress()}%` },
71828
- transition: { duration: 0.4, ease: [0.4, 0, 0.2, 1] }
71829
- }
71830
- ) })
71831
- ] }),
71832
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1 overflow-hidden relative bg-background", children: /* @__PURE__ */ jsxRuntimeExports.jsx(AnimatePresence, { mode: "popLayout", custom: direction, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
71833
- motion.div,
71834
- {
71835
- custom: direction,
71836
- variants: slideVariants,
71837
- initial: "enter",
71838
- animate: "center",
71839
- exit: "exit",
71840
- transition: {
71841
- x: { duration: 0.3, ease: [0.4, 0, 0.2, 1] },
71842
- opacity: { duration: 0.2, ease: "easeInOut" }
71843
- },
71844
- className: "absolute inset-0 overflow-y-auto bg-background flex flex-col",
71845
- children: [
71846
- /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "px-4 md:px-6 py-4 md:py-6 flex-1", children: [
71847
- currentSubStep === "intro" && /* @__PURE__ */ jsxRuntimeExports.jsx(IntroStep, { onNext: goToNextStep }),
71848
- currentSubStep === "handoff-choice" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71849
- HandoffChoiceView,
71850
- {
71851
- onContinueDesktop: () => {
71852
- setDirection("forward");
71853
- setCurrentSubStep("document-type");
71854
- },
71855
- onSwitchToMobile: async () => {
71856
- setDirection("forward");
71857
- setCurrentSubStep("handoff-waiting");
71858
- try {
71859
- await initiateHandoff();
71860
- } catch {
71861
- setCurrentSubStep("document-type");
71862
- }
71863
- }
71864
- }
71865
- ),
71866
- currentSubStep === "handoff-waiting" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71867
- HandoffQRView,
71868
- {
71869
- handoffState,
71870
- onCancel: async () => {
71871
- await cancelHandoff();
71872
- setDirection("backward");
71873
- setCurrentSubStep("handoff-choice");
71874
- },
71875
- onRetry: async () => {
71876
- try {
71877
- await initiateHandoff();
71878
- } catch {
71879
- }
71880
- },
71881
- onComplete: () => {
71882
- setVerificationResult({
71883
- success: true,
71884
- message: "Your documents have been submitted from your phone!"
71885
- });
71886
- setDirection("forward");
71887
- setCurrentSubStep("result");
71888
- }
71889
- }
71890
- ),
71891
- currentSubStep === "document-type" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71892
- DocumentTypeSelection,
71893
- {
71894
- selectedType: documentData.documentType,
71895
- onSelect: (type) => {
71896
- setDocumentData({
71897
- ...documentData,
71898
- documentType: type
71899
- });
71900
- goToNextStep();
71901
- }
71902
- }
71903
- ),
71904
- currentSubStep === "prepare-front" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71905
- PrepareIDFront,
71906
- {
71907
- documentType: documentData.documentType,
71908
- onNext: goToNextStep
71909
- }
71910
- ),
71911
- currentSubStep === "camera-front" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71912
- CameraCapture,
71913
- {
71914
- type: "document-front",
71915
- documentType: documentData.documentType,
71916
- onCapture: (file, preview) => {
71917
- setDocumentData({
71918
- ...documentData,
71919
- frontImage: file
71920
- });
71921
- setFrontPreview(preview);
71922
- goToNextStep();
71923
- },
71924
- onCancel: goToPreviousStep
71925
- }
71926
- ),
71927
- currentSubStep === "confirm-front" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71928
- PhotoConfirmation,
71929
- {
71930
- type: "document-front",
71931
- preview: frontPreview,
71932
- onConfirm: goToNextStep,
71933
- onRetake: () => {
71934
- setDocumentData({
71935
- ...documentData,
71936
- frontImage: null
71937
- });
71938
- setFrontPreview(null);
71939
- setCurrentSubStep("camera-front");
71940
- }
71941
- }
71942
- ),
71943
- currentSubStep === "prepare-back" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71944
- PrepareIDBack,
71945
- {
71946
- documentType: documentData.documentType,
71947
- onNext: goToNextStep
71948
- }
71949
- ),
71950
- currentSubStep === "camera-back" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71951
- CameraCapture,
71952
- {
71953
- type: "document-back",
71954
- documentType: documentData.documentType,
71955
- onCapture: (file, preview) => {
71956
- setDocumentData({
71957
- ...documentData,
71958
- backImage: file
71959
- });
71960
- setBackPreview(preview);
71961
- goToNextStep();
71962
- },
71963
- onCancel: goToPreviousStep
71964
- }
71965
- ),
71966
- currentSubStep === "confirm-back" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71967
- PhotoConfirmation,
71968
- {
71969
- type: "document-back",
71970
- preview: backPreview,
71971
- onConfirm: goToNextStep,
71972
- onRetake: () => {
71973
- setDocumentData({
71974
- ...documentData,
71975
- backImage: null
71976
- });
71977
- setBackPreview(null);
71978
- setCurrentSubStep("camera-back");
71979
- }
71980
- }
71981
- ),
71982
- currentSubStep === "prepare-selfie" && /* @__PURE__ */ jsxRuntimeExports.jsx(PrepareSelfie, { onNext: goToNextStep }),
71983
- currentSubStep === "camera-selfie" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71984
- CameraCapture,
71950
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(AnimatePresence, { children: isOpen && /* @__PURE__ */ jsxRuntimeExports.jsxs(
71951
+ "div",
71952
+ {
71953
+ "data-kwik-id": "modal",
71954
+ className: "fixed inset-0 z-[1099] flex items-center justify-center",
71955
+ children: [
71956
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
71957
+ motion.div,
71958
+ {
71959
+ initial: { opacity: 0 },
71960
+ animate: { opacity: 1 },
71961
+ exit: { opacity: 0 },
71962
+ transition: { duration: 0.3 },
71963
+ className: "absolute inset-0 bg-black/60 backdrop-blur-sm",
71964
+ onClick: config.closeOnBackdropClick ? handleClose : void 0
71965
+ }
71966
+ ),
71967
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(
71968
+ motion.div,
71969
+ {
71970
+ initial: { opacity: 0, scale: 0.95 },
71971
+ animate: { opacity: 1, scale: 1 },
71972
+ exit: { opacity: 0, scale: 0.95 },
71973
+ transition: { duration: 0.3, ease: [0.4, 0, 0.2, 1] },
71974
+ className: "relative w-full md:max-w-[500px] h-full md:max-h-[900px] md:mx-4 bg-background md:rounded-3xl shadow-2xl overflow-hidden flex flex-col",
71975
+ onClick: (e) => e.stopPropagation(),
71976
+ children: [
71977
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex-shrink-0 px-2 md:px-6 pt-2 pb-2 border-b border-border/50", children: [
71978
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center justify-between", children: [
71979
+ canGoBack && /* @__PURE__ */ jsxRuntimeExports.jsx(
71980
+ motion.button,
71985
71981
  {
71986
- type: "selfie",
71987
- onCapture: (file, preview) => {
71988
- setSelfieData({ ...selfieData, image: file });
71989
- setSelfiePreview(preview);
71990
- goToNextStep();
71991
- },
71992
- onCancel: goToPreviousStep
71982
+ initial: { opacity: 0, x: -10 },
71983
+ animate: { opacity: 1, x: 0 },
71984
+ onClick: goToPreviousStep,
71985
+ className: "w-10 h-10 rounded-full flex items-center justify-center hover:bg-secondary/80 transition-colors",
71986
+ "aria-label": "Go back",
71987
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(ArrowLeft, { className: "w-5 h-5 text-foreground" })
71993
71988
  }
71994
71989
  ),
71995
- currentSubStep === "confirm-selfie" && /* @__PURE__ */ jsxRuntimeExports.jsx(
71996
- SelfieConfirmation,
71997
- {
71998
- preview: selfiePreview,
71999
- onConfirm: goToNextStep,
72000
- onRetake: () => {
72001
- setSelfieData({ ...selfieData, image: null });
72002
- setSelfiePreview(null);
72003
- setCurrentSubStep("camera-selfie");
71990
+ !canGoBack && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-10" }),
71991
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex items-center gap-2", children: [
71992
+ config.showLogo !== false && (config.orgLogoUrl ? /* @__PURE__ */ jsxRuntimeExports.jsx(
71993
+ "img",
71994
+ {
71995
+ src: config.orgLogoUrl,
71996
+ alt: config.appName || config.orgName || "",
71997
+ className: "w-8 h-8 rounded-lg object-cover flex-shrink-0"
72004
71998
  }
72005
- }
72006
- ),
72007
- currentSubStep === "processing" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72008
- VerificationStep,
71999
+ ) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-8 h-8 rounded-lg bg-primary flex items-center justify-center flex-shrink-0", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-primary-foreground font-bold text-sm", children: (config.appName || config.orgName || "K").charAt(0).toUpperCase() }) })),
72000
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex flex-col leading-none", children: [
72001
+ (config.appName || config.orgName) && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "text-[11px] text-muted-foreground font-medium", children: config.appName || config.orgName }),
72002
+ /* @__PURE__ */ jsxRuntimeExports.jsx("h1", { className: "text-base font-semibold text-foreground", children: "Identity Verification" })
72003
+ ] })
72004
+ ] }),
72005
+ canClose && /* @__PURE__ */ jsxRuntimeExports.jsx(
72006
+ motion.button,
72009
72007
  {
72010
- result: null,
72011
- onRetry: () => {
72012
- },
72013
- onComplete: () => {
72014
- },
72015
- progress: uploadProgress,
72016
- stage: uploadStage
72008
+ whileHover: { scale: 1.05 },
72009
+ whileTap: { scale: 0.95 },
72010
+ onClick: handleClose,
72011
+ className: "w-10 h-10 rounded-full flex items-center justify-center hover:bg-secondary/80 transition-colors",
72012
+ "aria-label": "Close",
72013
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(X, { className: "w-5 h-5 text-muted-foreground" })
72017
72014
  }
72018
72015
  ),
72019
- currentSubStep === "result" && verificationResult && /* @__PURE__ */ jsxRuntimeExports.jsx(
72020
- VerificationStep,
72021
- {
72022
- result: verificationResult,
72023
- onRetry: handleRetry,
72024
- onComplete: handleComplete
72025
- }
72026
- )
72016
+ !canClose && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-10" })
72027
72017
  ] }),
72028
- /* @__PURE__ */ jsxRuntimeExports.jsx(KwikIDBranding, {}),
72029
- /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "h-safe-bottom bg-background" })
72030
- ]
72031
- },
72032
- currentSubStep
72033
- ) }) })
72034
- ]
72035
- }
72036
- )
72037
- ] }) });
72018
+ showProgressBar && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "w-full mt-2 h-1.5 bg-secondary rounded-full overflow-hidden", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
72019
+ motion.div,
72020
+ {
72021
+ className: "h-full bg-primary",
72022
+ initial: { width: 0 },
72023
+ animate: { width: `${getProgress()}%` },
72024
+ transition: { duration: 0.4, ease: [0.4, 0, 0.2, 1] }
72025
+ }
72026
+ ) })
72027
+ ] }),
72028
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex-1 overflow-hidden relative bg-background", children: /* @__PURE__ */ jsxRuntimeExports.jsx(AnimatePresence, { mode: "popLayout", custom: direction, children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
72029
+ motion.div,
72030
+ {
72031
+ custom: direction,
72032
+ variants: slideVariants,
72033
+ initial: "enter",
72034
+ animate: "center",
72035
+ exit: "exit",
72036
+ transition: {
72037
+ x: { duration: 0.3, ease: [0.4, 0, 0.2, 1] },
72038
+ opacity: { duration: 0.2, ease: "easeInOut" }
72039
+ },
72040
+ className: "absolute inset-0 overflow-y-auto bg-background flex flex-col",
72041
+ children: [
72042
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "px-4 md:px-6 py-4 md:py-6 flex-1", children: [
72043
+ currentSubStep === "intro" && /* @__PURE__ */ jsxRuntimeExports.jsx(IntroStep, { onNext: goToNextStep }),
72044
+ currentSubStep === "handoff-choice" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72045
+ HandoffChoiceView,
72046
+ {
72047
+ onContinueDesktop: () => {
72048
+ setDirection("forward");
72049
+ setCurrentSubStep("document-type");
72050
+ },
72051
+ onSwitchToMobile: async () => {
72052
+ setDirection("forward");
72053
+ setCurrentSubStep("handoff-waiting");
72054
+ try {
72055
+ await initiateHandoff();
72056
+ } catch {
72057
+ setCurrentSubStep("document-type");
72058
+ }
72059
+ }
72060
+ }
72061
+ ),
72062
+ currentSubStep === "handoff-waiting" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72063
+ HandoffQRView,
72064
+ {
72065
+ handoffState,
72066
+ onCancel: async () => {
72067
+ await cancelHandoff();
72068
+ setDirection("backward");
72069
+ setCurrentSubStep("handoff-choice");
72070
+ },
72071
+ onRetry: async () => {
72072
+ try {
72073
+ await initiateHandoff();
72074
+ } catch {
72075
+ }
72076
+ },
72077
+ onComplete: () => {
72078
+ setVerificationResult({
72079
+ success: true,
72080
+ message: "Your documents have been submitted from your phone!"
72081
+ });
72082
+ setDirection("forward");
72083
+ setCurrentSubStep("result");
72084
+ }
72085
+ }
72086
+ ),
72087
+ currentSubStep === "document-type" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72088
+ DocumentTypeSelection,
72089
+ {
72090
+ selectedType: documentData.documentType,
72091
+ allowedTypes: config.allowedDocumentTypes,
72092
+ onSelect: (type) => {
72093
+ setDocumentData({
72094
+ ...documentData,
72095
+ documentType: type
72096
+ });
72097
+ goToNextStep();
72098
+ }
72099
+ }
72100
+ ),
72101
+ currentSubStep === "prepare-front" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72102
+ PrepareIDFront,
72103
+ {
72104
+ documentType: documentData.documentType,
72105
+ onNext: goToNextStep
72106
+ }
72107
+ ),
72108
+ currentSubStep === "camera-front" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72109
+ CameraCapture,
72110
+ {
72111
+ type: "document-front",
72112
+ documentType: documentData.documentType,
72113
+ onCapture: (file, preview) => {
72114
+ setDocumentData({
72115
+ ...documentData,
72116
+ frontImage: file
72117
+ });
72118
+ setFrontPreview(preview);
72119
+ goToNextStep();
72120
+ },
72121
+ onCancel: goToPreviousStep
72122
+ }
72123
+ ),
72124
+ currentSubStep === "confirm-front" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72125
+ PhotoConfirmation,
72126
+ {
72127
+ type: "document-front",
72128
+ preview: frontPreview,
72129
+ onConfirm: goToNextStep,
72130
+ onRetake: () => {
72131
+ setDocumentData({
72132
+ ...documentData,
72133
+ frontImage: null
72134
+ });
72135
+ setFrontPreview(null);
72136
+ setCurrentSubStep("camera-front");
72137
+ }
72138
+ }
72139
+ ),
72140
+ currentSubStep === "prepare-back" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72141
+ PrepareIDBack,
72142
+ {
72143
+ documentType: documentData.documentType,
72144
+ onNext: goToNextStep
72145
+ }
72146
+ ),
72147
+ currentSubStep === "camera-back" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72148
+ CameraCapture,
72149
+ {
72150
+ type: "document-back",
72151
+ documentType: documentData.documentType,
72152
+ onCapture: (file, preview) => {
72153
+ setDocumentData({
72154
+ ...documentData,
72155
+ backImage: file
72156
+ });
72157
+ setBackPreview(preview);
72158
+ goToNextStep();
72159
+ },
72160
+ onCancel: goToPreviousStep
72161
+ }
72162
+ ),
72163
+ currentSubStep === "confirm-back" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72164
+ PhotoConfirmation,
72165
+ {
72166
+ type: "document-back",
72167
+ preview: backPreview,
72168
+ onConfirm: goToNextStep,
72169
+ onRetake: () => {
72170
+ setDocumentData({
72171
+ ...documentData,
72172
+ backImage: null
72173
+ });
72174
+ setBackPreview(null);
72175
+ setCurrentSubStep("camera-back");
72176
+ }
72177
+ }
72178
+ ),
72179
+ currentSubStep === "prepare-selfie" && /* @__PURE__ */ jsxRuntimeExports.jsx(PrepareSelfie, { onNext: goToNextStep }),
72180
+ currentSubStep === "camera-selfie" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72181
+ CameraCapture,
72182
+ {
72183
+ type: "selfie",
72184
+ onCapture: (file, preview) => {
72185
+ setSelfieData({ ...selfieData, image: file });
72186
+ setSelfiePreview(preview);
72187
+ goToNextStep();
72188
+ },
72189
+ onCancel: goToPreviousStep
72190
+ }
72191
+ ),
72192
+ currentSubStep === "confirm-selfie" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72193
+ SelfieConfirmation,
72194
+ {
72195
+ preview: selfiePreview,
72196
+ onConfirm: goToNextStep,
72197
+ onRetake: () => {
72198
+ setSelfieData({ ...selfieData, image: null });
72199
+ setSelfiePreview(null);
72200
+ setCurrentSubStep("camera-selfie");
72201
+ }
72202
+ }
72203
+ ),
72204
+ currentSubStep === "processing" && /* @__PURE__ */ jsxRuntimeExports.jsx(
72205
+ VerificationStep,
72206
+ {
72207
+ result: null,
72208
+ onRetry: () => {
72209
+ },
72210
+ onComplete: () => {
72211
+ },
72212
+ progress: uploadProgress,
72213
+ stage: uploadStage
72214
+ }
72215
+ ),
72216
+ currentSubStep === "result" && verificationResult && /* @__PURE__ */ jsxRuntimeExports.jsx(
72217
+ VerificationStep,
72218
+ {
72219
+ result: verificationResult,
72220
+ onRetry: handleRetry,
72221
+ onComplete: handleComplete
72222
+ }
72223
+ )
72224
+ ] }),
72225
+ /* @__PURE__ */ jsxRuntimeExports.jsx(KwikIDBranding, {}),
72226
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "h-safe-bottom bg-background" })
72227
+ ]
72228
+ },
72229
+ currentSubStep
72230
+ ) }) })
72231
+ ]
72232
+ }
72233
+ )
72234
+ ]
72235
+ }
72236
+ ) });
72038
72237
  }
72039
72238
  reactExports.createContext(void 0);
72040
72239
  function KYCForm() {
@@ -72171,7 +72370,7 @@ var canvasToBlob = { exports: {} };
72171
72370
  }
72172
72371
  })(window);
72173
72372
  })(canvasToBlob);
72174
- const styles = `@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*{border-color:hsl(var(--border))}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-x-4{left:1rem;right:1rem}.inset-y-0{top:0;bottom:0}.-bottom-0{bottom:-0px}.-bottom-0\\.5{bottom:-.125rem}.-bottom-1{bottom:-.25rem}.-bottom-12{bottom:-3rem}.-left-0{left:-0px}.-left-0\\.5{left:-.125rem}.-left-1{left:-.25rem}.-left-12{left:-3rem}.-right-0{right:-0px}.-right-0\\.5{right:-.125rem}.-right-1{right:-.25rem}.-right-12{right:-3rem}.-top-0{top:-0px}.-top-0\\.5{top:-.125rem}.-top-1{top:-.25rem}.-top-12{top:-3rem}.bottom-0{bottom:0}.bottom-3{bottom:.75rem}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.left-\\[30\\%\\]{left:30%}.left-\\[50\\%\\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.right-\\[30\\%\\]{right:30%}.top-0{top:0}.top-1{top:.25rem}.top-1\\.5{top:.375rem}.top-1\\/2{top:50%}.top-16{top:4rem}.top-2{top:.5rem}.top-3{top:.75rem}.top-3\\.5{top:.875rem}.top-4{top:1rem}.top-\\[1px\\]{top:1px}.top-\\[30\\%\\]{top:30%}.top-\\[50\\%\\]{top:50%}.top-\\[60\\%\\]{top:60%}.top-full{top:100%}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\\[1099\\]{z-index:1099}.z-\\[1\\]{z-index:1}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2 / span 2}.row-start-1{grid-row-start:1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-3\\.5{margin-left:.875rem;margin-right:.875rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-0\\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-ml-4{margin-left:-1rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-\\[28px\\]{margin-left:28px}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0{margin-top:0}.mt-0\\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.aspect-\\[1\\.586\\]{aspect-ratio:1.586}.aspect-\\[3\\/4\\]{aspect-ratio:3/4}.aspect-\\[4\\/3\\]{aspect-ratio:4/3}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.size-10{width:2.5rem;height:2.5rem}.size-2{width:.5rem;height:.5rem}.size-2\\.5{width:.625rem;height:.625rem}.size-3{width:.75rem;height:.75rem}.size-3\\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.size-full{width:100%;height:100%}.h-0{height:0px}.h-0\\.5{height:.125rem}.h-1{height:.25rem}.h-1\\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-\\[1\\.15rem\\]{height:1.15rem}.h-\\[240px\\]{height:240px}.h-\\[72\\%\\]{height:72%}.h-\\[var\\(--radix-navigation-menu-viewport-height\\)\\]{height:var(--radix-navigation-menu-viewport-height)}.h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\\[300px\\]{max-height:300px}.min-h-0{min-height:0px}.min-h-16{min-height:4rem}.min-h-4{min-height:1rem}.min-h-\\[500px\\]{min-height:500px}.min-h-svh{min-height:100svh}.w-0{width:0px}.w-0\\.5{width:.125rem}.w-1{width:.25rem}.w-1\\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\\.5{width:.625rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\\.5{width:.875rem}.w-3\\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\\[100px\\]{width:100px}.w-\\[240px\\]{width:240px}.w-\\[70\\%\\]{width:70%}.w-\\[88\\%\\]{width:88%}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-10{min-width:2.5rem}.min-w-5{min-width:1.25rem}.min-w-8{min-width:2rem}.min-w-9{min-width:2.25rem}.min-w-\\[12rem\\]{min-width:12rem}.min-w-\\[8rem\\]{min-width:8rem}.min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.max-w-2xl{max-width:42rem}.max-w-\\[120px\\]{max-width:120px}.max-w-\\[150px\\]{max-width:150px}.max-w-\\[190px\\]{max-width:190px}.max-w-\\[200px\\]{max-width:200px}.max-w-\\[calc\\(100\\%-2rem\\)\\]{max-width:calc(100% - 2rem)}.max-w-max{max-width:-moz-max-content;max-width:max-content}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-\\[2\\]{flex:2}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-px{--tw-translate-x: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\\[-50\\%\\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-px{--tw-translate-x: 1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0\\.5{--tw-translate-y: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1\\/2{--tw-translate-y: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[-50\\%\\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[calc\\(-50\\%_-_2px\\)\\]{--tw-translate-y: calc(-50% - 2px) ;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-\\[-1\\]{--tw-scale-x: -1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.scroll-py-1{scroll-padding-top:.25rem;scroll-padding-bottom:.25rem}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\\[0_1fr\\]{grid-template-columns:0 1fr}.grid-rows-\\[auto_auto\\]{grid-template-rows:auto auto}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-items-start{justify-items:start}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-1\\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-y-0{row-gap:0px}.gap-y-0\\.5{row-gap:.125rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.justify-self-end{justify-self:end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\\[2px\\]{border-radius:2px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[50\\%\\]{border-radius:50%}.rounded-\\[inherit\\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-bl{border-bottom-left-radius:.25rem}.rounded-bl-2xl{border-bottom-left-radius:1rem}.rounded-bl-xl{border-bottom-left-radius:.75rem}.rounded-br{border-bottom-right-radius:.25rem}.rounded-br-2xl{border-bottom-right-radius:1rem}.rounded-br-xl{border-bottom-right-radius:.75rem}.rounded-tl{border-top-left-radius:.25rem}.rounded-tl-2xl{border-top-left-radius:1rem}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.rounded-tl-xl{border-top-left-radius:.75rem}.rounded-tr{border-top-right-radius:.25rem}.rounded-tr-2xl{border-top-right-radius:1rem}.rounded-tr-xl{border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\\[1\\.5px\\]{border-width:1.5px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-r-4{border-right-width:4px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-t-4{border-top-width:4px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity))}.border-background{border-color:hsl(var(--background))}.border-blue-500\\/30{border-color:#3b82f64d}.border-border{border-color:hsl(var(--border))}.border-border\\/20{border-color:hsl(var(--border) / .2)}.border-border\\/50{border-color:hsl(var(--border) / .5)}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive\\/20{border-color:hsl(var(--destructive) / .2)}.border-green-400\\/30{border-color:#4ade804d}.border-green-500\\/20{border-color:#22c55e33}.border-input{border-color:hsl(var(--input))}.border-muted{border-color:hsl(var(--muted))}.border-muted-foreground\\/30{border-color:hsl(var(--muted-foreground) / .3)}.border-primary{border-color:hsl(var(--primary))}.border-primary-foreground{border-color:hsl(var(--primary-foreground))}.border-primary\\/20{border-color:hsl(var(--primary) / .2)}.border-primary\\/30{border-color:hsl(var(--primary) / .3)}.border-primary\\/40{border-color:hsl(var(--primary) / .4)}.border-primary\\/60{border-color:hsl(var(--primary) / .6)}.border-red-400\\/30{border-color:#f871714d}.border-transparent{border-color:transparent}.border-white\\/10{border-color:#ffffff1a}.border-white\\/30{border-color:#ffffff4d}.border-l-transparent{border-left-color:transparent}.border-t-primary{border-top-color:hsl(var(--primary))}.border-t-transparent{border-top-color:transparent}.bg-accent{background-color:hsl(var(--accent))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))}.bg-amber-600{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity))}.bg-background{background-color:hsl(var(--background))}.bg-background\\/95{background-color:hsl(var(--background) / .95)}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\\/50{background-color:#00000080}.bg-black\\/60{background-color:#0009}.bg-black\\/70{background-color:#000000b3}.bg-black\\/80{background-color:#000c}.bg-blue-500\\/5{background-color:#3b82f60d}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\\/10{background-color:hsl(var(--destructive) / .1)}.bg-destructive\\/5{background-color:hsl(var(--destructive) / .05)}.bg-foreground{background-color:hsl(var(--foreground))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))}.bg-green-500\\/10{background-color:#22c55e1a}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity))}.bg-green-600\\/90{background-color:#16a34ae6}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\\/50{background-color:hsl(var(--muted) / .5)}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary-foreground{background-color:hsl(var(--primary-foreground))}.bg-primary\\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\\/20{background-color:hsl(var(--primary) / .2)}.bg-primary\\/30{background-color:hsl(var(--primary) / .3)}.bg-primary\\/5{background-color:hsl(var(--primary) / .05)}.bg-primary\\/60{background-color:hsl(var(--primary) / .6)}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-500\\/90{background-color:#ef4444e6}.bg-secondary{background-color:hsl(var(--secondary))}.bg-secondary\\/30{background-color:hsl(var(--secondary) / .3)}.bg-secondary\\/50{background-color:hsl(var(--secondary) / .5)}.bg-secondary\\/85{background-color:hsl(var(--secondary) / .85)}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.bg-gradient-to-tl{background-image:linear-gradient(to top left,var(--tw-gradient-stops))}.from-accent{--tw-gradient-from: hsl(var(--accent)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--accent) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-black\\/60{--tw-gradient-from: rgb(0 0 0 / .6) var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary{--tw-gradient-from: hsl(var(--primary)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\\/10{--tw-gradient-from: hsl(var(--primary) / .1) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\\/5{--tw-gradient-from: hsl(var(--primary) / .05) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-secondary\\/50{--tw-gradient-from: hsl(var(--secondary) / .5) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--secondary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-black\\/0{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / 0) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary)) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\\/40{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .4) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\\/5{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .05) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\\/60{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .6) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-transparent{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-accent{--tw-gradient-to: hsl(var(--accent)) var(--tw-gradient-to-position)}.to-black\\/0{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position)}.to-primary{--tw-gradient-to: hsl(var(--primary)) var(--tw-gradient-to-position)}.to-primary\\/5{--tw-gradient-to: hsl(var(--primary) / .05) var(--tw-gradient-to-position)}.to-secondary\\/30{--tw-gradient-to: hsl(var(--secondary) / .3) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.fill-accent{fill:hsl(var(--accent))}.fill-current{fill:currentColor}.fill-green-500{fill:#22c55e}.fill-primary{fill:hsl(var(--primary))}.fill-primary\\/30{fill:hsl(var(--primary) / .3)}.fill-primary\\/50{fill:hsl(var(--primary) / .5)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-px{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-0{padding-left:0}.pl-0\\.5{padding-left:.125rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-2\\.5{padding-right:.625rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-0\\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\\[0\\.8rem\\]{font-size:.8rem}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-foreground{color:hsl(var(--foreground))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-muted-foreground\\/60{color:hsl(var(--muted-foreground) / .6)}.text-neutral-400{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-primary\\/60{color:hsl(var(--primary) / .6)}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-white\\/90{color:#ffffffe6}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-\\[0\\.07\\]{opacity:.07}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\[0_0_0_1px_hsl\\(var\\(--sidebar-border\\)\\)\\]{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\[0_0_0_9999px_rgba\\(0\\,0\\,0\\,0\\.7\\)\\]{--tw-shadow: 0 0 0 9999px rgba(0,0,0,.7);--tw-shadow-colored: 0 0 0 9999px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-primary\\/20{--tw-shadow-color: hsl(var(--primary) / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-primary\\/5{--tw-shadow-color: hsl(var(--primary) / .05);--tw-shadow: var(--tw-shadow-colored)}.shadow-primary\\/50{--tw-shadow-color: hsl(var(--primary) / .5);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-destructive{--tw-ring-color: hsl(var(--destructive))}.ring-ring\\/50{--tw-ring-color: hsl(var(--ring) / .5)}.ring-offset-2{--tw-ring-offset-width: 2px}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.\\!blur{--tw-blur: blur(8px) !important;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)!important}.blur{--tw-blur: blur(8px);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)}.blur-2xl{--tw-blur: blur(40px);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)}.blur-3xl{--tw-blur: blur(64px);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)}.grayscale{--tw-grayscale: grayscale(100%);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)}.filter{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)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);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)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[color\\,box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[left\\,right\\,width\\]{transition-property:left,right,width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[margin\\,opacity\\]{transition-property:margin,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[width\\,height\\,padding\\]{transition-property:width,height,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[width\\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-none{transition-property:none}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}:root{--background: 210 20% 98%;--foreground: 222 47% 11%;--card: 0 0% 100%;--card-foreground: 222 47% 11%;--popover: 0 0% 100%;--popover-foreground: 222 47% 11%;--primary: 221 83% 33%;--primary-foreground: 0 0% 100%;--secondary: 220 13% 96%;--secondary-foreground: 222 47% 11%;--muted: 210 20% 98%;--muted-foreground: 220 9% 46%;--accent: 43 96% 56%;--accent-foreground: 222 47% 11%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 100%;--border: 220 13% 91%;--input: 0 0% 100% / 0;--ring: 221 83% 33%;--radius: .5rem}.selection\\:bg-primary *::-moz-selection{background-color:hsl(var(--primary))}.selection\\:bg-primary *::selection{background-color:hsl(var(--primary))}.selection\\:text-primary-foreground *::-moz-selection{color:hsl(var(--primary-foreground))}.selection\\:text-primary-foreground *::selection{color:hsl(var(--primary-foreground))}.selection\\:bg-primary::-moz-selection{background-color:hsl(var(--primary))}.selection\\:bg-primary::selection{background-color:hsl(var(--primary))}.selection\\:text-primary-foreground::-moz-selection{color:hsl(var(--primary-foreground))}.selection\\:text-primary-foreground::selection{color:hsl(var(--primary-foreground))}.file\\:inline-flex::file-selector-button{display:inline-flex}.file\\:h-7::file-selector-button{height:1.75rem}.file\\:border-0::file-selector-button{border-width:0px}.file\\:bg-transparent::file-selector-button{background-color:transparent}.file\\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\\:font-medium::file-selector-button{font-weight:500}.file\\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:-inset-2:after{content:var(--tw-content);inset:-.5rem}.after\\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\\:left-1\\/2:after{content:var(--tw-content);left:50%}.after\\:w-1:after{content:var(--tw-content);width:.25rem}.after\\:w-\\[2px\\]:after{content:var(--tw-content);width:2px}.after\\:-translate-x-1\\/2:after{content:var(--tw-content);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.first\\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\\:border-l:first-child{border-left-width:1px}.last\\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.last\\:border-b-0:last-child{border-bottom-width:0px}.focus-within\\:relative:focus-within{position:relative}.focus-within\\:z-20:focus-within{z-index:20}.hover\\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\\:border-muted-foreground\\/30:hover{border-color:hsl(var(--muted-foreground) / .3)}.hover\\:border-primary\\/30:hover{border-color:hsl(var(--primary) / .3)}.hover\\:border-primary\\/50:hover{border-color:hsl(var(--primary) / .5)}.hover\\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\\:bg-background:hover{background-color:hsl(var(--background))}.hover\\:bg-destructive\\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.hover\\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\\:bg-muted\\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\\:bg-primary:hover{background-color:hsl(var(--primary))}.hover\\:bg-primary\\/10:hover{background-color:hsl(var(--primary) / .1)}.hover\\:bg-primary\\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\\:bg-secondary\\/50:hover{background-color:hsl(var(--secondary) / .5)}.hover\\:bg-secondary\\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\\:text-foreground:hover{color:hsl(var(--foreground))}.hover\\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\\:text-primary-foreground:hover{color:hsl(var(--primary-foreground))}.hover\\:text-primary\\/80:hover{color:hsl(var(--primary) / .8)}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-100:hover{opacity:1}.hover\\:shadow-\\[0_0_0_1px_hsl\\(var\\(--sidebar-accent\\)\\)\\]:hover{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\\:shadow-primary\\/10:hover{--tw-shadow-color: hsl(var(--primary) / .1);--tw-shadow: var(--tw-shadow-colored)}.hover\\:shadow-primary\\/20:hover{--tw-shadow-color: hsl(var(--primary) / .2);--tw-shadow: var(--tw-shadow-colored)}.hover\\:ring-4:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\\:z-10:focus{z-index:10}.focus\\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\\:bg-primary:focus{background-color:hsl(var(--primary))}.focus\\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\\:text-primary-foreground:focus{color:hsl(var(--primary-foreground))}.focus\\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\\:z-10:focus-visible{z-index:10}.focus-visible\\:border-ring:focus-visible{border-color:hsl(var(--ring))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\\:outline-1:focus-visible{outline-width:1px}.focus-visible\\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-4:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color: hsl(var(--destructive) / .2)}.focus-visible\\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color: hsl(var(--ring) / .5)}.focus-visible\\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}.group\\/menu-item:focus-within .group-focus-within\\/menu-item\\:opacity-100{opacity:1}.group:hover .group-hover\\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\\:border-primary\\/40{border-color:hsl(var(--primary) / .4)}.group:hover .group-hover\\:bg-primary\\/10{background-color:hsl(var(--primary) / .1)}.group:hover .group-hover\\:text-foreground{color:hsl(var(--foreground))}.group:hover .group-hover\\:text-primary{color:hsl(var(--primary))}.group:hover .group-hover\\:text-primary\\/80{color:hsl(var(--primary) / .8)}.group\\/menu-item:hover .group-hover\\/menu-item\\:opacity-100,.group:hover .group-hover\\:opacity-100{opacity:1}.group:hover .group-hover\\:opacity-\\[0\\.12\\]{opacity:.12}.peer:disabled~.peer-disabled\\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\\:opacity-50{opacity:.5}.has-\\[\\>svg\\]\\:grid-cols-\\[calc\\(var\\(--spacing\\)\\*4\\)_1fr\\]:has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr}.has-\\[\\>svg\\]\\:gap-x-3:has(>svg){-moz-column-gap:.75rem;column-gap:.75rem}.has-\\[\\>svg\\]\\:px-2\\.5:has(>svg){padding-left:.625rem;padding-right:.625rem}.has-\\[\\>svg\\]\\:px-3:has(>svg){padding-left:.75rem;padding-right:.75rem}.has-\\[\\>svg\\]\\:px-4:has(>svg){padding-left:1rem;padding-right:1rem}.aria-disabled\\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\\:bg-accent[aria-selected=true]{background-color:hsl(var(--accent))}.aria-selected\\:bg-primary[aria-selected=true]{background-color:hsl(var(--primary))}.aria-selected\\:text-accent-foreground[aria-selected=true]{color:hsl(var(--accent-foreground))}.aria-selected\\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.aria-selected\\:text-primary-foreground[aria-selected=true]{color:hsl(var(--primary-foreground))}.aria-selected\\:opacity-100[aria-selected=true]{opacity:1}.data-\\[disabled\\=true\\]\\:pointer-events-none[data-disabled=true],.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[vaul-drawer-direction\\=bottom\\]\\:inset-x-0[data-vaul-drawer-direction=bottom]{left:0;right:0}.data-\\[vaul-drawer-direction\\=left\\]\\:inset-y-0[data-vaul-drawer-direction=left],.data-\\[vaul-drawer-direction\\=right\\]\\:inset-y-0[data-vaul-drawer-direction=right]{top:0;bottom:0}.data-\\[vaul-drawer-direction\\=top\\]\\:inset-x-0[data-vaul-drawer-direction=top]{left:0;right:0}.data-\\[vaul-drawer-direction\\=bottom\\]\\:bottom-0[data-vaul-drawer-direction=bottom]{bottom:0}.data-\\[vaul-drawer-direction\\=left\\]\\:left-0[data-vaul-drawer-direction=left]{left:0}.data-\\[vaul-drawer-direction\\=right\\]\\:right-0[data-vaul-drawer-direction=right]{right:0}.data-\\[vaul-drawer-direction\\=top\\]\\:top-0[data-vaul-drawer-direction=top]{top:0}.data-\\[active\\=true\\]\\:z-10[data-active=true]{z-index:10}.data-\\[vaul-drawer-direction\\=bottom\\]\\:mt-24[data-vaul-drawer-direction=bottom]{margin-top:6rem}.data-\\[vaul-drawer-direction\\=top\\]\\:mb-24[data-vaul-drawer-direction=top]{margin-bottom:6rem}.data-\\[orientation\\=horizontal\\]\\:h-4[data-orientation=horizontal]{height:1rem}.data-\\[orientation\\=horizontal\\]\\:h-full[data-orientation=horizontal]{height:100%}.data-\\[orientation\\=horizontal\\]\\:h-px[data-orientation=horizontal]{height:1px}.data-\\[orientation\\=vertical\\]\\:h-full[data-orientation=vertical]{height:100%}.data-\\[panel-group-direction\\=vertical\\]\\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\\[size\\=default\\]\\:h-9[data-size=default]{height:2.25rem}.data-\\[size\\=sm\\]\\:h-8[data-size=sm]{height:2rem}.data-\\[vaul-drawer-direction\\=bottom\\]\\:max-h-\\[80vh\\][data-vaul-drawer-direction=bottom],.data-\\[vaul-drawer-direction\\=top\\]\\:max-h-\\[80vh\\][data-vaul-drawer-direction=top]{max-height:80vh}.data-\\[orientation\\=vertical\\]\\:min-h-44[data-orientation=vertical]{min-height:11rem}.data-\\[orientation\\=horizontal\\]\\:w-full[data-orientation=horizontal]{width:100%}.data-\\[orientation\\=vertical\\]\\:w-1\\.5[data-orientation=vertical]{width:.375rem}.data-\\[orientation\\=vertical\\]\\:w-auto[data-orientation=vertical]{width:auto}.data-\\[orientation\\=vertical\\]\\:w-full[data-orientation=vertical]{width:100%}.data-\\[orientation\\=vertical\\]\\:w-px[data-orientation=vertical]{width:1px}.data-\\[panel-group-direction\\=vertical\\]\\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\\[vaul-drawer-direction\\=left\\]\\:w-3\\/4[data-vaul-drawer-direction=left],.data-\\[vaul-drawer-direction\\=right\\]\\:w-3\\/4[data-vaul-drawer-direction=right]{width:75%}.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[state\\=checked\\]\\:translate-x-\\[calc\\(100\\%-2px\\)\\][data-state=checked]{--tw-translate-x: calc(100% - 2px) ;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[orientation\\=vertical\\]\\:flex-col[data-orientation=vertical],.data-\\[panel-group-direction\\=vertical\\]\\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\\[vaul-drawer-direction\\=bottom\\]\\:rounded-t-lg[data-vaul-drawer-direction=bottom]{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.data-\\[vaul-drawer-direction\\=top\\]\\:rounded-b-lg[data-vaul-drawer-direction=top]{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\\[variant\\=outline\\]\\:border-l-0[data-variant=outline]{border-left-width:0px}.data-\\[vaul-drawer-direction\\=bottom\\]\\:border-t[data-vaul-drawer-direction=bottom]{border-top-width:1px}.data-\\[vaul-drawer-direction\\=left\\]\\:border-r[data-vaul-drawer-direction=left]{border-right-width:1px}.data-\\[vaul-drawer-direction\\=right\\]\\:border-l[data-vaul-drawer-direction=right]{border-left-width:1px}.data-\\[vaul-drawer-direction\\=top\\]\\:border-b[data-vaul-drawer-direction=top]{border-bottom-width:1px}.data-\\[active\\=true\\]\\:border-ring[data-active=true]{border-color:hsl(var(--ring))}.data-\\[state\\=checked\\]\\:border-primary[data-state=checked]{border-color:hsl(var(--primary))}.data-\\[active\\=true\\]\\:bg-accent\\/50[data-active=true]{background-color:hsl(var(--accent) / .5)}.data-\\[selected\\=true\\]\\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\\[state\\=active\\]\\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\\[state\\=on\\]\\:bg-accent[data-state=on],.data-\\[state\\=open\\]\\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\\[state\\=open\\]\\:bg-accent\\/50[data-state=open]{background-color:hsl(var(--accent) / .5)}.data-\\[state\\=open\\]\\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\\[state\\=selected\\]\\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\\[inset\\]\\:pl-8[data-inset]{padding-left:2rem}.data-\\[active\\=true\\]\\:font-medium[data-active=true]{font-weight:500}.data-\\[active\\=true\\]\\:text-accent-foreground[data-active=true]{color:hsl(var(--accent-foreground))}.data-\\[error\\=true\\]\\:text-destructive[data-error=true]{color:hsl(var(--destructive))}.data-\\[placeholder\\]\\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\\[selected\\=true\\]\\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\\[state\\=active\\]\\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\\[state\\=checked\\]\\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\\[state\\=on\\]\\:text-accent-foreground[data-state=on],.data-\\[state\\=open\\]\\:text-accent-foreground[data-state=open]{color:hsl(var(--accent-foreground))}.data-\\[state\\=open\\]\\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\\[variant\\=destructive\\]\\:text-destructive[data-variant=destructive]{color:hsl(var(--destructive))}.data-\\[disabled\\=true\\]\\:opacity-50[data-disabled=true],.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[state\\=open\\]\\:opacity-100[data-state=open]{opacity:1}.data-\\[state\\=active\\]\\:shadow-sm[data-state=active]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\\[active\\=true\\]\\:ring-\\[3px\\][data-active=true]{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.data-\\[active\\=true\\]\\:ring-ring\\/50[data-active=true]{--tw-ring-color: hsl(var(--ring) / .5)}.data-\\[state\\=closed\\]\\:duration-300[data-state=closed]{transition-duration:.3s}.data-\\[state\\=open\\]\\:duration-500[data-state=open]{transition-duration:.5s}.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1[data-slot=select-value]>*{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*{display:flex}.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*{align-items:center}.\\*\\:data-\\[slot\\=select-value\\]\\:gap-2[data-slot=select-value]>*{gap:.5rem}.\\*\\:data-\\[slot\\=alert-description\\]\\:text-destructive\\/90[data-slot=alert-description]>*{color:hsl(var(--destructive) / .9)}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:.25rem}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:-translate-y-1\\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[variant\\=outline\\]\\:first\\:border-l:first-child[data-variant=outline]{border-left-width:1px}.data-\\[active\\=true\\]\\:hover\\:bg-accent:hover[data-active=true],.data-\\[state\\=open\\]\\:hover\\:bg-accent:hover[data-state=open]{background-color:hsl(var(--accent))}.data-\\[active\\=true\\]\\:focus\\:bg-accent:focus[data-active=true]{background-color:hsl(var(--accent))}.data-\\[state\\=open\\]\\:focus\\:bg-accent:focus[data-state=open]{background-color:hsl(var(--accent))}.data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10:focus[data-variant=destructive]{background-color:hsl(var(--destructive) / .1)}.data-\\[variant\\=destructive\\]\\:focus\\:text-destructive:focus[data-variant=destructive]{color:hsl(var(--destructive))}.group[data-disabled=true] .group-data-\\[disabled\\=true\\]\\:pointer-events-none{pointer-events:none}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:left-\\[calc\\(var\\(--sidebar-width\\)\\*-1\\)\\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:right-\\[calc\\(var\\(--sidebar-width\\)\\*-1\\)\\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\\[side\\=left\\]\\:-right-4{right:-1rem}.group[data-side=right] .group-data-\\[side\\=right\\]\\:left-0{left:0}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:top-full{top:100%}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:-mt-8{margin-top:-2rem}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:mt-1\\.5{margin-top:.375rem}.group\\/drawer-content[data-vaul-drawer-direction=bottom] .group-data-\\[vaul-drawer-direction\\=bottom\\]\\/drawer-content\\:block{display:block}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:hidden{display:none}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:w-\\[calc\\(var\\(--sidebar-width-icon\\)\\+\\(--spacing\\(4\\)\\)\\)\\]{width:calc(var(--sidebar-width-icon) + (--spacing(4)))}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:w-\\[calc\\(var\\(--sidebar-width-icon\\)\\+\\(--spacing\\(4\\)\\)\\+2px\\)\\]{width:calc(var(--sidebar-width-icon) + (--spacing(4)) + 2px)}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:w-0{width:0px}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-side=right] .group-data-\\[side\\=right\\]\\:rotate-180,.group[data-state=open] .group-data-\\[state\\=open\\]\\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:overflow-hidden,.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\\[variant\\=floating\\]\\:rounded-lg{border-radius:var(--radius)}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:rounded-md{border-radius:calc(var(--radius) - 2px)}.group[data-variant=floating] .group-data-\\[variant\\=floating\\]\\:border,.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:border{border-width:1px}.group[data-side=left] .group-data-\\[side\\=left\\]\\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\\[side\\=right\\]\\:border-l{border-left-width:1px}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:bg-popover{background-color:hsl(var(--popover))}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:text-popover-foreground{color:hsl(var(--popover-foreground))}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:opacity-0{opacity:0}.group[data-disabled=true] .group-data-\\[disabled\\=true\\]\\:opacity-50{opacity:.5}.group[data-variant=floating] .group-data-\\[variant\\=floating\\]\\:shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:duration-200{transition-duration:.2s}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:after\\:left-full:after{content:var(--tw-content);left:100%}.peer\\/menu-button[data-size=default]~.peer-data-\\[size\\=default\\]\\/menu-button\\:top-1\\.5{top:.375rem}.peer\\/menu-button[data-size=lg]~.peer-data-\\[size\\=lg\\]\\/menu-button\\:top-2\\.5{top:.625rem}.peer\\/menu-button[data-size=sm]~.peer-data-\\[size\\=sm\\]\\/menu-button\\:top-1{top:.25rem}.dark\\:border-input:is(.dark *){border-color:hsl(var(--input))}.dark\\:bg-destructive\\/60:is(.dark *){background-color:hsl(var(--destructive) / .6)}.dark\\:bg-input\\/30:is(.dark *){background-color:hsl(var(--input) / .3)}.dark\\:hover\\:bg-accent\\/50:hover:is(.dark *){background-color:hsl(var(--accent) / .5)}.dark\\:hover\\:bg-input\\/50:hover:is(.dark *){background-color:hsl(var(--input) / .5)}.dark\\:focus-visible\\:ring-destructive\\/40:focus-visible:is(.dark *){--tw-ring-color: hsl(var(--destructive) / .4)}.dark\\:data-\\[state\\=checked\\]\\:bg-primary[data-state=checked]:is(.dark *){background-color:hsl(var(--primary))}.dark\\:data-\\[state\\=checked\\]\\:bg-primary-foreground[data-state=checked]:is(.dark *){background-color:hsl(var(--primary-foreground))}.dark\\:data-\\[state\\=unchecked\\]\\:bg-card-foreground[data-state=unchecked]:is(.dark *){background-color:hsl(var(--card-foreground))}.dark\\:data-\\[state\\=unchecked\\]\\:bg-input\\/80[data-state=unchecked]:is(.dark *){background-color:hsl(var(--input) / .8)}.dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:focus[data-variant=destructive]:is(.dark *){background-color:hsl(var(--destructive) / .2)}@media (min-width: 640px){.sm\\:block{display:block}.sm\\:flex{display:flex}.sm\\:h-10{height:2.5rem}.sm\\:h-11{height:2.75rem}.sm\\:h-12{height:3rem}.sm\\:h-20{height:5rem}.sm\\:h-4{height:1rem}.sm\\:h-6{height:1.5rem}.sm\\:h-8{height:2rem}.sm\\:w-10{width:2.5rem}.sm\\:w-20{width:5rem}.sm\\:w-4{width:1rem}.sm\\:w-6{width:1.5rem}.sm\\:w-8{width:2rem}.sm\\:max-w-lg{max-width:32rem}.sm\\:max-w-sm{max-width:24rem}.sm\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\\:flex-row{flex-direction:row}.sm\\:justify-end{justify-content:flex-end}.sm\\:gap-2{gap:.5rem}.sm\\:gap-2\\.5{gap:.625rem}.sm\\:gap-5{gap:1.25rem}.sm\\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\\:py-3\\.5{padding-top:.875rem;padding-bottom:.875rem}.sm\\:pl-2{padding-left:.5rem}.sm\\:pl-2\\.5{padding-left:.625rem}.sm\\:pr-2{padding-right:.5rem}.sm\\:pr-2\\.5{padding-right:.625rem}.sm\\:text-left{text-align:left}.sm\\:text-base{font-size:1rem;line-height:1.5rem}.sm\\:text-lg{font-size:1.125rem;line-height:1.75rem}.data-\\[vaul-drawer-direction\\=left\\]\\:sm\\:max-w-sm[data-vaul-drawer-direction=left],.data-\\[vaul-drawer-direction\\=right\\]\\:sm\\:max-w-sm[data-vaul-drawer-direction=right]{max-width:24rem}}@media (min-width: 768px){.md\\:absolute{position:absolute}.md\\:mx-4{margin-left:1rem;margin-right:1rem}.md\\:block{display:block}.md\\:flex{display:flex}.md\\:max-h-\\[900px\\]{max-height:900px}.md\\:w-\\[var\\(--radix-navigation-menu-viewport-width\\)\\]{width:var(--radix-navigation-menu-viewport-width)}.md\\:w-auto{width:auto}.md\\:max-w-\\[150px\\]{max-width:150px}.md\\:max-w-\\[200px\\]{max-width:200px}.md\\:max-w-\\[220px\\]{max-width:220px}.md\\:max-w-\\[240px\\]{max-width:240px}.md\\:max-w-\\[500px\\]{max-width:500px}.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\\:rounded-3xl{border-radius:1.5rem}.md\\:p-6{padding:1.5rem}.md\\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\\:text-2xl{font-size:1.5rem;line-height:2rem}.md\\:text-sm{font-size:.875rem;line-height:1.25rem}.md\\:opacity-0{opacity:0}.md\\:after\\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\\:peer-data-\\[variant\\=inset\\]\\:m-2{margin:.5rem}.peer[data-variant=inset]~.md\\:peer-data-\\[variant\\=inset\\]\\:ml-0{margin-left:0}.peer[data-variant=inset][data-state=collapsed]~.md\\:peer-data-\\[variant\\=inset\\]\\:peer-data-\\[state\\=collapsed\\]\\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\\:peer-data-\\[variant\\=inset\\]\\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\\:peer-data-\\[variant\\=inset\\]\\:shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}@media (min-width: 1024px){.lg\\:block{display:block}.lg\\:hidden{display:none}}.\\[\\&\\:has\\(\\>\\.day-range-end\\)\\]\\:rounded-r-md:has(>.day-range-end){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\>\\.day-range-start\\)\\]\\:rounded-l-md:has(>.day-range-start){border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:rounded-md:has([aria-selected]){border-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:bg-accent:has([aria-selected]){background-color:hsl(var(--accent))}.first\\:\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:rounded-l-md:has([aria-selected]):first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.last\\:\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:rounded-r-md:has([aria-selected]):last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\[aria-selected\\]\\.day-range-end\\)\\]\\:rounded-r-md:has([aria-selected].day-range-end){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\[role\\=checkbox\\]\\)\\]\\:pr-0:has([role=checkbox]){padding-right:0}.\\[\\&\\:last-child\\]\\:pb-6:last-child{padding-bottom:1.5rem}.\\[\\&\\>\\[role\\=checkbox\\]\\]\\:translate-y-\\[2px\\]>[role=checkbox]{--tw-translate-y: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&\\>button\\]\\:hidden>button{display:none}.\\[\\&\\>span\\:last-child\\]\\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\\[\\&\\>svg\\]\\:pointer-events-none>svg{pointer-events:none}.\\[\\&\\>svg\\]\\:size-3>svg{width:.75rem;height:.75rem}.\\[\\&\\>svg\\]\\:size-3\\.5>svg{width:.875rem;height:.875rem}.\\[\\&\\>svg\\]\\:size-4>svg{width:1rem;height:1rem}.\\[\\&\\>svg\\]\\:h-2\\.5>svg{height:.625rem}.\\[\\&\\>svg\\]\\:h-3>svg{height:.75rem}.\\[\\&\\>svg\\]\\:w-2\\.5>svg{width:.625rem}.\\[\\&\\>svg\\]\\:w-3>svg{width:.75rem}.\\[\\&\\>svg\\]\\:shrink-0>svg{flex-shrink:0}.\\[\\&\\>svg\\]\\:translate-y-0\\.5>svg{--tw-translate-y: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&\\>svg\\]\\:text-current>svg{color:currentColor}.\\[\\&\\>svg\\]\\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\\[\\&\\>tr\\]\\:last\\:border-b-0:last-child>tr{border-bottom-width:0px}.\\[\\&\\[data-panel-group-direction\\=vertical\\]\\>div\\]\\:rotate-90[data-panel-group-direction=vertical]>div{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&\\[data-state\\=open\\]\\>svg\\]\\:rotate-180[data-state=open]>svg{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&_\\.recharts-cartesian-axis-tick_text\\]\\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\\[\\&_\\.recharts-cartesian-grid_line\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border\\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:hsl(var(--border) / .5)}.\\[\\&_\\.recharts-curve\\.recharts-tooltip-cursor\\]\\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\\[\\&_\\.recharts-dot\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\\[\\&_\\.recharts-polar-grid_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:hsl(var(--border))}.\\[\\&_\\.recharts-radial-bar-background-sector\\]\\:fill-muted .recharts-radial-bar-background-sector,.\\[\\&_\\.recharts-rectangle\\.recharts-tooltip-cursor\\]\\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:hsl(var(--muted))}.\\[\\&_\\.recharts-reference-line_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:hsl(var(--border))}.\\[\\&_\\.recharts-sector\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:py-1\\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:font-medium [cmdk-group-heading]{font-weight:500}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\\[\\&_\\[cmdk-group\\]\\:not\\(\\[hidden\\]\\)_\\~\\[cmdk-group\\]\\]\\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\\[\\&_\\[cmdk-group\\]\\]\\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\\[\\&_\\[cmdk-input-wrapper\\]_svg\\]\\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\\[\\&_\\[cmdk-input-wrapper\\]_svg\\]\\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\\[\\&_\\[cmdk-input\\]\\]\\:h-12 [cmdk-input]{height:3rem}.\\[\\&_\\[cmdk-item\\]\\]\\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\\[\\&_\\[cmdk-item\\]\\]\\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\\[\\&_\\[cmdk-item\\]_svg\\]\\:h-5 [cmdk-item] svg{height:1.25rem}.\\[\\&_\\[cmdk-item\\]_svg\\]\\:w-5 [cmdk-item] svg{width:1.25rem}.\\[\\&_p\\]\\:leading-relaxed p{line-height:1.625}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'text-\\'\\]\\)\\]\\:text-muted-foreground svg:not([class*=text-]){color:hsl(var(--muted-foreground))}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_tr\\:last-child\\]\\:border-0 tr:last-child{border-width:0px}.\\[\\&_tr\\]\\:border-b tr{border-bottom-width:1px}[data-side=left][data-collapsible=offcanvas] .\\[\\[data-side\\=left\\]\\[data-collapsible\\=offcanvas\\]_\\&\\]\\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\\[\\[data-side\\=left\\]\\[data-state\\=collapsed\\]_\\&\\]\\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\\[\\[data-side\\=right\\]\\[data-collapsible\\=offcanvas\\]_\\&\\]\\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\\[\\[data-side\\=right\\]\\[data-state\\=collapsed\\]_\\&\\]\\:cursor-w-resize{cursor:w-resize}a.\\[a\\&\\]\\:hover\\:bg-accent:hover{background-color:hsl(var(--accent))}a.\\[a\\&\\]\\:hover\\:bg-destructive\\/90:hover{background-color:hsl(var(--destructive) / .9)}a.\\[a\\&\\]\\:hover\\:bg-primary\\/90:hover{background-color:hsl(var(--primary) / .9)}a.\\[a\\&\\]\\:hover\\:bg-secondary\\/90:hover{background-color:hsl(var(--secondary) / .9)}a.\\[a\\&\\]\\:hover\\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}`;
72373
+ const styles = `@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-x-4{left:1rem;right:1rem}.inset-y-0{top:0;bottom:0}.-bottom-0{bottom:-0px}.-bottom-0\\.5{bottom:-.125rem}.-bottom-1{bottom:-.25rem}.-bottom-12{bottom:-3rem}.-left-0{left:-0px}.-left-0\\.5{left:-.125rem}.-left-1{left:-.25rem}.-left-12{left:-3rem}.-right-0{right:-0px}.-right-0\\.5{right:-.125rem}.-right-1{right:-.25rem}.-right-12{right:-3rem}.-top-0{top:-0px}.-top-0\\.5{top:-.125rem}.-top-1{top:-.25rem}.-top-12{top:-3rem}.bottom-0{bottom:0}.bottom-3{bottom:.75rem}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1{left:.25rem}.left-1\\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.left-\\[30\\%\\]{left:30%}.left-\\[50\\%\\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.right-\\[30\\%\\]{right:30%}.top-0{top:0}.top-1{top:.25rem}.top-1\\.5{top:.375rem}.top-1\\/2{top:50%}.top-16{top:4rem}.top-2{top:.5rem}.top-3{top:.75rem}.top-3\\.5{top:.875rem}.top-4{top:1rem}.top-\\[1px\\]{top:1px}.top-\\[30\\%\\]{top:30%}.top-\\[50\\%\\]{top:50%}.top-\\[60\\%\\]{top:60%}.top-full{top:100%}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\\[1099\\]{z-index:1099}.z-\\[1\\]{z-index:1}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2 / span 2}.row-start-1{grid-row-start:1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-3\\.5{margin-left:.875rem;margin-right:.875rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-0\\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-ml-4{margin-left:-1rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-\\[28px\\]{margin-left:28px}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0{margin-top:0}.mt-0\\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.aspect-\\[1\\.586\\]{aspect-ratio:1.586}.aspect-\\[3\\/4\\]{aspect-ratio:3/4}.aspect-\\[4\\/3\\]{aspect-ratio:4/3}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.size-10{width:2.5rem;height:2.5rem}.size-2{width:.5rem;height:.5rem}.size-2\\.5{width:.625rem;height:.625rem}.size-3{width:.75rem;height:.75rem}.size-3\\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.size-full{width:100%;height:100%}.h-0{height:0px}.h-0\\.5{height:.125rem}.h-1{height:.25rem}.h-1\\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\\.5{height:.625rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-80{height:20rem}.h-9{height:2.25rem}.h-\\[1\\.15rem\\]{height:1.15rem}.h-\\[240px\\]{height:240px}.h-\\[72\\%\\]{height:72%}.h-\\[var\\(--radix-navigation-menu-viewport-height\\)\\]{height:var(--radix-navigation-menu-viewport-height)}.h-\\[var\\(--radix-select-trigger-height\\)\\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\\[300px\\]{max-height:300px}.min-h-0{min-height:0px}.min-h-16{min-height:4rem}.min-h-4{min-height:1rem}.min-h-\\[500px\\]{min-height:500px}.min-h-svh{min-height:100svh}.w-0{width:0px}.w-0\\.5{width:.125rem}.w-1{width:.25rem}.w-1\\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\\.5{width:.625rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\\.5{width:.875rem}.w-3\\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\\[100px\\]{width:100px}.w-\\[240px\\]{width:240px}.w-\\[70\\%\\]{width:70%}.w-\\[88\\%\\]{width:88%}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-10{min-width:2.5rem}.min-w-5{min-width:1.25rem}.min-w-8{min-width:2rem}.min-w-9{min-width:2.25rem}.min-w-\\[12rem\\]{min-width:12rem}.min-w-\\[8rem\\]{min-width:8rem}.min-w-\\[var\\(--radix-select-trigger-width\\)\\]{min-width:var(--radix-select-trigger-width)}.max-w-2xl{max-width:42rem}.max-w-\\[120px\\]{max-width:120px}.max-w-\\[150px\\]{max-width:150px}.max-w-\\[190px\\]{max-width:190px}.max-w-\\[200px\\]{max-width:200px}.max-w-\\[calc\\(100\\%-2rem\\)\\]{max-width:calc(100% - 2rem)}.max-w-max{max-width:-moz-max-content;max-width:max-content}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-\\[2\\]{flex:2}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-px{--tw-translate-x: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\\[-50\\%\\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-px{--tw-translate-x: 1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0\\.5{--tw-translate-y: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1\\/2{--tw-translate-y: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[-50\\%\\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\\[calc\\(-50\\%_-_2px\\)\\]{--tw-translate-y: calc(-50% - 2px) ;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-\\[-1\\]{--tw-scale-x: -1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.touch-manipulation{touch-action:manipulation}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-top:.25rem;scroll-margin-bottom:.25rem}.scroll-py-1{scroll-padding-top:.25rem;scroll-padding-bottom:.25rem}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\\[0_1fr\\]{grid-template-columns:0 1fr}.grid-rows-\\[auto_auto\\]{grid-template-rows:auto auto}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-items-start{justify-items:start}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-1\\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-y-0{row-gap:0px}.gap-y-0\\.5{row-gap:.125rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.justify-self-end{justify-self:end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\\[2px\\]{border-radius:2px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[50\\%\\]{border-radius:50%}.rounded-\\[inherit\\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-bl{border-bottom-left-radius:.25rem}.rounded-bl-2xl{border-bottom-left-radius:1rem}.rounded-bl-xl{border-bottom-left-radius:.75rem}.rounded-br{border-bottom-right-radius:.25rem}.rounded-br-2xl{border-bottom-right-radius:1rem}.rounded-br-xl{border-bottom-right-radius:.75rem}.rounded-tl{border-top-left-radius:.25rem}.rounded-tl-2xl{border-top-left-radius:1rem}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.rounded-tl-xl{border-top-left-radius:.75rem}.rounded-tr{border-top-right-radius:.25rem}.rounded-tr-2xl{border-top-right-radius:1rem}.rounded-tr-xl{border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\\[1\\.5px\\]{border-width:1.5px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-b-4{border-bottom-width:4px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-r-2{border-right-width:2px}.border-r-4{border-right-width:4px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-t-4{border-top-width:4px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity))}.border-background{border-color:hsl(var(--background))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity))}.border-blue-500\\/30{border-color:#3b82f64d}.border-border{border-color:hsl(var(--border))}.border-border\\/20{border-color:hsl(var(--border) / .2)}.border-border\\/50{border-color:hsl(var(--border) / .5)}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive\\/20{border-color:hsl(var(--destructive) / .2)}.border-green-400\\/30{border-color:#4ade804d}.border-green-500\\/20{border-color:#22c55e33}.border-input{border-color:hsl(var(--input))}.border-muted{border-color:hsl(var(--muted))}.border-muted-foreground\\/30{border-color:hsl(var(--muted-foreground) / .3)}.border-primary{border-color:hsl(var(--primary))}.border-primary-foreground{border-color:hsl(var(--primary-foreground))}.border-primary\\/20{border-color:hsl(var(--primary) / .2)}.border-primary\\/30{border-color:hsl(var(--primary) / .3)}.border-primary\\/40{border-color:hsl(var(--primary) / .4)}.border-primary\\/60{border-color:hsl(var(--primary) / .6)}.border-red-400\\/30{border-color:#f871714d}.border-transparent{border-color:transparent}.border-white\\/10{border-color:#ffffff1a}.border-white\\/30{border-color:#ffffff4d}.border-l-transparent{border-left-color:transparent}.border-t-blue-600{--tw-border-opacity: 1;border-top-color:rgb(37 99 235 / var(--tw-border-opacity))}.border-t-transparent{border-top-color:transparent}.bg-accent{background-color:hsl(var(--accent))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))}.bg-amber-500\\/10{background-color:#f59e0b1a}.bg-amber-600{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity))}.bg-background{background-color:hsl(var(--background))}.bg-background\\/95{background-color:hsl(var(--background) / .95)}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\\/50{background-color:#00000080}.bg-black\\/60{background-color:#0009}.bg-black\\/70{background-color:#000000b3}.bg-black\\/80{background-color:#000c}.bg-blue-500\\/5{background-color:#3b82f60d}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\\/10{background-color:hsl(var(--destructive) / .1)}.bg-destructive\\/5{background-color:hsl(var(--destructive) / .05)}.bg-foreground{background-color:hsl(var(--foreground))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))}.bg-green-500\\/10{background-color:#22c55e1a}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity))}.bg-green-600\\/90{background-color:#16a34ae6}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\\/50{background-color:hsl(var(--muted) / .5)}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary-foreground{background-color:hsl(var(--primary-foreground))}.bg-primary\\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\\/20{background-color:hsl(var(--primary) / .2)}.bg-primary\\/30{background-color:hsl(var(--primary) / .3)}.bg-primary\\/5{background-color:hsl(var(--primary) / .05)}.bg-primary\\/60{background-color:hsl(var(--primary) / .6)}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))}.bg-red-500\\/90{background-color:#ef4444e6}.bg-secondary{background-color:hsl(var(--secondary))}.bg-secondary\\/30{background-color:hsl(var(--secondary) / .3)}.bg-secondary\\/50{background-color:hsl(var(--secondary) / .5)}.bg-secondary\\/85{background-color:hsl(var(--secondary) / .85)}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.bg-gradient-to-tl{background-image:linear-gradient(to top left,var(--tw-gradient-stops))}.from-accent{--tw-gradient-from: hsl(var(--accent)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--accent) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-black\\/60{--tw-gradient-from: rgb(0 0 0 / .6) var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary{--tw-gradient-from: hsl(var(--primary)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\\/10{--tw-gradient-from: hsl(var(--primary) / .1) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\\/5{--tw-gradient-from: hsl(var(--primary) / .05) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-secondary\\/50{--tw-gradient-from: hsl(var(--secondary) / .5) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--secondary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-black\\/0{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / 0) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary)) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\\/40{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .4) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\\/5{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .05) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-primary\\/60{--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .6) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-transparent{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-accent{--tw-gradient-to: hsl(var(--accent)) var(--tw-gradient-to-position)}.to-black\\/0{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position)}.to-primary{--tw-gradient-to: hsl(var(--primary)) var(--tw-gradient-to-position)}.to-primary\\/5{--tw-gradient-to: hsl(var(--primary) / .05) var(--tw-gradient-to-position)}.to-secondary\\/30{--tw-gradient-to: hsl(var(--secondary) / .3) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.fill-accent{fill:hsl(var(--accent))}.fill-current{fill:currentColor}.fill-green-500{fill:#22c55e}.fill-primary{fill:hsl(var(--primary))}.fill-primary\\/30{fill:hsl(var(--primary) / .3)}.fill-primary\\/50{fill:hsl(var(--primary) / .5)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-px{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-top:0;padding-bottom:0}.py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-0{padding-left:0}.pl-0\\.5{padding-left:.125rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-2\\.5{padding-right:.625rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-0\\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\\[0\\.8rem\\]{font-size:.8rem}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity))}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-foreground{color:hsl(var(--foreground))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-muted-foreground\\/60{color:hsl(var(--muted-foreground) / .6)}.text-neutral-400{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-primary\\/60{color:hsl(var(--primary) / .6)}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-white\\/90{color:#ffffffe6}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-\\[0\\.07\\]{opacity:.07}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\[0_0_0_1px_hsl\\(var\\(--sidebar-border\\)\\)\\]{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\\[0_0_0_9999px_rgba\\(0\\,0\\,0\\,0\\.7\\)\\]{--tw-shadow: 0 0 0 9999px rgba(0,0,0,.7);--tw-shadow-colored: 0 0 0 9999px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-primary\\/20{--tw-shadow-color: hsl(var(--primary) / .2);--tw-shadow: var(--tw-shadow-colored)}.shadow-primary\\/5{--tw-shadow-color: hsl(var(--primary) / .05);--tw-shadow: var(--tw-shadow-colored)}.shadow-primary\\/50{--tw-shadow-color: hsl(var(--primary) / .5);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-destructive{--tw-ring-color: hsl(var(--destructive))}.ring-ring\\/50{--tw-ring-color: hsl(var(--ring) / .5)}.ring-offset-2{--tw-ring-offset-width: 2px}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.\\!blur{--tw-blur: blur(8px) !important;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)!important}.blur{--tw-blur: blur(8px);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)}.blur-2xl{--tw-blur: blur(40px);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)}.blur-3xl{--tw-blur: blur(64px);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)}.grayscale{--tw-grayscale: grayscale(100%);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)}.filter{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)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);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)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[color\\,box-shadow\\]{transition-property:color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[left\\,right\\,width\\]{transition-property:left,right,width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[margin\\,opacity\\]{transition-property:margin,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[width\\,height\\,padding\\]{transition-property:width,height,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[width\\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-none{transition-property:none}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}[data-kwik-id]{--background: 210 20% 98%;--foreground: 222 47% 11%;--card: 0 0% 100%;--card-foreground: 222 47% 11%;--popover: 0 0% 100%;--popover-foreground: 222 47% 11%;--primary: 221 83% 33%;--primary-foreground: 0 0% 100%;--secondary: 220 13% 96%;--secondary-foreground: 222 47% 11%;--muted: 210 20% 98%;--muted-foreground: 220 9% 46%;--accent: 43 96% 56%;--accent-foreground: 222 47% 11%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 100%;--border: 220 13% 91%;--input: 0 0% 100% / 0;--ring: 221 83% 33%;--radius: .5rem;font-family:DM Sans,sans-serif}[data-kwik-id] *,[data-kwik-id] *:before,[data-kwik-id] *:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:hsl(var(--border))}.selection\\:bg-primary *::-moz-selection{background-color:hsl(var(--primary))}.selection\\:bg-primary *::selection{background-color:hsl(var(--primary))}.selection\\:text-primary-foreground *::-moz-selection{color:hsl(var(--primary-foreground))}.selection\\:text-primary-foreground *::selection{color:hsl(var(--primary-foreground))}.selection\\:bg-primary::-moz-selection{background-color:hsl(var(--primary))}.selection\\:bg-primary::selection{background-color:hsl(var(--primary))}.selection\\:text-primary-foreground::-moz-selection{color:hsl(var(--primary-foreground))}.selection\\:text-primary-foreground::selection{color:hsl(var(--primary-foreground))}.file\\:inline-flex::file-selector-button{display:inline-flex}.file\\:h-7::file-selector-button{height:1.75rem}.file\\:border-0::file-selector-button{border-width:0px}.file\\:bg-transparent::file-selector-button{background-color:transparent}.file\\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\\:font-medium::file-selector-button{font-weight:500}.file\\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:-inset-2:after{content:var(--tw-content);inset:-.5rem}.after\\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\\:left-1\\/2:after{content:var(--tw-content);left:50%}.after\\:w-1:after{content:var(--tw-content);width:.25rem}.after\\:w-\\[2px\\]:after{content:var(--tw-content);width:2px}.after\\:-translate-x-1\\/2:after{content:var(--tw-content);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.first\\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\\:border-l:first-child{border-left-width:1px}.last\\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.last\\:border-b-0:last-child{border-bottom-width:0px}.focus-within\\:relative:focus-within{position:relative}.focus-within\\:z-20:focus-within{z-index:20}.hover\\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\\:border-muted-foreground\\/30:hover{border-color:hsl(var(--muted-foreground) / .3)}.hover\\:border-primary\\/30:hover{border-color:hsl(var(--primary) / .3)}.hover\\:border-primary\\/50:hover{border-color:hsl(var(--primary) / .5)}.hover\\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\\:bg-background:hover{background-color:hsl(var(--background))}.hover\\:bg-destructive\\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity))}.hover\\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\\:bg-muted\\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\\:bg-primary:hover{background-color:hsl(var(--primary))}.hover\\:bg-primary\\/10:hover{background-color:hsl(var(--primary) / .1)}.hover\\:bg-primary\\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\\:bg-secondary\\/50:hover{background-color:hsl(var(--secondary) / .5)}.hover\\:bg-secondary\\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\\:text-foreground:hover{color:hsl(var(--foreground))}.hover\\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\\:text-primary-foreground:hover{color:hsl(var(--primary-foreground))}.hover\\:text-primary\\/80:hover{color:hsl(var(--primary) / .8)}.hover\\:underline:hover{text-decoration-line:underline}.hover\\:opacity-100:hover{opacity:1}.hover\\:shadow-\\[0_0_0_1px_hsl\\(var\\(--sidebar-accent\\)\\)\\]:hover{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\\:shadow-primary\\/10:hover{--tw-shadow-color: hsl(var(--primary) / .1);--tw-shadow: var(--tw-shadow-colored)}.hover\\:shadow-primary\\/20:hover{--tw-shadow-color: hsl(var(--primary) / .2);--tw-shadow: var(--tw-shadow-colored)}.hover\\:ring-4:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\\:z-10:focus{z-index:10}.focus\\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\\:bg-primary:focus{background-color:hsl(var(--primary))}.focus\\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\\:text-primary-foreground:focus{color:hsl(var(--primary-foreground))}.focus\\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\\:z-10:focus-visible{z-index:10}.focus-visible\\:border-ring:focus-visible{border-color:hsl(var(--ring))}.focus-visible\\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\\:outline-1:focus-visible{outline-width:1px}.focus-visible\\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-4:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color: hsl(var(--destructive) / .2)}.focus-visible\\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color: hsl(var(--ring) / .5)}.focus-visible\\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}.group\\/menu-item:focus-within .group-focus-within\\/menu-item\\:opacity-100{opacity:1}.group:hover .group-hover\\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\\:border-primary\\/40{border-color:hsl(var(--primary) / .4)}.group:hover .group-hover\\:bg-primary\\/10{background-color:hsl(var(--primary) / .1)}.group:hover .group-hover\\:text-foreground{color:hsl(var(--foreground))}.group:hover .group-hover\\:text-primary{color:hsl(var(--primary))}.group:hover .group-hover\\:text-primary\\/80{color:hsl(var(--primary) / .8)}.group\\/menu-item:hover .group-hover\\/menu-item\\:opacity-100,.group:hover .group-hover\\:opacity-100{opacity:1}.group:hover .group-hover\\:opacity-\\[0\\.12\\]{opacity:.12}.peer:disabled~.peer-disabled\\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\\:opacity-50{opacity:.5}.has-\\[\\>svg\\]\\:grid-cols-\\[calc\\(var\\(--spacing\\)\\*4\\)_1fr\\]:has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr}.has-\\[\\>svg\\]\\:gap-x-3:has(>svg){-moz-column-gap:.75rem;column-gap:.75rem}.has-\\[\\>svg\\]\\:px-2\\.5:has(>svg){padding-left:.625rem;padding-right:.625rem}.has-\\[\\>svg\\]\\:px-3:has(>svg){padding-left:.75rem;padding-right:.75rem}.has-\\[\\>svg\\]\\:px-4:has(>svg){padding-left:1rem;padding-right:1rem}.aria-disabled\\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\\:bg-accent[aria-selected=true]{background-color:hsl(var(--accent))}.aria-selected\\:bg-primary[aria-selected=true]{background-color:hsl(var(--primary))}.aria-selected\\:text-accent-foreground[aria-selected=true]{color:hsl(var(--accent-foreground))}.aria-selected\\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.aria-selected\\:text-primary-foreground[aria-selected=true]{color:hsl(var(--primary-foreground))}.aria-selected\\:opacity-100[aria-selected=true]{opacity:1}.data-\\[disabled\\=true\\]\\:pointer-events-none[data-disabled=true],.data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.data-\\[vaul-drawer-direction\\=bottom\\]\\:inset-x-0[data-vaul-drawer-direction=bottom]{left:0;right:0}.data-\\[vaul-drawer-direction\\=left\\]\\:inset-y-0[data-vaul-drawer-direction=left],.data-\\[vaul-drawer-direction\\=right\\]\\:inset-y-0[data-vaul-drawer-direction=right]{top:0;bottom:0}.data-\\[vaul-drawer-direction\\=top\\]\\:inset-x-0[data-vaul-drawer-direction=top]{left:0;right:0}.data-\\[vaul-drawer-direction\\=bottom\\]\\:bottom-0[data-vaul-drawer-direction=bottom]{bottom:0}.data-\\[vaul-drawer-direction\\=left\\]\\:left-0[data-vaul-drawer-direction=left]{left:0}.data-\\[vaul-drawer-direction\\=right\\]\\:right-0[data-vaul-drawer-direction=right]{right:0}.data-\\[vaul-drawer-direction\\=top\\]\\:top-0[data-vaul-drawer-direction=top]{top:0}.data-\\[active\\=true\\]\\:z-10[data-active=true]{z-index:10}.data-\\[vaul-drawer-direction\\=bottom\\]\\:mt-24[data-vaul-drawer-direction=bottom]{margin-top:6rem}.data-\\[vaul-drawer-direction\\=top\\]\\:mb-24[data-vaul-drawer-direction=top]{margin-bottom:6rem}.data-\\[orientation\\=horizontal\\]\\:h-4[data-orientation=horizontal]{height:1rem}.data-\\[orientation\\=horizontal\\]\\:h-full[data-orientation=horizontal]{height:100%}.data-\\[orientation\\=horizontal\\]\\:h-px[data-orientation=horizontal]{height:1px}.data-\\[orientation\\=vertical\\]\\:h-full[data-orientation=vertical]{height:100%}.data-\\[panel-group-direction\\=vertical\\]\\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\\[size\\=default\\]\\:h-9[data-size=default]{height:2.25rem}.data-\\[size\\=sm\\]\\:h-8[data-size=sm]{height:2rem}.data-\\[vaul-drawer-direction\\=bottom\\]\\:max-h-\\[80vh\\][data-vaul-drawer-direction=bottom],.data-\\[vaul-drawer-direction\\=top\\]\\:max-h-\\[80vh\\][data-vaul-drawer-direction=top]{max-height:80vh}.data-\\[orientation\\=vertical\\]\\:min-h-44[data-orientation=vertical]{min-height:11rem}.data-\\[orientation\\=horizontal\\]\\:w-full[data-orientation=horizontal]{width:100%}.data-\\[orientation\\=vertical\\]\\:w-1\\.5[data-orientation=vertical]{width:.375rem}.data-\\[orientation\\=vertical\\]\\:w-auto[data-orientation=vertical]{width:auto}.data-\\[orientation\\=vertical\\]\\:w-full[data-orientation=vertical]{width:100%}.data-\\[orientation\\=vertical\\]\\:w-px[data-orientation=vertical]{width:1px}.data-\\[panel-group-direction\\=vertical\\]\\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\\[vaul-drawer-direction\\=left\\]\\:w-3\\/4[data-vaul-drawer-direction=left],.data-\\[vaul-drawer-direction\\=right\\]\\:w-3\\/4[data-vaul-drawer-direction=right]{width:75%}.data-\\[side\\=bottom\\]\\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[side\\=left\\]\\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[side\\=right\\]\\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[side\\=top\\]\\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[state\\=checked\\]\\:translate-x-\\[calc\\(100\\%-2px\\)\\][data-state=checked]{--tw-translate-x: calc(100% - 2px) ;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[state\\=unchecked\\]\\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[orientation\\=vertical\\]\\:flex-col[data-orientation=vertical],.data-\\[panel-group-direction\\=vertical\\]\\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\\[vaul-drawer-direction\\=bottom\\]\\:rounded-t-lg[data-vaul-drawer-direction=bottom]{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.data-\\[vaul-drawer-direction\\=top\\]\\:rounded-b-lg[data-vaul-drawer-direction=top]{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\\[variant\\=outline\\]\\:border-l-0[data-variant=outline]{border-left-width:0px}.data-\\[vaul-drawer-direction\\=bottom\\]\\:border-t[data-vaul-drawer-direction=bottom]{border-top-width:1px}.data-\\[vaul-drawer-direction\\=left\\]\\:border-r[data-vaul-drawer-direction=left]{border-right-width:1px}.data-\\[vaul-drawer-direction\\=right\\]\\:border-l[data-vaul-drawer-direction=right]{border-left-width:1px}.data-\\[vaul-drawer-direction\\=top\\]\\:border-b[data-vaul-drawer-direction=top]{border-bottom-width:1px}.data-\\[active\\=true\\]\\:border-ring[data-active=true]{border-color:hsl(var(--ring))}.data-\\[state\\=checked\\]\\:border-primary[data-state=checked]{border-color:hsl(var(--primary))}.data-\\[active\\=true\\]\\:bg-accent\\/50[data-active=true]{background-color:hsl(var(--accent) / .5)}.data-\\[selected\\=true\\]\\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\\[state\\=active\\]\\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\\[state\\=checked\\]\\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\\[state\\=on\\]\\:bg-accent[data-state=on],.data-\\[state\\=open\\]\\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\\[state\\=open\\]\\:bg-accent\\/50[data-state=open]{background-color:hsl(var(--accent) / .5)}.data-\\[state\\=open\\]\\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\\[state\\=selected\\]\\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\\[inset\\]\\:pl-8[data-inset]{padding-left:2rem}.data-\\[active\\=true\\]\\:font-medium[data-active=true]{font-weight:500}.data-\\[active\\=true\\]\\:text-accent-foreground[data-active=true]{color:hsl(var(--accent-foreground))}.data-\\[error\\=true\\]\\:text-destructive[data-error=true]{color:hsl(var(--destructive))}.data-\\[placeholder\\]\\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\\[selected\\=true\\]\\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\\[state\\=active\\]\\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\\[state\\=checked\\]\\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\\[state\\=on\\]\\:text-accent-foreground[data-state=on],.data-\\[state\\=open\\]\\:text-accent-foreground[data-state=open]{color:hsl(var(--accent-foreground))}.data-\\[state\\=open\\]\\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\\[variant\\=destructive\\]\\:text-destructive[data-variant=destructive]{color:hsl(var(--destructive))}.data-\\[disabled\\=true\\]\\:opacity-50[data-disabled=true],.data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.data-\\[state\\=open\\]\\:opacity-100[data-state=open]{opacity:1}.data-\\[state\\=active\\]\\:shadow-sm[data-state=active]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\\[active\\=true\\]\\:ring-\\[3px\\][data-active=true]{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.data-\\[active\\=true\\]\\:ring-ring\\/50[data-active=true]{--tw-ring-color: hsl(var(--ring) / .5)}.data-\\[state\\=closed\\]\\:duration-300[data-state=closed]{transition-duration:.3s}.data-\\[state\\=open\\]\\:duration-500[data-state=open]{transition-duration:.5s}.\\*\\:data-\\[slot\\=select-value\\]\\:line-clamp-1[data-slot=select-value]>*{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\\*\\:data-\\[slot\\=select-value\\]\\:flex[data-slot=select-value]>*{display:flex}.\\*\\:data-\\[slot\\=select-value\\]\\:items-center[data-slot=select-value]>*{align-items:center}.\\*\\:data-\\[slot\\=select-value\\]\\:gap-2[data-slot=select-value]>*{gap:.5rem}.\\*\\:data-\\[slot\\=alert-description\\]\\:text-destructive\\/90[data-slot=alert-description]>*{color:hsl(var(--destructive) / .9)}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:.25rem}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:-translate-y-1\\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[panel-group-direction\\=vertical\\]\\:after\\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\\[variant\\=outline\\]\\:first\\:border-l:first-child[data-variant=outline]{border-left-width:1px}.data-\\[active\\=true\\]\\:hover\\:bg-accent:hover[data-active=true],.data-\\[state\\=open\\]\\:hover\\:bg-accent:hover[data-state=open]{background-color:hsl(var(--accent))}.data-\\[active\\=true\\]\\:focus\\:bg-accent:focus[data-active=true]{background-color:hsl(var(--accent))}.data-\\[state\\=open\\]\\:focus\\:bg-accent:focus[data-state=open]{background-color:hsl(var(--accent))}.data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10:focus[data-variant=destructive]{background-color:hsl(var(--destructive) / .1)}.data-\\[variant\\=destructive\\]\\:focus\\:text-destructive:focus[data-variant=destructive]{color:hsl(var(--destructive))}.group[data-disabled=true] .group-data-\\[disabled\\=true\\]\\:pointer-events-none{pointer-events:none}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:left-\\[calc\\(var\\(--sidebar-width\\)\\*-1\\)\\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:right-\\[calc\\(var\\(--sidebar-width\\)\\*-1\\)\\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\\[side\\=left\\]\\:-right-4{right:-1rem}.group[data-side=right] .group-data-\\[side\\=right\\]\\:left-0{left:0}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:top-full{top:100%}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:-mt-8{margin-top:-2rem}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:mt-1\\.5{margin-top:.375rem}.group\\/drawer-content[data-vaul-drawer-direction=bottom] .group-data-\\[vaul-drawer-direction\\=bottom\\]\\/drawer-content\\:block{display:block}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:hidden{display:none}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:w-\\[calc\\(var\\(--sidebar-width-icon\\)\\+\\(--spacing\\(4\\)\\)\\)\\]{width:calc(var(--sidebar-width-icon) + (--spacing(4)))}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:w-\\[calc\\(var\\(--sidebar-width-icon\\)\\+\\(--spacing\\(4\\)\\)\\+2px\\)\\]{width:calc(var(--sidebar-width-icon) + (--spacing(4)) + 2px)}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:w-0{width:0px}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-side=right] .group-data-\\[side\\=right\\]\\:rotate-180,.group[data-state=open] .group-data-\\[state\\=open\\]\\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:overflow-hidden,.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\\[variant\\=floating\\]\\:rounded-lg{border-radius:var(--radius)}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:rounded-md{border-radius:calc(var(--radius) - 2px)}.group[data-variant=floating] .group-data-\\[variant\\=floating\\]\\:border,.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:border{border-width:1px}.group[data-side=left] .group-data-\\[side\\=left\\]\\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\\[side\\=right\\]\\:border-l{border-left-width:1px}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:bg-popover{background-color:hsl(var(--popover))}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:text-popover-foreground{color:hsl(var(--popover-foreground))}.group[data-collapsible=icon] .group-data-\\[collapsible\\=icon\\]\\:opacity-0{opacity:0}.group[data-disabled=true] .group-data-\\[disabled\\=true\\]\\:opacity-50{opacity:.5}.group[data-variant=floating] .group-data-\\[variant\\=floating\\]\\:shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\\/navigation-menu[data-viewport=false] .group-data-\\[viewport\\=false\\]\\/navigation-menu\\:duration-200{transition-duration:.2s}.group[data-collapsible=offcanvas] .group-data-\\[collapsible\\=offcanvas\\]\\:after\\:left-full:after{content:var(--tw-content);left:100%}.peer\\/menu-button[data-size=default]~.peer-data-\\[size\\=default\\]\\/menu-button\\:top-1\\.5{top:.375rem}.peer\\/menu-button[data-size=lg]~.peer-data-\\[size\\=lg\\]\\/menu-button\\:top-2\\.5{top:.625rem}.peer\\/menu-button[data-size=sm]~.peer-data-\\[size\\=sm\\]\\/menu-button\\:top-1{top:.25rem}.dark\\:border-input:is(.dark *){border-color:hsl(var(--input))}.dark\\:bg-destructive\\/60:is(.dark *){background-color:hsl(var(--destructive) / .6)}.dark\\:bg-input\\/30:is(.dark *){background-color:hsl(var(--input) / .3)}.dark\\:hover\\:bg-accent\\/50:hover:is(.dark *){background-color:hsl(var(--accent) / .5)}.dark\\:hover\\:bg-input\\/50:hover:is(.dark *){background-color:hsl(var(--input) / .5)}.dark\\:focus-visible\\:ring-destructive\\/40:focus-visible:is(.dark *){--tw-ring-color: hsl(var(--destructive) / .4)}.dark\\:data-\\[state\\=checked\\]\\:bg-primary[data-state=checked]:is(.dark *){background-color:hsl(var(--primary))}.dark\\:data-\\[state\\=checked\\]\\:bg-primary-foreground[data-state=checked]:is(.dark *){background-color:hsl(var(--primary-foreground))}.dark\\:data-\\[state\\=unchecked\\]\\:bg-card-foreground[data-state=unchecked]:is(.dark *){background-color:hsl(var(--card-foreground))}.dark\\:data-\\[state\\=unchecked\\]\\:bg-input\\/80[data-state=unchecked]:is(.dark *){background-color:hsl(var(--input) / .8)}.dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:focus[data-variant=destructive]:is(.dark *){background-color:hsl(var(--destructive) / .2)}@media (min-width: 640px){.sm\\:block{display:block}.sm\\:flex{display:flex}.sm\\:h-10{height:2.5rem}.sm\\:h-11{height:2.75rem}.sm\\:h-12{height:3rem}.sm\\:h-20{height:5rem}.sm\\:h-4{height:1rem}.sm\\:h-6{height:1.5rem}.sm\\:h-8{height:2rem}.sm\\:w-10{width:2.5rem}.sm\\:w-20{width:5rem}.sm\\:w-4{width:1rem}.sm\\:w-6{width:1.5rem}.sm\\:w-8{width:2rem}.sm\\:max-w-lg{max-width:32rem}.sm\\:max-w-sm{max-width:24rem}.sm\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\\:flex-row{flex-direction:row}.sm\\:justify-end{justify-content:flex-end}.sm\\:gap-2{gap:.5rem}.sm\\:gap-2\\.5{gap:.625rem}.sm\\:gap-5{gap:1.25rem}.sm\\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\\:py-3\\.5{padding-top:.875rem;padding-bottom:.875rem}.sm\\:pl-2{padding-left:.5rem}.sm\\:pl-2\\.5{padding-left:.625rem}.sm\\:pr-2{padding-right:.5rem}.sm\\:pr-2\\.5{padding-right:.625rem}.sm\\:text-left{text-align:left}.sm\\:text-base{font-size:1rem;line-height:1.5rem}.sm\\:text-lg{font-size:1.125rem;line-height:1.75rem}.data-\\[vaul-drawer-direction\\=left\\]\\:sm\\:max-w-sm[data-vaul-drawer-direction=left],.data-\\[vaul-drawer-direction\\=right\\]\\:sm\\:max-w-sm[data-vaul-drawer-direction=right]{max-width:24rem}}@media (min-width: 768px){.md\\:absolute{position:absolute}.md\\:mx-4{margin-left:1rem;margin-right:1rem}.md\\:block{display:block}.md\\:flex{display:flex}.md\\:max-h-\\[900px\\]{max-height:900px}.md\\:w-\\[var\\(--radix-navigation-menu-viewport-width\\)\\]{width:var(--radix-navigation-menu-viewport-width)}.md\\:w-auto{width:auto}.md\\:max-w-\\[150px\\]{max-width:150px}.md\\:max-w-\\[200px\\]{max-width:200px}.md\\:max-w-\\[220px\\]{max-width:220px}.md\\:max-w-\\[240px\\]{max-width:240px}.md\\:max-w-\\[500px\\]{max-width:500px}.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\\:rounded-3xl{border-radius:1.5rem}.md\\:p-6{padding:1.5rem}.md\\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\\:text-2xl{font-size:1.5rem;line-height:2rem}.md\\:text-sm{font-size:.875rem;line-height:1.25rem}.md\\:opacity-0{opacity:0}.md\\:after\\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\\:peer-data-\\[variant\\=inset\\]\\:m-2{margin:.5rem}.peer[data-variant=inset]~.md\\:peer-data-\\[variant\\=inset\\]\\:ml-0{margin-left:0}.peer[data-variant=inset][data-state=collapsed]~.md\\:peer-data-\\[variant\\=inset\\]\\:peer-data-\\[state\\=collapsed\\]\\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\\:peer-data-\\[variant\\=inset\\]\\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\\:peer-data-\\[variant\\=inset\\]\\:shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}@media (min-width: 1024px){.lg\\:block{display:block}.lg\\:hidden{display:none}}.\\[\\&\\:has\\(\\>\\.day-range-end\\)\\]\\:rounded-r-md:has(>.day-range-end){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\>\\.day-range-start\\)\\]\\:rounded-l-md:has(>.day-range-start){border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:rounded-md:has([aria-selected]){border-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:bg-accent:has([aria-selected]){background-color:hsl(var(--accent))}.first\\:\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:rounded-l-md:has([aria-selected]):first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.last\\:\\[\\&\\:has\\(\\[aria-selected\\]\\)\\]\\:rounded-r-md:has([aria-selected]):last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\[aria-selected\\]\\.day-range-end\\)\\]\\:rounded-r-md:has([aria-selected].day-range-end){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\\[\\&\\:has\\(\\[role\\=checkbox\\]\\)\\]\\:pr-0:has([role=checkbox]){padding-right:0}.\\[\\&\\:last-child\\]\\:pb-6:last-child{padding-bottom:1.5rem}.\\[\\&\\>\\[role\\=checkbox\\]\\]\\:translate-y-\\[2px\\]>[role=checkbox]{--tw-translate-y: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&\\>button\\]\\:hidden>button{display:none}.\\[\\&\\>span\\:last-child\\]\\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\\[\\&\\>svg\\]\\:pointer-events-none>svg{pointer-events:none}.\\[\\&\\>svg\\]\\:size-3>svg{width:.75rem;height:.75rem}.\\[\\&\\>svg\\]\\:size-3\\.5>svg{width:.875rem;height:.875rem}.\\[\\&\\>svg\\]\\:size-4>svg{width:1rem;height:1rem}.\\[\\&\\>svg\\]\\:h-2\\.5>svg{height:.625rem}.\\[\\&\\>svg\\]\\:h-3>svg{height:.75rem}.\\[\\&\\>svg\\]\\:w-2\\.5>svg{width:.625rem}.\\[\\&\\>svg\\]\\:w-3>svg{width:.75rem}.\\[\\&\\>svg\\]\\:shrink-0>svg{flex-shrink:0}.\\[\\&\\>svg\\]\\:translate-y-0\\.5>svg{--tw-translate-y: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&\\>svg\\]\\:text-current>svg{color:currentColor}.\\[\\&\\>svg\\]\\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\\[\\&\\>tr\\]\\:last\\:border-b-0:last-child>tr{border-bottom-width:0px}.\\[\\&\\[data-panel-group-direction\\=vertical\\]\\>div\\]\\:rotate-90[data-panel-group-direction=vertical]>div{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&\\[data-state\\=open\\]\\>svg\\]\\:rotate-180[data-state=open]>svg{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\\[\\&_\\.recharts-cartesian-axis-tick_text\\]\\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\\[\\&_\\.recharts-cartesian-grid_line\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border\\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:hsl(var(--border) / .5)}.\\[\\&_\\.recharts-curve\\.recharts-tooltip-cursor\\]\\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\\[\\&_\\.recharts-dot\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\\[\\&_\\.recharts-polar-grid_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:hsl(var(--border))}.\\[\\&_\\.recharts-radial-bar-background-sector\\]\\:fill-muted .recharts-radial-bar-background-sector,.\\[\\&_\\.recharts-rectangle\\.recharts-tooltip-cursor\\]\\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:hsl(var(--muted))}.\\[\\&_\\.recharts-reference-line_\\[stroke\\=\\'\\#ccc\\'\\]\\]\\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:hsl(var(--border))}.\\[\\&_\\.recharts-sector\\[stroke\\=\\'\\#fff\\'\\]\\]\\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:py-1\\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:font-medium [cmdk-group-heading]{font-weight:500}.\\[\\&_\\[cmdk-group-heading\\]\\]\\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\\[\\&_\\[cmdk-group\\]\\:not\\(\\[hidden\\]\\)_\\~\\[cmdk-group\\]\\]\\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\\[\\&_\\[cmdk-group\\]\\]\\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\\[\\&_\\[cmdk-input-wrapper\\]_svg\\]\\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\\[\\&_\\[cmdk-input-wrapper\\]_svg\\]\\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\\[\\&_\\[cmdk-input\\]\\]\\:h-12 [cmdk-input]{height:3rem}.\\[\\&_\\[cmdk-item\\]\\]\\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\\[\\&_\\[cmdk-item\\]\\]\\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\\[\\&_\\[cmdk-item\\]_svg\\]\\:h-5 [cmdk-item] svg{height:1.25rem}.\\[\\&_\\[cmdk-item\\]_svg\\]\\:w-5 [cmdk-item] svg{width:1.25rem}.\\[\\&_p\\]\\:leading-relaxed p{line-height:1.625}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'text-\\'\\]\\)\\]\\:text-muted-foreground svg:not([class*=text-]){color:hsl(var(--muted-foreground))}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_tr\\:last-child\\]\\:border-0 tr:last-child{border-width:0px}.\\[\\&_tr\\]\\:border-b tr{border-bottom-width:1px}[data-side=left][data-collapsible=offcanvas] .\\[\\[data-side\\=left\\]\\[data-collapsible\\=offcanvas\\]_\\&\\]\\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\\[\\[data-side\\=left\\]\\[data-state\\=collapsed\\]_\\&\\]\\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\\[\\[data-side\\=right\\]\\[data-collapsible\\=offcanvas\\]_\\&\\]\\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\\[\\[data-side\\=right\\]\\[data-state\\=collapsed\\]_\\&\\]\\:cursor-w-resize{cursor:w-resize}a.\\[a\\&\\]\\:hover\\:bg-accent:hover{background-color:hsl(var(--accent))}a.\\[a\\&\\]\\:hover\\:bg-destructive\\/90:hover{background-color:hsl(var(--destructive) / .9)}a.\\[a\\&\\]\\:hover\\:bg-primary\\/90:hover{background-color:hsl(var(--primary) / .9)}a.\\[a\\&\\]\\:hover\\:bg-secondary\\/90:hover{background-color:hsl(var(--secondary) / .9)}a.\\[a\\&\\]\\:hover\\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}`;
72175
72374
  let stylesInjected = false;
72176
72375
  function injectStyles() {
72177
72376
  if (stylesInjected || typeof document === "undefined") return;