@dust-tt/sparkle 0.2.224 → 0.2.226

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 (71) hide show
  1. package/dist/cjs/index.js +293 -153
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/esm/components/Breadcrumbs.d.ts +7 -6
  4. package/dist/esm/components/Breadcrumbs.d.ts.map +1 -1
  5. package/dist/esm/components/Breadcrumbs.js +3 -2
  6. package/dist/esm/components/Breadcrumbs.js.map +1 -1
  7. package/dist/esm/components/DataTable.d.ts +5 -2
  8. package/dist/esm/components/DataTable.d.ts.map +1 -1
  9. package/dist/esm/components/DataTable.js +50 -33
  10. package/dist/esm/components/DataTable.js.map +1 -1
  11. package/dist/esm/components/DropdownMenu.d.ts +10 -10
  12. package/dist/esm/components/DropdownMenu.d.ts.map +1 -1
  13. package/dist/esm/components/DropdownMenu.js +7 -7
  14. package/dist/esm/components/DropdownMenu.js.map +1 -1
  15. package/dist/esm/components/Item.d.ts +18 -15
  16. package/dist/esm/components/Item.d.ts.map +1 -1
  17. package/dist/esm/components/Item.js +2 -1
  18. package/dist/esm/components/Item.js.map +1 -1
  19. package/dist/esm/components/PaginatedCitationsGrid.d.ts.map +1 -1
  20. package/dist/esm/components/PaginatedCitationsGrid.js +8 -4
  21. package/dist/esm/components/PaginatedCitationsGrid.js.map +1 -1
  22. package/dist/esm/components/Pagination.d.ts +5 -4
  23. package/dist/esm/components/Pagination.d.ts.map +1 -1
  24. package/dist/esm/components/Pagination.js +35 -35
  25. package/dist/esm/components/Pagination.js.map +1 -1
  26. package/dist/esm/hooks/index.d.ts +3 -0
  27. package/dist/esm/hooks/index.d.ts.map +1 -0
  28. package/dist/esm/hooks/index.js +3 -0
  29. package/dist/esm/hooks/index.js.map +1 -0
  30. package/dist/esm/hooks/useHashParams.d.ts +18 -0
  31. package/dist/esm/hooks/useHashParams.d.ts.map +1 -0
  32. package/dist/esm/hooks/useHashParams.js +67 -0
  33. package/dist/esm/hooks/useHashParams.js.map +1 -0
  34. package/dist/esm/hooks/usePaginationFromUrl.d.ts +6 -0
  35. package/dist/esm/hooks/usePaginationFromUrl.d.ts.map +1 -0
  36. package/dist/esm/hooks/usePaginationFromUrl.js +23 -0
  37. package/dist/esm/hooks/usePaginationFromUrl.js.map +1 -0
  38. package/dist/esm/index.d.ts +1 -0
  39. package/dist/esm/index.d.ts.map +1 -1
  40. package/dist/esm/index.js +1 -0
  41. package/dist/esm/index.js.map +1 -1
  42. package/dist/esm/stories/DataTable.stories.d.ts +2 -0
  43. package/dist/esm/stories/DataTable.stories.d.ts.map +1 -1
  44. package/dist/esm/stories/DataTable.stories.js +133 -105
  45. package/dist/esm/stories/DataTable.stories.js.map +1 -1
  46. package/dist/esm/stories/DropdownMenu.stories.d.ts.map +1 -1
  47. package/dist/esm/stories/DropdownMenu.stories.js +32 -31
  48. package/dist/esm/stories/DropdownMenu.stories.js.map +1 -1
  49. package/dist/esm/stories/Item.stories.d.ts.map +1 -1
  50. package/dist/esm/stories/Item.stories.js +8 -6
  51. package/dist/esm/stories/Item.stories.js.map +1 -1
  52. package/dist/esm/stories/Pagination.stories.d.ts +1 -0
  53. package/dist/esm/stories/Pagination.stories.d.ts.map +1 -1
  54. package/dist/esm/stories/Pagination.stories.js +25 -3
  55. package/dist/esm/stories/Pagination.stories.js.map +1 -1
  56. package/dist/sparkle.css +4 -0
  57. package/package.json +1 -1
  58. package/src/components/Breadcrumbs.tsx +11 -10
  59. package/src/components/DataTable.tsx +116 -81
  60. package/src/components/DropdownMenu.tsx +13 -13
  61. package/src/components/Item.tsx +20 -16
  62. package/src/components/PaginatedCitationsGrid.tsx +11 -6
  63. package/src/components/Pagination.tsx +48 -45
  64. package/src/hooks/index.ts +2 -0
  65. package/src/hooks/useHashParams.ts +95 -0
  66. package/src/hooks/usePaginationFromUrl.ts +36 -0
  67. package/src/index.ts +1 -0
  68. package/src/stories/DataTable.stories.tsx +200 -129
  69. package/src/stories/DropdownMenu.stories.tsx +43 -31
  70. package/src/stories/Item.stories.tsx +26 -6
  71. package/src/stories/Pagination.stories.tsx +38 -10
package/dist/cjs/index.js CHANGED
@@ -71883,8 +71883,9 @@ var iconClasses$4 = {
71883
71883
  warning: "s-text-warning-400 group-hover/item:s-text-warning-300 group-active/item:s-text-warning-700 dark:group-hover/item:s-text-warning-600-dark dark:group-active/item:s-text-warning-400-dark",
71884
71884
  };
71885
71885
  function Item(_a) {
71886
- var label = _a.label, description = _a.description, visual = _a.visual, icon = _a.icon, _b = _a.style, style = _b === void 0 ? "action" : _b, _c = _a.spacing, spacing = _c === void 0 ? "sm" : _c, _d = _a.action, action = _d === void 0 ? SvgChevronRight$1 : _d, _e = _a.hasAction, hasAction = _e === void 0 ? true : _e, onClick = _a.onClick, _f = _a.selected, selected = _f === void 0 ? false : _f, _g = _a.disabled, disabled = _g === void 0 ? false : _g, _h = _a.className, className = _h === void 0 ? "" : _h, href = _a.href, target = _a.target;
71886
+ var label = _a.label, description = _a.description, visual = _a.visual, icon = _a.icon, _b = _a.style, style = _b === void 0 ? "action" : _b, _c = _a.spacing, spacing = _c === void 0 ? "sm" : _c, _d = _a.action, action = _d === void 0 ? SvgChevronRight$1 : _d, _e = _a.hasAction, hasAction = _e === void 0 ? true : _e, onClick = _a.onClick, _f = _a.selected, selected = _f === void 0 ? false : _f, _g = _a.disabled, disabled = _g === void 0 ? false : _g, _h = _a.className, className = _h === void 0 ? "" : _h, link = _a.link;
71887
71887
  var components = React.useContext(SparkleContext).components;
71888
+ var _j = link || {}, href = _j.href, target = _j.target;
71888
71889
  var Link = href ? components.link : noHrefLink;
71889
71890
  var visualElement;
71890
71891
  if (visual) {
@@ -71998,13 +71999,13 @@ function DropdownMenu(_a) {
71998
71999
  React.createElement(qe$1, { as: "div", className: classNames(className, "s-relative s-inline-block") }, children)));
71999
72000
  }
72000
72001
  DropdownMenu.Button = function (_a) {
72001
- var label = _a.label, _b = _a.type, type = _b === void 0 ? "menu" : _b, _c = _a.size, size = _c === void 0 ? "sm" : _c, tooltip = _a.tooltip, icon = _a.icon, children = _a.children, _d = _a.tooltipPosition, tooltipPosition = _d === void 0 ? "above" : _d, _e = _a.className, className = _e === void 0 ? "" : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, onClick = _a.onClick;
72002
+ var label = _a.label, _b = _a.type, type = _b === void 0 ? "menu" : _b, _c = _a.size, size = _c === void 0 ? "sm" : _c, tooltip = _a.tooltip, icon = _a.icon, children = _a.children, _d = _a.tooltipPosition, tooltipPosition = _d === void 0 ? "above" : _d, _e = _a.className, className = _e === void 0 ? "" : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f;
72002
72003
  var finalLabelClasses = classNames(labelClasses$1.base, labelSizeClasses[size], labelClasses$1.dark.base, !disabled ? labelClasses$1.active : "", !disabled ? labelClasses$1.dark.active : "", !disabled ? labelClasses$1.hover : "", !disabled ? labelClasses$1.dark.hover : "", disabled ? labelClasses$1.disabled : "");
72003
72004
  var finalIconClasses = classNames(iconClasses$3.base, iconClasses$3.dark.base, !disabled ? iconClasses$3.hover : "", !disabled ? iconClasses$3.dark.hover : "", disabled ? iconClasses$3.disabled : "");
72004
72005
  var finalChevronClasses = classNames(chevronClasses.base, !disabled ? chevronClasses.hover : "", chevronClasses.dark.base, !disabled ? chevronClasses.dark.hover : "", disabled ? chevronClasses.disabled : "");
72005
72006
  var buttonRef = React.useContext(ButtonRefContext);
72006
72007
  if (children) {
72007
- return (React.createElement(qe$1.Button, { as: "div", disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group/dm s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? "s-gap-1.5" : "s-gap-0"), onClick: onClick }, tooltip ? (React.createElement(Tooltip, { position: tooltipPosition, label: tooltip }, children)) : (children)));
72008
+ return (React.createElement(qe$1.Button, { as: "div", disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group/dm s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? "s-gap-1.5" : "s-gap-0"), onClick: function (e) { return e.stopPropagation(); } }, tooltip ? (React.createElement(Tooltip, { position: tooltipPosition, label: tooltip }, children)) : (children)));
72008
72009
  }
72009
72010
  var chevronIcon = type === "select"
72010
72011
  ? SvgChevronUpDown$1
@@ -72012,20 +72013,20 @@ DropdownMenu.Button = function (_a) {
72012
72013
  ? SvgChevronRight$1
72013
72014
  : SvgChevronDown$1;
72014
72015
  return (React.createElement(React.Fragment, null, tooltip ? (React.createElement(Tooltip, { label: tooltip, position: tooltipPosition },
72015
- React.createElement(qe$1.Button, { disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group/dm s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? (size === "md" ? "s-gap-2" : "s-gap-1.5") : "s-gap-0.5") },
72016
+ React.createElement(qe$1.Button, { disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group/dm s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? (size === "md" ? "s-gap-2" : "s-gap-1.5") : "s-gap-0.5"), onClick: function (e) { return e.stopPropagation(); } },
72016
72017
  React.createElement(Icon, { visual: icon, size: size, className: finalIconClasses }),
72017
- React.createElement(Icon, { visual: chevronIcon, size: size === "sm" ? "xs" : "sm", className: finalChevronClasses })))) : (React.createElement(qe$1.Button, { disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group/dm s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? (size === "md" ? "s-gap-2" : "s-gap-1.5") : "s-gap-0.5", type === "submenu" ? "s-opacity-50" : "") },
72018
+ React.createElement(Icon, { visual: chevronIcon, size: size === "sm" ? "xs" : "sm", className: finalChevronClasses })))) : (React.createElement(qe$1.Button, { disabled: disabled, ref: buttonRef, className: classNames(disabled ? "s-cursor-default" : "s-cursor-pointer", className, "s-group/dm s-flex s-justify-items-center s-text-sm s-font-medium focus:s-outline-none focus:s-ring-0", label ? (size === "md" ? "s-gap-2" : "s-gap-1.5") : "s-gap-0.5", type === "submenu" ? "s-opacity-50" : ""), onClick: function (e) { return e.stopPropagation(); } },
72018
72019
  React.createElement(Icon, { visual: icon, size: size, className: finalIconClasses }),
72019
72020
  React.createElement("span", { className: classNames(finalLabelClasses, type === "submenu" ? "s-w-full" : "") }, label),
72020
72021
  React.createElement(Icon, { visual: chevronIcon, size: size === "sm" ? "xs" : "sm", className: finalChevronClasses })))));
72021
72022
  };
72022
72023
  DropdownMenu.Item = function (_a) {
72023
- var _b = _a.variant, variant = _b === void 0 ? "default" : _b, label = _a.label, description = _a.description, href = _a.href, disabled = _a.disabled, visual = _a.visual, icon = _a.icon, onClick = _a.onClick, hasChildren = _a.hasChildren, children = _a.children, _c = _a.selected, selected = _c === void 0 ? false : _c;
72024
+ var _b = _a.variant, variant = _b === void 0 ? "default" : _b, label = _a.label, description = _a.description, link = _a.link, disabled = _a.disabled, visual = _a.visual, icon = _a.icon, onClick = _a.onClick, hasChildren = _a.hasChildren, children = _a.children, _c = _a.selected, selected = _c === void 0 ? false : _c;
72024
72025
  return (
72025
72026
  // need to use as="div" -- otherwise we get a "forwardRef" error in the console
72026
72027
  React.createElement(qe$1.Item, { disabled: disabled, as: "div" }, hasChildren ? (React.createElement(DropdownMenu, { className: "s-w-full s-gap-x-2 s-py-2" },
72027
72028
  React.createElement(DropdownMenu.Button, { className: "s-w-full", disabled: disabled, label: label, type: "submenu" }),
72028
- children)) : (React.createElement(Item.Dropdown, { className: "s-w-full", description: description, disabled: disabled, href: href, icon: icon, label: label, onClick: onClick, selected: selected, style: variant, visual: visual }))));
72029
+ children)) : (React.createElement(Item.Dropdown, { className: "s-w-full", description: description, disabled: disabled, link: link, icon: icon, label: label, onClick: onClick, selected: selected, style: variant, visual: visual }))));
72029
72030
  };
72030
72031
  DropdownMenu.SectionHeader = function (_a) {
72031
72032
  var label = _a.label;
@@ -72111,7 +72112,7 @@ DropdownMenu.Items = function (_a) {
72111
72112
  return style;
72112
72113
  };
72113
72114
  return (React.createElement(qe, { as: React.Fragment, enter: "s-transition s-ease-out s-duration-200", enterFrom: getOriginTransClass(origin), enterTo: "s-transform s-opacity-100 s-scale-100 s-translate-y-0", leave: "s-transition s-ease-in s-duration-75", leaveFrom: "s-transform s-opacity-100 s-scale-100 s-translate-y-0", leaveTo: getOriginTransClass(origin) },
72114
- React.createElement(qe$1.Items, { onKeyDown: onKeyDown, className: classNames("s-absolute s-z-10", getOriginClass(origin), "s-rounded-xl s-border s-border-structure-100 s-bg-structure-0 s-shadow-lg focus:s-outline-none dark:s-border-structure-100-dark dark:s-bg-structure-0-dark"), style: styleInsert(origin, marginLeft) },
72115
+ React.createElement(qe$1.Items, { onKeyDown: onKeyDown, className: classNames("s-absolute s-z-10", getOriginClass(origin), "s-rounded-xl s-border s-border-structure-100 s-bg-structure-0 s-shadow-lg focus:s-outline-none dark:s-border-structure-100-dark dark:s-bg-structure-0-dark"), onClick: function (e) { return e.stopPropagation(); }, style: styleInsert(origin, marginLeft) },
72115
72116
  topBar,
72116
72117
  React.createElement("div", { className: classNames(classNamesForVariant(variant, hasDropdownItem), getOverflowClass(overflow)) },
72117
72118
  React.createElement(Item.List, null, children)),
@@ -72584,12 +72585,13 @@ function Breadcrumbs(_a) {
72584
72585
  return acc;
72585
72586
  }, { itemsShown: [], itemsHidden: [] }), itemsShown = _b.itemsShown, itemsHidden = _b.itemsHidden;
72586
72587
  return (React.createElement("div", { className: "gap-2 s-flex s-flex-row s-items-center" }, itemsShown.map(function (item, index) {
72588
+ var _a;
72587
72589
  return (React.createElement("div", { key: "breadcrumbs-".concat(index), className: "s-flex s-flex-row s-items-center s-gap-1" },
72588
72590
  React.createElement(Icon, { visual: item.icon, className: "s-text-brand" }),
72589
72591
  item.label === ELLIPSIS_STRING ? (React.createElement(DropdownMenu, null,
72590
72592
  React.createElement(DropdownMenu.Button, null, ELLIPSIS_STRING),
72591
- React.createElement(DropdownMenu.Items, { origin: "topLeft" }, itemsHidden.map(function (item, index) { return (React.createElement(DropdownMenu.Item, { icon: item.icon, label: item.label, href: item.href || "#", key: "breadcrumbs-hidden-".concat(index) }, truncateWithTooltip(item.label, LABEL_TRUNCATE_LENGTH_MIDDLE))); })))) : (React.createElement("div", null,
72592
- React.createElement(Link, { href: item.href || "#", className: index === items.length - 1
72593
+ React.createElement(DropdownMenu.Items, { origin: "topLeft" }, itemsHidden.map(function (item, index) { return (React.createElement(DropdownMenu.Item, { icon: item.icon, label: item.label, link: item.link, key: "breadcrumbs-hidden-".concat(index) }, truncateWithTooltip(item.label, LABEL_TRUNCATE_LENGTH_MIDDLE))); })))) : (React.createElement("div", null,
72594
+ React.createElement(Link, { href: ((_a = item.link) === null || _a === void 0 ? void 0 : _a.href) || "#", className: index === items.length - 1
72593
72595
  ? "s-text-element-900"
72594
72596
  : "s-text-element-700" }, index === items.length - 1
72595
72597
  ? truncateWithTooltip(item.label, LABEL_TRUNCATE_LENGTH_END)
@@ -101679,10 +101681,10 @@ const RowExpanding = {
101679
101681
  //
101680
101682
 
101681
101683
  const defaultPageIndex = 0;
101682
- const defaultPageSize = 10;
101684
+ const defaultPageSize$1 = 10;
101683
101685
  const getDefaultPaginationState = () => ({
101684
101686
  pageIndex: defaultPageIndex,
101685
- pageSize: defaultPageSize
101687
+ pageSize: defaultPageSize$1
101686
101688
  });
101687
101689
  const RowPagination = {
101688
101690
  getInitialState: state => {
@@ -101747,7 +101749,7 @@ const RowPagination = {
101747
101749
  };
101748
101750
  table.resetPageSize = defaultState => {
101749
101751
  var _table$initialState$p3, _table$initialState2;
101750
- table.setPageSize(defaultState ? defaultPageSize : (_table$initialState$p3 = (_table$initialState2 = table.initialState) == null || (_table$initialState2 = _table$initialState2.pagination) == null ? void 0 : _table$initialState2.pageSize) != null ? _table$initialState$p3 : defaultPageSize);
101752
+ table.setPageSize(defaultState ? defaultPageSize$1 : (_table$initialState$p3 = (_table$initialState2 = table.initialState) == null || (_table$initialState2 = _table$initialState2.pagination) == null ? void 0 : _table$initialState2.pageSize) != null ? _table$initialState$p3 : defaultPageSize$1);
101751
101753
  };
101752
101754
  table.setPageSize = updater => {
101753
101755
  table.setPagination(old => {
@@ -102871,6 +102873,22 @@ function getCoreRowModel() {
102871
102873
  return rowModel;
102872
102874
  }, getMemoOptions(table.options, 'debugTable', 'getRowModel', () => table._autoResetPageIndex()));
102873
102875
  }
102876
+ function expandRows(rowModel) {
102877
+ const expandedRows = [];
102878
+ const handleRow = row => {
102879
+ var _row$subRows;
102880
+ expandedRows.push(row);
102881
+ if ((_row$subRows = row.subRows) != null && _row$subRows.length && row.getIsExpanded()) {
102882
+ row.subRows.forEach(handleRow);
102883
+ }
102884
+ };
102885
+ rowModel.rows.forEach(handleRow);
102886
+ return {
102887
+ rows: expandedRows,
102888
+ flatRows: rowModel.flatRows,
102889
+ rowsById: rowModel.rowsById
102890
+ };
102891
+ }
102874
102892
 
102875
102893
  function filterRows(rows, filterRowImpl, table) {
102876
102894
  if (table.options.filterFromLeafRows) {
@@ -103061,6 +103079,49 @@ function getFilteredRowModel() {
103061
103079
  }, getMemoOptions(table.options, 'debugTable', 'getFilteredRowModel', () => table._autoResetPageIndex()));
103062
103080
  }
103063
103081
 
103082
+ function getPaginationRowModel(opts) {
103083
+ return table => memo(() => [table.getState().pagination, table.getPrePaginationRowModel(), table.options.paginateExpandedRows ? undefined : table.getState().expanded], (pagination, rowModel) => {
103084
+ if (!rowModel.rows.length) {
103085
+ return rowModel;
103086
+ }
103087
+ const {
103088
+ pageSize,
103089
+ pageIndex
103090
+ } = pagination;
103091
+ let {
103092
+ rows,
103093
+ flatRows,
103094
+ rowsById
103095
+ } = rowModel;
103096
+ const pageStart = pageSize * pageIndex;
103097
+ const pageEnd = pageStart + pageSize;
103098
+ rows = rows.slice(pageStart, pageEnd);
103099
+ let paginatedRowModel;
103100
+ if (!table.options.paginateExpandedRows) {
103101
+ paginatedRowModel = expandRows({
103102
+ rows,
103103
+ flatRows,
103104
+ rowsById
103105
+ });
103106
+ } else {
103107
+ paginatedRowModel = {
103108
+ rows,
103109
+ flatRows,
103110
+ rowsById
103111
+ };
103112
+ }
103113
+ paginatedRowModel.flatRows = [];
103114
+ const handleRow = row => {
103115
+ paginatedRowModel.flatRows.push(row);
103116
+ if (row.subRows.length) {
103117
+ row.subRows.forEach(handleRow);
103118
+ }
103119
+ };
103120
+ paginatedRowModel.rows.forEach(handleRow);
103121
+ return paginatedRowModel;
103122
+ }, getMemoOptions(table.options, 'debugTable', 'getPaginationRowModel'));
103123
+ }
103124
+
103064
103125
  function getSortedRowModel() {
103065
103126
  return table => memo(() => [table.getState().sorting, table.getPreSortedRowModel()], (sorting, rowModel) => {
103066
103127
  if (!rowModel.rows.length || !(sorting != null && sorting.length)) {
@@ -103216,36 +103277,86 @@ function useReactTable(options) {
103216
103277
  return tableRef.current;
103217
103278
  }
103218
103279
 
103219
- function styleInject(css, ref) {
103220
- if ( ref === void 0 ) ref = {};
103221
- var insertAt = ref.insertAt;
103222
-
103223
- if (!css || typeof document === 'undefined') { return; }
103224
-
103225
- var head = document.head || document.getElementsByTagName('head')[0];
103226
- var style = document.createElement('style');
103227
- style.type = 'text/css';
103228
-
103229
- if (insertAt === 'top') {
103230
- if (head.firstChild) {
103231
- head.insertBefore(style, head.firstChild);
103232
- } else {
103233
- head.appendChild(style);
103280
+ var pagesShownInControls = 7;
103281
+ function Pagination(_a) {
103282
+ var _b = _a.size, size = _b === void 0 ? "sm" : _b, _c = _a.showDetails, showDetails = _c === void 0 ? true : _c, _d = _a.showPageButtons, showPageButtons = _d === void 0 ? true : _d, rowCount = _a.rowCount, pagination = _a.pagination, setPagination = _a.setPagination;
103283
+ // pageIndex is 0-based
103284
+ var pageIndex = pagination.pageIndex, pageSize = pagination.pageSize;
103285
+ var numPages = Math.ceil(rowCount / pageSize);
103286
+ var canNextPage = pagination.pageIndex < numPages - 1;
103287
+ var canPreviousPage = pageIndex > 0;
103288
+ var nextPage = function () { return setPagination({ pageSize: pageSize, pageIndex: pageIndex + 1 }); };
103289
+ var previousPage = function () {
103290
+ return setPagination({ pageSize: pageSize, pageIndex: pageIndex - 1 });
103291
+ };
103292
+ var controlsAreHidden = Boolean(numPages <= 1);
103293
+ var firstItemOnPageIndex = pageIndex * pageSize + 1;
103294
+ var lastItemOnPageIndex = rowCount > (pageIndex + 1) * pageSize
103295
+ ? (pageIndex + 1) * pageSize
103296
+ : rowCount;
103297
+ var onPaginationButtonClick = React.useCallback(function (pageIndex) {
103298
+ setPagination({ pageSize: pageSize, pageIndex: pageIndex });
103299
+ }, [pageIndex, setPagination]);
103300
+ var pageButtons = getPageButtons(pageIndex, numPages, pagesShownInControls, onPaginationButtonClick, size);
103301
+ return (React.createElement("div", { className: classNames("s-flex s-w-full s-items-center", controlsAreHidden ? "s-justify-end" : "s-justify-between") },
103302
+ React.createElement("div", { className: classNames("s-flex", controlsAreHidden ? "s-invisible" : "s-visible", showPageButtons ? "s-gap-0" : "s-gap-2") },
103303
+ React.createElement(Button, { variant: "tertiary", size: size === "xs" ? "xs" : "sm", label: "previous", labelVisible: false, disabledTooltip: true, disabled: !canPreviousPage, icon: SvgChevronLeft$1, onClick: previousPage }),
103304
+ React.createElement("div", { className: classNames("s-items-center", size === "xs" ? "s-gap-3 s-px-3" : "s-gap-4 s-px-4", showPageButtons ? "s-flex" : "s-hidden") }, pageButtons),
103305
+ React.createElement(Button, { variant: "tertiary", size: size === "xs" ? "xs" : "sm", label: "next", labelVisible: false, disabledTooltip: true, disabled: !canNextPage, icon: SvgChevronRight$1, onClick: nextPage })),
103306
+ React.createElement("span", { className: classNames("s-text-slate-400", size === "xs" ? "s-text-xs" : "s-text-sm", showDetails ? "s-visible" : "s-collapse") }, controlsAreHidden
103307
+ ? "".concat(rowCount, " items")
103308
+ : "Showing ".concat(firstItemOnPageIndex, "-").concat(lastItemOnPageIndex, " of ").concat(rowCount, " items"))));
103309
+ }
103310
+ function renderPageNumber(pageNumber, currentPage, onPageClick, size) {
103311
+ return (React.createElement("button", { key: pageNumber, className: classNames("s-font-semibold s-transition-colors s-duration-100", currentPage === pageNumber ? "s-text-action-500" : "s-text-slate-400", size === "xs" ? "s-text-xs" : "s-text-sm"), onClick: function () { return onPageClick(pageNumber); } }, pageNumber + 1));
103312
+ }
103313
+ function renderEllipses(size) {
103314
+ return (React.createElement("span", { className: classNames("s-text-sm s-font-semibold s-text-slate-400", size === "xs" ? "s-text-xs" : "s-text-sm") }, "..."));
103315
+ }
103316
+ function getPageButtons(currentPage, totalPages, slots, onPageClick, size) {
103317
+ var pagination = [];
103318
+ // If total pages are less than or equal to slots, show all pages
103319
+ if (totalPages <= slots) {
103320
+ for (var i = 0; i < totalPages; i++) {
103321
+ pagination.push(renderPageNumber(i, currentPage, onPageClick, size));
103322
+ }
103323
+ return pagination;
103234
103324
  }
103235
- } else {
103236
- head.appendChild(style);
103237
- }
103238
-
103239
- if (style.styleSheet) {
103240
- style.styleSheet.cssText = css;
103241
- } else {
103242
- style.appendChild(document.createTextNode(css));
103243
- }
103325
+ var remainingSlots = slots - 2; // slots excluding first and last page
103326
+ var halfSlots = Math.floor(remainingSlots / 2);
103327
+ // Ensure current page is within bounds
103328
+ currentPage = Math.max(0, Math.min(currentPage, totalPages - 1));
103329
+ pagination.push(renderPageNumber(0, currentPage, onPageClick, size)); // Always show the first page
103330
+ // Determine the range of pages to display
103331
+ var start, end;
103332
+ if (currentPage <= halfSlots + 1) {
103333
+ start = 1;
103334
+ end = remainingSlots - 1;
103335
+ }
103336
+ else if (currentPage >= totalPages - halfSlots - 2) {
103337
+ start = totalPages - remainingSlots;
103338
+ end = totalPages - 2;
103339
+ }
103340
+ else {
103341
+ start = currentPage - halfSlots + 1;
103342
+ end = currentPage + halfSlots - 1;
103343
+ }
103344
+ // Add ellipsis if there is a gap between the first page and the start of the range
103345
+ if (start > 1) {
103346
+ pagination.push(renderEllipses(size));
103347
+ }
103348
+ // Add the range of pages
103349
+ for (var i = start; i <= end; i++) {
103350
+ pagination.push(renderPageNumber(i, currentPage, onPageClick, size));
103351
+ }
103352
+ // Add ellipsis if there is a gap between the end of the range and the last page
103353
+ if (end < totalPages - 2) {
103354
+ pagination.push(renderEllipses(size));
103355
+ }
103356
+ pagination.push(renderPageNumber(totalPages - 1, currentPage, onPageClick, size)); // Always show the last page
103357
+ return pagination;
103244
103358
  }
103245
103359
 
103246
- var css_248z = "/*\n! tailwindcss v3.3.2 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n5. Use the user's configured `sans` font-feature-settings by default.\n6. Use the user's configured `sans` font-variation-settings by default.\n*/\n\nhtml {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: 'darkmode-off-cc', sans-serif; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font family by default.\n2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. 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)\n2. 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)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n\n[type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n border-radius: 0px;\n padding-top: 0.5rem;\n padding-right: 0.75rem;\n padding-bottom: 0.5rem;\n padding-left: 0.75rem;\n font-size: 1rem;\n line-height: 1.5rem;\n --tw-shadow: 0 0 #0000;\n}\n\n[type='text']:focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #2563eb;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n border-color: #2563eb;\n}\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n color: #6b7280;\n opacity: 1;\n}\n\ninput::placeholder,textarea::placeholder {\n color: #6b7280;\n opacity: 1;\n}\n\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n}\n\n::-webkit-date-and-time-value {\n min-height: 1.5em;\n}\n\n::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field {\n padding-top: 0;\n padding-bottom: 0;\n}\n\nselect {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e\");\n background-position: right 0.5rem center;\n background-repeat: no-repeat;\n background-size: 1.5em 1.5em;\n padding-right: 2.5rem;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n}\n\n[multiple] {\n background-image: initial;\n background-position: initial;\n background-repeat: unset;\n background-size: initial;\n padding-right: 0.75rem;\n -webkit-print-color-adjust: unset;\n print-color-adjust: unset;\n}\n\n[type='checkbox'],[type='radio'] {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n padding: 0;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n display: inline-block;\n vertical-align: middle;\n background-origin: border-box;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n flex-shrink: 0;\n height: 1rem;\n width: 1rem;\n color: #2563eb;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n --tw-shadow: 0 0 #0000;\n}\n\n[type='checkbox'] {\n border-radius: 0px;\n}\n\n[type='radio'] {\n border-radius: 100%;\n}\n\n[type='checkbox']:focus,[type='radio']:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #2563eb;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n\n[type='checkbox']:checked,[type='radio']:checked {\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n\n[type='checkbox']:checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n}\n\n[type='radio']:checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n}\n\n[type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n\n[type='checkbox']:indeterminate {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e\");\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n\n[type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n\n[type='file'] {\n background: unset;\n border-color: inherit;\n border-width: 0;\n border-radius: 0;\n padding: 0;\n font-size: unset;\n line-height: inherit;\n}\n\n[type='file']:focus {\n outline: 1px solid ButtonText;\n outline: 1px auto -webkit-focus-ring-color;\n}\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.s-form-checkbox,.s-form-radio {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n padding: 0;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n display: inline-block;\n vertical-align: middle;\n background-origin: border-box;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n flex-shrink: 0;\n height: 1rem;\n width: 1rem;\n color: #2563eb;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n --tw-shadow: 0 0 #0000;\n}\n.s-form-radio {\n border-radius: 100%;\n}\n.s-form-checkbox:focus,.s-form-radio:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #2563eb;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n.s-form-checkbox:checked,.s-form-radio:checked {\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n.s-form-radio:checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n}\n.s-form-checkbox:checked:hover,.s-form-checkbox:checked:focus,.s-form-radio:checked:hover,.s-form-radio:checked:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n.s-sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n.s-pointer-events-none {\n pointer-events: none;\n}\n.s-pointer-events-auto {\n pointer-events: auto;\n}\n.s-visible {\n visibility: visible;\n}\n.s-invisible {\n visibility: hidden;\n}\n.s-collapse {\n visibility: collapse;\n}\n.s-fixed {\n position: fixed;\n}\n.s-absolute {\n position: absolute;\n}\n.s-relative {\n position: relative;\n}\n.s-inset-0 {\n inset: 0px;\n}\n.s-inset-y-0 {\n top: 0px;\n bottom: 0px;\n}\n.s-bottom-0 {\n bottom: 0px;\n}\n.s-bottom-6 {\n bottom: 1.5rem;\n}\n.s-bottom-full {\n bottom: 100%;\n}\n.s-left-0 {\n left: 0px;\n}\n.s-left-1\\/2 {\n left: 50%;\n}\n.s-right-0 {\n right: 0px;\n}\n.s-right-16 {\n right: 4rem;\n}\n.s-top-0 {\n top: 0px;\n}\n.s-top-full {\n top: 100%;\n}\n.s-z-0 {\n z-index: 0;\n}\n.s-z-10 {\n z-index: 10;\n}\n.s-z-30 {\n z-index: 30;\n}\n.s-z-50 {\n z-index: 50;\n}\n.s-m-0 {\n margin: 0px;\n}\n.s-m-px {\n margin: 1px;\n}\n.s-mx-2 {\n margin-left: 0.5rem;\n margin-right: 0.5rem;\n}\n.s-mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n.s-my-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n}\n.s-my-6 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n}\n.-s-mr-1 {\n margin-right: -0.25rem;\n}\n.-s-mt-1 {\n margin-top: -0.25rem;\n}\n.-s-mt-2 {\n margin-top: -0.5rem;\n}\n.s-mb-0 {\n margin-bottom: 0px;\n}\n.s-mb-0\\.5 {\n margin-bottom: 0.125rem;\n}\n.s-mb-1 {\n margin-bottom: 0.25rem;\n}\n.s-mb-2 {\n margin-bottom: 0.5rem;\n}\n.s-ml-1 {\n margin-left: 0.25rem;\n}\n.s-ml-2 {\n margin-left: 0.5rem;\n}\n.s-ml-auto {\n margin-left: auto;\n}\n.s-mr-1 {\n margin-right: 0.25rem;\n}\n.s-mr-1\\.5 {\n margin-right: 0.375rem;\n}\n.s-mr-2 {\n margin-right: 0.5rem;\n}\n.s-mt-0 {\n margin-top: 0px;\n}\n.s-mt-0\\.5 {\n margin-top: 0.125rem;\n}\n.s-mt-14 {\n margin-top: 3.5rem;\n}\n.s-mt-16 {\n margin-top: 4rem;\n}\n.s-mt-2 {\n margin-top: 0.5rem;\n}\n.s-mt-4 {\n margin-top: 1rem;\n}\n.s-box-border {\n box-sizing: border-box;\n}\n.s-line-clamp-1 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n}\n.s-line-clamp-2 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n}\n.s-line-clamp-3 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 3;\n}\n.s-block {\n display: block;\n}\n.s-inline-block {\n display: inline-block;\n}\n.s-flex {\n display: flex;\n}\n.s-inline-flex {\n display: inline-flex;\n}\n.s-grid {\n display: grid;\n}\n.s-hidden {\n display: none;\n}\n.s-h-1\\/2 {\n height: 50%;\n}\n.s-h-10 {\n height: 2.5rem;\n}\n.s-h-12 {\n height: 3rem;\n}\n.s-h-16 {\n height: 4rem;\n}\n.s-h-20 {\n height: 5rem;\n}\n.s-h-3 {\n height: 0.75rem;\n}\n.s-h-36 {\n height: 9rem;\n}\n.s-h-4 {\n height: 1rem;\n}\n.s-h-40 {\n height: 10rem;\n}\n.s-h-44 {\n height: 11rem;\n}\n.s-h-5 {\n height: 1.25rem;\n}\n.s-h-6 {\n height: 1.5rem;\n}\n.s-h-7 {\n height: 1.75rem;\n}\n.s-h-72 {\n height: 18rem;\n}\n.s-h-8 {\n height: 2rem;\n}\n.s-h-9 {\n height: 2.25rem;\n}\n.s-h-96 {\n height: 24rem;\n}\n.s-h-\\[100vh\\] {\n height: 100vh;\n}\n.s-h-\\[26px\\] {\n height: 26px;\n}\n.s-h-\\[34px\\] {\n height: 34px;\n}\n.s-h-\\[46px\\] {\n height: 46px;\n}\n.s-h-full {\n height: 100%;\n}\n.s-h-px {\n height: 1px;\n}\n.s-max-h-\\[344px\\] {\n max-height: 344px;\n}\n.s-max-h-full {\n max-height: 100%;\n}\n.s-min-h-16 {\n min-height: 4rem;\n}\n.s-min-h-20 {\n min-height: 5rem;\n}\n.s-min-h-60 {\n min-height: 15rem;\n}\n.s-min-h-96 {\n min-height: 24rem;\n}\n.s-min-h-full {\n min-height: 100%;\n}\n.s-w-0 {\n width: 0px;\n}\n.s-w-0\\.5 {\n width: 0.125rem;\n}\n.s-w-1 {\n width: 0.25rem;\n}\n.s-w-1\\/2 {\n width: 50%;\n}\n.s-w-10 {\n width: 2.5rem;\n}\n.s-w-12 {\n width: 3rem;\n}\n.s-w-14 {\n width: 3.5rem;\n}\n.s-w-16 {\n width: 4rem;\n}\n.s-w-20 {\n width: 5rem;\n}\n.s-w-32 {\n width: 8rem;\n}\n.s-w-36 {\n width: 9rem;\n}\n.s-w-4 {\n width: 1rem;\n}\n.s-w-40 {\n width: 10rem;\n}\n.s-w-44 {\n width: 11rem;\n}\n.s-w-48 {\n width: 12rem;\n}\n.s-w-5 {\n width: 1.25rem;\n}\n.s-w-6 {\n width: 1.5rem;\n}\n.s-w-60 {\n width: 15rem;\n}\n.s-w-64 {\n width: 16rem;\n}\n.s-w-8 {\n width: 2rem;\n}\n.s-w-\\[320px\\] {\n width: 320px;\n}\n.s-w-\\[38em\\] {\n width: 38em;\n}\n.s-w-auto {\n width: auto;\n}\n.s-w-fit {\n width: -moz-fit-content;\n width: fit-content;\n}\n.s-w-full {\n width: 100%;\n}\n.s-w-screen {\n width: 100vw;\n}\n.s-min-w-0 {\n min-width: 0px;\n}\n.s-max-w-4xl {\n max-width: 56rem;\n}\n.s-max-w-\\[380px\\] {\n max-width: 380px;\n}\n.s-max-w-\\[400px\\] {\n max-width: 400px;\n}\n.s-max-w-\\[500px\\] {\n max-width: 500px;\n}\n.s-max-w-full {\n max-width: 100%;\n}\n.s-max-w-lg {\n max-width: 32rem;\n}\n.s-max-w-xs {\n max-width: 20rem;\n}\n.s-flex-1 {\n flex: 1 1 0%;\n}\n.s-flex-none {\n flex: none;\n}\n.s-flex-shrink-0 {\n flex-shrink: 0;\n}\n.s-shrink {\n flex-shrink: 1;\n}\n.s-shrink-0 {\n flex-shrink: 0;\n}\n.s-flex-grow {\n flex-grow: 1;\n}\n.s-grow {\n flex-grow: 1;\n}\n.s-basis-0 {\n flex-basis: 0px;\n}\n.s-border-collapse {\n border-collapse: collapse;\n}\n.s-origin-bottom-left {\n transform-origin: bottom left;\n}\n.s-origin-bottom-right {\n transform-origin: bottom right;\n}\n.s-origin-top-left {\n transform-origin: top left;\n}\n.s-origin-top-right {\n transform-origin: top right;\n}\n.-s-translate-x-1\\/2 {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.-s-translate-y-0 {\n --tw-translate-y: -0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.-s-translate-y-5 {\n --tw-translate-y: -1.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-x-0 {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-x-16 {\n --tw-translate-x: 4rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-x-\\[14px\\] {\n --tw-translate-x: 14px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-x-\\[22px\\] {\n --tw-translate-x: 22px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-x-\\[2px\\] {\n --tw-translate-x: 2px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-y-0 {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-y-2 {\n --tw-translate-y: 0.5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-y-4 {\n --tw-translate-y: 1rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-translate-y-5 {\n --tw-translate-y: 1.25rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-scale-100 {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-scale-95 {\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.s-animate-\\[bgblink_500ms_3\\] {\n animation: bgblink 500ms 3;\n}\n@keyframes s-breathing {\n\n 0%, 100% {\n filter: brightness(105%);\n }\n\n 50% {\n filter: brightness(80%);\n }\n}\n.s-animate-breathing {\n animation: s-breathing 3s infinite ease-in-out;\n}\n@keyframes s-breathing-scale {\n\n 0%, 100% {\n filter: brightness(105%);\n transform: scale(1.0);\n }\n\n 50% {\n filter: brightness(97%);\n transform: scale(0.95);\n }\n}\n.s-animate-breathing-scale {\n animation: s-breathing-scale 3s infinite ease-in-out;\n}\n.s-cursor-default {\n cursor: default;\n}\n.s-cursor-not-allowed {\n cursor: not-allowed;\n}\n.s-cursor-pointer {\n cursor: pointer;\n}\n.s-select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n.s-resize-y {\n resize: vertical;\n}\n.s-list-decimal {\n list-style-type: decimal;\n}\n.s-list-disc {\n list-style-type: disc;\n}\n.s-grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.s-grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n}\n.s-grid-cols-8 {\n grid-template-columns: repeat(8, minmax(0, 1fr));\n}\n.s-grid-rows-2 {\n grid-template-rows: repeat(2, minmax(0, 1fr));\n}\n.s-grid-rows-3 {\n grid-template-rows: repeat(3, minmax(0, 1fr));\n}\n.s-grid-rows-4 {\n grid-template-rows: repeat(4, minmax(0, 1fr));\n}\n.s-grid-rows-5 {\n grid-template-rows: repeat(5, minmax(0, 1fr));\n}\n.s-flex-row {\n flex-direction: row;\n}\n.s-flex-col {\n flex-direction: column;\n}\n.s-flex-wrap {\n flex-wrap: wrap;\n}\n.s-flex-nowrap {\n flex-wrap: nowrap;\n}\n.s-items-start {\n align-items: flex-start;\n}\n.s-items-end {\n align-items: flex-end;\n}\n.s-items-center {\n align-items: center;\n}\n.s-items-baseline {\n align-items: baseline;\n}\n.s-items-stretch {\n align-items: stretch;\n}\n.s-justify-start {\n justify-content: flex-start;\n}\n.s-justify-end {\n justify-content: flex-end;\n}\n.s-justify-center {\n justify-content: center;\n}\n.s-justify-between {\n justify-content: space-between;\n}\n.s-justify-stretch {\n justify-content: stretch;\n}\n.s-justify-items-center {\n justify-items: center;\n}\n.s-gap-0 {\n gap: 0px;\n}\n.s-gap-0\\.5 {\n gap: 0.125rem;\n}\n.s-gap-1 {\n gap: 0.25rem;\n}\n.s-gap-1\\.5 {\n gap: 0.375rem;\n}\n.s-gap-10 {\n gap: 2.5rem;\n}\n.s-gap-12 {\n gap: 3rem;\n}\n.s-gap-16 {\n gap: 4rem;\n}\n.s-gap-2 {\n gap: 0.5rem;\n}\n.s-gap-2\\.5 {\n gap: 0.625rem;\n}\n.s-gap-20 {\n gap: 5rem;\n}\n.s-gap-3 {\n gap: 0.75rem;\n}\n.s-gap-4 {\n gap: 1rem;\n}\n.s-gap-5 {\n gap: 1.25rem;\n}\n.s-gap-6 {\n gap: 1.5rem;\n}\n.s-gap-8 {\n gap: 2rem;\n}\n.s-gap-x-1 {\n -moz-column-gap: 0.25rem;\n column-gap: 0.25rem;\n}\n.s-gap-x-1\\.5 {\n -moz-column-gap: 0.375rem;\n column-gap: 0.375rem;\n}\n.s-gap-x-2 {\n -moz-column-gap: 0.5rem;\n column-gap: 0.5rem;\n}\n.s-gap-x-3 {\n -moz-column-gap: 0.75rem;\n column-gap: 0.75rem;\n}\n.s-gap-x-4 {\n -moz-column-gap: 1rem;\n column-gap: 1rem;\n}\n.s-gap-y-2 {\n row-gap: 0.5rem;\n}\n.s-gap-y-3 {\n row-gap: 0.75rem;\n}\n.s-gap-y-96 {\n row-gap: 24rem;\n}\n.s-space-x-0 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0px * var(--tw-space-x-reverse));\n margin-left: calc(0px * calc(1 - var(--tw-space-x-reverse)));\n}\n.s-space-x-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.25rem * var(--tw-space-x-reverse));\n margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.s-space-y-4 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(1rem * var(--tw-space-y-reverse));\n}\n.s-self-center {\n align-self: center;\n}\n.s-overflow-auto {\n overflow: auto;\n}\n.s-overflow-hidden {\n overflow: hidden;\n}\n.s-overflow-visible {\n overflow: visible;\n}\n.s-overflow-x-auto {\n overflow-x: auto;\n}\n.s-overflow-y-auto {\n overflow-y: auto;\n}\n.s-overflow-x-hidden {\n overflow-x: hidden;\n}\n.s-overflow-y-hidden {\n overflow-y: hidden;\n}\n.s-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.s-text-ellipsis {\n text-overflow: ellipsis;\n}\n.s-whitespace-nowrap {\n white-space: nowrap;\n}\n.s-whitespace-pre-wrap {\n white-space: pre-wrap;\n}\n.s-break-words {\n overflow-wrap: break-word;\n}\n.s-rounded {\n border-radius: 0.25rem;\n}\n.s-rounded-2xl {\n border-radius: 1rem;\n}\n.s-rounded-3xl {\n border-radius: 1.5rem;\n}\n.s-rounded-\\[24px\\] {\n border-radius: 24px;\n}\n.s-rounded-\\[28px\\] {\n border-radius: 28px;\n}\n.s-rounded-\\[30\\%\\] {\n border-radius: 30%;\n}\n.s-rounded-\\[30px\\] {\n border-radius: 30px;\n}\n.s-rounded-\\[32px\\] {\n border-radius: 32px;\n}\n.s-rounded-\\[38px\\] {\n border-radius: 38px;\n}\n.s-rounded-full {\n border-radius: 9999px;\n}\n.s-rounded-lg {\n border-radius: 0.5rem;\n}\n.s-rounded-md {\n border-radius: 0.375rem;\n}\n.s-rounded-xl {\n border-radius: 0.75rem;\n}\n.s-border {\n border-width: 1px;\n}\n.s-border-0 {\n border-width: 0px;\n}\n.s-border-b {\n border-bottom-width: 1px;\n}\n.s-border-b-2 {\n border-bottom-width: 2px;\n}\n.s-border-t {\n border-top-width: 1px;\n}\n.s-border-action-200 {\n --tw-border-opacity: 1;\n border-color: rgb(191 219 254 / var(--tw-border-opacity));\n}\n.s-border-action-500 {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n.s-border-action-600 {\n --tw-border-opacity: 1;\n border-color: rgb(37 99 235 / var(--tw-border-opacity));\n}\n.s-border-amber-200 {\n --tw-border-opacity: 1;\n border-color: rgb(253 230 138 / var(--tw-border-opacity));\n}\n.s-border-blue-200 {\n --tw-border-opacity: 1;\n border-color: rgb(191 219 254 / var(--tw-border-opacity));\n}\n.s-border-cyan-200 {\n --tw-border-opacity: 1;\n border-color: rgb(165 243 252 / var(--tw-border-opacity));\n}\n.s-border-element-600 {\n --tw-border-opacity: 1;\n border-color: rgb(148 163 184 / var(--tw-border-opacity));\n}\n.s-border-emerald-200 {\n --tw-border-opacity: 1;\n border-color: rgb(167 243 208 / var(--tw-border-opacity));\n}\n.s-border-fuchsia-200 {\n --tw-border-opacity: 1;\n border-color: rgb(245 208 254 / var(--tw-border-opacity));\n}\n.s-border-gray-200 {\n --tw-border-opacity: 1;\n border-color: rgb(229 231 235 / var(--tw-border-opacity));\n}\n.s-border-green-200 {\n --tw-border-opacity: 1;\n border-color: rgb(187 247 208 / var(--tw-border-opacity));\n}\n.s-border-indigo-200 {\n --tw-border-opacity: 1;\n border-color: rgb(199 210 254 / var(--tw-border-opacity));\n}\n.s-border-lime-200 {\n --tw-border-opacity: 1;\n border-color: rgb(217 249 157 / var(--tw-border-opacity));\n}\n.s-border-orange-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 215 170 / var(--tw-border-opacity));\n}\n.s-border-pink-100 {\n --tw-border-opacity: 1;\n border-color: rgb(252 231 243 / var(--tw-border-opacity));\n}\n.s-border-pink-200 {\n --tw-border-opacity: 1;\n border-color: rgb(251 207 232 / var(--tw-border-opacity));\n}\n.s-border-purple-200 {\n --tw-border-opacity: 1;\n border-color: rgb(233 213 255 / var(--tw-border-opacity));\n}\n.s-border-red-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 202 202 / var(--tw-border-opacity));\n}\n.s-border-red-500 {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity));\n}\n.s-border-rose-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 205 211 / var(--tw-border-opacity));\n}\n.s-border-sky-200 {\n --tw-border-opacity: 1;\n border-color: rgb(186 230 253 / var(--tw-border-opacity));\n}\n.s-border-slate-200 {\n --tw-border-opacity: 1;\n border-color: rgb(226 232 240 / var(--tw-border-opacity));\n}\n.s-border-slate-950\\/10 {\n border-color: rgb(2 6 23 / 0.1);\n}\n.s-border-stone-200 {\n --tw-border-opacity: 1;\n border-color: rgb(231 229 228 / var(--tw-border-opacity));\n}\n.s-border-structure-0 {\n --tw-border-opacity: 1;\n border-color: rgb(255 255 255 / var(--tw-border-opacity));\n}\n.s-border-structure-100 {\n --tw-border-opacity: 1;\n border-color: rgb(241 245 249 / var(--tw-border-opacity));\n}\n.s-border-structure-100\\/0 {\n border-color: rgb(241 245 249 / 0);\n}\n.s-border-structure-200 {\n --tw-border-opacity: 1;\n border-color: rgb(226 232 240 / var(--tw-border-opacity));\n}\n.s-border-structure-200\\/0 {\n border-color: rgb(226 232 240 / 0);\n}\n.s-border-structure-300 {\n --tw-border-opacity: 1;\n border-color: rgb(203 213 225 / var(--tw-border-opacity));\n}\n.s-border-structure-300\\/30 {\n border-color: rgb(203 213 225 / 0.3);\n}\n.s-border-structure-50 {\n --tw-border-opacity: 1;\n border-color: rgb(248 250 252 / var(--tw-border-opacity));\n}\n.s-border-teal-200 {\n --tw-border-opacity: 1;\n border-color: rgb(153 246 228 / var(--tw-border-opacity));\n}\n.s-border-transparent {\n border-color: transparent;\n}\n.s-border-violet-200 {\n --tw-border-opacity: 1;\n border-color: rgb(221 214 254 / var(--tw-border-opacity));\n}\n.s-border-warning-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 202 202 / var(--tw-border-opacity));\n}\n.s-border-warning-600 {\n --tw-border-opacity: 1;\n border-color: rgb(220 38 38 / var(--tw-border-opacity));\n}\n.s-border-white\\/30 {\n border-color: rgb(255 255 255 / 0.3);\n}\n.s-border-yellow-200 {\n --tw-border-opacity: 1;\n border-color: rgb(254 240 138 / var(--tw-border-opacity));\n}\n.s-bg-action-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(219 234 254 / var(--tw-bg-opacity));\n}\n.s-bg-action-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(191 219 254 / var(--tw-bg-opacity));\n}\n.s-bg-action-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(147 197 253 / var(--tw-bg-opacity));\n}\n.s-bg-action-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(96 165 250 / var(--tw-bg-opacity));\n}\n.s-bg-action-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n.s-bg-action-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity));\n}\n.s-bg-action-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(29 78 216 / var(--tw-bg-opacity));\n}\n.s-bg-action-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(30 64 175 / var(--tw-bg-opacity));\n}\n.s-bg-amber-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 243 199 / var(--tw-bg-opacity));\n}\n.s-bg-amber-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(253 230 138 / var(--tw-bg-opacity));\n}\n.s-bg-amber-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(252 211 77 / var(--tw-bg-opacity));\n}\n.s-bg-amber-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(251 191 36 / var(--tw-bg-opacity));\n}\n.s-bg-amber-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(245 158 11 / var(--tw-bg-opacity));\n}\n.s-bg-amber-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(217 119 6 / var(--tw-bg-opacity));\n}\n.s-bg-amber-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(180 83 9 / var(--tw-bg-opacity));\n}\n.s-bg-amber-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(146 64 14 / var(--tw-bg-opacity));\n}\n.s-bg-black\\/70 {\n background-color: rgb(0 0 0 / 0.7);\n}\n.s-bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(219 234 254 / var(--tw-bg-opacity));\n}\n.s-bg-blue-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(191 219 254 / var(--tw-bg-opacity));\n}\n.s-bg-blue-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(147 197 253 / var(--tw-bg-opacity));\n}\n.s-bg-blue-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(96 165 250 / var(--tw-bg-opacity));\n}\n.s-bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n.s-bg-blue-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity));\n}\n.s-bg-blue-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(29 78 216 / var(--tw-bg-opacity));\n}\n.s-bg-blue-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(30 64 175 / var(--tw-bg-opacity));\n}\n.s-bg-brand {\n --tw-bg-opacity: 1;\n background-color: rgb(16 185 129 / var(--tw-bg-opacity));\n}\n.s-bg-cyan-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(207 250 254 / var(--tw-bg-opacity));\n}\n.s-bg-cyan-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(165 243 252 / var(--tw-bg-opacity));\n}\n.s-bg-cyan-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(103 232 249 / var(--tw-bg-opacity));\n}\n.s-bg-cyan-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(34 211 238 / var(--tw-bg-opacity));\n}\n.s-bg-cyan-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(6 182 212 / var(--tw-bg-opacity));\n}\n.s-bg-cyan-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(8 145 178 / var(--tw-bg-opacity));\n}\n.s-bg-cyan-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(14 116 144 / var(--tw-bg-opacity));\n}\n.s-bg-cyan-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(21 94 117 / var(--tw-bg-opacity));\n}\n.s-bg-element-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(203 213 225 / var(--tw-bg-opacity));\n}\n.s-bg-element-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(100 116 139 / var(--tw-bg-opacity));\n}\n.s-bg-emerald-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 250 229 / var(--tw-bg-opacity));\n}\n.s-bg-emerald-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(167 243 208 / var(--tw-bg-opacity));\n}\n.s-bg-emerald-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(110 231 183 / var(--tw-bg-opacity));\n}\n.s-bg-emerald-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(52 211 153 / var(--tw-bg-opacity));\n}\n.s-bg-emerald-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(16 185 129 / var(--tw-bg-opacity));\n}\n.s-bg-emerald-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(5 150 105 / var(--tw-bg-opacity));\n}\n.s-bg-emerald-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(4 120 87 / var(--tw-bg-opacity));\n}\n.s-bg-emerald-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(6 95 70 / var(--tw-bg-opacity));\n}\n.s-bg-fuchsia-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(250 232 255 / var(--tw-bg-opacity));\n}\n.s-bg-fuchsia-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(245 208 254 / var(--tw-bg-opacity));\n}\n.s-bg-fuchsia-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(240 171 252 / var(--tw-bg-opacity));\n}\n.s-bg-fuchsia-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(232 121 249 / var(--tw-bg-opacity));\n}\n.s-bg-fuchsia-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(217 70 239 / var(--tw-bg-opacity));\n}\n.s-bg-fuchsia-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(192 38 211 / var(--tw-bg-opacity));\n}\n.s-bg-fuchsia-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(162 28 175 / var(--tw-bg-opacity));\n}\n.s-bg-fuchsia-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(134 25 143 / var(--tw-bg-opacity));\n}\n.s-bg-gray-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 244 246 / var(--tw-bg-opacity));\n}\n.s-bg-gray-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(229 231 235 / var(--tw-bg-opacity));\n}\n.s-bg-gray-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(209 213 219 / var(--tw-bg-opacity));\n}\n.s-bg-gray-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(156 163 175 / var(--tw-bg-opacity));\n}\n.s-bg-gray-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(107 114 128 / var(--tw-bg-opacity));\n}\n.s-bg-gray-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(75 85 99 / var(--tw-bg-opacity));\n}\n.s-bg-gray-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(55 65 81 / var(--tw-bg-opacity));\n}\n.s-bg-gray-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(31 41 55 / var(--tw-bg-opacity));\n}\n.s-bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 252 231 / var(--tw-bg-opacity));\n}\n.s-bg-green-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(187 247 208 / var(--tw-bg-opacity));\n}\n.s-bg-green-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(134 239 172 / var(--tw-bg-opacity));\n}\n.s-bg-green-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(74 222 128 / var(--tw-bg-opacity));\n}\n.s-bg-green-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(34 197 94 / var(--tw-bg-opacity));\n}\n.s-bg-green-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(22 163 74 / var(--tw-bg-opacity));\n}\n.s-bg-green-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(21 128 61 / var(--tw-bg-opacity));\n}\n.s-bg-green-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(22 101 52 / var(--tw-bg-opacity));\n}\n.s-bg-indigo-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(224 231 255 / var(--tw-bg-opacity));\n}\n.s-bg-indigo-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(199 210 254 / var(--tw-bg-opacity));\n}\n.s-bg-indigo-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(165 180 252 / var(--tw-bg-opacity));\n}\n.s-bg-indigo-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(129 140 248 / var(--tw-bg-opacity));\n}\n.s-bg-indigo-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(99 102 241 / var(--tw-bg-opacity));\n}\n.s-bg-indigo-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(79 70 229 / var(--tw-bg-opacity));\n}\n.s-bg-indigo-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(67 56 202 / var(--tw-bg-opacity));\n}\n.s-bg-indigo-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(55 48 163 / var(--tw-bg-opacity));\n}\n.s-bg-lime-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(236 252 203 / var(--tw-bg-opacity));\n}\n.s-bg-lime-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(217 249 157 / var(--tw-bg-opacity));\n}\n.s-bg-lime-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(190 242 100 / var(--tw-bg-opacity));\n}\n.s-bg-lime-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(163 230 53 / var(--tw-bg-opacity));\n}\n.s-bg-lime-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(132 204 22 / var(--tw-bg-opacity));\n}\n.s-bg-lime-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(101 163 13 / var(--tw-bg-opacity));\n}\n.s-bg-lime-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(77 124 15 / var(--tw-bg-opacity));\n}\n.s-bg-lime-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(63 98 18 / var(--tw-bg-opacity));\n}\n.s-bg-orange-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 237 213 / var(--tw-bg-opacity));\n}\n.s-bg-orange-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 215 170 / var(--tw-bg-opacity));\n}\n.s-bg-orange-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(253 186 116 / var(--tw-bg-opacity));\n}\n.s-bg-orange-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(251 146 60 / var(--tw-bg-opacity));\n}\n.s-bg-orange-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 115 22 / var(--tw-bg-opacity));\n}\n.s-bg-orange-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(234 88 12 / var(--tw-bg-opacity));\n}\n.s-bg-orange-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(194 65 12 / var(--tw-bg-opacity));\n}\n.s-bg-orange-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(154 52 18 / var(--tw-bg-opacity));\n}\n.s-bg-pink-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(252 231 243 / var(--tw-bg-opacity));\n}\n.s-bg-pink-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(251 207 232 / var(--tw-bg-opacity));\n}\n.s-bg-pink-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(249 168 212 / var(--tw-bg-opacity));\n}\n.s-bg-pink-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(244 114 182 / var(--tw-bg-opacity));\n}\n.s-bg-pink-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(253 242 248 / var(--tw-bg-opacity));\n}\n.s-bg-pink-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(236 72 153 / var(--tw-bg-opacity));\n}\n.s-bg-pink-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(219 39 119 / var(--tw-bg-opacity));\n}\n.s-bg-pink-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(190 24 93 / var(--tw-bg-opacity));\n}\n.s-bg-pink-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(157 23 77 / var(--tw-bg-opacity));\n}\n.s-bg-purple-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(243 232 255 / var(--tw-bg-opacity));\n}\n.s-bg-purple-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(233 213 255 / var(--tw-bg-opacity));\n}\n.s-bg-purple-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(216 180 254 / var(--tw-bg-opacity));\n}\n.s-bg-purple-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(192 132 252 / var(--tw-bg-opacity));\n}\n.s-bg-purple-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(168 85 247 / var(--tw-bg-opacity));\n}\n.s-bg-purple-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(147 51 234 / var(--tw-bg-opacity));\n}\n.s-bg-purple-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(126 34 206 / var(--tw-bg-opacity));\n}\n.s-bg-purple-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(107 33 168 / var(--tw-bg-opacity));\n}\n.s-bg-red-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 226 226 / var(--tw-bg-opacity));\n}\n.s-bg-red-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 202 202 / var(--tw-bg-opacity));\n}\n.s-bg-red-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(252 165 165 / var(--tw-bg-opacity));\n}\n.s-bg-red-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(248 113 113 / var(--tw-bg-opacity));\n}\n.s-bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity));\n}\n.s-bg-red-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 38 38 / var(--tw-bg-opacity));\n}\n.s-bg-red-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(185 28 28 / var(--tw-bg-opacity));\n}\n.s-bg-red-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(153 27 27 / var(--tw-bg-opacity));\n}\n.s-bg-rose-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 228 230 / var(--tw-bg-opacity));\n}\n.s-bg-rose-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 205 211 / var(--tw-bg-opacity));\n}\n.s-bg-rose-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(253 164 175 / var(--tw-bg-opacity));\n}\n.s-bg-rose-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(251 113 133 / var(--tw-bg-opacity));\n}\n.s-bg-rose-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(244 63 94 / var(--tw-bg-opacity));\n}\n.s-bg-rose-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(225 29 72 / var(--tw-bg-opacity));\n}\n.s-bg-rose-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(190 18 60 / var(--tw-bg-opacity));\n}\n.s-bg-rose-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(159 18 57 / var(--tw-bg-opacity));\n}\n.s-bg-sky-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(224 242 254 / var(--tw-bg-opacity));\n}\n.s-bg-sky-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(186 230 253 / var(--tw-bg-opacity));\n}\n.s-bg-sky-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(125 211 252 / var(--tw-bg-opacity));\n}\n.s-bg-sky-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(56 189 248 / var(--tw-bg-opacity));\n}\n.s-bg-sky-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(14 165 233 / var(--tw-bg-opacity));\n}\n.s-bg-sky-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(2 132 199 / var(--tw-bg-opacity));\n}\n.s-bg-sky-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(3 105 161 / var(--tw-bg-opacity));\n}\n.s-bg-sky-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(7 89 133 / var(--tw-bg-opacity));\n}\n.s-bg-slate-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(241 245 249 / var(--tw-bg-opacity));\n}\n.s-bg-slate-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(226 232 240 / var(--tw-bg-opacity));\n}\n.s-bg-slate-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(203 213 225 / var(--tw-bg-opacity));\n}\n.s-bg-slate-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(148 163 184 / var(--tw-bg-opacity));\n}\n.s-bg-slate-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(100 116 139 / var(--tw-bg-opacity));\n}\n.s-bg-slate-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(71 85 105 / var(--tw-bg-opacity));\n}\n.s-bg-slate-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(51 65 85 / var(--tw-bg-opacity));\n}\n.s-bg-slate-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity));\n}\n.s-bg-slate-900 {\n --tw-bg-opacity: 1;\n background-color: rgb(15 23 42 / var(--tw-bg-opacity));\n}\n.s-bg-slate-950\\/30 {\n background-color: rgb(2 6 23 / 0.3);\n}\n.s-bg-stone-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(245 245 244 / var(--tw-bg-opacity));\n}\n.s-bg-stone-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(231 229 228 / var(--tw-bg-opacity));\n}\n.s-bg-stone-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(214 211 209 / var(--tw-bg-opacity));\n}\n.s-bg-stone-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(168 162 158 / var(--tw-bg-opacity));\n}\n.s-bg-stone-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(120 113 108 / var(--tw-bg-opacity));\n}\n.s-bg-stone-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(87 83 78 / var(--tw-bg-opacity));\n}\n.s-bg-stone-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(68 64 60 / var(--tw-bg-opacity));\n}\n.s-bg-stone-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(41 37 36 / var(--tw-bg-opacity));\n}\n.s-bg-structure-0 {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n.s-bg-structure-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(241 245 249 / var(--tw-bg-opacity));\n}\n.s-bg-structure-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(226 232 240 / var(--tw-bg-opacity));\n}\n.s-bg-structure-50 {\n --tw-bg-opacity: 1;\n background-color: rgb(248 250 252 / var(--tw-bg-opacity));\n}\n.s-bg-structure-50\\/80 {\n background-color: rgb(248 250 252 / 0.8);\n}\n.s-bg-success-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(110 231 183 / var(--tw-bg-opacity));\n}\n.s-bg-teal-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(204 251 241 / var(--tw-bg-opacity));\n}\n.s-bg-teal-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(153 246 228 / var(--tw-bg-opacity));\n}\n.s-bg-teal-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(94 234 212 / var(--tw-bg-opacity));\n}\n.s-bg-teal-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(45 212 191 / var(--tw-bg-opacity));\n}\n.s-bg-teal-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(20 184 166 / var(--tw-bg-opacity));\n}\n.s-bg-teal-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(13 148 136 / var(--tw-bg-opacity));\n}\n.s-bg-teal-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(15 118 110 / var(--tw-bg-opacity));\n}\n.s-bg-teal-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(17 94 89 / var(--tw-bg-opacity));\n}\n.s-bg-violet-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(237 233 254 / var(--tw-bg-opacity));\n}\n.s-bg-violet-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(221 214 254 / var(--tw-bg-opacity));\n}\n.s-bg-violet-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(196 181 253 / var(--tw-bg-opacity));\n}\n.s-bg-violet-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(167 139 250 / var(--tw-bg-opacity));\n}\n.s-bg-violet-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(139 92 246 / var(--tw-bg-opacity));\n}\n.s-bg-violet-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(124 58 237 / var(--tw-bg-opacity));\n}\n.s-bg-violet-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(109 40 217 / var(--tw-bg-opacity));\n}\n.s-bg-violet-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(91 33 182 / var(--tw-bg-opacity));\n}\n.s-bg-warning-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 226 226 / var(--tw-bg-opacity));\n}\n.s-bg-warning-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 202 202 / var(--tw-bg-opacity));\n}\n.s-bg-warning-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(252 165 165 / var(--tw-bg-opacity));\n}\n.s-bg-warning-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(248 113 113 / var(--tw-bg-opacity));\n}\n.s-bg-warning-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(239 68 68 / var(--tw-bg-opacity));\n}\n.s-bg-warning-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(220 38 38 / var(--tw-bg-opacity));\n}\n.s-bg-warning-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(185 28 28 / var(--tw-bg-opacity));\n}\n.s-bg-warning-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(153 27 27 / var(--tw-bg-opacity));\n}\n.s-bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n.s-bg-white\\/0 {\n background-color: rgb(255 255 255 / 0);\n}\n.s-bg-white\\/80 {\n background-color: rgb(255 255 255 / 0.8);\n}\n.s-bg-yellow-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 249 195 / var(--tw-bg-opacity));\n}\n.s-bg-yellow-200 {\n --tw-bg-opacity: 1;\n background-color: rgb(254 240 138 / var(--tw-bg-opacity));\n}\n.s-bg-yellow-300 {\n --tw-bg-opacity: 1;\n background-color: rgb(253 224 71 / var(--tw-bg-opacity));\n}\n.s-bg-yellow-400 {\n --tw-bg-opacity: 1;\n background-color: rgb(250 204 21 / var(--tw-bg-opacity));\n}\n.s-bg-yellow-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(234 179 8 / var(--tw-bg-opacity));\n}\n.s-bg-yellow-600 {\n --tw-bg-opacity: 1;\n background-color: rgb(202 138 4 / var(--tw-bg-opacity));\n}\n.s-bg-yellow-700 {\n --tw-bg-opacity: 1;\n background-color: rgb(161 98 7 / var(--tw-bg-opacity));\n}\n.s-bg-yellow-800 {\n --tw-bg-opacity: 1;\n background-color: rgb(133 77 14 / var(--tw-bg-opacity));\n}\n.s-bg-gradient-to-r {\n background-image: linear-gradient(to right, var(--tw-gradient-stops));\n}\n.s-bg-gradient-to-t {\n background-image: linear-gradient(to top, var(--tw-gradient-stops));\n}\n.s-from-amber-400 {\n --tw-gradient-from: #fbbf24 var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(251 191 36 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.s-from-blue-400 {\n --tw-gradient-from: #60a5fa var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(96 165 250 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.s-from-cyan-500 {\n --tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.s-from-emerald-400 {\n --tw-gradient-from: #34d399 var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(52 211 153 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.s-from-pink-400 {\n --tw-gradient-from: #f472b6 var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(244 114 182 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.s-from-sky-400 {\n --tw-gradient-from: #38bdf8 var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(56 189 248 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.s-from-stone-400 {\n --tw-gradient-from: #a8a29e var(--tw-gradient-from-position);\n --tw-gradient-to: rgb(168 162 158 / 0) var(--tw-gradient-to-position);\n --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);\n}\n.s-to-blue-400 {\n --tw-gradient-to: #60a5fa var(--tw-gradient-to-position);\n}\n.s-to-blue-500 {\n --tw-gradient-to: #3b82f6 var(--tw-gradient-to-position);\n}\n.s-to-green-400 {\n --tw-gradient-to: #4ade80 var(--tw-gradient-to-position);\n}\n.s-to-indigo-300 {\n --tw-gradient-to: #a5b4fc var(--tw-gradient-to-position);\n}\n.s-to-red-300 {\n --tw-gradient-to: #fca5a5 var(--tw-gradient-to-position);\n}\n.s-to-stone-300 {\n --tw-gradient-to: #d6d3d1 var(--tw-gradient-to-position);\n}\n.s-to-yellow-300 {\n --tw-gradient-to: #fde047 var(--tw-gradient-to-position);\n}\n.s-object-cover {\n -o-object-fit: cover;\n object-fit: cover;\n}\n.s-object-center {\n -o-object-position: center;\n object-position: center;\n}\n.s-p-0 {\n padding: 0px;\n}\n.s-p-10 {\n padding: 2.5rem;\n}\n.s-p-2 {\n padding: 0.5rem;\n}\n.s-p-2\\.5 {\n padding: 0.625rem;\n}\n.s-p-20 {\n padding: 5rem;\n}\n.s-p-3 {\n padding: 0.75rem;\n}\n.s-p-4 {\n padding: 1rem;\n}\n.s-p-5 {\n padding: 1.25rem;\n}\n.s-p-6 {\n padding: 1.5rem;\n}\n.s-p-8 {\n padding: 2rem;\n}\n.s-p-px {\n padding: 1px;\n}\n.s-px-0 {\n padding-left: 0px;\n padding-right: 0px;\n}\n.s-px-0\\.5 {\n padding-left: 0.125rem;\n padding-right: 0.125rem;\n}\n.s-px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n.s-px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n.s-px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.s-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.s-px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n.s-px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.s-py-0 {\n padding-top: 0px;\n padding-bottom: 0px;\n}\n.s-py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n}\n.s-py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.s-py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n.s-py-16 {\n padding-top: 4rem;\n padding-bottom: 4rem;\n}\n.s-py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.s-py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n.s-py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n.s-py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n.s-pb-1 {\n padding-bottom: 0.25rem;\n}\n.s-pb-2 {\n padding-bottom: 0.5rem;\n}\n.s-pb-3 {\n padding-bottom: 0.75rem;\n}\n.s-pb-6 {\n padding-bottom: 1.5rem;\n}\n.s-pb-8 {\n padding-bottom: 2rem;\n}\n.s-pl-0 {\n padding-left: 0px;\n}\n.s-pl-0\\.5 {\n padding-left: 0.125rem;\n}\n.s-pl-1 {\n padding-left: 0.25rem;\n}\n.s-pl-1\\.5 {\n padding-left: 0.375rem;\n}\n.s-pl-2 {\n padding-left: 0.5rem;\n}\n.s-pl-2\\.5 {\n padding-left: 0.625rem;\n}\n.s-pl-3 {\n padding-left: 0.75rem;\n}\n.s-pl-32 {\n padding-left: 8rem;\n}\n.s-pl-4 {\n padding-left: 1rem;\n}\n.s-pl-5 {\n padding-left: 1.25rem;\n}\n.s-pl-6 {\n padding-left: 1.5rem;\n}\n.s-pl-64 {\n padding-left: 16rem;\n}\n.s-pl-7 {\n padding-left: 1.75rem;\n}\n.s-pr-10 {\n padding-right: 2.5rem;\n}\n.s-pr-2 {\n padding-right: 0.5rem;\n}\n.s-pr-3 {\n padding-right: 0.75rem;\n}\n.s-pr-3\\.5 {\n padding-right: 0.875rem;\n}\n.s-pr-4 {\n padding-right: 1rem;\n}\n.s-pr-5 {\n padding-right: 1.25rem;\n}\n.s-pr-6 {\n padding-right: 1.5rem;\n}\n.s-pr-8 {\n padding-right: 2rem;\n}\n.s-pt-0 {\n padding-top: 0px;\n}\n.s-pt-0\\.5 {\n padding-top: 0.125rem;\n}\n.s-pt-1 {\n padding-top: 0.25rem;\n}\n.s-pt-1\\.5 {\n padding-top: 0.375rem;\n}\n.s-pt-16 {\n padding-top: 4rem;\n}\n.s-pt-3 {\n padding-top: 0.75rem;\n}\n.s-pt-4 {\n padding-top: 1rem;\n}\n.s-pt-6 {\n padding-top: 1.5rem;\n}\n.s-pt-7 {\n padding-top: 1.75rem;\n}\n.s-text-left {\n text-align: left;\n}\n.s-text-right {\n text-align: right;\n}\n.s-text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.s-text-3xl {\n font-size: 1.875rem;\n line-height: 2.25rem;\n}\n.s-text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem;\n}\n.s-text-5xl {\n font-size: 3rem;\n line-height: 1;\n}\n.s-text-7xl {\n font-size: 4.5rem;\n line-height: 1;\n}\n.s-text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.s-text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.s-text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.s-text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.s-text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.s-font-bold {\n font-weight: 700;\n}\n.s-font-medium {\n font-weight: 500;\n}\n.s-font-normal {\n font-weight: 400;\n}\n.s-font-semibold {\n font-weight: 600;\n}\n.s-uppercase {\n text-transform: uppercase;\n}\n.s-capitalize {\n text-transform: capitalize;\n}\n.s-italic {\n font-style: italic;\n}\n.s-text-action-300 {\n --tw-text-opacity: 1;\n color: rgb(147 197 253 / var(--tw-text-opacity));\n}\n.s-text-action-400 {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n.s-text-action-500 {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n.s-text-action-800 {\n --tw-text-opacity: 1;\n color: rgb(30 64 175 / var(--tw-text-opacity));\n}\n.s-text-action-900 {\n --tw-text-opacity: 1;\n color: rgb(30 58 138 / var(--tw-text-opacity));\n}\n.s-text-action-950 {\n --tw-text-opacity: 1;\n color: rgb(23 37 84 / var(--tw-text-opacity));\n}\n.s-text-amber-500 {\n --tw-text-opacity: 1;\n color: rgb(245 158 11 / var(--tw-text-opacity));\n}\n.s-text-amber-700 {\n --tw-text-opacity: 1;\n color: rgb(180 83 9 / var(--tw-text-opacity));\n}\n.s-text-amber-800 {\n --tw-text-opacity: 1;\n color: rgb(146 64 14 / var(--tw-text-opacity));\n}\n.s-text-amber-900 {\n --tw-text-opacity: 1;\n color: rgb(120 53 15 / var(--tw-text-opacity));\n}\n.s-text-amber-950 {\n --tw-text-opacity: 1;\n color: rgb(69 26 3 / var(--tw-text-opacity));\n}\n.s-text-blue-500 {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n.s-text-blue-700 {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity));\n}\n.s-text-blue-800 {\n --tw-text-opacity: 1;\n color: rgb(30 64 175 / var(--tw-text-opacity));\n}\n.s-text-blue-900 {\n --tw-text-opacity: 1;\n color: rgb(30 58 138 / var(--tw-text-opacity));\n}\n.s-text-blue-950 {\n --tw-text-opacity: 1;\n color: rgb(23 37 84 / var(--tw-text-opacity));\n}\n.s-text-brand {\n --tw-text-opacity: 1;\n color: rgb(16 185 129 / var(--tw-text-opacity));\n}\n.s-text-cyan-700 {\n --tw-text-opacity: 1;\n color: rgb(14 116 144 / var(--tw-text-opacity));\n}\n.s-text-cyan-800 {\n --tw-text-opacity: 1;\n color: rgb(21 94 117 / var(--tw-text-opacity));\n}\n.s-text-cyan-900 {\n --tw-text-opacity: 1;\n color: rgb(22 78 99 / var(--tw-text-opacity));\n}\n.s-text-cyan-950 {\n --tw-text-opacity: 1;\n color: rgb(8 51 68 / var(--tw-text-opacity));\n}\n.s-text-element-500 {\n --tw-text-opacity: 1;\n color: rgb(203 213 225 / var(--tw-text-opacity));\n}\n.s-text-element-600 {\n --tw-text-opacity: 1;\n color: rgb(148 163 184 / var(--tw-text-opacity));\n}\n.s-text-element-700 {\n --tw-text-opacity: 1;\n color: rgb(100 116 139 / var(--tw-text-opacity));\n}\n.s-text-element-800 {\n --tw-text-opacity: 1;\n color: rgb(51 65 85 / var(--tw-text-opacity));\n}\n.s-text-element-900 {\n --tw-text-opacity: 1;\n color: rgb(15 23 42 / var(--tw-text-opacity));\n}\n.s-text-emerald-500 {\n --tw-text-opacity: 1;\n color: rgb(16 185 129 / var(--tw-text-opacity));\n}\n.s-text-emerald-700 {\n --tw-text-opacity: 1;\n color: rgb(4 120 87 / var(--tw-text-opacity));\n}\n.s-text-emerald-800 {\n --tw-text-opacity: 1;\n color: rgb(6 95 70 / var(--tw-text-opacity));\n}\n.s-text-emerald-900 {\n --tw-text-opacity: 1;\n color: rgb(6 78 59 / var(--tw-text-opacity));\n}\n.s-text-emerald-950 {\n --tw-text-opacity: 1;\n color: rgb(2 44 34 / var(--tw-text-opacity));\n}\n.s-text-fuchsia-700 {\n --tw-text-opacity: 1;\n color: rgb(162 28 175 / var(--tw-text-opacity));\n}\n.s-text-fuchsia-800 {\n --tw-text-opacity: 1;\n color: rgb(134 25 143 / var(--tw-text-opacity));\n}\n.s-text-fuchsia-900 {\n --tw-text-opacity: 1;\n color: rgb(112 26 117 / var(--tw-text-opacity));\n}\n.s-text-fuchsia-950 {\n --tw-text-opacity: 1;\n color: rgb(74 4 78 / var(--tw-text-opacity));\n}\n.s-text-gray-500 {\n --tw-text-opacity: 1;\n color: rgb(107 114 128 / var(--tw-text-opacity));\n}\n.s-text-gray-800 {\n --tw-text-opacity: 1;\n color: rgb(31 41 55 / var(--tw-text-opacity));\n}\n.s-text-gray-900 {\n --tw-text-opacity: 1;\n color: rgb(17 24 39 / var(--tw-text-opacity));\n}\n.s-text-gray-950 {\n --tw-text-opacity: 1;\n color: rgb(3 7 18 / var(--tw-text-opacity));\n}\n.s-text-green-700 {\n --tw-text-opacity: 1;\n color: rgb(21 128 61 / var(--tw-text-opacity));\n}\n.s-text-green-800 {\n --tw-text-opacity: 1;\n color: rgb(22 101 52 / var(--tw-text-opacity));\n}\n.s-text-green-900 {\n --tw-text-opacity: 1;\n color: rgb(20 83 45 / var(--tw-text-opacity));\n}\n.s-text-green-950 {\n --tw-text-opacity: 1;\n color: rgb(5 46 22 / var(--tw-text-opacity));\n}\n.s-text-indigo-700 {\n --tw-text-opacity: 1;\n color: rgb(67 56 202 / var(--tw-text-opacity));\n}\n.s-text-indigo-800 {\n --tw-text-opacity: 1;\n color: rgb(55 48 163 / var(--tw-text-opacity));\n}\n.s-text-indigo-900 {\n --tw-text-opacity: 1;\n color: rgb(49 46 129 / var(--tw-text-opacity));\n}\n.s-text-indigo-950 {\n --tw-text-opacity: 1;\n color: rgb(30 27 75 / var(--tw-text-opacity));\n}\n.s-text-lime-700 {\n --tw-text-opacity: 1;\n color: rgb(77 124 15 / var(--tw-text-opacity));\n}\n.s-text-lime-800 {\n --tw-text-opacity: 1;\n color: rgb(63 98 18 / var(--tw-text-opacity));\n}\n.s-text-lime-900 {\n --tw-text-opacity: 1;\n color: rgb(54 83 20 / var(--tw-text-opacity));\n}\n.s-text-lime-950 {\n --tw-text-opacity: 1;\n color: rgb(26 46 5 / var(--tw-text-opacity));\n}\n.s-text-orange-700 {\n --tw-text-opacity: 1;\n color: rgb(194 65 12 / var(--tw-text-opacity));\n}\n.s-text-orange-800 {\n --tw-text-opacity: 1;\n color: rgb(154 52 18 / var(--tw-text-opacity));\n}\n.s-text-orange-900 {\n --tw-text-opacity: 1;\n color: rgb(124 45 18 / var(--tw-text-opacity));\n}\n.s-text-orange-950 {\n --tw-text-opacity: 1;\n color: rgb(67 20 7 / var(--tw-text-opacity));\n}\n.s-text-pink-800 {\n --tw-text-opacity: 1;\n color: rgb(157 23 77 / var(--tw-text-opacity));\n}\n.s-text-pink-900 {\n --tw-text-opacity: 1;\n color: rgb(131 24 67 / var(--tw-text-opacity));\n}\n.s-text-pink-950 {\n --tw-text-opacity: 1;\n color: rgb(80 7 36 / var(--tw-text-opacity));\n}\n.s-text-purple-700 {\n --tw-text-opacity: 1;\n color: rgb(126 34 206 / var(--tw-text-opacity));\n}\n.s-text-purple-800 {\n --tw-text-opacity: 1;\n color: rgb(107 33 168 / var(--tw-text-opacity));\n}\n.s-text-purple-900 {\n --tw-text-opacity: 1;\n color: rgb(88 28 135 / var(--tw-text-opacity));\n}\n.s-text-purple-950 {\n --tw-text-opacity: 1;\n color: rgb(59 7 100 / var(--tw-text-opacity));\n}\n.s-text-red-500 {\n --tw-text-opacity: 1;\n color: rgb(239 68 68 / var(--tw-text-opacity));\n}\n.s-text-red-700 {\n --tw-text-opacity: 1;\n color: rgb(185 28 28 / var(--tw-text-opacity));\n}\n.s-text-red-800 {\n --tw-text-opacity: 1;\n color: rgb(153 27 27 / var(--tw-text-opacity));\n}\n.s-text-red-900 {\n --tw-text-opacity: 1;\n color: rgb(127 29 29 / var(--tw-text-opacity));\n}\n.s-text-red-950 {\n --tw-text-opacity: 1;\n color: rgb(69 10 10 / var(--tw-text-opacity));\n}\n.s-text-rose-700 {\n --tw-text-opacity: 1;\n color: rgb(190 18 60 / var(--tw-text-opacity));\n}\n.s-text-rose-800 {\n --tw-text-opacity: 1;\n color: rgb(159 18 57 / var(--tw-text-opacity));\n}\n.s-text-rose-900 {\n --tw-text-opacity: 1;\n color: rgb(136 19 55 / var(--tw-text-opacity));\n}\n.s-text-rose-950 {\n --tw-text-opacity: 1;\n color: rgb(76 5 25 / var(--tw-text-opacity));\n}\n.s-text-sky-700 {\n --tw-text-opacity: 1;\n color: rgb(3 105 161 / var(--tw-text-opacity));\n}\n.s-text-sky-800 {\n --tw-text-opacity: 1;\n color: rgb(7 89 133 / var(--tw-text-opacity));\n}\n.s-text-sky-900 {\n --tw-text-opacity: 1;\n color: rgb(12 74 110 / var(--tw-text-opacity));\n}\n.s-text-sky-950 {\n --tw-text-opacity: 1;\n color: rgb(8 47 73 / var(--tw-text-opacity));\n}\n.s-text-slate-400 {\n --tw-text-opacity: 1;\n color: rgb(148 163 184 / var(--tw-text-opacity));\n}\n.s-text-slate-700 {\n --tw-text-opacity: 1;\n color: rgb(51 65 85 / var(--tw-text-opacity));\n}\n.s-text-slate-800 {\n --tw-text-opacity: 1;\n color: rgb(30 41 59 / var(--tw-text-opacity));\n}\n.s-text-slate-900 {\n --tw-text-opacity: 1;\n color: rgb(15 23 42 / var(--tw-text-opacity));\n}\n.s-text-slate-950 {\n --tw-text-opacity: 1;\n color: rgb(2 6 23 / var(--tw-text-opacity));\n}\n.s-text-stone-800 {\n --tw-text-opacity: 1;\n color: rgb(41 37 36 / var(--tw-text-opacity));\n}\n.s-text-stone-900 {\n --tw-text-opacity: 1;\n color: rgb(28 25 23 / var(--tw-text-opacity));\n}\n.s-text-stone-950 {\n --tw-text-opacity: 1;\n color: rgb(12 10 9 / var(--tw-text-opacity));\n}\n.s-text-structure-0 {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.s-text-success-500 {\n --tw-text-opacity: 1;\n color: rgb(16 185 129 / var(--tw-text-opacity));\n}\n.s-text-teal-700 {\n --tw-text-opacity: 1;\n color: rgb(15 118 110 / var(--tw-text-opacity));\n}\n.s-text-teal-800 {\n --tw-text-opacity: 1;\n color: rgb(17 94 89 / var(--tw-text-opacity));\n}\n.s-text-teal-900 {\n --tw-text-opacity: 1;\n color: rgb(19 78 74 / var(--tw-text-opacity));\n}\n.s-text-teal-950 {\n --tw-text-opacity: 1;\n color: rgb(4 47 46 / var(--tw-text-opacity));\n}\n.s-text-violet-700 {\n --tw-text-opacity: 1;\n color: rgb(109 40 217 / var(--tw-text-opacity));\n}\n.s-text-violet-800 {\n --tw-text-opacity: 1;\n color: rgb(91 33 182 / var(--tw-text-opacity));\n}\n.s-text-violet-900 {\n --tw-text-opacity: 1;\n color: rgb(76 29 149 / var(--tw-text-opacity));\n}\n.s-text-violet-950 {\n --tw-text-opacity: 1;\n color: rgb(46 16 101 / var(--tw-text-opacity));\n}\n.s-text-warning-300 {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity));\n}\n.s-text-warning-400 {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity));\n}\n.s-text-warning-500 {\n --tw-text-opacity: 1;\n color: rgb(239 68 68 / var(--tw-text-opacity));\n}\n.s-text-warning-800 {\n --tw-text-opacity: 1;\n color: rgb(153 27 27 / var(--tw-text-opacity));\n}\n.s-text-warning-900 {\n --tw-text-opacity: 1;\n color: rgb(127 29 29 / var(--tw-text-opacity));\n}\n.s-text-warning-950 {\n --tw-text-opacity: 1;\n color: rgb(69 10 10 / var(--tw-text-opacity));\n}\n.s-text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.s-text-white\\/0 {\n color: rgb(255 255 255 / 0);\n}\n.s-text-white\\/50 {\n color: rgb(255 255 255 / 0.5);\n}\n.s-text-white\\/70 {\n color: rgb(255 255 255 / 0.7);\n}\n.s-text-yellow-700 {\n --tw-text-opacity: 1;\n color: rgb(161 98 7 / var(--tw-text-opacity));\n}\n.s-text-yellow-800 {\n --tw-text-opacity: 1;\n color: rgb(133 77 14 / var(--tw-text-opacity));\n}\n.s-text-yellow-900 {\n --tw-text-opacity: 1;\n color: rgb(113 63 18 / var(--tw-text-opacity));\n}\n.s-text-yellow-950 {\n --tw-text-opacity: 1;\n color: rgb(66 32 6 / var(--tw-text-opacity));\n}\n.s-underline {\n text-decoration-line: underline;\n}\n.s-placeholder-element-600::-moz-placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(148 163 184 / var(--tw-placeholder-opacity));\n}\n.s-placeholder-element-600::placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(148 163 184 / var(--tw-placeholder-opacity));\n}\n.s-placeholder-element-700::-moz-placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(100 116 139 / var(--tw-placeholder-opacity));\n}\n.s-placeholder-element-700::placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(100 116 139 / var(--tw-placeholder-opacity));\n}\n.s-opacity-0 {\n opacity: 0;\n}\n.s-opacity-100 {\n opacity: 1;\n}\n.s-opacity-20 {\n opacity: 0.2;\n}\n.s-opacity-50 {\n opacity: 0.5;\n}\n.s-opacity-60 {\n opacity: 0.6;\n}\n.s-shadow {\n --tw-shadow: 0 2px 6px 0 rgba(15, 23, 42, 0.1);\n --tw-shadow-colored: 0 2px 6px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.s-shadow-2xl {\n --tw-shadow: 0 25px 50px rgba(15, 23, 42, 0.12);\n --tw-shadow-colored: 0 25px 50px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.s-shadow-lg {\n --tw-shadow: 0 10px 20px rgba(15, 23, 42, 0.12);\n --tw-shadow-colored: 0 10px 20px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.s-shadow-md {\n --tw-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);\n --tw-shadow-colored: 0 4px 12px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.s-shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.s-shadow-xl {\n --tw-shadow: 0 20px 25px rgba(15, 23, 42, 0.12);\n --tw-shadow-colored: 0 20px 25px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.s-outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.s-ring-0 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.s-ring-1 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.s-ring-structure-200 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(226 232 240 / var(--tw-ring-opacity));\n}\n.s-ring-warning-200 {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(254 202 202 / var(--tw-ring-opacity));\n}\n.s-brightness-90 {\n --tw-brightness: brightness(.9);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-drop-shadow {\n --tw-drop-shadow: drop-shadow(0 2px 4px rgba(15, 23, 42, 0.1));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-drop-shadow-2xl {\n --tw-drop-shadow: drop-shadow(0 25px 35px rgba(15, 23, 42, 0.12));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-drop-shadow-lg {\n --tw-drop-shadow: drop-shadow(0 10px 15px rgba(15, 23, 42, 0.12));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-drop-shadow-md {\n --tw-drop-shadow: drop-shadow(0 4px 6px rgba(15, 23, 42, 0.12));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-drop-shadow-sm {\n --tw-drop-shadow: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.08));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-drop-shadow-xl {\n --tw-drop-shadow: drop-shadow(0 20px 20px rgba(15, 23, 42, 0.12));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-backdrop-blur {\n --tw-backdrop-blur: blur(8px);\n -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n.s-backdrop-blur-sm {\n --tw-backdrop-blur: blur(4px);\n -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);\n}\n.s-transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.s-transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.s-transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.s-transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.s-transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.s-duration-100 {\n transition-duration: 100ms;\n}\n.s-duration-150 {\n transition-duration: 150ms;\n}\n.s-duration-200 {\n transition-duration: 200ms;\n}\n.s-duration-300 {\n transition-duration: 300ms;\n}\n.s-duration-500 {\n transition-duration: 500ms;\n}\n.s-duration-75 {\n transition-duration: 75ms;\n}\n.s-ease-in {\n transition-timing-function: cubic-bezier(0.4, 0, 1, 1);\n}\n.s-ease-in-out {\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n}\n.s-ease-out {\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n.s-scrollbar-hide {\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n.s-scrollbar-hide::-webkit-scrollbar {\n display: none;\n}\n@import url(\"https://use.typekit.net/jnb2umy.css\");\n.first\\:s-pt-0:first-child {\n padding-top: 0px;\n}\n.last\\:s-border-none:last-child {\n border-style: none;\n}\n.last\\:s-pb-0:last-child {\n padding-bottom: 0px;\n}\n.checked\\:s-bg-action-500:checked {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n.checked\\:s-ring-0:checked {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.hover\\:s-scale-100:hover {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:s-scale-105:hover {\n --tw-scale-x: 1.05;\n --tw-scale-y: 1.05;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:s-scale-110:hover {\n --tw-scale-x: 1.1;\n --tw-scale-y: 1.1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.hover\\:s-cursor-not-allowed:hover {\n cursor: not-allowed;\n}\n.hover\\:s-border-action-200:hover {\n --tw-border-opacity: 1;\n border-color: rgb(191 219 254 / var(--tw-border-opacity));\n}\n.hover\\:s-border-action-300:hover {\n --tw-border-opacity: 1;\n border-color: rgb(147 197 253 / var(--tw-border-opacity));\n}\n.hover\\:s-border-action-500:hover {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n.hover\\:s-border-structure-100:hover {\n --tw-border-opacity: 1;\n border-color: rgb(241 245 249 / var(--tw-border-opacity));\n}\n.hover\\:s-border-structure-200:hover {\n --tw-border-opacity: 1;\n border-color: rgb(226 232 240 / var(--tw-border-opacity));\n}\n.hover\\:s-border-warning-200:hover {\n --tw-border-opacity: 1;\n border-color: rgb(254 202 202 / var(--tw-border-opacity));\n}\n.hover\\:s-border-warning-500:hover {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity));\n}\n.hover\\:s-bg-action-100:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(219 234 254 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-action-200:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(191 219 254 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-action-400:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(96 165 250 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-action-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(239 246 255 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-structure-200:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(226 232 240 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-structure-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(248 250 252 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-success-200:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(167 243 208 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-warning-400:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(248 113 113 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-warning-50:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(254 242 242 / var(--tw-bg-opacity));\n}\n.hover\\:s-bg-white:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n.hover\\:s-text-action-400:hover {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n.hover\\:s-text-action-500:hover {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n.hover\\:s-text-slate-100:hover {\n --tw-text-opacity: 1;\n color: rgb(241 245 249 / var(--tw-text-opacity));\n}\n.hover\\:s-text-warning-400:hover {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity));\n}\n.hover\\:s-text-white\\/100:hover {\n color: rgb(255 255 255 / 1);\n}\n.hover\\:s-brightness-110:hover {\n --tw-brightness: brightness(1.1);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.hover\\:s-drop-shadow-md:hover {\n --tw-drop-shadow: drop-shadow(0 4px 6px rgba(15, 23, 42, 0.12));\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.hover\\:s-filter:hover {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.focus\\:s-border-action-300:focus {\n --tw-border-opacity: 1;\n border-color: rgb(147 197 253 / var(--tw-border-opacity));\n}\n.focus\\:s-border-red-500:focus {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity));\n}\n.focus\\:s-outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:s-ring-0:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:s-ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:s-ring-action-300:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(147 197 253 / var(--tw-ring-opacity));\n}\n.focus\\:s-ring-red-500:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity));\n}\n.focus\\:s-ring-warning-300:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(252 165 165 / var(--tw-ring-opacity));\n}\n.active\\:s-scale-100:active {\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.active\\:s-border-action-400:active {\n --tw-border-opacity: 1;\n border-color: rgb(96 165 250 / var(--tw-border-opacity));\n}\n.active\\:s-border-action-500:active {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n.active\\:s-border-action-700:active {\n --tw-border-opacity: 1;\n border-color: rgb(29 78 216 / var(--tw-border-opacity));\n}\n.active\\:s-border-structure-200:active {\n --tw-border-opacity: 1;\n border-color: rgb(226 232 240 / var(--tw-border-opacity));\n}\n.active\\:s-border-structure-300:active {\n --tw-border-opacity: 1;\n border-color: rgb(203 213 225 / var(--tw-border-opacity));\n}\n.active\\:s-border-warning-500:active {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity));\n}\n.active\\:s-border-warning-700:active {\n --tw-border-opacity: 1;\n border-color: rgb(185 28 28 / var(--tw-border-opacity));\n}\n.active\\:s-bg-action-100:active {\n --tw-bg-opacity: 1;\n background-color: rgb(219 234 254 / var(--tw-bg-opacity));\n}\n.active\\:s-bg-action-200:active {\n --tw-bg-opacity: 1;\n background-color: rgb(191 219 254 / var(--tw-bg-opacity));\n}\n.active\\:s-bg-action-600:active {\n --tw-bg-opacity: 1;\n background-color: rgb(37 99 235 / var(--tw-bg-opacity));\n}\n.active\\:s-bg-structure-100:active {\n --tw-bg-opacity: 1;\n background-color: rgb(241 245 249 / var(--tw-bg-opacity));\n}\n.active\\:s-bg-warning-100:active {\n --tw-bg-opacity: 1;\n background-color: rgb(254 226 226 / var(--tw-bg-opacity));\n}\n.active\\:s-bg-warning-600:active {\n --tw-bg-opacity: 1;\n background-color: rgb(220 38 38 / var(--tw-bg-opacity));\n}\n.active\\:s-text-action-600:active {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity));\n}\n.active\\:s-text-action-700:active {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity));\n}\n.active\\:s-text-slate-200:active {\n --tw-text-opacity: 1;\n color: rgb(226 232 240 / var(--tw-text-opacity));\n}\n.active\\:s-text-warning-600:active {\n --tw-text-opacity: 1;\n color: rgb(220 38 38 / var(--tw-text-opacity));\n}\n.active\\:s-ring-0:active {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.active\\:s-brightness-100:active {\n --tw-brightness: brightness(1);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.active\\:s-brightness-90:active {\n --tw-brightness: brightness(.9);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.active\\:s-drop-shadow-none:active {\n --tw-drop-shadow: drop-shadow(0 0 #0000);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.hover\\:active\\:s-text-action-600:active:hover {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity));\n}\n.s-group\\/col:hover .group-hover\\/col\\:s-text-action-400 {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n.s-group\\/col:hover .group-hover\\/col\\:s-text-action-500 {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n.s-group\\/dm:hover .group-hover\\/dm\\:s-text-action-400 {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n.s-group\\/dm:hover .group-hover\\/dm\\:s-text-action-500 {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n.s-group\\/item:hover .group-hover\\/item\\:s-text-action-400 {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n.s-group\\/item:hover .group-hover\\/item\\:s-text-action-500 {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n.s-group\\/item:hover .group-hover\\/item\\:s-text-warning-300 {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity));\n}\n.s-group\\/item:hover .group-hover\\/item\\:s-text-warning-400 {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity));\n}\n.s-group\\/tab:hover .group-hover\\/tab\\:s-text-action-400 {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n.s-group\\/item:hover .group-hover\\/item\\:s-opacity-100 {\n opacity: 1;\n}\n.s-group\\/tree:hover .group-hover\\/tree\\:s-opacity-100 {\n opacity: 1;\n}\n.s-group:hover .group-hover\\:s-brightness-110 {\n --tw-brightness: brightness(1.1);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-group:hover .group-hover\\:s-filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-group\\/item:active .group-active\\/item\\:s-text-action-700 {\n --tw-text-opacity: 1;\n color: rgb(29 78 216 / var(--tw-text-opacity));\n}\n.s-group\\/item:active .group-active\\/item\\:s-text-warning-700 {\n --tw-text-opacity: 1;\n color: rgb(185 28 28 / var(--tw-text-opacity));\n}\n.s-group:active .group-active\\:s-brightness-100 {\n --tw-brightness: brightness(1);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.s-group:active .group-active\\:s-brightness-90 {\n --tw-brightness: brightness(.9);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n:is(.s-dark .dark\\:s-border-action-200-dark) {\n --tw-border-opacity: 1;\n border-color: rgb(30 64 175 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:s-border-action-500-dark) {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:s-border-element-500-dark) {\n --tw-border-opacity: 1;\n border-color: rgb(100 116 139 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:s-border-structure-100-dark) {\n --tw-border-opacity: 1;\n border-color: rgb(30 41 59 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:s-border-structure-200-dark) {\n --tw-border-opacity: 1;\n border-color: rgb(51 65 85 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:s-border-structure-200-dark\\/50) {\n border-color: rgb(51 65 85 / 0.5);\n}\n:is(.s-dark .dark\\:s-border-structure-300-dark) {\n --tw-border-opacity: 1;\n border-color: rgb(71 85 105 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:s-border-structure-300-dark\\/30) {\n border-color: rgb(71 85 105 / 0.3);\n}\n:is(.s-dark .dark\\:s-border-structure-50-dark) {\n --tw-border-opacity: 1;\n border-color: rgb(15 23 42 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:s-border-warning-200-dark) {\n --tw-border-opacity: 1;\n border-color: rgb(153 27 27 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:s-bg-action-100-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(30 58 138 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-action-500-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-amber-500) {\n --tw-bg-opacity: 1;\n background-color: rgb(245 158 11 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-blue-500) {\n --tw-bg-opacity: 1;\n background-color: rgb(59 130 246 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-element-500-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(100 116 139 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-element-700-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(203 213 225 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-emerald-500) {\n --tw-bg-opacity: 1;\n background-color: rgb(16 185 129 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-pink-500) {\n --tw-bg-opacity: 1;\n background-color: rgb(236 72 153 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-sky-500) {\n --tw-bg-opacity: 1;\n background-color: rgb(14 165 233 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-structure-0-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-structure-100-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(30 41 59 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-structure-200-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(51 65 85 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-structure-300-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(71 85 105 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-structure-50-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(15 23 42 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-structure-50-dark\\/80) {\n background-color: rgb(15 23 42 / 0.8);\n}\n:is(.s-dark .dark\\:s-bg-success-400-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(5 150 105 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:s-bg-warning-100-dark) {\n --tw-bg-opacity: 1;\n background-color: rgb(127 29 29 / var(--tw-bg-opacity));\n}\n:is(.s-dark :is(.s-dark .dark\\:dark\\:s-text-action-500-dark)) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-action-500-dark) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-action-600-dark) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-action-700-dark) {\n --tw-text-opacity: 1;\n color: rgb(147 197 253 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-amber-950) {\n --tw-text-opacity: 1;\n color: rgb(69 26 3 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-blue-950) {\n --tw-text-opacity: 1;\n color: rgb(23 37 84 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-element-500-dark) {\n --tw-text-opacity: 1;\n color: rgb(100 116 139 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-element-600-dark) {\n --tw-text-opacity: 1;\n color: rgb(148 163 184 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-element-700-dark) {\n --tw-text-opacity: 1;\n color: rgb(203 213 225 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-element-800-dark) {\n --tw-text-opacity: 1;\n color: rgb(226 232 240 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-element-900-dark) {\n --tw-text-opacity: 1;\n color: rgb(248 250 252 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-emerald-950) {\n --tw-text-opacity: 1;\n color: rgb(2 44 34 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-pink-950) {\n --tw-text-opacity: 1;\n color: rgb(80 7 36 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-sky-950) {\n --tw-text-opacity: 1;\n color: rgb(8 47 73 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-warning-400-dark) {\n --tw-text-opacity: 1;\n color: rgb(220 38 38 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-warning-500-dark) {\n --tw-text-opacity: 1;\n color: rgb(239 68 68 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-warning-600-dark) {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-text-warning-700-dark) {\n --tw-text-opacity: 1;\n color: rgb(252 165 165 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:s-placeholder-element-700-dark)::-moz-placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(203 213 225 / var(--tw-placeholder-opacity));\n}\n:is(.s-dark .dark\\:s-placeholder-element-700-dark)::placeholder {\n --tw-placeholder-opacity: 1;\n color: rgb(203 213 225 / var(--tw-placeholder-opacity));\n}\n:is(.s-dark .dark\\:s-ring-structure-300-dark) {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(71 85 105 / var(--tw-ring-opacity));\n}\n:is(.s-dark .dark\\:s-ring-warning-200-dark) {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(153 27 27 / var(--tw-ring-opacity));\n}\n:is(.s-dark .dark\\:s-saturate-50) {\n --tw-saturate: saturate(.5);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n:is(.s-dark .dark\\:hover\\:s-border-action-300-dark:hover) {\n --tw-border-opacity: 1;\n border-color: rgb(29 78 216 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-border-action-500-dark:hover) {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-border-action-600-dark:hover) {\n --tw-border-opacity: 1;\n border-color: rgb(96 165 250 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-border-warning-300-dark:hover) {\n --tw-border-opacity: 1;\n border-color: rgb(185 28 28 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-bg-action-200-dark:hover) {\n --tw-bg-opacity: 1;\n background-color: rgb(30 64 175 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-bg-action-400:hover) {\n --tw-bg-opacity: 1;\n background-color: rgb(96 165 250 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-bg-action-50-dark:hover) {\n --tw-bg-opacity: 1;\n background-color: rgb(23 37 84 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-bg-structure-200-dark:hover) {\n --tw-bg-opacity: 1;\n background-color: rgb(51 65 85 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-bg-warning-50-dark:hover) {\n --tw-bg-opacity: 1;\n background-color: rgb(69 10 10 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-text-action-300:hover) {\n --tw-text-opacity: 1;\n color: rgb(147 197 253 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-text-action-500-dark:hover) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-text-action-600-dark:hover) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-text-action-700-dark:hover) {\n --tw-text-opacity: 1;\n color: rgb(147 197 253 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:hover\\:s-text-warning-500-dark:hover) {\n --tw-text-opacity: 1;\n color: rgb(239 68 68 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:focus\\:s-ring-action-300-dark:focus) {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(29 78 216 / var(--tw-ring-opacity));\n}\n:is(.s-dark .dark\\:focus\\:s-ring-warning-300-dark:focus) {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(185 28 28 / var(--tw-ring-opacity));\n}\n:is(.s-dark .dark\\:active\\:s-border-action-500-dark:active) {\n --tw-border-opacity: 1;\n border-color: rgb(59 130 246 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:active\\:s-border-warning-500-dark:active) {\n --tw-border-opacity: 1;\n border-color: rgb(239 68 68 / var(--tw-border-opacity));\n}\n:is(.s-dark .dark\\:active\\:s-bg-action-100-dark:active) {\n --tw-bg-opacity: 1;\n background-color: rgb(30 58 138 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:active\\:s-bg-warning-100-dark:active) {\n --tw-bg-opacity: 1;\n background-color: rgb(127 29 29 / var(--tw-bg-opacity));\n}\n:is(.s-dark .dark\\:active\\:s-text-action-600:active) {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:active\\:s-text-action-600-dark:active) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:active\\:s-text-action-700-dark:active) {\n --tw-text-opacity: 1;\n color: rgb(147 197 253 / var(--tw-text-opacity));\n}\n:is(.s-dark .dark\\:active\\:s-text-warning-600-dark:active) {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/col:hover .dark\\:group-hover\\/col\\:s-text-action-400-dark) {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/col:hover .dark\\:group-hover\\/col\\:s-text-action-500-dark) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/dm:hover .dark\\:group-hover\\/dm\\:s-text-action-400) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/dm:hover .dark\\:group-hover\\/dm\\:s-text-action-500-dark) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/item:hover .dark\\:group-hover\\/item\\:s-text-action-600-dark) {\n --tw-text-opacity: 1;\n color: rgb(96 165 250 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/item:hover .dark\\:group-hover\\/item\\:s-text-warning-600-dark) {\n --tw-text-opacity: 1;\n color: rgb(248 113 113 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/tab:hover .dark\\:group-hover\\/tab\\:s-text-action-500-dark) {\n --tw-text-opacity: 1;\n color: rgb(59 130 246 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/item:active .dark\\:group-active\\/item\\:s-text-action-400-dark) {\n --tw-text-opacity: 1;\n color: rgb(37 99 235 / var(--tw-text-opacity));\n}\n:is(.s-dark .s-group\\/item:active .dark\\:group-active\\/item\\:s-text-warning-400-dark) {\n --tw-text-opacity: 1;\n color: rgb(220 38 38 / var(--tw-text-opacity));\n}\n@media (min-width: 640px) {\n\n .sm\\:s-block {\n display: block;\n }\n\n .sm\\:s-w-64 {\n width: 16rem;\n }\n\n .sm\\:s-w-\\[448px\\] {\n width: 448px;\n }\n\n .sm\\:s-w-\\[50rem\\] {\n width: 50rem;\n }\n\n .sm\\:s-flex-row {\n flex-direction: row;\n }\n\n .sm\\:s-gap-3 {\n gap: 0.75rem;\n }\n\n .sm\\:s-px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n }\n\n .sm\\:s-px-3\\.5 {\n padding-left: 0.875rem;\n padding-right: 0.875rem;\n }\n\n .sm\\:s-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n}\n@media (min-width: 768px) {\n\n .md\\:s-grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}\n@media (min-width: 1024px) {\n\n .lg\\:s-grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n }\n}\n";
103247
- styleInject(css_248z);
103248
-
103249
103360
  // Define breakpoints
103250
103361
  var breakpoints = {
103251
103362
  xs: 0,
@@ -103304,22 +103415,37 @@ function shouldRenderColumn(windowWidth, breakpoint) {
103304
103415
  return windowWidth >= breakpoints[breakpoint];
103305
103416
  }
103306
103417
  function DataTable(_a) {
103307
- var data = _a.data, columns = _a.columns, className = _a.className, filter = _a.filter, filterColumn = _a.filterColumn, initialColumnOrder = _a.initialColumnOrder, _b = _a.columnsBreakpoints, columnsBreakpoints = _b === void 0 ? {} : _b;
103418
+ var data = _a.data, totalRowCount = _a.totalRowCount, columns = _a.columns, className = _a.className, filter = _a.filter, filterColumn = _a.filterColumn, initialColumnOrder = _a.initialColumnOrder, _b = _a.columnsBreakpoints, columnsBreakpoints = _b === void 0 ? {} : _b, pagination = _a.pagination, setPagination = _a.setPagination;
103308
103419
  var windowSize = useWindowSize();
103309
103420
  var _c = __read(React.useState(initialColumnOrder !== null && initialColumnOrder !== void 0 ? initialColumnOrder : []), 2), sorting = _c[0], setSorting = _c[1];
103310
103421
  var _d = __read(React.useState([]), 2), columnFilters = _d[0], setColumnFilters = _d[1];
103422
+ var isServerSidePagination = !!totalRowCount && totalRowCount > data.length;
103423
+ var onPaginationChange = pagination && setPagination
103424
+ ? function (updater) {
103425
+ var newValue = typeof updater === "function" ? updater(pagination) : updater;
103426
+ setPagination(newValue);
103427
+ }
103428
+ : undefined;
103311
103429
  var table = useReactTable({
103312
103430
  data: data,
103313
103431
  columns: columns,
103432
+ rowCount: totalRowCount,
103433
+ manualPagination: isServerSidePagination,
103314
103434
  onSortingChange: setSorting,
103315
103435
  getCoreRowModel: getCoreRowModel(),
103316
103436
  getSortedRowModel: getSortedRowModel(),
103317
103437
  getFilteredRowModel: getFilteredRowModel(),
103438
+ getPaginationRowModel: pagination ? getPaginationRowModel() : undefined,
103318
103439
  onColumnFiltersChange: setColumnFilters,
103319
103440
  state: {
103320
103441
  columnFilters: columnFilters,
103321
- sorting: sorting,
103442
+ sorting: isServerSidePagination ? undefined : sorting,
103443
+ pagination: pagination,
103322
103444
  },
103445
+ initialState: {
103446
+ pagination: pagination,
103447
+ },
103448
+ onPaginationChange: onPaginationChange,
103323
103449
  });
103324
103450
  React.useEffect(function () {
103325
103451
  var _a;
@@ -103327,32 +103453,35 @@ function DataTable(_a) {
103327
103453
  (_a = table.getColumn(filterColumn)) === null || _a === void 0 ? void 0 : _a.setFilterValue(filter);
103328
103454
  }
103329
103455
  }, [filter, filterColumn]);
103330
- return (React.createElement(DataTable.Root, { className: className },
103331
- React.createElement(DataTable.Header, null, table.getHeaderGroups().map(function (headerGroup) { return (React.createElement(DataTable.Row, { key: headerGroup.id }, headerGroup.headers.map(function (header) {
103332
- var breakpoint = columnsBreakpoints[header.id];
103333
- if (!windowSize.width ||
103334
- !shouldRenderColumn(windowSize.width, breakpoint)) {
103335
- return null;
103336
- }
103337
- return (React.createElement(DataTable.Head, { key: header.id, onClick: header.column.getToggleSortingHandler(), className: classNames(header.column.getCanSort() ? "s-cursor-pointer" : "") },
103338
- React.createElement("div", { className: "s-flex s-items-center s-space-x-1 s-whitespace-nowrap" },
103339
- flexRender(header.column.columnDef.header, header.getContext()),
103340
- header.column.getCanSort() && (React.createElement(Icon, { visual: header.column.getIsSorted() === "asc"
103341
- ? SvgArrowUp$1
103342
- : header.column.getIsSorted() === "desc"
103343
- ? SvgArrowDown$1
103344
- : SvgArrowDown$1, size: "xs", className: classNames("s-ml-1", header.column.getIsSorted()
103345
- ? "s-opacity-100"
103346
- : "s-opacity-0") })))));
103347
- }))); })),
103348
- React.createElement(DataTable.Body, null, table.getRowModel().rows.map(function (row) { return (React.createElement(DataTable.Row, { key: row.id, onClick: row.original.onClick, moreMenuItems: row.original.moreMenuItems }, row.getVisibleCells().map(function (cell) {
103349
- var breakpoint = columnsBreakpoints[cell.column.id];
103350
- if (!windowSize.width ||
103351
- !shouldRenderColumn(windowSize.width, breakpoint)) {
103352
- return null;
103353
- }
103354
- return (React.createElement(DataTable.Cell, { key: cell.id }, flexRender(cell.column.columnDef.cell, cell.getContext())));
103355
- }))); }))));
103456
+ return (React.createElement("div", { className: "s-flex s-flex-col s-gap-2" },
103457
+ React.createElement(DataTable.Root, { className: className },
103458
+ React.createElement(DataTable.Header, null, table.getHeaderGroups().map(function (headerGroup) { return (React.createElement(DataTable.Row, { key: headerGroup.id }, headerGroup.headers.map(function (header) {
103459
+ var breakpoint = columnsBreakpoints[header.id];
103460
+ if (!windowSize.width ||
103461
+ !shouldRenderColumn(windowSize.width, breakpoint)) {
103462
+ return null;
103463
+ }
103464
+ return (React.createElement(DataTable.Head, { key: header.id, onClick: header.column.getToggleSortingHandler(), className: classNames(header.column.getCanSort() ? "s-cursor-pointer" : "") },
103465
+ React.createElement("div", { className: "s-flex s-items-center s-space-x-1 s-whitespace-nowrap" },
103466
+ flexRender(header.column.columnDef.header, header.getContext()),
103467
+ header.column.getCanSort() && (React.createElement(Icon, { visual: header.column.getIsSorted() === "asc"
103468
+ ? SvgArrowUp$1
103469
+ : header.column.getIsSorted() === "desc"
103470
+ ? SvgArrowDown$1
103471
+ : SvgArrowDown$1, size: "xs", className: classNames("s-ml-1", header.column.getIsSorted()
103472
+ ? "s-opacity-100"
103473
+ : "s-opacity-0") })))));
103474
+ }))); })),
103475
+ React.createElement(DataTable.Body, null, table.getRowModel().rows.map(function (row) { return (React.createElement(DataTable.Row, { key: row.id, onClick: row.original.onClick, moreMenuItems: row.original.moreMenuItems }, row.getVisibleCells().map(function (cell) {
103476
+ var breakpoint = columnsBreakpoints[cell.column.id];
103477
+ if (!windowSize.width ||
103478
+ !shouldRenderColumn(windowSize.width, breakpoint)) {
103479
+ return null;
103480
+ }
103481
+ return (React.createElement(DataTable.Cell, { key: cell.id }, flexRender(cell.column.columnDef.cell, cell.getContext())));
103482
+ }))); }))),
103483
+ pagination && (React.createElement("div", { className: "s-p-1" },
103484
+ React.createElement(Pagination, { pagination: table.getState().pagination, setPagination: table.setPagination, rowCount: table.getRowCount() })))));
103356
103485
  }
103357
103486
  DataTable.Root = function DataTableRoot(_a) {
103358
103487
  var children = _a.children, className = _a.className, props = __rest(_a, ["children", "className"]);
@@ -103375,9 +103504,7 @@ DataTable.Row = function Row(_a) {
103375
103504
  return (React.createElement("tr", __assign({ className: classNames("s-group/dt s-border-b s-border-structure-200 s-text-sm s-transition-colors s-duration-300 s-ease-out", onClick ? "s-cursor-pointer hover:s-bg-structure-50" : "", className || ""), onClick: onClick ? onClick : undefined }, props),
103376
103505
  children,
103377
103506
  React.createElement("td", { className: "s-w-1 s-cursor-pointer s-pl-1 s-text-element-600" }, moreMenuItems && moreMenuItems.length > 0 && (React.createElement(DropdownMenu, { className: "s-mr-1.5 s-flex" },
103378
- React.createElement(DropdownMenu.Button, { onClick: function (e) {
103379
- e.stopPropagation();
103380
- } },
103507
+ React.createElement(DropdownMenu.Button, null,
103381
103508
  React.createElement(IconButton, { icon: SvgMore$1, size: "sm", variant: "tertiary" })),
103382
103509
  React.createElement(DropdownMenu.Items, { origin: "topRight", width: 220 }, moreMenuItems === null || moreMenuItems === void 0 ? void 0 : moreMenuItems.map(function (item, index) { return (React.createElement(DropdownMenu.Item, __assign({ key: index }, item))); })))))));
103383
103510
  };
@@ -128656,102 +128783,28 @@ Page.Fluid = function (_a) {
128656
128783
  return (React.createElement("div", { className: classNames("s-flex s-flex-wrap", sizing === "grow" ? "s-grow" : "", sizing === "shrink" ? "s-shrink" : "", gapSizes[gap], align === "left" ? "s-items-start" : "", align === "center" ? "s-items-center" : "", align === "right" ? "s-items-end" : "") }, children));
128657
128784
  };
128658
128785
 
128659
- var pagesShownInControls = 7;
128660
- function Pagination(_a) {
128661
- var itemsCount = _a.itemsCount, maxItemsPerPage = _a.maxItemsPerPage, onButtonClick = _a.onButtonClick, _b = _a.size, size = _b === void 0 ? "sm" : _b, _c = _a.showDetails, showDetails = _c === void 0 ? true : _c, _d = _a.showPageButtons, showPageButtons = _d === void 0 ? true : _d;
128662
- var numPages = Math.ceil(itemsCount / maxItemsPerPage);
128663
- var controlsAreHidden = Boolean(numPages <= 1);
128664
- var _e = __read(React.useState(1), 2), currentPage = _e[0], setCurrentPage = _e[1];
128665
- var firstFileOnPageIndex = currentPage * maxItemsPerPage - maxItemsPerPage + 1;
128666
- var lastFileOnPageIndex = itemsCount > currentPage * maxItemsPerPage
128667
- ? currentPage * maxItemsPerPage
128668
- : itemsCount;
128669
- var onPaginationButtonClick = React.useCallback(function (pageNb) {
128670
- setCurrentPage(pageNb);
128671
- onButtonClick(pageNb);
128672
- }, [onButtonClick, setCurrentPage]);
128673
- var pageButtons = getPageButtons(currentPage, numPages, pagesShownInControls, onPaginationButtonClick, size);
128674
- return (React.createElement("div", { className: classNames("s-flex s-w-full s-items-center", controlsAreHidden ? "s-justify-end" : "s-justify-between") },
128675
- React.createElement("div", { className: classNames("s-flex", controlsAreHidden ? "s-invisible" : "s-visible", showPageButtons ? "s-gap-0" : "s-gap-2") },
128676
- React.createElement(Button, { variant: "tertiary", size: size === "xs" ? "xs" : "sm", label: "previous", labelVisible: false, disabledTooltip: true, disabled: currentPage === 1 ? true : false, icon: SvgChevronLeft$1, onClick: function () {
128677
- onPaginationButtonClick(currentPage - 1);
128678
- } }),
128679
- React.createElement("div", { className: classNames("s-items-center", size === "xs" ? "s-gap-3 s-px-3" : "s-gap-4 s-px-4", showPageButtons ? "s-flex" : "s-hidden") }, pageButtons),
128680
- React.createElement(Button, { variant: "tertiary", size: size === "xs" ? "xs" : "sm", label: "next", labelVisible: false, disabledTooltip: true, disabled: currentPage === numPages ? true : false, icon: SvgChevronRight$1, onClick: function () {
128681
- onPaginationButtonClick(currentPage + 1);
128682
- } })),
128683
- React.createElement("span", { className: classNames("s-text-slate-400", size === "xs" ? "s-text-xs" : "s-text-sm", showDetails ? "s-visible" : "s-collapse") }, controlsAreHidden
128684
- ? "".concat(itemsCount, " items")
128685
- : "Showing ".concat(firstFileOnPageIndex, "-").concat(lastFileOnPageIndex, " of ").concat(itemsCount, " items"))));
128686
- }
128687
- function renderPageNumber(pageNumber, currentPage, onPageClick, size) {
128688
- return (React.createElement("button", { key: pageNumber, className: classNames("s-font-semibold s-transition-colors s-duration-100", currentPage === pageNumber ? "s-text-action-500" : "s-text-slate-400", size === "xs" ? "s-text-xs" : "s-text-sm"), onClick: function () { return onPageClick(pageNumber); } }, pageNumber));
128689
- }
128690
- function renderEllipses(size) {
128691
- return (React.createElement("span", { className: classNames("s-text-sm s-font-semibold s-text-slate-400", size === "xs" ? "s-text-xs" : "s-text-sm") }, "..."));
128692
- }
128693
- function getPageButtons(currentPage, totalPages, slots, onPageClick, size) {
128694
- var pagination = [];
128695
- // If total pages are less than or equal to slots, show all pages
128696
- if (totalPages <= slots) {
128697
- for (var i = 1; i <= totalPages; i++) {
128698
- pagination.push(renderPageNumber(i, currentPage, onPageClick, size));
128699
- }
128700
- return pagination;
128701
- }
128702
- var remainingSlots = slots - 2; // slots excluding first and last page
128703
- var halfSlots = Math.floor(remainingSlots / 2);
128704
- // Ensure current page is within bounds
128705
- currentPage = Math.max(1, Math.min(currentPage, totalPages));
128706
- pagination.push(renderPageNumber(1, currentPage, onPageClick, size)); // Always show the first page
128707
- // Determine the range of pages to display
128708
- var start, end;
128709
- if (currentPage <= halfSlots + 2) {
128710
- start = 2;
128711
- end = remainingSlots;
128712
- }
128713
- else if (currentPage >= totalPages - halfSlots - 1) {
128714
- start = totalPages - remainingSlots + 1;
128715
- end = totalPages - 1;
128716
- }
128717
- else {
128718
- start = currentPage - halfSlots + 1;
128719
- end = currentPage + halfSlots - 1;
128720
- }
128721
- // Add ellipsis if there is a gap between the first page and the start of the range
128722
- if (start > 2) {
128723
- pagination.push(renderEllipses(size));
128724
- }
128725
- // Add the range of pages
128726
- for (var i = start; i <= end; i++) {
128727
- pagination.push(renderPageNumber(i, currentPage, onPageClick, size));
128728
- }
128729
- // Add ellipsis if there is a gap between the end of the range and the last page
128730
- if (end < totalPages - 1) {
128731
- pagination.push(renderEllipses(size));
128732
- }
128733
- pagination.push(renderPageNumber(totalPages, currentPage, onPageClick, size)); // Always show the last page
128734
- return pagination;
128735
- }
128736
-
128737
128786
  function PaginatedCitationsGrid(_a) {
128738
128787
  var items = _a.items, _b = _a.maxItemsPerPage, maxItemsPerPage = _b === void 0 ? 9 : _b;
128739
- var _c = __read(React.useState(1), 2), currentPage = _c[0], setCurrentPage = _c[1];
128788
+ var _c = __read(React.useState({
128789
+ pageIndex: 0,
128790
+ pageSize: maxItemsPerPage,
128791
+ }), 2), pagination = _c[0], setPagination = _c[1];
128740
128792
  var cols = 3;
128741
128793
  var rows = Math.ceil(Math.min(maxItemsPerPage, items.length) / cols);
128742
128794
  if (items.length === 0) {
128743
128795
  return null;
128744
128796
  }
128797
+ var pageIndex = pagination.pageIndex, pageSize = pagination.pageSize;
128745
128798
  // Calculate start index.
128746
- var startIndex = (currentPage - 1) * maxItemsPerPage;
128799
+ var startIndex = pageIndex * pageSize;
128747
128800
  // Slice items for current page.
128748
- var paginatedItems = items.slice(startIndex, startIndex + maxItemsPerPage);
128801
+ var paginatedItems = items.slice(startIndex, startIndex + pageSize);
128749
128802
  return (React.createElement("div", { className: "s-flex s-w-full s-flex-col" },
128750
128803
  React.createElement("div", { className: classNames("s-grid s-w-full s-gap-2 s-overflow-x-hidden s-py-1", "s-grid-cols-".concat(cols), "s-grid-rows-".concat(rows)) }, paginatedItems.map(function (d, idx) {
128751
128804
  return (React.createElement(Citation, { size: "xs", sizing: "fluid", key: idx, description: d.description, href: d.href, title: d.title, type: d.type }));
128752
128805
  })),
128753
128806
  React.createElement("div", { className: classNames("s-pt-3", items.length > maxItemsPerPage ? "s-visible" : "s-collapse") },
128754
- React.createElement(Pagination, { itemsCount: items.length, maxItemsPerPage: maxItemsPerPage, size: "xs", showDetails: false, showPageButtons: false, onButtonClick: function (pageNb) { return setCurrentPage(pageNb); } }))));
128807
+ React.createElement(Pagination, { rowCount: items.length, pagination: pagination, setPagination: setPagination, size: "xs", showDetails: false, showPageButtons: false }))));
128755
128808
  }
128756
128809
 
128757
128810
  function Popup(_a) {
@@ -129174,6 +129227,91 @@ function ZoomableImageCitationWrapper(_a) {
129174
129227
  React.createElement("img", { src: imgSrc, alt: alt }))))));
129175
129228
  }
129176
129229
 
129230
+ /**
129231
+ * Original code from : https://www.npmjs.com/package/use-hash-param
129232
+ * ISC License
129233
+ */
129234
+ var getHashSearchParams = function (location) {
129235
+ var hash = location.hash.slice(1);
129236
+ var _a = __read(hash.split("?"), 2), prefix = _a[0], query = _a[1];
129237
+ return [prefix, new URLSearchParams(query)];
129238
+ };
129239
+ var getHashParam = function (key, defaultValue) {
129240
+ var _a;
129241
+ if (typeof window === "undefined") {
129242
+ return defaultValue;
129243
+ }
129244
+ var _b = __read(getHashSearchParams(window.location), 2), searchParams = _b[1];
129245
+ return (_a = searchParams.get(key)) !== null && _a !== void 0 ? _a : defaultValue;
129246
+ };
129247
+ var setHashParam = function (key, value, shouldReplaceState) {
129248
+ if (typeof window !== "undefined") {
129249
+ var _a = __read(getHashSearchParams(window.location), 2), prefix = _a[0], searchParams = _a[1];
129250
+ if (typeof value === "undefined" || value === "") {
129251
+ searchParams.delete(key);
129252
+ }
129253
+ else {
129254
+ searchParams.set(key, value);
129255
+ }
129256
+ var search = searchParams.toString();
129257
+ var hash = search ? "".concat(prefix, "?").concat(search) : prefix;
129258
+ if (shouldReplaceState && "replaceState" in history) {
129259
+ history.replaceState(null, "", "#".concat(hash));
129260
+ }
129261
+ else {
129262
+ window.location.hash = hash;
129263
+ }
129264
+ }
129265
+ };
129266
+ /**
129267
+ * @param key The parameter-name to use from the hash-string query string.
129268
+ * @param defaultValue A default value to use if the parameter is not specified and on the server.
129269
+ * @returns A two-tuple, the first element is the selected param value (either extracted from the hash param or the default value).
129270
+ * The second element is a setter function to change the param value.
129271
+ */
129272
+ var useHashParam = function (key, defaultValue) {
129273
+ var _a = __read(React.useState(function () {
129274
+ return getHashParam(key, defaultValue);
129275
+ }), 2), innerValue = _a[0], setInnerValue = _a[1];
129276
+ React.useEffect(function () {
129277
+ var handleHashChange = function () {
129278
+ return setInnerValue(getHashParam(key, defaultValue));
129279
+ };
129280
+ handleHashChange();
129281
+ window.addEventListener("hashchange", handleHashChange);
129282
+ return function () { return window.removeEventListener("hashchange", handleHashChange); };
129283
+ }, [key]);
129284
+ var setValue = React.useCallback(function (newValue, options) {
129285
+ if (options === void 0) { options = { history: "replace" }; }
129286
+ var newInnerValue = typeof newValue === "function"
129287
+ ? newValue(getHashParam(key, defaultValue))
129288
+ : newValue;
129289
+ setInnerValue(newInnerValue);
129290
+ setHashParam(key, newInnerValue, options.history === "replace");
129291
+ }, [key]);
129292
+ return [innerValue || defaultValue, setValue];
129293
+ };
129294
+
129295
+ var defaultPageSize = 25;
129296
+ var usePaginationFromUrl = function (urlPrefix, initialPageSize) {
129297
+ if (initialPageSize === void 0) { initialPageSize = defaultPageSize; }
129298
+ var _a = __read(useHashParam(urlPrefix ? "".concat(urlPrefix, "PageIndex") : "pageIndex"), 2), pageIndexParam = _a[0], setPageIndexParam = _a[1];
129299
+ var _b = __read(useHashParam(urlPrefix ? "".concat(urlPrefix, "PageSize") : "pageSize"), 2), pageSizeParam = _b[0], setPageSizeParam = _b[1];
129300
+ var pageIndex = pageIndexParam ? parseInt(pageIndexParam) : 0;
129301
+ var pageSize = pageSizeParam ? parseInt(pageSizeParam) : initialPageSize;
129302
+ var res = React.useMemo(function () {
129303
+ var pagination = { pageIndex: pageIndex, pageSize: pageSize };
129304
+ var setPagination = function (newValue) {
129305
+ if (newValue.pageIndex !== pageIndex || newValue.pageSize !== pageSize) {
129306
+ setPageIndexParam(newValue.pageIndex.toString());
129307
+ setPageSizeParam(newValue.pageSize.toString());
129308
+ }
129309
+ };
129310
+ return { pagination: pagination, setPagination: setPagination };
129311
+ }, [pageIndex, pageSize, urlPrefix]);
129312
+ return res;
129313
+ };
129314
+
129177
129315
  var SvgLogoHorizontalColor = function (props) { return (React__namespace.createElement("svg", __assign({ xmlns: "http://www.w3.org/2000/svg", width: "1em", height: "1em", fill: "none", viewBox: "0 0 96 24" }, props),
129178
129316
  React__namespace.createElement("path", { fill: "#FCD34D", d: "M84 12H72v12h12V12Z" }),
129179
129317
  React__namespace.createElement("path", { fill: "#6EE7B7", d: "M12 24c6.627 0 12-5.373 12-12S18.627 0 12 0 0 5.373 0 12s5.373 12 12 12Z" }),
@@ -129632,4 +129770,6 @@ exports.ZapierLogo = SvgZapier;
129632
129770
  exports.ZendeskLogo = SvgZendesk;
129633
129771
  exports.ZoomableImageCitationWrapper = ZoomableImageCitationWrapper;
129634
129772
  exports.avatarUtils = utils;
129773
+ exports.useHashParam = useHashParam;
129774
+ exports.usePaginationFromUrl = usePaginationFromUrl;
129635
129775
  //# sourceMappingURL=index.js.map