@genspectrum/dashboard-components 0.17.0 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/custom-elements.json +47 -16
  2. package/dist/components.d.ts +21 -17
  3. package/dist/components.js +426 -3654
  4. package/dist/components.js.map +1 -1
  5. package/dist/style.css +2 -3375
  6. package/dist/util.d.ts +15 -15
  7. package/package.json +6 -5
  8. package/src/preact/aggregatedData/aggregate.tsx +3 -3
  9. package/src/preact/components/clearable-select.tsx +1 -1
  10. package/src/preact/components/color-scale-selector-dropdown.tsx +1 -1
  11. package/src/preact/components/confidence-interval-selector.tsx +1 -1
  12. package/src/preact/components/downshift-combobox.tsx +3 -3
  13. package/src/preact/components/fullscreen.tsx +6 -2
  14. package/src/preact/components/info.tsx +1 -1
  15. package/src/preact/components/mutation-type-selector.tsx +1 -1
  16. package/src/preact/components/percent-intput.tsx +3 -3
  17. package/src/preact/components/proportion-selector-dropdown.tsx +1 -1
  18. package/src/preact/components/scaling-selector.tsx +1 -1
  19. package/src/preact/components/select.tsx +1 -1
  20. package/src/preact/components/tabs.tsx +1 -1
  21. package/src/preact/dateRangeFilter/date-picker.tsx +1 -1
  22. package/src/preact/dateRangeFilter/date-range-filter.tsx +4 -4
  23. package/src/preact/mutationComparison/mutation-comparison.tsx +1 -1
  24. package/src/preact/mutations/mutations.tsx +2 -2
  25. package/src/preact/mutationsOverTime/mutations-over-time-grid.tsx +133 -84
  26. package/src/preact/mutationsOverTime/mutations-over-time.stories.tsx +46 -16
  27. package/src/preact/mutationsOverTime/mutations-over-time.tsx +4 -1
  28. package/src/preact/numberSequencesOverTime/number-sequences-over-time.tsx +1 -1
  29. package/src/preact/prevalenceOverTime/prevalence-over-time.tsx +1 -1
  30. package/src/preact/sequencesByLocation/sequences-by-location-map.tsx +1 -1
  31. package/src/preact/sequencesByLocation/sequences-by-location.tsx +3 -7
  32. package/src/preact/shared/tanstackTable/pagination.tsx +132 -0
  33. package/src/preact/shared/tanstackTable/tanstackTable.tsx +43 -0
  34. package/src/preact/wastewater/mutationsOverTime/wastewater-mutations-over-time.stories.tsx +2 -1
  35. package/src/preact/wastewater/mutationsOverTime/wastewater-mutations-over-time.tsx +3 -5
  36. package/src/styles/tailwind.css +14 -3
  37. package/src/web-components/input/gs-date-range-filter.stories.ts +2 -2
  38. package/src/web-components/input/gs-lineage-filter.stories.ts +1 -1
  39. package/src/web-components/input/gs-location-filter.stories.ts +1 -1
  40. package/src/web-components/input/gs-mutation-filter.stories.ts +1 -1
  41. package/src/web-components/input/gs-text-filter.stories.ts +1 -1
  42. package/src/web-components/visualization/gs-mutations-over-time.spec-d.ts +39 -0
  43. package/src/web-components/visualization/gs-mutations-over-time.stories.ts +4 -0
  44. package/src/web-components/visualization/gs-mutations-over-time.tsx +8 -31
  45. package/src/web-components/wastewaterVisualization/gs-wastewater-mutations-over-time.spec-d.ts +24 -0
  46. package/src/web-components/wastewaterVisualization/gs-wastewater-mutations-over-time.stories.ts +3 -3
  47. package/src/web-components/wastewaterVisualization/gs-wastewater-mutations-over-time.tsx +5 -36
  48. package/standalone-bundle/dashboard-components.js +17318 -15507
  49. package/standalone-bundle/dashboard-components.js.map +1 -1
  50. package/standalone-bundle/style.css +1 -1
@@ -11,6 +11,7 @@ import { v as views, s as sequenceTypeSchema, n as namedLapisFilterSchema, l as
11
11
  import { autoUpdate, computePosition, offset, shift, flip } from "@floating-ui/dom";
12
12
  import { ReactiveElement } from "@lit/reactive-element";
13
13
  import { BarWithErrorBarsController, BarWithErrorBar } from "chartjs-chart-error-bars";
14
+ import { createTable, createColumnHelper, getPaginationRowModel, getCoreRowModel } from "@tanstack/table-core";
14
15
  import { map, geoJson } from "leaflet";
15
16
  import * as topojson from "topojson-client";
16
17
  import flatpickr from "flatpickr";
@@ -830,7 +831,7 @@ const ModalDialog = ({ children, modalRef }) => {
830
831
  ] });
831
832
  };
832
833
  const Info = ({ children }) => {
833
- return /* @__PURE__ */ u$1("div", { className: "relative", children: /* @__PURE__ */ u$1(Modal, { buttonClassName: "btn btn-xs", modalContent: children, children: "?" }) });
834
+ return /* @__PURE__ */ u$1("div", { className: "relative inline-flex", children: /* @__PURE__ */ u$1(Modal, { buttonClassName: "btn btn-xs", modalContent: children, children: "?" }) });
834
835
  };
835
836
  const InfoHeadline1 = ({ children }) => {
836
837
  return /* @__PURE__ */ u$1("h1", { className: "text-justify text-lg font-bold", children });
@@ -1738,8 +1739,14 @@ const Fullscreen = () => {
1738
1739
  }
1739
1740
  }
1740
1741
  },
1741
- className: `mt-0.5 iconify text-2xl ${isFullscreen ? "mdi--fullscreen-exit hover:scale-90" : "mdi--fullscreen hover:scale-110"}`,
1742
- title: isFullscreen ? "Exit fullscreen" : "Enter fullscreen"
1742
+ className: `btn btn-xs`,
1743
+ title: isFullscreen ? "Exit fullscreen" : "Enter fullscreen",
1744
+ children: /* @__PURE__ */ u$1(
1745
+ "div",
1746
+ {
1747
+ className: `iconify text-2xl ${isFullscreen ? "mdi--fullscreen-exit hover:scale-90" : "mdi--fullscreen hover:scale-110"}`
1748
+ }
1749
+ )
1743
1750
  }
1744
1751
  );
1745
1752
  };
@@ -1924,7 +1931,7 @@ const MutationTypeSelector = ({
1924
1931
  displayedMutationTypes,
1925
1932
  setDisplayedMutationTypes
1926
1933
  }) => {
1927
- return /* @__PURE__ */ u$1("div", { className: "w-[6rem]", children: /* @__PURE__ */ u$1(
1934
+ return /* @__PURE__ */ u$1("div", { className: "w-[6rem] inline-flex", children: /* @__PURE__ */ u$1(
1928
1935
  CheckboxSelector,
1929
1936
  {
1930
1937
  items: displayedMutationTypes,
@@ -2056,7 +2063,8 @@ const PercentInput = ({
2056
2063
  setInternalPercentage(value);
2057
2064
  };
2058
2065
  const isError = indicateError || !percentageInRange(internalPercentage);
2059
- return /* @__PURE__ */ u$1("label", { className: `input input-bordered flex items-center gap-2 w-32 ${isError ? "input-error" : ""}`, children: [
2066
+ return /* @__PURE__ */ u$1("label", { className: `input flex items-center w-32 ${isError ? "input-error" : ""}`, children: [
2067
+ /* @__PURE__ */ u$1("span", { className: "label", children: "%" }),
2060
2068
  /* @__PURE__ */ u$1(
2061
2069
  "input",
2062
2070
  {
@@ -2067,10 +2075,9 @@ const PercentInput = ({
2067
2075
  value: internalPercentage,
2068
2076
  onInput: handleInputChange,
2069
2077
  lang: "en",
2070
- className: `grow w-16`
2078
+ className: `grow w-12`
2071
2079
  }
2072
- ),
2073
- "%"
2080
+ )
2074
2081
  ] });
2075
2082
  };
2076
2083
  function useUpdateExternalValueInIntervals(setExternalValue, updateIntervalInMs, internalValue) {
@@ -2145,7 +2152,7 @@ const ProportionSelectorDropdown = ({
2145
2152
  }) => {
2146
2153
  const percentLabel = `${(proportionInterval.min * 100).toFixed(1)}% - ${(proportionInterval.max * 100).toFixed(1)}%`;
2147
2154
  const width = "w-[calc(1.5 * var(--tw-space-x-reverse) + 1.5 * var(--tw-space-x))]";
2148
- return /* @__PURE__ */ u$1("div", { className: width, children: /* @__PURE__ */ u$1(Dropdown, { buttonTitle: `${labelPrefix} ${percentLabel}`, placement: "bottom-start", children: /* @__PURE__ */ u$1(
2155
+ return /* @__PURE__ */ u$1("div", { className: `${width} inline-flex`, children: /* @__PURE__ */ u$1(Dropdown, { buttonTitle: `${labelPrefix} ${percentLabel}`, placement: "bottom-start", children: /* @__PURE__ */ u$1(
2149
2156
  ProportionSelector,
2150
2157
  {
2151
2158
  proportionInterval,
@@ -2216,7 +2223,7 @@ const Tabs = ({ tabs, toolbar }) => {
2216
2223
  tabElements,
2217
2224
  toolbar && /* @__PURE__ */ u$1("div", { className: "py-2 flex flex-wrap gap-y-1", children: toolbarElement })
2218
2225
  ] }),
2219
- /* @__PURE__ */ u$1("div", { className: `p-2 flex-grow overflow-scroll border-2 border-gray-100 rounded-b-md rounded-tr-md`, children: tabs.map((tab) => /* @__PURE__ */ u$1("div", { className: "h-full", hidden: activeTab !== tab.title, children: tab.content }, tab.title)) })
2226
+ /* @__PURE__ */ u$1("div", { className: `p-2 grow overflow-scroll border-2 border-gray-100 rounded-b-md rounded-tr-md`, children: tabs.map((tab) => /* @__PURE__ */ u$1("div", { className: "h-full", hidden: activeTab !== tab.title, children: tab.content }, tab.title)) })
2220
2227
  ] });
2221
2228
  };
2222
2229
  function getMaintainAspectRatio(height) {
@@ -2258,3530 +2265,157 @@ const mutationComparisonPropsSchema = z$2.object({
2258
2265
  views: z$2.array(mutationComparisonViewSchema),
2259
2266
  pageSize: z$2.union([z$2.boolean(), z$2.number()])
2260
2267
  });
2261
- const MutationComparison = (componentProps) => {
2262
- const { width, height } = componentProps;
2263
- const size = { height, width };
2264
- return /* @__PURE__ */ u$1(ErrorBoundary, { size, componentProps, schema: mutationComparisonPropsSchema, children: /* @__PURE__ */ u$1(ResizeContainer, { size, children: /* @__PURE__ */ u$1(MutationComparisonInner, { ...componentProps }) }) });
2265
- };
2266
- const MutationComparisonInner = (componentProps) => {
2267
- const { lapisFilters, sequenceType } = componentProps;
2268
- const lapis = useLapisUrl();
2269
- const { data, error, isLoading } = useQuery(async () => {
2270
- return queryMutationData(lapisFilters, sequenceType, lapis);
2271
- }, [lapisFilters, sequenceType, lapis]);
2272
- if (isLoading) {
2273
- return /* @__PURE__ */ u$1(LoadingDisplay, {});
2274
- }
2275
- if (error !== null) {
2276
- throw error;
2277
- }
2278
- if (data === null) {
2279
- return /* @__PURE__ */ u$1(NoDataDisplay, {});
2280
- }
2281
- return /* @__PURE__ */ u$1(MutationComparisonTabs, { data: data.mutationData, originalComponentProps: componentProps });
2282
- };
2283
- const MutationComparisonTabs = ({ data, originalComponentProps }) => {
2284
- const [proportionInterval, setProportionInterval] = d({ min: 0.5, max: 1 });
2285
- const [displayedMutationTypes, setDisplayedMutationTypes] = d([
2286
- { label: "Substitutions", checked: true, type: "substitution" },
2287
- { label: "Deletions", checked: true, type: "deletion" }
2288
- ]);
2289
- const [displayedSegments, setDisplayedSegments] = useDisplayedSegments(originalComponentProps.sequenceType);
2290
- const filteredData = T$1(
2291
- () => filterMutationData(data, displayedSegments, displayedMutationTypes),
2292
- [data, displayedSegments, displayedMutationTypes]
2293
- );
2294
- const maintainAspectRatio = getMaintainAspectRatio(originalComponentProps.height);
2295
- const getTab = (view) => {
2296
- switch (view) {
2297
- case "table":
2298
- return {
2299
- title: "Table",
2300
- content: /* @__PURE__ */ u$1(
2301
- MutationComparisonTable,
2302
- {
2303
- data: { content: filteredData },
2304
- proportionInterval,
2305
- pageSize: originalComponentProps.pageSize,
2306
- sequenceType: originalComponentProps.sequenceType
2307
- }
2308
- )
2309
- };
2310
- case "venn":
2311
- return {
2312
- title: "Venn",
2313
- content: /* @__PURE__ */ u$1(
2314
- MutationComparisonVenn,
2315
- {
2316
- data: { content: filteredData },
2317
- proportionInterval,
2318
- maintainAspectRatio,
2319
- sequenceType: originalComponentProps.sequenceType
2320
- }
2321
- )
2322
- };
2323
- }
2324
- };
2325
- const tabs = originalComponentProps.views.map((view) => getTab(view));
2326
- return /* @__PURE__ */ u$1(
2327
- Tabs,
2328
- {
2329
- tabs,
2330
- toolbar: /* @__PURE__ */ u$1(
2331
- Toolbar$7,
2332
- {
2333
- displayedSegments,
2334
- setDisplayedSegments,
2335
- displayedMutationTypes,
2336
- setDisplayedMutationTypes,
2337
- filteredData,
2338
- proportionInterval,
2339
- setProportionInterval,
2340
- originalComponentProps
2341
- }
2342
- )
2343
- }
2344
- );
2345
- };
2346
- const Toolbar$7 = ({
2347
- displayedSegments,
2348
- setDisplayedSegments,
2349
- displayedMutationTypes,
2350
- setDisplayedMutationTypes,
2351
- filteredData,
2352
- proportionInterval,
2353
- setProportionInterval,
2354
- originalComponentProps
2355
- }) => {
2356
- return /* @__PURE__ */ u$1(Fragment, { children: [
2357
- /* @__PURE__ */ u$1(
2358
- ProportionSelectorDropdown,
2359
- {
2360
- proportionInterval,
2361
- setMinProportion: (min) => setProportionInterval((prev) => ({ ...prev, min })),
2362
- setMaxProportion: (max) => setProportionInterval((prev) => ({ ...prev, max }))
2363
- }
2364
- ),
2365
- /* @__PURE__ */ u$1(SegmentSelector, { displayedSegments, setDisplayedSegments }),
2366
- /* @__PURE__ */ u$1(
2367
- MutationTypeSelector,
2368
- {
2369
- displayedMutationTypes,
2370
- setDisplayedMutationTypes
2371
- }
2372
- ),
2373
- /* @__PURE__ */ u$1(
2374
- CsvDownloadButton,
2375
- {
2376
- className: "mx-1 btn btn-xs",
2377
- getData: () => getMutationComparisonTableData({ content: filteredData }, proportionInterval),
2378
- filename: "mutation_comparison.csv"
2379
- }
2380
- ),
2381
- /* @__PURE__ */ u$1(MutationComparisonInfo, { originalComponentProps }),
2382
- /* @__PURE__ */ u$1(Fullscreen, {})
2383
- ] });
2384
- };
2385
- const MutationComparisonInfo = ({ originalComponentProps }) => {
2386
- const lapis = useLapisUrl();
2387
- return /* @__PURE__ */ u$1(Info, { children: [
2388
- /* @__PURE__ */ u$1(InfoHeadline1, { children: "Info for mutation comparison" }),
2389
- /* @__PURE__ */ u$1(InfoParagraph, { children: [
2390
- "This displays ",
2391
- /* @__PURE__ */ u$1(SubstitutionsLink, {}),
2392
- " and ",
2393
- /* @__PURE__ */ u$1(DeletionsLink, {}),
2394
- " of several variants. It shows mutations where the proportion for any given variant falls within the range you can select in the component's toolbar."
2395
- ] }),
2396
- /* @__PURE__ */ u$1(ProportionExplanation, {}),
2397
- originalComponentProps.views.includes(views.table) && /* @__PURE__ */ u$1(Fragment, { children: [
2398
- /* @__PURE__ */ u$1(InfoHeadline2, { children: "Table View" }),
2399
- /* @__PURE__ */ u$1(InfoParagraph, { children: "The table view displays the proportion of mutations that appear in any of the variants." })
2400
- ] }),
2401
- originalComponentProps.views.includes(views.venn) && /* @__PURE__ */ u$1(Fragment, { children: [
2402
- /* @__PURE__ */ u$1(InfoHeadline2, { children: "Venn Diagram View" }),
2403
- /* @__PURE__ */ u$1(InfoParagraph, { children: "The Venn diagram view illustrates which mutations overlap between the variants and which are exclusive to specific variants. Mutations overlap if their proportion falls within the selected range for two variants. If the proportion of a mutation is within the selected range for one variant but not for the other, the mutation is considered exclusive to that variant." })
2404
- ] }),
2405
- /* @__PURE__ */ u$1(InfoComponentCode, { componentName: "mutation-comparison", params: originalComponentProps, lapisUrl: lapis })
2406
- ] });
2407
- };
2408
- const gridJsStyle = '.gridjs-head button, .gridjs-footer button {\n cursor: pointer;\n background-color: transparent;\n background-image: none;\n padding: 0;\n margin: 0;\n border: none;\n outline: none;\n}\n\n.gridjs-temp {\n position: relative;\n}\n\n.gridjs-head {\n width: 100%;\n margin-bottom: 5px;\n padding: 5px 1px;\n}\n.gridjs-head::after {\n content: "";\n display: block;\n clear: both;\n}\n.gridjs-head:empty {\n padding: 0;\n border: none;\n}\n\n.gridjs-container {\n overflow: hidden;\n display: inline-block;\n padding: 2px;\n color: #000;\n position: relative;\n z-index: 0;\n}\n\n.gridjs-footer {\n display: block;\n position: relative;\n width: 100%;\n z-index: 5;\n padding: 12px 24px;\n border-top: 1px solid #e5e7eb;\n background-color: #fff;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.26);\n border-radius: 0 0 8px 8px;\n border-bottom-width: 1px;\n border-color: #e5e7eb;\n}\n.gridjs-footer:empty {\n padding: 0;\n border: none;\n}\n\ninput.gridjs-input {\n outline: none;\n background-color: #fff;\n border: 1px solid #d2d6dc;\n border-radius: 5px;\n padding: 10px 13px;\n font-size: 14px;\n line-height: 1.45;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\ninput.gridjs-input:focus {\n box-shadow: 0 0 0 3px rgba(149, 189, 243, 0.5);\n border-color: #9bc2f7;\n}\n\n.gridjs-pagination {\n color: #3d4044;\n}\n.gridjs-pagination::after {\n content: "";\n display: block;\n clear: both;\n}\n.gridjs-pagination .gridjs-summary {\n float: left;\n margin-top: 5px;\n}\n.gridjs-pagination .gridjs-pages {\n float: right;\n}\n.gridjs-pagination .gridjs-pages button {\n padding: 5px 14px;\n border: 1px solid #d2d6dc;\n background-color: #fff;\n border-right: none;\n outline: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.gridjs-pagination .gridjs-pages button:focus {\n box-shadow: 0 0 0 2px rgba(149, 189, 243, 0.5);\n position: relative;\n margin-right: -1px;\n border-right: 1px solid #d2d6dc;\n}\n.gridjs-pagination .gridjs-pages button:hover {\n background-color: #f7f7f7;\n color: rgb(60, 66, 87);\n outline: none;\n}\n.gridjs-pagination .gridjs-pages button:disabled,\n.gridjs-pagination .gridjs-pages button[disabled],\n.gridjs-pagination .gridjs-pages button:hover:disabled {\n cursor: default;\n background-color: #fff;\n color: #6b7280;\n}\n.gridjs-pagination .gridjs-pages button.gridjs-spread {\n cursor: default;\n box-shadow: none;\n background-color: #fff;\n}\n.gridjs-pagination .gridjs-pages button.gridjs-currentPage {\n background-color: #f7f7f7;\n font-weight: bold;\n}\n.gridjs-pagination .gridjs-pages button:last-child {\n border-bottom-right-radius: 6px;\n border-top-right-radius: 6px;\n border-right: 1px solid #d2d6dc;\n}\n.gridjs-pagination .gridjs-pages button:first-child {\n border-bottom-left-radius: 6px;\n border-top-left-radius: 6px;\n}\n.gridjs-pagination .gridjs-pages button:last-child:focus {\n margin-right: 0;\n}\n\nbutton.gridjs-sort {\n float: right;\n height: 24px;\n width: 13px;\n background-color: transparent;\n background-repeat: no-repeat;\n background-position-x: center;\n cursor: pointer;\n padding: 0;\n margin: 0;\n border: none;\n outline: none;\n background-size: contain;\n}\nbutton.gridjs-sort-neutral {\n opacity: 0.3;\n background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHdpZHRoPSI0MDEuOTk4cHgiIGhlaWdodD0iNDAxLjk5OHB4IiB2aWV3Qm94PSIwIDAgNDAxLjk5OCA0MDEuOTk4IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0MDEuOTk4IDQwMS45OTg7IgoJIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxnPgoJCTxwYXRoIGQ9Ik03My4wOTIsMTY0LjQ1MmgyNTUuODEzYzQuOTQ5LDAsOS4yMzMtMS44MDcsMTIuODQ4LTUuNDI0YzMuNjEzLTMuNjE2LDUuNDI3LTcuODk4LDUuNDI3LTEyLjg0NwoJCQljMC00Ljk0OS0xLjgxMy05LjIyOS01LjQyNy0xMi44NUwyMTMuODQ2LDUuNDI0QzIxMC4yMzIsMS44MTIsMjA1Ljk1MSwwLDIwMC45OTksMHMtOS4yMzMsMS44MTItMTIuODUsNS40MjRMNjAuMjQyLDEzMy4zMzEKCQkJYy0zLjYxNywzLjYxNy01LjQyNCw3LjkwMS01LjQyNCwxMi44NWMwLDQuOTQ4LDEuODA3LDkuMjMxLDUuNDI0LDEyLjg0N0M2My44NjMsMTYyLjY0NSw2OC4xNDQsMTY0LjQ1Miw3My4wOTIsMTY0LjQ1MnoiLz4KCQk8cGF0aCBkPSJNMzI4LjkwNSwyMzcuNTQ5SDczLjA5MmMtNC45NTIsMC05LjIzMywxLjgwOC0xMi44NSw1LjQyMWMtMy42MTcsMy42MTctNS40MjQsNy44OTgtNS40MjQsMTIuODQ3CgkJCWMwLDQuOTQ5LDEuODA3LDkuMjMzLDUuNDI0LDEyLjg0OEwxODguMTQ5LDM5Ni41N2MzLjYyMSwzLjYxNyw3LjkwMiw1LjQyOCwxMi44NSw1LjQyOHM5LjIzMy0xLjgxMSwxMi44NDctNS40MjhsMTI3LjkwNy0xMjcuOTA2CgkJCWMzLjYxMy0zLjYxNCw1LjQyNy03Ljg5OCw1LjQyNy0xMi44NDhjMC00Ljk0OC0xLjgxMy05LjIyOS01LjQyNy0xMi44NDdDMzM4LjEzOSwyMzkuMzUzLDMzMy44NTQsMjM3LjU0OSwzMjguOTA1LDIzNy41NDl6Ii8+Cgk8L2c+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+");\n background-position-y: center;\n}\nbutton.gridjs-sort-asc {\n background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHdpZHRoPSIyOTIuMzYycHgiIGhlaWdodD0iMjkyLjM2MXB4IiB2aWV3Qm94PSIwIDAgMjkyLjM2MiAyOTIuMzYxIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTIuMzYyIDI5Mi4zNjE7IgoJIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwYXRoIGQ9Ik0yODYuOTM1LDE5Ny4yODdMMTU5LjAyOCw2OS4zODFjLTMuNjEzLTMuNjE3LTcuODk1LTUuNDI0LTEyLjg0Ny01LjQyNHMtOS4yMzMsMS44MDctMTIuODUsNS40MjRMNS40MjQsMTk3LjI4NwoJCUMxLjgwNywyMDAuOTA0LDAsMjA1LjE4NiwwLDIxMC4xMzRzMS44MDcsOS4yMzMsNS40MjQsMTIuODQ3YzMuNjIxLDMuNjE3LDcuOTAyLDUuNDI1LDEyLjg1LDUuNDI1aDI1NS44MTMKCQljNC45NDksMCw5LjIzMy0xLjgwOCwxMi44NDgtNS40MjVjMy42MTMtMy42MTMsNS40MjctNy44OTgsNS40MjctMTIuODQ3UzI5MC41NDgsMjAwLjkwNCwyODYuOTM1LDE5Ny4yODd6Ii8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+");\n background-position-y: 35%;\n background-size: 10px;\n}\nbutton.gridjs-sort-desc {\n background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHdpZHRoPSIyOTIuMzYycHgiIGhlaWdodD0iMjkyLjM2MnB4IiB2aWV3Qm94PSIwIDAgMjkyLjM2MiAyOTIuMzYyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTIuMzYyIDI5Mi4zNjI7IgoJIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwYXRoIGQ9Ik0yODYuOTM1LDY5LjM3N2MtMy42MTQtMy42MTctNy44OTgtNS40MjQtMTIuODQ4LTUuNDI0SDE4LjI3NGMtNC45NTIsMC05LjIzMywxLjgwNy0xMi44NSw1LjQyNAoJCUMxLjgwNyw3Mi45OTgsMCw3Ny4yNzksMCw4Mi4yMjhjMCw0Ljk0OCwxLjgwNyw5LjIyOSw1LjQyNCwxMi44NDdsMTI3LjkwNywxMjcuOTA3YzMuNjIxLDMuNjE3LDcuOTAyLDUuNDI4LDEyLjg1LDUuNDI4CgkJczkuMjMzLTEuODExLDEyLjg0Ny01LjQyOEwyODYuOTM1LDk1LjA3NGMzLjYxMy0zLjYxNyw1LjQyNy03Ljg5OCw1LjQyNy0xMi44NDdDMjkyLjM2Miw3Ny4yNzksMjkwLjU0OCw3Mi45OTgsMjg2LjkzNSw2OS4zNzd6Ii8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+");\n background-position-y: 65%;\n background-size: 10px;\n}\nbutton.gridjs-sort:focus {\n outline: none;\n}\n\ntable.gridjs-table {\n width: 100%;\n max-width: 100%;\n border-collapse: collapse;\n text-align: left;\n display: table;\n margin: 0;\n padding: 0;\n overflow: auto;\n table-layout: fixed;\n}\n\n.gridjs-tbody {\n background-color: #fff;\n}\n\ntd.gridjs-td {\n border: 1px solid #e5e7eb;\n padding: 12px 24px;\n background-color: #fff;\n box-sizing: content-box;\n}\ntd.gridjs-td:first-child {\n border-left: none;\n}\ntd.gridjs-td:last-child {\n border-right: none;\n}\ntd.gridjs-message {\n text-align: center;\n}\n\nth.gridjs-th {\n position: relative;\n color: #6b7280;\n background-color: #f9fafb;\n border: 1px solid #e5e7eb;\n border-top: none;\n padding: 14px 24px;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n box-sizing: border-box;\n white-space: nowrap;\n outline: none;\n vertical-align: middle;\n}\nth.gridjs-th .gridjs-th-content {\n text-overflow: ellipsis;\n overflow: hidden;\n width: 100%;\n float: left;\n}\nth.gridjs-th-sort {\n cursor: pointer;\n}\nth.gridjs-th-sort .gridjs-th-content {\n width: calc(100% - 15px);\n}\nth.gridjs-th-sort:hover {\n background-color: #e5e7eb;\n}\nth.gridjs-th-sort:focus {\n background-color: #e5e7eb;\n}\nth.gridjs-th-fixed {\n position: sticky;\n box-shadow: 0 1px 0 0 #e5e7eb;\n}\n@supports (-moz-appearance: none) {\n th.gridjs-th-fixed {\n box-shadow: 0 0 0 1px #e5e7eb;\n }\n}\nth.gridjs-th:first-child {\n border-left: none;\n}\nth.gridjs-th:last-child {\n border-right: none;\n}\n\n.gridjs-tr {\n border: none;\n}\n.gridjs-tr-selected td {\n background-color: #ebf5ff;\n}\n.gridjs-tr:last-child td {\n border-bottom: 0;\n}\n\n.gridjs *,\n.gridjs :after,\n.gridjs :before {\n box-sizing: border-box;\n}\n\n.gridjs-wrapper {\n position: relative;\n z-index: 1;\n overflow: auto;\n width: 100%;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.26);\n border-radius: 8px 8px 0 0;\n display: block;\n border-top-width: 1px;\n border-color: #e5e7eb;\n}\n.gridjs-wrapper:nth-last-of-type(2) {\n border-radius: 8px;\n border-bottom-width: 1px;\n}\n\n.gridjs-search {\n float: left;\n}\n.gridjs-search-input {\n width: 250px;\n}\n\n.gridjs-loading-bar {\n z-index: 10;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background-color: #fff;\n opacity: 0.5;\n}\n.gridjs-loading-bar::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n transform: translateX(-100%);\n background-image: linear-gradient(90deg, rgba(204, 204, 204, 0) 0, rgba(204, 204, 204, 0.2) 20%, rgba(204, 204, 204, 0.5) 60%, rgba(204, 204, 204, 0));\n animation: shimmer 2s infinite;\n content: "";\n}\n@keyframes shimmer {\n 100% {\n transform: translateX(100%);\n }\n}\n\n.gridjs-td .gridjs-checkbox {\n display: block;\n margin: auto;\n cursor: pointer;\n}\n\n.gridjs-resizable {\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n width: 5px;\n}\n.gridjs-resizable:hover {\n cursor: ew-resize;\n background-color: #9bc2f7;\n}\n/*# sourceMappingURL=mermaid.css?inline.map */';
2409
- const minMaxPercentSliderCss = 'input[type=range]::-webkit-slider-thumb {\n -webkit-appearance: none;\n pointer-events: all;\n width: 24px;\n height: 24px;\n background-color: #fff;\n border-radius: 50%;\n box-shadow: 0 0 0 1px #C6C6C6;\n cursor: pointer;\n}\n\ninput[type=range]::-moz-range-thumb {\n -webkit-appearance: none;\n pointer-events: all;\n width: 24px;\n height: 24px;\n background-color: #fff;\n border-radius: 50%;\n box-shadow: 0 0 0 1px #C6C6C6;\n cursor: pointer;\n}\n\ninput[type=range]::-webkit-slider-thumb:hover {\n background: #f7f7f7;\n}\n\ninput[type=range]::-webkit-slider-thumb:active {\n box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;\n -webkit-box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;\n}\n\ninput[type="range"] {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n height: 2px;\n width: 100%;\n position: absolute;\n background-color: #C6C6C6;\n pointer-events: none;\n}';
2410
- const tailwindStyle = `*, ::before, ::after {
2411
- --tw-border-spacing-x: 0;
2412
- --tw-border-spacing-y: 0;
2413
- --tw-translate-x: 0;
2414
- --tw-translate-y: 0;
2415
- --tw-rotate: 0;
2416
- --tw-skew-x: 0;
2417
- --tw-skew-y: 0;
2418
- --tw-scale-x: 1;
2419
- --tw-scale-y: 1;
2420
- --tw-pan-x: ;
2421
- --tw-pan-y: ;
2422
- --tw-pinch-zoom: ;
2423
- --tw-scroll-snap-strictness: proximity;
2424
- --tw-gradient-from-position: ;
2425
- --tw-gradient-via-position: ;
2426
- --tw-gradient-to-position: ;
2427
- --tw-ordinal: ;
2428
- --tw-slashed-zero: ;
2429
- --tw-numeric-figure: ;
2430
- --tw-numeric-spacing: ;
2431
- --tw-numeric-fraction: ;
2432
- --tw-ring-inset: ;
2433
- --tw-ring-offset-width: 0px;
2434
- --tw-ring-offset-color: #fff;
2435
- --tw-ring-color: rgb(59 130 246 / 0.5);
2436
- --tw-ring-offset-shadow: 0 0 #0000;
2437
- --tw-ring-shadow: 0 0 #0000;
2438
- --tw-shadow: 0 0 #0000;
2439
- --tw-shadow-colored: 0 0 #0000;
2440
- --tw-blur: ;
2441
- --tw-brightness: ;
2442
- --tw-contrast: ;
2443
- --tw-grayscale: ;
2444
- --tw-hue-rotate: ;
2445
- --tw-invert: ;
2446
- --tw-saturate: ;
2447
- --tw-sepia: ;
2448
- --tw-drop-shadow: ;
2449
- --tw-backdrop-blur: ;
2450
- --tw-backdrop-brightness: ;
2451
- --tw-backdrop-contrast: ;
2452
- --tw-backdrop-grayscale: ;
2453
- --tw-backdrop-hue-rotate: ;
2454
- --tw-backdrop-invert: ;
2455
- --tw-backdrop-opacity: ;
2456
- --tw-backdrop-saturate: ;
2457
- --tw-backdrop-sepia: ;
2458
- --tw-contain-size: ;
2459
- --tw-contain-layout: ;
2460
- --tw-contain-paint: ;
2461
- --tw-contain-style: ;
2462
- }
2463
-
2464
- ::backdrop {
2465
- --tw-border-spacing-x: 0;
2466
- --tw-border-spacing-y: 0;
2467
- --tw-translate-x: 0;
2468
- --tw-translate-y: 0;
2469
- --tw-rotate: 0;
2470
- --tw-skew-x: 0;
2471
- --tw-skew-y: 0;
2472
- --tw-scale-x: 1;
2473
- --tw-scale-y: 1;
2474
- --tw-pan-x: ;
2475
- --tw-pan-y: ;
2476
- --tw-pinch-zoom: ;
2477
- --tw-scroll-snap-strictness: proximity;
2478
- --tw-gradient-from-position: ;
2479
- --tw-gradient-via-position: ;
2480
- --tw-gradient-to-position: ;
2481
- --tw-ordinal: ;
2482
- --tw-slashed-zero: ;
2483
- --tw-numeric-figure: ;
2484
- --tw-numeric-spacing: ;
2485
- --tw-numeric-fraction: ;
2486
- --tw-ring-inset: ;
2487
- --tw-ring-offset-width: 0px;
2488
- --tw-ring-offset-color: #fff;
2489
- --tw-ring-color: rgb(59 130 246 / 0.5);
2490
- --tw-ring-offset-shadow: 0 0 #0000;
2491
- --tw-ring-shadow: 0 0 #0000;
2492
- --tw-shadow: 0 0 #0000;
2493
- --tw-shadow-colored: 0 0 #0000;
2494
- --tw-blur: ;
2495
- --tw-brightness: ;
2496
- --tw-contrast: ;
2497
- --tw-grayscale: ;
2498
- --tw-hue-rotate: ;
2499
- --tw-invert: ;
2500
- --tw-saturate: ;
2501
- --tw-sepia: ;
2502
- --tw-drop-shadow: ;
2503
- --tw-backdrop-blur: ;
2504
- --tw-backdrop-brightness: ;
2505
- --tw-backdrop-contrast: ;
2506
- --tw-backdrop-grayscale: ;
2507
- --tw-backdrop-hue-rotate: ;
2508
- --tw-backdrop-invert: ;
2509
- --tw-backdrop-opacity: ;
2510
- --tw-backdrop-saturate: ;
2511
- --tw-backdrop-sepia: ;
2512
- --tw-contain-size: ;
2513
- --tw-contain-layout: ;
2514
- --tw-contain-paint: ;
2515
- --tw-contain-style: ;
2516
- }/*
2517
- ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
2518
- *//*
2519
- 1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2520
- 2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
2521
- */
2522
-
2523
- *,
2524
- ::before,
2525
- ::after {
2526
- box-sizing: border-box; /* 1 */
2527
- border-width: 0; /* 2 */
2528
- border-style: solid; /* 2 */
2529
- border-color: #e5e7eb; /* 2 */
2530
- }
2531
-
2532
- ::before,
2533
- ::after {
2534
- --tw-content: '';
2535
- }
2536
-
2537
- /*
2538
- 1. Use a consistent sensible line-height in all browsers.
2539
- 2. Prevent adjustments of font size after orientation changes in iOS.
2540
- 3. Use a more readable tab size.
2541
- 4. Use the user's configured \`sans\` font-family by default.
2542
- 5. Use the user's configured \`sans\` font-feature-settings by default.
2543
- 6. Use the user's configured \`sans\` font-variation-settings by default.
2544
- 7. Disable tap highlights on iOS
2545
- */
2546
-
2547
- html,
2548
- :host {
2549
- line-height: 1.5; /* 1 */
2550
- -webkit-text-size-adjust: 100%; /* 2 */
2551
- -moz-tab-size: 4; /* 3 */
2552
- -o-tab-size: 4;
2553
- tab-size: 4; /* 3 */
2554
- font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
2555
- font-feature-settings: normal; /* 5 */
2556
- font-variation-settings: normal; /* 6 */
2557
- -webkit-tap-highlight-color: transparent; /* 7 */
2558
- }
2559
-
2560
- /*
2561
- 1. Remove the margin in all browsers.
2562
- 2. Inherit line-height from \`html\` so users can set them as a class directly on the \`html\` element.
2563
- */
2564
-
2565
- body {
2566
- margin: 0; /* 1 */
2567
- line-height: inherit; /* 2 */
2568
- }
2569
-
2570
- /*
2571
- 1. Add the correct height in Firefox.
2572
- 2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
2573
- 3. Ensure horizontal rules are visible by default.
2574
- */
2575
-
2576
- hr {
2577
- height: 0; /* 1 */
2578
- color: inherit; /* 2 */
2579
- border-top-width: 1px; /* 3 */
2580
- }
2581
-
2582
- /*
2583
- Add the correct text decoration in Chrome, Edge, and Safari.
2584
- */
2585
-
2586
- abbr:where([title]) {
2587
- -webkit-text-decoration: underline dotted;
2588
- text-decoration: underline dotted;
2589
- }
2590
-
2591
- /*
2592
- Remove the default font size and weight for headings.
2593
- */
2594
-
2595
- h1,
2596
- h2,
2597
- h3,
2598
- h4,
2599
- h5,
2600
- h6 {
2601
- font-size: inherit;
2602
- font-weight: inherit;
2603
- }
2604
-
2605
- /*
2606
- Reset links to optimize for opt-in styling instead of opt-out.
2607
- */
2608
-
2609
- a {
2610
- color: inherit;
2611
- text-decoration: inherit;
2612
- }
2613
-
2614
- /*
2615
- Add the correct font weight in Edge and Safari.
2616
- */
2617
-
2618
- b,
2619
- strong {
2620
- font-weight: bolder;
2621
- }
2622
-
2623
- /*
2624
- 1. Use the user's configured \`mono\` font-family by default.
2625
- 2. Use the user's configured \`mono\` font-feature-settings by default.
2626
- 3. Use the user's configured \`mono\` font-variation-settings by default.
2627
- 4. Correct the odd \`em\` font sizing in all browsers.
2628
- */
2629
-
2630
- code,
2631
- kbd,
2632
- samp,
2633
- pre {
2634
- font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
2635
- font-feature-settings: normal; /* 2 */
2636
- font-variation-settings: normal; /* 3 */
2637
- font-size: 1em; /* 4 */
2638
- }
2639
-
2640
- /*
2641
- Add the correct font size in all browsers.
2642
- */
2643
-
2644
- small {
2645
- font-size: 80%;
2646
- }
2647
-
2648
- /*
2649
- Prevent \`sub\` and \`sup\` elements from affecting the line height in all browsers.
2650
- */
2651
-
2652
- sub,
2653
- sup {
2654
- font-size: 75%;
2655
- line-height: 0;
2656
- position: relative;
2657
- vertical-align: baseline;
2658
- }
2659
-
2660
- sub {
2661
- bottom: -0.25em;
2662
- }
2663
-
2664
- sup {
2665
- top: -0.5em;
2666
- }
2667
-
2668
- /*
2669
- 1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2670
- 2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
2671
- 3. Remove gaps between table borders by default.
2672
- */
2673
-
2674
- table {
2675
- text-indent: 0; /* 1 */
2676
- border-color: inherit; /* 2 */
2677
- border-collapse: collapse; /* 3 */
2678
- }
2679
-
2680
- /*
2681
- 1. Change the font styles in all browsers.
2682
- 2. Remove the margin in Firefox and Safari.
2683
- 3. Remove default padding in all browsers.
2684
- */
2685
-
2686
- button,
2687
- input,
2688
- optgroup,
2689
- select,
2690
- textarea {
2691
- font-family: inherit; /* 1 */
2692
- font-feature-settings: inherit; /* 1 */
2693
- font-variation-settings: inherit; /* 1 */
2694
- font-size: 100%; /* 1 */
2695
- font-weight: inherit; /* 1 */
2696
- line-height: inherit; /* 1 */
2697
- letter-spacing: inherit; /* 1 */
2698
- color: inherit; /* 1 */
2699
- margin: 0; /* 2 */
2700
- padding: 0; /* 3 */
2701
- }
2702
-
2703
- /*
2704
- Remove the inheritance of text transform in Edge and Firefox.
2705
- */
2706
-
2707
- button,
2708
- select {
2709
- text-transform: none;
2710
- }
2711
-
2712
- /*
2713
- 1. Correct the inability to style clickable types in iOS and Safari.
2714
- 2. Remove default button styles.
2715
- */
2716
-
2717
- button,
2718
- input:where([type='button']),
2719
- input:where([type='reset']),
2720
- input:where([type='submit']) {
2721
- -webkit-appearance: button; /* 1 */
2722
- background-color: transparent; /* 2 */
2723
- background-image: none; /* 2 */
2724
- }
2725
-
2726
- /*
2727
- Use the modern Firefox focus style for all focusable elements.
2728
- */
2729
-
2730
- :-moz-focusring {
2731
- outline: auto;
2732
- }
2733
-
2734
- /*
2735
- Remove the additional \`:invalid\` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
2736
- */
2737
-
2738
- :-moz-ui-invalid {
2739
- box-shadow: none;
2740
- }
2741
-
2742
- /*
2743
- Add the correct vertical alignment in Chrome and Firefox.
2744
- */
2745
-
2746
- progress {
2747
- vertical-align: baseline;
2748
- }
2749
-
2750
- /*
2751
- Correct the cursor style of increment and decrement buttons in Safari.
2752
- */
2753
-
2754
- ::-webkit-inner-spin-button,
2755
- ::-webkit-outer-spin-button {
2756
- height: auto;
2757
- }
2758
-
2759
- /*
2760
- 1. Correct the odd appearance in Chrome and Safari.
2761
- 2. Correct the outline style in Safari.
2762
- */
2763
-
2764
- [type='search'] {
2765
- -webkit-appearance: textfield; /* 1 */
2766
- outline-offset: -2px; /* 2 */
2767
- }
2768
-
2769
- /*
2770
- Remove the inner padding in Chrome and Safari on macOS.
2771
- */
2772
-
2773
- ::-webkit-search-decoration {
2774
- -webkit-appearance: none;
2775
- }
2776
-
2777
- /*
2778
- 1. Correct the inability to style clickable types in iOS and Safari.
2779
- 2. Change font properties to \`inherit\` in Safari.
2780
- */
2781
-
2782
- ::-webkit-file-upload-button {
2783
- -webkit-appearance: button; /* 1 */
2784
- font: inherit; /* 2 */
2785
- }
2786
-
2787
- /*
2788
- Add the correct display in Chrome and Safari.
2789
- */
2790
-
2791
- summary {
2792
- display: list-item;
2793
- }
2794
-
2795
- /*
2796
- Removes the default spacing and border for appropriate elements.
2797
- */
2798
-
2799
- blockquote,
2800
- dl,
2801
- dd,
2802
- h1,
2803
- h2,
2804
- h3,
2805
- h4,
2806
- h5,
2807
- h6,
2808
- hr,
2809
- figure,
2810
- p,
2811
- pre {
2812
- margin: 0;
2813
- }
2814
-
2815
- fieldset {
2816
- margin: 0;
2817
- padding: 0;
2818
- }
2819
-
2820
- legend {
2821
- padding: 0;
2822
- }
2823
-
2824
- ol,
2825
- ul,
2826
- menu {
2827
- list-style: none;
2828
- margin: 0;
2829
- padding: 0;
2830
- }
2831
-
2832
- /*
2833
- Reset default styling for dialogs.
2834
- */
2835
- dialog {
2836
- padding: 0;
2837
- }
2838
-
2839
- /*
2840
- Prevent resizing textareas horizontally by default.
2841
- */
2842
-
2843
- textarea {
2844
- resize: vertical;
2845
- }
2846
-
2847
- /*
2848
- 1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2849
- 2. Set the default placeholder color to the user's configured gray 400 color.
2850
- */
2851
-
2852
- input::-moz-placeholder, textarea::-moz-placeholder {
2853
- opacity: 1; /* 1 */
2854
- color: #9ca3af; /* 2 */
2855
- }
2856
-
2857
- input::placeholder,
2858
- textarea::placeholder {
2859
- opacity: 1; /* 1 */
2860
- color: #9ca3af; /* 2 */
2861
- }
2862
-
2863
- /*
2864
- Set the default cursor for buttons.
2865
- */
2866
-
2867
- button,
2868
- [role="button"] {
2869
- cursor: pointer;
2870
- }
2871
-
2872
- /*
2873
- Make sure disabled buttons don't get the pointer cursor.
2874
- */
2875
- :disabled {
2876
- cursor: default;
2877
- }
2878
-
2879
- /*
2880
- 1. Make replaced elements \`display: block\` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2881
- 2. Add \`vertical-align: middle\` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
2882
- This can trigger a poorly considered lint error in some tools but is included by design.
2883
- */
2884
-
2885
- img,
2886
- svg,
2887
- video,
2888
- canvas,
2889
- audio,
2890
- iframe,
2891
- embed,
2892
- object {
2893
- display: block; /* 1 */
2894
- vertical-align: middle; /* 2 */
2895
- }
2896
-
2897
- /*
2898
- Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
2899
- */
2900
-
2901
- img,
2902
- video {
2903
- max-width: 100%;
2904
- height: auto;
2905
- }
2906
-
2907
- /* Make elements with the HTML hidden attribute stay hidden by default */
2908
- [hidden]:where(:not([hidden="until-found"])) {
2909
- display: none;
2910
- }
2911
-
2912
- :root,
2913
- [data-theme] {
2914
- background-color: var(--fallback-b1,oklch(var(--b1)/1));
2915
- color: var(--fallback-bc,oklch(var(--bc)/1));
2916
- }
2917
-
2918
- @supports not (color: oklch(0% 0 0)) {
2919
-
2920
- :root {
2921
- color-scheme: light;
2922
- --fallback-p: #491eff;
2923
- --fallback-pc: #d4dbff;
2924
- --fallback-s: #ff41c7;
2925
- --fallback-sc: #fff9fc;
2926
- --fallback-a: #00cfbd;
2927
- --fallback-ac: #00100d;
2928
- --fallback-n: #2b3440;
2929
- --fallback-nc: #d7dde4;
2930
- --fallback-b1: #ffffff;
2931
- --fallback-b2: #e5e6e6;
2932
- --fallback-b3: #e5e6e6;
2933
- --fallback-bc: #1f2937;
2934
- --fallback-in: #00b3f0;
2935
- --fallback-inc: #000000;
2936
- --fallback-su: #00ca92;
2937
- --fallback-suc: #000000;
2938
- --fallback-wa: #ffc22d;
2939
- --fallback-wac: #000000;
2940
- --fallback-er: #ff6f70;
2941
- --fallback-erc: #000000;
2942
- }
2943
-
2944
- @media (prefers-color-scheme: dark) {
2945
-
2946
- :root {
2947
- color-scheme: dark;
2948
- --fallback-p: #7582ff;
2949
- --fallback-pc: #050617;
2950
- --fallback-s: #ff71cf;
2951
- --fallback-sc: #190211;
2952
- --fallback-a: #00c7b5;
2953
- --fallback-ac: #000e0c;
2954
- --fallback-n: #2a323c;
2955
- --fallback-nc: #a6adbb;
2956
- --fallback-b1: #1d232a;
2957
- --fallback-b2: #191e24;
2958
- --fallback-b3: #15191e;
2959
- --fallback-bc: #a6adbb;
2960
- --fallback-in: #00b3f0;
2961
- --fallback-inc: #000000;
2962
- --fallback-su: #00ca92;
2963
- --fallback-suc: #000000;
2964
- --fallback-wa: #ffc22d;
2965
- --fallback-wac: #000000;
2966
- --fallback-er: #ff6f70;
2967
- --fallback-erc: #000000;
2968
- }
2969
- }
2970
- }
2971
-
2972
- html {
2973
- -webkit-tap-highlight-color: transparent;
2974
- }
2975
-
2976
- * {
2977
- scrollbar-color: color-mix(in oklch, currentColor 35%, transparent) transparent;
2978
- }
2979
-
2980
- *:hover {
2981
- scrollbar-color: color-mix(in oklch, currentColor 60%, transparent) transparent;
2982
- }
2983
-
2984
- :root {
2985
- color-scheme: light;
2986
- --in: 72.06% 0.191 231.6;
2987
- --su: 64.8% 0.150 160;
2988
- --wa: 84.71% 0.199 83.87;
2989
- --er: 71.76% 0.221 22.18;
2990
- --pc: 89.824% 0.06192 275.75;
2991
- --ac: 15.352% 0.0368 183.61;
2992
- --inc: 0% 0 0;
2993
- --suc: 0% 0 0;
2994
- --wac: 0% 0 0;
2995
- --erc: 0% 0 0;
2996
- --rounded-box: 1rem;
2997
- --rounded-btn: 0.5rem;
2998
- --rounded-badge: 1.9rem;
2999
- --animation-btn: 0.25s;
3000
- --animation-input: .2s;
3001
- --btn-focus-scale: 0.95;
3002
- --border-btn: 1px;
3003
- --tab-border: 1px;
3004
- --tab-radius: 0.5rem;
3005
- --p: 49.12% 0.3096 275.75;
3006
- --s: 69.71% 0.329 342.55;
3007
- --sc: 98.71% 0.0106 342.55;
3008
- --a: 76.76% 0.184 183.61;
3009
- --n: 32.1785% 0.02476 255.701624;
3010
- --nc: 89.4994% 0.011585 252.096176;
3011
- --b1: 100% 0 0;
3012
- --b2: 96.1151% 0 0;
3013
- --b3: 92.4169% 0.00108 197.137559;
3014
- --bc: 27.8078% 0.029596 256.847952;
3015
- }
3016
- .container {
3017
- width: 100%;
3018
- }
3019
- @media (min-width: 640px) {
3020
-
3021
- .container {
3022
- max-width: 640px;
3023
- }
3024
- }
3025
- @media (min-width: 768px) {
3026
-
3027
- .container {
3028
- max-width: 768px;
3029
- }
3030
- }
3031
- @media (min-width: 1024px) {
3032
-
3033
- .container {
3034
- max-width: 1024px;
3035
- }
3036
- }
3037
- @media (min-width: 1280px) {
3038
-
3039
- .container {
3040
- max-width: 1280px;
3041
- }
3042
- }
3043
- @media (min-width: 1536px) {
3044
-
3045
- .container {
3046
- max-width: 1536px;
3047
- }
3048
- }
3049
- .alert {
3050
- display: grid;
3051
- width: 100%;
3052
- grid-auto-flow: row;
3053
- align-content: flex-start;
3054
- align-items: center;
3055
- justify-items: center;
3056
- gap: 1rem;
3057
- text-align: center;
3058
- border-radius: var(--rounded-box, 1rem);
3059
- border-width: 1px;
3060
- --tw-border-opacity: 1;
3061
- border-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));
3062
- padding: 1rem;
3063
- --tw-text-opacity: 1;
3064
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
3065
- --alert-bg: var(--fallback-b2,oklch(var(--b2)/1));
3066
- --alert-bg-mix: var(--fallback-b1,oklch(var(--b1)/1));
3067
- background-color: var(--alert-bg);
3068
- }
3069
- @media (min-width: 640px) {
3070
-
3071
- .alert {
3072
- grid-auto-flow: column;
3073
- grid-template-columns: auto minmax(auto,1fr);
3074
- justify-items: start;
3075
- text-align: start;
3076
- }
3077
- }
3078
- .avatar.placeholder > div {
3079
- display: flex;
3080
- align-items: center;
3081
- justify-content: center;
3082
- }
3083
- @media (hover:hover) {
3084
-
3085
- .label a:hover {
3086
- --tw-text-opacity: 1;
3087
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
3088
- }
3089
-
3090
- .menu li > *:not(ul, .menu-title, details, .btn):active,
3091
- .menu li > *:not(ul, .menu-title, details, .btn).active,
3092
- .menu li > details > summary:active {
3093
- --tw-bg-opacity: 1;
3094
- background-color: var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));
3095
- --tw-text-opacity: 1;
3096
- color: var(--fallback-nc,oklch(var(--nc)/var(--tw-text-opacity)));
3097
- }
3098
-
3099
- .tab:hover {
3100
- --tw-text-opacity: 1;
3101
- }
3102
-
3103
- .table tr.hover:hover,
3104
- .table tr.hover:nth-child(even):hover {
3105
- --tw-bg-opacity: 1;
3106
- background-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));
3107
- }
3108
- }
3109
- .btn {
3110
- display: inline-flex;
3111
- height: 3rem;
3112
- min-height: 3rem;
3113
- flex-shrink: 0;
3114
- cursor: pointer;
3115
- -webkit-user-select: none;
3116
- -moz-user-select: none;
3117
- user-select: none;
3118
- flex-wrap: wrap;
3119
- align-items: center;
3120
- justify-content: center;
3121
- border-radius: var(--rounded-btn, 0.5rem);
3122
- border-color: transparent;
3123
- border-color: oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity));
3124
- padding-left: 1rem;
3125
- padding-right: 1rem;
3126
- text-align: center;
3127
- font-size: 0.875rem;
3128
- line-height: 1em;
3129
- gap: 0.5rem;
3130
- font-weight: 600;
3131
- text-decoration-line: none;
3132
- transition-duration: 200ms;
3133
- transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3134
- border-width: var(--border-btn, 1px);
3135
- transition-property: color, background-color, border-color, opacity, box-shadow, transform;
3136
- --tw-text-opacity: 1;
3137
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
3138
- --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
3139
- --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
3140
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
3141
- outline-color: var(--fallback-bc,oklch(var(--bc)/1));
3142
- background-color: oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity));
3143
- --tw-bg-opacity: 1;
3144
- --tw-border-opacity: 1;
3145
- }
3146
- .btn-disabled,
3147
- .btn[disabled],
3148
- .btn:disabled {
3149
- pointer-events: none;
3150
- }
3151
- .btn-circle {
3152
- height: 3rem;
3153
- width: 3rem;
3154
- border-radius: 9999px;
3155
- padding: 0px;
3156
- }
3157
- :where(.btn:is(input[type="checkbox"])),
3158
- :where(.btn:is(input[type="radio"])) {
3159
- width: auto;
3160
- -webkit-appearance: none;
3161
- -moz-appearance: none;
3162
- appearance: none;
3163
- }
3164
- .btn:is(input[type="checkbox"]):after,
3165
- .btn:is(input[type="radio"]):after {
3166
- --tw-content: attr(aria-label);
3167
- content: var(--tw-content);
3168
- }
3169
- .checkbox {
3170
- flex-shrink: 0;
3171
- --chkbg: var(--fallback-bc,oklch(var(--bc)/1));
3172
- --chkfg: var(--fallback-b1,oklch(var(--b1)/1));
3173
- height: 1.5rem;
3174
- width: 1.5rem;
3175
- cursor: pointer;
3176
- -webkit-appearance: none;
3177
- -moz-appearance: none;
3178
- appearance: none;
3179
- border-radius: var(--rounded-btn, 0.5rem);
3180
- border-width: 1px;
3181
- border-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));
3182
- --tw-border-opacity: 0.2;
3183
- }
3184
- .diff {
3185
- position: relative;
3186
- display: grid;
3187
- width: 100%;
3188
- overflow: hidden;
3189
- direction: ltr;
3190
- container-type: inline-size;
3191
- grid-template-columns: auto 1fr;
3192
- }
3193
- .divider {
3194
- display: flex;
3195
- flex-direction: row;
3196
- align-items: center;
3197
- align-self: stretch;
3198
- margin-top: 1rem;
3199
- margin-bottom: 1rem;
3200
- height: 1rem;
3201
- white-space: nowrap;
3202
- }
3203
- .divider:before,
3204
- .divider:after {
3205
- height: 0.125rem;
3206
- width: 100%;
3207
- flex-grow: 1;
3208
- --tw-content: '';
3209
- content: var(--tw-content);
3210
- background-color: var(--fallback-bc,oklch(var(--bc)/0.1));
3211
- }
3212
- .dropdown {
3213
- position: relative;
3214
- display: inline-block;
3215
- }
3216
- .dropdown > *:not(summary):focus {
3217
- outline: 2px solid transparent;
3218
- outline-offset: 2px;
3219
- }
3220
- .dropdown .dropdown-content {
3221
- position: absolute;
3222
- }
3223
- .dropdown:is(:not(details)) .dropdown-content {
3224
- visibility: hidden;
3225
- opacity: 0;
3226
- transform-origin: top;
3227
- --tw-scale-x: .95;
3228
- --tw-scale-y: .95;
3229
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
3230
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
3231
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
3232
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
3233
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
3234
- transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3235
- transition-duration: 200ms;
3236
- }
3237
- .dropdown.dropdown-open .dropdown-content,
3238
- .dropdown:not(.dropdown-hover):focus .dropdown-content,
3239
- .dropdown:focus-within .dropdown-content {
3240
- visibility: visible;
3241
- opacity: 1;
3242
- }
3243
- @media (hover: hover) {
3244
-
3245
- .dropdown.dropdown-hover:hover .dropdown-content {
3246
- visibility: visible;
3247
- opacity: 1;
3248
- }
3249
-
3250
- .btm-nav > *.disabled:hover,
3251
- .btm-nav > *[disabled]:hover {
3252
- pointer-events: none;
3253
- --tw-border-opacity: 0;
3254
- background-color: var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));
3255
- --tw-bg-opacity: 0.1;
3256
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
3257
- --tw-text-opacity: 0.2;
3258
- }
3259
-
3260
- .btn:hover {
3261
- --tw-border-opacity: 1;
3262
- border-color: var(--fallback-b3,oklch(var(--b3)/var(--tw-border-opacity)));
3263
- --tw-bg-opacity: 1;
3264
- background-color: var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)));
3265
- }
3266
-
3267
- @supports (color: color-mix(in oklab, black, black)) {
3268
-
3269
- .btn:hover {
3270
- background-color: color-mix(
3271
- in oklab,
3272
- oklch(var(--btn-color, var(--b2)) / var(--tw-bg-opacity, 1)) 90%,
3273
- black
3274
- );
3275
- border-color: color-mix(
3276
- in oklab,
3277
- oklch(var(--btn-color, var(--b2)) / var(--tw-border-opacity, 1)) 90%,
3278
- black
3279
- );
3280
- }
3281
- }
3282
-
3283
- @supports not (color: oklch(0% 0 0)) {
3284
-
3285
- .btn:hover {
3286
- background-color: var(--btn-color, var(--fallback-b2));
3287
- border-color: var(--btn-color, var(--fallback-b2));
3288
- }
3289
- }
3290
-
3291
- .btn.glass:hover {
3292
- --glass-opacity: 25%;
3293
- --glass-border-opacity: 15%;
3294
- }
3295
-
3296
- .btn-ghost:hover {
3297
- border-color: transparent;
3298
- }
3299
-
3300
- @supports (color: oklch(0% 0 0)) {
3301
-
3302
- .btn-ghost:hover {
3303
- background-color: var(--fallback-bc,oklch(var(--bc)/0.2));
3304
- }
3305
- }
3306
-
3307
- .btn-disabled:hover,
3308
- .btn[disabled]:hover,
3309
- .btn:disabled:hover {
3310
- --tw-border-opacity: 0;
3311
- background-color: var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));
3312
- --tw-bg-opacity: 0.2;
3313
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
3314
- --tw-text-opacity: 0.2;
3315
- }
3316
-
3317
- @supports (color: color-mix(in oklab, black, black)) {
3318
-
3319
- .btn:is(input[type="checkbox"]:checked):hover, .btn:is(input[type="radio"]:checked):hover {
3320
- background-color: color-mix(in oklab, var(--fallback-p,oklch(var(--p)/1)) 90%, black);
3321
- border-color: color-mix(in oklab, var(--fallback-p,oklch(var(--p)/1)) 90%, black);
3322
- }
3323
- }
3324
-
3325
- .dropdown.dropdown-hover:hover .dropdown-content {
3326
- --tw-scale-x: 1;
3327
- --tw-scale-y: 1;
3328
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
3329
- }
3330
-
3331
- :where(.menu li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover {
3332
- cursor: pointer;
3333
- outline: 2px solid transparent;
3334
- outline-offset: 2px;
3335
- }
3336
-
3337
- @supports (color: oklch(0% 0 0)) {
3338
-
3339
- :where(.menu li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title)):not(.active, .btn):hover, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(.active, .btn):hover {
3340
- background-color: var(--fallback-bc,oklch(var(--bc)/0.1));
3341
- }
3342
- }
3343
-
3344
- .tab[disabled],
3345
- .tab[disabled]:hover {
3346
- cursor: not-allowed;
3347
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
3348
- --tw-text-opacity: 0.2;
3349
- }
3350
- }
3351
- .dropdown:is(details) summary::-webkit-details-marker {
3352
- display: none;
3353
- }
3354
- .footer {
3355
- display: grid;
3356
- width: 100%;
3357
- grid-auto-flow: row;
3358
- place-items: start;
3359
- -moz-column-gap: 1rem;
3360
- column-gap: 1rem;
3361
- row-gap: 2.5rem;
3362
- font-size: 0.875rem;
3363
- line-height: 1.25rem;
3364
- }
3365
- .footer > * {
3366
- display: grid;
3367
- place-items: start;
3368
- gap: 0.5rem;
3369
- }
3370
- @media (min-width: 48rem) {
3371
-
3372
- .footer {
3373
- grid-auto-flow: column;
3374
- }
3375
-
3376
- .footer-center {
3377
- grid-auto-flow: row dense;
3378
- }
3379
- }
3380
- .label {
3381
- display: flex;
3382
- -webkit-user-select: none;
3383
- -moz-user-select: none;
3384
- user-select: none;
3385
- align-items: center;
3386
- justify-content: space-between;
3387
- padding-left: 0.25rem;
3388
- padding-right: 0.25rem;
3389
- padding-top: 0.5rem;
3390
- padding-bottom: 0.5rem;
3391
- }
3392
- .input {
3393
- flex-shrink: 1;
3394
- -webkit-appearance: none;
3395
- -moz-appearance: none;
3396
- appearance: none;
3397
- height: 3rem;
3398
- padding-left: 1rem;
3399
- padding-right: 1rem;
3400
- font-size: 1rem;
3401
- line-height: 2;
3402
- line-height: 1.5rem;
3403
- border-radius: var(--rounded-btn, 0.5rem);
3404
- border-width: 1px;
3405
- border-color: transparent;
3406
- --tw-bg-opacity: 1;
3407
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
3408
- }
3409
- .input[type="number"]::-webkit-inner-spin-button,
3410
- .input-md[type="number"]::-webkit-inner-spin-button {
3411
- margin-top: -1rem;
3412
- margin-bottom: -1rem;
3413
- margin-inline-end: -1rem;
3414
- }
3415
- .join {
3416
- display: inline-flex;
3417
- align-items: stretch;
3418
- border-radius: var(--rounded-btn, 0.5rem);
3419
- }
3420
- .join :where(.join-item) {
3421
- border-start-end-radius: 0;
3422
- border-end-end-radius: 0;
3423
- border-end-start-radius: 0;
3424
- border-start-start-radius: 0;
3425
- }
3426
- .join .join-item:not(:first-child):not(:last-child),
3427
- .join *:not(:first-child):not(:last-child) .join-item {
3428
- border-start-end-radius: 0;
3429
- border-end-end-radius: 0;
3430
- border-end-start-radius: 0;
3431
- border-start-start-radius: 0;
3432
- }
3433
- .join .join-item:first-child:not(:last-child),
3434
- .join *:first-child:not(:last-child) .join-item {
3435
- border-start-end-radius: 0;
3436
- border-end-end-radius: 0;
3437
- }
3438
- .join .dropdown .join-item:first-child:not(:last-child),
3439
- .join *:first-child:not(:last-child) .dropdown .join-item {
3440
- border-start-end-radius: inherit;
3441
- border-end-end-radius: inherit;
3442
- }
3443
- .join :where(.join-item:first-child:not(:last-child)),
3444
- .join :where(*:first-child:not(:last-child) .join-item) {
3445
- border-end-start-radius: inherit;
3446
- border-start-start-radius: inherit;
3447
- }
3448
- .join .join-item:last-child:not(:first-child),
3449
- .join *:last-child:not(:first-child) .join-item {
3450
- border-end-start-radius: 0;
3451
- border-start-start-radius: 0;
3452
- }
3453
- .join :where(.join-item:last-child:not(:first-child)),
3454
- .join :where(*:last-child:not(:first-child) .join-item) {
3455
- border-start-end-radius: inherit;
3456
- border-end-end-radius: inherit;
3457
- }
3458
- @supports not selector(:has(*)) {
3459
-
3460
- :where(.join *) {
3461
- border-radius: inherit;
3462
- }
3463
- }
3464
- @supports selector(:has(*)) {
3465
-
3466
- :where(.join *:has(.join-item)) {
3467
- border-radius: inherit;
3468
- }
3469
- }
3470
- .link {
3471
- cursor: pointer;
3472
- text-decoration-line: underline;
3473
- }
3474
- .menu {
3475
- display: flex;
3476
- flex-direction: column;
3477
- flex-wrap: wrap;
3478
- font-size: 0.875rem;
3479
- line-height: 1.25rem;
3480
- padding: 0.5rem;
3481
- }
3482
- .menu :where(li ul) {
3483
- position: relative;
3484
- white-space: nowrap;
3485
- margin-inline-start: 1rem;
3486
- padding-inline-start: 0.5rem;
3487
- }
3488
- .menu :where(li:not(.menu-title) > *:not(ul, details, .menu-title, .btn)), .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {
3489
- display: grid;
3490
- grid-auto-flow: column;
3491
- align-content: flex-start;
3492
- align-items: center;
3493
- gap: 0.5rem;
3494
- grid-auto-columns: minmax(auto, max-content) auto max-content;
3495
- -webkit-user-select: none;
3496
- -moz-user-select: none;
3497
- user-select: none;
3498
- }
3499
- .menu li.disabled {
3500
- cursor: not-allowed;
3501
- -webkit-user-select: none;
3502
- -moz-user-select: none;
3503
- user-select: none;
3504
- color: var(--fallback-bc,oklch(var(--bc)/0.3));
3505
- }
3506
- .menu :where(li > .menu-dropdown:not(.menu-dropdown-show)) {
3507
- display: none;
3508
- }
3509
- :where(.menu li) {
3510
- position: relative;
3511
- display: flex;
3512
- flex-shrink: 0;
3513
- flex-direction: column;
3514
- flex-wrap: wrap;
3515
- align-items: stretch;
3516
- }
3517
- :where(.menu li) .badge {
3518
- justify-self: end;
3519
- }
3520
- .modal {
3521
- pointer-events: none;
3522
- position: fixed;
3523
- inset: 0px;
3524
- margin: 0px;
3525
- display: grid;
3526
- height: 100%;
3527
- max-height: none;
3528
- width: 100%;
3529
- max-width: none;
3530
- justify-items: center;
3531
- padding: 0px;
3532
- opacity: 0;
3533
- overscroll-behavior: contain;
3534
- z-index: 999;
3535
- background-color: transparent;
3536
- color: inherit;
3537
- transition-duration: 200ms;
3538
- transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3539
- transition-property: transform, opacity, visibility;
3540
- overflow-y: hidden;
3541
- }
3542
- :where(.modal) {
3543
- align-items: center;
3544
- }
3545
- .modal-box {
3546
- max-height: calc(100vh - 5em);
3547
- grid-column-start: 1;
3548
- grid-row-start: 1;
3549
- width: 91.666667%;
3550
- max-width: 32rem;
3551
- --tw-scale-x: .9;
3552
- --tw-scale-y: .9;
3553
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
3554
- border-bottom-right-radius: var(--rounded-box, 1rem);
3555
- border-bottom-left-radius: var(--rounded-box, 1rem);
3556
- border-top-left-radius: var(--rounded-box, 1rem);
3557
- border-top-right-radius: var(--rounded-box, 1rem);
3558
- --tw-bg-opacity: 1;
3559
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
3560
- padding: 1.5rem;
3561
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
3562
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
3563
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
3564
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
3565
- transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
3566
- transition-duration: 200ms;
3567
- box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
3568
- overflow-y: auto;
3569
- overscroll-behavior: contain;
3570
- }
3571
- .modal-open,
3572
- .modal:target,
3573
- .modal-toggle:checked + .modal,
3574
- .modal[open] {
3575
- pointer-events: auto;
3576
- visibility: visible;
3577
- opacity: 1;
3578
- }
3579
- .modal-action {
3580
- display: flex;
3581
- margin-top: 1.5rem;
3582
- justify-content: flex-end;
3583
- }
3584
- :root:has(:is(.modal-open, .modal:target, .modal-toggle:checked + .modal, .modal[open])) {
3585
- overflow: hidden;
3586
- scrollbar-gutter: stable;
3587
- }
3588
- .radio {
3589
- flex-shrink: 0;
3590
- --chkbg: var(--bc);
3591
- height: 1.5rem;
3592
- width: 1.5rem;
3593
- cursor: pointer;
3594
- -webkit-appearance: none;
3595
- -moz-appearance: none;
3596
- appearance: none;
3597
- border-radius: 9999px;
3598
- border-width: 1px;
3599
- border-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));
3600
- --tw-border-opacity: 0.2;
3601
- }
3602
- .range {
3603
- height: 1.5rem;
3604
- width: 100%;
3605
- cursor: pointer;
3606
- -moz-appearance: none;
3607
- appearance: none;
3608
- -webkit-appearance: none;
3609
- --range-shdw: var(--fallback-bc,oklch(var(--bc)/1));
3610
- overflow: hidden;
3611
- border-radius: var(--rounded-box, 1rem);
3612
- background-color: transparent;
3613
- }
3614
- .range:focus {
3615
- outline: none;
3616
- }
3617
- .select {
3618
- display: inline-flex;
3619
- cursor: pointer;
3620
- -webkit-user-select: none;
3621
- -moz-user-select: none;
3622
- user-select: none;
3623
- -webkit-appearance: none;
3624
- -moz-appearance: none;
3625
- appearance: none;
3626
- height: 3rem;
3627
- min-height: 3rem;
3628
- padding-inline-start: 1rem;
3629
- padding-inline-end: 2.5rem;
3630
- font-size: 0.875rem;
3631
- line-height: 1.25rem;
3632
- line-height: 2;
3633
- border-radius: var(--rounded-btn, 0.5rem);
3634
- border-width: 1px;
3635
- border-color: transparent;
3636
- --tw-bg-opacity: 1;
3637
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
3638
- background-image: linear-gradient(45deg, transparent 50%, currentColor 50%),
3639
- linear-gradient(135deg, currentColor 50%, transparent 50%);
3640
- background-position: calc(100% - 20px) calc(1px + 50%),
3641
- calc(100% - 16.1px) calc(1px + 50%);
3642
- background-size: 4px 4px,
3643
- 4px 4px;
3644
- background-repeat: no-repeat;
3645
- }
3646
- .select[multiple] {
3647
- height: auto;
3648
- }
3649
- .stat {
3650
- display: inline-grid;
3651
- width: 100%;
3652
- grid-template-columns: repeat(1, 1fr);
3653
- -moz-column-gap: 1rem;
3654
- column-gap: 1rem;
3655
- border-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));
3656
- --tw-border-opacity: 0.1;
3657
- padding-left: 1.5rem;
3658
- padding-right: 1.5rem;
3659
- padding-top: 1rem;
3660
- padding-bottom: 1rem;
3661
- }
3662
- .stat-title {
3663
- grid-column-start: 1;
3664
- white-space: nowrap;
3665
- color: var(--fallback-bc,oklch(var(--bc)/0.6));
3666
- }
3667
- .stat-value {
3668
- grid-column-start: 1;
3669
- white-space: nowrap;
3670
- font-size: 2.25rem;
3671
- line-height: 2.5rem;
3672
- font-weight: 800;
3673
- }
3674
- .stat-desc {
3675
- grid-column-start: 1;
3676
- white-space: nowrap;
3677
- font-size: 0.75rem;
3678
- line-height: 1rem;
3679
- color: var(--fallback-bc,oklch(var(--bc)/0.6));
3680
- }
3681
- .steps {
3682
- display: inline-grid;
3683
- grid-auto-flow: column;
3684
- overflow: hidden;
3685
- overflow-x: auto;
3686
- counter-reset: step;
3687
- grid-auto-columns: 1fr;
3688
- }
3689
- .steps .step {
3690
- display: grid;
3691
- grid-template-columns: repeat(1, minmax(0, 1fr));
3692
- grid-template-columns: auto;
3693
- grid-template-rows: repeat(2, minmax(0, 1fr));
3694
- grid-template-rows: 40px 1fr;
3695
- place-items: center;
3696
- text-align: center;
3697
- min-width: 4rem;
3698
- }
3699
- .tabs {
3700
- display: grid;
3701
- align-items: flex-end;
3702
- }
3703
- .tabs-lifted:has(.tab-content[class^="rounded-"])
3704
- .tab:first-child:not(:is(.tab-active, [aria-selected="true"])), .tabs-lifted:has(.tab-content[class*=" rounded-"])
3705
- .tab:first-child:not(:is(.tab-active, [aria-selected="true"])) {
3706
- border-bottom-color: transparent;
3707
- }
3708
- .tab {
3709
- position: relative;
3710
- grid-row-start: 1;
3711
- display: inline-flex;
3712
- height: 2rem;
3713
- cursor: pointer;
3714
- -webkit-user-select: none;
3715
- -moz-user-select: none;
3716
- user-select: none;
3717
- -webkit-appearance: none;
3718
- -moz-appearance: none;
3719
- appearance: none;
3720
- flex-wrap: wrap;
3721
- align-items: center;
3722
- justify-content: center;
3723
- text-align: center;
3724
- font-size: 0.875rem;
3725
- line-height: 1.25rem;
3726
- line-height: 2;
3727
- --tab-padding: 1rem;
3728
- --tw-text-opacity: 0.5;
3729
- --tab-color: var(--fallback-bc,oklch(var(--bc)/1));
3730
- --tab-bg: var(--fallback-b1,oklch(var(--b1)/1));
3731
- --tab-border-color: var(--fallback-b3,oklch(var(--b3)/1));
3732
- color: var(--tab-color);
3733
- padding-inline-start: var(--tab-padding, 1rem);
3734
- padding-inline-end: var(--tab-padding, 1rem);
3735
- }
3736
- .tab:is(input[type="radio"]) {
3737
- width: auto;
3738
- border-bottom-right-radius: 0px;
3739
- border-bottom-left-radius: 0px;
3740
- }
3741
- .tab:is(input[type="radio"]):after {
3742
- --tw-content: attr(aria-label);
3743
- content: var(--tw-content);
3744
- }
3745
- .tab:not(input):empty {
3746
- cursor: default;
3747
- grid-column-start: span 9999;
3748
- }
3749
- input.tab:checked + .tab-content,
3750
- :is(.tab-active, [aria-selected="true"]) + .tab-content {
3751
- display: block;
3752
- }
3753
- .table {
3754
- position: relative;
3755
- width: 100%;
3756
- border-radius: var(--rounded-box, 1rem);
3757
- text-align: left;
3758
- font-size: 0.875rem;
3759
- line-height: 1.25rem;
3760
- }
3761
- .table :where(.table-pin-rows thead tr) {
3762
- position: sticky;
3763
- top: 0px;
3764
- z-index: 1;
3765
- --tw-bg-opacity: 1;
3766
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
3767
- }
3768
- .table :where(.table-pin-rows tfoot tr) {
3769
- position: sticky;
3770
- bottom: 0px;
3771
- z-index: 1;
3772
- --tw-bg-opacity: 1;
3773
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
3774
- }
3775
- .table :where(.table-pin-cols tr th) {
3776
- position: sticky;
3777
- left: 0px;
3778
- right: 0px;
3779
- --tw-bg-opacity: 1;
3780
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
3781
- }
3782
- .toggle {
3783
- flex-shrink: 0;
3784
- --tglbg: var(--fallback-b1,oklch(var(--b1)/1));
3785
- --handleoffset: 1.5rem;
3786
- --handleoffsetcalculator: calc(var(--handleoffset) * -1);
3787
- --togglehandleborder: 0 0;
3788
- height: 1.5rem;
3789
- width: 3rem;
3790
- cursor: pointer;
3791
- -webkit-appearance: none;
3792
- -moz-appearance: none;
3793
- appearance: none;
3794
- border-radius: var(--rounded-badge, 1.9rem);
3795
- border-width: 1px;
3796
- border-color: currentColor;
3797
- background-color: currentColor;
3798
- color: var(--fallback-bc,oklch(var(--bc)/0.5));
3799
- transition: background,
3800
- box-shadow var(--animation-input, 0.2s) ease-out;
3801
- box-shadow: var(--handleoffsetcalculator) 0 0 2px var(--tglbg) inset,
3802
- 0 0 0 2px var(--tglbg) inset,
3803
- var(--togglehandleborder);
3804
- }
3805
- .alert-error {
3806
- border-color: var(--fallback-er,oklch(var(--er)/0.2));
3807
- --tw-text-opacity: 1;
3808
- color: var(--fallback-erc,oklch(var(--erc)/var(--tw-text-opacity)));
3809
- --alert-bg: var(--fallback-er,oklch(var(--er)/1));
3810
- --alert-bg-mix: var(--fallback-b1,oklch(var(--b1)/1));
3811
- }
3812
- .btm-nav > *:where(.active) {
3813
- border-top-width: 2px;
3814
- --tw-bg-opacity: 1;
3815
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
3816
- }
3817
- .btm-nav > *.disabled,
3818
- .btm-nav > *[disabled] {
3819
- pointer-events: none;
3820
- --tw-border-opacity: 0;
3821
- background-color: var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));
3822
- --tw-bg-opacity: 0.1;
3823
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
3824
- --tw-text-opacity: 0.2;
3825
- }
3826
- .btm-nav > * .label {
3827
- font-size: 1rem;
3828
- line-height: 1.5rem;
3829
- }
3830
- @media (prefers-reduced-motion: no-preference) {
3831
-
3832
- .btn {
3833
- animation: button-pop var(--animation-btn, 0.25s) ease-out;
3834
- }
3835
- }
3836
- .btn:active:hover,
3837
- .btn:active:focus {
3838
- animation: button-pop 0s ease-out;
3839
- transform: scale(var(--btn-focus-scale, 0.97));
3840
- }
3841
- @supports not (color: oklch(0% 0 0)) {
3842
-
3843
- .btn {
3844
- background-color: var(--btn-color, var(--fallback-b2));
3845
- border-color: var(--btn-color, var(--fallback-b2));
3846
- }
3847
- }
3848
- .btn:focus-visible {
3849
- outline-style: solid;
3850
- outline-width: 2px;
3851
- outline-offset: 2px;
3852
- }
3853
- .btn.glass {
3854
- --tw-shadow: 0 0 #0000;
3855
- --tw-shadow-colored: 0 0 #0000;
3856
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
3857
- outline-color: currentColor;
3858
- }
3859
- .btn.glass.btn-active {
3860
- --glass-opacity: 25%;
3861
- --glass-border-opacity: 15%;
3862
- }
3863
- .btn-ghost {
3864
- border-width: 1px;
3865
- border-color: transparent;
3866
- background-color: transparent;
3867
- color: currentColor;
3868
- --tw-shadow: 0 0 #0000;
3869
- --tw-shadow-colored: 0 0 #0000;
3870
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
3871
- outline-color: currentColor;
3872
- }
3873
- .btn-ghost.btn-active {
3874
- border-color: transparent;
3875
- background-color: var(--fallback-bc,oklch(var(--bc)/0.2));
3876
- }
3877
- .btn.btn-disabled,
3878
- .btn[disabled],
3879
- .btn:disabled {
3880
- --tw-border-opacity: 0;
3881
- background-color: var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));
3882
- --tw-bg-opacity: 0.2;
3883
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
3884
- --tw-text-opacity: 0.2;
3885
- }
3886
- .btn:is(input[type="checkbox"]:checked),
3887
- .btn:is(input[type="radio"]:checked) {
3888
- --tw-border-opacity: 1;
3889
- border-color: var(--fallback-p,oklch(var(--p)/var(--tw-border-opacity)));
3890
- --tw-bg-opacity: 1;
3891
- background-color: var(--fallback-p,oklch(var(--p)/var(--tw-bg-opacity)));
3892
- --tw-text-opacity: 1;
3893
- color: var(--fallback-pc,oklch(var(--pc)/var(--tw-text-opacity)));
3894
- }
3895
- .btn:is(input[type="checkbox"]:checked):focus-visible, .btn:is(input[type="radio"]:checked):focus-visible {
3896
- outline-color: var(--fallback-p,oklch(var(--p)/1));
3897
- }
3898
- @keyframes button-pop {
3899
-
3900
- 0% {
3901
- transform: scale(var(--btn-focus-scale, 0.98));
3902
- }
3903
-
3904
- 40% {
3905
- transform: scale(1.02);
3906
- }
3907
-
3908
- 100% {
3909
- transform: scale(1);
3910
- }
3911
- }
3912
- .checkbox:focus {
3913
- box-shadow: none;
3914
- }
3915
- .checkbox:focus-visible {
3916
- outline-style: solid;
3917
- outline-width: 2px;
3918
- outline-offset: 2px;
3919
- outline-color: var(--fallback-bc,oklch(var(--bc)/1));
3920
- }
3921
- .checkbox:disabled {
3922
- border-width: 0px;
3923
- cursor: not-allowed;
3924
- border-color: transparent;
3925
- --tw-bg-opacity: 1;
3926
- background-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));
3927
- opacity: 0.2;
3928
- }
3929
- .checkbox:checked,
3930
- .checkbox[aria-checked="true"] {
3931
- background-repeat: no-repeat;
3932
- animation: checkmark var(--animation-input, 0.2s) ease-out;
3933
- background-color: var(--chkbg);
3934
- background-image: linear-gradient(-45deg, transparent 65%, var(--chkbg) 65.99%),
3935
- linear-gradient(45deg, transparent 75%, var(--chkbg) 75.99%),
3936
- linear-gradient(-45deg, var(--chkbg) 40%, transparent 40.99%),
3937
- linear-gradient(
3938
- 45deg,
3939
- var(--chkbg) 30%,
3940
- var(--chkfg) 30.99%,
3941
- var(--chkfg) 40%,
3942
- transparent 40.99%
3943
- ),
3944
- linear-gradient(-45deg, var(--chkfg) 50%, var(--chkbg) 50.99%);
3945
- }
3946
- .checkbox:indeterminate {
3947
- --tw-bg-opacity: 1;
3948
- background-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));
3949
- background-repeat: no-repeat;
3950
- animation: checkmark var(--animation-input, 0.2s) ease-out;
3951
- background-image: linear-gradient(90deg, transparent 80%, var(--chkbg) 80%),
3952
- linear-gradient(-90deg, transparent 80%, var(--chkbg) 80%),
3953
- linear-gradient(0deg, var(--chkbg) 43%, var(--chkfg) 43%, var(--chkfg) 57%, var(--chkbg) 57%);
3954
- }
3955
- @keyframes checkmark {
3956
-
3957
- 0% {
3958
- background-position-y: 5px;
3959
- }
3960
-
3961
- 50% {
3962
- background-position-y: -2px;
3963
- }
3964
-
3965
- 100% {
3966
- background-position-y: 0;
3967
- }
3968
- }
3969
- .divider:not(:empty) {
3970
- gap: 1rem;
3971
- }
3972
- .dropdown.dropdown-open .dropdown-content,
3973
- .dropdown:focus .dropdown-content,
3974
- .dropdown:focus-within .dropdown-content {
3975
- --tw-scale-x: 1;
3976
- --tw-scale-y: 1;
3977
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
3978
- }
3979
- .input input {
3980
- --tw-bg-opacity: 1;
3981
- background-color: var(--fallback-p,oklch(var(--p)/var(--tw-bg-opacity)));
3982
- background-color: transparent;
3983
- }
3984
- .input input:focus {
3985
- outline: 2px solid transparent;
3986
- outline-offset: 2px;
3987
- }
3988
- .input[list]::-webkit-calendar-picker-indicator {
3989
- line-height: 1em;
3990
- }
3991
- .input-bordered {
3992
- border-color: var(--fallback-bc,oklch(var(--bc)/0.2));
3993
- }
3994
- .input:focus,
3995
- .input:focus-within {
3996
- box-shadow: none;
3997
- border-color: var(--fallback-bc,oklch(var(--bc)/0.2));
3998
- outline-style: solid;
3999
- outline-width: 2px;
4000
- outline-offset: 2px;
4001
- outline-color: var(--fallback-bc,oklch(var(--bc)/0.2));
4002
- }
4003
- .input-error {
4004
- --tw-border-opacity: 1;
4005
- border-color: var(--fallback-er,oklch(var(--er)/var(--tw-border-opacity)));
4006
- }
4007
- .input-error:focus,
4008
- .input-error:focus-within {
4009
- --tw-border-opacity: 1;
4010
- border-color: var(--fallback-er,oklch(var(--er)/var(--tw-border-opacity)));
4011
- outline-color: var(--fallback-er,oklch(var(--er)/1));
4012
- }
4013
- .input:has(> input[disabled]),
4014
- .input-disabled,
4015
- .input:disabled,
4016
- .input[disabled] {
4017
- cursor: not-allowed;
4018
- --tw-border-opacity: 1;
4019
- border-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));
4020
- --tw-bg-opacity: 1;
4021
- background-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));
4022
- color: var(--fallback-bc,oklch(var(--bc)/0.4));
4023
- }
4024
- .input:has(> input[disabled])::-moz-placeholder, .input-disabled::-moz-placeholder, .input:disabled::-moz-placeholder, .input[disabled]::-moz-placeholder {
4025
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-placeholder-opacity)));
4026
- --tw-placeholder-opacity: 0.2;
4027
- }
4028
- .input:has(> input[disabled])::placeholder,
4029
- .input-disabled::placeholder,
4030
- .input:disabled::placeholder,
4031
- .input[disabled]::placeholder {
4032
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-placeholder-opacity)));
4033
- --tw-placeholder-opacity: 0.2;
4034
- }
4035
- .input:has(> input[disabled]) > input[disabled] {
4036
- cursor: not-allowed;
4037
- }
4038
- .input::-webkit-date-and-time-value {
4039
- text-align: inherit;
4040
- }
4041
- .join > :where(*:not(:first-child)) {
4042
- margin-top: 0px;
4043
- margin-bottom: 0px;
4044
- margin-inline-start: -1px;
4045
- }
4046
- .join > :where(*:not(:first-child)):is(.btn) {
4047
- margin-inline-start: calc(var(--border-btn) * -1);
4048
- }
4049
- .link:focus {
4050
- outline: 2px solid transparent;
4051
- outline-offset: 2px;
4052
- }
4053
- .link:focus-visible {
4054
- outline: 2px solid currentColor;
4055
- outline-offset: 2px;
4056
- }
4057
- .loading {
4058
- pointer-events: none;
4059
- display: inline-block;
4060
- aspect-ratio: 1 / 1;
4061
- width: 1.5rem;
4062
- background-color: currentColor;
4063
- -webkit-mask-size: 100%;
4064
- mask-size: 100%;
4065
- -webkit-mask-repeat: no-repeat;
4066
- mask-repeat: no-repeat;
4067
- -webkit-mask-position: center;
4068
- mask-position: center;
4069
- -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
4070
- mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
4071
- }
4072
- .loading-spinner {
4073
- -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
4074
- mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
4075
- }
4076
- .loading-md {
4077
- width: 1.5rem;
4078
- }
4079
- :where(.menu li:empty) {
4080
- --tw-bg-opacity: 1;
4081
- background-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));
4082
- opacity: 0.1;
4083
- margin: 0.5rem 1rem;
4084
- height: 1px;
4085
- }
4086
- .menu :where(li ul):before {
4087
- position: absolute;
4088
- bottom: 0.75rem;
4089
- inset-inline-start: 0px;
4090
- top: 0.75rem;
4091
- width: 1px;
4092
- --tw-bg-opacity: 1;
4093
- background-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));
4094
- opacity: 0.1;
4095
- content: "";
4096
- }
4097
- .menu :where(li:not(.menu-title) > *:not(ul, details, .menu-title, .btn)),
4098
- .menu :where(li:not(.menu-title) > details > summary:not(.menu-title)) {
4099
- border-radius: var(--rounded-btn, 0.5rem);
4100
- padding-left: 1rem;
4101
- padding-right: 1rem;
4102
- padding-top: 0.5rem;
4103
- padding-bottom: 0.5rem;
4104
- text-align: start;
4105
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
4106
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
4107
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
4108
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
4109
- transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
4110
- transition-duration: 200ms;
4111
- text-wrap: balance;
4112
- }
4113
- :where(.menu li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title)):is(summary):not(.active, .btn):focus-visible, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn).focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):not(summary, .active, .btn):focus, :where(.menu li:not(.menu-title, .disabled) > details > summary:not(.menu-title)):is(summary):not(.active, .btn):focus-visible {
4114
- cursor: pointer;
4115
- background-color: var(--fallback-bc,oklch(var(--bc)/0.1));
4116
- --tw-text-opacity: 1;
4117
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
4118
- outline: 2px solid transparent;
4119
- outline-offset: 2px;
4120
- }
4121
- .menu li > *:not(ul, .menu-title, details, .btn):active,
4122
- .menu li > *:not(ul, .menu-title, details, .btn).active,
4123
- .menu li > details > summary:active {
4124
- --tw-bg-opacity: 1;
4125
- background-color: var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));
4126
- --tw-text-opacity: 1;
4127
- color: var(--fallback-nc,oklch(var(--nc)/var(--tw-text-opacity)));
4128
- }
4129
- .menu :where(li > details > summary)::-webkit-details-marker {
4130
- display: none;
4131
- }
4132
- .menu :where(li > details > summary):after,
4133
- .menu :where(li > .menu-dropdown-toggle):after {
4134
- justify-self: end;
4135
- display: block;
4136
- margin-top: -0.5rem;
4137
- height: 0.5rem;
4138
- width: 0.5rem;
4139
- transform: rotate(45deg);
4140
- transition-property: transform, margin-top;
4141
- transition-duration: 0.3s;
4142
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
4143
- content: "";
4144
- transform-origin: 75% 75%;
4145
- box-shadow: 2px 2px;
4146
- pointer-events: none;
4147
- }
4148
- .menu :where(li > details[open] > summary):after,
4149
- .menu :where(li > .menu-dropdown-toggle.menu-dropdown-show):after {
4150
- transform: rotate(225deg);
4151
- margin-top: 0;
4152
- }
4153
- .mockup-phone .display {
4154
- overflow: hidden;
4155
- border-radius: 40px;
4156
- margin-top: -25px;
4157
- }
4158
- .mockup-browser .mockup-browser-toolbar .input {
4159
- position: relative;
4160
- margin-left: auto;
4161
- margin-right: auto;
4162
- display: block;
4163
- height: 1.75rem;
4164
- width: 24rem;
4165
- overflow: hidden;
4166
- text-overflow: ellipsis;
4167
- white-space: nowrap;
4168
- --tw-bg-opacity: 1;
4169
- background-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));
4170
- padding-left: 2rem;
4171
- direction: ltr;
4172
- }
4173
- .mockup-browser .mockup-browser-toolbar .input:before {
4174
- content: "";
4175
- position: absolute;
4176
- left: 0.5rem;
4177
- top: 50%;
4178
- aspect-ratio: 1 / 1;
4179
- height: 0.75rem;
4180
- --tw-translate-y: -50%;
4181
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4182
- border-radius: 9999px;
4183
- border-width: 2px;
4184
- border-color: currentColor;
4185
- opacity: 0.6;
4186
- }
4187
- .mockup-browser .mockup-browser-toolbar .input:after {
4188
- content: "";
4189
- position: absolute;
4190
- left: 1.25rem;
4191
- top: 50%;
4192
- height: 0.5rem;
4193
- --tw-translate-y: 25%;
4194
- --tw-rotate: -45deg;
4195
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4196
- border-radius: 9999px;
4197
- border-width: 1px;
4198
- border-color: currentColor;
4199
- opacity: 0.6;
4200
- }
4201
- .modal:not(dialog:not(.modal-open)),
4202
- .modal::backdrop {
4203
- background-color: #0006;
4204
- animation: modal-pop 0.2s ease-out;
4205
- }
4206
- .modal-backdrop {
4207
- z-index: -1;
4208
- grid-column-start: 1;
4209
- grid-row-start: 1;
4210
- display: grid;
4211
- align-self: stretch;
4212
- justify-self: stretch;
4213
- color: transparent;
4214
- }
4215
- .modal-open .modal-box,
4216
- .modal-toggle:checked + .modal .modal-box,
4217
- .modal:target .modal-box,
4218
- .modal[open] .modal-box {
4219
- --tw-translate-y: 0px;
4220
- --tw-scale-x: 1;
4221
- --tw-scale-y: 1;
4222
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4223
- }
4224
- .modal-action > :not([hidden]) ~ :not([hidden]) {
4225
- --tw-space-x-reverse: 0;
4226
- margin-right: calc(0.5rem * var(--tw-space-x-reverse));
4227
- margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
4228
- }
4229
- .modal-action:where([dir="rtl"], [dir="rtl"] *) > :not([hidden]) ~ :not([hidden]) {
4230
- --tw-space-x-reverse: 1;
4231
- }
4232
- @keyframes modal-pop {
4233
-
4234
- 0% {
4235
- opacity: 0;
4236
- }
4237
- }
4238
- @keyframes progress-loading {
4239
-
4240
- 50% {
4241
- background-position-x: -115%;
4242
- }
4243
- }
4244
- .radio:focus {
4245
- box-shadow: none;
4246
- }
4247
- .radio:focus-visible {
4248
- outline-style: solid;
4249
- outline-width: 2px;
4250
- outline-offset: 2px;
4251
- outline-color: var(--fallback-bc,oklch(var(--bc)/1));
4252
- }
4253
- .radio:checked,
4254
- .radio[aria-checked="true"] {
4255
- --tw-bg-opacity: 1;
4256
- background-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-bg-opacity)));
4257
- background-image: none;
4258
- animation: radiomark var(--animation-input, 0.2s) ease-out;
4259
- box-shadow: 0 0 0 4px var(--fallback-b1,oklch(var(--b1)/1)) inset,
4260
- 0 0 0 4px var(--fallback-b1,oklch(var(--b1)/1)) inset;
4261
- }
4262
- .radio:disabled {
4263
- cursor: not-allowed;
4264
- opacity: 0.2;
4265
- }
4266
- @keyframes radiomark {
4267
-
4268
- 0% {
4269
- box-shadow: 0 0 0 12px var(--fallback-b1,oklch(var(--b1)/1)) inset,
4270
- 0 0 0 12px var(--fallback-b1,oklch(var(--b1)/1)) inset;
4271
- }
4272
-
4273
- 50% {
4274
- box-shadow: 0 0 0 3px var(--fallback-b1,oklch(var(--b1)/1)) inset,
4275
- 0 0 0 3px var(--fallback-b1,oklch(var(--b1)/1)) inset;
4276
- }
4277
-
4278
- 100% {
4279
- box-shadow: 0 0 0 4px var(--fallback-b1,oklch(var(--b1)/1)) inset,
4280
- 0 0 0 4px var(--fallback-b1,oklch(var(--b1)/1)) inset;
4281
- }
4282
- }
4283
- .range:focus-visible::-webkit-slider-thumb {
4284
- --focus-shadow: 0 0 0 6px var(--fallback-b1,oklch(var(--b1)/1)) inset, 0 0 0 2rem var(--range-shdw) inset;
4285
- }
4286
- .range:focus-visible::-moz-range-thumb {
4287
- --focus-shadow: 0 0 0 6px var(--fallback-b1,oklch(var(--b1)/1)) inset, 0 0 0 2rem var(--range-shdw) inset;
4288
- }
4289
- .range::-webkit-slider-runnable-track {
4290
- height: 0.5rem;
4291
- width: 100%;
4292
- border-radius: var(--rounded-box, 1rem);
4293
- background-color: var(--fallback-bc,oklch(var(--bc)/0.1));
4294
- }
4295
- .range::-moz-range-track {
4296
- height: 0.5rem;
4297
- width: 100%;
4298
- border-radius: var(--rounded-box, 1rem);
4299
- background-color: var(--fallback-bc,oklch(var(--bc)/0.1));
4300
- }
4301
- .range::-webkit-slider-thumb {
4302
- position: relative;
4303
- height: 1.5rem;
4304
- width: 1.5rem;
4305
- border-radius: var(--rounded-box, 1rem);
4306
- border-style: none;
4307
- --tw-bg-opacity: 1;
4308
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
4309
- appearance: none;
4310
- -webkit-appearance: none;
4311
- top: 50%;
4312
- color: var(--range-shdw);
4313
- transform: translateY(-50%);
4314
- --filler-size: 100rem;
4315
- --filler-offset: 0.6rem;
4316
- box-shadow: 0 0 0 3px var(--range-shdw) inset,
4317
- var(--focus-shadow, 0 0),
4318
- calc(var(--filler-size) * -1 - var(--filler-offset)) 0 0 var(--filler-size);
4319
- }
4320
- .range::-moz-range-thumb {
4321
- position: relative;
4322
- height: 1.5rem;
4323
- width: 1.5rem;
4324
- border-radius: var(--rounded-box, 1rem);
4325
- border-style: none;
4326
- --tw-bg-opacity: 1;
4327
- background-color: var(--fallback-b1,oklch(var(--b1)/var(--tw-bg-opacity)));
4328
- top: 50%;
4329
- color: var(--range-shdw);
4330
- --filler-size: 100rem;
4331
- --filler-offset: 0.5rem;
4332
- box-shadow: 0 0 0 3px var(--range-shdw) inset,
4333
- var(--focus-shadow, 0 0),
4334
- calc(var(--filler-size) * -1 - var(--filler-offset)) 0 0 var(--filler-size);
4335
- }
4336
- @keyframes rating-pop {
4337
-
4338
- 0% {
4339
- transform: translateY(-0.125em);
4340
- }
4341
-
4342
- 40% {
4343
- transform: translateY(-0.125em);
4344
- }
4345
-
4346
- 100% {
4347
- transform: translateY(0);
4348
- }
4349
- }
4350
- .select-bordered {
4351
- border-color: var(--fallback-bc,oklch(var(--bc)/0.2));
4352
- }
4353
- .select:focus {
4354
- box-shadow: none;
4355
- border-color: var(--fallback-bc,oklch(var(--bc)/0.2));
4356
- outline-style: solid;
4357
- outline-width: 2px;
4358
- outline-offset: 2px;
4359
- outline-color: var(--fallback-bc,oklch(var(--bc)/0.2));
4360
- }
4361
- .select-disabled,
4362
- .select:disabled,
4363
- .select[disabled] {
4364
- cursor: not-allowed;
4365
- --tw-border-opacity: 1;
4366
- border-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));
4367
- --tw-bg-opacity: 1;
4368
- background-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));
4369
- color: var(--fallback-bc,oklch(var(--bc)/0.4));
4370
- }
4371
- .select-disabled::-moz-placeholder, .select:disabled::-moz-placeholder, .select[disabled]::-moz-placeholder {
4372
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-placeholder-opacity)));
4373
- --tw-placeholder-opacity: 0.2;
4374
- }
4375
- .select-disabled::placeholder,
4376
- .select:disabled::placeholder,
4377
- .select[disabled]::placeholder {
4378
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-placeholder-opacity)));
4379
- --tw-placeholder-opacity: 0.2;
4380
- }
4381
- .select-multiple,
4382
- .select[multiple],
4383
- .select[size].select:not([size="1"]) {
4384
- background-image: none;
4385
- padding-right: 1rem;
4386
- }
4387
- [dir="rtl"] .select {
4388
- background-position: calc(0% + 12px) calc(1px + 50%),
4389
- calc(0% + 16px) calc(1px + 50%);
4390
- }
4391
- @keyframes skeleton {
4392
-
4393
- from {
4394
- background-position: 150%;
4395
- }
4396
-
4397
- to {
4398
- background-position: -50%;
4399
- }
4400
- }
4401
- .steps .step:before {
4402
- top: 0px;
4403
- grid-column-start: 1;
4404
- grid-row-start: 1;
4405
- height: 0.5rem;
4406
- width: 100%;
4407
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4408
- --tw-bg-opacity: 1;
4409
- background-color: var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)));
4410
- --tw-text-opacity: 1;
4411
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
4412
- content: "";
4413
- margin-inline-start: -100%;
4414
- }
4415
- .steps .step:after {
4416
- content: counter(step);
4417
- counter-increment: step;
4418
- z-index: 1;
4419
- position: relative;
4420
- grid-column-start: 1;
4421
- grid-row-start: 1;
4422
- display: grid;
4423
- height: 2rem;
4424
- width: 2rem;
4425
- place-items: center;
4426
- place-self: center;
4427
- border-radius: 9999px;
4428
- --tw-bg-opacity: 1;
4429
- background-color: var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)));
4430
- --tw-text-opacity: 1;
4431
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
4432
- }
4433
- .steps .step:first-child:before {
4434
- content: none;
4435
- }
4436
- .steps .step[data-content]:after {
4437
- content: attr(data-content);
4438
- }
4439
- .steps .step-neutral + .step-neutral:before,
4440
- .steps .step-neutral:after {
4441
- --tw-bg-opacity: 1;
4442
- background-color: var(--fallback-n,oklch(var(--n)/var(--tw-bg-opacity)));
4443
- --tw-text-opacity: 1;
4444
- color: var(--fallback-nc,oklch(var(--nc)/var(--tw-text-opacity)));
4445
- }
4446
- .steps .step-primary + .step-primary:before,
4447
- .steps .step-primary:after {
4448
- --tw-bg-opacity: 1;
4449
- background-color: var(--fallback-p,oklch(var(--p)/var(--tw-bg-opacity)));
4450
- --tw-text-opacity: 1;
4451
- color: var(--fallback-pc,oklch(var(--pc)/var(--tw-text-opacity)));
4452
- }
4453
- .steps .step-secondary + .step-secondary:before,
4454
- .steps .step-secondary:after {
4455
- --tw-bg-opacity: 1;
4456
- background-color: var(--fallback-s,oklch(var(--s)/var(--tw-bg-opacity)));
4457
- --tw-text-opacity: 1;
4458
- color: var(--fallback-sc,oklch(var(--sc)/var(--tw-text-opacity)));
4459
- }
4460
- .steps .step-accent + .step-accent:before,
4461
- .steps .step-accent:after {
4462
- --tw-bg-opacity: 1;
4463
- background-color: var(--fallback-a,oklch(var(--a)/var(--tw-bg-opacity)));
4464
- --tw-text-opacity: 1;
4465
- color: var(--fallback-ac,oklch(var(--ac)/var(--tw-text-opacity)));
4466
- }
4467
- .steps .step-info + .step-info:before {
4468
- --tw-bg-opacity: 1;
4469
- background-color: var(--fallback-in,oklch(var(--in)/var(--tw-bg-opacity)));
4470
- }
4471
- .steps .step-info:after {
4472
- --tw-bg-opacity: 1;
4473
- background-color: var(--fallback-in,oklch(var(--in)/var(--tw-bg-opacity)));
4474
- --tw-text-opacity: 1;
4475
- color: var(--fallback-inc,oklch(var(--inc)/var(--tw-text-opacity)));
4476
- }
4477
- .steps .step-success + .step-success:before {
4478
- --tw-bg-opacity: 1;
4479
- background-color: var(--fallback-su,oklch(var(--su)/var(--tw-bg-opacity)));
4480
- }
4481
- .steps .step-success:after {
4482
- --tw-bg-opacity: 1;
4483
- background-color: var(--fallback-su,oklch(var(--su)/var(--tw-bg-opacity)));
4484
- --tw-text-opacity: 1;
4485
- color: var(--fallback-suc,oklch(var(--suc)/var(--tw-text-opacity)));
4486
- }
4487
- .steps .step-warning + .step-warning:before {
4488
- --tw-bg-opacity: 1;
4489
- background-color: var(--fallback-wa,oklch(var(--wa)/var(--tw-bg-opacity)));
4490
- }
4491
- .steps .step-warning:after {
4492
- --tw-bg-opacity: 1;
4493
- background-color: var(--fallback-wa,oklch(var(--wa)/var(--tw-bg-opacity)));
4494
- --tw-text-opacity: 1;
4495
- color: var(--fallback-wac,oklch(var(--wac)/var(--tw-text-opacity)));
4496
- }
4497
- .steps .step-error + .step-error:before {
4498
- --tw-bg-opacity: 1;
4499
- background-color: var(--fallback-er,oklch(var(--er)/var(--tw-bg-opacity)));
4500
- }
4501
- .steps .step-error:after {
4502
- --tw-bg-opacity: 1;
4503
- background-color: var(--fallback-er,oklch(var(--er)/var(--tw-bg-opacity)));
4504
- --tw-text-opacity: 1;
4505
- color: var(--fallback-erc,oklch(var(--erc)/var(--tw-text-opacity)));
4506
- }
4507
- .tabs-lifted > .tab:focus-visible {
4508
- border-end-end-radius: 0;
4509
- border-end-start-radius: 0;
4510
- }
4511
- .tab:is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled]), .tab:is(input:checked) {
4512
- border-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));
4513
- --tw-border-opacity: 1;
4514
- --tw-text-opacity: 1;
4515
- }
4516
- .tab:focus {
4517
- outline: 2px solid transparent;
4518
- outline-offset: 2px;
4519
- }
4520
- .tab:focus-visible {
4521
- outline: 2px solid currentColor;
4522
- outline-offset: -5px;
4523
- }
4524
- .tab-disabled,
4525
- .tab[disabled] {
4526
- cursor: not-allowed;
4527
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
4528
- --tw-text-opacity: 0.2;
4529
- }
4530
- .tabs-bordered > .tab {
4531
- border-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));
4532
- --tw-border-opacity: 0.2;
4533
- border-style: solid;
4534
- border-bottom-width: calc(var(--tab-border, 1px) + 1px);
4535
- }
4536
- .tabs-lifted > .tab {
4537
- border: var(--tab-border, 1px) solid transparent;
4538
- border-width: 0 0 var(--tab-border, 1px) 0;
4539
- border-start-start-radius: var(--tab-radius, 0.5rem);
4540
- border-start-end-radius: var(--tab-radius, 0.5rem);
4541
- border-bottom-color: var(--tab-border-color);
4542
- padding-inline-start: var(--tab-padding, 1rem);
4543
- padding-inline-end: var(--tab-padding, 1rem);
4544
- padding-top: var(--tab-border, 1px);
4545
- }
4546
- .tabs-lifted > .tab:is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled]), .tabs-lifted > .tab:is(input:checked) {
4547
- background-color: var(--tab-bg);
4548
- border-width: var(--tab-border, 1px) var(--tab-border, 1px) 0 var(--tab-border, 1px);
4549
- border-inline-start-color: var(--tab-border-color);
4550
- border-inline-end-color: var(--tab-border-color);
4551
- border-top-color: var(--tab-border-color);
4552
- padding-inline-start: calc(var(--tab-padding, 1rem) - var(--tab-border, 1px));
4553
- padding-inline-end: calc(var(--tab-padding, 1rem) - var(--tab-border, 1px));
4554
- padding-bottom: var(--tab-border, 1px);
4555
- padding-top: 0;
4556
- }
4557
- .tabs-lifted > .tab:is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled]):before, .tabs-lifted > .tab:is(input:checked):before {
4558
- z-index: 1;
4559
- content: "";
4560
- display: block;
4561
- position: absolute;
4562
- width: calc(100% + var(--tab-radius, 0.5rem) * 2);
4563
- height: var(--tab-radius, 0.5rem);
4564
- bottom: 0;
4565
- background-size: var(--tab-radius, 0.5rem);
4566
- background-position: top left,
4567
- top right;
4568
- background-repeat: no-repeat;
4569
- --tab-grad: calc(69% - var(--tab-border, 1px));
4570
- --radius-start: radial-gradient(
4571
- circle at top left,
4572
- transparent var(--tab-grad),
4573
- var(--tab-border-color) calc(var(--tab-grad) + 0.25px),
4574
- var(--tab-border-color) calc(var(--tab-grad) + var(--tab-border, 1px)),
4575
- var(--tab-bg) calc(var(--tab-grad) + var(--tab-border, 1px) + 0.25px)
4576
- );
4577
- --radius-end: radial-gradient(
4578
- circle at top right,
4579
- transparent var(--tab-grad),
4580
- var(--tab-border-color) calc(var(--tab-grad) + 0.25px),
4581
- var(--tab-border-color) calc(var(--tab-grad) + var(--tab-border, 1px)),
4582
- var(--tab-bg) calc(var(--tab-grad) + var(--tab-border, 1px) + 0.25px)
4583
- );
4584
- background-image: var(--radius-start), var(--radius-end);
4585
- }
4586
- .tabs-lifted > .tab:is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled]):first-child:before, .tabs-lifted > .tab:is(input:checked):first-child:before {
4587
- background-image: var(--radius-end);
4588
- background-position: top right;
4589
- }
4590
- [dir="rtl"] .tabs-lifted > .tab:is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled]):first-child:before, [dir="rtl"] .tabs-lifted > .tab:is(input:checked):first-child:before {
4591
- background-image: var(--radius-start);
4592
- background-position: top left;
4593
- }
4594
- .tabs-lifted > .tab:is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled]):last-child:before, .tabs-lifted > .tab:is(input:checked):last-child:before {
4595
- background-image: var(--radius-start);
4596
- background-position: top left;
4597
- }
4598
- [dir="rtl"] .tabs-lifted > .tab:is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled]):last-child:before, [dir="rtl"] .tabs-lifted > .tab:is(input:checked):last-child:before {
4599
- background-image: var(--radius-end);
4600
- background-position: top right;
4601
- }
4602
- .tabs-lifted
4603
- > :is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled])
4604
- + .tabs-lifted
4605
- :is(.tab-active, [aria-selected="true"]):not(.tab-disabled):not([disabled]):before, .tabs-lifted > .tab:is(input:checked) + .tabs-lifted .tab:is(input:checked):before {
4606
- background-image: var(--radius-end);
4607
- background-position: top right;
4608
- }
4609
- .tabs-boxed .tab {
4610
- border-radius: var(--rounded-btn, 0.5rem);
4611
- }
4612
- .table:where([dir="rtl"], [dir="rtl"] *) {
4613
- text-align: right;
4614
- }
4615
- .table :where(th, td) {
4616
- padding-left: 1rem;
4617
- padding-right: 1rem;
4618
- padding-top: 0.75rem;
4619
- padding-bottom: 0.75rem;
4620
- vertical-align: middle;
4621
- }
4622
- .table tr.active,
4623
- .table tr.active:nth-child(even),
4624
- .table-zebra tbody tr:nth-child(even) {
4625
- --tw-bg-opacity: 1;
4626
- background-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-bg-opacity)));
4627
- }
4628
- .table-zebra tr.active,
4629
- .table-zebra tr.active:nth-child(even),
4630
- .table-zebra-zebra tbody tr:nth-child(even) {
4631
- --tw-bg-opacity: 1;
4632
- background-color: var(--fallback-b3,oklch(var(--b3)/var(--tw-bg-opacity)));
4633
- }
4634
- .table :where(thead tr, tbody tr:not(:last-child), tbody tr:first-child:last-child) {
4635
- border-bottom-width: 1px;
4636
- --tw-border-opacity: 1;
4637
- border-bottom-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));
4638
- }
4639
- .table :where(thead, tfoot) {
4640
- white-space: nowrap;
4641
- font-size: 0.75rem;
4642
- line-height: 1rem;
4643
- font-weight: 700;
4644
- color: var(--fallback-bc,oklch(var(--bc)/0.6));
4645
- }
4646
- .table :where(tfoot) {
4647
- border-top-width: 1px;
4648
- --tw-border-opacity: 1;
4649
- border-top-color: var(--fallback-b2,oklch(var(--b2)/var(--tw-border-opacity)));
4650
- }
4651
- @keyframes toast-pop {
4652
-
4653
- 0% {
4654
- transform: scale(0.9);
4655
- opacity: 0;
4656
- }
4657
-
4658
- 100% {
4659
- transform: scale(1);
4660
- opacity: 1;
4661
- }
4662
- }
4663
- [dir="rtl"] .toggle {
4664
- --handleoffsetcalculator: calc(var(--handleoffset) * 1);
4665
- }
4666
- .toggle:focus-visible {
4667
- outline-style: solid;
4668
- outline-width: 2px;
4669
- outline-offset: 2px;
4670
- outline-color: var(--fallback-bc,oklch(var(--bc)/0.2));
4671
- }
4672
- .toggle:hover {
4673
- background-color: currentColor;
4674
- }
4675
- .toggle:checked,
4676
- .toggle[aria-checked="true"] {
4677
- background-image: none;
4678
- --handleoffsetcalculator: var(--handleoffset);
4679
- --tw-text-opacity: 1;
4680
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
4681
- }
4682
- [dir="rtl"] .toggle:checked, [dir="rtl"] .toggle[aria-checked="true"] {
4683
- --handleoffsetcalculator: calc(var(--handleoffset) * -1);
4684
- }
4685
- .toggle:indeterminate {
4686
- --tw-text-opacity: 1;
4687
- color: var(--fallback-bc,oklch(var(--bc)/var(--tw-text-opacity)));
4688
- box-shadow: calc(var(--handleoffset) / 2) 0 0 2px var(--tglbg) inset,
4689
- calc(var(--handleoffset) / -2) 0 0 2px var(--tglbg) inset,
4690
- 0 0 0 2px var(--tglbg) inset;
4691
- }
4692
- [dir="rtl"] .toggle:indeterminate {
4693
- box-shadow: calc(var(--handleoffset) / 2) 0 0 2px var(--tglbg) inset,
4694
- calc(var(--handleoffset) / -2) 0 0 2px var(--tglbg) inset,
4695
- 0 0 0 2px var(--tglbg) inset;
4696
- }
4697
- .toggle:disabled {
4698
- cursor: not-allowed;
4699
- --tw-border-opacity: 1;
4700
- border-color: var(--fallback-bc,oklch(var(--bc)/var(--tw-border-opacity)));
4701
- background-color: transparent;
4702
- opacity: 0.3;
4703
- --togglehandleborder: 0 0 0 3px var(--fallback-bc,oklch(var(--bc)/1)) inset,
4704
- var(--handleoffsetcalculator) 0 0 3px var(--fallback-bc,oklch(var(--bc)/1)) inset;
4705
- }
4706
- .artboard.phone-1.horizontal,
4707
- .artboard.phone-1.artboard-horizontal {
4708
- width: 568px;
4709
- height: 320px;
4710
- }
4711
- .artboard.phone-2.horizontal,
4712
- .artboard.phone-2.artboard-horizontal {
4713
- width: 667px;
4714
- height: 375px;
4715
- }
4716
- .artboard.phone-3.horizontal,
4717
- .artboard.phone-3.artboard-horizontal {
4718
- width: 736px;
4719
- height: 414px;
4720
- }
4721
- .artboard.phone-4.horizontal,
4722
- .artboard.phone-4.artboard-horizontal {
4723
- width: 812px;
4724
- height: 375px;
4725
- }
4726
- .artboard.phone-5.horizontal,
4727
- .artboard.phone-5.artboard-horizontal {
4728
- width: 896px;
4729
- height: 414px;
4730
- }
4731
- .artboard.phone-6.horizontal,
4732
- .artboard.phone-6.artboard-horizontal {
4733
- width: 1024px;
4734
- height: 320px;
4735
- }
4736
- .btm-nav-xs > *:where(.active) {
4737
- border-top-width: 1px;
4738
- }
4739
- .btm-nav-sm > *:where(.active) {
4740
- border-top-width: 2px;
4741
- }
4742
- .btm-nav-md > *:where(.active) {
4743
- border-top-width: 2px;
4744
- }
4745
- .btm-nav-lg > *:where(.active) {
4746
- border-top-width: 4px;
4747
- }
4748
- .btn-xs {
4749
- height: 1.5rem;
4750
- min-height: 1.5rem;
4751
- padding-left: 0.5rem;
4752
- padding-right: 0.5rem;
4753
- font-size: 0.75rem;
4754
- }
4755
- .btn-sm {
4756
- height: 2rem;
4757
- min-height: 2rem;
4758
- padding-left: 0.75rem;
4759
- padding-right: 0.75rem;
4760
- font-size: 0.875rem;
4761
- }
4762
- .btn-square:where(.btn-xs) {
4763
- height: 1.5rem;
4764
- width: 1.5rem;
4765
- padding: 0px;
4766
- }
4767
- .btn-square:where(.btn-sm) {
4768
- height: 2rem;
4769
- width: 2rem;
4770
- padding: 0px;
4771
- }
4772
- .btn-circle:where(.btn-xs) {
4773
- height: 1.5rem;
4774
- width: 1.5rem;
4775
- border-radius: 9999px;
4776
- padding: 0px;
4777
- }
4778
- .btn-circle:where(.btn-sm) {
4779
- height: 2rem;
4780
- width: 2rem;
4781
- border-radius: 9999px;
4782
- padding: 0px;
4783
- }
4784
- .btn-circle:where(.btn-md) {
4785
- height: 3rem;
4786
- width: 3rem;
4787
- border-radius: 9999px;
4788
- padding: 0px;
4789
- }
4790
- .btn-circle:where(.btn-lg) {
4791
- height: 4rem;
4792
- width: 4rem;
4793
- border-radius: 9999px;
4794
- padding: 0px;
4795
- }
4796
- .join.join-vertical {
4797
- flex-direction: column;
4798
- }
4799
- .join.join-vertical .join-item:first-child:not(:last-child),
4800
- .join.join-vertical *:first-child:not(:last-child) .join-item {
4801
- border-end-start-radius: 0;
4802
- border-end-end-radius: 0;
4803
- border-start-start-radius: inherit;
4804
- border-start-end-radius: inherit;
4805
- }
4806
- .join.join-vertical .join-item:last-child:not(:first-child),
4807
- .join.join-vertical *:last-child:not(:first-child) .join-item {
4808
- border-start-start-radius: 0;
4809
- border-start-end-radius: 0;
4810
- border-end-start-radius: inherit;
4811
- border-end-end-radius: inherit;
4812
- }
4813
- .join.join-horizontal {
4814
- flex-direction: row;
4815
- }
4816
- .join.join-horizontal .join-item:first-child:not(:last-child),
4817
- .join.join-horizontal *:first-child:not(:last-child) .join-item {
4818
- border-end-end-radius: 0;
4819
- border-start-end-radius: 0;
4820
- border-end-start-radius: inherit;
4821
- border-start-start-radius: inherit;
4822
- }
4823
- .join.join-horizontal .join-item:last-child:not(:first-child),
4824
- .join.join-horizontal *:last-child:not(:first-child) .join-item {
4825
- border-end-start-radius: 0;
4826
- border-start-start-radius: 0;
4827
- border-end-end-radius: inherit;
4828
- border-start-end-radius: inherit;
4829
- }
4830
- .modal-bottom {
4831
- place-items: end;
4832
- }
4833
- .select-xs {
4834
- height: 1.5rem;
4835
- min-height: 1.5rem;
4836
- padding-left: 0.5rem;
4837
- padding-right: 2rem;
4838
- font-size: 0.75rem;
4839
- line-height: 1rem;
4840
- line-height: 1.625;
4841
- }
4842
- [dir="rtl"] .select-xs {
4843
- padding-left: 2rem;
4844
- padding-right: 0.5rem;
4845
- }
4846
- .steps-horizontal .step {
4847
- display: grid;
4848
- grid-template-columns: repeat(1, minmax(0, 1fr));
4849
- grid-template-rows: repeat(2, minmax(0, 1fr));
4850
- place-items: center;
4851
- text-align: center;
4852
- }
4853
- .steps-vertical .step {
4854
- display: grid;
4855
- grid-template-columns: repeat(2, minmax(0, 1fr));
4856
- grid-template-rows: repeat(1, minmax(0, 1fr));
4857
- }
4858
- .tabs-md :where(.tab) {
4859
- height: 2rem;
4860
- font-size: 0.875rem;
4861
- line-height: 1.25rem;
4862
- line-height: 2;
4863
- --tab-padding: 1rem;
4864
- }
4865
- .tabs-lg :where(.tab) {
4866
- height: 3rem;
4867
- font-size: 1.125rem;
4868
- line-height: 1.75rem;
4869
- line-height: 2;
4870
- --tab-padding: 1.25rem;
4871
- }
4872
- .tabs-sm :where(.tab) {
4873
- height: 1.5rem;
4874
- font-size: 0.875rem;
4875
- line-height: .75rem;
4876
- --tab-padding: 0.75rem;
4877
- }
4878
- .tabs-xs :where(.tab) {
4879
- height: 1.25rem;
4880
- font-size: 0.75rem;
4881
- line-height: .75rem;
4882
- --tab-padding: 0.5rem;
4883
- }
4884
- .tooltip {
4885
- position: relative;
4886
- display: inline-block;
4887
- --tooltip-offset: calc(100% + 1px + var(--tooltip-tail, 0px));
4888
- }
4889
- .tooltip:before {
4890
- position: absolute;
4891
- pointer-events: none;
4892
- z-index: 1;
4893
- content: var(--tw-content);
4894
- --tw-content: attr(data-tip);
4895
- }
4896
- .tooltip:before, .tooltip-top:before {
4897
- transform: translateX(-50%);
4898
- top: auto;
4899
- left: 50%;
4900
- right: auto;
4901
- bottom: var(--tooltip-offset);
4902
- }
4903
- .join.join-vertical > :where(*:not(:first-child)) {
4904
- margin-left: 0px;
4905
- margin-right: 0px;
4906
- margin-top: -1px;
4907
- }
4908
- .join.join-vertical > :where(*:not(:first-child)):is(.btn) {
4909
- margin-top: calc(var(--border-btn) * -1);
4910
- }
4911
- .join.join-horizontal > :where(*:not(:first-child)) {
4912
- margin-top: 0px;
4913
- margin-bottom: 0px;
4914
- margin-inline-start: -1px;
4915
- }
4916
- .join.join-horizontal > :where(*:not(:first-child)):is(.btn) {
4917
- margin-inline-start: calc(var(--border-btn) * -1);
4918
- margin-top: 0px;
4919
- }
4920
- .modal-top :where(.modal-box) {
4921
- width: 100%;
4922
- max-width: none;
4923
- --tw-translate-y: -2.5rem;
4924
- --tw-scale-x: 1;
4925
- --tw-scale-y: 1;
4926
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4927
- border-bottom-right-radius: var(--rounded-box, 1rem);
4928
- border-bottom-left-radius: var(--rounded-box, 1rem);
4929
- border-top-left-radius: 0px;
4930
- border-top-right-radius: 0px;
4931
- }
4932
- .modal-middle :where(.modal-box) {
4933
- width: 91.666667%;
4934
- max-width: 32rem;
4935
- --tw-translate-y: 0px;
4936
- --tw-scale-x: .9;
4937
- --tw-scale-y: .9;
4938
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4939
- border-top-left-radius: var(--rounded-box, 1rem);
4940
- border-top-right-radius: var(--rounded-box, 1rem);
4941
- border-bottom-right-radius: var(--rounded-box, 1rem);
4942
- border-bottom-left-radius: var(--rounded-box, 1rem);
4943
- }
4944
- .modal-bottom :where(.modal-box) {
4945
- width: 100%;
4946
- max-width: none;
4947
- --tw-translate-y: 2.5rem;
4948
- --tw-scale-x: 1;
4949
- --tw-scale-y: 1;
4950
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4951
- border-top-left-radius: var(--rounded-box, 1rem);
4952
- border-top-right-radius: var(--rounded-box, 1rem);
4953
- border-bottom-right-radius: 0px;
4954
- border-bottom-left-radius: 0px;
4955
- }
4956
- .steps-horizontal .step {
4957
- grid-template-rows: 40px 1fr;
4958
- grid-template-columns: auto;
4959
- min-width: 4rem;
4960
- }
4961
- .steps-horizontal .step:before {
4962
- height: 0.5rem;
4963
- width: 100%;
4964
- --tw-translate-x: 0px;
4965
- --tw-translate-y: 0px;
4966
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4967
- content: "";
4968
- margin-inline-start: -100%;
4969
- }
4970
- .steps-horizontal .step:where([dir="rtl"], [dir="rtl"] *):before {
4971
- --tw-translate-x: 0px;
4972
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4973
- }
4974
- .steps-vertical .step {
4975
- gap: 0.5rem;
4976
- grid-template-columns: 40px 1fr;
4977
- grid-template-rows: auto;
4978
- min-height: 4rem;
4979
- justify-items: start;
4980
- }
4981
- .steps-vertical .step:before {
4982
- height: 100%;
4983
- width: 0.5rem;
4984
- --tw-translate-x: -50%;
4985
- --tw-translate-y: -50%;
4986
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4987
- margin-inline-start: 50%;
4988
- }
4989
- .steps-vertical .step:where([dir="rtl"], [dir="rtl"] *):before {
4990
- --tw-translate-x: 50%;
4991
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
4992
- }
4993
- .tooltip {
4994
- position: relative;
4995
- display: inline-block;
4996
- text-align: center;
4997
- --tooltip-tail: 0.1875rem;
4998
- --tooltip-color: var(--fallback-n,oklch(var(--n)/1));
4999
- --tooltip-text-color: var(--fallback-nc,oklch(var(--nc)/1));
5000
- --tooltip-tail-offset: calc(100% + 0.0625rem - var(--tooltip-tail));
5001
- }
5002
- .tooltip:before,
5003
- .tooltip:after {
5004
- opacity: 0;
5005
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
5006
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
5007
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
5008
- transition-delay: 100ms;
5009
- transition-duration: 200ms;
5010
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
5011
- }
5012
- .tooltip:after {
5013
- position: absolute;
5014
- content: "";
5015
- border-style: solid;
5016
- border-width: var(--tooltip-tail, 0);
5017
- width: 0;
5018
- height: 0;
5019
- display: block;
5020
- }
5021
- .tooltip:before {
5022
- max-width: 20rem;
5023
- white-space: normal;
5024
- border-radius: 0.25rem;
5025
- padding-left: 0.5rem;
5026
- padding-right: 0.5rem;
5027
- padding-top: 0.25rem;
5028
- padding-bottom: 0.25rem;
5029
- font-size: 0.875rem;
5030
- line-height: 1.25rem;
5031
- background-color: var(--tooltip-color);
5032
- color: var(--tooltip-text-color);
5033
- width: -moz-max-content;
5034
- width: max-content;
5035
- }
5036
- .tooltip.tooltip-open:before {
5037
- opacity: 1;
5038
- transition-delay: 75ms;
5039
- }
5040
- .tooltip.tooltip-open:after {
5041
- opacity: 1;
5042
- transition-delay: 75ms;
5043
- }
5044
- .tooltip:hover:before {
5045
- opacity: 1;
5046
- transition-delay: 75ms;
5047
- }
5048
- .tooltip:hover:after {
5049
- opacity: 1;
5050
- transition-delay: 75ms;
5051
- }
5052
- .tooltip:has(:focus-visible):after,
5053
- .tooltip:has(:focus-visible):before {
5054
- opacity: 1;
5055
- transition-delay: 75ms;
5056
- }
5057
- .tooltip:not([data-tip]):hover:before,
5058
- .tooltip:not([data-tip]):hover:after {
5059
- visibility: hidden;
5060
- opacity: 0;
5061
- }
5062
- .tooltip:after, .tooltip-top:after {
5063
- transform: translateX(-50%);
5064
- border-color: var(--tooltip-color) transparent transparent transparent;
5065
- top: auto;
5066
- left: 50%;
5067
- right: auto;
5068
- bottom: var(--tooltip-tail-offset);
5069
- }
5070
- .iconify {
5071
- display: inline-block;
5072
- width: 1em;
5073
- height: 1em;
5074
- background-color: currentColor;
5075
- -webkit-mask-image: var(--svg);
5076
- mask-image: var(--svg);
5077
- -webkit-mask-repeat: no-repeat;
5078
- mask-repeat: no-repeat;
5079
- -webkit-mask-size: 100% 100%;
5080
- mask-size: 100% 100%;
5081
- }
5082
- .visible {
5083
- visibility: visible;
5084
- }
5085
- .invisible {
5086
- visibility: hidden;
5087
- }
5088
- .static {
5089
- position: static;
5090
- }
5091
- .fixed {
5092
- position: fixed;
5093
- }
5094
- .absolute {
5095
- position: absolute;
5096
- }
5097
- .relative {
5098
- position: relative;
5099
- }
5100
- .inset-0 {
5101
- inset: 0px;
5102
- }
5103
- .-right-3 {
5104
- right: -0.75rem;
5105
- }
5106
- .-top-3 {
5107
- top: -0.75rem;
5108
- }
5109
- .bottom-0 {
5110
- bottom: 0px;
5111
- }
5112
- .bottom-full {
5113
- bottom: 100%;
5114
- }
5115
- .left-0 {
5116
- left: 0px;
5117
- }
5118
- .left-1\\/2 {
5119
- left: 50%;
5120
- }
5121
- .left-full {
5122
- left: 100%;
5123
- }
5124
- .right-0 {
5125
- right: 0px;
5126
- }
5127
- .right-10 {
5128
- right: 2.5rem;
5129
- }
5130
- .right-2 {
5131
- right: 0.5rem;
5132
- }
5133
- .right-full {
5134
- right: 100%;
5135
- }
5136
- .top-0 {
5137
- top: 0px;
5138
- }
5139
- .top-1\\/2 {
5140
- top: 50%;
5141
- }
5142
- .top-2 {
5143
- top: 0.5rem;
5144
- }
5145
- .top-full {
5146
- top: 100%;
5147
- }
5148
- .z-10 {
5149
- z-index: 10;
5150
- }
5151
- .z-\\[1001\\] {
5152
- z-index: 1001;
5153
- }
5154
- .float-right {
5155
- float: right;
5156
- }
5157
- .m-1 {
5158
- margin: 0.25rem;
5159
- }
5160
- .m-2 {
5161
- margin: 0.5rem;
5162
- }
5163
- .m-4 {
5164
- margin: 1rem;
5165
- }
5166
- .mx-1 {
5167
- margin-left: 0.25rem;
5168
- margin-right: 0.25rem;
5169
- }
5170
- .mx-2 {
5171
- margin-left: 0.5rem;
5172
- margin-right: 0.5rem;
5173
- }
5174
- .mx-auto {
5175
- margin-left: auto;
5176
- margin-right: auto;
5177
- }
5178
- .my-1 {
5179
- margin-top: 0.25rem;
5180
- margin-bottom: 0.25rem;
5181
- }
5182
- .my-4 {
5183
- margin-top: 1rem;
5184
- margin-bottom: 1rem;
5185
- }
5186
- .mb-0 {
5187
- margin-bottom: 0px;
5188
- }
5189
- .mb-1 {
5190
- margin-bottom: 0.25rem;
5191
- }
5192
- .mb-2 {
5193
- margin-bottom: 0.5rem;
5194
- }
5195
- .ml-1 {
5196
- margin-left: 0.25rem;
5197
- }
5198
- .ml-2 {
5199
- margin-left: 0.5rem;
5200
- }
5201
- .ml-2\\.5 {
5202
- margin-left: 0.625rem;
5203
- }
5204
- .ml-3 {
5205
- margin-left: 0.75rem;
5206
- }
5207
- .mr-1 {
5208
- margin-right: 0.25rem;
5209
- }
5210
- .mr-2 {
5211
- margin-right: 0.5rem;
5212
- }
5213
- .mt-0 {
5214
- margin-top: 0px;
5215
- }
5216
- .mt-0\\.5 {
5217
- margin-top: 0.125rem;
5218
- }
5219
- .mt-1 {
5220
- margin-top: 0.25rem;
5221
- }
5222
- .mt-4 {
5223
- margin-top: 1rem;
5224
- }
5225
- .block {
5226
- display: block;
5227
- }
5228
- .inline {
5229
- display: inline;
5230
- }
5231
- .flex {
5232
- display: flex;
5233
- }
5234
- .inline-flex {
5235
- display: inline-flex;
5236
- }
5237
- .table {
5238
- display: table;
5239
- }
5240
- .grid {
5241
- display: grid;
5242
- }
5243
- .contents {
5244
- display: contents;
5245
- }
5246
- .hidden {
5247
- display: none;
5248
- }
5249
- .h-8 {
5250
- height: 2rem;
5251
- }
5252
- .h-full {
5253
- height: 100%;
5254
- }
5255
- .max-h-80 {
5256
- max-height: 20rem;
5257
- }
5258
- .w-10 {
5259
- width: 2.5rem;
5260
- }
5261
- .w-16 {
5262
- width: 4rem;
5263
- }
5264
- .w-20 {
5265
- width: 5rem;
5266
- }
5267
- .w-24 {
5268
- width: 6rem;
5269
- }
5270
- .w-32 {
5271
- width: 8rem;
5272
- }
5273
- .w-64 {
5274
- width: 16rem;
5275
- }
5276
- .w-\\[6rem\\] {
5277
- width: 6rem;
5278
- }
5279
- .w-full {
5280
- width: 100%;
5281
- }
5282
- .w-max {
5283
- width: -moz-max-content;
5284
- width: max-content;
5285
- }
5286
- .min-w-24 {
5287
- min-width: 6rem;
5288
- }
5289
- .min-w-32 {
5290
- min-width: 8rem;
5291
- }
5292
- .min-w-\\[180px\\] {
5293
- min-width: 180px;
5294
- }
5295
- .min-w-\\[7\\.5rem\\] {
5296
- min-width: 7.5rem;
5297
- }
5298
- .max-w-screen-lg {
5299
- max-width: 1024px;
5300
- }
5301
- .flex-1 {
5302
- flex: 1 1 0%;
5303
- }
5304
- .flex-grow {
5305
- flex-grow: 1;
5306
- }
5307
- .grow {
5308
- flex-grow: 1;
5309
- }
5310
- .-translate-y-1\\/2 {
5311
- --tw-translate-y: -50%;
5312
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
5313
- }
5314
- .translate-x-\\[-50\\%\\] {
5315
- --tw-translate-x: -50%;
5316
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
5317
- }
5318
- .translate-y-\\[-50\\%\\] {
5319
- --tw-translate-y: -50%;
5320
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
5321
- }
5322
- .transform {
5323
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
5324
- }
5325
- .cursor-pointer {
5326
- cursor: pointer;
5327
- }
5328
- .select-text {
5329
- -webkit-user-select: text;
5330
- -moz-user-select: text;
5331
- user-select: text;
5332
- }
5333
- .list-inside {
5334
- list-style-position: inside;
5335
- }
5336
- .list-outside {
5337
- list-style-position: outside;
5338
- }
5339
- .list-disc {
5340
- list-style-type: disc;
5341
- }
5342
- .flex-row {
5343
- flex-direction: row;
5344
- }
5345
- .flex-col {
5346
- flex-direction: column;
5347
- }
5348
- .flex-wrap {
5349
- flex-wrap: wrap;
5350
- }
5351
- .items-end {
5352
- align-items: flex-end;
5353
- }
5354
- .items-center {
5355
- align-items: center;
5356
- }
5357
- .justify-center {
5358
- justify-content: center;
5359
- }
5360
- .justify-between {
5361
- justify-content: space-between;
5362
- }
5363
- .gap-0\\.5 {
5364
- gap: 0.125rem;
5365
- }
5366
- .gap-1 {
5367
- gap: 0.25rem;
5368
- }
5369
- .gap-2 {
5370
- gap: 0.5rem;
5371
- }
5372
- .gap-y-1 {
5373
- row-gap: 0.25rem;
5374
- }
5375
- .overflow-visible {
5376
- overflow: visible;
5377
- }
5378
- .overflow-scroll {
5379
- overflow: scroll;
5380
- }
5381
- .overflow-x-auto {
5382
- overflow-x: auto;
5383
- }
5384
- .whitespace-nowrap {
5385
- white-space: nowrap;
5386
- }
5387
- .text-wrap {
5388
- text-wrap: wrap;
5389
- }
5390
- .text-nowrap {
5391
- text-wrap: nowrap;
5392
- }
5393
- .break-words {
5394
- overflow-wrap: break-word;
5395
- }
5396
- .rounded {
5397
- border-radius: 0.25rem;
5398
- }
5399
- .rounded-lg {
5400
- border-radius: 0.5rem;
5401
- }
5402
- .rounded-md {
5403
- border-radius: 0.375rem;
5404
- }
5405
- .rounded-none {
5406
- border-radius: 0px;
5407
- }
5408
- .rounded-b-md {
5409
- border-bottom-right-radius: 0.375rem;
5410
- border-bottom-left-radius: 0.375rem;
5411
- }
5412
- .rounded-b-none {
5413
- border-bottom-right-radius: 0px;
5414
- border-bottom-left-radius: 0px;
5415
- }
5416
- .rounded-t-md {
5417
- border-top-left-radius: 0.375rem;
5418
- border-top-right-radius: 0.375rem;
5419
- }
5420
- .rounded-t-none {
5421
- border-top-left-radius: 0px;
5422
- border-top-right-radius: 0px;
5423
- }
5424
- .rounded-tr-md {
5425
- border-top-right-radius: 0.375rem;
5426
- }
5427
- .border {
5428
- border-width: 1px;
5429
- }
5430
- .border-0 {
5431
- border-width: 0px;
5432
- }
5433
- .border-2 {
5434
- border-width: 2px;
5435
- }
5436
- .border-b {
5437
- border-bottom-width: 1px;
5438
- }
5439
- .border-b-2 {
5440
- border-bottom-width: 2px;
5441
- }
5442
- .border-gray-100 {
5443
- --tw-border-opacity: 1;
5444
- border-color: rgb(243 244 246 / var(--tw-border-opacity, 1));
5445
- }
5446
- .border-gray-200 {
5447
- --tw-border-opacity: 1;
5448
- border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
5449
- }
5450
- .border-gray-300 {
5451
- --tw-border-opacity: 1;
5452
- border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
5453
- }
5454
- .border-gray-500 {
5455
- --tw-border-opacity: 1;
5456
- border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));
5457
- }
5458
- .border-slate-500 {
5459
- --tw-border-opacity: 1;
5460
- border-color: rgb(100 116 139 / var(--tw-border-opacity, 1));
5461
- }
5462
- .bg-blue-300 {
5463
- --tw-bg-opacity: 1;
5464
- background-color: rgb(147 197 253 / var(--tw-bg-opacity, 1));
5465
- }
5466
- .bg-red-200 {
5467
- --tw-bg-opacity: 1;
5468
- background-color: rgb(254 202 202 / var(--tw-bg-opacity, 1));
5469
- }
5470
- .bg-slate-200 {
5471
- --tw-bg-opacity: 1;
5472
- background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1));
5473
- }
5474
- .bg-transparent {
5475
- background-color: transparent;
5476
- }
5477
- .bg-white {
5478
- --tw-bg-opacity: 1;
5479
- background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
5480
- }
5481
- .p-1 {
5482
- padding: 0.25rem;
5483
- }
5484
- .p-1\\.5 {
5485
- padding: 0.375rem;
5486
- }
5487
- .p-2 {
5488
- padding: 0.5rem;
5489
- }
5490
- .p-4 {
5491
- padding: 1rem;
5492
- }
5493
- .px-1 {
5494
- padding-left: 0.25rem;
5495
- padding-right: 0.25rem;
5496
- }
5497
- .px-2 {
5498
- padding-left: 0.5rem;
5499
- padding-right: 0.5rem;
5500
- }
5501
- .px-3 {
5502
- padding-left: 0.75rem;
5503
- padding-right: 0.75rem;
5504
- }
5505
- .px-4 {
5506
- padding-left: 1rem;
5507
- padding-right: 1rem;
5508
- }
5509
- .py-1 {
5510
- padding-top: 0.25rem;
5511
- padding-bottom: 0.25rem;
5512
- }
5513
- .py-16 {
5514
- padding-top: 4rem;
5515
- padding-bottom: 4rem;
5516
- }
5517
- .py-2 {
5518
- padding-top: 0.5rem;
5519
- padding-bottom: 0.5rem;
5520
- }
5521
- .pl-2 {
5522
- padding-left: 0.5rem;
5523
- }
5524
- .pr-14 {
5525
- padding-right: 3.5rem;
5526
- }
5527
- .text-center {
5528
- text-align: center;
5529
- }
5530
- .text-justify {
5531
- text-align: justify;
5532
- }
5533
- .text-2xl {
5534
- font-size: 1.5rem;
5535
- line-height: 2rem;
5536
- }
5537
- .text-base {
5538
- font-size: 1rem;
5539
- line-height: 1.5rem;
5540
- }
5541
- .text-lg {
5542
- font-size: 1.125rem;
5543
- line-height: 1.75rem;
5544
- }
5545
- .text-sm {
5546
- font-size: 0.875rem;
5547
- line-height: 1.25rem;
5548
- }
5549
- .text-xl {
5550
- font-size: 1.25rem;
5551
- line-height: 1.75rem;
5552
- }
5553
- .text-xs {
5554
- font-size: 0.75rem;
5555
- line-height: 1rem;
5556
- }
5557
- .font-bold {
5558
- font-weight: 700;
5559
- }
5560
- .font-medium {
5561
- font-weight: 500;
5562
- }
5563
- .font-normal {
5564
- font-weight: 400;
5565
- }
5566
- .font-semibold {
5567
- font-weight: 600;
5568
- }
5569
- .leading-5 {
5570
- line-height: 1.25rem;
5571
- }
5572
- .text-\\[\\#606060\\] {
5573
- --tw-text-opacity: 1;
5574
- color: rgb(96 96 96 / var(--tw-text-opacity, 1));
5575
- }
5576
- .text-black {
5577
- --tw-text-opacity: 1;
5578
- color: rgb(0 0 0 / var(--tw-text-opacity, 1));
5579
- }
5580
- .text-blue-600 {
5581
- --tw-text-opacity: 1;
5582
- color: rgb(37 99 235 / var(--tw-text-opacity, 1));
5583
- }
5584
- .text-gray-500 {
5585
- --tw-text-opacity: 1;
5586
- color: rgb(107 114 128 / var(--tw-text-opacity, 1));
5587
- }
5588
- .text-gray-600 {
5589
- --tw-text-opacity: 1;
5590
- color: rgb(75 85 99 / var(--tw-text-opacity, 1));
5591
- }
5592
- .text-neutral-500 {
5593
- --tw-text-opacity: 1;
5594
- color: rgb(115 115 115 / var(--tw-text-opacity, 1));
5595
- }
5596
- .text-red-600 {
5597
- --tw-text-opacity: 1;
5598
- color: rgb(220 38 38 / var(--tw-text-opacity, 1));
5599
- }
5600
- .text-red-700 {
5601
- --tw-text-opacity: 1;
5602
- color: rgb(185 28 28 / var(--tw-text-opacity, 1));
5603
- }
5604
- .underline {
5605
- text-decoration-line: underline;
5606
- }
5607
- .shadow {
5608
- --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
5609
- --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
5610
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
5611
- }
5612
- .shadow-lg {
5613
- --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
5614
- --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
5615
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
5616
- }
5617
- .shadow-md {
5618
- --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
5619
- --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
5620
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
5621
- }
5622
- .shadow-sm {
5623
- --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
5624
- --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
5625
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
5626
- }
5627
- .blur {
5628
- --tw-blur: blur(8px);
5629
- 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);
5630
- }
5631
- .filter {
5632
- 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);
5633
- }
5634
- .transition-colors {
5635
- transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
5636
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
5637
- transition-duration: 150ms;
5638
- }
5639
- .duration-150 {
5640
- transition-duration: 150ms;
5641
- }
5642
- .\\@container {
5643
- container-type: inline-size;
5644
- }
5645
- .mdi--fullscreen {
5646
- --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M5 5h5v2H7v3H5zm9 0h5v5h-2V7h-3zm3 9h2v5h-5v-2h3zm-7 3v2H5v-5h2v3z'/%3E%3C/svg%3E");
5647
- }
5648
- .mdi--fullscreen-exit {
5649
- --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M14 14h5v2h-3v3h-2zm-9 0h5v5H8v-3H5zm3-9h2v5H5V8h3zm11 3v2h-5V5h2v3z'/%3E%3C/svg%3E");
5650
- }
5651
- .mdi--reload {
5652
- --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M2 12a9 9 0 0 0 9 9c2.39 0 4.68-.94 6.4-2.6l-1.5-1.5A6.7 6.7 0 0 1 11 19c-6.24 0-9.36-7.54-4.95-11.95S18 5.77 18 12h-3l4 4h.1l3.9-4h-3a9 9 0 0 0-18 0'/%3E%3C/svg%3E");
5653
- }
5654
- @media (min-width: 640px) {
5655
-
5656
- .sm\\:modal-middle {
5657
- place-items: center;
5658
- }
5659
-
5660
- .sm\\:modal-middle :where(.modal-box) {
5661
- width: 91.666667%;
5662
- max-width: 32rem;
5663
- --tw-translate-y: 0px;
5664
- --tw-scale-x: .9;
5665
- --tw-scale-y: .9;
5666
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
5667
- border-top-left-radius: var(--rounded-box, 1rem);
5668
- border-top-right-radius: var(--rounded-box, 1rem);
5669
- border-bottom-right-radius: var(--rounded-box, 1rem);
5670
- border-bottom-left-radius: var(--rounded-box, 1rem);
5671
- }
5672
- }
5673
- .hover\\:scale-110:hover {
5674
- --tw-scale-x: 1.1;
5675
- --tw-scale-y: 1.1;
5676
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
5677
- }
5678
- .hover\\:scale-90:hover {
5679
- --tw-scale-x: .9;
5680
- --tw-scale-y: .9;
5681
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
5682
- }
5683
- .hover\\:bg-gray-100:hover {
5684
- --tw-bg-opacity: 1;
5685
- background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
5686
- }
5687
- .hover\\:bg-gray-300:hover {
5688
- --tw-bg-opacity: 1;
5689
- background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
5690
- }
5691
- .hover\\:font-bold:hover {
5692
- font-weight: 700;
5693
- }
5694
- .hover\\:text-blue-700:hover {
5695
- --tw-text-opacity: 1;
5696
- color: rgb(29 78 216 / var(--tw-text-opacity, 1));
5697
- }
5698
- .hover\\:text-blue-800:hover {
5699
- --tw-text-opacity: 1;
5700
- color: rgb(30 64 175 / var(--tw-text-opacity, 1));
5701
- }
5702
- .hover\\:text-gray-400:hover {
5703
- --tw-text-opacity: 1;
5704
- color: rgb(156 163 175 / var(--tw-text-opacity, 1));
5705
- }
5706
- .hover\\:text-gray-700:hover {
5707
- --tw-text-opacity: 1;
5708
- color: rgb(55 65 81 / var(--tw-text-opacity, 1));
5709
- }
5710
- .peer:hover ~ .peer-hover\\:visible {
5711
- visibility: visible;
5712
- }
5713
- @container (min-width: 2rem) {
5714
-
5715
- .\\@\\[2rem\\]\\:visible {
5716
- visibility: visible;
5717
- }
5718
- }
5719
- @container (min-width: 6rem) {
5720
-
5721
- .\\@\\[6rem\\]\\:visible {
5722
- visibility: visible;
5723
- }
5724
- }
5725
- @container (min-width: 14rem) {
5726
-
5727
- .\\@4xs\\:flex-row {
5728
- flex-direction: row;
5729
- }
5730
-
5731
- .\\@4xs\\:rounded-l-none {
5732
- border-top-left-radius: 0px;
5733
- border-bottom-left-radius: 0px;
5734
- }
5735
-
5736
- .\\@4xs\\:rounded-bl-md {
5737
- border-bottom-left-radius: 0.375rem;
5738
- }
5739
-
5740
- .\\@4xs\\:rounded-tr-none {
5741
- border-top-right-radius: 0px;
5742
- }
5743
- }
5744
- @container (min-width: 28rem) {
5745
-
5746
- .\\@md\\:flex-row {
5747
- flex-direction: row;
5748
- }
5749
-
5750
- .\\@md\\:rounded-l-md {
5751
- border-top-left-radius: 0.375rem;
5752
- border-bottom-left-radius: 0.375rem;
5753
- }
5754
-
5755
- .\\@md\\:rounded-l-none {
5756
- border-top-left-radius: 0px;
5757
- border-bottom-left-radius: 0px;
5758
- }
5759
-
5760
- .\\@md\\:rounded-r-md {
5761
- border-top-right-radius: 0.375rem;
5762
- border-bottom-right-radius: 0.375rem;
5763
- }
5764
-
5765
- .\\@md\\:rounded-r-none {
5766
- border-top-right-radius: 0px;
5767
- border-bottom-right-radius: 0px;
5768
- }
5769
- }
5770
- @media (min-width: 640px) {
5771
-
5772
- .sm\\:max-w-5xl {
5773
- max-width: 64rem;
2268
+ const MutationComparison = (componentProps) => {
2269
+ const { width, height } = componentProps;
2270
+ const size = { height, width };
2271
+ return /* @__PURE__ */ u$1(ErrorBoundary, { size, componentProps, schema: mutationComparisonPropsSchema, children: /* @__PURE__ */ u$1(ResizeContainer, { size, children: /* @__PURE__ */ u$1(MutationComparisonInner, { ...componentProps }) }) });
2272
+ };
2273
+ const MutationComparisonInner = (componentProps) => {
2274
+ const { lapisFilters, sequenceType } = componentProps;
2275
+ const lapis = useLapisUrl();
2276
+ const { data, error, isLoading } = useQuery(async () => {
2277
+ return queryMutationData(lapisFilters, sequenceType, lapis);
2278
+ }, [lapisFilters, sequenceType, lapis]);
2279
+ if (isLoading) {
2280
+ return /* @__PURE__ */ u$1(LoadingDisplay, {});
5774
2281
  }
5775
-
5776
- .sm\\:flex-row {
5777
- flex-direction: row;
2282
+ if (error !== null) {
2283
+ throw error;
5778
2284
  }
5779
-
5780
- .sm\\:text-4xl {
5781
- font-size: 2.25rem;
5782
- line-height: 2.5rem;
2285
+ if (data === null) {
2286
+ return /* @__PURE__ */ u$1(NoDataDisplay, {});
5783
2287
  }
5784
- }
2288
+ return /* @__PURE__ */ u$1(MutationComparisonTabs, { data: data.mutationData, originalComponentProps: componentProps });
2289
+ };
2290
+ const MutationComparisonTabs = ({ data, originalComponentProps }) => {
2291
+ const [proportionInterval, setProportionInterval] = d({ min: 0.5, max: 1 });
2292
+ const [displayedMutationTypes, setDisplayedMutationTypes] = d([
2293
+ { label: "Substitutions", checked: true, type: "substitution" },
2294
+ { label: "Deletions", checked: true, type: "deletion" }
2295
+ ]);
2296
+ const [displayedSegments, setDisplayedSegments] = useDisplayedSegments(originalComponentProps.sequenceType);
2297
+ const filteredData = T$1(
2298
+ () => filterMutationData(data, displayedSegments, displayedMutationTypes),
2299
+ [data, displayedSegments, displayedMutationTypes]
2300
+ );
2301
+ const maintainAspectRatio = getMaintainAspectRatio(originalComponentProps.height);
2302
+ const getTab = (view) => {
2303
+ switch (view) {
2304
+ case "table":
2305
+ return {
2306
+ title: "Table",
2307
+ content: /* @__PURE__ */ u$1(
2308
+ MutationComparisonTable,
2309
+ {
2310
+ data: { content: filteredData },
2311
+ proportionInterval,
2312
+ pageSize: originalComponentProps.pageSize,
2313
+ sequenceType: originalComponentProps.sequenceType
2314
+ }
2315
+ )
2316
+ };
2317
+ case "venn":
2318
+ return {
2319
+ title: "Venn",
2320
+ content: /* @__PURE__ */ u$1(
2321
+ MutationComparisonVenn,
2322
+ {
2323
+ data: { content: filteredData },
2324
+ proportionInterval,
2325
+ maintainAspectRatio,
2326
+ sequenceType: originalComponentProps.sequenceType
2327
+ }
2328
+ )
2329
+ };
2330
+ }
2331
+ };
2332
+ const tabs = originalComponentProps.views.map((view) => getTab(view));
2333
+ return /* @__PURE__ */ u$1(
2334
+ Tabs,
2335
+ {
2336
+ tabs,
2337
+ toolbar: /* @__PURE__ */ u$1(
2338
+ Toolbar$7,
2339
+ {
2340
+ displayedSegments,
2341
+ setDisplayedSegments,
2342
+ displayedMutationTypes,
2343
+ setDisplayedMutationTypes,
2344
+ filteredData,
2345
+ proportionInterval,
2346
+ setProportionInterval,
2347
+ originalComponentProps
2348
+ }
2349
+ )
2350
+ }
2351
+ );
2352
+ };
2353
+ const Toolbar$7 = ({
2354
+ displayedSegments,
2355
+ setDisplayedSegments,
2356
+ displayedMutationTypes,
2357
+ setDisplayedMutationTypes,
2358
+ filteredData,
2359
+ proportionInterval,
2360
+ setProportionInterval,
2361
+ originalComponentProps
2362
+ }) => {
2363
+ return /* @__PURE__ */ u$1(Fragment, { children: [
2364
+ /* @__PURE__ */ u$1(
2365
+ ProportionSelectorDropdown,
2366
+ {
2367
+ proportionInterval,
2368
+ setMinProportion: (min) => setProportionInterval((prev) => ({ ...prev, min })),
2369
+ setMaxProportion: (max) => setProportionInterval((prev) => ({ ...prev, max }))
2370
+ }
2371
+ ),
2372
+ /* @__PURE__ */ u$1(SegmentSelector, { displayedSegments, setDisplayedSegments }),
2373
+ /* @__PURE__ */ u$1(
2374
+ MutationTypeSelector,
2375
+ {
2376
+ displayedMutationTypes,
2377
+ setDisplayedMutationTypes
2378
+ }
2379
+ ),
2380
+ /* @__PURE__ */ u$1(
2381
+ CsvDownloadButton,
2382
+ {
2383
+ className: "btn btn-xs",
2384
+ getData: () => getMutationComparisonTableData({ content: filteredData }, proportionInterval),
2385
+ filename: "mutation_comparison.csv"
2386
+ }
2387
+ ),
2388
+ /* @__PURE__ */ u$1(MutationComparisonInfo, { originalComponentProps }),
2389
+ /* @__PURE__ */ u$1(Fullscreen, {})
2390
+ ] });
2391
+ };
2392
+ const MutationComparisonInfo = ({ originalComponentProps }) => {
2393
+ const lapis = useLapisUrl();
2394
+ return /* @__PURE__ */ u$1(Info, { children: [
2395
+ /* @__PURE__ */ u$1(InfoHeadline1, { children: "Info for mutation comparison" }),
2396
+ /* @__PURE__ */ u$1(InfoParagraph, { children: [
2397
+ "This displays ",
2398
+ /* @__PURE__ */ u$1(SubstitutionsLink, {}),
2399
+ " and ",
2400
+ /* @__PURE__ */ u$1(DeletionsLink, {}),
2401
+ " of several variants. It shows mutations where the proportion for any given variant falls within the range you can select in the component's toolbar."
2402
+ ] }),
2403
+ /* @__PURE__ */ u$1(ProportionExplanation, {}),
2404
+ originalComponentProps.views.includes(views.table) && /* @__PURE__ */ u$1(Fragment, { children: [
2405
+ /* @__PURE__ */ u$1(InfoHeadline2, { children: "Table View" }),
2406
+ /* @__PURE__ */ u$1(InfoParagraph, { children: "The table view displays the proportion of mutations that appear in any of the variants." })
2407
+ ] }),
2408
+ originalComponentProps.views.includes(views.venn) && /* @__PURE__ */ u$1(Fragment, { children: [
2409
+ /* @__PURE__ */ u$1(InfoHeadline2, { children: "Venn Diagram View" }),
2410
+ /* @__PURE__ */ u$1(InfoParagraph, { children: "The Venn diagram view illustrates which mutations overlap between the variants and which are exclusive to specific variants. Mutations overlap if their proportion falls within the selected range for two variants. If the proportion of a mutation is within the selected range for one variant but not for the other, the mutation is considered exclusive to that variant." })
2411
+ ] }),
2412
+ /* @__PURE__ */ u$1(InfoComponentCode, { componentName: "mutation-comparison", params: originalComponentProps, lapisUrl: lapis })
2413
+ ] });
2414
+ };
2415
+ const gridJsStyle = '.gridjs-head button, .gridjs-footer button {\n cursor: pointer;\n background-color: transparent;\n background-image: none;\n padding: 0;\n margin: 0;\n border: none;\n outline: none;\n}\n\n.gridjs-temp {\n position: relative;\n}\n\n.gridjs-head {\n width: 100%;\n margin-bottom: 5px;\n padding: 5px 1px;\n}\n.gridjs-head::after {\n content: "";\n display: block;\n clear: both;\n}\n.gridjs-head:empty {\n padding: 0;\n border: none;\n}\n\n.gridjs-container {\n overflow: hidden;\n display: inline-block;\n padding: 2px;\n color: #000;\n position: relative;\n z-index: 0;\n}\n\n.gridjs-footer {\n display: block;\n position: relative;\n width: 100%;\n z-index: 5;\n padding: 12px 24px;\n border-top: 1px solid #e5e7eb;\n background-color: #fff;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.26);\n border-radius: 0 0 8px 8px;\n border-bottom-width: 1px;\n border-color: #e5e7eb;\n}\n.gridjs-footer:empty {\n padding: 0;\n border: none;\n}\n\ninput.gridjs-input {\n outline: none;\n background-color: #fff;\n border: 1px solid #d2d6dc;\n border-radius: 5px;\n padding: 10px 13px;\n font-size: 14px;\n line-height: 1.45;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\ninput.gridjs-input:focus {\n box-shadow: 0 0 0 3px rgba(149, 189, 243, 0.5);\n border-color: #9bc2f7;\n}\n\n.gridjs-pagination {\n color: #3d4044;\n}\n.gridjs-pagination::after {\n content: "";\n display: block;\n clear: both;\n}\n.gridjs-pagination .gridjs-summary {\n float: left;\n margin-top: 5px;\n}\n.gridjs-pagination .gridjs-pages {\n float: right;\n}\n.gridjs-pagination .gridjs-pages button {\n padding: 5px 14px;\n border: 1px solid #d2d6dc;\n background-color: #fff;\n border-right: none;\n outline: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.gridjs-pagination .gridjs-pages button:focus {\n box-shadow: 0 0 0 2px rgba(149, 189, 243, 0.5);\n position: relative;\n margin-right: -1px;\n border-right: 1px solid #d2d6dc;\n}\n.gridjs-pagination .gridjs-pages button:hover {\n background-color: #f7f7f7;\n color: rgb(60, 66, 87);\n outline: none;\n}\n.gridjs-pagination .gridjs-pages button:disabled,\n.gridjs-pagination .gridjs-pages button[disabled],\n.gridjs-pagination .gridjs-pages button:hover:disabled {\n cursor: default;\n background-color: #fff;\n color: #6b7280;\n}\n.gridjs-pagination .gridjs-pages button.gridjs-spread {\n cursor: default;\n box-shadow: none;\n background-color: #fff;\n}\n.gridjs-pagination .gridjs-pages button.gridjs-currentPage {\n background-color: #f7f7f7;\n font-weight: bold;\n}\n.gridjs-pagination .gridjs-pages button:last-child {\n border-bottom-right-radius: 6px;\n border-top-right-radius: 6px;\n border-right: 1px solid #d2d6dc;\n}\n.gridjs-pagination .gridjs-pages button:first-child {\n border-bottom-left-radius: 6px;\n border-top-left-radius: 6px;\n}\n.gridjs-pagination .gridjs-pages button:last-child:focus {\n margin-right: 0;\n}\n\nbutton.gridjs-sort {\n float: right;\n height: 24px;\n width: 13px;\n background-color: transparent;\n background-repeat: no-repeat;\n background-position-x: center;\n cursor: pointer;\n padding: 0;\n margin: 0;\n border: none;\n outline: none;\n background-size: contain;\n}\nbutton.gridjs-sort-neutral {\n opacity: 0.3;\n background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHdpZHRoPSI0MDEuOTk4cHgiIGhlaWdodD0iNDAxLjk5OHB4IiB2aWV3Qm94PSIwIDAgNDAxLjk5OCA0MDEuOTk4IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0MDEuOTk4IDQwMS45OTg7IgoJIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxnPgoJCTxwYXRoIGQ9Ik03My4wOTIsMTY0LjQ1MmgyNTUuODEzYzQuOTQ5LDAsOS4yMzMtMS44MDcsMTIuODQ4LTUuNDI0YzMuNjEzLTMuNjE2LDUuNDI3LTcuODk4LDUuNDI3LTEyLjg0NwoJCQljMC00Ljk0OS0xLjgxMy05LjIyOS01LjQyNy0xMi44NUwyMTMuODQ2LDUuNDI0QzIxMC4yMzIsMS44MTIsMjA1Ljk1MSwwLDIwMC45OTksMHMtOS4yMzMsMS44MTItMTIuODUsNS40MjRMNjAuMjQyLDEzMy4zMzEKCQkJYy0zLjYxNywzLjYxNy01LjQyNCw3LjkwMS01LjQyNCwxMi44NWMwLDQuOTQ4LDEuODA3LDkuMjMxLDUuNDI0LDEyLjg0N0M2My44NjMsMTYyLjY0NSw2OC4xNDQsMTY0LjQ1Miw3My4wOTIsMTY0LjQ1MnoiLz4KCQk8cGF0aCBkPSJNMzI4LjkwNSwyMzcuNTQ5SDczLjA5MmMtNC45NTIsMC05LjIzMywxLjgwOC0xMi44NSw1LjQyMWMtMy42MTcsMy42MTctNS40MjQsNy44OTgtNS40MjQsMTIuODQ3CgkJCWMwLDQuOTQ5LDEuODA3LDkuMjMzLDUuNDI0LDEyLjg0OEwxODguMTQ5LDM5Ni41N2MzLjYyMSwzLjYxNyw3LjkwMiw1LjQyOCwxMi44NSw1LjQyOHM5LjIzMy0xLjgxMSwxMi44NDctNS40MjhsMTI3LjkwNy0xMjcuOTA2CgkJCWMzLjYxMy0zLjYxNCw1LjQyNy03Ljg5OCw1LjQyNy0xMi44NDhjMC00Ljk0OC0xLjgxMy05LjIyOS01LjQyNy0xMi44NDdDMzM4LjEzOSwyMzkuMzUzLDMzMy44NTQsMjM3LjU0OSwzMjguOTA1LDIzNy41NDl6Ii8+Cgk8L2c+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+");\n background-position-y: center;\n}\nbutton.gridjs-sort-asc {\n background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHdpZHRoPSIyOTIuMzYycHgiIGhlaWdodD0iMjkyLjM2MXB4IiB2aWV3Qm94PSIwIDAgMjkyLjM2MiAyOTIuMzYxIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTIuMzYyIDI5Mi4zNjE7IgoJIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwYXRoIGQ9Ik0yODYuOTM1LDE5Ny4yODdMMTU5LjAyOCw2OS4zODFjLTMuNjEzLTMuNjE3LTcuODk1LTUuNDI0LTEyLjg0Ny01LjQyNHMtOS4yMzMsMS44MDctMTIuODUsNS40MjRMNS40MjQsMTk3LjI4NwoJCUMxLjgwNywyMDAuOTA0LDAsMjA1LjE4NiwwLDIxMC4xMzRzMS44MDcsOS4yMzMsNS40MjQsMTIuODQ3YzMuNjIxLDMuNjE3LDcuOTAyLDUuNDI1LDEyLjg1LDUuNDI1aDI1NS44MTMKCQljNC45NDksMCw5LjIzMy0xLjgwOCwxMi44NDgtNS40MjVjMy42MTMtMy42MTMsNS40MjctNy44OTgsNS40MjctMTIuODQ3UzI5MC41NDgsMjAwLjkwNCwyODYuOTM1LDE5Ny4yODd6Ii8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+");\n background-position-y: 35%;\n background-size: 10px;\n}\nbutton.gridjs-sort-desc {\n background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHdpZHRoPSIyOTIuMzYycHgiIGhlaWdodD0iMjkyLjM2MnB4IiB2aWV3Qm94PSIwIDAgMjkyLjM2MiAyOTIuMzYyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTIuMzYyIDI5Mi4zNjI7IgoJIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwYXRoIGQ9Ik0yODYuOTM1LDY5LjM3N2MtMy42MTQtMy42MTctNy44OTgtNS40MjQtMTIuODQ4LTUuNDI0SDE4LjI3NGMtNC45NTIsMC05LjIzMywxLjgwNy0xMi44NSw1LjQyNAoJCUMxLjgwNyw3Mi45OTgsMCw3Ny4yNzksMCw4Mi4yMjhjMCw0Ljk0OCwxLjgwNyw5LjIyOSw1LjQyNCwxMi44NDdsMTI3LjkwNywxMjcuOTA3YzMuNjIxLDMuNjE3LDcuOTAyLDUuNDI4LDEyLjg1LDUuNDI4CgkJczkuMjMzLTEuODExLDEyLjg0Ny01LjQyOEwyODYuOTM1LDk1LjA3NGMzLjYxMy0zLjYxNyw1LjQyNy03Ljg5OCw1LjQyNy0xMi44NDdDMjkyLjM2Miw3Ny4yNzksMjkwLjU0OCw3Mi45OTgsMjg2LjkzNSw2OS4zNzd6Ii8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+");\n background-position-y: 65%;\n background-size: 10px;\n}\nbutton.gridjs-sort:focus {\n outline: none;\n}\n\ntable.gridjs-table {\n width: 100%;\n max-width: 100%;\n border-collapse: collapse;\n text-align: left;\n display: table;\n margin: 0;\n padding: 0;\n overflow: auto;\n table-layout: fixed;\n}\n\n.gridjs-tbody {\n background-color: #fff;\n}\n\ntd.gridjs-td {\n border: 1px solid #e5e7eb;\n padding: 12px 24px;\n background-color: #fff;\n box-sizing: content-box;\n}\ntd.gridjs-td:first-child {\n border-left: none;\n}\ntd.gridjs-td:last-child {\n border-right: none;\n}\ntd.gridjs-message {\n text-align: center;\n}\n\nth.gridjs-th {\n position: relative;\n color: #6b7280;\n background-color: #f9fafb;\n border: 1px solid #e5e7eb;\n border-top: none;\n padding: 14px 24px;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n box-sizing: border-box;\n white-space: nowrap;\n outline: none;\n vertical-align: middle;\n}\nth.gridjs-th .gridjs-th-content {\n text-overflow: ellipsis;\n overflow: hidden;\n width: 100%;\n float: left;\n}\nth.gridjs-th-sort {\n cursor: pointer;\n}\nth.gridjs-th-sort .gridjs-th-content {\n width: calc(100% - 15px);\n}\nth.gridjs-th-sort:hover {\n background-color: #e5e7eb;\n}\nth.gridjs-th-sort:focus {\n background-color: #e5e7eb;\n}\nth.gridjs-th-fixed {\n position: sticky;\n box-shadow: 0 1px 0 0 #e5e7eb;\n}\n@supports (-moz-appearance: none) {\n th.gridjs-th-fixed {\n box-shadow: 0 0 0 1px #e5e7eb;\n }\n}\nth.gridjs-th:first-child {\n border-left: none;\n}\nth.gridjs-th:last-child {\n border-right: none;\n}\n\n.gridjs-tr {\n border: none;\n}\n.gridjs-tr-selected td {\n background-color: #ebf5ff;\n}\n.gridjs-tr:last-child td {\n border-bottom: 0;\n}\n\n.gridjs *,\n.gridjs :after,\n.gridjs :before {\n box-sizing: border-box;\n}\n\n.gridjs-wrapper {\n position: relative;\n z-index: 1;\n overflow: auto;\n width: 100%;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.26);\n border-radius: 8px 8px 0 0;\n display: block;\n border-top-width: 1px;\n border-color: #e5e7eb;\n}\n.gridjs-wrapper:nth-last-of-type(2) {\n border-radius: 8px;\n border-bottom-width: 1px;\n}\n\n.gridjs-search {\n float: left;\n}\n.gridjs-search-input {\n width: 250px;\n}\n\n.gridjs-loading-bar {\n z-index: 10;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background-color: #fff;\n opacity: 0.5;\n}\n.gridjs-loading-bar::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n transform: translateX(-100%);\n background-image: linear-gradient(90deg, rgba(204, 204, 204, 0) 0, rgba(204, 204, 204, 0.2) 20%, rgba(204, 204, 204, 0.5) 60%, rgba(204, 204, 204, 0));\n animation: shimmer 2s infinite;\n content: "";\n}\n@keyframes shimmer {\n 100% {\n transform: translateX(100%);\n }\n}\n\n.gridjs-td .gridjs-checkbox {\n display: block;\n margin: auto;\n cursor: pointer;\n}\n\n.gridjs-resizable {\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n width: 5px;\n}\n.gridjs-resizable:hover {\n cursor: ew-resize;\n background-color: #9bc2f7;\n}\n/*# sourceMappingURL=mermaid.css?inline.map */';
2416
+ const minMaxPercentSliderCss = 'input[type=range]::-webkit-slider-thumb {\n -webkit-appearance: none;\n pointer-events: all;\n width: 24px;\n height: 24px;\n background-color: #fff;\n border-radius: 50%;\n box-shadow: 0 0 0 1px #C6C6C6;\n cursor: pointer;\n}\n\ninput[type=range]::-moz-range-thumb {\n -webkit-appearance: none;\n pointer-events: all;\n width: 24px;\n height: 24px;\n background-color: #fff;\n border-radius: 50%;\n box-shadow: 0 0 0 1px #C6C6C6;\n cursor: pointer;\n}\n\ninput[type=range]::-webkit-slider-thumb:hover {\n background: #f7f7f7;\n}\n\ninput[type=range]::-webkit-slider-thumb:active {\n box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;\n -webkit-box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;\n}\n\ninput[type="range"] {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n height: 2px;\n width: 100%;\n position: absolute;\n background-color: #C6C6C6;\n pointer-events: none;\n}';
2417
+ const tailwindStyle = `/*! tailwindcss v4.0.9 | MIT License | https://tailwindcss.com */
2418
+ @layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-200:oklch(.885 .062 18.334);--color-red-600:oklch(.577 .245 27.325);--color-red-700:oklch(.505 .213 27.518);--color-blue-300:oklch(.809 .105 251.813);--color-blue-600:oklch(.546 .245 262.881);--color-blue-700:oklch(.488 .243 264.376);--color-blue-800:oklch(.424 .199 265.638);--color-slate-200:oklch(.929 .013 255.508);--color-slate-500:oklch(.554 .046 257.417);--color-gray-100:oklch(.967 .003 264.542);--color-gray-200:oklch(.928 .006 264.531);--color-gray-300:oklch(.872 .01 258.338);--color-gray-400:oklch(.707 .022 261.325);--color-gray-500:oklch(.551 .027 264.364);--color-gray-600:oklch(.446 .03 256.802);--color-gray-700:oklch(.373 .034 259.733);--color-neutral-500:oklch(.556 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-lg:64rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:700;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-font-feature-settings:var(--font-sans--font-feature-settings);--default-font-variation-settings:var(--font-sans--font-variation-settings);--default-mono-font-family:var(--font-mono);--default-mono-font-feature-settings:var(--font-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-mono--font-variation-settings)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}body{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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1;color:color-mix(in oklab,currentColor 50%,transparent)}::placeholder{opacity:1;color:color-mix(in oklab,currentColor 50%,transparent)}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light],:root:has(input.theme-controller[value=light]:checked),[data-theme=light]{color-scheme:light;--color-base-100:oklch(100% 0 0);--color-base-200:oklch(98% 0 0);--color-base-300:oklch(95% 0 0);--color-base-content:oklch(21% .006 285.885);--color-primary:oklch(45% .24 277.023);--color-primary-content:oklch(93% .034 272.788);--color-secondary:oklch(65% .241 354.308);--color-secondary-content:oklch(94% .028 342.258);--color-accent:oklch(77% .152 181.912);--color-accent-content:oklch(38% .063 188.416);--color-neutral:oklch(14% .005 285.823);--color-neutral-content:oklch(92% .004 286.32);--color-info:oklch(74% .16 232.661);--color-info-content:oklch(29% .066 243.157);--color-success:oklch(76% .177 163.223);--color-success-content:oklch(37% .077 168.94);--color-warning:oklch(82% .189 84.429);--color-warning-content:oklch(41% .112 45.904);--color-error:oklch(71% .194 13.428);--color-error-content:oklch(27% .105 12.094);--radius-selector:.5rem;--radius-field:.25rem;--radius-box:.5rem;--size-selector:.25rem;--size-field:.25rem;--border:1px;--depth:1;--noise:0}:root{--fx-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E")}.chat{--mask-chat:url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e")}:root,[data-theme]{background-color:var(--root-bg,var(--color-base-100));color:var(--color-base-content)}:where(:root:has(.modal-open,.modal[open],.modal:target,.modal-toggle:checked,.drawer:not(.drawer-open)>.drawer-toggle:checked)){scrollbar-gutter:stable;background-image:linear-gradient(var(--color-base-100),var(--color-base-100));--root-bg:color-mix(in srgb,var(--color-base-100),oklch(0% 0 0) 40%)}@property --radialprogress{syntax: "<percentage>"; inherits: true; initial-value: 0%;}:root:has(.modal-open,.modal[open],.modal:target,.modal-toggle:checked,.drawer:not([class*=drawer-open])>.drawer-toggle:checked){overflow:hidden}:root{scrollbar-color:color-mix(in oklch,currentColor 35%,#0000)#0000}}@layer components;@layer utilities{.diff{webkit-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;direction:ltr;grid-template-columns:auto 1fr;width:100%;display:grid;position:relative;overflow:hidden;container-type:inline-size}.diff:focus,.diff:has(.diff-item-1:focus),.diff:focus-visible{outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px;outline-color:var(--color-base-content)}.diff:focus-visible .diff-resizer{min-width:90cqi;max-width:90cqi}.diff:has(.diff-item-2:focus-visible){outline-style:var(--tw-outline-style);outline-offset:1px;outline-width:2px}.diff:has(.diff-item-2:focus-visible) .diff-resizer{min-width:10cqi;max-width:10cqi}@supports (-webkit-overflow-scrolling:touch) and (overflow:-webkit-paged-x){.diff:focus .diff-resizer{min-width:10cqi;max-width:10cqi}.diff:has(.diff-item-1:focus) .diff-resizer{min-width:90cqi;max-width:90cqi}}.\\@container{container-type:inline-size}.modal{pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;color:inherit;transition:transform .3s ease-out,visibility .3s allow-discrete,opacity .1s ease-out;overscroll-behavior:contain;z-index:999;background-color:#0000;place-items:center;margin:0;padding:0;display:grid;position:fixed;inset:0;overflow:hidden}.modal:not(dialog:not(.modal-open)),.modal::backdrop{opacity:1;transition:display .3s ease-out allow-discrete,opacity .3s ease-out,visibility .3s ease-out allow-discrete;background-color:oklch(0% 0 0/.4)}@starting-style{.modal:not(dialog:not(.modal-open)){visibility:hidden}}@starting-style{.modal:not(dialog:not(.modal-open)){opacity:0}}.modal.modal-open,.modal[open],.modal:target{pointer-events:auto;visibility:visible;opacity:1}@starting-style{:is(.modal.modal-open,.modal[open],.modal:target){visibility:hidden}}@starting-style{:is(.modal.modal-open,.modal[open],.modal:target){opacity:0}}:is(.modal.modal-open,.modal[open],.modal:target) .modal-box{opacity:1;translate:0;scale:1}.tooltip{--tt-bg:var(--color-neutral);--tt-off:calc(100% + .5rem);--tt-tail:calc(100% + 1px + .25rem);display:inline-block;position:relative}.tooltip>:where(.tooltip-content),.tooltip[data-tip]:before{border-radius:var(--radius-field);text-align:center;white-space:normal;max-width:20rem;color:var(--color-neutral-content);opacity:0;background-color:var(--tt-bg);pointer-events:none;z-index:1;--tw-content:attr(data-tip);content:var(--tw-content);width:-moz-max-content;width:max-content;padding-block:.25rem;padding-inline:.5rem;font-size:.875rem;line-height:1.25em;transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;position:absolute}.tooltip:after{opacity:0;background-color:var(--tt-bg);content:"";pointer-events:none;--mask-tooltip:url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");width:.625rem;height:.25rem;-webkit-mask-position:-1px 0;mask-position:-1px 0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--mask-tooltip);-webkit-mask-image:var(--mask-tooltip);mask-image:var(--mask-tooltip);transition:opacity .2s cubic-bezier(.4,0,.2,1) 75ms,transform .2s cubic-bezier(.4,0,.2,1) 75ms;display:block;position:absolute}:is(.tooltip.tooltip-open,.tooltip[data-tip]:hover,.tooltip:hover,.tooltip:has(:focus-visible))>.tooltip-content,:is(.tooltip.tooltip-open,.tooltip[data-tip]:hover,.tooltip:hover,.tooltip:has(:focus-visible))[data-tip]:before,:is(.tooltip.tooltip-open,.tooltip[data-tip]:hover,.tooltip:hover,.tooltip:has(:focus-visible)):after{opacity:1;--tt-pos:0rem;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}.tooltip>.tooltip-content,.tooltip[data-tip]:before{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-off)50%}.tooltip:after{transform:translateX(-50%)translateY(var(--tt-pos,.25rem));inset:auto auto var(--tt-tail)50%}.tab{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;webkit-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;--tab-p:1rem;--tab-bg:var(--color-base-100);--tab-border-color:var(--color-base-300);--tab-radius-ss:0;--tab-radius-se:0;--tab-radius-es:0;--tab-radius-ee:0;--tab-order:0;--tab-radius-min:calc(.75rem - var(--border));flex-wrap:wrap;order:var(--tab-order);height:calc(var(--size-field,.25rem)*10);border-color:#0000;justify-content:center;align-items:center;padding-inline-start:var(--tab-p);padding-inline-end:var(--tab-p);font-size:.875rem;display:inline-flex;position:relative}@media (hover:hover){.tab:hover{color:var(--color-base-content)}}.tab:is(input[type=radio]){min-width:-moz-fit-content;min-width:fit-content}.tab:is(input[type=radio]):after{content:attr(aria-label)}.tab:is(label){position:relative}.tab:is(label) input{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;position:absolute;inset:0}:is(.tab:checked,.tab:is(label:has(:checked)),.tab:is(.tab-active,[aria-selected=true]))+.tab-content{height:100%;display:block}.tab:not(:checked,label:has(:checked),:hover,.tab-active,[aria-selected=true]){color:color-mix(in oklab,var(--color-base-content)50%,transparent)}.tab:not(input):empty{cursor:default;flex-grow:1}.tab:focus{outline-style:none}@media (forced-colors:active){.tab:focus{outline-offset:2px;outline:2px solid #0000}}.tab:focus-visible,.tab:is(label:has(:checked:focus-visible)){outline-offset:-5px;outline:2px solid}.tab[disabled]{pointer-events:none;opacity:.4}.menu{--menu-active-fg:var(--color-neutral-content);--menu-active-bg:var(--color-neutral);flex-flow:column wrap;width:-moz-fit-content;width:fit-content;padding:.5rem;font-size:.875rem;display:flex}.menu :where(li ul){white-space:nowrap;margin-inline-start:1rem;padding-inline-start:.5rem;position:relative}.menu :where(li ul):before{background-color:var(--color-base-content);opacity:.1;width:var(--border);content:"";inset-inline-start:0;position:absolute;top:.75rem;bottom:.75rem}.menu :where(li>.menu-dropdown:not(.menu-dropdown-show)){display:none}.menu :where(li:not(.menu-title)>:not(ul,details,.menu-title,.btn)),.menu :where(li:not(.menu-title)>details>summary:not(.menu-title)){border-radius:var(--radius-field);text-align:start;text-wrap:balance;-webkit-user-select:none;-moz-user-select:none;user-select:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-block:.375rem;padding-inline:.75rem;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}.menu :where(li>details>summary){outline-style:none}@media (forced-colors:active){.menu :where(li>details>summary){outline-offset:2px;outline:2px solid #0000}}.menu :where(li>details>summary)::-webkit-details-marker{display:none}:is(.menu :where(li>details>summary),.menu :where(li>.menu-dropdown-toggle)):after{content:"";transform-origin:50%;pointer-events:none;justify-self:flex-end;width:.375rem;height:.375rem;transition-property:rotate,translate;transition-duration:.2s;display:block;translate:0 -1px;rotate:-135deg;box-shadow:inset 2px 2px}.menu :where(li>details[open]>summary):after,.menu :where(li>.menu-dropdown-toggle.menu-dropdown-show):after{translate:0 1px;rotate:45deg}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible{cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);color:var(--color-base-content);outline-style:none}@media (forced-colors:active){:is(.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn).menu-focus,.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title),li:not(.menu-title,.disabled)>details>summary:not(.menu-title)):not(.menu-active,:active,.btn):focus-visible){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){cursor:pointer;background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);outline-style:none;box-shadow:inset 0 1px oklch(0% 0 0/.01),inset 0 -1px oklch(100% 0 0/.01)}@media (forced-colors:active){.menu :where(li:not(.menu-title,.disabled)>:not(ul,details,.menu-title):not(.menu-active,:active,.btn):hover,li:not(.menu-title,.disabled)>details>summary:not(.menu-title):not(.menu-active,:active,.btn):hover){outline-offset:2px;outline:2px solid #0000}}.menu :where(li:empty){background-color:var(--color-base-content);opacity:.1;height:1px;margin:.5rem 1rem}.menu :where(li){flex-flow:column wrap;flex-shrink:0;align-items:stretch;display:flex;position:relative}.menu :where(li) .badge{justify-self:flex-end}.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active{color:var(--menu-active-fg);background-color:var(--menu-active-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);outline-style:none}@media (forced-colors:active){:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active){outline-offset:2px;outline:2px solid #0000}}:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):not(:is(.menu :where(li)>:not(ul,.menu-title,details,.btn):active,.menu :where(li)>:not(ul,.menu-title,details,.btn).menu-active,.menu :where(li)>details>summary:active):active){box-shadow:0 2px calc(var(--depth)*3px)-2px var(--menu-active-bg)}.menu :where(li).menu-disabled{pointer-events:none;color:color-mix(in oklab,var(--color-base-content)20%,transparent)}.menu .dropdown:focus-within .menu-dropdown-toggle:after{translate:0 1px;rotate:45deg}.menu .dropdown-content{margin-top:.5rem;padding:.5rem}.menu .dropdown-content:before{display:none}.dropdown{position-area:var(--anchor-v,bottom)var(--anchor-h,span-right);display:inline-block;position:relative}.dropdown>:not(summary):focus{outline-style:none}@media (forced-colors:active){.dropdown>:not(summary):focus{outline-offset:2px;outline:2px solid #0000}}.dropdown .dropdown-content{position:absolute}.dropdown:not(details,.dropdown-open,.dropdown-hover:hover,:focus-within) .dropdown-content{transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover],.dropdown .dropdown-content{z-index:999;transition-behavior:allow-discrete;transition-property:opacity,scale,display;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);animation:.2s dropdown}@starting-style{:is(.dropdown[popover],.dropdown .dropdown-content){scale:95%}}@starting-style{:is(.dropdown[popover],.dropdown .dropdown-content){opacity:0}}:is(.dropdown.dropdown-open,.dropdown:not(.dropdown-hover):focus,.dropdown:focus-within)>[tabindex]:first-child{pointer-events:none}:is(.dropdown.dropdown-open,.dropdown:not(.dropdown-hover):focus,.dropdown:focus-within) .dropdown-content{opacity:1}.dropdown.dropdown-hover:hover .dropdown-content{opacity:1;scale:100%}.dropdown:is(details) summary::-webkit-details-marker{display:none}:is(.dropdown.dropdown-open,.dropdown:focus,.dropdown:focus-within) .dropdown-content{scale:100%}.dropdown:where([popover]){background:0 0}.dropdown[popover]{color:inherit;position:fixed}@supports not (position-area:bottom){.dropdown[popover]{margin:auto}.dropdown[popover].dropdown-open:not(:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}.dropdown[popover]::backdrop{background-color:oklab(0% none none/.3)}}.dropdown[popover]:not(.dropdown-open,:popover-open){transform-origin:top;opacity:0;display:none;scale:95%}.btn{cursor:pointer;text-align:center;vertical-align:middle;outline-offset:2px;webkit-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding-inline:var(--btn-p);color:var(--btn-fg);height:var(--size);outline-color:var(--btn-color,var(--color-base-content));background-color:var(--btn-bg);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--btn-noise);border-width:var(--border);border-style:solid;border-color:var(--btn-border);text-shadow:0 .5px oklch(100% 0 0/calc(var(--depth)*.15));box-shadow:0 .5px 0 .5px oklch(100% 0 0/calc(var(--depth)*6%))inset,var(--btn-shadow);--size:calc(var(--size-field,.25rem)*10);--btn-bg:var(--btn-color,var(--color-base-200));--btn-fg:var(--color-base-content);--btn-p:1rem;--btn-border:color-mix(in oklab,var(--btn-bg),#000 calc(var(--depth)*5%));--btn-shadow:0 3px 2px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000),0 4px 3px -2px color-mix(in oklab,var(--btn-bg)calc(var(--depth)*30%),#0000);--btn-noise:var(--fx-noise);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-size:.875rem;font-weight:600;text-decoration-line:none;transition-property:color,background-color,border-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}@media (hover:hover){.btn:hover{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%)}}.btn.btn-active{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);isolation:isolate}.btn:focus-visible{outline-width:2px;outline-style:solid}.btn:active:not(.btn-active){--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 5%);--btn-border:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);translate:0 .5px}.btn:is(:disabled,[disabled],.btn-disabled){pointer-events:none;--btn-border:#0000;--btn-noise:none;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}.btn:is(:disabled,[disabled],.btn-disabled):not(.btn-link,.btn-ghost){background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);box-shadow:none}@media (hover:hover){.btn:is(:disabled,[disabled],.btn-disabled):hover{pointer-events:none;background-color:color-mix(in oklab,var(--color-neutral)20%,transparent);--btn-border:#0000;--btn-fg:color-mix(in oklch,var(--color-base-content)20%,#0000)}}.btn:is(input[type=checkbox],input[type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none}.btn:is(input[type=checkbox],input[type=radio]):after{content:attr(aria-label)}.btn:is(input[type=checkbox],input[type=radio]):checked{--btn-bg:color-mix(in oklab,var(--btn-color,var(--color-base-200)),#000 7%);--btn-shadow:0 0 0 0 oklch(0% 0 0/0),0 0 0 0 oklch(0% 0 0/0);isolation:isolate;outline-width:2px;outline-style:solid}.loading{pointer-events:none;aspect-ratio:1;vertical-align:middle;width:calc(var(--size-selector,.25rem)*6);background-color:currentColor;display:inline-block;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100%;mask-size:100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.invisible{visibility:hidden}.visible{visibility:visible}.list{flex-direction:column;font-size:.875rem;display:flex}.list :where(.list-row){--list-grid-cols:minmax(0,auto)1fr;border-radius:var(--radius-box);word-break:break-word;grid-auto-flow:column;grid-template-columns:var(--list-grid-cols);gap:1rem;padding:1rem;display:grid;position:relative}.list :where(.list-row):has(.list-col-grow:first-child){--list-grid-cols:1fr}.list :where(.list-row):has(.list-col-grow:nth-child(2)){--list-grid-cols:minmax(0,auto)1fr}.list :where(.list-row):has(.list-col-grow:nth-child(3)){--list-grid-cols:minmax(0,auto)minmax(0,auto)1fr}.list :where(.list-row):has(.list-col-grow:nth-child(4)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list :where(.list-row):has(.list-col-grow:nth-child(5)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list :where(.list-row):has(.list-col-grow:nth-child(6)){--list-grid-cols:minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)minmax(0,auto)1fr}.list :where(.list-row) :not(.list-col-wrap){grid-row-start:1}:is(.list>:not(:last-child).list-row,.list>:not(:last-child) .list-row):after{content:"";border-bottom:var(--border)solid;inset-inline:var(--radius-box);border-color:color-mix(in oklab,var(--color-base-content)5%,transparent);position:absolute;bottom:0}.toggle{border:var(--border)solid currentColor;color:var(--input-color);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;vertical-align:middle;webkit-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--toggle-p),var(--radius-selector-max)) + min(var(--border),var(--radius-selector-max)));padding:var(--toggle-p);box-shadow:0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000)inset;--input-color:color-mix(in oklab,var(--color-base-content)50%,#0000);--toggle-p:.1875rem;--size:calc(var(--size-selector,.25rem)*6);width:calc((var(--size)*2) - (var(--border) + var(--toggle-p))*2);height:var(--size);flex-shrink:0;grid-template-columns:0fr 1fr 1fr;place-content:center;transition:color .3s,grid-template-columns .2s;display:inline-grid;position:relative}.toggle>*{z-index:1;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;grid-column:2/span 1;grid-row-start:1;height:100%;padding:.125rem;transition:opacity .2s,rotate .4s}.toggle>:focus{outline-style:none}@media (forced-colors:active){.toggle>:focus{outline-offset:2px;outline:2px solid #0000}}.toggle>:nth-child(2){color:var(--color-base-100);rotate:none}.toggle>:nth-child(3){color:var(--color-base-100);opacity:0;rotate:-15deg}.toggle:has(:checked)>:nth-child(2){opacity:0;rotate:15deg}.toggle:has(:checked)>:nth-child(3){opacity:1;rotate:none}.toggle:before{aspect-ratio:1;border-radius:var(--radius-selector);--tw-content:"";content:var(--tw-content);height:100%;box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000);background-color:currentColor;background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);grid-row-start:1;grid-column-start:2;transition:background-color .1s,translate .2s,inset-inline-start .2s;position:relative;inset-inline-start:0;translate:0}@media print{.toggle:before{outline-offset:-1rem;outline:.25rem solid}}@media (forced-colors:active){.toggle:before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}.toggle:focus-visible,.toggle:has(:focus-visible){outline-offset:2px;outline:2px solid}.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked){background-color:var(--color-base-100);--input-color:var(--color-base-content);grid-template-columns:1fr 1fr 0fr}:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{background-color:currentColor}@starting-style{:is(.toggle:checked,.toggle[aria-checked=true],.toggle:has(>input:checked)):before{opacity:0}}.toggle:indeterminate{grid-template-columns:.5fr 1fr .5fr}.toggle:disabled{cursor:not-allowed;opacity:.3}.toggle:disabled:before{border:var(--border)solid currentColor;background-color:#0000}.input{cursor:text;border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;white-space:nowrap;width:clamp(3rem,20rem,100%);height:var(--size);border-color:var(--input-color);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-field,.25rem)*10);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.5rem;padding-inline:.75rem;font-size:.875rem;display:inline-flex;position:relative}.input:where(input){display:inline-flex}.input :where(input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;width:100%;height:100%;display:inline-flex}.input :where(input):focus,.input :where(input):focus-within{outline-style:none}@media (forced-colors:active){:is(.input :where(input):focus,.input :where(input):focus-within){outline-offset:2px;outline:2px solid #0000}}.input:focus,.input:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px;isolation:isolate}.input:has(>input[disabled]),.input:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent);box-shadow:none}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]))::-moz-placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}:is(.input:has(>input[disabled]),.input:is(:disabled,[disabled]))::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}.input:has(>input[disabled])>input[disabled]{cursor:not-allowed}.input::-webkit-date-and-time-value{text-align:inherit}.input[type=number]::-webkit-inner-spin-button{margin-block:-.75rem;margin-inline-end:-.75rem}.input::-webkit-calendar-picker-indicator{position:absolute;inset-inline-end:.75em}.indicator{width:-moz-max-content;width:max-content;display:inline-flex;position:relative}.indicator :where(.indicator-item){z-index:1;white-space:nowrap;top:var(--inidicator-t,0);bottom:var(--inidicator-b,auto);left:var(--inidicator-s,auto);right:var(--inidicator-e,0);translate:var(--inidicator-x,50%)var(--indicator-y,-50%);position:absolute}.\\!table{border-radius:var(--radius-box)!important;text-align:left!important;width:100%!important;font-size:.875rem!important;position:relative!important}.\\!table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right!important}@media (hover:hover){:is(.\\!table tr.row-hover,.\\!table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)!important}}.\\!table :where(th,td){vertical-align:middle!important;padding-block:.75rem!important;padding-inline:1rem!important}.\\!table :where(thead,tfoot){white-space:nowrap!important;color:color-mix(in oklab,var(--color-base-content)60%,transparent)!important;font-size:.875rem!important;font-weight:600!important}.\\!table :where(tfoot){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)!important}.\\!table :where(.table-pin-rows thead tr){z-index:1!important;background-color:var(--color-base-100)!important;position:sticky!important;top:0!important}.\\!table :where(.table-pin-rows tfoot tr){z-index:1!important;background-color:var(--color-base-100)!important;position:sticky!important;bottom:0!important}.\\!table :where(.table-pin-cols tr th){background-color:var(--color-base-100)!important;position:sticky!important;left:0!important;right:0!important}.\\!table :where(thead tr,tbody tr:not(:last-child)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)!important}.table{border-radius:var(--radius-box);text-align:left;width:100%;font-size:.875rem;position:relative}.table:where(:dir(rtl),[dir=rtl],[dir=rtl] *){text-align:right}@media (hover:hover){:is(.table tr.row-hover,.table tr.row-hover:nth-child(2n)):hover{background-color:var(--color-base-200)}}.table :where(th,td){vertical-align:middle;padding-block:.75rem;padding-inline:1rem}.table :where(thead,tfoot){white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);font-size:.875rem;font-weight:600}.table :where(tfoot){border-top:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}.table :where(.table-pin-rows thead tr){z-index:1;background-color:var(--color-base-100);position:sticky;top:0}.table :where(.table-pin-rows tfoot tr){z-index:1;background-color:var(--color-base-100);position:sticky;bottom:0}.table :where(.table-pin-cols tr th){background-color:var(--color-base-100);position:sticky;left:0;right:0}.table :where(thead tr,tbody tr:not(:last-child)){border-bottom:var(--border)solid color-mix(in oklch,var(--color-base-content)5%,#0000)}.steps{counter-reset:step;grid-auto-columns:1fr;grid-auto-flow:column;display:inline-grid;overflow:auto hidden}.steps .step{text-align:center;--step-bg:var(--color-base-300);--step-fg:var(--color-base-content);grid-template-rows:40px 1fr;grid-template-columns:auto;place-items:center;min-width:4rem;display:grid}.steps .step:before{width:100%;height:.5rem;color:var(--step-bg);background-color:var(--step-bg);--tw-content:"";content:var(--tw-content);border:1px solid;grid-row-start:1;grid-column-start:1;margin-inline-start:-100%;top:0}.steps .step>.step-icon,.steps .step:not(:has(.step-icon)):after{content:counter(step);counter-increment:step;z-index:1;color:var(--step-fg);background-color:var(--step-bg);border:1px solid var(--step-bg);border-radius:3.40282e38px;grid-row-start:1;grid-column-start:1;place-self:center;place-items:center;width:2rem;height:2rem;display:grid;position:relative}.steps .step:first-child:before{content:none}.steps .step[data-content]:after{content:attr(data-content)}.steps .step-neutral+.step-neutral:before,.steps .step-neutral:after,.steps .step-neutral>.step-icon{--step-bg:var(--color-neutral);--step-fg:var(--color-neutral-content)}.steps .step-primary+.step-primary:before,.steps .step-primary:after,.steps .step-primary>.step-icon{--step-bg:var(--color-primary);--step-fg:var(--color-primary-content)}.steps .step-secondary+.step-secondary:before,.steps .step-secondary:after,.steps .step-secondary>.step-icon{--step-bg:var(--color-secondary);--step-fg:var(--color-secondary-content)}.steps .step-accent+.step-accent:before,.steps .step-accent:after,.steps .step-accent>.step-icon{--step-bg:var(--color-accent);--step-fg:var(--color-accent-content)}.steps .step-info+.step-info:before,.steps .step-info:after,.steps .step-info>.step-icon{--step-bg:var(--color-info);--step-fg:var(--color-info-content)}.steps .step-success+.step-success:before,.steps .step-success:after,.steps .step-success>.step-icon{--step-bg:var(--color-success);--step-fg:var(--color-success-content)}.steps .step-warning+.step-warning:before,.steps .step-warning:after,.steps .step-warning>.step-icon{--step-bg:var(--color-warning);--step-fg:var(--color-warning-content)}.steps .step-error+.step-error:before,.steps .step-error:after,.steps .step-error>.step-icon{--step-bg:var(--color-error);--step-fg:var(--color-error-content)}.range{-webkit-appearance:none;-moz-appearance:none;appearance:none;webkit-appearance:none;--range-thumb:var(--color-base-100);--range-thumb-size:calc(var(--size-selector,.25rem)*6);--range-progress:currentColor;--range-fill:1;--range-p:.25rem;--range-bg:color-mix(in oklab,currentColor 10%,#0000);cursor:pointer;vertical-align:middle;--radius-selector-max:calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));width:clamp(3rem,20rem,100%);height:var(--range-thumb-size);background-color:#0000;border:none;overflow:hidden}[dir=rtl] .range{--range-dir:-1}.range:focus{outline:none}.range:focus-visible{outline-offset:2px;outline:2px solid}.range::-webkit-slider-runnable-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){.range::-webkit-slider-runnable-track{border:1px solid}}.range::-webkit-slider-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;-webkit-appearance:none;appearance:none;webkit-appearance:none;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%;transform:translateY(-50%)}.range::-moz-range-track{background-color:var(--range-bg);border-radius:var(--radius-selector);width:100%;height:calc(var(--range-thumb-size)*.5)}@media (forced-colors:active){.range::-moz-range-track{border:1px solid}}.range::-moz-range-thumb{box-sizing:border-box;border-radius:calc(var(--radius-selector) + min(var(--range-p),var(--radius-selector-max)));height:var(--range-thumb-size);width:var(--range-thumb-size);border:var(--range-p)solid;color:var(--range-progress);box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px color-mix(in oklab,currentColor calc(var(--depth)*10%),#0000),0 0 0 2rem var(--range-thumb)inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2))0 0 calc(100rem*var(--range-fill));background-color:currentColor;position:relative;top:50%}.range:disabled{cursor:not-allowed;opacity:.3}.select{border:var(--border)solid #0000;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-base-100);vertical-align:middle;width:clamp(3rem,20rem,100%);height:var(--size);text-overflow:ellipsis;box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000)inset,0 -1px oklch(100% 0 0/calc(var(--depth)*.1))inset;border-color:var(--input-color);--input-color:color-mix(in oklab,var(--color-base-content)20%,#0000);--size:calc(var(--size-field,.25rem)*10);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) calc(1px + 50%),calc(100% - 16.1px) calc(1px + 50%);background-repeat:no-repeat;background-size:4px 4px,4px 4px;border-start-start-radius:var(--join-ss,var(--radius-field));border-start-end-radius:var(--join-se,var(--radius-field));border-end-end-radius:var(--join-ee,var(--radius-field));border-end-start-radius:var(--join-es,var(--radius-field));flex-shrink:1;align-items:center;gap:.375rem;padding-inline:1rem 1.75rem;font-size:.875rem;display:inline-flex;position:relative}[dir=rtl] .select{background-position:12px calc(1px + 50%),16px calc(1px + 50%)}.select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:inherit;border-radius:inherit;border-style:none;width:calc(100% + 2.75rem);height:calc(100% - 2px);margin-inline:-1rem -1.75rem;padding-inline:1rem 1.75rem}.select select:focus,.select select:focus-within{outline-style:none}@media (forced-colors:active){:is(.select select:focus,.select select:focus-within){outline-offset:2px;outline:2px solid #0000}}.select:focus,.select:focus-within{--input-color:var(--color-base-content);box-shadow:0 1px color-mix(in oklab,var(--input-color)calc(var(--depth)*10%),#0000);outline:2px solid var(--input-color);outline-offset:2px}.select:has(>select[disabled]),.select:is(:disabled,[disabled]){cursor:not-allowed;border-color:var(--color-base-200);background-color:var(--color-base-200);color:color-mix(in oklab,var(--color-base-content)40%,transparent)}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]))::-moz-placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}:is(.select:has(>select[disabled]),.select:is(:disabled,[disabled]))::placeholder{color:color-mix(in oklab,var(--color-base-content)20%,transparent)}.select:has(>select[disabled])>select[disabled]{cursor:not-allowed}.checkbox{border:var(--border)solid var(--input-color,color-mix(in oklab,var(--color-base-content)20%,#0000));cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-selector);vertical-align:middle;color:var(--color-base-content);box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 0 #0000 inset,0 0 #0000;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);flex-shrink:0;padding:.25rem;transition:background-color .2s,box-shadow .2s;position:relative}.checkbox:before{--tw-content:"";content:var(--tw-content);opacity:0;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);width:100%;height:100%;box-shadow:0px 3px 0 0px oklch(100% 0 0/calc(var(--depth)*.1))inset;background-color:currentColor;font-size:1rem;line-height:.75;transition:clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;display:block;rotate:45deg}.checkbox:focus-visible{outline:2px solid var(--input-color,currentColor);outline-offset:2px}.checkbox:checked,.checkbox[aria-checked=true]{background-color:var(--input-color,#0000);box-shadow:0 0 #0000 inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1))}:is(.checkbox:checked,.checkbox[aria-checked=true]):before{clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);opacity:1}@media print{:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}@media (forced-colors:active){:is(.checkbox:checked,.checkbox[aria-checked=true]):before{--tw-content:"✔︎";clip-path:none;background-color:#0000;rotate:none}}.checkbox:indeterminate:before{opacity:1;clip-path:polygon(20% 100%,20% 80%,50% 80%,50% 80%,80% 80%,80% 100%);translate:0 -35%;rotate:none}.checkbox:disabled{cursor:not-allowed;opacity:.2}.radio{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;vertical-align:middle;border:var(--border)solid var(--input-color,color-mix(in srgb,currentColor 20%,#0000));box-shadow:0 1px oklch(0% 0 0/calc(var(--depth)*.1))inset;--size:calc(var(--size-selector,.25rem)*6);width:var(--size);height:var(--size);color:var(--input-color,currentColor);border-radius:3.40282e38px;flex-shrink:0;padding:.25rem;position:relative}.radio:before{--tw-content:"";content:var(--tw-content);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);border-radius:3.40282e38px;width:100%;height:100%;display:block}.radio:focus-visible{outline:2px solid}.radio:checked,.radio[aria-checked=true]{background-color:var(--color-base-100);border-color:currentColor;animation:.2s ease-out radio}:is(.radio:checked,.radio[aria-checked=true]):before{box-shadow:0 -1px oklch(0% 0 0/calc(var(--depth)*.1))inset,0 8px 0 -4px oklch(100% 0 0/calc(var(--depth)*.1))inset,0 1px oklch(0% 0 0/calc(var(--depth)*.1));background-color:currentColor}@media print{:is(.radio:checked,.radio[aria-checked=true]):before{outline-offset:-1rem;outline:.25rem solid}}@media (forced-colors:active){:is(.radio:checked,.radio[aria-checked=true]):before{outline-style:var(--tw-outline-style);outline-offset:calc(1px*-1);outline-width:1px}}.radio:disabled{cursor:not-allowed;opacity:.2}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.-top-3{top:calc(var(--spacing)*-3)}.top-0{top:calc(var(--spacing)*0)}.top-1\\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.top-full{top:100%}.-right-3{right:calc(var(--spacing)*-3)}.right-0{right:calc(var(--spacing)*0)}.right-2{right:calc(var(--spacing)*2)}.right-10{right:calc(var(--spacing)*10)}.right-full{right:100%}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing)*0)}.left-1\\/2{left:50%}.left-full{left:100%}.modal-backdrop{color:#0000;z-index:-1;grid-row-start:1;grid-column-start:1;place-self:stretch stretch;display:grid}.modal-backdrop button{cursor:pointer}.z-10{z-index:10}.z-1001{z-index:1001}.modal-box{background-color:var(--color-base-100);border-top-left-radius:var(--modal-tl,var(--radius-box));border-top-right-radius:var(--modal-tr,var(--radius-box));border-bottom-left-radius:var(--modal-bl,var(--radius-box));border-bottom-right-radius:var(--modal-br,var(--radius-box));opacity:0;overscroll-behavior:contain;grid-row-start:1;grid-column-start:1;width:91.6667%;max-width:32rem;max-height:100vh;padding:1.5rem;transition:translate .3s ease-out,scale .3s ease-out,opacity .2s ease-out 50ms,box-shadow .3s ease-out;overflow-y:auto;scale:95%;box-shadow:0 25px 50px -12px oklch(0% 0 0/.25)}.stat-value{white-space:nowrap;grid-column-start:1;font-size:2rem;font-weight:800}.stat-desc,.stat-title{white-space:nowrap;color:color-mix(in oklab,var(--color-base-content)60%,transparent);grid-column-start:1;font-size:.75rem}.float-right{float:right}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.divider{white-space:nowrap;height:1rem;margin:var(--divider-m,1rem 0);flex-direction:row;align-self:stretch;align-items:center;display:flex}.divider:before,.divider:after{content:"";background-color:color-mix(in oklab,var(--color-base-content)10%,transparent);flex-grow:1;width:100%;height:.125rem}@media print{.divider:before,.divider:after{border:.5px solid}}.divider:not(:empty){gap:1rem}.m-1{margin:calc(var(--spacing)*1)}.m-2{margin:calc(var(--spacing)*2)}.m-4{margin:calc(var(--spacing)*4)}.filter{flex-wrap:wrap;display:flex}.filter input[type=radio]{width:auto}.filter input{opacity:1;transition:margin .1s,opacity .3s,padding .3s,border-width .1s;overflow:hidden;scale:1}.filter input:not(:last-child){margin-inline-end:.25rem}.filter input.filter-reset{aspect-ratio:1}.filter input.filter-reset:after{content:"×"}.filter:not(:has(input:checked:not(.filter-reset))) .filter-reset,.filter:not(:has(input:checked:not(.filter-reset))) input[type=reset],.filter:has(input:checked:not(.filter-reset)) input:not(:checked,.filter-reset,input[type=reset]){opacity:0;border-width:0;width:0;margin-inline:0;padding-inline:0;scale:0}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.my-4{margin-block:calc(var(--spacing)*4)}.label{white-space:nowrap;color:color-mix(in oklab,currentColor 60%,transparent);align-items:center;gap:.375rem;display:inline-flex}.label:has(input){cursor:pointer}.label:is(.input>*,.select>*){white-space:nowrap;height:calc(100% - .5rem);font-size:inherit;align-items:center;padding-inline:.75rem;display:flex}.label:is(.input>*,.select>*):first-child{border-inline-end:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:-.75rem .75rem}.label:is(.input>*,.select>*):last-child{border-inline-start:var(--border)solid color-mix(in oklab,currentColor 10%,#0000);margin-inline:.75rem -.75rem}.join-item:where(:not(:first-child)){margin-block-start:0;margin-inline-start:calc(var(--border,1px)*-1)}.modal-action{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.mt-0{margin-top:calc(var(--spacing)*0)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-2\\.5{margin-left:calc(var(--spacing)*2.5)}.ml-3{margin-left:calc(var(--spacing)*3)}.status{aspect-ratio:1;border-radius:var(--radius-selector);background-color:color-mix(in oklab,var(--color-base-content)20%,transparent);vertical-align:middle;width:.5rem;height:.5rem;color:color-mix(in oklab,var(--color-black)30%,transparent);background-position:50%;background-repeat:no-repeat;background-image:radial-gradient(circle at 35% 30%,oklch(1 0 0/calc(var(--depth)*.5)),#0000);box-shadow:0 2px 3px -1px color-mix(in oklab,currentColor calc(var(--depth)*100%),#0000);display:inline-block}.iconify{width:1em;height:1em;-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);-webkit-mask-image:var(--svg);mask-image:var(--svg);background-color:currentColor;display:inline-block;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.tabs{--tabs-height:auto;--tabs-direction:row;height:var(--tabs-height);flex-wrap:wrap;flex-direction:var(--tabs-direction);display:flex}.footer{grid-auto-flow:row;place-items:start;gap:2.5rem 1rem;width:100%;font-size:.875rem;line-height:1.25rem;display:grid}.footer>*{place-items:start;gap:.5rem;display:grid}.footer.footer-center{text-align:center;grid-auto-flow:column dense;place-items:center}.footer.footer-center>*{place-items:center}.stat{grid-template-columns:repeat(1,1fr);-moz-column-gap:1rem;column-gap:1rem;width:100%;padding-block:1rem;padding-inline:1.5rem;display:inline-grid}.stat:not(:last-child){border-inline-end:var(--border)dashed color-mix(in oklab,currentColor 10%,#0000);border-block-end:none}.alert{border-radius:var(--radius-box);color:var(--color-base-content);background-color:var(--alert-color,var(--color-base-200));text-align:start;border:var(--border)solid var(--color-base-200);background-size:auto,calc(var(--noise)*100%);background-image:none,var(--fx-noise);box-shadow:0 3px 0 -2px oklch(100% 0 0/calc(var(--depth)*.08))inset,0 1px color-mix(in oklab,color-mix(in oklab,#000 20%,var(--alert-color,var(--color-base-200)))calc(var(--depth)*20%),#0000),0 4px 3px -2px oklch(0% 0 0/calc(var(--depth)*.08));grid-template-columns:auto minmax(auto,1fr);grid-auto-flow:column;justify-content:start;place-items:center start;gap:1rem;padding-block:.75rem;padding-inline:1rem;font-size:.875rem;line-height:1.25rem;display:grid}.alert.alert-outline{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none}.alert.alert-dash{color:var(--alert-color);box-shadow:none;background-color:#0000;background-image:none;border-style:dashed}.alert.alert-soft{color:var(--alert-color,var(--color-base-content));background:color-mix(in oklab,var(--alert-color,var(--color-base-content))8%,var(--color-base-100));border-color:color-mix(in oklab,var(--alert-color,var(--color-base-content))10%,var(--color-base-100));box-shadow:none;background-image:none}.join{--join-ss:0;--join-se:0;--join-es:0;--join-ee:0;align-items:stretch;display:inline-flex}.join :where(.join-item){border-start-start-radius:var(--join-ss,0);border-start-end-radius:var(--join-se,0);border-end-end-radius:var(--join-ee,0);border-end-start-radius:var(--join-es,0)}.join :where(.join-item) *{--join-ss:var(--radius-field);--join-se:var(--radius-field);--join-es:var(--radius-field);--join-ee:var(--radius-field)}.join>.join-item:where(:first-child),.join :first-child:not(:last-child) :where(.join-item){--join-ss:var(--radius-field);--join-se:0;--join-es:var(--radius-field);--join-ee:0}.join>.join-item:where(:last-child),.join :last-child:not(:first-child) :where(.join-item){--join-ss:0;--join-se:var(--radius-field);--join-es:0;--join-ee:var(--radius-field)}.\\!table{display:table!important}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.modal-bottom{place-items:end}.modal-bottom :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:0;--modal-br:0;width:100%;max-width:none;height:auto;max-height:calc(100vh - 5em);translate:0 100%;scale:1}.btn-circle{width:var(--size);height:var(--size);border-radius:3.40282e38px;padding-inline:0}.h-8{height:calc(var(--spacing)*8)}.h-full{height:100%}.max-h-80{max-height:calc(var(--spacing)*80)}.loading-md{width:calc(var(--size-selector,.25rem)*6)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-32{width:calc(var(--spacing)*32)}.w-64{width:calc(var(--spacing)*64)}.w-\\[6rem\\]{width:6rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.max-w-\\(--breakpoint-lg\\){max-width:var(--breakpoint-lg)}.min-w-24{min-width:calc(var(--spacing)*24)}.min-w-32{min-width:calc(var(--spacing)*32)}.min-w-\\[0\\.05rem\\]{min-width:.05rem}.min-w-\\[7\\.5rem\\]{min-width:7.5rem}.min-w-\\[180px\\]{min-width:180px}.flex-1{flex:1}.grow{flex-grow:1}.translate-x-\\[-50\\%\\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\\[-50\\%\\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x)var(--tw-rotate-y)var(--tw-rotate-z)var(--tw-skew-x)var(--tw-skew-y)}.skeleton{border-radius:var(--radius-box);background-color:var(--color-base-300);will-change:background-position;background-image:linear-gradient(105deg,#0000 0% 40%,var(--color-base-100)50%,#0000 60% 100%);background-position-x:-50%;background-repeat:no-repeat;background-size:200%;animation:1.8s ease-in-out infinite skeleton}@media (prefers-reduced-motion:reduce){.skeleton{transition-duration:15s}}.link{cursor:pointer;text-decoration-line:underline}.link:focus{outline-style:none}@media (forced-colors:active){.link:focus{outline-offset:2px;outline:2px solid #0000}}.link:focus-visible{outline-offset:2px;outline:2px solid}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-outside{list-style-position:outside}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.gap-y-1{row-gap:calc(var(--spacing)*1)}.overflow-scroll{overflow:scroll}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t-md{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-tr-md{border-top-right-radius:var(--radius-md)}.rounded-b-md{border-bottom-right-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-1{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.alert-error{border-color:var(--color-error);color:var(--color-error-content);--alert-color:var(--color-error)}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-500{border-color:var(--color-gray-500)}.border-slate-500{border-color:var(--color-slate-500)}.bg-blue-300{background-color:var(--color-blue-300)}.bg-red-200{background-color:var(--color-red-200)}.bg-slate-200{background-color:var(--color-slate-200)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.p-1{padding:calc(var(--spacing)*1)}.p-1\\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-4{padding:calc(var(--spacing)*4)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-16{padding-block:calc(var(--spacing)*16)}.pr-14{padding-right:calc(var(--spacing)*14)}.text-center{text-align:center}.text-justify{text-align:justify}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.btn-sm{--btn-p:.75rem;--size:calc(var(--size-field,.25rem)*8);font-size:.75rem}.btn-xs{--btn-p:.5rem;--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.select-xs{--size:calc(var(--size-field,.25rem)*6);font-size:.6875rem}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.text-nowrap{text-wrap:nowrap}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-\\[\\#606060\\]{color:#606060}.text-black{color:var(--color-black)}.text-blue-600{color:var(--color-blue-600)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-neutral-500{color:var(--color-neutral-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible){--btn-shadow:"";--btn-bg:#0000;--btn-border:#0000;--btn-noise:none}.btn-ghost:not(.btn-active,:hover,:active:focus,:focus-visible):not(:disabled,[disabled],.btn-disabled){--btn-fg:currentColor;outline-color:currentColor}.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,)}.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,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.btn-outline:not(.btn-active,:hover,:active:focus,:focus-visible,:disabled,[disabled],.btn-disabled){--btn-shadow:"";--btn-bg:#0000;--btn-fg:var(--btn-color);--btn-border:var(--btn-color);--btn-noise:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.input-error,.input-error:focus,.input-error:focus-within{--input-color:var(--color-error)}.loading-spinner{-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E")}.mdi--chevron-left{--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M15.41 16.58L10.83 12l4.58-4.59L14 6l-6 6l6 6z'/%3E%3C/svg%3E")}.mdi--chevron-left-first{--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6l6 6zM6 6h2v12H6z'/%3E%3C/svg%3E")}.mdi--chevron-right{--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M8.59 16.58L13.17 12L8.59 7.41L10 6l6 6l-6 6z'/%3E%3C/svg%3E")}.mdi--chevron-right-last{--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6l-6-6zM16 6h2v12h-2z'/%3E%3C/svg%3E")}.mdi--fullscreen{--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M5 5h5v2H7v3H5zm9 0h5v5h-2V7h-3zm3 9h2v5h-5v-2h3zm-7 3v2H5v-5h2v3z'/%3E%3C/svg%3E")}.mdi--fullscreen-exit{--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M14 14h5v2h-3v3h-2zm-9 0h5v5H8v-3H5zm3-9h2v5H5V8h3zm11 3v2h-5V5h2v3z'/%3E%3C/svg%3E")}.mdi--reload{--svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M2 12a9 9 0 0 0 9 9c2.39 0 4.68-.94 6.4-2.6l-1.5-1.5A6.7 6.7 0 0 1 11 19c-6.24 0-9.36-7.54-4.95-11.95S18 5.77 18 12h-3l4 4h.1l3.9-4h-3a9 9 0 0 0-18 0'/%3E%3C/svg%3E")}@media (hover:hover){.peer-hover\\:visible:is(:where(.peer):hover~*){visibility:visible}.hover\\:scale-90:hover{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\\:bg-gray-300:hover{background-color:var(--color-gray-300)}.hover\\:font-bold:hover{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.hover\\:text-blue-700:hover{color:var(--color-blue-700)}.hover\\:text-blue-800:hover{color:var(--color-blue-800)}.hover\\:text-gray-400:hover{color:var(--color-gray-400)}.hover\\:text-gray-700:hover{color:var(--color-gray-700)}}@media (width>=40rem){.sm\\:modal-middle{place-items:center}.sm\\:modal-middle :where(.modal-box){--modal-tl:var(--radius-box);--modal-tr:var(--radius-box);--modal-bl:var(--radius-box);--modal-br:var(--radius-box);width:91.6667%;max-width:32rem;height:auto;max-height:calc(100vh - 5em);translate:0 2%;scale:98%}.sm\\:max-w-5xl{max-width:var(--container-5xl)}.sm\\:flex-row{flex-direction:row}.sm\\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}@container (width>=2rem){.\\@\\[2rem\\]\\:visible{visibility:visible}}@container (width>=6rem){.\\@\\[6rem\\]\\:visible{visibility:visible}}@container (width>=14rem){.\\@4xs\\:flex-row{flex-direction:row}.\\@4xs\\:rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.\\@4xs\\:rounded-tr-none{border-top-right-radius:0}.\\@4xs\\:rounded-bl-md{border-bottom-left-radius:var(--radius-md)}}@container (width>=28rem){.\\@md\\:flex-row{flex-direction:row}.\\@md\\:rounded-l-md{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.\\@md\\:rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.\\@md\\:rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.\\@md\\:rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}}}@keyframes dropdown{0%{opacity:0}}@keyframes rating{0%,40%{filter:brightness(1.05)contrast(1.05);scale:1.1}}@keyframes radio{0%{padding:5px}50%{padding:3px}}@keyframes progress{50%{background-position-x:-115%}}@keyframes skeleton{0%{background-position:150%}to{background-position:-50%}}@keyframes toast{0%{opacity:0;scale:.9}to{opacity:1;scale:1}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false;initial-value:rotateX(0)}@property --tw-rotate-y{syntax:"*";inherits:false;initial-value:rotateY(0)}@property --tw-rotate-z{syntax:"*";inherits:false;initial-value:rotateZ(0)}@property --tw-skew-x{syntax:"*";inherits:false;initial-value:skewX(0)}@property --tw-skew-y{syntax:"*";inherits:false;initial-value:skewY(0)}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
5785
2419
  `;
5786
2420
  var __defProp$f = Object.defineProperty;
5787
2421
  var __decorateClass$f = (decorators, target, key, kind) => {
@@ -6354,7 +2988,7 @@ const Toolbar$6 = ({
6354
2988
  /* @__PURE__ */ u$1(
6355
2989
  CsvDownloadButton,
6356
2990
  {
6357
- className: "mx-1 btn btn-xs",
2991
+ className: "btn btn-xs",
6358
2992
  getData: () => getMutationsTableData(
6359
2993
  filteredData.tableData,
6360
2994
  baselineSubstitutionsOrDeletions,
@@ -6368,7 +3002,7 @@ const Toolbar$6 = ({
6368
3002
  activeTab === "Insertions" && /* @__PURE__ */ u$1(
6369
3003
  CsvDownloadButton,
6370
3004
  {
6371
- className: "mx-1 btn btn-xs",
3005
+ className: "btn btn-xs",
6372
3006
  getData: () => getInsertionsTableData(filteredData.insertions).map((row) => {
6373
3007
  return {
6374
3008
  insertion: row.insertion.toString(),
@@ -8060,7 +4694,7 @@ function queryPrevalenceOverTime(numeratorFilters, denominatorFilter, granularit
8060
4694
  return Promise.all(subQueries);
8061
4695
  }
8062
4696
  const Select = ({ items, selected, onChange, selectStyle }) => {
8063
- return /* @__PURE__ */ u$1("select", { class: `select select-bordered ${selectStyle}`, value: selected, onChange, children: items.map((item) => /* @__PURE__ */ u$1("option", { value: item.value, disabled: item.disabled, children: item.label }, item.value)) });
4697
+ return /* @__PURE__ */ u$1("select", { class: `select ${selectStyle} w-fit`, value: selected, onChange, children: items.map((item) => /* @__PURE__ */ u$1("option", { value: item.value, disabled: item.disabled, children: item.label }, item.value)) });
8064
4698
  };
8065
4699
  const ConfidenceIntervalSelector = ({
8066
4700
  confidenceIntervalMethod,
@@ -8091,7 +4725,7 @@ const ConfidenceIntervalSelector = ({
8091
4725
  const value = select.value;
8092
4726
  setConfidenceIntervalMethod(value);
8093
4727
  },
8094
- selectStyle: "select-xs select-bordered"
4728
+ selectStyle: "select-xs"
8095
4729
  }
8096
4730
  );
8097
4731
  };
@@ -8120,7 +4754,7 @@ const ScalingSelector = ({
8120
4754
  const value = select.value;
8121
4755
  setYAxisScaleType(value);
8122
4756
  },
8123
- selectStyle: `${className} select-xs select-bordered`
4757
+ selectStyle: `${className ?? ""} select-xs`
8124
4758
  }
8125
4759
  );
8126
4760
  };
@@ -8278,7 +4912,7 @@ const Toolbar$5 = ({
8278
4912
  /* @__PURE__ */ u$1(
8279
4913
  CsvDownloadButton,
8280
4914
  {
8281
- className: "mx-1 btn btn-xs",
4915
+ className: "btn btn-xs",
8282
4916
  getData: () => getPrevalenceOverTimeTableData(data, granularity),
8283
4917
  filename: "prevalence_over_time.csv"
8284
4918
  }
@@ -9104,8 +5738,8 @@ const AggregatedDataTabs = ({ data, originalComponentProps }) => {
9104
5738
  return /* @__PURE__ */ u$1(Tabs, { tabs, toolbar: /* @__PURE__ */ u$1(Toolbar$4, { data, originalComponentProps }) });
9105
5739
  };
9106
5740
  const Toolbar$4 = ({ data, originalComponentProps }) => {
9107
- return /* @__PURE__ */ u$1("div", { class: "flex flex-row", children: [
9108
- /* @__PURE__ */ u$1(CsvDownloadButton, { className: "mx-1 btn btn-xs", getData: () => data, filename: "aggregate.csv" }),
5741
+ return /* @__PURE__ */ u$1(Fragment, { children: [
5742
+ /* @__PURE__ */ u$1(CsvDownloadButton, { className: "btn btn-xs", getData: () => data, filename: "aggregate.csv" }),
9109
5743
  /* @__PURE__ */ u$1(AggregateInfo, { originalComponentProps }),
9110
5744
  /* @__PURE__ */ u$1(Fullscreen, {})
9111
5745
  ] });
@@ -9469,7 +6103,7 @@ const Toolbar$3 = ({ activeTab, data, yAxisScaleType, setYAxisScaleType, origina
9469
6103
  /* @__PURE__ */ u$1(
9470
6104
  CsvDownloadButton,
9471
6105
  {
9472
- className: "mx-1 btn btn-xs",
6106
+ className: "btn btn-xs",
9473
6107
  getData: () => getNumberOfSequencesOverTimeTableData(data, originalComponentProps.granularity),
9474
6108
  filename: "number_of_sequences_over_time.csv"
9475
6109
  }
@@ -9865,96 +6499,236 @@ const Tooltip = ({ children, content, position = "bottom" }) => {
9865
6499
  )
9866
6500
  ] });
9867
6501
  };
9868
- const MAX_NUMBER_OF_GRID_ROWS = 100;
9869
- const MUTATION_CELL_WIDTH_REM = 8;
6502
+ const pageSizesSchema = z$2.union([z$2.array(z$2.number()), z$2.number()]);
6503
+ function Pagination({
6504
+ table,
6505
+ pageSizes
6506
+ }) {
6507
+ return /* @__PURE__ */ u$1("div", { className: "flex items-center gap-4 justify-end flex-wrap", children: [
6508
+ /* @__PURE__ */ u$1(PageSizeSelector, { table, pageSizes }),
6509
+ /* @__PURE__ */ u$1(PageIndicator, { table }),
6510
+ /* @__PURE__ */ u$1(GotoPageSelector, { table }),
6511
+ /* @__PURE__ */ u$1(SelectPageButtons, { table })
6512
+ ] });
6513
+ }
6514
+ function PageIndicator({ table }) {
6515
+ if (table.getRowModel().rows.length <= 1) {
6516
+ return null;
6517
+ }
6518
+ return /* @__PURE__ */ u$1("span", { className: "flex items-center gap-1", children: [
6519
+ /* @__PURE__ */ u$1("div", { children: "Page" }),
6520
+ /* @__PURE__ */ u$1("strong", { children: [
6521
+ table.getState().pagination.pageIndex + 1,
6522
+ " of ",
6523
+ table.getPageCount().toLocaleString()
6524
+ ] })
6525
+ ] });
6526
+ }
6527
+ function PageSizeSelector({
6528
+ table,
6529
+ pageSizes
6530
+ }) {
6531
+ if (typeof pageSizes === "number" || pageSizes.length <= 1) {
6532
+ return null;
6533
+ }
6534
+ return /* @__PURE__ */ u$1("label", { className: "flex items-center gap-2", children: [
6535
+ /* @__PURE__ */ u$1("div", { className: "text-nowrap", children: "Rows per page:" }),
6536
+ /* @__PURE__ */ u$1(
6537
+ "select",
6538
+ {
6539
+ className: "select",
6540
+ value: table.getState().pagination.pageSize,
6541
+ onChange: (e2) => {
6542
+ var _a;
6543
+ table.setPageSize(Number((_a = e2.currentTarget) == null ? void 0 : _a.value));
6544
+ },
6545
+ "aria-label": "Select number of rows per page",
6546
+ children: pageSizes.map((pageSize) => /* @__PURE__ */ u$1("option", { value: pageSize, children: pageSize }, pageSize))
6547
+ }
6548
+ )
6549
+ ] });
6550
+ }
6551
+ function GotoPageSelector({ table }) {
6552
+ if (table.getRowModel().rows.length === 0) {
6553
+ return null;
6554
+ }
6555
+ return /* @__PURE__ */ u$1("label", { className: "flex items-center", children: [
6556
+ "Go to page:",
6557
+ /* @__PURE__ */ u$1(
6558
+ "input",
6559
+ {
6560
+ type: "number",
6561
+ min: "1",
6562
+ max: table.getPageCount(),
6563
+ defaultValue: table.getState().pagination.pageIndex + 1,
6564
+ onChange: (e2) => {
6565
+ const page = e2.currentTarget.value ? Number(e2.currentTarget.value) - 1 : 0;
6566
+ table.setPageIndex(page);
6567
+ },
6568
+ className: "input",
6569
+ "aria-label": "Enter page number to go to"
6570
+ }
6571
+ )
6572
+ ] });
6573
+ }
6574
+ function SelectPageButtons({ table }) {
6575
+ return /* @__PURE__ */ u$1("div", { className: "join", role: "group", "aria-label": "Pagination controls", children: [
6576
+ /* @__PURE__ */ u$1(
6577
+ "button",
6578
+ {
6579
+ className: "btn btn-outline join-item btn-sm",
6580
+ onClick: () => table.firstPage(),
6581
+ disabled: !table.getCanPreviousPage(),
6582
+ "aria-label": "First page",
6583
+ children: /* @__PURE__ */ u$1("div", { className: "iconify mdi--chevron-left-first" })
6584
+ }
6585
+ ),
6586
+ /* @__PURE__ */ u$1(
6587
+ "button",
6588
+ {
6589
+ className: "btn btn-outline join-item btn-sm",
6590
+ onClick: () => table.previousPage(),
6591
+ disabled: !table.getCanPreviousPage(),
6592
+ "aria-label": "Previous page",
6593
+ children: /* @__PURE__ */ u$1("div", { className: "iconify mdi--chevron-left" })
6594
+ }
6595
+ ),
6596
+ /* @__PURE__ */ u$1(
6597
+ "button",
6598
+ {
6599
+ className: "btn btn-outline join-item btn-sm",
6600
+ onClick: () => table.nextPage(),
6601
+ disabled: !table.getCanNextPage(),
6602
+ "aria-label": "Next page",
6603
+ children: /* @__PURE__ */ u$1("div", { className: "iconify mdi--chevron-right" })
6604
+ }
6605
+ ),
6606
+ /* @__PURE__ */ u$1(
6607
+ "button",
6608
+ {
6609
+ className: "btn btn-outline join-item btn-sm",
6610
+ onClick: () => table.lastPage(),
6611
+ disabled: !table.getCanNextPage(),
6612
+ "aria-label": "Last page",
6613
+ children: /* @__PURE__ */ u$1("div", { className: "iconify mdi--chevron-right-last" })
6614
+ }
6615
+ )
6616
+ ] });
6617
+ }
6618
+ function flexRender(Comp, props) {
6619
+ return !Comp ? null : typeof Comp === "function" ? /* @__PURE__ */ u$1(Comp, { ...props }) : Comp;
6620
+ }
6621
+ function usePreactTable(options2) {
6622
+ const resolvedOptions = {
6623
+ state: {},
6624
+ onStateChange: () => {
6625
+ },
6626
+ renderFallbackValue: null,
6627
+ ...options2
6628
+ };
6629
+ const [tableRef] = d(() => ({
6630
+ current: createTable(resolvedOptions)
6631
+ }));
6632
+ const [state, setState] = d(() => tableRef.current.initialState);
6633
+ tableRef.current.setOptions((prev) => ({
6634
+ ...prev,
6635
+ ...options2,
6636
+ state: {
6637
+ ...state,
6638
+ ...options2.state
6639
+ },
6640
+ onStateChange: (updater) => {
6641
+ var _a;
6642
+ setState(updater);
6643
+ (_a = options2.onStateChange) == null ? void 0 : _a.call(options2, updater);
6644
+ }
6645
+ }));
6646
+ return tableRef.current;
6647
+ }
9870
6648
  const MutationsOverTimeGrid = ({
9871
6649
  data,
9872
6650
  colorScale,
9873
- maxNumberOfGridRows,
9874
- sequenceType
6651
+ sequenceType,
6652
+ pageSizes
9875
6653
  }) => {
9876
- const currentMaxNumberOfGridRows = maxNumberOfGridRows ?? MAX_NUMBER_OF_GRID_ROWS;
9877
- const allMutations = data.getFirstAxisKeys();
9878
- const shownMutations = allMutations.slice(0, currentMaxNumberOfGridRows);
9879
- const dates = data.getSecondAxisKeys();
9880
- const gridRef = A$1(null);
9881
- return /* @__PURE__ */ u$1(Fragment, { children: [
9882
- allMutations.length > currentMaxNumberOfGridRows && /* @__PURE__ */ u$1("div", { className: "pl-2", children: [
9883
- "Showing ",
9884
- currentMaxNumberOfGridRows,
9885
- " of ",
9886
- allMutations.length,
9887
- " mutations. You can narrow the filter to reduce the number of mutations."
9888
- ] }),
9889
- allMutations.length === 0 ? /* @__PURE__ */ u$1("div", { className: "flex justify-center", children: "No data available for your filters." }) : /* @__PURE__ */ u$1(
9890
- "div",
9891
- {
9892
- ref: gridRef,
9893
- style: {
9894
- display: "grid",
9895
- gridTemplateRows: `repeat(${shownMutations.length}, 24px)`,
9896
- gridTemplateColumns: `${MUTATION_CELL_WIDTH_REM}rem repeat(${dates.length}, minmax(0.05rem, 1fr))`
9897
- },
9898
- className: "text-center",
9899
- children: [
9900
- dates.map((date, columnIndex) => /* @__PURE__ */ u$1(
9901
- "div",
6654
+ const tableData = T$1(() => {
6655
+ const allMutations = data.getFirstAxisKeys();
6656
+ return data.getAsArray().map((row, index) => {
6657
+ return { mutation: allMutations[index], values: [...row] };
6658
+ });
6659
+ }, [data]);
6660
+ const [pagination, setPagination] = d({
6661
+ pageIndex: 0,
6662
+ pageSize: typeof pageSizes === "number" ? pageSizes : pageSizes.at(0) ?? 10
6663
+ });
6664
+ const columns = T$1(() => {
6665
+ const columnHelper = createColumnHelper();
6666
+ const dates = data.getSecondAxisKeys();
6667
+ const mutationHeader = columnHelper.accessor((row) => row.mutation, {
6668
+ id: "mutation",
6669
+ header: () => /* @__PURE__ */ u$1("span", { children: "Mutation" }),
6670
+ cell: ({ getValue }) => {
6671
+ const value = getValue();
6672
+ return /* @__PURE__ */ u$1("div", { className: "text-center", children: /* @__PURE__ */ u$1(AnnotatedMutation, { mutation: value, sequenceType }) });
6673
+ }
6674
+ });
6675
+ const dateHeaders = dates.map((date, index) => {
6676
+ return columnHelper.accessor((row) => row.values[index], {
6677
+ id: `date-${index}`,
6678
+ header: () => /* @__PURE__ */ u$1("div", { className: "@container min-w-[0.05rem]", children: /* @__PURE__ */ u$1("p", { ...styleGridHeader(index, dates.length), children: date.dateString }) }),
6679
+ cell: ({ getValue, row, column, table: table2 }) => {
6680
+ const value = getValue();
6681
+ const rowIndex = row.index;
6682
+ const columnIndex = column.getIndex();
6683
+ const numberOfRows = table2.getRowModel().rows.length;
6684
+ const numberOfColumns = table2.getAllColumns().length;
6685
+ return /* @__PURE__ */ u$1("div", { className: "text-center", children: /* @__PURE__ */ u$1(
6686
+ ProportionCell,
9902
6687
  {
9903
- className: "@container font-semibold",
9904
- style: { gridRowStart: 1, gridColumnStart: columnIndex + 2 },
9905
- children: /* @__PURE__ */ u$1("p", { ...styleGridHeader(columnIndex, dates), children: date.dateString })
9906
- },
9907
- date.dateString
9908
- )),
9909
- shownMutations.map((mutation, rowIndex) => {
9910
- return /* @__PURE__ */ u$1(Fragment, { children: [
9911
- /* @__PURE__ */ u$1(
9912
- "div",
9913
- {
9914
- style: { gridRowStart: rowIndex + 2, gridColumnStart: 1 },
9915
- className: "flex items-center justify-center",
9916
- children: /* @__PURE__ */ u$1(AnnotatedMutation, { mutation, sequenceType })
9917
- },
9918
- `mutation-${mutation.code}`
6688
+ value: value ?? null,
6689
+ date,
6690
+ mutation: row.original.mutation,
6691
+ tooltipPosition: getTooltipPosition(
6692
+ rowIndex - table2.getState().pagination.pageIndex * table2.getState().pagination.pageSize,
6693
+ numberOfRows,
6694
+ columnIndex,
6695
+ numberOfColumns
9919
6696
  ),
9920
- dates.map((date, columnIndex) => {
9921
- const value = data.get(mutation, date) ?? null;
9922
- const tooltipPosition = getTooltipPosition(
9923
- rowIndex,
9924
- shownMutations.length,
9925
- columnIndex,
9926
- dates.length
9927
- );
9928
- return /* @__PURE__ */ u$1(
9929
- "div",
9930
- {
9931
- style: { gridRowStart: rowIndex + 2, gridColumnStart: columnIndex + 2 },
9932
- children: /* @__PURE__ */ u$1(
9933
- ProportionCell,
9934
- {
9935
- value,
9936
- date,
9937
- mutation,
9938
- tooltipPosition,
9939
- colorScale
9940
- }
9941
- )
9942
- },
9943
- `${mutation.code}-${date.dateString}`
9944
- );
9945
- })
9946
- ] }, `fragment-${mutation.code}`);
9947
- })
9948
- ]
9949
- }
9950
- )
6697
+ colorScale
6698
+ }
6699
+ ) });
6700
+ }
6701
+ });
6702
+ });
6703
+ return [mutationHeader, ...dateHeaders];
6704
+ }, [colorScale, data, sequenceType]);
6705
+ const table = usePreactTable({
6706
+ data: tableData,
6707
+ columns,
6708
+ getCoreRowModel: getCoreRowModel(),
6709
+ getPaginationRowModel: getPaginationRowModel(),
6710
+ debugTable: true,
6711
+ onPaginationChange: setPagination,
6712
+ state: {
6713
+ pagination
6714
+ }
6715
+ });
6716
+ return /* @__PURE__ */ u$1("div", { className: "w-full", children: [
6717
+ /* @__PURE__ */ u$1("table", { className: "w-full", children: [
6718
+ /* @__PURE__ */ u$1("thead", { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ u$1("tr", { children: headerGroup.headers.map((header) => /* @__PURE__ */ u$1("th", { colSpan: header.colSpan, style: { width: `${header.getSize()}px` }, children: header.isPlaceholder ? null : flexRender(header.column.columnDef.header, header.getContext()) }, header.id)) }, headerGroup.id)) }),
6719
+ /* @__PURE__ */ u$1("tbody", { children: [
6720
+ table.getRowModel().rows.map((row) => /* @__PURE__ */ u$1("tr", { children: row.getVisibleCells().map((cell) => /* @__PURE__ */ u$1("td", { children: flexRender(cell.column.columnDef.cell, cell.getContext()) }, cell.id)) }, row.id)),
6721
+ table.getRowModel().rows.length === 0 && /* @__PURE__ */ u$1("td", { colSpan: table.getFlatHeaders().length, children: /* @__PURE__ */ u$1("div", { className: "text-center", children: "No data available for your filters." }) })
6722
+ ] })
6723
+ ] }),
6724
+ /* @__PURE__ */ u$1("div", { className: "mt-2", children: /* @__PURE__ */ u$1(Pagination, { table, pageSizes }) })
9951
6725
  ] });
9952
6726
  };
9953
- function styleGridHeader(columnIndex, dates) {
6727
+ function styleGridHeader(columnIndex, numDateColumns) {
9954
6728
  if (columnIndex === 0) {
9955
6729
  return { className: "overflow-visible text-nowrap" };
9956
6730
  }
9957
- if (columnIndex === dates.length - 1) {
6731
+ if (columnIndex === numDateColumns - 1) {
9958
6732
  return { className: "overflow-visible text-nowrap", style: { direction: "rtl" } };
9959
6733
  }
9960
6734
  return { className: "invisible @[6rem]:visible" };
@@ -10001,7 +6775,7 @@ const ProportionCell = ({ value, mutation, date, tooltipPosition, colorScale })
10001
6775
  color: getTextColorForScale(value == null ? void 0 : value.proportion, colorScale)
10002
6776
  },
10003
6777
  className: `w-full h-full hover:font-bold text-xs group @container`,
10004
- children: /* @__PURE__ */ u$1("span", { className: "invisible @[2rem]:visible", children: value === null ? "" : formatProportion(value.proportion, 0) })
6778
+ children: value === null ? /* @__PURE__ */ u$1("span", { className: "invisible", children: "No data" }) : /* @__PURE__ */ u$1("span", { className: "invisible @[2rem]:visible", children: formatProportion(value.proportion, 0) })
10005
6779
  }
10006
6780
  ) }) });
10007
6781
  };
@@ -10021,7 +6795,7 @@ const ColorScaleSelectorDropdown = ({
10021
6795
  colorScale,
10022
6796
  setColorScale
10023
6797
  }) => {
10024
- return /* @__PURE__ */ u$1("div", { className: "w-20", children: /* @__PURE__ */ u$1(Dropdown, { buttonTitle: `Color scale`, placement: "bottom-start", children: /* @__PURE__ */ u$1(ColorScaleSelector, { colorScale, setColorScale }) }) });
6798
+ return /* @__PURE__ */ u$1("div", { className: "w-20 inline-flex", children: /* @__PURE__ */ u$1(Dropdown, { buttonTitle: `Color scale`, placement: "bottom-start", children: /* @__PURE__ */ u$1(ColorScaleSelector, { colorScale, setColorScale }) }) });
10025
6799
  };
10026
6800
  function useWebWorker(messageToWorker, WorkerConstructor) {
10027
6801
  const [data, setData] = d(void 0);
@@ -10075,7 +6849,8 @@ const mutationOverTimeSchema = z$2.object({
10075
6849
  max: z$2.number().min(0).max(1)
10076
6850
  }),
10077
6851
  width: z$2.string(),
10078
- height: z$2.string().optional()
6852
+ height: z$2.string().optional(),
6853
+ pageSizes: pageSizesSchema
10079
6854
  });
10080
6855
  const MutationsOverTime = (componentProps) => {
10081
6856
  const { width, height } = componentProps;
@@ -10165,7 +6940,8 @@ const MutationsOverTimeTabs$1 = ({
10165
6940
  {
10166
6941
  data: filteredData,
10167
6942
  colorScale,
10168
- sequenceType: originalComponentProps.sequenceType
6943
+ sequenceType: originalComponentProps.sequenceType,
6944
+ pageSizes: originalComponentProps.pageSizes
10169
6945
  }
10170
6946
  )
10171
6947
  };
@@ -10225,7 +7001,7 @@ const Toolbar$2 = ({
10225
7001
  /* @__PURE__ */ u$1(
10226
7002
  CsvDownloadButton,
10227
7003
  {
10228
- className: "mx-1 btn btn-xs",
7004
+ className: "btn btn-xs",
10229
7005
  getData: () => getDownloadData(filteredData),
10230
7006
  filename: "mutations_over_time.csv"
10231
7007
  }
@@ -10288,6 +7064,7 @@ let MutationsOverTimeComponent = class extends PreactLitAdapterWithGridJsStyles
10288
7064
  this.lapisDateField = "date";
10289
7065
  this.displayMutations = void 0;
10290
7066
  this.initialMeanProportionInterval = { min: 0.05, max: 0.9 };
7067
+ this.pageSizes = [10, 20, 30, 40, 50];
10291
7068
  this.mutationAnnotations = [];
10292
7069
  }
10293
7070
  render() {
@@ -10302,7 +7079,8 @@ let MutationsOverTimeComponent = class extends PreactLitAdapterWithGridJsStyles
10302
7079
  granularity: this.granularity,
10303
7080
  lapisDateField: this.lapisDateField,
10304
7081
  displayMutations: this.displayMutations,
10305
- initialMeanProportionInterval: this.initialMeanProportionInterval
7082
+ initialMeanProportionInterval: this.initialMeanProportionInterval,
7083
+ pageSizes: this.pageSizes
10306
7084
  }
10307
7085
  ) });
10308
7086
  }
@@ -10334,6 +7112,9 @@ __decorateClass$8([
10334
7112
  __decorateClass$8([
10335
7113
  n$1({ type: Object })
10336
7114
  ], MutationsOverTimeComponent.prototype, "initialMeanProportionInterval", 2);
7115
+ __decorateClass$8([
7116
+ n$1({ type: Array })
7117
+ ], MutationsOverTimeComponent.prototype, "pageSizes", 2);
10337
7118
  __decorateClass$8([
10338
7119
  consume({ context: mutationAnnotationsContext, subscribe: true })
10339
7120
  ], MutationsOverTimeComponent.prototype, "mutationAnnotations", 2);
@@ -11058,7 +7839,7 @@ const DataMatchInformation = ({
11058
7839
  return /* @__PURE__ */ u$1(
11059
7840
  Modal,
11060
7841
  {
11061
- buttonClassName: "text-sm absolute bottom-0 px-1 z-[1001] bg-white rounded border",
7842
+ buttonClassName: "text-sm absolute bottom-0 px-1 z-1001 bg-white rounded-sm border border-gray-200",
11062
7843
  modalContent: /* @__PURE__ */ u$1(Fragment, { children: [
11063
7844
  /* @__PURE__ */ u$1(InfoHeadline1, { children: "Sequences By Location - Map View" }),
11064
7845
  /* @__PURE__ */ u$1(InfoParagraph, { children: [
@@ -11381,15 +8162,8 @@ const SequencesByLocationMapTabs = ({
11381
8162
  );
11382
8163
  };
11383
8164
  const Toolbar$1 = ({ originalComponentProps, tableData }) => {
11384
- return /* @__PURE__ */ u$1("div", { class: "flex flex-row", children: [
11385
- /* @__PURE__ */ u$1(
11386
- CsvDownloadButton,
11387
- {
11388
- className: "mx-1 btn btn-xs",
11389
- getData: () => tableData,
11390
- filename: "sequences_by_location.csv"
11391
- }
11392
- ),
8165
+ return /* @__PURE__ */ u$1(Fragment, { children: [
8166
+ /* @__PURE__ */ u$1(CsvDownloadButton, { className: "btn btn-xs", getData: () => tableData, filename: "sequences_by_location.csv" }),
11393
8167
  /* @__PURE__ */ u$1(SequencesByLocationMapInfo, { originalComponentProps }),
11394
8168
  /* @__PURE__ */ u$1(Fullscreen, {})
11395
8169
  ] });
@@ -11672,7 +8446,7 @@ const wastewaterMutationOverTimeSchema = z$2.object({
11672
8446
  sequenceType: sequenceTypeSchema,
11673
8447
  width: z$2.string(),
11674
8448
  height: z$2.string().optional(),
11675
- maxNumberOfGridRows: z$2.number()
8449
+ pageSizes: pageSizesSchema
11676
8450
  });
11677
8451
  const WastewaterMutationsOverTime = (componentProps) => {
11678
8452
  const { width, height } = componentProps;
@@ -11706,15 +8480,13 @@ const WastewaterMutationsOverTimeInner = (componentProps) => {
11706
8480
  MutationsOverTimeTabs,
11707
8481
  {
11708
8482
  mutationOverTimeDataPerLocation,
11709
- originalComponentProps: componentProps,
11710
- maxNumberOfGridRows: componentProps.maxNumberOfGridRows
8483
+ originalComponentProps: componentProps
11711
8484
  }
11712
8485
  );
11713
8486
  };
11714
8487
  const MutationsOverTimeTabs = ({
11715
8488
  mutationOverTimeDataPerLocation,
11716
- originalComponentProps,
11717
- maxNumberOfGridRows
8489
+ originalComponentProps
11718
8490
  }) => {
11719
8491
  const [colorScale, setColorScale] = d({ min: 0, max: 1, color: "indigo" });
11720
8492
  const tabs = mutationOverTimeDataPerLocation.map(({ location, data }) => ({
@@ -11724,7 +8496,7 @@ const MutationsOverTimeTabs = ({
11724
8496
  {
11725
8497
  data,
11726
8498
  colorScale,
11727
- maxNumberOfGridRows,
8499
+ pageSizes: originalComponentProps.pageSizes,
11728
8500
  sequenceType: originalComponentProps.sequenceType
11729
8501
  }
11730
8502
  )
@@ -11781,7 +8553,7 @@ let WastewaterMutationsOverTimeComponent = class extends PreactLitAdapterWithGri
11781
8553
  this.sequenceType = "nucleotide";
11782
8554
  this.width = "100%";
11783
8555
  this.height = void 0;
11784
- this.maxNumberOfGridRows = 100;
8556
+ this.pageSizes = [10, 20, 30, 40, 50];
11785
8557
  this.mutationAnnotations = [];
11786
8558
  }
11787
8559
  render() {
@@ -11792,7 +8564,7 @@ let WastewaterMutationsOverTimeComponent = class extends PreactLitAdapterWithGri
11792
8564
  sequenceType: this.sequenceType,
11793
8565
  width: this.width,
11794
8566
  height: this.height,
11795
- maxNumberOfGridRows: this.maxNumberOfGridRows
8567
+ pageSizes: this.pageSizes
11796
8568
  }
11797
8569
  ) });
11798
8570
  }
@@ -11810,8 +8582,8 @@ __decorateClass$5([
11810
8582
  n$1({ type: String })
11811
8583
  ], WastewaterMutationsOverTimeComponent.prototype, "height", 2);
11812
8584
  __decorateClass$5([
11813
- n$1({ type: Number })
11814
- ], WastewaterMutationsOverTimeComponent.prototype, "maxNumberOfGridRows", 2);
8585
+ n$1({ type: Array })
8586
+ ], WastewaterMutationsOverTimeComponent.prototype, "pageSizes", 2);
11815
8587
  __decorateClass$5([
11816
8588
  consume({ context: mutationAnnotationsContext, subscribe: true })
11817
8589
  ], WastewaterMutationsOverTimeComponent.prototype, "mutationAnnotations", 2);
@@ -11927,7 +8699,7 @@ function DatePicker({
11927
8699
  return /* @__PURE__ */ u$1(
11928
8700
  "input",
11929
8701
  {
11930
- className: `input input-bordered w-full ${className}`,
8702
+ className: `input w-full ${className}`,
11931
8703
  type: "text",
11932
8704
  placeholder: placeholderText,
11933
8705
  ref: inputRef,
@@ -11972,7 +8744,7 @@ function ClearableSelect({
11972
8744
  /* @__PURE__ */ u$1(
11973
8745
  "select",
11974
8746
  {
11975
- className: `w-full select select-bordered pr-14 ${selectClassName}`,
8747
+ className: `w-full select pr-14 ${selectClassName}`,
11976
8748
  value: selectedOption ?? undefinedValue,
11977
8749
  onChange: handleChange,
11978
8750
  children: [
@@ -12125,7 +8897,7 @@ const DateRangeFilterInner = ({
12125
8897
  (_a2 = divRef.current) == null ? void 0 : _a2.dispatchEvent(new DateRangeOptionChangedEvent(eventDetail));
12126
8898
  };
12127
8899
  return /* @__PURE__ */ u$1("div", { className: "@container", ref: divRef, children: /* @__PURE__ */ u$1("div", { className: "flex min-w-[7.5rem] flex-col @md:flex-row", children: [
12128
- /* @__PURE__ */ u$1("div", { className: "flex-grow", children: /* @__PURE__ */ u$1(
8900
+ /* @__PURE__ */ u$1("div", { className: "grow", children: /* @__PURE__ */ u$1(
12129
8901
  ClearableSelect,
12130
8902
  {
12131
8903
  items: options2.map((item) => item.label),
@@ -12138,11 +8910,11 @@ const DateRangeFilterInner = ({
12138
8910
  selectClassName: "rounded-t-md rounded-b-none @md:rounded-l-md @md:rounded-r-none"
12139
8911
  }
12140
8912
  ) }),
12141
- /* @__PURE__ */ u$1("div", { className: "flex flex-grow flex-col @4xs:flex-row", children: [
8913
+ /* @__PURE__ */ u$1("div", { className: "flex grow flex-col @4xs:flex-row", children: [
12142
8914
  /* @__PURE__ */ u$1(
12143
8915
  DatePicker,
12144
8916
  {
12145
- className: "flex-grow min-w-[7.5rem] @4xs:rounded-bl-md @md:rounded-l-none rounded-none",
8917
+ className: "grow min-w-[7.5rem] @4xs:rounded-bl-md @md:rounded-l-none rounded-none",
12146
8918
  value: state == null ? void 0 : state.dateFrom,
12147
8919
  onChange: onChangeDateFrom,
12148
8920
  maxDate: state == null ? void 0 : state.dateTo,
@@ -12152,7 +8924,7 @@ const DateRangeFilterInner = ({
12152
8924
  /* @__PURE__ */ u$1(
12153
8925
  DatePicker,
12154
8926
  {
12155
- className: "flex-grow min-w-[7.5rem] rounded-b-md rounded-t-none @4xs:rounded-tr-none @4xs:rounded-l-none @md:rounded-r-md ",
8927
+ className: "grow min-w-[7.5rem] rounded-b-md rounded-t-none @4xs:rounded-tr-none @4xs:rounded-l-none @md:rounded-r-md ",
12156
8928
  value: state == null ? void 0 : state.dateTo,
12157
8929
  onChange: onChangeDateTo,
12158
8930
  minDate: state == null ? void 0 : state.dateFrom,
@@ -15282,7 +12054,7 @@ function DownshiftCombobox({
15282
12054
  /* @__PURE__ */ u$1("div", { className: "w-full flex flex-col gap-1", children: /* @__PURE__ */ u$1(
15283
12055
  "div",
15284
12056
  {
15285
- className: `flex gap-0.5 input input-bordered min-w-32 ${inputClassName}`,
12057
+ className: `flex gap-0.5 input min-w-32 w-full ${inputClassName}`,
15286
12058
  onBlur: (event) => {
15287
12059
  if (event.relatedTarget != buttonRef.current) {
15288
12060
  closeMenu();
@@ -15331,12 +12103,12 @@ function DownshiftCombobox({
15331
12103
  children: items.length > 0 ? items.map((item, index) => /* @__PURE__ */ u$1(
15332
12104
  "li",
15333
12105
  {
15334
- className: `${highlightedIndex === index ? "bg-blue-300" : ""} ${selectedItem !== null && itemToString2(selectedItem) === itemToString2(item) ? "font-bold" : ""} py-2 px-3 shadow-sm`,
12106
+ className: `${highlightedIndex === index ? "bg-blue-300" : ""} ${selectedItem !== null && itemToString2(selectedItem) === itemToString2(item) ? "font-bold" : ""} py-2 px-3 shadow-xs`,
15335
12107
  ...getItemProps({ item, index }),
15336
12108
  children: formatItemInList(item)
15337
12109
  },
15338
12110
  itemToString2(item)
15339
- )) : /* @__PURE__ */ u$1("li", { className: "py-2 px-3 shadow-sm", children: "No elements to select." })
12111
+ )) : /* @__PURE__ */ u$1("li", { className: "py-2 px-3 shadow-xs", children: "No elements to select." })
15340
12112
  }
15341
12113
  )
15342
12114
  ] });