handsontable 18.1.0 → 18.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/base.js +2 -2
  3. package/base.mjs +2 -2
  4. package/dist/handsontable.full.js +54 -29
  5. package/dist/handsontable.full.min.js +9 -9
  6. package/dist/handsontable.js +54 -29
  7. package/dist/handsontable.min.js +9 -9
  8. package/dist/themes/classic.js +2 -2
  9. package/dist/themes/classic.min.js +2 -2
  10. package/dist/themes/horizon.js +2 -2
  11. package/dist/themes/horizon.min.js +2 -2
  12. package/dist/themes/main.js +2 -2
  13. package/dist/themes/main.min.js +2 -2
  14. package/dist/themes/static/variables/colors/ant.js +2 -2
  15. package/dist/themes/static/variables/colors/ant.min.js +2 -2
  16. package/dist/themes/static/variables/colors/classic.js +2 -2
  17. package/dist/themes/static/variables/colors/classic.min.js +2 -2
  18. package/dist/themes/static/variables/colors/horizon.js +2 -2
  19. package/dist/themes/static/variables/colors/horizon.min.js +2 -2
  20. package/dist/themes/static/variables/colors/main.js +2 -2
  21. package/dist/themes/static/variables/colors/main.min.js +2 -2
  22. package/dist/themes/static/variables/colors/material.js +2 -2
  23. package/dist/themes/static/variables/colors/material.min.js +2 -2
  24. package/dist/themes/static/variables/colors/shadcn.js +2 -2
  25. package/dist/themes/static/variables/colors/shadcn.min.js +2 -2
  26. package/dist/themes/static/variables/density.js +2 -2
  27. package/dist/themes/static/variables/density.min.js +2 -2
  28. package/dist/themes/static/variables/helpers/iconsMap.js +2 -2
  29. package/dist/themes/static/variables/helpers/iconsMap.min.js +2 -2
  30. package/dist/themes/static/variables/icons/horizon.js +2 -2
  31. package/dist/themes/static/variables/icons/horizon.min.js +2 -2
  32. package/dist/themes/static/variables/icons/main.js +2 -2
  33. package/dist/themes/static/variables/icons/main.min.js +2 -2
  34. package/dist/themes/static/variables/sizing.js +2 -2
  35. package/dist/themes/static/variables/sizing.min.js +2 -2
  36. package/dist/themes/static/variables/tokens/classic.js +2 -2
  37. package/dist/themes/static/variables/tokens/classic.min.js +2 -2
  38. package/dist/themes/static/variables/tokens/horizon.js +2 -2
  39. package/dist/themes/static/variables/tokens/horizon.min.js +2 -2
  40. package/dist/themes/static/variables/tokens/main.js +2 -2
  41. package/dist/themes/static/variables/tokens/main.min.js +2 -2
  42. package/helpers/mixed.js +5 -5
  43. package/helpers/mixed.mjs +5 -5
  44. package/package.json +1 -1
  45. package/plugins/copyPaste/copyPaste.js +29 -17
  46. package/plugins/copyPaste/copyPaste.mjs +29 -17
  47. package/plugins/filters/filters.js +13 -0
  48. package/plugins/filters/filters.mjs +13 -0
  49. package/styles/handsontable.css +2 -2
  50. package/styles/handsontable.min.css +2 -2
  51. package/styles/handsontableStyles.js +1 -1
  52. package/styles/handsontableStyles.mjs +1 -1
  53. package/styles/ht-icons-horizon.min.css +2 -2
  54. package/styles/ht-icons-main.min.css +2 -2
  55. package/styles/ht-theme-classic-no-icons.min.css +2 -2
  56. package/styles/ht-theme-classic.min.css +2 -2
  57. package/styles/ht-theme-horizon-no-icons.min.css +2 -2
  58. package/styles/ht-theme-horizon.min.css +2 -2
  59. package/styles/ht-theme-main-no-icons.min.css +2 -2
  60. package/styles/ht-theme-main.min.css +2 -2
  61. package/utils/licenseBranding/index.js +2 -2
  62. package/utils/licenseBranding/index.mjs +2 -2
  63. package/utils/licenseNotification.js +2 -2
  64. package/utils/licenseNotification.mjs +2 -2
@@ -25,8 +25,8 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 18.1.0
29
- * Release date: 01/09/2026 (built at 01/09/2026 11:40:23)
28
+ * Version: 18.1.1
29
+ * Release date: 15/09/2026 (built at 15/09/2026 08:36:14)
30
30
  */
31
31
  (function webpackUniversalModuleDefinition(root, factory) {
32
32
 
@@ -17892,8 +17892,8 @@ Handsontable.hooks = _core_hooks__rspack_import_12.Hooks.getSingleton();
17892
17892
  Handsontable.CellCoords = _3rdparty_walkontable_src__rspack_import_0["default"];
17893
17893
  Handsontable.CellRange = _3rdparty_walkontable_src__rspack_import_1["default"];
17894
17894
  Handsontable.packageName = 'handsontable';
17895
- Handsontable.buildDate = "01/09/2026 11:40:23";
17896
- Handsontable.version = "18.1.0";
17895
+ Handsontable.buildDate = "15/09/2026 08:36:14";
17896
+ Handsontable.version = "18.1.1";
17897
17897
  Handsontable.languages = {
17898
17898
  dictionaryKeys: _i18n_registry__rspack_import_13,
17899
17899
  getLanguageDictionary: _i18n_registry__rspack_import_14.getLanguageDictionary,
@@ -50265,7 +50265,7 @@ function _injectProductInfo(param) {
50265
50265
  }
50266
50266
  const hasValidType = !isEmpty(key);
50267
50267
  const isNonCommercial = typeof key === 'string' && (key.toLowerCase() === 'non-commercial-and-evaluation' || key.toLowerCase() === 'ht68e-1f2b7-47158-70b05-0842f');
50268
- const hotVersion = "18.1.0";
50268
+ const hotVersion = "18.1.1";
50269
50269
  let keyValidityDate;
50270
50270
  let consoleMessageState = 'invalid';
50271
50271
  let domMessageState = 'invalid';
@@ -50276,7 +50276,7 @@ function _injectProductInfo(param) {
50276
50276
  domMessageState = 'valid';
50277
50277
  } else if (hasValidType || schemaValidity) {
50278
50278
  if (schemaValidity) {
50279
- const resolvedReleaseDate = releaseDate ?? "01/09/2026" ?? '';
50279
+ const resolvedReleaseDate = releaseDate ?? "15/09/2026" ?? '';
50280
50280
  const [dd, mm, yyyy] = resolvedReleaseDate.split('/').map(Number);
50281
50281
  const releaseDays = Math.floor(Date.UTC(yyyy, mm - 1, dd) / 8.64e7);
50282
50282
  const keyValidityDays = _extractTime(key);
@@ -50420,7 +50420,7 @@ function _injectProductInfo(param) {
50420
50420
  // to the build-time value here while the emitter keeps the empty string, and the two would
50421
50421
  // disagree about one key: the emitter reads no date at all (so the key is valid) while this reads
50422
50422
  // the build date (so the key may be expired).
50423
- const resolvedReleaseDate = releaseDate ?? "01/09/2026" ?? '';
50423
+ const resolvedReleaseDate = releaseDate ?? "15/09/2026" ?? '';
50424
50424
  const [dd, mm, yyyy] = resolvedReleaseDate.split('/').map(Number);
50425
50425
  const releaseDays = Math.floor(Date.UTC(yyyy, mm - 1, dd) / 8.64e7);
50426
50426
  const keyValidityDays = _extractTime(normalizedKey);
@@ -50478,7 +50478,7 @@ function _injectProductInfo(param) {
50478
50478
  }
50479
50479
  // `||`, not `??`: a caller resolving the build constant in a broken way passes '' (not
50480
50480
  // undefined), and the empty string must still fall back to the build-time value.
50481
- const resolvedReleaseDate = releaseDate || "01/09/2026" || 0;
50481
+ const resolvedReleaseDate = releaseDate || "15/09/2026" || 0;
50482
50482
  const lifecycle = (0,_utils_entitlementLicenseKey__rspack_import_5.classifyEntitlement)(entitlement, {
50483
50483
  now: Date.now(),
50484
50484
  buildDate: _releaseDateToIsoDate(resolvedReleaseDate)
@@ -50513,7 +50513,7 @@ function _injectProductInfo(param) {
50513
50513
  const params = {
50514
50514
  daysRemaining: lifecycle.daysRemaining,
50515
50515
  licensedUntil: lifecycle.licensedUntil ?? undefined,
50516
- hotVersion: "18.1.0"
50516
+ hotVersion: "18.1.1"
50517
50517
  };
50518
50518
  if (channels.console && !_entitlementNotified.has(key ?? '')) {
50519
50519
  // An unreadable key reuses the frozen legacy copy - it is the same failure, and the
@@ -65474,9 +65474,11 @@ const META_HEAD = [
65474
65474
  * @type {'cells-only' | 'column-headers-only' | 'with-column-group-headers' | 'with-column-headers'}
65475
65475
  */ #copyMode = 'cells-only';
65476
65476
  /**
65477
- * Registry of the clipboard events that were already processed. When the grid lives inside
65478
- * a Shadow DOM tree, the clipboard listeners are bound both to the document and to the
65479
- * grid's shadow root, so the same event instance can reach the plugin twice.
65477
+ * Registry of the clipboard events that were already processed. The clipboard listeners are
65478
+ * bound to the document, to the grid's own element, and - when the grid lives inside a Shadow
65479
+ * DOM tree - to its shadow root, so the same event instance reaches the plugin more than once
65480
+ * for every grid, not just a grid inside a shadow tree. Keyed on event identity, which holds
65481
+ * because `EventManager` hands every listener the same event object.
65480
65482
  *
65481
65483
  * @type {WeakSet<object>}
65482
65484
  */ #processedClipboardEvents = new WeakSet();
@@ -65539,8 +65541,11 @@ const META_HEAD = [
65539
65541
  this.addHook('afterContextMenuDefaultOptions', this.#onAfterContextMenuDefaultOptions);
65540
65542
  this.addHook('afterSelection', this.#onAfterSelection);
65541
65543
  this.addHook('afterSelectionEnd', this.#onAfterSelectionEnd);
65542
- // Events are attached to the document, not the root table element - as it should,
65543
- // for Chrome 133 and lower to copy/paste/cut work properly (#dev-2277).
65544
+ // The same three listeners go on up to three targets, because a clipboard event reaches
65545
+ // the grid by a different route depending on where the grid is embedded. More than one
65546
+ // of them can see the same event, so `#processedClipboardEvents` keeps the handler
65547
+ // running once - the event manager hands every listener the same event object, which is
65548
+ // what makes identity a usable key here.
65544
65549
  const dedupe = (handler)=>(event)=>{
65545
65550
  if (this.#processedClipboardEvents.has(event)) {
65546
65551
  return;
@@ -65548,20 +65553,27 @@ const META_HEAD = [
65548
65553
  this.#processedClipboardEvents.add(event);
65549
65554
  handler(event);
65550
65555
  };
65551
- this.eventManager.addEventListener(this.hot.rootDocument, 'copy', dedupe((e)=>this.onCopy(e)));
65552
- this.eventManager.addEventListener(this.hot.rootDocument, 'cut', dedupe((e)=>this.onCut(e)));
65553
- this.eventManager.addEventListener(this.hot.rootDocument, 'paste', dedupe((e)=>this.onPaste(e)));
65556
+ const bindClipboardListeners = (target)=>{
65557
+ this.eventManager.addEventListener(target, 'copy', dedupe((e)=>this.onCopy(e)));
65558
+ this.eventManager.addEventListener(target, 'cut', dedupe((e)=>this.onCut(e)));
65559
+ this.eventManager.addEventListener(target, 'paste', dedupe((e)=>this.onPaste(e)));
65560
+ };
65561
+ // The document. It carries the events that target `document.body`, which sits outside the
65562
+ // grid where no listener below it would ever see them, and it is what keeps copy/cut/paste
65563
+ // working on Chrome 133 and lower (#dev-2277). Never drop it.
65564
+ bindClipboardListeners(this.hot.rootDocument);
65565
+ // The grid's own element. Sandboxed hosts (Salesforce Lightning Web Security) deliver
65566
+ // clipboard events only to listeners bound at or below the element the grid owns - neither
65567
+ // the document nor the shadow-root listeners below run there, which left copy, cut and
65568
+ // paste doing nothing inside a Lightning Web Component (#dev-2795). Everywhere else this
65569
+ // listener just sees an in-grid event before the others do, and they dedupe against it.
65570
+ bindClipboardListeners(this.hot.rootElement);
65554
65571
  const rootNode = this.hot.rootElement.getRootNode();
65555
- // When the grid lives inside a Shadow DOM tree, the same listeners are attached to the
65556
- // grid's shadow root as well. Sandboxed hosts (e.g. Salesforce Lightning Web Security)
65557
- // retarget events observed at the document level, which hides the grid internals from
65558
- // the document listeners above. Listeners bound inside the grid's own shadow tree still
65559
- // receive the untouched event path. The `#processedClipboardEvents` registry prevents
65560
- // double handling when both listeners receive the same event.
65572
+ // The grid's shadow root, when it has one. Sandboxed hosts retarget events observed at the
65573
+ // document level, which hides the grid internals from the document listeners; listeners
65574
+ // bound inside the grid's own shadow tree still receive the untouched event path.
65561
65575
  if ((0,_helpers_dom_element__rspack_import_3.isShadowRoot)(rootNode)) {
65562
- this.eventManager.addEventListener(rootNode, 'copy', dedupe((e)=>this.onCopy(e)));
65563
- this.eventManager.addEventListener(rootNode, 'cut', dedupe((e)=>this.onCut(e)));
65564
- this.eventManager.addEventListener(rootNode, 'paste', dedupe((e)=>this.onPaste(e)));
65576
+ bindClipboardListeners(rootNode);
65565
65577
  }
65566
65578
  // Without this workaround Safari (tested on Safari@16.5.2) does allow copying/cutting from the browser menu.
65567
65579
  if ((0,_helpers_browser__rspack_import_4.isSafari)()) {
@@ -81048,8 +81060,21 @@ const SHORTCUTS_GROUP = PLUGIN_KEY;
81048
81060
  component?.destroy();
81049
81061
  this.components.set(key, null);
81050
81062
  });
81063
+ // Destroy and null the observer alongside the collection, the way `destroy()` tears down
81064
+ // both. The observer holds its own reference to the collection, so leaving it bound to a
81065
+ // destroyed collection strands it: `enablePlugin()` recreates the collection but skips the
81066
+ // observer it still holds, and the next data change reads the destroyed collection and throws
81067
+ // (DEV-2889). Order between the two does not matter - neither `destroy()` fires a hook the
81068
+ // other listens to.
81069
+ this.conditionUpdateObserver?.destroy();
81070
+ this.conditionUpdateObserver = null;
81051
81071
  this.conditionCollection?.destroy();
81052
81072
  this.conditionCollection = null;
81073
+ // Drop the focus navigator too. It caches `focusableItems` built from the component elements
81074
+ // just destroyed, and its `enablePlugin()` rebuild sits behind an `if (!this.#menuFocusNavigator)`
81075
+ // guard - so a surviving instance keeps pointing the Tab focus at detached elements and blocks
81076
+ // a fresh one. Same stale-reference family as the collection/observer above (DEV-2889).
81077
+ this.#menuFocusNavigator = undefined;
81053
81078
  this.hot.rowIndexMapper.unregisterMap(this.pluginName ?? '');
81054
81079
  }
81055
81080
  this.unregisterShortcuts();
@@ -118170,7 +118195,7 @@ __webpack_require__.r(__webpack_exports__);
118170
118195
  __webpack_require__.d(__webpack_exports__, {
118171
118196
  "default": () => (__rspack_default_export)
118172
118197
  });
118173
- /* eslint-disable max-len, quotes */ /* This file is autogenerated. */ /* export default */ const __rspack_default_export = ("/*!\n * Copyright (c) HANDSONCODE sp. z o. o.\n *\n * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in\n * Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number\n * 538651, EU tax ID number: PL5862294002, share capital: PLN 67,200.00.\n *\n * This software is protected by applicable copyright laws, including international treaties, and dual-\n * licensed - depending on whether your use for commercial purposes, meaning intended for or\n * resulting in commercial advantage or monetary compensation, or not.\n *\n * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing\n * the suitability, performance, and usefulness of this software outside the production environment,\n * you agree to be bound by the terms included in the \"handsontable-non-commercial-license.pdf\" file.\n *\n * Your use of this software for commercial purposes is subject to the terms included in an applicable\n * license agreement.\n *\n * In any case, you must not make any such use of this software as to develop software which may be\n * considered competitive with this software.\n *\n * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN \"AS IS\"\n * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO\n * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,\n * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM\n * USE OR INABILITY TO USE THIS SOFTWARE.\n *\n * Version: 18.1.0\n * Release date: 01/09/2026 (built at 01/09/2026 11:40:21)\n */\n@charset \"UTF-8\";\n.ht-root-wrapper {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n position: relative;\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n.ht-root-wrapper.ht-shadow-dom {\n isolation: isolate;\n}\n.ht-root-wrapper.ht-slot-bottom-filled .ht-wrapper:not(.htHorizontallyScrollableByWindow) .ht_master .wtHolder, .ht-root-wrapper.ht-slot-bottom-filled .ht-wrapper:not(.htVerticallyScrollableByWindow) .ht_master .wtHolder, .ht-root-wrapper.ht-slot-top-filled .ht-wrapper:not(.htHorizontallyScrollableByWindow) .ht_master .wtHolder, .ht-root-wrapper.ht-slot-top-filled .ht-wrapper:not(.htVerticallyScrollableByWindow) .ht_master .wtHolder {\n background-color: var(--ht-background-color);\n box-shadow: inset 0 0 0 1px var(--ht-border-color);\n}\n\n.htFocusCatcher {\n display: block !important;\n position: absolute;\n width: 0;\n height: 0;\n margin: 0;\n padding: 0;\n border: 0;\n outline: 0;\n opacity: 0;\n z-index: -1;\n}\n\n.ht-grid {\n position: relative;\n flex: 1 1 auto;\n min-height: 0;\n}\n\n.ht-grid-content {\n height: 100%;\n}\n\n.ht-slot-top, .ht-slot-bottom {\n flex: 0 0 auto;\n overflow-x: auto;\n}\n\n.ht-slot-element {\n width: 100%;\n box-sizing: border-box;\n border: 1px solid var(--ht-border-color);\n}\n\n.ht-slot-top > .ht-slot-element:not(:first-of-type) {\n border-top-width: 0;\n}\n.ht-slot-top > .ht-slot-element:last-of-type {\n border-bottom-width: 0;\n}\n\n.ht-slot-bottom > .ht-slot-element:not(:last-of-type) {\n border-bottom-width: 0;\n}\n.ht-slot-bottom > .ht-slot-element:first-of-type {\n border-top-width: 0;\n}\n\n.htScrollbarTest {\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n}\n\n.htScrollbarSafariTest::-webkit-scrollbar {\n width: 9px;\n height: 9px;\n}\n\n.handsontable {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n position: relative;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n letter-spacing: var(--ht-letter-spacing);\n color: var(--ht-foreground-color);\n /* Miscellaneous */\n touch-action: manipulation;\n}\n.handsontable .wtHolder {\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n}\n.handsontable .wtHolder::-webkit-scrollbar {\n width: 9px;\n height: 9px;\n}\n.handsontable .wtHolder::-webkit-scrollbar-track {\n background: var(--ht-scrollbar-track-color);\n border-radius: var(--ht-scrollbar-border-radius);\n}\n.handsontable .wtHolder::-webkit-scrollbar-thumb {\n background-color: var(--ht-scrollbar-thumb-color);\n border-radius: var(--ht-scrollbar-border-radius);\n}\n.handsontable .wtHolder::-webkit-scrollbar-corner {\n background: var(--ht-scrollbar-track-color);\n border-end-end-radius: var(--ht-scrollbar-border-radius);\n}\n.handsontable.ht-wrapper {\n height: 100%;\n width: 100%;\n}\n.handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td:first-of-type {\n border-inline-start-width: 1px;\n}\n.handsontable.htGhostTable.htNestedHeaders table {\n border-spacing: 0;\n border-collapse: collapse;\n}\n.handsontable.htGhostTable table thead th {\n border-bottom-width: 0;\n}\n.handsontable.htGhostTable table tbody tr:first-of-type th:first-child,\n.handsontable.htGhostTable table tbody tr:first-of-type td:first-child {\n height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);\n}\n.handsontable.htGhostTable table tbody tr th,\n.handsontable.htGhostTable table tbody tr td {\n border-top-width: 0;\n height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);\n}\n.handsontable:not(.htHorizontallyScrollableByWindow).htHasScrollX .ht_master .wtHolder, .handsontable:not(.htHorizontallyScrollableByWindow).htHasScrollY .ht_master .wtHolder, .handsontable:not(.htVerticallyScrollableByWindow).htHasScrollX .ht_master .wtHolder, .handsontable:not(.htVerticallyScrollableByWindow).htHasScrollY .ht_master .wtHolder {\n background-color: var(--ht-background-color);\n box-shadow: inset 0 0 0 1px var(--ht-border-color);\n}\n.handsontable :where(table.htCore > tbody, .htGhostTable > table > tbody) > tr.ht__row_even > th {\n background-color: var(--ht-row-header-even-background-color);\n}\n.handsontable :where(table.htCore > tbody, .htGhostTable > table > tbody) > tr.ht__row_even > td {\n background-color: var(--ht-row-cell-even-background-color);\n}\n.handsontable :where(table.htCore > tbody, .htGhostTable > table > tbody) > tr.ht__row_odd > th {\n background-color: var(--ht-row-header-odd-background-color);\n}\n.handsontable :where(table.htCore > tbody, .htGhostTable > table > tbody) > tr.ht__row_odd > td {\n background-color: var(--ht-row-cell-odd-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th,\n.handsontable :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td {\n height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n vertical-align: top;\n border-top-width: 0;\n border-inline-start-width: 0;\n border-inline-end-width: 1px;\n border-bottom-width: 1px;\n border-style: solid;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n white-space: pre-wrap;\n overflow: hidden;\n outline: none;\n outline-width: 0;\n empty-cells: show;\n box-sizing: border-box;\n color: var(--ht-foreground-color);\n border-top-color: var(--ht-cell-vertical-border-color);\n border-bottom-color: var(--ht-cell-vertical-border-color);\n border-inline-start-color: var(--ht-cell-horizontal-border-color);\n border-inline-end-color: var(--ht-cell-horizontal-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.invisibleSelection,\n.handsontable :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td.invisibleSelection {\n outline: none;\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.invisibleSelection::selection,\n.handsontable :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td.invisibleSelection::selection {\n background: transparent;\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th {\n position: relative;\n overflow: visible;\n text-align: center;\n font-weight: var(--ht-header-font-weight);\n white-space: nowrap;\n color: var(--ht-header-foreground-color);\n background-color: var(--ht-header-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:last-child {\n /* Foundation framework fix */\n border-inline-start-width: 0;\n border-inline-end-width: 1px;\n border-bottom-width: 1px;\n border-inline-end-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:last-child.ht__active_highlight {\n border-inline-end-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:first-child {\n border-inline-start-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:first-child.ht__active_highlight {\n border-inline-start-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:first-child, .handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:nth-child(2) {\n border-inline-start-width: 1px;\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.current {\n box-shadow: inset 0 0 0 1px var(--ht-cell-selection-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.active {\n color: var(--ht-header-active-foreground-color);\n background-color: var(--ht-header-active-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.ht__highlight {\n color: var(--ht-header-highlighted-foreground-color);\n background-color: var(--ht-header-highlighted-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.ht__active_highlight {\n border-color: var(--ht-header-active-border-color);\n color: var(--ht-header-active-foreground-color);\n background-color: var(--ht-header-active-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.ht__active_highlight-prev {\n border-inline-end-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.ht__active_highlight-seam {\n border-inline-end-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr.ht__row_odd > th.ht__highlight, .handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr.ht__row_even > th.ht__highlight {\n color: var(--ht-header-row-highlighted-foreground-color);\n background-color: var(--ht-header-row-highlighted-background-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr.ht__row_odd > th.ht__active_highlight, .handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr.ht__row_even > th.ht__active_highlight {\n color: var(--ht-header-row-active-foreground-color);\n background-color: var(--ht-header-row-active-background-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr:first-of-type > th:first-child:empty::after,\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr:first-of-type > td:first-child:empty::after {\n content: \"\";\n display: block;\n min-height: var(--ht-line-height);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > th {\n padding: 0;\n color: var(--ht-header-row-foreground-color);\n background-color: var(--ht-header-row-background-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > th .relative {\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n min-height: 100%;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > td:first-child {\n border-inline-start-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > td:last-child {\n border-inline-end-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > th.ht__active_highlight-prev-row {\n border-bottom-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr > th {\n padding: 0;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr > th.ht__active_highlight {\n box-shadow: -1px 0 0 0 var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr > th .relative {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n gap: 2px;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr > th .relative .colHeader {\n flex: 1 1 auto;\n min-width: 0;\n text-overflow: ellipsis;\n overflow: hidden;\n vertical-align: top;\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > th,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > td {\n border-top-color: var(--ht-border-color);\n border-top-width: 1px;\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > th.ht__active_highlight, .handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > th.ht__active_highlight-row-seam-bottom,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > td.ht__active_highlight,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > td.ht__active_highlight-row-seam-bottom {\n border-top-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > th,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > td {\n border-bottom-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > th.ht__active_highlight, .handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > th.ht__active_highlight-row-seam-top,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > td.ht__active_highlight,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > td.ht__active_highlight-row-seam-top {\n border-bottom-color: var(--ht-header-active-border-color);\n}\n.handsontable div[class^=ht_clone] thead .ht__highlight .relative::after {\n content: \"\";\n display: block;\n position: absolute;\n left: -1px;\n right: -1px;\n bottom: -1px;\n height: var(--ht-header-highlighted-shadow-size);\n background-color: var(--ht-accent-color);\n}\n.handsontable div[class^=ht_clone] thead tr:only-of-type .ht__highlight .relative::after {\n bottom: 0;\n}\n.handsontable div[class^=ht_clone] tbody .ht__highlight .relative::after {\n content: \"\";\n display: block;\n position: absolute;\n top: -1px;\n right: -1px;\n bottom: -1px;\n width: var(--ht-header-highlighted-shadow-size);\n background-color: var(--ht-accent-color);\n}\n.handsontable div[class^=ht_clone] :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td:first-of-type {\n border-inline-start-width: 1px;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr:not(:last-child) > th {\n /* Fix for - nested columns with hidden column */\n overflow: hidden;\n}\n.handsontable .hide {\n display: none;\n}\n.handsontable .relative {\n position: relative;\n box-sizing: border-box;\n}\n.handsontable .wtHider {\n width: 0;\n}\n.handsontable .wtSpreader {\n position: relative;\n /* must be 0, otherwise blank space appears in scroll demo after scrolling max to the right */\n width: 0;\n height: auto;\n}\n.handsontable .htAutoSize {\n position: absolute;\n left: -99000px;\n top: -99000px;\n visibility: hidden;\n}\n.handsontable .htTextEllipsis {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n.handsontable table.htCore, .handsontable:where(.htGhostTable) > table,\n.handsontable :where(table.htCore, .htGhostTable > table) > thead,\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody,\n.handsontable input:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))),\n.handsontable textarea:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))),\n.handsontable div:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))) {\n box-sizing: content-box;\n}\n.handsontable input:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))),\n.handsontable textarea:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))) {\n min-height: initial;\n}\n.handsontable .htCore {\n width: 0;\n margin: 0;\n border-width: 0;\n border-spacing: 0;\n border-collapse: separate;\n outline-width: 0;\n table-layout: fixed;\n cursor: default;\n background-color: var(--ht-background-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > colgroup > col {\n width: 64px;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > colgroup > col.rowHeader {\n width: 64px;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > colgroup > col.hidden {\n width: 0 !important;\n}\n.handsontable span.colHeader, .handsontable span.rowHeader {\n display: inline-block;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr.hidden {\n display: none;\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr.hidden > td,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr.hidden > th {\n display: none;\n}\n.handsontable a:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))) {\n color: var(--ht-link-color);\n}\n.handsontable a:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))):hover {\n color: var(--ht-link-hover-color);\n}\n.handsontable .ht_clone_top :where(table.htCore > thead > tr) > th:nth-child(2) {\n border-inline-start-width: 0;\n border-inline-end-width: 1px;\n}\n.handsontable .ht_clone_top_inline_start_corner :where(table.htCore > thead > tr) > th:nth-child(2) {\n border-inline-start-width: 0;\n border-inline-end-width: 1px;\n}\n.handsontable.htRowHeaders :where(table.htCore) > thead > tr > th:nth-child(2) {\n border-inline-start-width: 1px;\n}\n.handsontable .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) :where(table.htCore) > tbody > tr > th,\n.handsontable .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) :where(table.htCore) > thead > tr > th:first-child,\n.handsontable .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable:not(.htGhostTable) :where(table.htCore) > tbody > tr > th,\n.handsontable .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top):not(.htGhostTable) :where(table.htCore) > thead > tr > th:first-child {\n border-inline-end-width: 0;\n border-inline-start-width: 1px;\n}\n.handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) :where(table.htCore) > thead > tr:last-child > th, .handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable :where(table.htCore) > thead > tr:last-child > th,\n.handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) :where(table.htCore) > thead > tr.lastChild > th, .handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable :where(table.htCore) > thead > tr.lastChild > th {\n border-bottom-width: 0;\n}\n.handsontable.htAutoRowSize .ht_master.innerBorderTop :where(table.htCore) > tbody > tr:first-child > th,\n.handsontable.htAutoRowSize .ht_master.innerBorderTop :where(table.htCore) > tbody > tr:first-child > td {\n border-top-width: 0;\n}\n.handsontable.htAutoRowSize .ht_master.innerBorderTop ~ .ht_clone_inline_start :where(table.htCore) > tbody > tr:first-child > th,\n.handsontable.htAutoRowSize .ht_master.innerBorderTop ~ .ht_clone_inline_start :where(table.htCore) > tbody > tr:first-child > td {\n border-top-width: 0;\n}\n.handsontable .ht_master table.htCore > thead,\n.handsontable .ht_master table.htCore > tbody > tr > th,\n.handsontable .ht_clone_inline_start table.htCore > thead {\n visibility: hidden;\n}\n\n.ht_master,\n.ht_clone_inline_start,\n.ht_clone_top,\n.ht_clone_bottom {\n overflow: hidden;\n}\n.ht_master .wtHolder,\n.ht_clone_inline_start .wtHolder,\n.ht_clone_top .wtHolder,\n.ht_clone_bottom .wtHolder {\n overflow: hidden;\n}\n\n.ht_master .wtHolder {\n overflow: auto;\n}\n\n[dir=rtl].handsontable :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td[dir=ltr] {\n border-inline-end-width: 0;\n border-inline-start-width: 1px;\n}\n[dir=rtl].handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > td[dir=ltr]:last-child {\n border-inline-start-color: var(--ht-border-color);\n}\n[dir=rtl].handsontable div[class^=ht_clone] tbody .ht__highlight .relative::after {\n right: auto;\n left: -1px;\n}\n\n.handsontable.ht-wrapper {\n border-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_master .htCore > tbody > tr:first-child > td:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_master .htCore > tbody > tr:first-child > td:last-child {\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_top_inline_start_corner .htCore > tbody > tr:first-child > td:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_top .htCore > tbody > tr:first-child > td:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_top .htCore > tbody > tr:first-child > td:last-child {\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_inline_start .htCore > tbody > tr:first-child > th:first-child,\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_inline_start .htCore > tbody > tr:first-child > td:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .wtHolder {\n border-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore {\n border-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > thead > tr:first-child > th:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > thead > tr:first-child > th:not(.hiddenHeader).htLastVisibleHeader {\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > thead > tr:last-child > th:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > thead > tr:last-child > th:not(.hiddenHeader).htLastVisibleHeader {\n border-end-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > tbody > tr:last-child > td:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > tbody > tr:last-child > td:last-child {\n border-end-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top_inline_start_corner .htCore {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top_inline_start_corner .htCore > thead > tr:first-child > th:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top .htCore {\n border-start-start-radius: var(--ht-border-radius);\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top .htCore > thead > tr:first-child > th:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top .htCore > thead > tr:first-child > th:not(.hiddenHeader).htLastVisibleHeader {\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_inline_start .htCore {\n border-start-start-radius: var(--ht-border-radius);\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_inline_start .htCore > thead > tr:first-child > th:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_inline_start .htCore > tbody > tr:last-child > th:first-child,\n.handsontable.ht-wrapper .ht_clone_inline_start .htCore > tbody > tr:last-child > td:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom_inline_start_corner .htCore {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom_inline_start_corner .htCore > :where(thead, tbody) > tr:last-child > th:first-child,\n.handsontable.ht-wrapper .ht_clone_bottom_inline_start_corner .htCore > :where(thead, tbody) > tr:last-child > td:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom .htCore {\n border-end-start-radius: var(--ht-border-radius);\n border-end-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom .htCore > :where(thead, tbody) > tr:last-child > th:first-child,\n.handsontable.ht-wrapper .ht_clone_bottom .htCore > :where(thead, tbody) > tr:last-child > td:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom .htCore > :where(thead, tbody) > tr:last-child > th:last-child,\n.handsontable.ht-wrapper .ht_clone_bottom .htCore > :where(thead, tbody) > tr:last-child > td:last-child {\n border-end-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > thead > tr:last-child > th:first-child,\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > tbody > tr:last-child > td:first-child,\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > tbody > tr:last-child > th:first-child {\n border-end-start-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > thead > tr:last-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > tbody > tr:last-child > td:last-child,\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > tbody > tr:last-child > th:last-child {\n border-end-end-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > thead > tr:first-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > tbody > tr:first-child > td:last-child,\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > tbody > tr:first-child > th:last-child {\n border-start-end-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > thead > tr:last-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > tbody > tr:last-child > td:last-child,\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > tbody > tr:last-child > th:last-child {\n border-end-end-radius: 0;\n}\n\n.ht-root-wrapper {\n border-radius: var(--ht-border-radius);\n}\n.ht-root-wrapper.ht-slot-bottom-filled .ht-wrapper,\n.ht-root-wrapper.ht-slot-bottom-filled .ht_master .wtHolder {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n}\n.ht-root-wrapper.ht-slot-bottom-filled .htCore {\n border-end-start-radius: 0 !important;\n border-end-end-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > thead > tr:last-child > th:first-child,\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > tbody > tr:last-child > td:first-child,\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > tbody > tr:last-child > th:first-child {\n border-end-start-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > thead > tr:last-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > tbody > tr:last-child > td:last-child,\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > tbody > tr:last-child > th:last-child {\n border-end-end-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-top-filled .ht-wrapper,\n.ht-root-wrapper.ht-slot-top-filled .ht_master .wtHolder {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n}\n.ht-root-wrapper.ht-slot-top-filled .htCore {\n border-start-start-radius: 0 !important;\n border-start-end-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-top-filled .htCore > thead > tr:first-child > th:first-child,\n.ht-root-wrapper.ht-slot-top-filled .htCore > tbody > tr:first-child > td:first-child,\n.ht-root-wrapper.ht-slot-top-filled .htCore > tbody > tr:first-child > th:first-child {\n border-start-start-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-top-filled .htCore > thead > tr:first-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.ht-root-wrapper.ht-slot-top-filled .htCore > tbody > tr:first-child > td:last-child,\n.ht-root-wrapper.ht-slot-top-filled .htCore > tbody > tr:first-child > th:last-child {\n border-start-end-radius: 0 !important;\n}\n.ht-root-wrapper .ht-slot-element {\n border-radius: var(--ht-border-radius);\n}\n.ht-root-wrapper .ht-slot-bottom > .ht-slot-element:not(:last-of-type) {\n border-radius: 0;\n}\n.ht-root-wrapper .ht-slot-bottom > .ht-slot-element:last-of-type {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n}\n.ht-root-wrapper .ht-slot-top > .ht-slot-element:not(:first-of-type) {\n border-radius: 0;\n}\n.ht-root-wrapper .ht-slot-top > .ht-slot-element:first-of-type {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n}\n\n.handsontable.mobile {\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n -webkit-overflow-scrolling: touch;\n}\n.handsontable.mobile .wtHolder {\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n -webkit-overflow-scrolling: touch;\n}\n.handsontable.mobile .handsontableInput:focus {\n box-shadow: inset 0 0 0 2px var(--ht-accent-color);\n -webkit-appearance: none;\n}\n.handsontable .topSelectionHandle,\n.handsontable .topSelectionHandle-HitArea,\n.handsontable .bottomSelectionHandle,\n.handsontable .bottomSelectionHandle-HitArea {\n inset-inline-start: -10000px;\n inset-inline-end: unset;\n top: -10000px;\n z-index: 9999;\n}\n.handsontable.hide-tween {\n -webkit-animation: opacity-hide 0.2s;\n animation: opacity-hide 0.2s;\n animation-fill-mode: forwards;\n -webkit-animation-fill-mode: forwards;\n}\n.handsontable.show-tween {\n -webkit-animation: opacity-show 0.3s;\n animation: opacity-show 0.3s;\n animation-fill-mode: forwards;\n -webkit-animation-fill-mode: forwards;\n}\n\n.ht_clone_master {\n z-index: 100;\n}\n\n.ht_clone_inline_start {\n z-index: 120;\n}\n\n.ht_clone_bottom {\n z-index: 130;\n}\n\n.ht_clone_bottom_inline_start_corner {\n z-index: 150;\n}\n\n.ht_clone_top {\n z-index: 160;\n}\n\n.ht_clone_top_inline_start_corner {\n z-index: 180;\n}\n\n.ht_editor_hidden {\n z-index: -1;\n}\n\n.ht_editor_visible {\n z-index: 200;\n}\n\n.handsontable td.area {\n position: relative;\n}\n.handsontable td.area::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-1 {\n position: relative;\n}\n.handsontable td.area-1::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-2 {\n position: relative;\n}\n.handsontable td.area-2::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-3 {\n position: relative;\n}\n.handsontable td.area-3::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-4 {\n position: relative;\n}\n.handsontable td.area-4::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-5 {\n position: relative;\n}\n.handsontable td.area-5::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-6 {\n position: relative;\n}\n.handsontable td.area-6::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-7 {\n position: relative;\n}\n.handsontable td.area-7::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area::before {\n opacity: 0.14;\n}\n.handsontable td.area-1::before {\n opacity: 0.21;\n}\n.handsontable td.area-2::before {\n opacity: 0.28;\n}\n.handsontable td.area-3::before {\n opacity: 0.35;\n}\n.handsontable td.area-4::before {\n opacity: 0.42;\n}\n.handsontable td.area-5::before {\n opacity: 0.49;\n}\n.handsontable td.area-6::before {\n opacity: 0.56;\n}\n.handsontable td.area-7::before {\n opacity: 0.63;\n}\n.handsontable td.area {\n border-color: color-mix(in srgb, var(--ht-border-color), var(--ht-foreground-color) 10%);\n}\n.handsontable .wtSelectionHandle {\n position: absolute;\n box-sizing: border-box;\n z-index: 115;\n background: var(--ht-cell-selection-handle-background-color);\n border: var(--ht-cell-selection-handle-border-width) solid var(--ht-cell-selection-handle-border-color);\n border-radius: var(--ht-cell-selection-handle-border-radius);\n animation: ht-selection-handle-fade-in var(--ht-table-transition) ease-in-out backwards;\n}\n.handsontable .wtSelectionHandle:hover {\n background: color-mix(in srgb, var(--ht-cell-selection-handle-border-color) 30%, var(--ht-cell-selection-handle-background-color));\n}\n@media (prefers-reduced-motion: reduce) {\n .handsontable .wtSelectionHandle {\n animation: none;\n }\n}\n.handsontable .wtSelectionHandle--top,\n.handsontable .wtSelectionHandle--bottom {\n width: var(--ht-cell-selection-handle-length);\n height: var(--ht-cell-selection-handle-size);\n cursor: ns-resize;\n}\n.handsontable .wtSelectionHandle--start,\n.handsontable .wtSelectionHandle--end {\n width: var(--ht-cell-selection-handle-size);\n height: var(--ht-cell-selection-handle-length);\n cursor: ew-resize;\n}\n.handsontable.ht__resizing-selection--top .wtSelectionHandle:not(.wtSelectionHandle--top), .handsontable.ht__resizing-selection--bottom .wtSelectionHandle:not(.wtSelectionHandle--bottom), .handsontable.ht__resizing-selection--start .wtSelectionHandle:not(.wtSelectionHandle--start), .handsontable.ht__resizing-selection--end .wtSelectionHandle:not(.wtSelectionHandle--end) {\n display: none !important;\n}\n.handsontable.ht__resizing-selection--top,\n.handsontable.ht__resizing-selection--top *, .handsontable.ht__resizing-selection--bottom,\n.handsontable.ht__resizing-selection--bottom * {\n cursor: ns-resize !important;\n}\n.handsontable.ht__resizing-selection--start,\n.handsontable.ht__resizing-selection--start *, .handsontable.ht__resizing-selection--end,\n.handsontable.ht__resizing-selection--end * {\n cursor: ew-resize !important;\n}\n.handsontable.ht__resizing-selection--top .wtSelectionHandle--top, .handsontable.ht__resizing-selection--bottom .wtSelectionHandle--bottom, .handsontable.ht__resizing-selection--start .wtSelectionHandle--start, .handsontable.ht__resizing-selection--end .wtSelectionHandle--end {\n background: color-mix(in srgb, var(--ht-cell-selection-handle-border-color) 30%, var(--ht-cell-selection-handle-background-color));\n}\n.handsontable .wtMoveZone {\n cursor: grab;\n}\n.handsontable .wtMoveZone:active {\n cursor: grabbing;\n}\n.handsontable.ht__moving {\n cursor: grabbing;\n}\n.handsontable.ht__moving * {\n cursor: grabbing !important;\n}\n.handsontable.ht__moving .wtBorder.area,\n.handsontable.ht__moving .wtBorder.current {\n display: none !important;\n}\n.handsontable.ht__moving .wtSelectionHandle,\n.handsontable.ht__moving .wtMoveZone {\n visibility: hidden !important;\n}\n.handsontable .wtBorder {\n position: absolute;\n font-size: 0;\n}\n.handsontable .wtBorder:nth-child(1), .handsontable .wtBorder:nth-child(3) {\n z-index: 2;\n}\n.handsontable .wtBorder:nth-child(2), .handsontable .wtBorder:nth-child(4) {\n z-index: 1;\n}\n.handsontable .wtBorder.hidden {\n display: none !important;\n}\n.handsontable .wtBorder.current {\n z-index: 10;\n background-color: var(--ht-cell-selection-border-color) !important;\n}\n.handsontable .wtBorder.area {\n z-index: 8;\n background-color: var(--ht-cell-selection-border-color) !important;\n}\n.handsontable .wtBorder.fill {\n z-index: 6;\n background-color: var(--ht-cell-autofill-fill-border-color, #68696c) !important;\n}\n.handsontable .wtBorder.corner {\n border-radius: var(--ht-cell-autofill-border-radius) !important;\n background-color: var(--ht-cell-autofill-background-color, #1a42e8) !important;\n border-color: var(--ht-cell-autofill-border-color) !important;\n font-size: 0;\n cursor: crosshair;\n z-index: 110;\n}\n.handsontable .wtBorder.corner::after {\n content: \"\";\n position: absolute;\n border-radius: var(--ht-cell-autofill-border-radius);\n inset: min(0px, (var(--ht-cell-autofill-size) - var(--ht-cell-autofill-hit-area-size)) / 2);\n background: transparent;\n}\n.handsontable .wtBorder.corner.wtCornerInlineEndEdge::after {\n inset-inline-end: 0;\n}\n.handsontable .wtBorder.corner.wtCornerBlockEndEdge::after {\n inset-block-end: 0;\n}\n\n@keyframes ht-selection-handle-fade-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n.hot-display-license-info {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n padding: var(--ht-license-vertical-padding, 16px) var(--ht-license-horizontal-padding, 16px);\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n color: var(--ht-license-foreground-color);\n background-color: var(--ht-license-background-color, #f7f7f9);\n text-align: left;\n min-width: 300px;\n}\n.hot-display-license-info a {\n font-size: var(--ht-license-font-size);\n color: var(--ht-link-color);\n}\n.hot-display-license-info a:hover {\n color: var(--ht-link-hover-color);\n}\n\n.ht-license-badge-wrapper {\n position: absolute;\n inset: 0;\n overflow: hidden;\n z-index: 1050;\n pointer-events: none;\n}\n\n.ht-license-badge-on .ht-license-badge-corner thead tr:first-child th:first-child::after {\n content: \"\";\n position: absolute;\n inset: 0;\n margin: auto;\n inset-inline-start: clamp(0px, 100% - var(--ht-license-badge-size, 16px), 6px);\n inline-size: min(var(--ht-license-badge-size, 16px), 100%);\n block-size: min(var(--ht-license-badge-size, 16px), 100%);\n background-color: var(--ht-license-badge-color, var(--ht-disabled-color, #a3a3a3));\n pointer-events: none;\n -webkit-mask-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width=%2714.8626%27 height=%2716%27 viewBox=%270 0 14.8626 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 0H3.28665V4.35577H7.03576V0H10.306V11.407H7.03576V6.90834H3.28665V11.407H0V0Z%27 fill=%27%23000%27/%3E%3Cpath d=%27M11.0991 12.236H14.8633V16.0001H11.0991V12.236Z%27 fill=%27%23000%27/%3E%3C/svg%3E\");\n mask-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width=%2714.8626%27 height=%2716%27 viewBox=%270 0 14.8626 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 0H3.28665V4.35577H7.03576V0H10.306V11.407H7.03576V6.90834H3.28665V11.407H0V0Z%27 fill=%27%23000%27/%3E%3Cpath d=%27M11.0991 12.236H14.8633V16.0001H11.0991V12.236Z%27 fill=%27%23000%27/%3E%3C/svg%3E\");\n -webkit-mask-size: contain;\n mask-size: contain;\n -webkit-mask-repeat: no-repeat;\n mask-repeat: no-repeat;\n -webkit-mask-position: center;\n mask-position: center;\n}\n\n.ht-license-badge-on .ht-license-badge-corner thead tr:first-child th:first-child:hover::after {\n background-color: var(--ht-license-badge-hover-color, var(--ht-read-only-color, #68696c));\n}\n\n[dir=rtl] .ht-license-badge-on .ht-license-badge-corner thead tr:first-child th:first-child::after {\n inset-inline-start: 0;\n inset-inline-end: clamp(0px, 100% - var(--ht-license-badge-size, 16px), 6px);\n}\n\n.ht-license-badge {\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 0;\n inline-size: 1px;\n block-size: 1px;\n margin: 0;\n padding: 0;\n border: 0;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n background: transparent;\n color: transparent;\n}\n\n.ht-license-popover {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: var(--ht-license-badge-area-width, 50px);\n inset-inline-end: 0;\n z-index: 1051;\n display: none;\n flex-direction: column;\n inline-size: auto;\n max-inline-size: min(var(--ht-license-popover-width, 320px), 100vw - 32px);\n max-block-size: 100%;\n overflow: visible;\n padding: 16px;\n border-radius: var(--ht-border-radius, 8px);\n border-start-start-radius: 0;\n background-color: var(--ht-license-popover-background-color, #16171a);\n color: var(--ht-license-popover-foreground-color, #fff);\n font-size: var(--ht-font-size-small, 12px);\n line-height: var(--ht-line-height-small, 18px);\n text-align: start;\n pointer-events: auto;\n box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) color-mix(in srgb, var(--ht-shadow-color, rgb(0, 0, 0)) var(--ht-shadow-opacity, 100%), transparent);\n}\n.ht-license-popover::before {\n content: \"\";\n position: absolute;\n inset-block-start: 0;\n inset-inline-end: 100%;\n inline-size: 0;\n block-size: 0;\n border-block-start: var(--ht-license-popover-tail-size, 5px) solid var(--ht-license-popover-background-color, #16171a);\n border-inline-start: var(--ht-license-popover-tail-size, 5px) solid transparent;\n}\n\n.ht-license-popover__content {\n min-block-size: 0;\n overflow-y: auto;\n}\n\n.ht-license-badge-wrapper.is-corner-hover:not(.is-dismissed) .ht-license-popover,\n.ht-license-badge-wrapper:not(.is-dismissed):hover .ht-license-popover,\n.ht-license-popover.is-open {\n display: flex;\n}\n\n.ht-license-badge-wrapper.is-cornerless .ht-license-badge {\n display: none;\n}\n.ht-license-badge-wrapper.is-cornerless .ht-license-popover {\n inset-inline-start: 0;\n border-start-start-radius: var(--ht-border-radius, 8px);\n}\n.ht-license-badge-wrapper.is-cornerless .ht-license-popover::before {\n display: none;\n}\n\n.ht-license-popover__title {\n margin-block-end: 8px;\n padding-inline-end: 16px;\n font-weight: bold;\n}\n\n.ht-license-popover__body {\n margin: 0 0 12px;\n color: var(--ht-license-popover-body-color, #d5d6d8);\n}\n\n.ht-license-popover__link {\n color: var(--ht-license-popover-link-color, #3ba0ff);\n text-decoration: none;\n}\n.ht-license-popover__link:hover {\n text-decoration: underline;\n}\n\n.ht-license-popover__close {\n position: absolute;\n inset-block-start: 12px;\n inset-inline-end: 12px;\n display: flex;\n align-items: center;\n justify-content: center;\n inline-size: 20px;\n block-size: 20px;\n padding: 0;\n border: 0;\n background: transparent;\n color: inherit;\n cursor: pointer;\n line-height: 1;\n}\n.ht-license-popover__close::before {\n content: \"✕\";\n font-size: 14px;\n}\n\n.ht-dialog.ht-license-lock {\n z-index: 1070;\n}\n.ht-dialog.ht-license-lock::before {\n content: \"\";\n position: absolute;\n inset-block-start: 0;\n inset-inline: 0;\n block-size: calc(var(--ht-line-height, 20px) + var(--ht-density-cell-vertical, 4px) * 2);\n background-color: var(--ht-header-background-color);\n border-block-end: 1px solid var(--ht-cell-horizontal-border-color, var(--ht-border-color));\n}\n.ht-dialog.ht-license-lock::after {\n content: \"\";\n position: absolute;\n inset-block-start: calc(var(--ht-density-cell-vertical, 4px) + (var(--ht-line-height, 20px) - var(--ht-license-badge-size, 16px)) / 2);\n inset-inline-start: var(--ht-cell-horizontal-padding, 8px);\n inline-size: var(--ht-license-badge-size, 16px);\n block-size: var(--ht-license-badge-size, 16px);\n background-color: var(--ht-license-badge-color, var(--ht-disabled-color, #a3a3a3));\n -webkit-mask-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width=%2714.8626%27 height=%2716%27 viewBox=%270 0 14.8626 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 0H3.28665V4.35577H7.03576V0H10.306V11.407H7.03576V6.90834H3.28665V11.407H0V0Z%27 fill=%27%23000%27/%3E%3Cpath d=%27M11.0991 12.236H14.8633V16.0001H11.0991V12.236Z%27 fill=%27%23000%27/%3E%3C/svg%3E\");\n mask-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width=%2714.8626%27 height=%2716%27 viewBox=%270 0 14.8626 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 0H3.28665V4.35577H7.03576V0H10.306V11.407H7.03576V6.90834H3.28665V11.407H0V0Z%27 fill=%27%23000%27/%3E%3Cpath d=%27M11.0991 12.236H14.8633V16.0001H11.0991V12.236Z%27 fill=%27%23000%27/%3E%3C/svg%3E\");\n -webkit-mask-size: contain;\n mask-size: contain;\n -webkit-mask-repeat: no-repeat;\n mask-repeat: no-repeat;\n}\n.ht-dialog.ht-license-lock .ht-dialog__content-wrapper {\n padding-block-start: calc(var(--ht-line-height, 20px) + var(--ht-density-cell-vertical, 4px) * 2);\n}\n.ht-dialog.ht-license-lock .ht-dialog__content-wrapper-inner,\n.ht-dialog.ht-license-lock .ht-dialog__content {\n min-inline-size: 0;\n}\n.ht-dialog.ht-license-lock a.ht-button {\n display: inline-block;\n text-decoration: none;\n}\n.ht-dialog.ht-license-lock .ht-dialog__title,\n.ht-dialog.ht-license-lock .ht-dialog__description {\n word-break: break-word;\n overflow-wrap: break-word;\n}\n\n.handsontable .htAutocompleteArrow {\n position: relative;\n cursor: default;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n font-size: 0;\n float: right;\n top: calc((var(--ht-line-height) - var(--ht-icon-size)) / 2);\n margin-inline-start: calc(var(--ht-gap-size) * 2);\n margin-inline-end: 1px;\n}\n.handsontable .htAutocompleteArrow::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n opacity: 0.6;\n}\n\n[dir=rtl].handsontable .htAutocompleteArrow {\n float: left;\n}\n\n.handsontable .htCheckboxRendererInput {\n position: relative;\n display: inline-block;\n width: var(--ht-checkbox-size);\n height: var(--ht-checkbox-size);\n margin: 0;\n vertical-align: middle;\n cursor: pointer;\n margin-top: -2px;\n outline: none;\n}\n.handsontable .htCheckboxRendererInput:first-child {\n margin-inline-end: var(--ht-gap-size);\n}\n.handsontable .htCheckboxRendererInput:last-child {\n margin-inline-start: var(--ht-gap-size);\n}\n.handsontable .htCheckboxRendererInput::before {\n content: \"\";\n display: inline-block;\n position: absolute;\n top: 0;\n left: 0;\n width: var(--ht-checkbox-size);\n height: var(--ht-checkbox-size);\n border-radius: var(--ht-checkbox-border-radius);\n border: 1px solid var(--ht-checkbox-border-color);\n background-color: var(--ht-checkbox-background-color);\n box-sizing: border-box;\n pointer-events: none;\n transition: all var(--ht-table-transition) ease-in-out;\n}\n.handsontable .htCheckboxRendererInput::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n color: var(--ht-checkbox-icon-color);\n pointer-events: none;\n width: var(--ht-checkbox-size) !important;\n height: var(--ht-checkbox-size) !important;\n}\n.handsontable .htCheckboxRendererInput:checked::before {\n border-color: var(--ht-checkbox-checked-border-color);\n background-color: var(--ht-checkbox-checked-background-color);\n}\n.handsontable .htCheckboxRendererInput:checked::after {\n color: var(--ht-checkbox-checked-icon-color);\n}\n.handsontable .htCheckboxRendererInput:checked:disabled::before {\n border-color: var(--ht-checkbox-checked-disabled-border-color);\n background-color: var(--ht-checkbox-checked-disabled-background-color);\n}\n.handsontable .htCheckboxRendererInput:checked:disabled::after {\n color: var(--ht-checkbox-checked-disabled-icon-color);\n}\n.handsontable .htCheckboxRendererInput:checked:focus::before {\n border-color: var(--ht-checkbox-checked-focus-border-color);\n background-color: var(--ht-checkbox-checked-focus-background-color);\n}\n.handsontable .htCheckboxRendererInput:checked:focus::after {\n color: var(--ht-checkbox-checked-focus-icon-color);\n}\n.handsontable .htCheckboxRendererInput:focus::before {\n border-color: var(--ht-checkbox-focus-border-color);\n background-color: var(--ht-checkbox-focus-background-color);\n outline: 1px solid var(--ht-checkbox-focus-ring-color);\n}\n.handsontable .htCheckboxRendererInput:focus::after {\n color: var(--ht-checkbox-focus-icon-color);\n}\n.handsontable .htCheckboxRendererInput:disabled {\n cursor: initial;\n}\n.handsontable .htCheckboxRendererInput:disabled::before {\n border-color: var(--ht-checkbox-disabled-border-color);\n background-color: var(--ht-checkbox-disabled-background-color);\n}\n.handsontable .htCheckboxRendererInput:disabled::after {\n color: var(--ht-checkbox-disabled-icon-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate::before {\n border-color: var(--ht-checkbox-indeterminate-border-color);\n background-color: var(--ht-checkbox-indeterminate-background-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate::after {\n color: var(--ht-checkbox-indeterminate-icon-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate:disabled::before {\n border-color: var(--ht-checkbox-indeterminate-disabled-border-color);\n background-color: var(--ht-checkbox-indeterminate-disabled-background-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate:disabled::after {\n color: var(--ht-checkbox-indeterminate-disabled-icon-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate:focus::before {\n border-color: var(--ht-checkbox-indeterminate-focus-border-color);\n background-color: var(--ht-checkbox-indeterminate-focus-background-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate:focus::after {\n color: var(--ht-checkbox-indeterminate-focus-icon-color);\n}\n.handsontable .htCheckboxRendererInput.noValue {\n opacity: 0.5;\n}\n.handsontable .htCheckboxRendererLabel {\n display: inline-block;\n position: relative;\n font-size: inherit;\n line-height: inherit;\n cursor: pointer;\n color: inherit;\n margin: 0;\n}\n.handsontable .htCheckboxRendererLabel.fullWidth {\n width: 100%;\n}\n\n.handsontable .htPlaceholder {\n color: var(--ht-placeholder-color);\n}\n.handsontable .htDimmed {\n color: var(--ht-read-only-color) !important;\n background-color: var(--ht-cell-read-only-background-color) !important;\n}\n.handsontable .htLeft {\n text-align: left;\n}\n.handsontable .htCenter {\n text-align: center;\n}\n.handsontable .htRight {\n text-align: right;\n}\n.handsontable .htJustify {\n text-align: justify;\n}\n.handsontable .htTop {\n vertical-align: top;\n}\n.handsontable .htMiddle {\n vertical-align: middle;\n}\n.handsontable .htBottom {\n vertical-align: bottom;\n}\n.handsontable .htInvalid {\n /* gives priority over td.area selection background */\n background-color: var(--ht-cell-error-background-color) !important;\n}\n.handsontable .htNoWrap {\n white-space: nowrap;\n}\n.handsontable .htSearchResult {\n background-color: var(--ht-cell-success-background-color) !important;\n}\n\n.handsontable .ht-multi-select-renderer {\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n overflow: hidden;\n}\n.handsontable .ht-multi-select-chips-container {\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n gap: var(--ht-gap-size);\n overflow: hidden;\n max-width: 100%;\n}\n.handsontable .ht-multi-select-chip {\n display: inline-flex;\n align-items: center;\n gap: var(--ht-gap-size);\n padding: var(--ht-chip-vertical-padding) calc((var(--ht-line-height) - var(--ht-icon-size)) / 2) var(--ht-chip-vertical-padding) var(--ht-chip-horizontal-padding);\n border-radius: var(--ht-chip-border-radius);\n background: var(--ht-chip-background);\n white-space: nowrap;\n flex-shrink: 0;\n max-width: 100px;\n box-sizing: border-box;\n}\n.handsontable .ht-multi-select-chip-label {\n overflow: hidden;\n text-overflow: ellipsis;\n color: var(--ht-foreground-color);\n font-style: normal;\n font-weight: var(--ht-font-weight);\n line-height: var(--ht-line-height, 40px);\n letter-spacing: var(--ht-letter-spacing, 0);\n padding: 0 var(--ht-chip-gap);\n}\n.handsontable .ht-multi-select-chip-remove {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--ht-icon-size) !important;\n height: var(--ht-icon-size) !important;\n padding: 0;\n cursor: pointer;\n flex-shrink: 0;\n color: var(--ht-icon-button-icon-color);\n background-size: contain;\n background-repeat: no-repeat;\n background-position: center;\n}\n.handsontable .ht-multi-select-chip-remove::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n}\n.handsontable .ht-multi-select-chip-remove:hover {\n background-color: var(--ht-icon-button-hover-background-color);\n}\n.handsontable .ht-multi-select-overflow {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: var(--ht-chip-vertical-padding) var(--ht-chip-horizontal-padding);\n background: var(--ht-chip-background);\n border-radius: var(--ht-chip-border-radius);\n color: var(--ht-foreground-color);\n white-space: nowrap;\n flex-shrink: 0;\n}\n\n.handsontableInputHolder {\n position: absolute;\n top: 0;\n left: 0;\n}\n.handsontableInputHolder .handsontableInput {\n display: block;\n margin: 0;\n padding: calc(var(--ht-cell-vertical-padding, 4px) + 1px) calc(var(--ht-cell-horizontal-padding, 8px) + 1px);\n font-family: inherit !important;\n font-size: inherit !important;\n line-height: inherit !important;\n color: var(--ht-cell-editor-foreground-color);\n background-color: var(--ht-cell-editor-background-color, #ffffff);\n box-shadow: inset 0 0 0 var(--ht-cell-editor-border-width, 2px) var(--ht-cell-editor-border-color, #1a42e8), 0 0 var(--ht-cell-editor-shadow-blur-radius, 0) 0 var(--ht-cell-editor-shadow-color, transparent);\n border: none;\n border-radius: 0;\n -webkit-appearance: none !important;\n box-sizing: border-box;\n /* Miscellaneous */\n outline-width: 0;\n /* overwrite styles potentially made by a framework */\n}\n.handsontableInputHolder .handsontableInput:focus {\n outline: none;\n}\n\n.htSelectEditor {\n position: absolute;\n}\n.htSelectEditor select {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n padding: calc(var(--ht-cell-vertical-padding, 4px) + 1px) calc(var(--ht-cell-horizontal-padding, 8px) + 1px);\n padding-inline-end: 26px;\n margin: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n color: var(--ht-cell-editor-foreground-color);\n background-color: var(--ht-cell-editor-background-color, #ffffff);\n font-family: inherit !important;\n font-size: inherit !important;\n line-height: inherit !important;\n box-shadow: inset 0 0 0 var(--ht-cell-editor-border-width, 2px) var(--ht-cell-editor-border-color, #1a42e8), 0 0 var(--ht-cell-editor-shadow-blur-radius, 0) 0 var(--ht-cell-editor-shadow-color, transparent);\n border: none;\n border-radius: 0;\n box-sizing: border-box;\n -webkit-appearance: none !important;\n}\n.htSelectEditor select:focus {\n outline: none;\n}\n.htSelectEditor .htAutocompleteArrow {\n top: 50%;\n transform: translateY(-50%);\n margin-inline-end: 4px;\n z-index: 1;\n pointer-events: none;\n}\n\n.handsontable.listbox {\n box-shadow: var(--ht-menu-shadow-x, 0) var(--ht-menu-shadow-y, 0) var(--ht-menu-shadow-blur, 8px) color-mix(in srgb, var(--ht-menu-shadow-color, rgb(0, 0, 0)) var(--ht-menu-shadow-opacity, 100%), transparent);\n margin: 0;\n border: var(--ht-menu-border-width, 1px) solid var(--ht-menu-border-color, #e5e5e9);\n}\n.handsontable.listbox .ht_master {\n overflow: hidden;\n background-color: var(--ht-background-color);\n}\n.handsontable.listbox .wtHolder {\n overflow: auto;\n border-radius: 0 !important;\n}\n.handsontable.listbox .wtHider, .handsontable.listbox .htCore {\n border-radius: 0 !important;\n}\n.handsontable.listbox table {\n overflow: hidden;\n}\n.handsontable.listbox table th,\n.handsontable.listbox table tr:first-child th,\n.handsontable.listbox table tr:last-child th,\n.handsontable.listbox table tr:first-child td,\n.handsontable.listbox table td {\n border-color: transparent !important;\n}\n.handsontable.listbox table th,\n.handsontable.listbox table td {\n white-space: nowrap;\n text-overflow: ellipsis;\n border-radius: 0 !important;\n}\n.handsontable.listbox table .wtBorder {\n visibility: hidden;\n}\n.handsontable.listbox table strong {\n font-weight: bold;\n color: inherit;\n}\n.handsontable.listbox table tr td:hover td {\n background: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent) !important;\n cursor: pointer;\n box-shadow: none !important;\n}\n.handsontable.listbox table td {\n transition: var(--ht-table-transition) background ease-in-out;\n}\n.handsontable.listbox table td:hover {\n background-color: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent) !important;\n cursor: pointer;\n}\n.handsontable.listbox table td.current:not([aria-expanded=true]) {\n box-shadow: inset 0 0 0 1px var(--ht-accent-color);\n}\n.handsontable.listbox table td.htDimmed {\n cursor: default;\n font-style: inherit;\n color: inherit !important;\n}\n.handsontable.listbox table td.htDimmed:not(.handsontable.listbox table td:hover) {\n background-color: inherit !important;\n}\n.handsontable.listbox table thead th {\n height: auto !important;\n text-align: left;\n}\n.handsontable.listbox table thead th .relative {\n padding-top: calc(var(--ht-cell-vertical-padding) + var(--ht-gap-size));\n padding-bottom: calc(var(--ht-cell-vertical-padding) + var(--ht-gap-size));\n}\n.handsontable.listbox .ht_clone_top .wtHider {\n overflow: hidden;\n}\n.handsontable.listbox .ht_clone_top table {\n border-radius: 0;\n}\n.handsontable.listbox .htBorders div {\n background: none !important;\n}\n.handsontable.autocompleteEditor tr.ht__row_even th,\n.handsontable.autocompleteEditor tr.ht__row_even td {\n background-color: var(--ht-background-color, #ffffff);\n}\n.handsontable.autocompleteEditor tr.ht__row_odd th,\n.handsontable.autocompleteEditor tr.ht__row_odd td {\n background-color: var(--ht-background-color, #ffffff);\n}\n\n[dir=rtl].handsontable.listbox table thead th {\n text-align: right;\n}\n\n.handsontableEditor {\n position: absolute;\n}\n.handsontableEditor .ht-multi-select-editor {\n box-shadow: var(--ht-menu-shadow-x, 0) var(--ht-menu-shadow-y, 0) var(--ht-menu-shadow-blur, 8px) color-mix(in srgb, var(--ht-menu-shadow-color, rgb(0, 0, 0)) var(--ht-menu-shadow-opacity, 100%), transparent);\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n overflow-y: auto;\n border-radius: 0 0 var(--ht-menu-border-radius) var(--ht-menu-border-radius);\n border: var(--ht-menu-border-width) solid var(--ht-menu-border-color);\n background: var(--ht-background-color);\n width: max-content;\n min-width: 120px;\n padding: var(--ht-menu-vertical-padding) var(--ht-menu-horizontal-padding);\n}\n.handsontableEditor .ht-multi-select-editor .ht-multi-select-editor-search-input-wrapper {\n display: flex;\n padding: var(--ht-menu-item-vertical-padding) var(--ht-menu-item-horizontal-padding);\n align-items: center;\n gap: var(--ht-gap-size);\n align-self: stretch;\n position: relative;\n}\n.handsontableEditor .ht-multi-select-editor .ht-multi-select-editor-search-icon {\n position: absolute;\n left: calc(var(--ht-menu-item-horizontal-padding) + 10px);\n top: 50%;\n transform: translateY(-50%);\n width: 16px;\n height: 16px;\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n opacity: 0.5;\n pointer-events: none;\n z-index: 1;\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input {\n box-sizing: border-box;\n width: 100%;\n border-radius: var(--ht-input-border-radius);\n color: var(--ht-input-foreground-color);\n background-color: var(--ht-input-background-color);\n border: 1px solid var(--ht-input-border-color);\n transition: var(--ht-table-transition) all ease-in-out;\n line-height: var(--ht-line-height);\n font-size: var(--ht-font-size);\n padding: var(--ht-input-vertical-padding) var(--ht-menu-item-horizontal-padding) var(--ht-input-vertical-padding) 32px;\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input:hover {\n border-color: var(--ht-input-hover-border-color);\n color: var(--ht-input-hover-foreground-color);\n background-color: var(--ht-input-hover-background-color);\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input:disabled {\n border-color: var(--ht-input-disabled-border-color);\n color: var(--ht-input-disabled-foreground-color);\n background-color: var(--ht-input-disabled-background-color);\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input:focus {\n border-color: var(--ht-input-focus-border-color);\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n outline: none;\n outline-offset: 0;\n box-shadow: none;\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input::placeholder {\n color: var(--ht-foreground-color);\n opacity: 0.6;\n}\n.handsontableEditor .ht-multi-select-editor .ht-multi-select-editor-separator {\n width: 100%;\n height: 1px;\n background-color: var(--ht-menu-border-color);\n margin: var(--ht-menu-vertical-padding) 0 var(--ht-menu-vertical-padding) 0;\n padding: 0;\n}\n.handsontableEditor .ht-multi-select-editor ul {\n list-style: none;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n width: 100%;\n margin: 0;\n padding: var(--ht-gap-size) var(--ht-menu-horizontal-padding);\n}\n.handsontableEditor .ht-multi-select-editor ul li {\n display: flex;\n align-items: center;\n align-self: stretch;\n background: var(--ht-background-color);\n padding: var(--ht-menu-item-vertical-padding) var(--ht-menu-item-horizontal-padding);\n user-select: none;\n cursor: pointer;\n}\n.handsontableEditor .ht-multi-select-editor ul li * {\n cursor: pointer;\n}\n.handsontableEditor .ht-multi-select-editor ul li.ht-multi-select-editor-item-selected {\n background: color-mix(in srgb, var(--ht-menu-item-active-color) var(--ht-menu-item-active-color-opacity, 100%), transparent);\n}\n.handsontableEditor .ht-multi-select-editor ul li div {\n display: flex;\n align-items: center;\n flex: 1 0 0;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input {\n position: relative;\n appearance: none;\n margin: 0;\n padding: 0;\n width: var(--ht-checkbox-size);\n height: var(--ht-checkbox-size);\n display: flex;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n box-sizing: border-box;\n width: var(--ht-checkbox-size);\n height: var(--ht-checkbox-size);\n border-radius: var(--ht-checkbox-border-radius);\n border: 1px solid var(--ht-checkbox-border-color);\n background: var(--ht-checkbox-background-color);\n background-repeat: no-repeat;\n background-position: center;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input:checked::before {\n border-color: var(--ht-checkbox-checked-border-color);\n background: var(--ht-checkbox-checked-background-color);\n}\n.handsontableEditor .ht-multi-select-editor ul li div input:checked::after {\n color: var(--ht-checkbox-checked-icon-color);\n background-color: currentColor;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input:focus {\n outline: none;\n}\n.handsontableEditor .ht-multi-select-editor ul li div label {\n overflow: hidden;\n color: var(--ht-foreground-color);\n text-overflow: ellipsis;\n font-size: var(--ht-font-size);\n font-style: normal;\n font-weight: 400;\n line-height: var(--ht-line-height);\n letter-spacing: var(--ht-letter-spacing);\n width: 100%;\n padding: 0 0 0 calc(var(--ht-gap-size) * 2);\n}\n.handsontableEditor .ht-multi-select-editor ul li:hover {\n background: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent);\n}\n.handsontableEditor .ht-multi-select-editor ul li:has(input:focus) {\n background: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent);\n}\n\n.handsontable .htUISelectCaption {\n width: 100%;\n padding: var(--ht-input-vertical-padding) var(--ht-input-horizontal-padding);\n padding-inline-end: calc(var(--ht-input-horizontal-padding) + var(--ht-icon-size));\n margin: 0;\n font-family: inherit;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n border-radius: var(--ht-input-border-radius);\n box-sizing: border-box;\n cursor: pointer;\n outline: none !important;\n border: var(--ht-input-border-width) solid var(--ht-input-border-color);\n color: var(--ht-input-foreground-color);\n background-color: var(--ht-input-background-color);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n transition: var(--ht-table-transition) all ease-in-out;\n}\n.handsontable .htUISelectCaption::after {\n content: \"\";\n display: block;\n position: absolute;\n right: calc(var(--ht-input-horizontal-padding) - var(--ht-icon-size) / 4);\n top: 50%;\n transform: translateY(-50%);\n}\n.handsontable .htUISelectCaption:hover {\n border-color: var(--ht-input-hover-border-color);\n color: var(--ht-input-hover-foreground-color);\n background-color: var(--ht-input-hover-background-color);\n}\n.handsontable .htUISelectCaption:disabled {\n border-color: var(--ht-input-disabled-border-color);\n color: var(--ht-input-disabled-foreground-color);\n background-color: var(--ht-input-disabled-background-color);\n}\n.handsontable .htUISelectCaption:focus {\n border-color: var(--ht-input-focus-border-color);\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n}\n.handsontable .htUISelect {\n cursor: pointer;\n position: relative;\n outline: none !important;\n}\n.handsontable .htUISelect:focus .htUISelectCaption {\n border-color: var(--ht-input-focus-border-color);\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n}\n\n[dir=rtl].handsontable .htUISelectCaption::after {\n right: auto;\n left: calc(var(--ht-input-horizontal-padding) - var(--ht-icon-size) / 4);\n}\n\n.handsontable .htFiltersMenuCondition .htUIInput input,\n.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input {\n width: 100%;\n padding: var(--ht-input-vertical-padding) var(--ht-input-horizontal-padding);\n font-family: inherit;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n border-radius: var(--ht-input-border-radius);\n box-sizing: border-box;\n cursor: pointer;\n outline: none !important;\n border: var(--ht-input-border-width) solid var(--ht-input-border-color);\n color: var(--ht-input-foreground-color);\n background-color: var(--ht-input-background-color);\n transition: var(--ht-table-transition) all ease-in-out;\n}\n.handsontable .htFiltersMenuCondition .htUIInput input:hover,\n.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input:hover {\n border-color: var(--ht-input-hover-border-color);\n color: var(--ht-input-hover-foreground-color);\n background-color: var(--ht-input-hover-background-color);\n}\n.handsontable .htFiltersMenuCondition .htUIInput input:disabled,\n.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input:disabled {\n border-color: var(--ht-input-disabled-border-color);\n color: var(--ht-input-disabled-foreground-color);\n background-color: var(--ht-input-disabled-background-color);\n}\n.handsontable .htFiltersMenuCondition .htUIInput input:focus,\n.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input:focus {\n border-color: var(--ht-input-focus-border-color);\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n}\n.handsontable .htUIInput {\n position: relative;\n padding: 0;\n outline: none !important;\n text-align: center;\n}\n.handsontable .htUIInputIcon {\n position: absolute;\n}\n\n.handsontable .htUIInput.htUIButton input, .handsontable .ht-button {\n min-width: 64px;\n padding: var(--ht-button-vertical-padding) var(--ht-button-horizontal-padding);\n font-family: inherit;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n border-radius: var(--ht-button-border-radius);\n border-width: 1px;\n border-style: solid;\n box-sizing: border-box;\n outline: none !important;\n cursor: pointer;\n transition: var(--ht-table-transition) all ease-in-out;\n}\n.handsontable .htUIInput.htUIButtonCancel input, .handsontable .ht-button--secondary {\n border-color: var(--ht-secondary-button-border-color);\n background-color: var(--ht-secondary-button-background-color);\n color: var(--ht-secondary-button-foreground-color);\n}\n.handsontable .htUIInput.htUIButtonCancel input:hover, .handsontable .ht-button--secondary:hover {\n border-color: var(--ht-secondary-button-hover-border-color);\n background-color: var(--ht-secondary-button-hover-background-color);\n color: var(--ht-secondary-button-hover-foreground-color);\n}\n.handsontable .htUIInput.htUIButtonCancel input:disabled, .handsontable .ht-button--secondary:disabled {\n border-color: var(--ht-secondary-button-disabled-border-color);\n background-color: var(--ht-secondary-button-disabled-background-color);\n color: var(--ht-secondary-button-disabled-foreground-color);\n}\n.handsontable .htUIInput.htUIButtonCancel input:focus, .handsontable .ht-button--secondary:focus {\n border-color: var(--ht-secondary-button-focus-border-color);\n background-color: var(--ht-secondary-button-focus-background-color);\n color: var(--ht-secondary-button-focus-foreground-color);\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n\n.htUIInput.htUIButtonOK input, .ht-button--primary {\n border-color: var(--ht-primary-button-border-color);\n background-color: var(--ht-primary-button-background-color);\n color: var(--ht-primary-button-foreground-color);\n}\n.htUIInput.htUIButtonOK input:hover, .ht-button--primary:hover {\n border-color: var(--ht-primary-button-hover-border-color);\n background-color: var(--ht-primary-button-hover-background-color);\n color: var(--ht-primary-button-hover-foreground-color);\n}\n.htUIInput.htUIButtonOK input:disabled, .ht-button--primary:disabled {\n border-color: var(--ht-primary-button-disabled-border-color);\n background-color: var(--ht-primary-button-disabled-background-color);\n color: var(--ht-primary-button-disabled-foreground-color);\n}\n.htUIInput.htUIButtonOK input:focus, .ht-button--primary:focus {\n border-color: var(--ht-primary-button-focus-border-color);\n background-color: var(--ht-primary-button-focus-background-color);\n color: var(--ht-primary-button-focus-foreground-color);\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n\n.handsontable .htUIRadio {\n position: relative;\n display: inline-flex;\n margin: 0;\n padding: var(--ht-gap-size) calc(2 * var(--ht-gap-size));\n padding-bottom: 0;\n align-items: center;\n gap: var(--ht-gap-size);\n cursor: pointer;\n}\n.handsontable .htUIRadio:first-child {\n padding-inline-start: 0;\n}\n.handsontable .htUIRadio > input[type=radio] {\n position: relative;\n width: var(--ht-radio-size);\n height: var(--ht-radio-size);\n margin: 0;\n appearance: none;\n cursor: pointer;\n border-radius: calc(0.5 * var(--ht-radio-size));\n outline: none;\n}\n.handsontable .htUIRadio > input[type=radio]::before {\n content: \"\";\n display: block;\n position: absolute;\n inset: 0;\n border-radius: calc(0.5 * var(--ht-radio-size));\n border: 1px solid var(--ht-radio-border-color);\n background-color: var(--ht-radio-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]::after {\n content: \"\";\n display: block;\n position: absolute;\n color: var(--ht-radio-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked::before {\n border-color: var(--ht-radio-checked-border-color);\n background-color: var(--ht-radio-checked-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked::after {\n color: var(--ht-radio-checked-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked:disabled {\n cursor: initial;\n}\n.handsontable .htUIRadio > input[type=radio]:checked:disabled::before {\n border-color: var(--ht-radio-checked-disabled-border-color);\n background-color: var(--ht-radio-checked-disabled-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked:disabled::after {\n color: var(--ht-radio-checked-disabled-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked:focus::before {\n border-color: var(--ht-radio-checked-focus-border-color);\n background-color: var(--ht-radio-checked-focus-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked:focus::after {\n color: var(--ht-radio-checked-focus-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:disabled {\n cursor: initial;\n}\n.handsontable .htUIRadio > input[type=radio]:disabled::before {\n border-color: var(--ht-radio-disabled-border-color);\n background-color: var(--ht-radio-disabled-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]:disabled::after {\n color: var(--ht-radio-disabled-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:focus::before {\n border-color: var(--ht-radio-focus-border-color);\n background-color: var(--ht-radio-focus-background-color);\n outline: 1px solid var(--ht-radio-focus-ring-color);\n}\n.handsontable .htUIRadio > input[type=radio]:focus::after {\n color: var(--ht-radio-focus-icon-color);\n}\n.handsontable .htUIRadio label {\n vertical-align: middle;\n cursor: pointer;\n color: inherit;\n}\n.handsontable .htUIRadio label::before {\n content: \"\";\n display: block;\n position: absolute;\n inset: 0;\n}\n\n.handsontable .collapsibleIndicator,\n.handsontable .ht_nestingButton {\n position: relative;\n width: var(--ht-icon-button-hit-area-size);\n height: var(--ht-icon-button-hit-area-size);\n margin: calc(-1 * (var(--ht-icon-button-hit-area-size) - var(--ht-icon-size)) / 2 + 1px);\n box-sizing: border-box;\n overflow: visible;\n cursor: pointer;\n /* hide text */\n text-indent: -100px;\n font-size: 0;\n flex-shrink: 0;\n /* Icon: mask + currentColor from ht-icons-main.css; keep ::before for icon only */\n}\n.handsontable .collapsibleIndicator::before,\n.handsontable .ht_nestingButton::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-left: calc(-0.5 * var(--ht-icon-size));\n border-radius: var(--ht-collapse-button-border-radius);\n transition: var(--ht-table-transition) all ease-in-out;\n z-index: 1;\n}\n.handsontable .collapsibleIndicator,\n.handsontable .ht_nestingButton {\n /* Button background and border (behind icon so mask stays visible) */\n}\n.handsontable .collapsibleIndicator::after,\n.handsontable .ht_nestingButton::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-left: calc(-0.5 * var(--ht-icon-size));\n border-radius: var(--ht-collapse-button-border-radius);\n transition: var(--ht-table-transition) all ease-in-out;\n z-index: 0;\n}\n.handsontable .collapsibleIndicator.expanded::before, .handsontable .collapsibleIndicator.ht_nestingCollapse::before,\n.handsontable .ht_nestingButton.expanded::before,\n.handsontable .ht_nestingButton.ht_nestingCollapse::before {\n color: var(--ht-collapse-button-open-icon-color);\n}\n.handsontable .collapsibleIndicator.expanded::after, .handsontable .collapsibleIndicator.ht_nestingCollapse::after,\n.handsontable .ht_nestingButton.expanded::after,\n.handsontable .ht_nestingButton.ht_nestingCollapse::after {\n background-color: var(--ht-collapse-button-open-background-color);\n box-shadow: 0 0 0 1px var(--ht-collapse-button-open-border-color);\n}\n.handsontable .collapsibleIndicator.expanded:hover::before, .handsontable .collapsibleIndicator.ht_nestingCollapse:hover::before,\n.handsontable .ht_nestingButton.expanded:hover::before,\n.handsontable .ht_nestingButton.ht_nestingCollapse:hover::before {\n color: var(--ht-collapse-button-open-hover-icon-color);\n}\n.handsontable .collapsibleIndicator.expanded:hover::after, .handsontable .collapsibleIndicator.ht_nestingCollapse:hover::after,\n.handsontable .ht_nestingButton.expanded:hover::after,\n.handsontable .ht_nestingButton.ht_nestingCollapse:hover::after {\n background-color: var(--ht-collapse-button-open-hover-background-color);\n box-shadow: 0 0 0 1px var(--ht-collapse-button-open-hover-border-color);\n}\n.handsontable .collapsibleIndicator.collapsed::before, .handsontable .collapsibleIndicator.ht_nestingExpand::before,\n.handsontable .ht_nestingButton.collapsed::before,\n.handsontable .ht_nestingButton.ht_nestingExpand::before {\n color: var(--ht-collapse-button-close-icon-color);\n}\n.handsontable .collapsibleIndicator.collapsed::after, .handsontable .collapsibleIndicator.ht_nestingExpand::after,\n.handsontable .ht_nestingButton.collapsed::after,\n.handsontable .ht_nestingButton.ht_nestingExpand::after {\n background-color: var(--ht-collapse-button-close-background-color);\n box-shadow: 0 0 0 1px var(--ht-collapse-button-close-border-color);\n}\n.handsontable .collapsibleIndicator.collapsed:hover::before, .handsontable .collapsibleIndicator.ht_nestingExpand:hover::before,\n.handsontable .ht_nestingButton.collapsed:hover::before,\n.handsontable .ht_nestingButton.ht_nestingExpand:hover::before {\n color: var(--ht-collapse-button-close-hover-icon-color);\n}\n.handsontable .collapsibleIndicator.collapsed:hover::after, .handsontable .collapsibleIndicator.ht_nestingExpand:hover::after,\n.handsontable .ht_nestingButton.collapsed:hover::after,\n.handsontable .ht_nestingButton.ht_nestingExpand:hover::after {\n background-color: var(--ht-collapse-button-close-hover-background-color);\n box-shadow: 0 0 0 1px var(--ht-collapse-button-close-hover-border-color);\n}\n.handsontable th.ht__active_highlight .collapsibleIndicator.collapsed::before, .handsontable th.ht__active_highlight .collapsibleIndicator.ht_nestingExpand::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.collapsed::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.ht_nestingExpand::before {\n color: var(--ht-collapse-button-close-icon-active-color);\n}\n.handsontable th.ht__active_highlight .collapsibleIndicator.collapsed:hover::before, .handsontable th.ht__active_highlight .collapsibleIndicator.ht_nestingExpand:hover::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.collapsed:hover::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.ht_nestingExpand:hover::before {\n color: var(--ht-collapse-button-close-hover-icon-active-color);\n}\n.handsontable th.ht__active_highlight .collapsibleIndicator.expanded::before, .handsontable th.ht__active_highlight .collapsibleIndicator.ht_nestingCollapse::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.expanded::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.ht_nestingCollapse::before {\n color: var(--ht-collapse-button-open-icon-active-color);\n}\n.handsontable th.ht__active_highlight .collapsibleIndicator.expanded:hover::before, .handsontable th.ht__active_highlight .collapsibleIndicator.ht_nestingCollapse:hover::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.expanded:hover::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.ht_nestingCollapse:hover::before {\n color: var(--ht-collapse-button-open-hover-icon-active-color);\n}\n\n.handsontable thead th.htRowspanHeader + th {\n border-inline-start-width: 0;\n}\n.handsontable thead th.htRowspanHeader {\n height: auto;\n vertical-align: bottom;\n overflow: visible;\n}\n.handsontable thead th.htRowspanHeader.ht__active_highlight {\n border-inline-start-color: var(--ht-header-active-border-color);\n z-index: 1;\n}\n.handsontable.htRowHeaders.htHasRowspanHeaders :where(table.htCore) > thead > tr:last-child > th:first-child {\n border-end-start-radius: 0;\n}\n.handsontable.htHasRowspanHeaders .ht_clone_inline_start .htCore > tbody > tr:first-child > th:first-child {\n border-start-start-radius: 0;\n}\n.handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead th.htRowspanBottomLevel, .handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable thead th.htRowspanBottomLevel {\n border-bottom-width: 0;\n}\n.handsontable thead th.hiddenHeader:not(:first-of-type) {\n display: none;\n}\n.handsontable thead th.hiddenHeaderText .colHeader {\n opacity: 0;\n}\n\n.handsontable th.ht_nestingLevels > .relative {\n display: flex;\n align-items: center;\n gap: 5px;\n}\n.handsontable th.ht_nestingLevels span:last-child {\n padding-left: calc(var(--ht-icon-size) + 5px);\n}\n.handsontable th.ht_nestingLevels span.ht_nestingLevel {\n display: inline-block;\n}\n.handsontable th.ht_nestingLevels span.ht_nestingLevel_empty {\n position: relative;\n display: inline-block;\n width: 5px;\n height: 1px;\n order: -2;\n}\n.handsontable th.ht_nestingLevels .ht_nestingButton {\n position: relative;\n cursor: pointer;\n order: -1;\n}\n\n.handsontable th.beforeHiddenColumn, .handsontable th.afterHiddenColumn {\n position: relative;\n}\n.handsontable th.beforeHiddenColumn::before, .handsontable th.beforeHiddenColumn::after, .handsontable th.afterHiddenColumn::before, .handsontable th.afterHiddenColumn::after {\n position: absolute;\n top: 50%;\n width: 10px !important;\n height: 10px !important;\n transform: translateY(-50%);\n color: var(--ht-hidden-indicator-color);\n}\n.handsontable th.beforeHiddenColumn::after {\n content: \"\";\n display: block;\n right: -2px;\n}\n.handsontable th.afterHiddenColumn::before {\n content: \"\";\n display: block;\n left: -2px;\n}\n.handsontable th.ht__active_highlight.beforeHiddenColumn::before, .handsontable th.ht__active_highlight.beforeHiddenColumn::after, .handsontable th.ht__active_highlight.afterHiddenColumn::before, .handsontable th.ht__active_highlight.afterHiddenColumn::after {\n color: var(--ht-icon-button-active-icon-color, var(--ht-icon-active-button-icon-color));\n}\n\n[dir=rtl].handsontable th.beforeHiddenColumn::after {\n right: initial;\n left: -2px;\n transform: translateY(-50%) rotate(180deg);\n}\n[dir=rtl].handsontable th.afterHiddenColumn::before {\n right: -2px;\n left: initial;\n transform: translateY(-50%) rotate(180deg);\n}\n\n.handsontable th.beforeHiddenRow, .handsontable th.afterHiddenRow {\n position: relative;\n}\n.handsontable th.beforeHiddenRow::before, .handsontable th.beforeHiddenRow::after, .handsontable th.afterHiddenRow::before, .handsontable th.afterHiddenRow::after {\n position: absolute;\n left: 50%;\n width: 10px !important;\n height: 10px !important;\n transform: translateX(-50%);\n color: var(--ht-hidden-indicator-color);\n}\n.handsontable th.beforeHiddenRow::after {\n content: \"\";\n display: block;\n bottom: -2px;\n}\n.handsontable th.afterHiddenRow::before {\n content: \"\";\n display: block;\n top: -2px;\n}\n.handsontable th.ht__active_highlight.beforeHiddenRow::before, .handsontable th.ht__active_highlight.beforeHiddenRow::after, .handsontable th.ht__active_highlight.afterHiddenRow::before, .handsontable th.ht__active_highlight.afterHiddenRow::after {\n color: var(--ht-icon-button-active-icon-color, var(--ht-icon-active-button-icon-color));\n}\n\n.handsontable .changeType {\n position: relative;\n box-sizing: border-box;\n width: var(--ht-icon-button-hit-area-size);\n height: var(--ht-icon-button-hit-area-size);\n margin: calc(-1 * (var(--ht-icon-button-hit-area-size) - var(--ht-icon-size)) / 2 + 1px);\n border: none;\n outline: none;\n box-shadow: none;\n background: none;\n background-color: transparent;\n color: inherit;\n padding: 0;\n z-index: 1;\n flex-shrink: 0;\n overflow: visible;\n /* Icon: mask + currentColor from ht-icons-main.css; keep ::before for icon only */\n}\n.handsontable .changeType::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-left: calc(-0.5 * var(--ht-icon-size));\n color: var(--ht-icon-button-icon-color);\n z-index: 1;\n}\n.handsontable .changeType {\n /* Button background and border (behind icon so mask stays visible) */\n}\n.handsontable .changeType::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-left: calc(-0.5 * var(--ht-icon-size));\n border-radius: var(--ht-icon-button-border-radius);\n box-shadow: 0 0 0 1px var(--ht-icon-button-border-color);\n background-color: var(--ht-icon-button-background-color);\n z-index: 0;\n}\n.handsontable .changeType:hover {\n cursor: pointer;\n}\n.handsontable .changeType:hover::before {\n color: var(--ht-icon-button-hover-icon-color);\n}\n.handsontable .changeType:hover::after {\n box-shadow: 0 0 0 1px var(--ht-icon-button-hover-border-color);\n background-color: var(--ht-icon-button-hover-background-color);\n}\n.handsontable .ht__active_highlight .changeType::before {\n color: var(--ht-icon-button-active-icon-color, var(--ht-icon-active-button-icon-color));\n}\n.handsontable .ht__active_highlight .changeType::after {\n box-shadow: 0 0 0 1px var(--ht-icon-button-active-border-color, var(--ht-icon-active-button-border-color));\n background-color: var(--ht-icon-button-active-background-color, var(--ht-icon-active-button-background-color));\n}\n.handsontable .ht__active_highlight .changeType:hover::before {\n color: var(--ht-icon-button-active-hover-icon-color, var(--ht-icon-active-button-hover-icon-color));\n}\n.handsontable .ht__active_highlight .changeType:hover::after {\n box-shadow: 0 0 0 1px var(--ht-icon-button-active-hover-border-color, var(--ht-icon-active-button-hover-border-color));\n background-color: var(--ht-icon-button-active-hover-background-color, var(--ht-icon-active-button-hover-background-color));\n}\n.handsontable th.htFiltersActive {\n background-color: var(--ht-header-filter-background-color);\n}\n.handsontable th.htFiltersActive.ht__active_highlight {\n background-color: color-mix(in srgb, var(--ht-header-active-background-color), var(--ht-header-filter-background-color) 20%);\n}\n.handsontable.htDropdownMenu > .ht_master, .handsontable.htContextMenu > .ht_master, .handsontable.htFiltersConditionsMenu > .ht_master {\n box-shadow: var(--ht-menu-shadow-x, 0) var(--ht-menu-shadow-y, 0) var(--ht-menu-shadow-blur, 8px) color-mix(in srgb, var(--ht-menu-shadow-color, rgb(0, 0, 0)) var(--ht-menu-shadow-opacity, 100%), transparent);\n border: var(--ht-menu-border-width, 1px) solid var(--ht-menu-border-color, #e5e5e9);\n border-radius: var(--ht-menu-border-radius);\n overflow: hidden;\n padding: var(--ht-menu-vertical-padding, 8px) var(--ht-menu-horizontal-padding, 0);\n background-color: var(--ht-background-color, #ffffff);\n}\n.handsontable.htDropdownMenu:not(.htGhostTable), .handsontable.htContextMenu:not(.htGhostTable), .handsontable.htFiltersConditionsMenu:not(.htGhostTable) {\n display: none;\n position: absolute;\n /* needs to be higher than 1050 - z-index for Twitter Bootstrap modal (#1569) */\n z-index: 1060;\n}\n.handsontable.htDropdownMenu .ht_clone_top,\n.handsontable.htDropdownMenu .ht_clone_bottom,\n.handsontable.htDropdownMenu .ht_clone_inline_start,\n.handsontable.htDropdownMenu .ht_clone_top_inline_start_corner,\n.handsontable.htDropdownMenu .ht_clone_bottom_inline_start_corner, .handsontable.htContextMenu .ht_clone_top,\n.handsontable.htContextMenu .ht_clone_bottom,\n.handsontable.htContextMenu .ht_clone_inline_start,\n.handsontable.htContextMenu .ht_clone_top_inline_start_corner,\n.handsontable.htContextMenu .ht_clone_bottom_inline_start_corner, .handsontable.htFiltersConditionsMenu .ht_clone_top,\n.handsontable.htFiltersConditionsMenu .ht_clone_bottom,\n.handsontable.htFiltersConditionsMenu .ht_clone_inline_start,\n.handsontable.htFiltersConditionsMenu .ht_clone_top_inline_start_corner,\n.handsontable.htFiltersConditionsMenu .ht_clone_bottom_inline_start_corner {\n display: none;\n}\n.handsontable.htDropdownMenu table.htCore, .handsontable.htContextMenu table.htCore, .handsontable.htFiltersConditionsMenu table.htCore {\n overflow: hidden;\n}\n.handsontable.htDropdownMenu .htCustomMenuRenderer .table.htCore, .handsontable.htContextMenu .htCustomMenuRenderer .table.htCore, .handsontable.htFiltersConditionsMenu .htCustomMenuRenderer .table.htCore {\n box-shadow: none;\n}\n.handsontable.htDropdownMenu.handsontable:focus, .handsontable.htContextMenu.handsontable:focus, .handsontable.htFiltersConditionsMenu.handsontable:focus {\n outline: none;\n}\n.handsontable.htDropdownMenu .wtBorder, .handsontable.htContextMenu .wtBorder, .handsontable.htFiltersConditionsMenu .wtBorder {\n visibility: hidden;\n}\n.handsontable.htDropdownMenu tbody tr:first-of-type td:first-child, .handsontable.htDropdownMenu tbody tr:first-of-type th:first-child, .handsontable.htContextMenu tbody tr:first-of-type td:first-child, .handsontable.htContextMenu tbody tr:first-of-type th:first-child, .handsontable.htFiltersConditionsMenu tbody tr:first-of-type td:first-child, .handsontable.htFiltersConditionsMenu tbody tr:first-of-type th:first-child {\n height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);\n}\n.handsontable.htDropdownMenu table tbody tr td, .handsontable.htContextMenu table tbody tr td, .handsontable.htFiltersConditionsMenu table tbody tr td {\n position: relative;\n padding: var(--ht-menu-item-vertical-padding, 4px) var(--ht-menu-item-horizontal-padding, 8px);\n border-width: 0;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n background: var(--ht-background-color, #ffffff);\n cursor: pointer;\n transition: var(--ht-table-transition) background ease-in-out;\n}\n.handsontable.htDropdownMenu table tbody tr td:first-child, .handsontable.htContextMenu table tbody tr td:first-child, .handsontable.htFiltersConditionsMenu table tbody tr td:first-child {\n border-top-width: 0;\n border-inline-end-width: 0;\n border-bottom-width: 0;\n border-inline-start-width: 0;\n}\n.handsontable.htDropdownMenu table tbody tr td.htDimmed, .handsontable.htContextMenu table tbody tr td.htDimmed, .handsontable.htFiltersConditionsMenu table tbody tr td.htDimmed {\n font-style: normal;\n color: inherit !important;\n background-color: inherit !important;\n}\n.handsontable.htDropdownMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled):hover, .handsontable.htContextMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled):hover, .handsontable.htFiltersConditionsMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled):hover {\n background: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent) !important;\n cursor: pointer;\n}\n.handsontable.htDropdownMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled).current:not([aria-expanded=true]), .handsontable.htContextMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled).current:not([aria-expanded=true]), .handsontable.htFiltersConditionsMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled).current:not([aria-expanded=true]) {\n box-shadow: inset 0 0 0 1px var(--ht-accent-color);\n}\n.handsontable.htDropdownMenu table tbody tr td.htSubmenu .htItemWrapper, .handsontable.htContextMenu table tbody tr td.htSubmenu .htItemWrapper, .handsontable.htFiltersConditionsMenu table tbody tr td.htSubmenu .htItemWrapper {\n margin-inline-end: calc(2 * var(--ht-gap-size, 4px) + var(--ht-icon-size));\n}\n.handsontable.htDropdownMenu table tbody tr td.htSubmenu .htItemWrapper::after, .handsontable.htContextMenu table tbody tr td.htSubmenu .htItemWrapper::after, .handsontable.htFiltersConditionsMenu table tbody tr td.htSubmenu .htItemWrapper::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n right: calc(var(--ht-menu-item-horizontal-padding) + var(--ht-gap-size) * 2);\n transform: translateY(-50%);\n}\n.handsontable.htDropdownMenu table tbody tr td.htSeparator, .handsontable.htContextMenu table tbody tr td.htSeparator, .handsontable.htFiltersConditionsMenu table tbody tr td.htSeparator {\n border-top: 1px solid var(--ht-border-color);\n height: 0;\n padding: 0;\n cursor: default;\n}\n.handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled {\n color: var(--ht-disabled-color);\n cursor: default;\n}\n.handsontable.htDropdownMenu table tbody tr td.htDisabled:hover, .handsontable.htContextMenu table tbody tr td.htDisabled:hover, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled:hover {\n background: var(--ht-background-color);\n color: var(--ht-disabled-color);\n}\n.handsontable.htDropdownMenu table tbody tr td.htHidden, .handsontable.htContextMenu table tbody tr td.htHidden, .handsontable.htFiltersConditionsMenu table tbody tr td.htHidden {\n display: none;\n}\n.handsontable.htDropdownMenu table tbody tr td:has(.htItemWrapper .selected), .handsontable.htContextMenu table tbody tr td:has(.htItemWrapper .selected), .handsontable.htFiltersConditionsMenu table tbody tr td:has(.htItemWrapper .selected) {\n background-color: color-mix(in srgb, var(--ht-menu-item-active-color) var(--ht-menu-item-active-color-opacity, 100%), transparent);\n}\n.handsontable.htDropdownMenu table tbody tr td .htItemWrapper, .handsontable.htContextMenu table tbody tr td .htItemWrapper, .handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper {\n margin-inline: calc(2 * var(--ht-gap-size, 4px));\n}\n.handsontable.htDropdownMenu table tbody tr td .htItemWrapper::before, .handsontable.htContextMenu table tbody tr td .htItemWrapper::before, .handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper::before {\n vertical-align: text-bottom;\n margin-right: 12px;\n}\n.handsontable.htDropdownMenu table tbody tr td .htItemWrapper span.selected, .handsontable.htContextMenu table tbody tr td .htItemWrapper span.selected, .handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper span.selected {\n font-size: 0;\n inset: 0;\n}\n.handsontable.htDropdownMenu table tbody tr td .htItemWrapper span.selected::after, .handsontable.htContextMenu table tbody tr td .htItemWrapper span.selected::after, .handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper span.selected::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n right: calc(var(--ht-menu-item-horizontal-padding) + var(--ht-gap-size) * 2);\n color: var(--ht-accent-color);\n transform: translateY(-50%);\n}\n.handsontable.htDropdownMenu table tbody tr td div span.selected, .handsontable.htContextMenu table tbody tr td div span.selected, .handsontable.htFiltersConditionsMenu table tbody tr td div span.selected {\n position: absolute;\n inset-inline-end: 0;\n}\n.handsontable.htDropdownMenu table tbody tr td .htUIButton, .handsontable.htContextMenu table tbody tr td .htUIButton, .handsontable.htFiltersConditionsMenu table tbody tr td .htUIButton {\n width: calc(50% - var(--ht-gap-size));\n}\n.handsontable.htDropdownMenu table tbody tr td .htUIButton input, .handsontable.htContextMenu table tbody tr td .htUIButton input, .handsontable.htFiltersConditionsMenu table tbody tr td .htUIButton input {\n width: 100%;\n}\n.handsontable .htUIClearAll a,\n.handsontable .htUISelectAll a {\n padding: var(--ht-gap-size);\n display: inline-block;\n text-decoration: none;\n}\n.handsontable .htUIMultipleSelect .ht_master .wtHolder {\n overflow-y: scroll !important;\n background: transparent;\n border-radius: 0 !important;\n box-shadow: none !important;\n}\n.handsontable .htUIMultipleSelect .ht_master .wtHolder .htCore {\n box-shadow: none;\n}\n\n[dir=rtl].handsontable.htDropdownMenu table tbody tr td.htSubmenu .htItemWrapper::after, [dir=rtl].handsontable.htContextMenu table tbody tr td.htSubmenu .htItemWrapper::after, [dir=rtl].handsontable.htFiltersConditionsMenu table tbody tr td.htSubmenu .htItemWrapper::after {\n left: calc(4 * var(--ht-gap-size));\n right: auto;\n transform: translateY(-50%) rotate(180deg);\n}\n[dir=rtl].handsontable.htDropdownMenu table tbody tr td .htItemWrapper span.selected::after, [dir=rtl].handsontable.htContextMenu table tbody tr td .htItemWrapper span.selected::after, [dir=rtl].handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper span.selected::after {\n left: calc(4 * var(--ht-gap-size));\n right: auto;\n}\n\n.handsontable.htFiltersConditionsMenu:not(.htGhostTable) {\n z-index: 1070;\n}\n.handsontable .ht_master table td.htCustomMenuRenderer {\n cursor: auto;\n}\n.handsontable .ht_master table td.htCustomMenuRenderer.htFiltersMenuActionBar {\n padding-top: calc(var(--ht-menu-item-vertical-padding, 4px) * 2);\n}\n.handsontable .htFiltersMenuLabel {\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n font-weight: var(--ht-font-weight);\n margin-bottom: calc(var(--ht-gap-size, 2px) * 2);\n}\n.handsontable .htFiltersMenuLabel:empty {\n display: none;\n}\n.handsontable .htFiltersMenuCondition {\n padding-top: calc(var(--ht-gap-size, 2px) * 3) !important;\n padding-bottom: 0 !important;\n}\n.handsontable .htFiltersMenuCondition .border {\n border-bottom: 1px solid var(--ht-border-color) !important;\n}\n.handsontable .htFiltersMenuCondition .htUIInput {\n margin-top: calc(var(--ht-gap-size, 2px) * 2);\n}\n.handsontable .htFiltersMenuValue {\n padding-top: calc(var(--ht-gap-size, 2px) * 3) !important;\n padding-bottom: 0 !important;\n border-bottom: 1px solid var(--ht-border-color) !important;\n}\n.handsontable .htFiltersMenuOperators {\n padding-top: calc(var(--ht-gap-size, 2px) * 2) !important;\n padding-bottom: 0 !important;\n}\n.handsontable .htUISelectionControls {\n padding-top: calc(var(--ht-gap-size, 2px) * 2) !important;\n padding-bottom: var(--ht-gap-size, 2px) !important;\n margin: 0 calc(var(--ht-gap-size, 2px) * -1);\n}\n.handsontable .htUIMultipleSelectHot {\n --ht-cell-horizontal-padding: calc(\n var(--ht-menu-item-horizontal-padding, 2px) +\n var(--ht-gap-size, 2px) * 2);\n --ht-cell-vertical-padding: 4px;\n overflow: initial !important;\n width: calc(100% + var(--ht-menu-item-horizontal-padding, 2px) * 2 + var(--ht-gap-size, 2px) * 4);\n margin: 0 calc((var(--ht-menu-item-horizontal-padding, 2px) + var(--ht-gap-size, 2px) * 2) * -1);\n}\n.handsontable .htUIMultipleSelectHot::before {\n content: \"\";\n display: block;\n position: absolute;\n top: -1px;\n left: 0;\n width: 100%;\n height: 1px;\n background-color: var(--ht-border-color);\n}\n.handsontable .htUIMultipleSelectHot .wtHolder {\n padding: 0;\n overflow-x: hidden;\n box-sizing: border-box;\n}\n.handsontable .htUIMultipleSelectHot .wtHolder .wtSpreader {\n padding: calc(var(--ht-gap-size) * 2) 0;\n}\n.handsontable .htUIMultipleSelectHot .wtHolder td {\n height: auto !important;\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n}\n.handsontable .htUIClearAll,\n.handsontable .htUISelectAll {\n display: inline-block;\n margin-right: var(--ht-gap-size, 4px);\n margin-bottom: var(--ht-gap-size, 4px);\n}\n.handsontable .htUIClearAll a,\n.handsontable .htUISelectAll a {\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n color: var(--ht-link-color);\n border-radius: var(--ht-button-border-radius);\n}\n.handsontable .htUIClearAll a:hover,\n.handsontable .htUISelectAll a:hover {\n color: var(--ht-link-hover-color);\n}\n.handsontable .htUIClearAll a:focus,\n.handsontable .htUISelectAll a:focus {\n outline: 1px solid var(--ht-link-hover-color);\n}\n.handsontable .htUIMultipleSelect .ht_master .wtHolder {\n overflow: auto;\n}\n.handsontable .htUIMultipleSelect .ht_master .wtHolder .wtHider,\n.handsontable .htUIMultipleSelect .ht_master .wtHolder .htCore,\n.handsontable .htUIMultipleSelect .ht_master .wtHolder tr,\n.handsontable .htUIMultipleSelect .ht_master .wtHolder td {\n background: none;\n}\n.handsontable .htUIInput.htUIButton {\n cursor: pointer;\n display: inline-block;\n}\n.handsontable .htUIInput.htUIButtonOK {\n margin-inline-start: 0;\n margin-inline-end: calc(2 * var(--ht-gap-size, 2px));\n}\n\n.handsontable td a.ht-hyperlink {\n color: var(--ht-link-color);\n text-decoration: underline;\n}\n.handsontable td a.ht-hyperlink:hover {\n color: var(--ht-link-hover-color);\n}\n\n.handsontable .htCommentCell {\n position: relative;\n}\n.handsontable .htCommentCell::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n inset-inline-end: 0;\n inset-inline-start: unset;\n border-inline-start: var(--ht-comments-indicator-size, 4px) solid transparent;\n border-inline-end: none;\n border-top: var(--ht-comments-indicator-size, 4px) solid var(--ht-comments-indicator-color, #1a42e8);\n}\n\n.htCommentsContainer .htComments {\n display: none;\n z-index: 1059;\n position: absolute;\n}\n.htCommentsContainer .htCommentTextArea {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n box-shadow: var(--ht-menu-shadow-x, 0) var(--ht-menu-shadow-y, 0) var(--ht-menu-shadow-blur, 8px) color-mix(in srgb, var(--ht-menu-shadow-color, rgb(0, 0, 0)) var(--ht-menu-shadow-opacity, 100%), transparent);\n width: 240px;\n height: 88px;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n margin: 0 -1px;\n padding: var(--ht-comments-textarea-vertical-padding) var(--ht-comments-textarea-horizontal-padding);\n border: var(--ht-comments-textarea-border-width, 1px) solid var(--ht-comments-textarea-border-color, transparent);\n border-inline-start: var(--ht-comments-textarea-border-width, 1px) solid var(--ht-comments-textarea-border-color, #1a42e8);\n color: var(--ht-comments-textarea-foreground-color);\n background-color: var(--ht-comments-textarea-background-color, #ffffff);\n outline: 0 !important;\n box-sizing: border-box;\n -webkit-appearance: none;\n}\n.htCommentsContainer .htCommentTextArea:focus {\n border: var(--ht-comments-textarea-focus-border-width, 1px) solid var(--ht-comments-textarea-focus-border-color, #1a42e8);\n color: var(--ht-comments-textarea-focus-foreground-color);\n background-color: var(--ht-comments-textarea-focus-background-color, #ffffff);\n}\n\n.htBorders .wtBorder.ht-border-style-dashed-vertical {\n background-image: repeating-linear-gradient(to bottom, var(--ht-custom-border-color) 0 5px, transparent 0 10px);\n}\n.htBorders .wtBorder.ht-border-style-dashed-horizontal {\n background-image: repeating-linear-gradient(to right, var(--ht-custom-border-color) 0 5px, transparent 0 10px);\n}\n.htBorders .wtBorder.ht-border-style-dotted-horizontal {\n background-image: radial-gradient(circle, var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2), transparent 0);\n background-size: calc(var(--ht-custom-border-size) * 2) var(--ht-custom-border-size);\n background-repeat: repeat-x;\n}\n.htBorders .wtBorder.ht-border-style-dotted-vertical {\n background-image: radial-gradient(circle, var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2), transparent 0);\n background-size: var(--ht-custom-border-size) calc(var(--ht-custom-border-size) * 2);\n background-repeat: repeat-y;\n}\n\n.handsontable .colHeader.columnSorting.sortAction {\n box-sizing: border-box;\n flex-grow: 0;\n margin-inline: auto;\n min-width: min(var(--ht-icon-size, 16px) + 8px, 100%);\n max-width: 100%;\n position: static;\n}\n.handsontable .colHeader.columnSorting.sortAction::before, .handsontable .colHeader.columnSorting.sortAction::after {\n margin-inline: var(--ht-sort-indicator-offset);\n margin-inline-end: var(--ht-sort-indicator-offset-end);\n}\n.handsontable .htLeft .colHeader.columnSorting.sortAction {\n margin-left: 0;\n margin-right: auto;\n}\n.handsontable .htRight .colHeader.columnSorting.sortAction {\n margin-left: auto;\n margin-right: 0;\n}\n.handsontable th .relative {\n --ht-sort-indicator-offset: var(--ht-cell-horizontal-padding);\n --ht-sort-indicator-offset-end: var(--ht-cell-horizontal-padding);\n --ht-sort-indicator-reserve: var(--ht-cell-horizontal-padding);\n --ht-sort-indicator-reserve-end: var(--ht-sort-indicator-reserve);\n --ht-header-button-slot: calc(var(--ht-icon-size, 16px) + 2px);\n}\n.handsontable .relative.has-header-button {\n --ht-sort-indicator-offset-end: calc(\n var(--ht-cell-horizontal-padding) + var(--ht-icon-size, 16px) +\n (var(--ht-icon-button-hit-area-size, 24px) - var(--ht-icon-size, 16px)) * 0.5\n );\n --ht-sort-indicator-reserve-end: var(--ht-cell-horizontal-padding);\n}\n.handsontable .relative.has-sort-indicator.has-header-button {\n column-gap: calc(2px + var(--ht-header-button-slot));\n}\n.handsontable .relative.has-sort-indicator {\n --ht-sort-indicator-reserve: calc(var(--ht-cell-horizontal-padding) + var(--ht-icon-size, 16px) + 2px);\n padding-inline-end: var(--ht-sort-indicator-reserve-end);\n}\n.handsontable .relative.htRight.has-sort-indicator,\n.handsontable .htRight .relative.has-sort-indicator {\n padding-inline-start: var(--ht-sort-indicator-reserve);\n padding-inline-end: var(--ht-cell-horizontal-padding);\n --ht-header-button-slot: 0px;\n}\n.handsontable .columnSorting:not(.indicatorDisabled) {\n position: relative;\n}\n.handsontable .columnSorting:not(.indicatorDisabled).sortAction:hover {\n text-decoration: none;\n cursor: pointer;\n}\n.handsontable .columnSorting:not(.indicatorDisabled).sortAction::before {\n content: \"\";\n display: block;\n width: var(--ht-icon-size, 16px);\n position: absolute;\n top: 50%;\n right: 2px;\n transform: translateY(-50%);\n text-align: right;\n}\n.handsontable .htRight .columnSorting.sortAction::before {\n left: 2px;\n right: auto;\n text-align: left;\n}\n\n[dir=rtl] .handsontable .relative.htRight.has-sort-indicator,\n[dir=rtl] .handsontable .htRight .relative.has-sort-indicator {\n padding-inline-start: var(--ht-cell-horizontal-padding);\n padding-inline-end: var(--ht-sort-indicator-reserve-end);\n --ht-header-button-slot: calc(var(--ht-icon-size, 16px) + 2px);\n}\n[dir=rtl] .handsontable .relative.htLeft.has-sort-indicator,\n[dir=rtl] .handsontable .htLeft .relative.has-sort-indicator {\n padding-inline-start: var(--ht-sort-indicator-reserve);\n padding-inline-end: var(--ht-cell-horizontal-padding);\n --ht-header-button-slot: 0px;\n}\n[dir=rtl] .handsontable .columnSorting.sortAction::before {\n left: 2px;\n right: auto;\n text-align: left;\n}\n[dir=rtl] .handsontable .htLeft .columnSorting.sortAction::before {\n left: auto;\n right: 2px;\n text-align: right;\n}\n\n.htGhostTable .htCore .relative {\n --ht-sort-indicator-offset: 0px;\n --ht-sort-indicator-offset-end: 0px;\n --ht-header-button-slot: 0px;\n}\n\n.htGhostTable .htCore .relative.has-header-button {\n --ht-sort-indicator-reserve: var(--ht-cell-horizontal-padding);\n --ht-sort-indicator-reserve-end: var(--ht-cell-horizontal-padding);\n}\n\n.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled)::before {\n content: \"*\";\n display: inline-block;\n position: relative;\n /* The multi-line header and header with longer text need more padding to not hide arrow,\n we make header wider in `GhostTable` to make some space for arrow which is positioned absolutely in the main table */\n padding-inline-end: calc(var(--ht-icon-size, 16px) + 2px);\n}\n\n.handsontable .colHeader.columnSorting::after {\n content: \"\";\n display: block;\n width: 8px;\n position: absolute;\n top: 50%;\n right: 0;\n transform: translateY(-50%);\n margin-top: 4px;\n font-size: 8px;\n text-align: right;\n}\n.handsontable .colHeader.columnSorting[class^=sort-]::after, .handsontable .colHeader.columnSorting[class*=\" sort-\"]::after {\n content: \"+\";\n}\n.handsontable .colHeader.columnSorting.sort-1::after {\n content: \"1\";\n}\n.handsontable .colHeader.columnSorting.sort-2::after {\n content: \"2\";\n}\n.handsontable .colHeader.columnSorting.sort-3::after {\n content: \"3\";\n}\n.handsontable .colHeader.columnSorting.sort-4::after {\n content: \"4\";\n}\n.handsontable .colHeader.columnSorting.sort-5::after {\n content: \"5\";\n}\n.handsontable .colHeader.columnSorting.sort-6::after {\n content: \"6\";\n}\n.handsontable .colHeader.columnSorting.sort-7::after {\n content: \"7\";\n}\n.handsontable .htRight .colHeader.columnSorting::after {\n left: 0;\n right: auto;\n text-align: left;\n}\n\n[dir=rtl] .handsontable .colHeader.columnSorting::after {\n left: 0;\n right: auto;\n text-align: left;\n}\n[dir=rtl] .handsontable .htLeft .colHeader.columnSorting::after {\n left: auto;\n right: 0;\n text-align: right;\n}\n\n.htGhostTable th div:has(.changeType) span.colHeader.columnSorting:not(.indicatorDisabled) {\n padding-inline-end: var(--ht-gap-size);\n}\n\n.handsontable .htRowHeaders .ht_master.innerBorderInlineStart ~ .ht_clone_top_inline_start_corner :where(table.htCore > thead > tr) > th:nth-child(2), .handsontable .htRowHeaders .ht_master.innerBorderInlineStart ~ .ht_clone_inline_start :where(table.htCore > tbody > tr) > td:first-of-type {\n border-left: 0 none;\n}\n.handsontable .ht_clone_top_inline_start_corner th.ht__active_highlight {\n box-shadow: none;\n}\n\n.handsontable .manualColumnResizer {\n position: absolute;\n top: 0;\n width: 10px;\n margin: 0;\n cursor: col-resize;\n background: none;\n opacity: 0;\n z-index: 210;\n}\n.handsontable .manualColumnResizer::before, .handsontable .manualColumnResizer::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 1px;\n width: 2px;\n height: calc(100% - 12px);\n max-height: 16px;\n margin-top: 0.5px;\n background: var(--ht-resize-indicator-color);\n border-radius: 2px;\n transform: translateY(-50%);\n}\n.handsontable .manualColumnResizer::after {\n left: auto;\n right: 0;\n}\n.handsontable .manualColumnResizer:hover, .handsontable .manualColumnResizer.active {\n opacity: 1;\n}\n.handsontable .manualColumnResizerGuide {\n position: absolute;\n inset-inline-end: unset;\n top: 0;\n width: 0;\n margin-inline-start: 5px;\n margin-inline-end: unset;\n display: none;\n border-inline-end: 1px solid var(--ht-accent-color);\n border-inline-start: none;\n}\n.handsontable .manualColumnResizerGuide.active {\n display: block;\n z-index: 209;\n}\n\n.handsontable .manualRowResizer {\n position: absolute;\n left: 0;\n z-index: 210;\n height: 10px;\n margin: 0;\n cursor: row-resize;\n background: none;\n opacity: 0;\n}\n.handsontable .manualRowResizer::before, .handsontable .manualRowResizer::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 1px;\n left: 50%;\n width: calc(100% - 12px);\n max-width: 16px;\n height: 2px;\n background: var(--ht-resize-indicator-color);\n border-radius: 2px;\n transform: translateX(-50%);\n}\n.handsontable .manualRowResizer::after {\n top: auto;\n bottom: 0;\n}\n.handsontable .manualRowResizer:hover, .handsontable .manualRowResizer.active {\n opacity: 1;\n}\n.handsontable .manualRowResizerGuide {\n position: absolute;\n left: 0;\n bottom: 0;\n height: 0;\n margin-top: 5px;\n display: none;\n border-bottom: 1px solid var(--ht-accent-color);\n border-top: none;\n}\n.handsontable .manualRowResizerGuide.active {\n display: block;\n z-index: 209;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell])::before {\n opacity: 0;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]::before {\n opacity: 0.14;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before {\n opacity: 0.14;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before {\n opacity: 0.21;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before {\n opacity: 0.28;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before {\n opacity: 0.35;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before {\n opacity: 0.42;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before {\n opacity: 0.49;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before {\n opacity: 0.56;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before {\n opacity: 0.63;\n}\n\n.handsontable .wtHider {\n position: relative;\n}\n.handsontable .ht__manualColumnMove.after-selection--columns thead th.ht__highlight, .handsontable .ht__manualColumnMove.after-selection--columns thead th.ht__active_highlight, .handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight, .handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__active_highlight {\n cursor: move;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n cursor: grab;\n}\n.handsontable .ht__manualColumnMove.on-moving--columns *,\n.handsontable .ht__manualColumnMove.on-moving--columns thead th.ht__highlight, .handsontable.ht__manualColumnMove.on-moving--columns *,\n.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight {\n cursor: move;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n cursor: grabbing;\n}\n.handsontable .ht__manualColumnMove.on-moving--columns .manualColumnResizer, .handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer {\n display: none;\n}\n.handsontable .ht__manualColumnMove--guideline, .handsontable .ht__manualColumnMove--backlight, .handsontable.ht__manualColumnMove--guideline, .handsontable.ht__manualColumnMove--backlight {\n position: absolute;\n height: 100%;\n display: none;\n}\n.handsontable .ht__manualColumnMove--guideline, .handsontable.ht__manualColumnMove--guideline {\n width: 1px;\n top: 0;\n margin-inline-start: -0.5px;\n margin-inline-end: 0;\n z-index: 205;\n background: var(--ht-move-indicator-color, #1a42e8);\n}\n.handsontable .ht__manualColumnMove--backlight, .handsontable.ht__manualColumnMove--backlight {\n display: none;\n z-index: 205;\n pointer-events: none;\n background: color-mix(in srgb, var(--ht-move-backlight-color) var(--ht-move-backlight-opacity, 100%), transparent);\n}\n.handsontable .on-moving--columns.show-ui .ht__manualColumnMove--guideline,\n.handsontable .on-moving--columns .ht__manualColumnMove--backlight, .handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,\n.handsontable.on-moving--columns .ht__manualColumnMove--backlight {\n display: block;\n}\n\n.handsontable .wtHider {\n position: relative;\n}\n.handsontable .ht__manualRowMove.after-selection--rows tbody th.ht__highlight, .handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight {\n cursor: move;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n cursor: grab;\n}\n.handsontable .ht__manualRowMove.on-moving--rows *,\n.handsontable .ht__manualRowMove.on-moving--rows tbody th.ht__highlight, .handsontable.ht__manualRowMove.on-moving--rows *,\n.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight {\n cursor: move;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n cursor: grabbing;\n}\n.handsontable .ht__manualRowMove.on-moving--rows .manualRowResizer, .handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer {\n display: none;\n}\n.handsontable .ht__manualRowMove--guideline, .handsontable .ht__manualRowMove--backlight, .handsontable.ht__manualRowMove--guideline, .handsontable.ht__manualRowMove--backlight {\n position: absolute;\n width: 100%;\n display: none;\n}\n.handsontable .ht__manualRowMove--guideline, .handsontable.ht__manualRowMove--guideline {\n border-top: 1px solid var(--ht-move-indicator-color);\n left: 0;\n z-index: 205;\n}\n.handsontable .ht__manualRowMove--backlight, .handsontable.ht__manualRowMove--backlight {\n display: none;\n z-index: 205;\n pointer-events: none;\n background: color-mix(in srgb, var(--ht-move-backlight-color) var(--ht-move-backlight-opacity, 100%), transparent);\n}\n.handsontable .on-moving--rows.show-ui .ht__manualRowMove--guideline,\n.handsontable .on-moving--rows .ht__manualRowMove--backlight, .handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,\n.handsontable.on-moving--rows .ht__manualRowMove--backlight {\n display: block;\n}\n\n.ht-dialog {\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n position: absolute;\n top: 0;\n left: 0;\n display: none;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n letter-spacing: var(--ht-letter-spacing);\n width: 100%;\n height: 100%;\n z-index: 1060;\n opacity: 0;\n overflow-y: auto;\n border-radius: var(--ht-border-radius);\n border: 1px solid var(--ht-border-color);\n box-sizing: border-box !important;\n}\n.ht-dialog[dir=rtl] {\n left: auto;\n right: 0;\n}\n.ht-dialog:focus {\n border: 1px solid var(--ht-accent-color);\n outline: none;\n}\n.ht-dialog:has(.htFocusCatcher:focus) {\n border: 1px solid var(--ht-accent-color);\n outline: none;\n}\n.ht-dialog * {\n box-sizing: border-box !important;\n}\n.ht-dialog--background-solid {\n background-color: var(--ht-dialog-solid-background-color);\n}\n.ht-dialog--background-semi-transparent {\n background-color: color-mix(in srgb, var(--ht-dialog-semi-transparent-background-color) var(--ht-dialog-semi-transparent-background-opacity, 100%), transparent);\n}\n.ht-dialog--animation {\n transition: opacity var(--ht-table-transition) ease-in-out;\n}\n.ht-dialog--show {\n opacity: 1;\n}\n.ht-dialog__content-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n min-height: 100%;\n padding: calc(var(--ht-gap-size) * 4);\n border-radius: var(--ht-border-radius);\n}\n.ht-dialog__content {\n position: relative;\n padding: var(--ht-dialog-content-padding-horizontal) var(--ht-dialog-content-padding-vertical);\n max-width: 480px;\n color: var(--ht-foreground-color);\n}\n.ht-dialog__content--background {\n box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) color-mix(in srgb, var(--ht-shadow-color, rgb(0, 0, 0)) var(--ht-shadow-opacity, 100%), transparent);\n border-radius: var(--ht-dialog-content-border-radius);\n background-color: var(--ht-dialog-content-background-color);\n}\n.ht-dialog--confirm .ht-dialog__content-wrapper {\n text-align: center;\n padding: calc(var(--ht-gap-size) * 2);\n}\n.ht-dialog--confirm .ht-dialog__content-wrapper-inner {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n max-width: 480px;\n padding: calc(var(--ht-gap-size) * 2);\n border-radius: var(--ht-border-radius);\n}\n.ht-dialog--confirm .ht-dialog__content-wrapper-inner--background {\n box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) color-mix(in srgb, var(--ht-shadow-color, rgb(0, 0, 0)) var(--ht-shadow-opacity, 100%), transparent);\n border-radius: var(--ht-dialog-content-border-radius);\n background-color: var(--ht-dialog-content-background-color);\n}\n.ht-dialog--confirm .ht-dialog__content-wrapper-inner:focus {\n outline: none;\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n.ht-dialog--confirm .ht-dialog__content {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: var(--ht-gap-size);\n}\n.ht-dialog--confirm .ht-dialog__content:has(.ht-dialog__buttons) {\n gap: calc(var(--ht-gap-size) * 2);\n}\n.ht-dialog--confirm .ht-dialog__title {\n margin: 0;\n font-size: var(--ht-font-size);\n font-weight: var(--ht-font-weight);\n line-height: var(--ht-line-height);\n}\n.ht-dialog--confirm .ht-dialog__description {\n margin: 0;\n color: var(--ht-foreground-secondary-color);\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n font-weight: var(--ht-font-weight);\n}\n.ht-dialog--confirm .ht-dialog__buttons {\n display: flex;\n justify-content: center;\n flex-direction: row;\n flex-wrap: wrap;\n gap: calc(var(--ht-gap-size) * 2);\n}\n\n.ht-notification {\n position: absolute;\n inset: 0;\n z-index: 1070;\n pointer-events: none;\n overflow: visible;\n}\n.ht-notification__stack {\n position: absolute;\n display: flex;\n flex-direction: column;\n gap: 10px;\n max-width: min(420px, 100% - 40px);\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n pointer-events: auto;\n -webkit-overflow-scrolling: touch;\n min-height: 0;\n padding: 10px;\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n}\n.ht-notification__stack--top-start {\n top: 10px;\n inset-inline-start: 10px;\n align-items: flex-start;\n max-height: calc(100% - 40px);\n}\n.ht-notification__stack--top-end {\n top: 10px;\n inset-inline-end: 10px;\n align-items: flex-end;\n max-height: calc(100% - 40px);\n}\n.ht-notification__stack--bottom-start {\n bottom: 10px;\n inset-inline-start: 10px;\n align-items: flex-start;\n max-height: calc(100% - 40px);\n}\n.ht-notification__stack--bottom-end {\n bottom: 10px;\n inset-inline-end: 10px;\n align-items: flex-end;\n max-height: calc(100% - 40px);\n}\n.ht-notification__toast {\n box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) color-mix(in srgb, var(--ht-shadow-color, rgb(0, 0, 0)) var(--ht-shadow-opacity, 100%), transparent);\n position: relative;\n display: flex;\n flex-shrink: 0;\n max-width: 100%;\n pointer-events: auto;\n color: var(--ht-notification-foreground-color, var(--ht-foreground-color));\n background-color: var(--ht-notification-background-color, var(--ht-background-color));\n border: 1px solid var(--ht-notification-border-color, var(--ht-border-color));\n border-radius: var(--ht-border-radius, 4px);\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n letter-spacing: var(--ht-letter-spacing);\n outline: none;\n}\n.ht-notification__toast:focus-visible {\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n.ht-notification__toast--animate {\n opacity: 0;\n transition: opacity var(--ht-table-transition, 0.15s) ease-out, transform var(--ht-table-transition, 0.15s) ease-out;\n}\n.ht-notification__toast--animate.ht-notification__toast--stack-top:not(.ht-notification__toast--visible) {\n transform: translateY(-6px);\n}\n.ht-notification__toast--animate.ht-notification__toast--stack-bottom:not(.ht-notification__toast--visible) {\n transform: translateY(6px);\n}\n.ht-notification__toast--visible {\n opacity: 1;\n transform: translateY(0);\n}\n.ht-notification__toast--info .ht-notification__accent {\n display: none;\n}\n.ht-notification__toast--success .ht-notification__accent {\n background-color: var(--ht-notification-success-accent, #37bc6c);\n}\n.ht-notification__toast--warning .ht-notification__accent {\n background-color: var(--ht-notification-warning-accent, #fbe952);\n}\n.ht-notification__toast--error .ht-notification__accent {\n background-color: var(--ht-notification-error-accent, #fa4d32);\n}\n.ht-notification__toast-inner {\n display: flex;\n flex-direction: row;\n align-items: stretch;\n width: 100%;\n min-width: 0;\n padding: 10px;\n gap: 0;\n direction: inherit;\n}\n.ht-notification__accent {\n box-sizing: border-box;\n flex: 0 0 4px;\n align-self: stretch;\n border-radius: 4px;\n margin-inline-end: 10px;\n}\n.ht-notification__body {\n flex: 1 1 auto;\n min-width: 0;\n}\n.ht-notification__title {\n margin: 0 0 var(--ht-gap-size);\n font-size: var(--ht-font-size);\n font-weight: var(--ht-font-weight, 600);\n}\n.ht-notification__message {\n margin: 0;\n font-size: var(--ht-font-size-small);\n word-break: break-word;\n}\n.ht-notification__actions {\n display: flex;\n flex-wrap: wrap;\n gap: var(--ht-gap-size);\n margin-top: var(--ht-gap-size);\n}\n.ht-notification__close {\n position: relative;\n box-sizing: border-box;\n flex: 0 0 auto;\n align-self: flex-start;\n margin-inline-start: 4px;\n width: var(--ht-icon-button-hit-area-size);\n height: var(--ht-icon-button-hit-area-size);\n padding: 0;\n border: none;\n background: transparent;\n color: var(--ht-icon-button-icon-color, inherit);\n cursor: pointer;\n border-radius: var(--ht-icon-button-border-radius, var(--ht-border-radius, 4px));\n flex-shrink: 0;\n overflow: visible;\n}\n.ht-notification__close::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n inset-inline-start: 50%;\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-inline-start: calc(-0.5 * var(--ht-icon-size));\n}\n.ht-notification__close:hover {\n color: var(--ht-icon-button-hover-icon-color, inherit);\n background-color: var(--ht-icon-button-hover-background-color, color-mix(in srgb, var(--ht-foreground-color) 8%, transparent));\n}\n.ht-notification__close:focus-visible {\n outline: 2px solid var(--ht-accent-color);\n outline-offset: 2px;\n}\n\n.handsontable.ht-pagination {\n width: 100%;\n color: var(--ht-pagination-bar-foreground-color);\n background: var(--ht-pagination-bar-background-color);\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n box-sizing: border-box;\n overflow-x: auto;\n}\n.handsontable.ht-pagination:not(.ht-slot-element) {\n border: 1px solid var(--ht-border-color);\n border-radius: var(--ht-border-radius);\n}\n.handsontable.ht-pagination .ht-pagination__inner {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: calc(var(--ht-gap-size) * 4);\n padding-inline: var(--ht-pagination-bar-horizontal-padding);\n padding-block: var(--ht-pagination-bar-vertical-padding);\n min-width: 230px;\n}\n.handsontable.ht-pagination .ht-page-size-section {\n display: flex;\n align-items: center;\n gap: calc(var(--ht-gap-size) * 2);\n}\n.handsontable.ht-pagination .ht-page-size-section__label {\n white-space: nowrap;\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper {\n position: relative;\n border-radius: var(--ht-input-border-radius);\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper select {\n padding-inline-start: var(--ht-gap-size);\n padding-inline-end: calc(var(--ht-gap-size) + var(--ht-icon-size));\n padding-top: var(--ht-gap-size);\n padding-bottom: var(--ht-gap-size);\n border-radius: var(--ht-input-border-radius);\n color: var(--ht-input-foreground-color);\n background-color: var(--ht-input-background-color);\n border: 1px solid var(--ht-input-border-color);\n line-height: calc(var(--ht-line-height) - 4px);\n -webkit-appearance: none;\n font-size: inherit;\n cursor: pointer;\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper select:disabled {\n opacity: 0.4;\n cursor: default;\n color: var(--ht-input-disabled-foreground-color);\n background-color: var(--ht-input-disabled-background-color);\n border-color: var(--ht-input-disabled-border-color);\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper select:hover:not(:disabled) {\n color: var(--ht-input-hover-foreground-color);\n background-color: var(--ht-input-hover-background-color);\n border-color: var(--ht-input-hover-border-color);\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper select:focus {\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n border-color: var(--ht-input-focus-border-color);\n outline: none;\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper::after {\n content: \"\";\n display: block;\n position: absolute;\n inset-inline-end: var(--ht-gap-size);\n inset-block-end: 50%;\n transform: translateY(50%);\n background-color: var(--ht-foreground-color);\n pointer-events: none;\n}\n.handsontable.ht-pagination .ht-page-counter-section {\n margin-inline-end: auto;\n}\n.handsontable.ht-pagination .ht-page-navigation-section {\n display: flex;\n align-items: center;\n gap: 1px;\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button {\n font-size: inherit;\n border: 1px solid var(--ht-pagination-button-border-color);\n color: var(--ht-pagination-button-foreground-color);\n background-color: var(--ht-pagination-button-background-color);\n border-radius: var(--ht-icon-button-large-border-radius);\n padding: var(--ht-icon-button-large-padding);\n cursor: pointer;\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button::before {\n content: \"\";\n display: block;\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button--disabled {\n cursor: default;\n pointer-events: none;\n color: var(--ht-pagination-button-disabled-foreground-color);\n background-color: var(--ht-pagination-button-disabled-background-color);\n border-color: var(--ht-pagination-button-disabled-border-color);\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button:hover:not(:disabled) {\n border-color: var(--ht-pagination-button-hover-border-color);\n color: var(--ht-pagination-button-hover-foreground-color);\n background-color: var(--ht-pagination-button-hover-background-color);\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button:focus {\n outline: none;\n border-color: var(--ht-pagination-button-focus-border-color);\n color: var(--ht-pagination-button-focus-foreground-color);\n background-color: var(--ht-pagination-button-focus-background-color);\n}\n.handsontable.ht-pagination .ht-page-navigation-section__label {\n white-space: nowrap;\n min-width: 100px;\n text-align: center;\n}\n\n.ht-loading__icon-svg {\n display: block;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n color: var(--ht-accent-color);\n animation: ht-loading-spin 1s linear infinite;\n transform-origin: 50% 50%;\n}\n.ht-loading__content {\n display: flex;\n align-items: center;\n gap: calc(var(--ht-gap-size) * 2);\n}\n.ht-loading__title {\n margin: 0;\n font-size: var(--ht-font-size);\n font-weight: var(--ht-font-weight);\n line-height: var(--ht-line-height);\n}\n.ht-loading__description {\n margin: 0;\n color: var(--ht-foreground-secondary-color);\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n font-weight: var(--ht-font-weight);\n}\n\n@keyframes ht-loading-spin {\n to {\n transform: rotate(360deg);\n }\n}\n.ht-empty-data-state {\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n display: none;\n position: absolute;\n width: 100%;\n left: 0;\n z-index: 999;\n overflow-y: auto;\n border: 1px solid var(--ht-border-color);\n border-radius: var(--ht-border-radius);\n box-sizing: border-box;\n background-color: var(--ht-background-color);\n}\n.ht-empty-data-state * {\n box-sizing: border-box !important;\n}\n.ht-empty-data-state__content-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n width: 100%;\n min-height: 100%;\n padding: calc(var(--ht-gap-size) * 2);\n border-radius: var(--ht-border-radius);\n}\n.ht-empty-data-state__content-wrapper-inner {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n max-width: 480px;\n padding: calc(var(--ht-gap-size) * 2);\n border-radius: var(--ht-border-radius);\n}\n.ht-empty-data-state__content-wrapper-inner:focus {\n outline: none;\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n.ht-empty-data-state__content {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: var(--ht-gap-size);\n}\n.ht-empty-data-state__title {\n margin: 0;\n font-size: var(--ht-font-size);\n font-weight: var(--ht-font-weight);\n line-height: var(--ht-line-height);\n}\n.ht-empty-data-state__description {\n margin: 0;\n color: var(--ht-foreground-secondary-color);\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n font-weight: var(--ht-font-weight);\n}\n.ht-empty-data-state__buttons {\n display: flex;\n justify-content: center;\n flex-direction: row;\n flex-wrap: wrap;\n gap: calc(var(--ht-gap-size) * 2);\n}\n.ht-empty-data-state__buttons--has-buttons {\n margin-top: calc(var(--ht-gap-size) * 2);\n}\n.ht-empty-data-state__spinner {\n flex-shrink: 0;\n width: 28px;\n height: 28px;\n margin-bottom: calc(var(--ht-gap-size) * 2);\n border: 2px solid var(--ht-border-color);\n border-top-color: var(--ht-accent-color);\n border-radius: 50%;\n animation: ht-empty-data-state-spin 0.75s linear infinite;\n}\n@media (prefers-reduced-motion: reduce) {\n .ht-empty-data-state__spinner {\n animation: none;\n border-top-color: var(--ht-border-color);\n }\n}\n.ht-empty-data-state--loading .ht-empty-data-state__content {\n gap: calc(var(--ht-gap-size) * 0.5);\n}\n.ht-empty-data-state--disable-top-border {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-top-width: 0;\n}\n.ht-empty-data-state--disable-inline-border {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n border-inline-start-width: 0;\n}\n.ht-empty-data-state--disable-bottom-border {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n border-bottom-width: 0;\n}\n\n.ht-root-wrapper.ht-slot-bottom-filled .ht-empty-data-state {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n}\n\n@keyframes ht-empty-data-state-spin {\n to {\n transform: rotate(360deg);\n }\n}\n");
118198
+ /* eslint-disable max-len, quotes */ /* This file is autogenerated. */ /* export default */ const __rspack_default_export = ("/*!\n * Copyright (c) HANDSONCODE sp. z o. o.\n *\n * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in\n * Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number\n * 538651, EU tax ID number: PL5862294002, share capital: PLN 67,200.00.\n *\n * This software is protected by applicable copyright laws, including international treaties, and dual-\n * licensed - depending on whether your use for commercial purposes, meaning intended for or\n * resulting in commercial advantage or monetary compensation, or not.\n *\n * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing\n * the suitability, performance, and usefulness of this software outside the production environment,\n * you agree to be bound by the terms included in the \"handsontable-non-commercial-license.pdf\" file.\n *\n * Your use of this software for commercial purposes is subject to the terms included in an applicable\n * license agreement.\n *\n * In any case, you must not make any such use of this software as to develop software which may be\n * considered competitive with this software.\n *\n * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN \"AS IS\"\n * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO\n * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,\n * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM\n * USE OR INABILITY TO USE THIS SOFTWARE.\n *\n * Version: 18.1.1\n * Release date: 15/09/2026 (built at 15/09/2026 08:36:12)\n */\n@charset \"UTF-8\";\n.ht-root-wrapper {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n position: relative;\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n.ht-root-wrapper.ht-shadow-dom {\n isolation: isolate;\n}\n.ht-root-wrapper.ht-slot-bottom-filled .ht-wrapper:not(.htHorizontallyScrollableByWindow) .ht_master .wtHolder, .ht-root-wrapper.ht-slot-bottom-filled .ht-wrapper:not(.htVerticallyScrollableByWindow) .ht_master .wtHolder, .ht-root-wrapper.ht-slot-top-filled .ht-wrapper:not(.htHorizontallyScrollableByWindow) .ht_master .wtHolder, .ht-root-wrapper.ht-slot-top-filled .ht-wrapper:not(.htVerticallyScrollableByWindow) .ht_master .wtHolder {\n background-color: var(--ht-background-color);\n box-shadow: inset 0 0 0 1px var(--ht-border-color);\n}\n\n.htFocusCatcher {\n display: block !important;\n position: absolute;\n width: 0;\n height: 0;\n margin: 0;\n padding: 0;\n border: 0;\n outline: 0;\n opacity: 0;\n z-index: -1;\n}\n\n.ht-grid {\n position: relative;\n flex: 1 1 auto;\n min-height: 0;\n}\n\n.ht-grid-content {\n height: 100%;\n}\n\n.ht-slot-top, .ht-slot-bottom {\n flex: 0 0 auto;\n overflow-x: auto;\n}\n\n.ht-slot-element {\n width: 100%;\n box-sizing: border-box;\n border: 1px solid var(--ht-border-color);\n}\n\n.ht-slot-top > .ht-slot-element:not(:first-of-type) {\n border-top-width: 0;\n}\n.ht-slot-top > .ht-slot-element:last-of-type {\n border-bottom-width: 0;\n}\n\n.ht-slot-bottom > .ht-slot-element:not(:last-of-type) {\n border-bottom-width: 0;\n}\n.ht-slot-bottom > .ht-slot-element:first-of-type {\n border-top-width: 0;\n}\n\n.htScrollbarTest {\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n}\n\n.htScrollbarSafariTest::-webkit-scrollbar {\n width: 9px;\n height: 9px;\n}\n\n.handsontable {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n position: relative;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n letter-spacing: var(--ht-letter-spacing);\n color: var(--ht-foreground-color);\n /* Miscellaneous */\n touch-action: manipulation;\n}\n.handsontable .wtHolder {\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n}\n.handsontable .wtHolder::-webkit-scrollbar {\n width: 9px;\n height: 9px;\n}\n.handsontable .wtHolder::-webkit-scrollbar-track {\n background: var(--ht-scrollbar-track-color);\n border-radius: var(--ht-scrollbar-border-radius);\n}\n.handsontable .wtHolder::-webkit-scrollbar-thumb {\n background-color: var(--ht-scrollbar-thumb-color);\n border-radius: var(--ht-scrollbar-border-radius);\n}\n.handsontable .wtHolder::-webkit-scrollbar-corner {\n background: var(--ht-scrollbar-track-color);\n border-end-end-radius: var(--ht-scrollbar-border-radius);\n}\n.handsontable.ht-wrapper {\n height: 100%;\n width: 100%;\n}\n.handsontable.ht-wrapper:not(.htFirstDatasetColumnNotRendered) :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td:first-of-type {\n border-inline-start-width: 1px;\n}\n.handsontable.htGhostTable.htNestedHeaders table {\n border-spacing: 0;\n border-collapse: collapse;\n}\n.handsontable.htGhostTable table thead th {\n border-bottom-width: 0;\n}\n.handsontable.htGhostTable table tbody tr:first-of-type th:first-child,\n.handsontable.htGhostTable table tbody tr:first-of-type td:first-child {\n height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);\n}\n.handsontable.htGhostTable table tbody tr th,\n.handsontable.htGhostTable table tbody tr td {\n border-top-width: 0;\n height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);\n}\n.handsontable:not(.htHorizontallyScrollableByWindow).htHasScrollX .ht_master .wtHolder, .handsontable:not(.htHorizontallyScrollableByWindow).htHasScrollY .ht_master .wtHolder, .handsontable:not(.htVerticallyScrollableByWindow).htHasScrollX .ht_master .wtHolder, .handsontable:not(.htVerticallyScrollableByWindow).htHasScrollY .ht_master .wtHolder {\n background-color: var(--ht-background-color);\n box-shadow: inset 0 0 0 1px var(--ht-border-color);\n}\n.handsontable :where(table.htCore > tbody, .htGhostTable > table > tbody) > tr.ht__row_even > th {\n background-color: var(--ht-row-header-even-background-color);\n}\n.handsontable :where(table.htCore > tbody, .htGhostTable > table > tbody) > tr.ht__row_even > td {\n background-color: var(--ht-row-cell-even-background-color);\n}\n.handsontable :where(table.htCore > tbody, .htGhostTable > table > tbody) > tr.ht__row_odd > th {\n background-color: var(--ht-row-header-odd-background-color);\n}\n.handsontable :where(table.htCore > tbody, .htGhostTable > table > tbody) > tr.ht__row_odd > td {\n background-color: var(--ht-row-cell-odd-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th,\n.handsontable :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td {\n height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n vertical-align: top;\n border-top-width: 0;\n border-inline-start-width: 0;\n border-inline-end-width: 1px;\n border-bottom-width: 1px;\n border-style: solid;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n white-space: pre-wrap;\n overflow: hidden;\n outline: none;\n outline-width: 0;\n empty-cells: show;\n box-sizing: border-box;\n color: var(--ht-foreground-color);\n border-top-color: var(--ht-cell-vertical-border-color);\n border-bottom-color: var(--ht-cell-vertical-border-color);\n border-inline-start-color: var(--ht-cell-horizontal-border-color);\n border-inline-end-color: var(--ht-cell-horizontal-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.invisibleSelection,\n.handsontable :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td.invisibleSelection {\n outline: none;\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.invisibleSelection::selection,\n.handsontable :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td.invisibleSelection::selection {\n background: transparent;\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th {\n position: relative;\n overflow: visible;\n text-align: center;\n font-weight: var(--ht-header-font-weight);\n white-space: nowrap;\n color: var(--ht-header-foreground-color);\n background-color: var(--ht-header-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:last-child {\n /* Foundation framework fix */\n border-inline-start-width: 0;\n border-inline-end-width: 1px;\n border-bottom-width: 1px;\n border-inline-end-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:last-child.ht__active_highlight {\n border-inline-end-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:first-child {\n border-inline-start-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:first-child.ht__active_highlight {\n border-inline-start-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:first-child, .handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th:nth-child(2) {\n border-inline-start-width: 1px;\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.current {\n box-shadow: inset 0 0 0 1px var(--ht-cell-selection-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.active {\n color: var(--ht-header-active-foreground-color);\n background-color: var(--ht-header-active-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.ht__highlight {\n color: var(--ht-header-highlighted-foreground-color);\n background-color: var(--ht-header-highlighted-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.ht__active_highlight {\n border-color: var(--ht-header-active-border-color);\n color: var(--ht-header-active-foreground-color);\n background-color: var(--ht-header-active-background-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.ht__active_highlight-prev {\n border-inline-end-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore > thead > tr, .htGhostTable > table > thead > tr, table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > th.ht__active_highlight-seam {\n border-inline-end-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr.ht__row_odd > th.ht__highlight, .handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr.ht__row_even > th.ht__highlight {\n color: var(--ht-header-row-highlighted-foreground-color);\n background-color: var(--ht-header-row-highlighted-background-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr.ht__row_odd > th.ht__active_highlight, .handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr.ht__row_even > th.ht__active_highlight {\n color: var(--ht-header-row-active-foreground-color);\n background-color: var(--ht-header-row-active-background-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr:first-of-type > th:first-child:empty::after,\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr:first-of-type > td:first-child:empty::after {\n content: \"\";\n display: block;\n min-height: var(--ht-line-height);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > th {\n padding: 0;\n color: var(--ht-header-row-foreground-color);\n background-color: var(--ht-header-row-background-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > th .relative {\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n min-height: 100%;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > td:first-child {\n border-inline-start-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > td:last-child {\n border-inline-end-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > th.ht__active_highlight-prev-row {\n border-bottom-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr > th {\n padding: 0;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr > th.ht__active_highlight {\n box-shadow: -1px 0 0 0 var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr > th .relative {\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n gap: 2px;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr > th .relative .colHeader {\n flex: 1 1 auto;\n min-width: 0;\n text-overflow: ellipsis;\n overflow: hidden;\n vertical-align: top;\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > th,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > td {\n border-top-color: var(--ht-border-color);\n border-top-width: 1px;\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > th.ht__active_highlight, .handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > th.ht__active_highlight-row-seam-bottom,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > td.ht__active_highlight,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:first-child > td.ht__active_highlight-row-seam-bottom {\n border-top-color: var(--ht-header-active-border-color);\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > th,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > td {\n border-bottom-color: var(--ht-border-color);\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > th.ht__active_highlight, .handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > th.ht__active_highlight-row-seam-top,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > td.ht__active_highlight,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr:last-child > td.ht__active_highlight-row-seam-top {\n border-bottom-color: var(--ht-header-active-border-color);\n}\n.handsontable div[class^=ht_clone] thead .ht__highlight .relative::after {\n content: \"\";\n display: block;\n position: absolute;\n left: -1px;\n right: -1px;\n bottom: -1px;\n height: var(--ht-header-highlighted-shadow-size);\n background-color: var(--ht-accent-color);\n}\n.handsontable div[class^=ht_clone] thead tr:only-of-type .ht__highlight .relative::after {\n bottom: 0;\n}\n.handsontable div[class^=ht_clone] tbody .ht__highlight .relative::after {\n content: \"\";\n display: block;\n position: absolute;\n top: -1px;\n right: -1px;\n bottom: -1px;\n width: var(--ht-header-highlighted-shadow-size);\n background-color: var(--ht-accent-color);\n}\n.handsontable div[class^=ht_clone] :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td:first-of-type {\n border-inline-start-width: 1px;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > thead > tr:not(:last-child) > th {\n /* Fix for - nested columns with hidden column */\n overflow: hidden;\n}\n.handsontable .hide {\n display: none;\n}\n.handsontable .relative {\n position: relative;\n box-sizing: border-box;\n}\n.handsontable .wtHider {\n width: 0;\n}\n.handsontable .wtSpreader {\n position: relative;\n /* must be 0, otherwise blank space appears in scroll demo after scrolling max to the right */\n width: 0;\n height: auto;\n}\n.handsontable .htAutoSize {\n position: absolute;\n left: -99000px;\n top: -99000px;\n visibility: hidden;\n}\n.handsontable .htTextEllipsis {\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n.handsontable table.htCore, .handsontable:where(.htGhostTable) > table,\n.handsontable :where(table.htCore, .htGhostTable > table) > thead,\n.handsontable :where(table.htCore, .htGhostTable > table) > tbody,\n.handsontable input:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))),\n.handsontable textarea:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))),\n.handsontable div:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))) {\n box-sizing: content-box;\n}\n.handsontable input:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))),\n.handsontable textarea:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))) {\n min-height: initial;\n}\n.handsontable .htCore {\n width: 0;\n margin: 0;\n border-width: 0;\n border-spacing: 0;\n border-collapse: separate;\n outline-width: 0;\n table-layout: fixed;\n cursor: default;\n background-color: var(--ht-background-color);\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > colgroup > col {\n width: 64px;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > colgroup > col.rowHeader {\n width: 64px;\n}\n.handsontable :where(table.htCore, .htGhostTable > table) > colgroup > col.hidden {\n width: 0 !important;\n}\n.handsontable span.colHeader, .handsontable span.rowHeader {\n display: inline-block;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr.hidden {\n display: none;\n}\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr.hidden > td,\n.handsontable :where(table.htCore > thead, table.htCore > tbody, .htGhostTable > table > thead, .htGhostTable > table > tbody) > tr.hidden > th {\n display: none;\n}\n.handsontable a:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))) {\n color: var(--ht-link-color);\n}\n.handsontable a:not(:where(table.htCore > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput), .htGhostTable > table > tbody > tr > td:not(.htCustomMenuRenderer) *:not(.htCheckboxRendererInput))):hover {\n color: var(--ht-link-hover-color);\n}\n.handsontable .ht_clone_top :where(table.htCore > thead > tr) > th:nth-child(2) {\n border-inline-start-width: 0;\n border-inline-end-width: 1px;\n}\n.handsontable .ht_clone_top_inline_start_corner :where(table.htCore > thead > tr) > th:nth-child(2) {\n border-inline-start-width: 0;\n border-inline-end-width: 1px;\n}\n.handsontable.htRowHeaders :where(table.htCore) > thead > tr > th:nth-child(2) {\n border-inline-start-width: 1px;\n}\n.handsontable .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) :where(table.htCore) > tbody > tr > th,\n.handsontable .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) :where(table.htCore) > thead > tr > th:first-child,\n.handsontable .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable:not(.htGhostTable) :where(table.htCore) > tbody > tr > th,\n.handsontable .ht_master:not(.innerBorderInlineStart):not(.emptyColumns) ~ .handsontable:not(.ht_clone_top):not(.htGhostTable) :where(table.htCore) > thead > tr > th:first-child {\n border-inline-end-width: 0;\n border-inline-start-width: 1px;\n}\n.handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) :where(table.htCore) > thead > tr:last-child > th, .handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable :where(table.htCore) > thead > tr:last-child > th,\n.handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) :where(table.htCore) > thead > tr.lastChild > th, .handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable :where(table.htCore) > thead > tr.lastChild > th {\n border-bottom-width: 0;\n}\n.handsontable.htAutoRowSize .ht_master.innerBorderTop :where(table.htCore) > tbody > tr:first-child > th,\n.handsontable.htAutoRowSize .ht_master.innerBorderTop :where(table.htCore) > tbody > tr:first-child > td {\n border-top-width: 0;\n}\n.handsontable.htAutoRowSize .ht_master.innerBorderTop ~ .ht_clone_inline_start :where(table.htCore) > tbody > tr:first-child > th,\n.handsontable.htAutoRowSize .ht_master.innerBorderTop ~ .ht_clone_inline_start :where(table.htCore) > tbody > tr:first-child > td {\n border-top-width: 0;\n}\n.handsontable .ht_master table.htCore > thead,\n.handsontable .ht_master table.htCore > tbody > tr > th,\n.handsontable .ht_clone_inline_start table.htCore > thead {\n visibility: hidden;\n}\n\n.ht_master,\n.ht_clone_inline_start,\n.ht_clone_top,\n.ht_clone_bottom {\n overflow: hidden;\n}\n.ht_master .wtHolder,\n.ht_clone_inline_start .wtHolder,\n.ht_clone_top .wtHolder,\n.ht_clone_bottom .wtHolder {\n overflow: hidden;\n}\n\n.ht_master .wtHolder {\n overflow: auto;\n}\n\n[dir=rtl].handsontable :where(table.htCore > tbody > tr, .htGhostTable > table > tbody > tr) > td[dir=ltr] {\n border-inline-end-width: 0;\n border-inline-start-width: 1px;\n}\n[dir=rtl].handsontable :where(table.htCore, .htGhostTable > table) > tbody > tr > td[dir=ltr]:last-child {\n border-inline-start-color: var(--ht-border-color);\n}\n[dir=rtl].handsontable div[class^=ht_clone] tbody .ht__highlight .relative::after {\n right: auto;\n left: -1px;\n}\n\n.handsontable.ht-wrapper {\n border-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_master .htCore > tbody > tr:first-child > td:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_master .htCore > tbody > tr:first-child > td:last-child {\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_top_inline_start_corner .htCore > tbody > tr:first-child > td:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_top .htCore > tbody > tr:first-child > td:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_top .htCore > tbody > tr:first-child > td:last-child {\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_inline_start .htCore > tbody > tr:first-child > th:first-child,\n.handsontable.ht-wrapper:not(.htColumnHeaders) .ht_clone_inline_start .htCore > tbody > tr:first-child > td:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .wtHolder {\n border-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore {\n border-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > thead > tr:first-child > th:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > thead > tr:first-child > th:not(.hiddenHeader).htLastVisibleHeader {\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > thead > tr:last-child > th:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > thead > tr:last-child > th:not(.hiddenHeader).htLastVisibleHeader {\n border-end-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > tbody > tr:last-child > td:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_master .htCore > tbody > tr:last-child > td:last-child {\n border-end-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top_inline_start_corner .htCore {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top_inline_start_corner .htCore > thead > tr:first-child > th:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top .htCore {\n border-start-start-radius: var(--ht-border-radius);\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top .htCore > thead > tr:first-child > th:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_top .htCore > thead > tr:first-child > th:not(.hiddenHeader).htLastVisibleHeader {\n border-start-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_inline_start .htCore {\n border-start-start-radius: var(--ht-border-radius);\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_inline_start .htCore > thead > tr:first-child > th:first-child {\n border-start-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_inline_start .htCore > tbody > tr:last-child > th:first-child,\n.handsontable.ht-wrapper .ht_clone_inline_start .htCore > tbody > tr:last-child > td:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom_inline_start_corner .htCore {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom_inline_start_corner .htCore > :where(thead, tbody) > tr:last-child > th:first-child,\n.handsontable.ht-wrapper .ht_clone_bottom_inline_start_corner .htCore > :where(thead, tbody) > tr:last-child > td:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom .htCore {\n border-end-start-radius: var(--ht-border-radius);\n border-end-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom .htCore > :where(thead, tbody) > tr:last-child > th:first-child,\n.handsontable.ht-wrapper .ht_clone_bottom .htCore > :where(thead, tbody) > tr:last-child > td:first-child {\n border-end-start-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper .ht_clone_bottom .htCore > :where(thead, tbody) > tr:last-child > th:last-child,\n.handsontable.ht-wrapper .ht_clone_bottom .htCore > :where(thead, tbody) > tr:last-child > td:last-child {\n border-end-end-radius: var(--ht-border-radius);\n}\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > thead > tr:last-child > th:first-child,\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > tbody > tr:last-child > td:first-child,\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > tbody > tr:last-child > th:first-child {\n border-end-start-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > thead > tr:last-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > tbody > tr:last-child > td:last-child,\n.handsontable.ht-wrapper.htHasScrollX:not(.htHorizontallyScrollableByWindow) .htCore > tbody > tr:last-child > th:last-child {\n border-end-end-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore {\n border-start-end-radius: 0;\n border-end-end-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > thead > tr:first-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > tbody > tr:first-child > td:last-child,\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > tbody > tr:first-child > th:last-child {\n border-start-end-radius: 0;\n}\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > thead > tr:last-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > tbody > tr:last-child > td:last-child,\n.handsontable.ht-wrapper.htHasScrollY:not(.htVerticallyScrollableByWindow) .htCore > tbody > tr:last-child > th:last-child {\n border-end-end-radius: 0;\n}\n\n.ht-root-wrapper {\n border-radius: var(--ht-border-radius);\n}\n.ht-root-wrapper.ht-slot-bottom-filled .ht-wrapper,\n.ht-root-wrapper.ht-slot-bottom-filled .ht_master .wtHolder {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n}\n.ht-root-wrapper.ht-slot-bottom-filled .htCore {\n border-end-start-radius: 0 !important;\n border-end-end-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > thead > tr:last-child > th:first-child,\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > tbody > tr:last-child > td:first-child,\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > tbody > tr:last-child > th:first-child {\n border-end-start-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > thead > tr:last-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > tbody > tr:last-child > td:last-child,\n.ht-root-wrapper.ht-slot-bottom-filled .htCore > tbody > tr:last-child > th:last-child {\n border-end-end-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-top-filled .ht-wrapper,\n.ht-root-wrapper.ht-slot-top-filled .ht_master .wtHolder {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n}\n.ht-root-wrapper.ht-slot-top-filled .htCore {\n border-start-start-radius: 0 !important;\n border-start-end-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-top-filled .htCore > thead > tr:first-child > th:first-child,\n.ht-root-wrapper.ht-slot-top-filled .htCore > tbody > tr:first-child > td:first-child,\n.ht-root-wrapper.ht-slot-top-filled .htCore > tbody > tr:first-child > th:first-child {\n border-start-start-radius: 0 !important;\n}\n.ht-root-wrapper.ht-slot-top-filled .htCore > thead > tr:first-child > th:not(.hiddenHeader).htLastVisibleHeader,\n.ht-root-wrapper.ht-slot-top-filled .htCore > tbody > tr:first-child > td:last-child,\n.ht-root-wrapper.ht-slot-top-filled .htCore > tbody > tr:first-child > th:last-child {\n border-start-end-radius: 0 !important;\n}\n.ht-root-wrapper .ht-slot-element {\n border-radius: var(--ht-border-radius);\n}\n.ht-root-wrapper .ht-slot-bottom > .ht-slot-element:not(:last-of-type) {\n border-radius: 0;\n}\n.ht-root-wrapper .ht-slot-bottom > .ht-slot-element:last-of-type {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n}\n.ht-root-wrapper .ht-slot-top > .ht-slot-element:not(:first-of-type) {\n border-radius: 0;\n}\n.ht-root-wrapper .ht-slot-top > .ht-slot-element:first-of-type {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n}\n\n.handsontable.mobile {\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n -webkit-overflow-scrolling: touch;\n}\n.handsontable.mobile .wtHolder {\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n -webkit-overflow-scrolling: touch;\n}\n.handsontable.mobile .handsontableInput:focus {\n box-shadow: inset 0 0 0 2px var(--ht-accent-color);\n -webkit-appearance: none;\n}\n.handsontable .topSelectionHandle,\n.handsontable .topSelectionHandle-HitArea,\n.handsontable .bottomSelectionHandle,\n.handsontable .bottomSelectionHandle-HitArea {\n inset-inline-start: -10000px;\n inset-inline-end: unset;\n top: -10000px;\n z-index: 9999;\n}\n.handsontable.hide-tween {\n -webkit-animation: opacity-hide 0.2s;\n animation: opacity-hide 0.2s;\n animation-fill-mode: forwards;\n -webkit-animation-fill-mode: forwards;\n}\n.handsontable.show-tween {\n -webkit-animation: opacity-show 0.3s;\n animation: opacity-show 0.3s;\n animation-fill-mode: forwards;\n -webkit-animation-fill-mode: forwards;\n}\n\n.ht_clone_master {\n z-index: 100;\n}\n\n.ht_clone_inline_start {\n z-index: 120;\n}\n\n.ht_clone_bottom {\n z-index: 130;\n}\n\n.ht_clone_bottom_inline_start_corner {\n z-index: 150;\n}\n\n.ht_clone_top {\n z-index: 160;\n}\n\n.ht_clone_top_inline_start_corner {\n z-index: 180;\n}\n\n.ht_editor_hidden {\n z-index: -1;\n}\n\n.ht_editor_visible {\n z-index: 200;\n}\n\n.handsontable td.area {\n position: relative;\n}\n.handsontable td.area::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-1 {\n position: relative;\n}\n.handsontable td.area-1::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-2 {\n position: relative;\n}\n.handsontable td.area-2::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-3 {\n position: relative;\n}\n.handsontable td.area-3::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-4 {\n position: relative;\n}\n.handsontable td.area-4::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-5 {\n position: relative;\n}\n.handsontable td.area-5::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-6 {\n position: relative;\n}\n.handsontable td.area-6::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area-7 {\n position: relative;\n}\n.handsontable td.area-7::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background: var(--ht-cell-selection-background-color, #1a42e8);\n}\n.handsontable td.area::before {\n opacity: 0.14;\n}\n.handsontable td.area-1::before {\n opacity: 0.21;\n}\n.handsontable td.area-2::before {\n opacity: 0.28;\n}\n.handsontable td.area-3::before {\n opacity: 0.35;\n}\n.handsontable td.area-4::before {\n opacity: 0.42;\n}\n.handsontable td.area-5::before {\n opacity: 0.49;\n}\n.handsontable td.area-6::before {\n opacity: 0.56;\n}\n.handsontable td.area-7::before {\n opacity: 0.63;\n}\n.handsontable td.area {\n border-color: color-mix(in srgb, var(--ht-border-color), var(--ht-foreground-color) 10%);\n}\n.handsontable .wtSelectionHandle {\n position: absolute;\n box-sizing: border-box;\n z-index: 115;\n background: var(--ht-cell-selection-handle-background-color);\n border: var(--ht-cell-selection-handle-border-width) solid var(--ht-cell-selection-handle-border-color);\n border-radius: var(--ht-cell-selection-handle-border-radius);\n animation: ht-selection-handle-fade-in var(--ht-table-transition) ease-in-out backwards;\n}\n.handsontable .wtSelectionHandle:hover {\n background: color-mix(in srgb, var(--ht-cell-selection-handle-border-color) 30%, var(--ht-cell-selection-handle-background-color));\n}\n@media (prefers-reduced-motion: reduce) {\n .handsontable .wtSelectionHandle {\n animation: none;\n }\n}\n.handsontable .wtSelectionHandle--top,\n.handsontable .wtSelectionHandle--bottom {\n width: var(--ht-cell-selection-handle-length);\n height: var(--ht-cell-selection-handle-size);\n cursor: ns-resize;\n}\n.handsontable .wtSelectionHandle--start,\n.handsontable .wtSelectionHandle--end {\n width: var(--ht-cell-selection-handle-size);\n height: var(--ht-cell-selection-handle-length);\n cursor: ew-resize;\n}\n.handsontable.ht__resizing-selection--top .wtSelectionHandle:not(.wtSelectionHandle--top), .handsontable.ht__resizing-selection--bottom .wtSelectionHandle:not(.wtSelectionHandle--bottom), .handsontable.ht__resizing-selection--start .wtSelectionHandle:not(.wtSelectionHandle--start), .handsontable.ht__resizing-selection--end .wtSelectionHandle:not(.wtSelectionHandle--end) {\n display: none !important;\n}\n.handsontable.ht__resizing-selection--top,\n.handsontable.ht__resizing-selection--top *, .handsontable.ht__resizing-selection--bottom,\n.handsontable.ht__resizing-selection--bottom * {\n cursor: ns-resize !important;\n}\n.handsontable.ht__resizing-selection--start,\n.handsontable.ht__resizing-selection--start *, .handsontable.ht__resizing-selection--end,\n.handsontable.ht__resizing-selection--end * {\n cursor: ew-resize !important;\n}\n.handsontable.ht__resizing-selection--top .wtSelectionHandle--top, .handsontable.ht__resizing-selection--bottom .wtSelectionHandle--bottom, .handsontable.ht__resizing-selection--start .wtSelectionHandle--start, .handsontable.ht__resizing-selection--end .wtSelectionHandle--end {\n background: color-mix(in srgb, var(--ht-cell-selection-handle-border-color) 30%, var(--ht-cell-selection-handle-background-color));\n}\n.handsontable .wtMoveZone {\n cursor: grab;\n}\n.handsontable .wtMoveZone:active {\n cursor: grabbing;\n}\n.handsontable.ht__moving {\n cursor: grabbing;\n}\n.handsontable.ht__moving * {\n cursor: grabbing !important;\n}\n.handsontable.ht__moving .wtBorder.area,\n.handsontable.ht__moving .wtBorder.current {\n display: none !important;\n}\n.handsontable.ht__moving .wtSelectionHandle,\n.handsontable.ht__moving .wtMoveZone {\n visibility: hidden !important;\n}\n.handsontable .wtBorder {\n position: absolute;\n font-size: 0;\n}\n.handsontable .wtBorder:nth-child(1), .handsontable .wtBorder:nth-child(3) {\n z-index: 2;\n}\n.handsontable .wtBorder:nth-child(2), .handsontable .wtBorder:nth-child(4) {\n z-index: 1;\n}\n.handsontable .wtBorder.hidden {\n display: none !important;\n}\n.handsontable .wtBorder.current {\n z-index: 10;\n background-color: var(--ht-cell-selection-border-color) !important;\n}\n.handsontable .wtBorder.area {\n z-index: 8;\n background-color: var(--ht-cell-selection-border-color) !important;\n}\n.handsontable .wtBorder.fill {\n z-index: 6;\n background-color: var(--ht-cell-autofill-fill-border-color, #68696c) !important;\n}\n.handsontable .wtBorder.corner {\n border-radius: var(--ht-cell-autofill-border-radius) !important;\n background-color: var(--ht-cell-autofill-background-color, #1a42e8) !important;\n border-color: var(--ht-cell-autofill-border-color) !important;\n font-size: 0;\n cursor: crosshair;\n z-index: 110;\n}\n.handsontable .wtBorder.corner::after {\n content: \"\";\n position: absolute;\n border-radius: var(--ht-cell-autofill-border-radius);\n inset: min(0px, (var(--ht-cell-autofill-size) - var(--ht-cell-autofill-hit-area-size)) / 2);\n background: transparent;\n}\n.handsontable .wtBorder.corner.wtCornerInlineEndEdge::after {\n inset-inline-end: 0;\n}\n.handsontable .wtBorder.corner.wtCornerBlockEndEdge::after {\n inset-block-end: 0;\n}\n\n@keyframes ht-selection-handle-fade-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n.hot-display-license-info {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n padding: var(--ht-license-vertical-padding, 16px) var(--ht-license-horizontal-padding, 16px);\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n color: var(--ht-license-foreground-color);\n background-color: var(--ht-license-background-color, #f7f7f9);\n text-align: left;\n min-width: 300px;\n}\n.hot-display-license-info a {\n font-size: var(--ht-license-font-size);\n color: var(--ht-link-color);\n}\n.hot-display-license-info a:hover {\n color: var(--ht-link-hover-color);\n}\n\n.ht-license-badge-wrapper {\n position: absolute;\n inset: 0;\n overflow: hidden;\n z-index: 1050;\n pointer-events: none;\n}\n\n.ht-license-badge-on .ht-license-badge-corner thead tr:first-child th:first-child::after {\n content: \"\";\n position: absolute;\n inset: 0;\n margin: auto;\n inset-inline-start: clamp(0px, 100% - var(--ht-license-badge-size, 16px), 6px);\n inline-size: min(var(--ht-license-badge-size, 16px), 100%);\n block-size: min(var(--ht-license-badge-size, 16px), 100%);\n background-color: var(--ht-license-badge-color, var(--ht-disabled-color, #a3a3a3));\n pointer-events: none;\n -webkit-mask-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width=%2714.8626%27 height=%2716%27 viewBox=%270 0 14.8626 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 0H3.28665V4.35577H7.03576V0H10.306V11.407H7.03576V6.90834H3.28665V11.407H0V0Z%27 fill=%27%23000%27/%3E%3Cpath d=%27M11.0991 12.236H14.8633V16.0001H11.0991V12.236Z%27 fill=%27%23000%27/%3E%3C/svg%3E\");\n mask-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width=%2714.8626%27 height=%2716%27 viewBox=%270 0 14.8626 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 0H3.28665V4.35577H7.03576V0H10.306V11.407H7.03576V6.90834H3.28665V11.407H0V0Z%27 fill=%27%23000%27/%3E%3Cpath d=%27M11.0991 12.236H14.8633V16.0001H11.0991V12.236Z%27 fill=%27%23000%27/%3E%3C/svg%3E\");\n -webkit-mask-size: contain;\n mask-size: contain;\n -webkit-mask-repeat: no-repeat;\n mask-repeat: no-repeat;\n -webkit-mask-position: center;\n mask-position: center;\n}\n\n.ht-license-badge-on .ht-license-badge-corner thead tr:first-child th:first-child:hover::after {\n background-color: var(--ht-license-badge-hover-color, var(--ht-read-only-color, #68696c));\n}\n\n[dir=rtl] .ht-license-badge-on .ht-license-badge-corner thead tr:first-child th:first-child::after {\n inset-inline-start: 0;\n inset-inline-end: clamp(0px, 100% - var(--ht-license-badge-size, 16px), 6px);\n}\n\n.ht-license-badge {\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 0;\n inline-size: 1px;\n block-size: 1px;\n margin: 0;\n padding: 0;\n border: 0;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n background: transparent;\n color: transparent;\n}\n\n.ht-license-popover {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: var(--ht-license-badge-area-width, 50px);\n inset-inline-end: 0;\n z-index: 1051;\n display: none;\n flex-direction: column;\n inline-size: auto;\n max-inline-size: min(var(--ht-license-popover-width, 320px), 100vw - 32px);\n max-block-size: 100%;\n overflow: visible;\n padding: 16px;\n border-radius: var(--ht-border-radius, 8px);\n border-start-start-radius: 0;\n background-color: var(--ht-license-popover-background-color, #16171a);\n color: var(--ht-license-popover-foreground-color, #fff);\n font-size: var(--ht-font-size-small, 12px);\n line-height: var(--ht-line-height-small, 18px);\n text-align: start;\n pointer-events: auto;\n box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) color-mix(in srgb, var(--ht-shadow-color, rgb(0, 0, 0)) var(--ht-shadow-opacity, 100%), transparent);\n}\n.ht-license-popover::before {\n content: \"\";\n position: absolute;\n inset-block-start: 0;\n inset-inline-end: 100%;\n inline-size: 0;\n block-size: 0;\n border-block-start: var(--ht-license-popover-tail-size, 5px) solid var(--ht-license-popover-background-color, #16171a);\n border-inline-start: var(--ht-license-popover-tail-size, 5px) solid transparent;\n}\n\n.ht-license-popover__content {\n min-block-size: 0;\n overflow-y: auto;\n}\n\n.ht-license-badge-wrapper.is-corner-hover:not(.is-dismissed) .ht-license-popover,\n.ht-license-badge-wrapper:not(.is-dismissed):hover .ht-license-popover,\n.ht-license-popover.is-open {\n display: flex;\n}\n\n.ht-license-badge-wrapper.is-cornerless .ht-license-badge {\n display: none;\n}\n.ht-license-badge-wrapper.is-cornerless .ht-license-popover {\n inset-inline-start: 0;\n border-start-start-radius: var(--ht-border-radius, 8px);\n}\n.ht-license-badge-wrapper.is-cornerless .ht-license-popover::before {\n display: none;\n}\n\n.ht-license-popover__title {\n margin-block-end: 8px;\n padding-inline-end: 16px;\n font-weight: bold;\n}\n\n.ht-license-popover__body {\n margin: 0 0 12px;\n color: var(--ht-license-popover-body-color, #d5d6d8);\n}\n\n.ht-license-popover__link {\n color: var(--ht-license-popover-link-color, #3ba0ff);\n text-decoration: none;\n}\n.ht-license-popover__link:hover {\n text-decoration: underline;\n}\n\n.ht-license-popover__close {\n position: absolute;\n inset-block-start: 12px;\n inset-inline-end: 12px;\n display: flex;\n align-items: center;\n justify-content: center;\n inline-size: 20px;\n block-size: 20px;\n padding: 0;\n border: 0;\n background: transparent;\n color: inherit;\n cursor: pointer;\n line-height: 1;\n}\n.ht-license-popover__close::before {\n content: \"✕\";\n font-size: 14px;\n}\n\n.ht-dialog.ht-license-lock {\n z-index: 1070;\n}\n.ht-dialog.ht-license-lock::before {\n content: \"\";\n position: absolute;\n inset-block-start: 0;\n inset-inline: 0;\n block-size: calc(var(--ht-line-height, 20px) + var(--ht-density-cell-vertical, 4px) * 2);\n background-color: var(--ht-header-background-color);\n border-block-end: 1px solid var(--ht-cell-horizontal-border-color, var(--ht-border-color));\n}\n.ht-dialog.ht-license-lock::after {\n content: \"\";\n position: absolute;\n inset-block-start: calc(var(--ht-density-cell-vertical, 4px) + (var(--ht-line-height, 20px) - var(--ht-license-badge-size, 16px)) / 2);\n inset-inline-start: var(--ht-cell-horizontal-padding, 8px);\n inline-size: var(--ht-license-badge-size, 16px);\n block-size: var(--ht-license-badge-size, 16px);\n background-color: var(--ht-license-badge-color, var(--ht-disabled-color, #a3a3a3));\n -webkit-mask-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width=%2714.8626%27 height=%2716%27 viewBox=%270 0 14.8626 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 0H3.28665V4.35577H7.03576V0H10.306V11.407H7.03576V6.90834H3.28665V11.407H0V0Z%27 fill=%27%23000%27/%3E%3Cpath d=%27M11.0991 12.236H14.8633V16.0001H11.0991V12.236Z%27 fill=%27%23000%27/%3E%3C/svg%3E\");\n mask-image: url(\"data:image/svg+xml;charset=utf-8,%3Csvg width=%2714.8626%27 height=%2716%27 viewBox=%270 0 14.8626 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 0H3.28665V4.35577H7.03576V0H10.306V11.407H7.03576V6.90834H3.28665V11.407H0V0Z%27 fill=%27%23000%27/%3E%3Cpath d=%27M11.0991 12.236H14.8633V16.0001H11.0991V12.236Z%27 fill=%27%23000%27/%3E%3C/svg%3E\");\n -webkit-mask-size: contain;\n mask-size: contain;\n -webkit-mask-repeat: no-repeat;\n mask-repeat: no-repeat;\n}\n.ht-dialog.ht-license-lock .ht-dialog__content-wrapper {\n padding-block-start: calc(var(--ht-line-height, 20px) + var(--ht-density-cell-vertical, 4px) * 2);\n}\n.ht-dialog.ht-license-lock .ht-dialog__content-wrapper-inner,\n.ht-dialog.ht-license-lock .ht-dialog__content {\n min-inline-size: 0;\n}\n.ht-dialog.ht-license-lock a.ht-button {\n display: inline-block;\n text-decoration: none;\n}\n.ht-dialog.ht-license-lock .ht-dialog__title,\n.ht-dialog.ht-license-lock .ht-dialog__description {\n word-break: break-word;\n overflow-wrap: break-word;\n}\n\n.handsontable .htAutocompleteArrow {\n position: relative;\n cursor: default;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n font-size: 0;\n float: right;\n top: calc((var(--ht-line-height) - var(--ht-icon-size)) / 2);\n margin-inline-start: calc(var(--ht-gap-size) * 2);\n margin-inline-end: 1px;\n}\n.handsontable .htAutocompleteArrow::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n opacity: 0.6;\n}\n\n[dir=rtl].handsontable .htAutocompleteArrow {\n float: left;\n}\n\n.handsontable .htCheckboxRendererInput {\n position: relative;\n display: inline-block;\n width: var(--ht-checkbox-size);\n height: var(--ht-checkbox-size);\n margin: 0;\n vertical-align: middle;\n cursor: pointer;\n margin-top: -2px;\n outline: none;\n}\n.handsontable .htCheckboxRendererInput:first-child {\n margin-inline-end: var(--ht-gap-size);\n}\n.handsontable .htCheckboxRendererInput:last-child {\n margin-inline-start: var(--ht-gap-size);\n}\n.handsontable .htCheckboxRendererInput::before {\n content: \"\";\n display: inline-block;\n position: absolute;\n top: 0;\n left: 0;\n width: var(--ht-checkbox-size);\n height: var(--ht-checkbox-size);\n border-radius: var(--ht-checkbox-border-radius);\n border: 1px solid var(--ht-checkbox-border-color);\n background-color: var(--ht-checkbox-background-color);\n box-sizing: border-box;\n pointer-events: none;\n transition: all var(--ht-table-transition) ease-in-out;\n}\n.handsontable .htCheckboxRendererInput::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n color: var(--ht-checkbox-icon-color);\n pointer-events: none;\n width: var(--ht-checkbox-size) !important;\n height: var(--ht-checkbox-size) !important;\n}\n.handsontable .htCheckboxRendererInput:checked::before {\n border-color: var(--ht-checkbox-checked-border-color);\n background-color: var(--ht-checkbox-checked-background-color);\n}\n.handsontable .htCheckboxRendererInput:checked::after {\n color: var(--ht-checkbox-checked-icon-color);\n}\n.handsontable .htCheckboxRendererInput:checked:disabled::before {\n border-color: var(--ht-checkbox-checked-disabled-border-color);\n background-color: var(--ht-checkbox-checked-disabled-background-color);\n}\n.handsontable .htCheckboxRendererInput:checked:disabled::after {\n color: var(--ht-checkbox-checked-disabled-icon-color);\n}\n.handsontable .htCheckboxRendererInput:checked:focus::before {\n border-color: var(--ht-checkbox-checked-focus-border-color);\n background-color: var(--ht-checkbox-checked-focus-background-color);\n}\n.handsontable .htCheckboxRendererInput:checked:focus::after {\n color: var(--ht-checkbox-checked-focus-icon-color);\n}\n.handsontable .htCheckboxRendererInput:focus::before {\n border-color: var(--ht-checkbox-focus-border-color);\n background-color: var(--ht-checkbox-focus-background-color);\n outline: 1px solid var(--ht-checkbox-focus-ring-color);\n}\n.handsontable .htCheckboxRendererInput:focus::after {\n color: var(--ht-checkbox-focus-icon-color);\n}\n.handsontable .htCheckboxRendererInput:disabled {\n cursor: initial;\n}\n.handsontable .htCheckboxRendererInput:disabled::before {\n border-color: var(--ht-checkbox-disabled-border-color);\n background-color: var(--ht-checkbox-disabled-background-color);\n}\n.handsontable .htCheckboxRendererInput:disabled::after {\n color: var(--ht-checkbox-disabled-icon-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate::before {\n border-color: var(--ht-checkbox-indeterminate-border-color);\n background-color: var(--ht-checkbox-indeterminate-background-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate::after {\n color: var(--ht-checkbox-indeterminate-icon-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate:disabled::before {\n border-color: var(--ht-checkbox-indeterminate-disabled-border-color);\n background-color: var(--ht-checkbox-indeterminate-disabled-background-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate:disabled::after {\n color: var(--ht-checkbox-indeterminate-disabled-icon-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate:focus::before {\n border-color: var(--ht-checkbox-indeterminate-focus-border-color);\n background-color: var(--ht-checkbox-indeterminate-focus-background-color);\n}\n.handsontable .htCheckboxRendererInput:indeterminate:focus::after {\n color: var(--ht-checkbox-indeterminate-focus-icon-color);\n}\n.handsontable .htCheckboxRendererInput.noValue {\n opacity: 0.5;\n}\n.handsontable .htCheckboxRendererLabel {\n display: inline-block;\n position: relative;\n font-size: inherit;\n line-height: inherit;\n cursor: pointer;\n color: inherit;\n margin: 0;\n}\n.handsontable .htCheckboxRendererLabel.fullWidth {\n width: 100%;\n}\n\n.handsontable .htPlaceholder {\n color: var(--ht-placeholder-color);\n}\n.handsontable .htDimmed {\n color: var(--ht-read-only-color) !important;\n background-color: var(--ht-cell-read-only-background-color) !important;\n}\n.handsontable .htLeft {\n text-align: left;\n}\n.handsontable .htCenter {\n text-align: center;\n}\n.handsontable .htRight {\n text-align: right;\n}\n.handsontable .htJustify {\n text-align: justify;\n}\n.handsontable .htTop {\n vertical-align: top;\n}\n.handsontable .htMiddle {\n vertical-align: middle;\n}\n.handsontable .htBottom {\n vertical-align: bottom;\n}\n.handsontable .htInvalid {\n /* gives priority over td.area selection background */\n background-color: var(--ht-cell-error-background-color) !important;\n}\n.handsontable .htNoWrap {\n white-space: nowrap;\n}\n.handsontable .htSearchResult {\n background-color: var(--ht-cell-success-background-color) !important;\n}\n\n.handsontable .ht-multi-select-renderer {\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n overflow: hidden;\n}\n.handsontable .ht-multi-select-chips-container {\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n gap: var(--ht-gap-size);\n overflow: hidden;\n max-width: 100%;\n}\n.handsontable .ht-multi-select-chip {\n display: inline-flex;\n align-items: center;\n gap: var(--ht-gap-size);\n padding: var(--ht-chip-vertical-padding) calc((var(--ht-line-height) - var(--ht-icon-size)) / 2) var(--ht-chip-vertical-padding) var(--ht-chip-horizontal-padding);\n border-radius: var(--ht-chip-border-radius);\n background: var(--ht-chip-background);\n white-space: nowrap;\n flex-shrink: 0;\n max-width: 100px;\n box-sizing: border-box;\n}\n.handsontable .ht-multi-select-chip-label {\n overflow: hidden;\n text-overflow: ellipsis;\n color: var(--ht-foreground-color);\n font-style: normal;\n font-weight: var(--ht-font-weight);\n line-height: var(--ht-line-height, 40px);\n letter-spacing: var(--ht-letter-spacing, 0);\n padding: 0 var(--ht-chip-gap);\n}\n.handsontable .ht-multi-select-chip-remove {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n width: var(--ht-icon-size) !important;\n height: var(--ht-icon-size) !important;\n padding: 0;\n cursor: pointer;\n flex-shrink: 0;\n color: var(--ht-icon-button-icon-color);\n background-size: contain;\n background-repeat: no-repeat;\n background-position: center;\n}\n.handsontable .ht-multi-select-chip-remove::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n}\n.handsontable .ht-multi-select-chip-remove:hover {\n background-color: var(--ht-icon-button-hover-background-color);\n}\n.handsontable .ht-multi-select-overflow {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n padding: var(--ht-chip-vertical-padding) var(--ht-chip-horizontal-padding);\n background: var(--ht-chip-background);\n border-radius: var(--ht-chip-border-radius);\n color: var(--ht-foreground-color);\n white-space: nowrap;\n flex-shrink: 0;\n}\n\n.handsontableInputHolder {\n position: absolute;\n top: 0;\n left: 0;\n}\n.handsontableInputHolder .handsontableInput {\n display: block;\n margin: 0;\n padding: calc(var(--ht-cell-vertical-padding, 4px) + 1px) calc(var(--ht-cell-horizontal-padding, 8px) + 1px);\n font-family: inherit !important;\n font-size: inherit !important;\n line-height: inherit !important;\n color: var(--ht-cell-editor-foreground-color);\n background-color: var(--ht-cell-editor-background-color, #ffffff);\n box-shadow: inset 0 0 0 var(--ht-cell-editor-border-width, 2px) var(--ht-cell-editor-border-color, #1a42e8), 0 0 var(--ht-cell-editor-shadow-blur-radius, 0) 0 var(--ht-cell-editor-shadow-color, transparent);\n border: none;\n border-radius: 0;\n -webkit-appearance: none !important;\n box-sizing: border-box;\n /* Miscellaneous */\n outline-width: 0;\n /* overwrite styles potentially made by a framework */\n}\n.handsontableInputHolder .handsontableInput:focus {\n outline: none;\n}\n\n.htSelectEditor {\n position: absolute;\n}\n.htSelectEditor select {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n padding: calc(var(--ht-cell-vertical-padding, 4px) + 1px) calc(var(--ht-cell-horizontal-padding, 8px) + 1px);\n padding-inline-end: 26px;\n margin: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n color: var(--ht-cell-editor-foreground-color);\n background-color: var(--ht-cell-editor-background-color, #ffffff);\n font-family: inherit !important;\n font-size: inherit !important;\n line-height: inherit !important;\n box-shadow: inset 0 0 0 var(--ht-cell-editor-border-width, 2px) var(--ht-cell-editor-border-color, #1a42e8), 0 0 var(--ht-cell-editor-shadow-blur-radius, 0) 0 var(--ht-cell-editor-shadow-color, transparent);\n border: none;\n border-radius: 0;\n box-sizing: border-box;\n -webkit-appearance: none !important;\n}\n.htSelectEditor select:focus {\n outline: none;\n}\n.htSelectEditor .htAutocompleteArrow {\n top: 50%;\n transform: translateY(-50%);\n margin-inline-end: 4px;\n z-index: 1;\n pointer-events: none;\n}\n\n.handsontable.listbox {\n box-shadow: var(--ht-menu-shadow-x, 0) var(--ht-menu-shadow-y, 0) var(--ht-menu-shadow-blur, 8px) color-mix(in srgb, var(--ht-menu-shadow-color, rgb(0, 0, 0)) var(--ht-menu-shadow-opacity, 100%), transparent);\n margin: 0;\n border: var(--ht-menu-border-width, 1px) solid var(--ht-menu-border-color, #e5e5e9);\n}\n.handsontable.listbox .ht_master {\n overflow: hidden;\n background-color: var(--ht-background-color);\n}\n.handsontable.listbox .wtHolder {\n overflow: auto;\n border-radius: 0 !important;\n}\n.handsontable.listbox .wtHider, .handsontable.listbox .htCore {\n border-radius: 0 !important;\n}\n.handsontable.listbox table {\n overflow: hidden;\n}\n.handsontable.listbox table th,\n.handsontable.listbox table tr:first-child th,\n.handsontable.listbox table tr:last-child th,\n.handsontable.listbox table tr:first-child td,\n.handsontable.listbox table td {\n border-color: transparent !important;\n}\n.handsontable.listbox table th,\n.handsontable.listbox table td {\n white-space: nowrap;\n text-overflow: ellipsis;\n border-radius: 0 !important;\n}\n.handsontable.listbox table .wtBorder {\n visibility: hidden;\n}\n.handsontable.listbox table strong {\n font-weight: bold;\n color: inherit;\n}\n.handsontable.listbox table tr td:hover td {\n background: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent) !important;\n cursor: pointer;\n box-shadow: none !important;\n}\n.handsontable.listbox table td {\n transition: var(--ht-table-transition) background ease-in-out;\n}\n.handsontable.listbox table td:hover {\n background-color: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent) !important;\n cursor: pointer;\n}\n.handsontable.listbox table td.current:not([aria-expanded=true]) {\n box-shadow: inset 0 0 0 1px var(--ht-accent-color);\n}\n.handsontable.listbox table td.htDimmed {\n cursor: default;\n font-style: inherit;\n color: inherit !important;\n}\n.handsontable.listbox table td.htDimmed:not(.handsontable.listbox table td:hover) {\n background-color: inherit !important;\n}\n.handsontable.listbox table thead th {\n height: auto !important;\n text-align: left;\n}\n.handsontable.listbox table thead th .relative {\n padding-top: calc(var(--ht-cell-vertical-padding) + var(--ht-gap-size));\n padding-bottom: calc(var(--ht-cell-vertical-padding) + var(--ht-gap-size));\n}\n.handsontable.listbox .ht_clone_top .wtHider {\n overflow: hidden;\n}\n.handsontable.listbox .ht_clone_top table {\n border-radius: 0;\n}\n.handsontable.listbox .htBorders div {\n background: none !important;\n}\n.handsontable.autocompleteEditor tr.ht__row_even th,\n.handsontable.autocompleteEditor tr.ht__row_even td {\n background-color: var(--ht-background-color, #ffffff);\n}\n.handsontable.autocompleteEditor tr.ht__row_odd th,\n.handsontable.autocompleteEditor tr.ht__row_odd td {\n background-color: var(--ht-background-color, #ffffff);\n}\n\n[dir=rtl].handsontable.listbox table thead th {\n text-align: right;\n}\n\n.handsontableEditor {\n position: absolute;\n}\n.handsontableEditor .ht-multi-select-editor {\n box-shadow: var(--ht-menu-shadow-x, 0) var(--ht-menu-shadow-y, 0) var(--ht-menu-shadow-blur, 8px) color-mix(in srgb, var(--ht-menu-shadow-color, rgb(0, 0, 0)) var(--ht-menu-shadow-opacity, 100%), transparent);\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n overflow-y: auto;\n border-radius: 0 0 var(--ht-menu-border-radius) var(--ht-menu-border-radius);\n border: var(--ht-menu-border-width) solid var(--ht-menu-border-color);\n background: var(--ht-background-color);\n width: max-content;\n min-width: 120px;\n padding: var(--ht-menu-vertical-padding) var(--ht-menu-horizontal-padding);\n}\n.handsontableEditor .ht-multi-select-editor .ht-multi-select-editor-search-input-wrapper {\n display: flex;\n padding: var(--ht-menu-item-vertical-padding) var(--ht-menu-item-horizontal-padding);\n align-items: center;\n gap: var(--ht-gap-size);\n align-self: stretch;\n position: relative;\n}\n.handsontableEditor .ht-multi-select-editor .ht-multi-select-editor-search-icon {\n position: absolute;\n left: calc(var(--ht-menu-item-horizontal-padding) + 10px);\n top: 50%;\n transform: translateY(-50%);\n width: 16px;\n height: 16px;\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n opacity: 0.5;\n pointer-events: none;\n z-index: 1;\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input {\n box-sizing: border-box;\n width: 100%;\n border-radius: var(--ht-input-border-radius);\n color: var(--ht-input-foreground-color);\n background-color: var(--ht-input-background-color);\n border: 1px solid var(--ht-input-border-color);\n transition: var(--ht-table-transition) all ease-in-out;\n line-height: var(--ht-line-height);\n font-size: var(--ht-font-size);\n padding: var(--ht-input-vertical-padding) var(--ht-menu-item-horizontal-padding) var(--ht-input-vertical-padding) 32px;\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input:hover {\n border-color: var(--ht-input-hover-border-color);\n color: var(--ht-input-hover-foreground-color);\n background-color: var(--ht-input-hover-background-color);\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input:disabled {\n border-color: var(--ht-input-disabled-border-color);\n color: var(--ht-input-disabled-foreground-color);\n background-color: var(--ht-input-disabled-background-color);\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input:focus {\n border-color: var(--ht-input-focus-border-color);\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n outline: none;\n outline-offset: 0;\n box-shadow: none;\n}\n.handsontableEditor .ht-multi-select-editor input.ht-multi-select-editor-search-input::placeholder {\n color: var(--ht-foreground-color);\n opacity: 0.6;\n}\n.handsontableEditor .ht-multi-select-editor .ht-multi-select-editor-separator {\n width: 100%;\n height: 1px;\n background-color: var(--ht-menu-border-color);\n margin: var(--ht-menu-vertical-padding) 0 var(--ht-menu-vertical-padding) 0;\n padding: 0;\n}\n.handsontableEditor .ht-multi-select-editor ul {\n list-style: none;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n width: 100%;\n margin: 0;\n padding: var(--ht-gap-size) var(--ht-menu-horizontal-padding);\n}\n.handsontableEditor .ht-multi-select-editor ul li {\n display: flex;\n align-items: center;\n align-self: stretch;\n background: var(--ht-background-color);\n padding: var(--ht-menu-item-vertical-padding) var(--ht-menu-item-horizontal-padding);\n user-select: none;\n cursor: pointer;\n}\n.handsontableEditor .ht-multi-select-editor ul li * {\n cursor: pointer;\n}\n.handsontableEditor .ht-multi-select-editor ul li.ht-multi-select-editor-item-selected {\n background: color-mix(in srgb, var(--ht-menu-item-active-color) var(--ht-menu-item-active-color-opacity, 100%), transparent);\n}\n.handsontableEditor .ht-multi-select-editor ul li div {\n display: flex;\n align-items: center;\n flex: 1 0 0;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input {\n position: relative;\n appearance: none;\n margin: 0;\n padding: 0;\n width: var(--ht-checkbox-size);\n height: var(--ht-checkbox-size);\n display: flex;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n box-sizing: border-box;\n width: var(--ht-checkbox-size);\n height: var(--ht-checkbox-size);\n border-radius: var(--ht-checkbox-border-radius);\n border: 1px solid var(--ht-checkbox-border-color);\n background: var(--ht-checkbox-background-color);\n background-repeat: no-repeat;\n background-position: center;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input:checked::before {\n border-color: var(--ht-checkbox-checked-border-color);\n background: var(--ht-checkbox-checked-background-color);\n}\n.handsontableEditor .ht-multi-select-editor ul li div input:checked::after {\n color: var(--ht-checkbox-checked-icon-color);\n background-color: currentColor;\n}\n.handsontableEditor .ht-multi-select-editor ul li div input:focus {\n outline: none;\n}\n.handsontableEditor .ht-multi-select-editor ul li div label {\n overflow: hidden;\n color: var(--ht-foreground-color);\n text-overflow: ellipsis;\n font-size: var(--ht-font-size);\n font-style: normal;\n font-weight: 400;\n line-height: var(--ht-line-height);\n letter-spacing: var(--ht-letter-spacing);\n width: 100%;\n padding: 0 0 0 calc(var(--ht-gap-size) * 2);\n}\n.handsontableEditor .ht-multi-select-editor ul li:hover {\n background: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent);\n}\n.handsontableEditor .ht-multi-select-editor ul li:has(input:focus) {\n background: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent);\n}\n\n.handsontable .htUISelectCaption {\n width: 100%;\n padding: var(--ht-input-vertical-padding) var(--ht-input-horizontal-padding);\n padding-inline-end: calc(var(--ht-input-horizontal-padding) + var(--ht-icon-size));\n margin: 0;\n font-family: inherit;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n border-radius: var(--ht-input-border-radius);\n box-sizing: border-box;\n cursor: pointer;\n outline: none !important;\n border: var(--ht-input-border-width) solid var(--ht-input-border-color);\n color: var(--ht-input-foreground-color);\n background-color: var(--ht-input-background-color);\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n transition: var(--ht-table-transition) all ease-in-out;\n}\n.handsontable .htUISelectCaption::after {\n content: \"\";\n display: block;\n position: absolute;\n right: calc(var(--ht-input-horizontal-padding) - var(--ht-icon-size) / 4);\n top: 50%;\n transform: translateY(-50%);\n}\n.handsontable .htUISelectCaption:hover {\n border-color: var(--ht-input-hover-border-color);\n color: var(--ht-input-hover-foreground-color);\n background-color: var(--ht-input-hover-background-color);\n}\n.handsontable .htUISelectCaption:disabled {\n border-color: var(--ht-input-disabled-border-color);\n color: var(--ht-input-disabled-foreground-color);\n background-color: var(--ht-input-disabled-background-color);\n}\n.handsontable .htUISelectCaption:focus {\n border-color: var(--ht-input-focus-border-color);\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n}\n.handsontable .htUISelect {\n cursor: pointer;\n position: relative;\n outline: none !important;\n}\n.handsontable .htUISelect:focus .htUISelectCaption {\n border-color: var(--ht-input-focus-border-color);\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n}\n\n[dir=rtl].handsontable .htUISelectCaption::after {\n right: auto;\n left: calc(var(--ht-input-horizontal-padding) - var(--ht-icon-size) / 4);\n}\n\n.handsontable .htFiltersMenuCondition .htUIInput input,\n.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input {\n width: 100%;\n padding: var(--ht-input-vertical-padding) var(--ht-input-horizontal-padding);\n font-family: inherit;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n border-radius: var(--ht-input-border-radius);\n box-sizing: border-box;\n cursor: pointer;\n outline: none !important;\n border: var(--ht-input-border-width) solid var(--ht-input-border-color);\n color: var(--ht-input-foreground-color);\n background-color: var(--ht-input-background-color);\n transition: var(--ht-table-transition) all ease-in-out;\n}\n.handsontable .htFiltersMenuCondition .htUIInput input:hover,\n.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input:hover {\n border-color: var(--ht-input-hover-border-color);\n color: var(--ht-input-hover-foreground-color);\n background-color: var(--ht-input-hover-background-color);\n}\n.handsontable .htFiltersMenuCondition .htUIInput input:disabled,\n.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input:disabled {\n border-color: var(--ht-input-disabled-border-color);\n color: var(--ht-input-disabled-foreground-color);\n background-color: var(--ht-input-disabled-background-color);\n}\n.handsontable .htFiltersMenuCondition .htUIInput input:focus,\n.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input:focus {\n border-color: var(--ht-input-focus-border-color);\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n}\n.handsontable .htUIInput {\n position: relative;\n padding: 0;\n outline: none !important;\n text-align: center;\n}\n.handsontable .htUIInputIcon {\n position: absolute;\n}\n\n.handsontable .htUIInput.htUIButton input, .handsontable .ht-button {\n min-width: 64px;\n padding: var(--ht-button-vertical-padding) var(--ht-button-horizontal-padding);\n font-family: inherit;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n border-radius: var(--ht-button-border-radius);\n border-width: 1px;\n border-style: solid;\n box-sizing: border-box;\n outline: none !important;\n cursor: pointer;\n transition: var(--ht-table-transition) all ease-in-out;\n}\n.handsontable .htUIInput.htUIButtonCancel input, .handsontable .ht-button--secondary {\n border-color: var(--ht-secondary-button-border-color);\n background-color: var(--ht-secondary-button-background-color);\n color: var(--ht-secondary-button-foreground-color);\n}\n.handsontable .htUIInput.htUIButtonCancel input:hover, .handsontable .ht-button--secondary:hover {\n border-color: var(--ht-secondary-button-hover-border-color);\n background-color: var(--ht-secondary-button-hover-background-color);\n color: var(--ht-secondary-button-hover-foreground-color);\n}\n.handsontable .htUIInput.htUIButtonCancel input:disabled, .handsontable .ht-button--secondary:disabled {\n border-color: var(--ht-secondary-button-disabled-border-color);\n background-color: var(--ht-secondary-button-disabled-background-color);\n color: var(--ht-secondary-button-disabled-foreground-color);\n}\n.handsontable .htUIInput.htUIButtonCancel input:focus, .handsontable .ht-button--secondary:focus {\n border-color: var(--ht-secondary-button-focus-border-color);\n background-color: var(--ht-secondary-button-focus-background-color);\n color: var(--ht-secondary-button-focus-foreground-color);\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n\n.htUIInput.htUIButtonOK input, .ht-button--primary {\n border-color: var(--ht-primary-button-border-color);\n background-color: var(--ht-primary-button-background-color);\n color: var(--ht-primary-button-foreground-color);\n}\n.htUIInput.htUIButtonOK input:hover, .ht-button--primary:hover {\n border-color: var(--ht-primary-button-hover-border-color);\n background-color: var(--ht-primary-button-hover-background-color);\n color: var(--ht-primary-button-hover-foreground-color);\n}\n.htUIInput.htUIButtonOK input:disabled, .ht-button--primary:disabled {\n border-color: var(--ht-primary-button-disabled-border-color);\n background-color: var(--ht-primary-button-disabled-background-color);\n color: var(--ht-primary-button-disabled-foreground-color);\n}\n.htUIInput.htUIButtonOK input:focus, .ht-button--primary:focus {\n border-color: var(--ht-primary-button-focus-border-color);\n background-color: var(--ht-primary-button-focus-background-color);\n color: var(--ht-primary-button-focus-foreground-color);\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n\n.handsontable .htUIRadio {\n position: relative;\n display: inline-flex;\n margin: 0;\n padding: var(--ht-gap-size) calc(2 * var(--ht-gap-size));\n padding-bottom: 0;\n align-items: center;\n gap: var(--ht-gap-size);\n cursor: pointer;\n}\n.handsontable .htUIRadio:first-child {\n padding-inline-start: 0;\n}\n.handsontable .htUIRadio > input[type=radio] {\n position: relative;\n width: var(--ht-radio-size);\n height: var(--ht-radio-size);\n margin: 0;\n appearance: none;\n cursor: pointer;\n border-radius: calc(0.5 * var(--ht-radio-size));\n outline: none;\n}\n.handsontable .htUIRadio > input[type=radio]::before {\n content: \"\";\n display: block;\n position: absolute;\n inset: 0;\n border-radius: calc(0.5 * var(--ht-radio-size));\n border: 1px solid var(--ht-radio-border-color);\n background-color: var(--ht-radio-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]::after {\n content: \"\";\n display: block;\n position: absolute;\n color: var(--ht-radio-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked::before {\n border-color: var(--ht-radio-checked-border-color);\n background-color: var(--ht-radio-checked-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked::after {\n color: var(--ht-radio-checked-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked:disabled {\n cursor: initial;\n}\n.handsontable .htUIRadio > input[type=radio]:checked:disabled::before {\n border-color: var(--ht-radio-checked-disabled-border-color);\n background-color: var(--ht-radio-checked-disabled-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked:disabled::after {\n color: var(--ht-radio-checked-disabled-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked:focus::before {\n border-color: var(--ht-radio-checked-focus-border-color);\n background-color: var(--ht-radio-checked-focus-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]:checked:focus::after {\n color: var(--ht-radio-checked-focus-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:disabled {\n cursor: initial;\n}\n.handsontable .htUIRadio > input[type=radio]:disabled::before {\n border-color: var(--ht-radio-disabled-border-color);\n background-color: var(--ht-radio-disabled-background-color);\n}\n.handsontable .htUIRadio > input[type=radio]:disabled::after {\n color: var(--ht-radio-disabled-icon-color);\n}\n.handsontable .htUIRadio > input[type=radio]:focus::before {\n border-color: var(--ht-radio-focus-border-color);\n background-color: var(--ht-radio-focus-background-color);\n outline: 1px solid var(--ht-radio-focus-ring-color);\n}\n.handsontable .htUIRadio > input[type=radio]:focus::after {\n color: var(--ht-radio-focus-icon-color);\n}\n.handsontable .htUIRadio label {\n vertical-align: middle;\n cursor: pointer;\n color: inherit;\n}\n.handsontable .htUIRadio label::before {\n content: \"\";\n display: block;\n position: absolute;\n inset: 0;\n}\n\n.handsontable .collapsibleIndicator,\n.handsontable .ht_nestingButton {\n position: relative;\n width: var(--ht-icon-button-hit-area-size);\n height: var(--ht-icon-button-hit-area-size);\n margin: calc(-1 * (var(--ht-icon-button-hit-area-size) - var(--ht-icon-size)) / 2 + 1px);\n box-sizing: border-box;\n overflow: visible;\n cursor: pointer;\n /* hide text */\n text-indent: -100px;\n font-size: 0;\n flex-shrink: 0;\n /* Icon: mask + currentColor from ht-icons-main.css; keep ::before for icon only */\n}\n.handsontable .collapsibleIndicator::before,\n.handsontable .ht_nestingButton::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-left: calc(-0.5 * var(--ht-icon-size));\n border-radius: var(--ht-collapse-button-border-radius);\n transition: var(--ht-table-transition) all ease-in-out;\n z-index: 1;\n}\n.handsontable .collapsibleIndicator,\n.handsontable .ht_nestingButton {\n /* Button background and border (behind icon so mask stays visible) */\n}\n.handsontable .collapsibleIndicator::after,\n.handsontable .ht_nestingButton::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-left: calc(-0.5 * var(--ht-icon-size));\n border-radius: var(--ht-collapse-button-border-radius);\n transition: var(--ht-table-transition) all ease-in-out;\n z-index: 0;\n}\n.handsontable .collapsibleIndicator.expanded::before, .handsontable .collapsibleIndicator.ht_nestingCollapse::before,\n.handsontable .ht_nestingButton.expanded::before,\n.handsontable .ht_nestingButton.ht_nestingCollapse::before {\n color: var(--ht-collapse-button-open-icon-color);\n}\n.handsontable .collapsibleIndicator.expanded::after, .handsontable .collapsibleIndicator.ht_nestingCollapse::after,\n.handsontable .ht_nestingButton.expanded::after,\n.handsontable .ht_nestingButton.ht_nestingCollapse::after {\n background-color: var(--ht-collapse-button-open-background-color);\n box-shadow: 0 0 0 1px var(--ht-collapse-button-open-border-color);\n}\n.handsontable .collapsibleIndicator.expanded:hover::before, .handsontable .collapsibleIndicator.ht_nestingCollapse:hover::before,\n.handsontable .ht_nestingButton.expanded:hover::before,\n.handsontable .ht_nestingButton.ht_nestingCollapse:hover::before {\n color: var(--ht-collapse-button-open-hover-icon-color);\n}\n.handsontable .collapsibleIndicator.expanded:hover::after, .handsontable .collapsibleIndicator.ht_nestingCollapse:hover::after,\n.handsontable .ht_nestingButton.expanded:hover::after,\n.handsontable .ht_nestingButton.ht_nestingCollapse:hover::after {\n background-color: var(--ht-collapse-button-open-hover-background-color);\n box-shadow: 0 0 0 1px var(--ht-collapse-button-open-hover-border-color);\n}\n.handsontable .collapsibleIndicator.collapsed::before, .handsontable .collapsibleIndicator.ht_nestingExpand::before,\n.handsontable .ht_nestingButton.collapsed::before,\n.handsontable .ht_nestingButton.ht_nestingExpand::before {\n color: var(--ht-collapse-button-close-icon-color);\n}\n.handsontable .collapsibleIndicator.collapsed::after, .handsontable .collapsibleIndicator.ht_nestingExpand::after,\n.handsontable .ht_nestingButton.collapsed::after,\n.handsontable .ht_nestingButton.ht_nestingExpand::after {\n background-color: var(--ht-collapse-button-close-background-color);\n box-shadow: 0 0 0 1px var(--ht-collapse-button-close-border-color);\n}\n.handsontable .collapsibleIndicator.collapsed:hover::before, .handsontable .collapsibleIndicator.ht_nestingExpand:hover::before,\n.handsontable .ht_nestingButton.collapsed:hover::before,\n.handsontable .ht_nestingButton.ht_nestingExpand:hover::before {\n color: var(--ht-collapse-button-close-hover-icon-color);\n}\n.handsontable .collapsibleIndicator.collapsed:hover::after, .handsontable .collapsibleIndicator.ht_nestingExpand:hover::after,\n.handsontable .ht_nestingButton.collapsed:hover::after,\n.handsontable .ht_nestingButton.ht_nestingExpand:hover::after {\n background-color: var(--ht-collapse-button-close-hover-background-color);\n box-shadow: 0 0 0 1px var(--ht-collapse-button-close-hover-border-color);\n}\n.handsontable th.ht__active_highlight .collapsibleIndicator.collapsed::before, .handsontable th.ht__active_highlight .collapsibleIndicator.ht_nestingExpand::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.collapsed::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.ht_nestingExpand::before {\n color: var(--ht-collapse-button-close-icon-active-color);\n}\n.handsontable th.ht__active_highlight .collapsibleIndicator.collapsed:hover::before, .handsontable th.ht__active_highlight .collapsibleIndicator.ht_nestingExpand:hover::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.collapsed:hover::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.ht_nestingExpand:hover::before {\n color: var(--ht-collapse-button-close-hover-icon-active-color);\n}\n.handsontable th.ht__active_highlight .collapsibleIndicator.expanded::before, .handsontable th.ht__active_highlight .collapsibleIndicator.ht_nestingCollapse::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.expanded::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.ht_nestingCollapse::before {\n color: var(--ht-collapse-button-open-icon-active-color);\n}\n.handsontable th.ht__active_highlight .collapsibleIndicator.expanded:hover::before, .handsontable th.ht__active_highlight .collapsibleIndicator.ht_nestingCollapse:hover::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.expanded:hover::before,\n.handsontable th.ht__active_highlight .ht_nestingButton.ht_nestingCollapse:hover::before {\n color: var(--ht-collapse-button-open-hover-icon-active-color);\n}\n\n.handsontable thead th.htRowspanHeader + th {\n border-inline-start-width: 0;\n}\n.handsontable thead th.htRowspanHeader {\n height: auto;\n vertical-align: bottom;\n overflow: visible;\n}\n.handsontable thead th.htRowspanHeader.ht__active_highlight {\n border-inline-start-color: var(--ht-header-active-border-color);\n z-index: 1;\n}\n.handsontable.htRowHeaders.htHasRowspanHeaders :where(table.htCore) > thead > tr:last-child > th:first-child {\n border-end-start-radius: 0;\n}\n.handsontable.htHasRowspanHeaders .ht_clone_inline_start .htCore > tbody > tr:first-child > th:first-child {\n border-start-start-radius: 0;\n}\n.handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead th.htRowspanBottomLevel, .handsontable .ht_master:not(.innerBorderTop):not(.innerBorderBottom) ~ .handsontable thead th.htRowspanBottomLevel {\n border-bottom-width: 0;\n}\n.handsontable thead th.hiddenHeader:not(:first-of-type) {\n display: none;\n}\n.handsontable thead th.hiddenHeaderText .colHeader {\n opacity: 0;\n}\n\n.handsontable th.ht_nestingLevels > .relative {\n display: flex;\n align-items: center;\n gap: 5px;\n}\n.handsontable th.ht_nestingLevels span:last-child {\n padding-left: calc(var(--ht-icon-size) + 5px);\n}\n.handsontable th.ht_nestingLevels span.ht_nestingLevel {\n display: inline-block;\n}\n.handsontable th.ht_nestingLevels span.ht_nestingLevel_empty {\n position: relative;\n display: inline-block;\n width: 5px;\n height: 1px;\n order: -2;\n}\n.handsontable th.ht_nestingLevels .ht_nestingButton {\n position: relative;\n cursor: pointer;\n order: -1;\n}\n\n.handsontable th.beforeHiddenColumn, .handsontable th.afterHiddenColumn {\n position: relative;\n}\n.handsontable th.beforeHiddenColumn::before, .handsontable th.beforeHiddenColumn::after, .handsontable th.afterHiddenColumn::before, .handsontable th.afterHiddenColumn::after {\n position: absolute;\n top: 50%;\n width: 10px !important;\n height: 10px !important;\n transform: translateY(-50%);\n color: var(--ht-hidden-indicator-color);\n}\n.handsontable th.beforeHiddenColumn::after {\n content: \"\";\n display: block;\n right: -2px;\n}\n.handsontable th.afterHiddenColumn::before {\n content: \"\";\n display: block;\n left: -2px;\n}\n.handsontable th.ht__active_highlight.beforeHiddenColumn::before, .handsontable th.ht__active_highlight.beforeHiddenColumn::after, .handsontable th.ht__active_highlight.afterHiddenColumn::before, .handsontable th.ht__active_highlight.afterHiddenColumn::after {\n color: var(--ht-icon-button-active-icon-color, var(--ht-icon-active-button-icon-color));\n}\n\n[dir=rtl].handsontable th.beforeHiddenColumn::after {\n right: initial;\n left: -2px;\n transform: translateY(-50%) rotate(180deg);\n}\n[dir=rtl].handsontable th.afterHiddenColumn::before {\n right: -2px;\n left: initial;\n transform: translateY(-50%) rotate(180deg);\n}\n\n.handsontable th.beforeHiddenRow, .handsontable th.afterHiddenRow {\n position: relative;\n}\n.handsontable th.beforeHiddenRow::before, .handsontable th.beforeHiddenRow::after, .handsontable th.afterHiddenRow::before, .handsontable th.afterHiddenRow::after {\n position: absolute;\n left: 50%;\n width: 10px !important;\n height: 10px !important;\n transform: translateX(-50%);\n color: var(--ht-hidden-indicator-color);\n}\n.handsontable th.beforeHiddenRow::after {\n content: \"\";\n display: block;\n bottom: -2px;\n}\n.handsontable th.afterHiddenRow::before {\n content: \"\";\n display: block;\n top: -2px;\n}\n.handsontable th.ht__active_highlight.beforeHiddenRow::before, .handsontable th.ht__active_highlight.beforeHiddenRow::after, .handsontable th.ht__active_highlight.afterHiddenRow::before, .handsontable th.ht__active_highlight.afterHiddenRow::after {\n color: var(--ht-icon-button-active-icon-color, var(--ht-icon-active-button-icon-color));\n}\n\n.handsontable .changeType {\n position: relative;\n box-sizing: border-box;\n width: var(--ht-icon-button-hit-area-size);\n height: var(--ht-icon-button-hit-area-size);\n margin: calc(-1 * (var(--ht-icon-button-hit-area-size) - var(--ht-icon-size)) / 2 + 1px);\n border: none;\n outline: none;\n box-shadow: none;\n background: none;\n background-color: transparent;\n color: inherit;\n padding: 0;\n z-index: 1;\n flex-shrink: 0;\n overflow: visible;\n /* Icon: mask + currentColor from ht-icons-main.css; keep ::before for icon only */\n}\n.handsontable .changeType::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-left: calc(-0.5 * var(--ht-icon-size));\n color: var(--ht-icon-button-icon-color);\n z-index: 1;\n}\n.handsontable .changeType {\n /* Button background and border (behind icon so mask stays visible) */\n}\n.handsontable .changeType::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-left: calc(-0.5 * var(--ht-icon-size));\n border-radius: var(--ht-icon-button-border-radius);\n box-shadow: 0 0 0 1px var(--ht-icon-button-border-color);\n background-color: var(--ht-icon-button-background-color);\n z-index: 0;\n}\n.handsontable .changeType:hover {\n cursor: pointer;\n}\n.handsontable .changeType:hover::before {\n color: var(--ht-icon-button-hover-icon-color);\n}\n.handsontable .changeType:hover::after {\n box-shadow: 0 0 0 1px var(--ht-icon-button-hover-border-color);\n background-color: var(--ht-icon-button-hover-background-color);\n}\n.handsontable .ht__active_highlight .changeType::before {\n color: var(--ht-icon-button-active-icon-color, var(--ht-icon-active-button-icon-color));\n}\n.handsontable .ht__active_highlight .changeType::after {\n box-shadow: 0 0 0 1px var(--ht-icon-button-active-border-color, var(--ht-icon-active-button-border-color));\n background-color: var(--ht-icon-button-active-background-color, var(--ht-icon-active-button-background-color));\n}\n.handsontable .ht__active_highlight .changeType:hover::before {\n color: var(--ht-icon-button-active-hover-icon-color, var(--ht-icon-active-button-hover-icon-color));\n}\n.handsontable .ht__active_highlight .changeType:hover::after {\n box-shadow: 0 0 0 1px var(--ht-icon-button-active-hover-border-color, var(--ht-icon-active-button-hover-border-color));\n background-color: var(--ht-icon-button-active-hover-background-color, var(--ht-icon-active-button-hover-background-color));\n}\n.handsontable th.htFiltersActive {\n background-color: var(--ht-header-filter-background-color);\n}\n.handsontable th.htFiltersActive.ht__active_highlight {\n background-color: color-mix(in srgb, var(--ht-header-active-background-color), var(--ht-header-filter-background-color) 20%);\n}\n.handsontable.htDropdownMenu > .ht_master, .handsontable.htContextMenu > .ht_master, .handsontable.htFiltersConditionsMenu > .ht_master {\n box-shadow: var(--ht-menu-shadow-x, 0) var(--ht-menu-shadow-y, 0) var(--ht-menu-shadow-blur, 8px) color-mix(in srgb, var(--ht-menu-shadow-color, rgb(0, 0, 0)) var(--ht-menu-shadow-opacity, 100%), transparent);\n border: var(--ht-menu-border-width, 1px) solid var(--ht-menu-border-color, #e5e5e9);\n border-radius: var(--ht-menu-border-radius);\n overflow: hidden;\n padding: var(--ht-menu-vertical-padding, 8px) var(--ht-menu-horizontal-padding, 0);\n background-color: var(--ht-background-color, #ffffff);\n}\n.handsontable.htDropdownMenu:not(.htGhostTable), .handsontable.htContextMenu:not(.htGhostTable), .handsontable.htFiltersConditionsMenu:not(.htGhostTable) {\n display: none;\n position: absolute;\n /* needs to be higher than 1050 - z-index for Twitter Bootstrap modal (#1569) */\n z-index: 1060;\n}\n.handsontable.htDropdownMenu .ht_clone_top,\n.handsontable.htDropdownMenu .ht_clone_bottom,\n.handsontable.htDropdownMenu .ht_clone_inline_start,\n.handsontable.htDropdownMenu .ht_clone_top_inline_start_corner,\n.handsontable.htDropdownMenu .ht_clone_bottom_inline_start_corner, .handsontable.htContextMenu .ht_clone_top,\n.handsontable.htContextMenu .ht_clone_bottom,\n.handsontable.htContextMenu .ht_clone_inline_start,\n.handsontable.htContextMenu .ht_clone_top_inline_start_corner,\n.handsontable.htContextMenu .ht_clone_bottom_inline_start_corner, .handsontable.htFiltersConditionsMenu .ht_clone_top,\n.handsontable.htFiltersConditionsMenu .ht_clone_bottom,\n.handsontable.htFiltersConditionsMenu .ht_clone_inline_start,\n.handsontable.htFiltersConditionsMenu .ht_clone_top_inline_start_corner,\n.handsontable.htFiltersConditionsMenu .ht_clone_bottom_inline_start_corner {\n display: none;\n}\n.handsontable.htDropdownMenu table.htCore, .handsontable.htContextMenu table.htCore, .handsontable.htFiltersConditionsMenu table.htCore {\n overflow: hidden;\n}\n.handsontable.htDropdownMenu .htCustomMenuRenderer .table.htCore, .handsontable.htContextMenu .htCustomMenuRenderer .table.htCore, .handsontable.htFiltersConditionsMenu .htCustomMenuRenderer .table.htCore {\n box-shadow: none;\n}\n.handsontable.htDropdownMenu.handsontable:focus, .handsontable.htContextMenu.handsontable:focus, .handsontable.htFiltersConditionsMenu.handsontable:focus {\n outline: none;\n}\n.handsontable.htDropdownMenu .wtBorder, .handsontable.htContextMenu .wtBorder, .handsontable.htFiltersConditionsMenu .wtBorder {\n visibility: hidden;\n}\n.handsontable.htDropdownMenu tbody tr:first-of-type td:first-child, .handsontable.htDropdownMenu tbody tr:first-of-type th:first-child, .handsontable.htContextMenu tbody tr:first-of-type td:first-child, .handsontable.htContextMenu tbody tr:first-of-type th:first-child, .handsontable.htFiltersConditionsMenu tbody tr:first-of-type td:first-child, .handsontable.htFiltersConditionsMenu tbody tr:first-of-type th:first-child {\n height: calc(var(--ht-cell-vertical-padding) * 2 + var(--ht-line-height) + 1px);\n}\n.handsontable.htDropdownMenu table tbody tr td, .handsontable.htContextMenu table tbody tr td, .handsontable.htFiltersConditionsMenu table tbody tr td {\n position: relative;\n padding: var(--ht-menu-item-vertical-padding, 4px) var(--ht-menu-item-horizontal-padding, 8px);\n border-width: 0;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n background: var(--ht-background-color, #ffffff);\n cursor: pointer;\n transition: var(--ht-table-transition) background ease-in-out;\n}\n.handsontable.htDropdownMenu table tbody tr td:first-child, .handsontable.htContextMenu table tbody tr td:first-child, .handsontable.htFiltersConditionsMenu table tbody tr td:first-child {\n border-top-width: 0;\n border-inline-end-width: 0;\n border-bottom-width: 0;\n border-inline-start-width: 0;\n}\n.handsontable.htDropdownMenu table tbody tr td.htDimmed, .handsontable.htContextMenu table tbody tr td.htDimmed, .handsontable.htFiltersConditionsMenu table tbody tr td.htDimmed {\n font-style: normal;\n color: inherit !important;\n background-color: inherit !important;\n}\n.handsontable.htDropdownMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled):hover, .handsontable.htContextMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled):hover, .handsontable.htFiltersConditionsMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled):hover {\n background: color-mix(in srgb, var(--ht-menu-item-hover-color) var(--ht-menu-item-hover-color-opacity, 100%), transparent) !important;\n cursor: pointer;\n}\n.handsontable.htDropdownMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled).current:not([aria-expanded=true]), .handsontable.htContextMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled).current:not([aria-expanded=true]), .handsontable.htFiltersConditionsMenu table tbody tr td:not(.handsontable.htDropdownMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htCustomMenuRenderer, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled).current:not([aria-expanded=true]) {\n box-shadow: inset 0 0 0 1px var(--ht-accent-color);\n}\n.handsontable.htDropdownMenu table tbody tr td.htSubmenu .htItemWrapper, .handsontable.htContextMenu table tbody tr td.htSubmenu .htItemWrapper, .handsontable.htFiltersConditionsMenu table tbody tr td.htSubmenu .htItemWrapper {\n margin-inline-end: calc(2 * var(--ht-gap-size, 4px) + var(--ht-icon-size));\n}\n.handsontable.htDropdownMenu table tbody tr td.htSubmenu .htItemWrapper::after, .handsontable.htContextMenu table tbody tr td.htSubmenu .htItemWrapper::after, .handsontable.htFiltersConditionsMenu table tbody tr td.htSubmenu .htItemWrapper::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n right: calc(var(--ht-menu-item-horizontal-padding) + var(--ht-gap-size) * 2);\n transform: translateY(-50%);\n}\n.handsontable.htDropdownMenu table tbody tr td.htSeparator, .handsontable.htContextMenu table tbody tr td.htSeparator, .handsontable.htFiltersConditionsMenu table tbody tr td.htSeparator {\n border-top: 1px solid var(--ht-border-color);\n height: 0;\n padding: 0;\n cursor: default;\n}\n.handsontable.htDropdownMenu table tbody tr td.htDisabled, .handsontable.htContextMenu table tbody tr td.htDisabled, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled {\n color: var(--ht-disabled-color);\n cursor: default;\n}\n.handsontable.htDropdownMenu table tbody tr td.htDisabled:hover, .handsontable.htContextMenu table tbody tr td.htDisabled:hover, .handsontable.htFiltersConditionsMenu table tbody tr td.htDisabled:hover {\n background: var(--ht-background-color);\n color: var(--ht-disabled-color);\n}\n.handsontable.htDropdownMenu table tbody tr td.htHidden, .handsontable.htContextMenu table tbody tr td.htHidden, .handsontable.htFiltersConditionsMenu table tbody tr td.htHidden {\n display: none;\n}\n.handsontable.htDropdownMenu table tbody tr td:has(.htItemWrapper .selected), .handsontable.htContextMenu table tbody tr td:has(.htItemWrapper .selected), .handsontable.htFiltersConditionsMenu table tbody tr td:has(.htItemWrapper .selected) {\n background-color: color-mix(in srgb, var(--ht-menu-item-active-color) var(--ht-menu-item-active-color-opacity, 100%), transparent);\n}\n.handsontable.htDropdownMenu table tbody tr td .htItemWrapper, .handsontable.htContextMenu table tbody tr td .htItemWrapper, .handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper {\n margin-inline: calc(2 * var(--ht-gap-size, 4px));\n}\n.handsontable.htDropdownMenu table tbody tr td .htItemWrapper::before, .handsontable.htContextMenu table tbody tr td .htItemWrapper::before, .handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper::before {\n vertical-align: text-bottom;\n margin-right: 12px;\n}\n.handsontable.htDropdownMenu table tbody tr td .htItemWrapper span.selected, .handsontable.htContextMenu table tbody tr td .htItemWrapper span.selected, .handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper span.selected {\n font-size: 0;\n inset: 0;\n}\n.handsontable.htDropdownMenu table tbody tr td .htItemWrapper span.selected::after, .handsontable.htContextMenu table tbody tr td .htItemWrapper span.selected::after, .handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper span.selected::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n right: calc(var(--ht-menu-item-horizontal-padding) + var(--ht-gap-size) * 2);\n color: var(--ht-accent-color);\n transform: translateY(-50%);\n}\n.handsontable.htDropdownMenu table tbody tr td div span.selected, .handsontable.htContextMenu table tbody tr td div span.selected, .handsontable.htFiltersConditionsMenu table tbody tr td div span.selected {\n position: absolute;\n inset-inline-end: 0;\n}\n.handsontable.htDropdownMenu table tbody tr td .htUIButton, .handsontable.htContextMenu table tbody tr td .htUIButton, .handsontable.htFiltersConditionsMenu table tbody tr td .htUIButton {\n width: calc(50% - var(--ht-gap-size));\n}\n.handsontable.htDropdownMenu table tbody tr td .htUIButton input, .handsontable.htContextMenu table tbody tr td .htUIButton input, .handsontable.htFiltersConditionsMenu table tbody tr td .htUIButton input {\n width: 100%;\n}\n.handsontable .htUIClearAll a,\n.handsontable .htUISelectAll a {\n padding: var(--ht-gap-size);\n display: inline-block;\n text-decoration: none;\n}\n.handsontable .htUIMultipleSelect .ht_master .wtHolder {\n overflow-y: scroll !important;\n background: transparent;\n border-radius: 0 !important;\n box-shadow: none !important;\n}\n.handsontable .htUIMultipleSelect .ht_master .wtHolder .htCore {\n box-shadow: none;\n}\n\n[dir=rtl].handsontable.htDropdownMenu table tbody tr td.htSubmenu .htItemWrapper::after, [dir=rtl].handsontable.htContextMenu table tbody tr td.htSubmenu .htItemWrapper::after, [dir=rtl].handsontable.htFiltersConditionsMenu table tbody tr td.htSubmenu .htItemWrapper::after {\n left: calc(4 * var(--ht-gap-size));\n right: auto;\n transform: translateY(-50%) rotate(180deg);\n}\n[dir=rtl].handsontable.htDropdownMenu table tbody tr td .htItemWrapper span.selected::after, [dir=rtl].handsontable.htContextMenu table tbody tr td .htItemWrapper span.selected::after, [dir=rtl].handsontable.htFiltersConditionsMenu table tbody tr td .htItemWrapper span.selected::after {\n left: calc(4 * var(--ht-gap-size));\n right: auto;\n}\n\n.handsontable.htFiltersConditionsMenu:not(.htGhostTable) {\n z-index: 1070;\n}\n.handsontable .ht_master table td.htCustomMenuRenderer {\n cursor: auto;\n}\n.handsontable .ht_master table td.htCustomMenuRenderer.htFiltersMenuActionBar {\n padding-top: calc(var(--ht-menu-item-vertical-padding, 4px) * 2);\n}\n.handsontable .htFiltersMenuLabel {\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n font-weight: var(--ht-font-weight);\n margin-bottom: calc(var(--ht-gap-size, 2px) * 2);\n}\n.handsontable .htFiltersMenuLabel:empty {\n display: none;\n}\n.handsontable .htFiltersMenuCondition {\n padding-top: calc(var(--ht-gap-size, 2px) * 3) !important;\n padding-bottom: 0 !important;\n}\n.handsontable .htFiltersMenuCondition .border {\n border-bottom: 1px solid var(--ht-border-color) !important;\n}\n.handsontable .htFiltersMenuCondition .htUIInput {\n margin-top: calc(var(--ht-gap-size, 2px) * 2);\n}\n.handsontable .htFiltersMenuValue {\n padding-top: calc(var(--ht-gap-size, 2px) * 3) !important;\n padding-bottom: 0 !important;\n border-bottom: 1px solid var(--ht-border-color) !important;\n}\n.handsontable .htFiltersMenuOperators {\n padding-top: calc(var(--ht-gap-size, 2px) * 2) !important;\n padding-bottom: 0 !important;\n}\n.handsontable .htUISelectionControls {\n padding-top: calc(var(--ht-gap-size, 2px) * 2) !important;\n padding-bottom: var(--ht-gap-size, 2px) !important;\n margin: 0 calc(var(--ht-gap-size, 2px) * -1);\n}\n.handsontable .htUIMultipleSelectHot {\n --ht-cell-horizontal-padding: calc(\n var(--ht-menu-item-horizontal-padding, 2px) +\n var(--ht-gap-size, 2px) * 2);\n --ht-cell-vertical-padding: 4px;\n overflow: initial !important;\n width: calc(100% + var(--ht-menu-item-horizontal-padding, 2px) * 2 + var(--ht-gap-size, 2px) * 4);\n margin: 0 calc((var(--ht-menu-item-horizontal-padding, 2px) + var(--ht-gap-size, 2px) * 2) * -1);\n}\n.handsontable .htUIMultipleSelectHot::before {\n content: \"\";\n display: block;\n position: absolute;\n top: -1px;\n left: 0;\n width: 100%;\n height: 1px;\n background-color: var(--ht-border-color);\n}\n.handsontable .htUIMultipleSelectHot .wtHolder {\n padding: 0;\n overflow-x: hidden;\n box-sizing: border-box;\n}\n.handsontable .htUIMultipleSelectHot .wtHolder .wtSpreader {\n padding: calc(var(--ht-gap-size) * 2) 0;\n}\n.handsontable .htUIMultipleSelectHot .wtHolder td {\n height: auto !important;\n padding: var(--ht-cell-vertical-padding) var(--ht-cell-horizontal-padding);\n}\n.handsontable .htUIClearAll,\n.handsontable .htUISelectAll {\n display: inline-block;\n margin-right: var(--ht-gap-size, 4px);\n margin-bottom: var(--ht-gap-size, 4px);\n}\n.handsontable .htUIClearAll a,\n.handsontable .htUISelectAll a {\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n color: var(--ht-link-color);\n border-radius: var(--ht-button-border-radius);\n}\n.handsontable .htUIClearAll a:hover,\n.handsontable .htUISelectAll a:hover {\n color: var(--ht-link-hover-color);\n}\n.handsontable .htUIClearAll a:focus,\n.handsontable .htUISelectAll a:focus {\n outline: 1px solid var(--ht-link-hover-color);\n}\n.handsontable .htUIMultipleSelect .ht_master .wtHolder {\n overflow: auto;\n}\n.handsontable .htUIMultipleSelect .ht_master .wtHolder .wtHider,\n.handsontable .htUIMultipleSelect .ht_master .wtHolder .htCore,\n.handsontable .htUIMultipleSelect .ht_master .wtHolder tr,\n.handsontable .htUIMultipleSelect .ht_master .wtHolder td {\n background: none;\n}\n.handsontable .htUIInput.htUIButton {\n cursor: pointer;\n display: inline-block;\n}\n.handsontable .htUIInput.htUIButtonOK {\n margin-inline-start: 0;\n margin-inline-end: calc(2 * var(--ht-gap-size, 2px));\n}\n\n.handsontable td a.ht-hyperlink {\n color: var(--ht-link-color);\n text-decoration: underline;\n}\n.handsontable td a.ht-hyperlink:hover {\n color: var(--ht-link-hover-color);\n}\n\n.handsontable .htCommentCell {\n position: relative;\n}\n.handsontable .htCommentCell::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n inset-inline-end: 0;\n inset-inline-start: unset;\n border-inline-start: var(--ht-comments-indicator-size, 4px) solid transparent;\n border-inline-end: none;\n border-top: var(--ht-comments-indicator-size, 4px) solid var(--ht-comments-indicator-color, #1a42e8);\n}\n\n.htCommentsContainer .htComments {\n display: none;\n z-index: 1059;\n position: absolute;\n}\n.htCommentsContainer .htCommentTextArea {\n font-family: var(--ht-font-family), -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n box-shadow: var(--ht-menu-shadow-x, 0) var(--ht-menu-shadow-y, 0) var(--ht-menu-shadow-blur, 8px) color-mix(in srgb, var(--ht-menu-shadow-color, rgb(0, 0, 0)) var(--ht-menu-shadow-opacity, 100%), transparent);\n width: 240px;\n height: 88px;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n font-weight: var(--ht-font-weight);\n margin: 0 -1px;\n padding: var(--ht-comments-textarea-vertical-padding) var(--ht-comments-textarea-horizontal-padding);\n border: var(--ht-comments-textarea-border-width, 1px) solid var(--ht-comments-textarea-border-color, transparent);\n border-inline-start: var(--ht-comments-textarea-border-width, 1px) solid var(--ht-comments-textarea-border-color, #1a42e8);\n color: var(--ht-comments-textarea-foreground-color);\n background-color: var(--ht-comments-textarea-background-color, #ffffff);\n outline: 0 !important;\n box-sizing: border-box;\n -webkit-appearance: none;\n}\n.htCommentsContainer .htCommentTextArea:focus {\n border: var(--ht-comments-textarea-focus-border-width, 1px) solid var(--ht-comments-textarea-focus-border-color, #1a42e8);\n color: var(--ht-comments-textarea-focus-foreground-color);\n background-color: var(--ht-comments-textarea-focus-background-color, #ffffff);\n}\n\n.htBorders .wtBorder.ht-border-style-dashed-vertical {\n background-image: repeating-linear-gradient(to bottom, var(--ht-custom-border-color) 0 5px, transparent 0 10px);\n}\n.htBorders .wtBorder.ht-border-style-dashed-horizontal {\n background-image: repeating-linear-gradient(to right, var(--ht-custom-border-color) 0 5px, transparent 0 10px);\n}\n.htBorders .wtBorder.ht-border-style-dotted-horizontal {\n background-image: radial-gradient(circle, var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2), transparent 0);\n background-size: calc(var(--ht-custom-border-size) * 2) var(--ht-custom-border-size);\n background-repeat: repeat-x;\n}\n.htBorders .wtBorder.ht-border-style-dotted-vertical {\n background-image: radial-gradient(circle, var(--ht-custom-border-color) calc(var(--ht-custom-border-size) / 2), transparent 0);\n background-size: var(--ht-custom-border-size) calc(var(--ht-custom-border-size) * 2);\n background-repeat: repeat-y;\n}\n\n.handsontable .colHeader.columnSorting.sortAction {\n box-sizing: border-box;\n flex-grow: 0;\n margin-inline: auto;\n min-width: min(var(--ht-icon-size, 16px) + 8px, 100%);\n max-width: 100%;\n position: static;\n}\n.handsontable .colHeader.columnSorting.sortAction::before, .handsontable .colHeader.columnSorting.sortAction::after {\n margin-inline: var(--ht-sort-indicator-offset);\n margin-inline-end: var(--ht-sort-indicator-offset-end);\n}\n.handsontable .htLeft .colHeader.columnSorting.sortAction {\n margin-left: 0;\n margin-right: auto;\n}\n.handsontable .htRight .colHeader.columnSorting.sortAction {\n margin-left: auto;\n margin-right: 0;\n}\n.handsontable th .relative {\n --ht-sort-indicator-offset: var(--ht-cell-horizontal-padding);\n --ht-sort-indicator-offset-end: var(--ht-cell-horizontal-padding);\n --ht-sort-indicator-reserve: var(--ht-cell-horizontal-padding);\n --ht-sort-indicator-reserve-end: var(--ht-sort-indicator-reserve);\n --ht-header-button-slot: calc(var(--ht-icon-size, 16px) + 2px);\n}\n.handsontable .relative.has-header-button {\n --ht-sort-indicator-offset-end: calc(\n var(--ht-cell-horizontal-padding) + var(--ht-icon-size, 16px) +\n (var(--ht-icon-button-hit-area-size, 24px) - var(--ht-icon-size, 16px)) * 0.5\n );\n --ht-sort-indicator-reserve-end: var(--ht-cell-horizontal-padding);\n}\n.handsontable .relative.has-sort-indicator.has-header-button {\n column-gap: calc(2px + var(--ht-header-button-slot));\n}\n.handsontable .relative.has-sort-indicator {\n --ht-sort-indicator-reserve: calc(var(--ht-cell-horizontal-padding) + var(--ht-icon-size, 16px) + 2px);\n padding-inline-end: var(--ht-sort-indicator-reserve-end);\n}\n.handsontable .relative.htRight.has-sort-indicator,\n.handsontable .htRight .relative.has-sort-indicator {\n padding-inline-start: var(--ht-sort-indicator-reserve);\n padding-inline-end: var(--ht-cell-horizontal-padding);\n --ht-header-button-slot: 0px;\n}\n.handsontable .columnSorting:not(.indicatorDisabled) {\n position: relative;\n}\n.handsontable .columnSorting:not(.indicatorDisabled).sortAction:hover {\n text-decoration: none;\n cursor: pointer;\n}\n.handsontable .columnSorting:not(.indicatorDisabled).sortAction::before {\n content: \"\";\n display: block;\n width: var(--ht-icon-size, 16px);\n position: absolute;\n top: 50%;\n right: 2px;\n transform: translateY(-50%);\n text-align: right;\n}\n.handsontable .htRight .columnSorting.sortAction::before {\n left: 2px;\n right: auto;\n text-align: left;\n}\n\n[dir=rtl] .handsontable .relative.htRight.has-sort-indicator,\n[dir=rtl] .handsontable .htRight .relative.has-sort-indicator {\n padding-inline-start: var(--ht-cell-horizontal-padding);\n padding-inline-end: var(--ht-sort-indicator-reserve-end);\n --ht-header-button-slot: calc(var(--ht-icon-size, 16px) + 2px);\n}\n[dir=rtl] .handsontable .relative.htLeft.has-sort-indicator,\n[dir=rtl] .handsontable .htLeft .relative.has-sort-indicator {\n padding-inline-start: var(--ht-sort-indicator-reserve);\n padding-inline-end: var(--ht-cell-horizontal-padding);\n --ht-header-button-slot: 0px;\n}\n[dir=rtl] .handsontable .columnSorting.sortAction::before {\n left: 2px;\n right: auto;\n text-align: left;\n}\n[dir=rtl] .handsontable .htLeft .columnSorting.sortAction::before {\n left: auto;\n right: 2px;\n text-align: right;\n}\n\n.htGhostTable .htCore .relative {\n --ht-sort-indicator-offset: 0px;\n --ht-sort-indicator-offset-end: 0px;\n --ht-header-button-slot: 0px;\n}\n\n.htGhostTable .htCore .relative.has-header-button {\n --ht-sort-indicator-reserve: var(--ht-cell-horizontal-padding);\n --ht-sort-indicator-reserve-end: var(--ht-cell-horizontal-padding);\n}\n\n.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled)::before {\n content: \"*\";\n display: inline-block;\n position: relative;\n /* The multi-line header and header with longer text need more padding to not hide arrow,\n we make header wider in `GhostTable` to make some space for arrow which is positioned absolutely in the main table */\n padding-inline-end: calc(var(--ht-icon-size, 16px) + 2px);\n}\n\n.handsontable .colHeader.columnSorting::after {\n content: \"\";\n display: block;\n width: 8px;\n position: absolute;\n top: 50%;\n right: 0;\n transform: translateY(-50%);\n margin-top: 4px;\n font-size: 8px;\n text-align: right;\n}\n.handsontable .colHeader.columnSorting[class^=sort-]::after, .handsontable .colHeader.columnSorting[class*=\" sort-\"]::after {\n content: \"+\";\n}\n.handsontable .colHeader.columnSorting.sort-1::after {\n content: \"1\";\n}\n.handsontable .colHeader.columnSorting.sort-2::after {\n content: \"2\";\n}\n.handsontable .colHeader.columnSorting.sort-3::after {\n content: \"3\";\n}\n.handsontable .colHeader.columnSorting.sort-4::after {\n content: \"4\";\n}\n.handsontable .colHeader.columnSorting.sort-5::after {\n content: \"5\";\n}\n.handsontable .colHeader.columnSorting.sort-6::after {\n content: \"6\";\n}\n.handsontable .colHeader.columnSorting.sort-7::after {\n content: \"7\";\n}\n.handsontable .htRight .colHeader.columnSorting::after {\n left: 0;\n right: auto;\n text-align: left;\n}\n\n[dir=rtl] .handsontable .colHeader.columnSorting::after {\n left: 0;\n right: auto;\n text-align: left;\n}\n[dir=rtl] .handsontable .htLeft .colHeader.columnSorting::after {\n left: auto;\n right: 0;\n text-align: right;\n}\n\n.htGhostTable th div:has(.changeType) span.colHeader.columnSorting:not(.indicatorDisabled) {\n padding-inline-end: var(--ht-gap-size);\n}\n\n.handsontable .htRowHeaders .ht_master.innerBorderInlineStart ~ .ht_clone_top_inline_start_corner :where(table.htCore > thead > tr) > th:nth-child(2), .handsontable .htRowHeaders .ht_master.innerBorderInlineStart ~ .ht_clone_inline_start :where(table.htCore > tbody > tr) > td:first-of-type {\n border-left: 0 none;\n}\n.handsontable .ht_clone_top_inline_start_corner th.ht__active_highlight {\n box-shadow: none;\n}\n\n.handsontable .manualColumnResizer {\n position: absolute;\n top: 0;\n width: 10px;\n margin: 0;\n cursor: col-resize;\n background: none;\n opacity: 0;\n z-index: 210;\n}\n.handsontable .manualColumnResizer::before, .handsontable .manualColumnResizer::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 1px;\n width: 2px;\n height: calc(100% - 12px);\n max-height: 16px;\n margin-top: 0.5px;\n background: var(--ht-resize-indicator-color);\n border-radius: 2px;\n transform: translateY(-50%);\n}\n.handsontable .manualColumnResizer::after {\n left: auto;\n right: 0;\n}\n.handsontable .manualColumnResizer:hover, .handsontable .manualColumnResizer.active {\n opacity: 1;\n}\n.handsontable .manualColumnResizerGuide {\n position: absolute;\n inset-inline-end: unset;\n top: 0;\n width: 0;\n margin-inline-start: 5px;\n margin-inline-end: unset;\n display: none;\n border-inline-end: 1px solid var(--ht-accent-color);\n border-inline-start: none;\n}\n.handsontable .manualColumnResizerGuide.active {\n display: block;\n z-index: 209;\n}\n\n.handsontable .manualRowResizer {\n position: absolute;\n left: 0;\n z-index: 210;\n height: 10px;\n margin: 0;\n cursor: row-resize;\n background: none;\n opacity: 0;\n}\n.handsontable .manualRowResizer::before, .handsontable .manualRowResizer::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 1px;\n left: 50%;\n width: calc(100% - 12px);\n max-width: 16px;\n height: 2px;\n background: var(--ht-resize-indicator-color);\n border-radius: 2px;\n transform: translateX(-50%);\n}\n.handsontable .manualRowResizer::after {\n top: auto;\n bottom: 0;\n}\n.handsontable .manualRowResizer:hover, .handsontable .manualRowResizer.active {\n opacity: 1;\n}\n.handsontable .manualRowResizerGuide {\n position: absolute;\n left: 0;\n bottom: 0;\n height: 0;\n margin-top: 5px;\n display: none;\n border-bottom: 1px solid var(--ht-accent-color);\n border-top: none;\n}\n.handsontable .manualRowResizerGuide.active {\n display: block;\n z-index: 209;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell])::before {\n opacity: 0;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]::before {\n opacity: 0.14;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before {\n opacity: 0.14;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before {\n opacity: 0.21;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before {\n opacity: 0.28;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before {\n opacity: 0.35;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before {\n opacity: 0.42;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before {\n opacity: 0.49;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before {\n opacity: 0.56;\n}\n\n.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before {\n opacity: 0.63;\n}\n\n.handsontable .wtHider {\n position: relative;\n}\n.handsontable .ht__manualColumnMove.after-selection--columns thead th.ht__highlight, .handsontable .ht__manualColumnMove.after-selection--columns thead th.ht__active_highlight, .handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight, .handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__active_highlight {\n cursor: move;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n cursor: grab;\n}\n.handsontable .ht__manualColumnMove.on-moving--columns *,\n.handsontable .ht__manualColumnMove.on-moving--columns thead th.ht__highlight, .handsontable.ht__manualColumnMove.on-moving--columns *,\n.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight {\n cursor: move;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n cursor: grabbing;\n}\n.handsontable .ht__manualColumnMove.on-moving--columns .manualColumnResizer, .handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer {\n display: none;\n}\n.handsontable .ht__manualColumnMove--guideline, .handsontable .ht__manualColumnMove--backlight, .handsontable.ht__manualColumnMove--guideline, .handsontable.ht__manualColumnMove--backlight {\n position: absolute;\n height: 100%;\n display: none;\n}\n.handsontable .ht__manualColumnMove--guideline, .handsontable.ht__manualColumnMove--guideline {\n width: 1px;\n top: 0;\n margin-inline-start: -0.5px;\n margin-inline-end: 0;\n z-index: 205;\n background: var(--ht-move-indicator-color, #1a42e8);\n}\n.handsontable .ht__manualColumnMove--backlight, .handsontable.ht__manualColumnMove--backlight {\n display: none;\n z-index: 205;\n pointer-events: none;\n background: color-mix(in srgb, var(--ht-move-backlight-color) var(--ht-move-backlight-opacity, 100%), transparent);\n}\n.handsontable .on-moving--columns.show-ui .ht__manualColumnMove--guideline,\n.handsontable .on-moving--columns .ht__manualColumnMove--backlight, .handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline,\n.handsontable.on-moving--columns .ht__manualColumnMove--backlight {\n display: block;\n}\n\n.handsontable .wtHider {\n position: relative;\n}\n.handsontable .ht__manualRowMove.after-selection--rows tbody th.ht__highlight, .handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight {\n cursor: move;\n cursor: -moz-grab;\n cursor: -webkit-grab;\n cursor: grab;\n}\n.handsontable .ht__manualRowMove.on-moving--rows *,\n.handsontable .ht__manualRowMove.on-moving--rows tbody th.ht__highlight, .handsontable.ht__manualRowMove.on-moving--rows *,\n.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight {\n cursor: move;\n cursor: -moz-grabbing;\n cursor: -webkit-grabbing;\n cursor: grabbing;\n}\n.handsontable .ht__manualRowMove.on-moving--rows .manualRowResizer, .handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer {\n display: none;\n}\n.handsontable .ht__manualRowMove--guideline, .handsontable .ht__manualRowMove--backlight, .handsontable.ht__manualRowMove--guideline, .handsontable.ht__manualRowMove--backlight {\n position: absolute;\n width: 100%;\n display: none;\n}\n.handsontable .ht__manualRowMove--guideline, .handsontable.ht__manualRowMove--guideline {\n border-top: 1px solid var(--ht-move-indicator-color);\n left: 0;\n z-index: 205;\n}\n.handsontable .ht__manualRowMove--backlight, .handsontable.ht__manualRowMove--backlight {\n display: none;\n z-index: 205;\n pointer-events: none;\n background: color-mix(in srgb, var(--ht-move-backlight-color) var(--ht-move-backlight-opacity, 100%), transparent);\n}\n.handsontable .on-moving--rows.show-ui .ht__manualRowMove--guideline,\n.handsontable .on-moving--rows .ht__manualRowMove--backlight, .handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline,\n.handsontable.on-moving--rows .ht__manualRowMove--backlight {\n display: block;\n}\n\n.ht-dialog {\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n position: absolute;\n top: 0;\n left: 0;\n display: none;\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n letter-spacing: var(--ht-letter-spacing);\n width: 100%;\n height: 100%;\n z-index: 1060;\n opacity: 0;\n overflow-y: auto;\n border-radius: var(--ht-border-radius);\n border: 1px solid var(--ht-border-color);\n box-sizing: border-box !important;\n}\n.ht-dialog[dir=rtl] {\n left: auto;\n right: 0;\n}\n.ht-dialog:focus {\n border: 1px solid var(--ht-accent-color);\n outline: none;\n}\n.ht-dialog:has(.htFocusCatcher:focus) {\n border: 1px solid var(--ht-accent-color);\n outline: none;\n}\n.ht-dialog * {\n box-sizing: border-box !important;\n}\n.ht-dialog--background-solid {\n background-color: var(--ht-dialog-solid-background-color);\n}\n.ht-dialog--background-semi-transparent {\n background-color: color-mix(in srgb, var(--ht-dialog-semi-transparent-background-color) var(--ht-dialog-semi-transparent-background-opacity, 100%), transparent);\n}\n.ht-dialog--animation {\n transition: opacity var(--ht-table-transition) ease-in-out;\n}\n.ht-dialog--show {\n opacity: 1;\n}\n.ht-dialog__content-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n min-height: 100%;\n padding: calc(var(--ht-gap-size) * 4);\n border-radius: var(--ht-border-radius);\n}\n.ht-dialog__content {\n position: relative;\n padding: var(--ht-dialog-content-padding-horizontal) var(--ht-dialog-content-padding-vertical);\n max-width: 480px;\n color: var(--ht-foreground-color);\n}\n.ht-dialog__content--background {\n box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) color-mix(in srgb, var(--ht-shadow-color, rgb(0, 0, 0)) var(--ht-shadow-opacity, 100%), transparent);\n border-radius: var(--ht-dialog-content-border-radius);\n background-color: var(--ht-dialog-content-background-color);\n}\n.ht-dialog--confirm .ht-dialog__content-wrapper {\n text-align: center;\n padding: calc(var(--ht-gap-size) * 2);\n}\n.ht-dialog--confirm .ht-dialog__content-wrapper-inner {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n max-width: 480px;\n padding: calc(var(--ht-gap-size) * 2);\n border-radius: var(--ht-border-radius);\n}\n.ht-dialog--confirm .ht-dialog__content-wrapper-inner--background {\n box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) color-mix(in srgb, var(--ht-shadow-color, rgb(0, 0, 0)) var(--ht-shadow-opacity, 100%), transparent);\n border-radius: var(--ht-dialog-content-border-radius);\n background-color: var(--ht-dialog-content-background-color);\n}\n.ht-dialog--confirm .ht-dialog__content-wrapper-inner:focus {\n outline: none;\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n.ht-dialog--confirm .ht-dialog__content {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: var(--ht-gap-size);\n}\n.ht-dialog--confirm .ht-dialog__content:has(.ht-dialog__buttons) {\n gap: calc(var(--ht-gap-size) * 2);\n}\n.ht-dialog--confirm .ht-dialog__title {\n margin: 0;\n font-size: var(--ht-font-size);\n font-weight: var(--ht-font-weight);\n line-height: var(--ht-line-height);\n}\n.ht-dialog--confirm .ht-dialog__description {\n margin: 0;\n color: var(--ht-foreground-secondary-color);\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n font-weight: var(--ht-font-weight);\n}\n.ht-dialog--confirm .ht-dialog__buttons {\n display: flex;\n justify-content: center;\n flex-direction: row;\n flex-wrap: wrap;\n gap: calc(var(--ht-gap-size) * 2);\n}\n\n.ht-notification {\n position: absolute;\n inset: 0;\n z-index: 1070;\n pointer-events: none;\n overflow: visible;\n}\n.ht-notification__stack {\n position: absolute;\n display: flex;\n flex-direction: column;\n gap: 10px;\n max-width: min(420px, 100% - 40px);\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n pointer-events: auto;\n -webkit-overflow-scrolling: touch;\n min-height: 0;\n padding: 10px;\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n}\n.ht-notification__stack--top-start {\n top: 10px;\n inset-inline-start: 10px;\n align-items: flex-start;\n max-height: calc(100% - 40px);\n}\n.ht-notification__stack--top-end {\n top: 10px;\n inset-inline-end: 10px;\n align-items: flex-end;\n max-height: calc(100% - 40px);\n}\n.ht-notification__stack--bottom-start {\n bottom: 10px;\n inset-inline-start: 10px;\n align-items: flex-start;\n max-height: calc(100% - 40px);\n}\n.ht-notification__stack--bottom-end {\n bottom: 10px;\n inset-inline-end: 10px;\n align-items: flex-end;\n max-height: calc(100% - 40px);\n}\n.ht-notification__toast {\n box-shadow: var(--ht-shadow-x, 0) var(--ht-shadow-y, 0) var(--ht-shadow-blur, 8px) color-mix(in srgb, var(--ht-shadow-color, rgb(0, 0, 0)) var(--ht-shadow-opacity, 100%), transparent);\n position: relative;\n display: flex;\n flex-shrink: 0;\n max-width: 100%;\n pointer-events: auto;\n color: var(--ht-notification-foreground-color, var(--ht-foreground-color));\n background-color: var(--ht-notification-background-color, var(--ht-background-color));\n border: 1px solid var(--ht-notification-border-color, var(--ht-border-color));\n border-radius: var(--ht-border-radius, 4px);\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n letter-spacing: var(--ht-letter-spacing);\n outline: none;\n}\n.ht-notification__toast:focus-visible {\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n.ht-notification__toast--animate {\n opacity: 0;\n transition: opacity var(--ht-table-transition, 0.15s) ease-out, transform var(--ht-table-transition, 0.15s) ease-out;\n}\n.ht-notification__toast--animate.ht-notification__toast--stack-top:not(.ht-notification__toast--visible) {\n transform: translateY(-6px);\n}\n.ht-notification__toast--animate.ht-notification__toast--stack-bottom:not(.ht-notification__toast--visible) {\n transform: translateY(6px);\n}\n.ht-notification__toast--visible {\n opacity: 1;\n transform: translateY(0);\n}\n.ht-notification__toast--info .ht-notification__accent {\n display: none;\n}\n.ht-notification__toast--success .ht-notification__accent {\n background-color: var(--ht-notification-success-accent, #37bc6c);\n}\n.ht-notification__toast--warning .ht-notification__accent {\n background-color: var(--ht-notification-warning-accent, #fbe952);\n}\n.ht-notification__toast--error .ht-notification__accent {\n background-color: var(--ht-notification-error-accent, #fa4d32);\n}\n.ht-notification__toast-inner {\n display: flex;\n flex-direction: row;\n align-items: stretch;\n width: 100%;\n min-width: 0;\n padding: 10px;\n gap: 0;\n direction: inherit;\n}\n.ht-notification__accent {\n box-sizing: border-box;\n flex: 0 0 4px;\n align-self: stretch;\n border-radius: 4px;\n margin-inline-end: 10px;\n}\n.ht-notification__body {\n flex: 1 1 auto;\n min-width: 0;\n}\n.ht-notification__title {\n margin: 0 0 var(--ht-gap-size);\n font-size: var(--ht-font-size);\n font-weight: var(--ht-font-weight, 600);\n}\n.ht-notification__message {\n margin: 0;\n font-size: var(--ht-font-size-small);\n word-break: break-word;\n}\n.ht-notification__actions {\n display: flex;\n flex-wrap: wrap;\n gap: var(--ht-gap-size);\n margin-top: var(--ht-gap-size);\n}\n.ht-notification__close {\n position: relative;\n box-sizing: border-box;\n flex: 0 0 auto;\n align-self: flex-start;\n margin-inline-start: 4px;\n width: var(--ht-icon-button-hit-area-size);\n height: var(--ht-icon-button-hit-area-size);\n padding: 0;\n border: none;\n background: transparent;\n color: var(--ht-icon-button-icon-color, inherit);\n cursor: pointer;\n border-radius: var(--ht-icon-button-border-radius, var(--ht-border-radius, 4px));\n flex-shrink: 0;\n overflow: visible;\n}\n.ht-notification__close::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n inset-inline-start: 50%;\n margin-top: calc(-0.5 * var(--ht-icon-size));\n margin-inline-start: calc(-0.5 * var(--ht-icon-size));\n}\n.ht-notification__close:hover {\n color: var(--ht-icon-button-hover-icon-color, inherit);\n background-color: var(--ht-icon-button-hover-background-color, color-mix(in srgb, var(--ht-foreground-color) 8%, transparent));\n}\n.ht-notification__close:focus-visible {\n outline: 2px solid var(--ht-accent-color);\n outline-offset: 2px;\n}\n\n.handsontable.ht-pagination {\n width: 100%;\n color: var(--ht-pagination-bar-foreground-color);\n background: var(--ht-pagination-bar-background-color);\n font-size: var(--ht-font-size);\n line-height: var(--ht-line-height);\n box-sizing: border-box;\n overflow-x: auto;\n}\n.handsontable.ht-pagination:not(.ht-slot-element) {\n border: 1px solid var(--ht-border-color);\n border-radius: var(--ht-border-radius);\n}\n.handsontable.ht-pagination .ht-pagination__inner {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: calc(var(--ht-gap-size) * 4);\n padding-inline: var(--ht-pagination-bar-horizontal-padding);\n padding-block: var(--ht-pagination-bar-vertical-padding);\n min-width: 230px;\n}\n.handsontable.ht-pagination .ht-page-size-section {\n display: flex;\n align-items: center;\n gap: calc(var(--ht-gap-size) * 2);\n}\n.handsontable.ht-pagination .ht-page-size-section__label {\n white-space: nowrap;\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper {\n position: relative;\n border-radius: var(--ht-input-border-radius);\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper select {\n padding-inline-start: var(--ht-gap-size);\n padding-inline-end: calc(var(--ht-gap-size) + var(--ht-icon-size));\n padding-top: var(--ht-gap-size);\n padding-bottom: var(--ht-gap-size);\n border-radius: var(--ht-input-border-radius);\n color: var(--ht-input-foreground-color);\n background-color: var(--ht-input-background-color);\n border: 1px solid var(--ht-input-border-color);\n line-height: calc(var(--ht-line-height) - 4px);\n -webkit-appearance: none;\n font-size: inherit;\n cursor: pointer;\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper select:disabled {\n opacity: 0.4;\n cursor: default;\n color: var(--ht-input-disabled-foreground-color);\n background-color: var(--ht-input-disabled-background-color);\n border-color: var(--ht-input-disabled-border-color);\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper select:hover:not(:disabled) {\n color: var(--ht-input-hover-foreground-color);\n background-color: var(--ht-input-hover-background-color);\n border-color: var(--ht-input-hover-border-color);\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper select:focus {\n color: var(--ht-input-focus-foreground-color);\n background-color: var(--ht-input-focus-background-color);\n border-color: var(--ht-input-focus-border-color);\n outline: none;\n}\n.handsontable.ht-pagination .ht-page-size-section__select-wrapper::after {\n content: \"\";\n display: block;\n position: absolute;\n inset-inline-end: var(--ht-gap-size);\n inset-block-end: 50%;\n transform: translateY(50%);\n background-color: var(--ht-foreground-color);\n pointer-events: none;\n}\n.handsontable.ht-pagination .ht-page-counter-section {\n margin-inline-end: auto;\n}\n.handsontable.ht-pagination .ht-page-navigation-section {\n display: flex;\n align-items: center;\n gap: 1px;\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button {\n font-size: inherit;\n border: 1px solid var(--ht-pagination-button-border-color);\n color: var(--ht-pagination-button-foreground-color);\n background-color: var(--ht-pagination-button-background-color);\n border-radius: var(--ht-icon-button-large-border-radius);\n padding: var(--ht-icon-button-large-padding);\n cursor: pointer;\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button::before {\n content: \"\";\n display: block;\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button--disabled {\n cursor: default;\n pointer-events: none;\n color: var(--ht-pagination-button-disabled-foreground-color);\n background-color: var(--ht-pagination-button-disabled-background-color);\n border-color: var(--ht-pagination-button-disabled-border-color);\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button:hover:not(:disabled) {\n border-color: var(--ht-pagination-button-hover-border-color);\n color: var(--ht-pagination-button-hover-foreground-color);\n background-color: var(--ht-pagination-button-hover-background-color);\n}\n.handsontable.ht-pagination .ht-page-navigation-section__button:focus {\n outline: none;\n border-color: var(--ht-pagination-button-focus-border-color);\n color: var(--ht-pagination-button-focus-foreground-color);\n background-color: var(--ht-pagination-button-focus-background-color);\n}\n.handsontable.ht-pagination .ht-page-navigation-section__label {\n white-space: nowrap;\n min-width: 100px;\n text-align: center;\n}\n\n.ht-loading__icon-svg {\n display: block;\n width: var(--ht-icon-size);\n height: var(--ht-icon-size);\n color: var(--ht-accent-color);\n animation: ht-loading-spin 1s linear infinite;\n transform-origin: 50% 50%;\n}\n.ht-loading__content {\n display: flex;\n align-items: center;\n gap: calc(var(--ht-gap-size) * 2);\n}\n.ht-loading__title {\n margin: 0;\n font-size: var(--ht-font-size);\n font-weight: var(--ht-font-weight);\n line-height: var(--ht-line-height);\n}\n.ht-loading__description {\n margin: 0;\n color: var(--ht-foreground-secondary-color);\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n font-weight: var(--ht-font-weight);\n}\n\n@keyframes ht-loading-spin {\n to {\n transform: rotate(360deg);\n }\n}\n.ht-empty-data-state {\n scrollbar-width: auto;\n scrollbar-color: var(--ht-scrollbar-thumb-color) var(--ht-scrollbar-track-color);\n display: none;\n position: absolute;\n width: 100%;\n left: 0;\n z-index: 999;\n overflow-y: auto;\n border: 1px solid var(--ht-border-color);\n border-radius: var(--ht-border-radius);\n box-sizing: border-box;\n background-color: var(--ht-background-color);\n}\n.ht-empty-data-state * {\n box-sizing: border-box !important;\n}\n.ht-empty-data-state__content-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n width: 100%;\n min-height: 100%;\n padding: calc(var(--ht-gap-size) * 2);\n border-radius: var(--ht-border-radius);\n}\n.ht-empty-data-state__content-wrapper-inner {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n max-width: 480px;\n padding: calc(var(--ht-gap-size) * 2);\n border-radius: var(--ht-border-radius);\n}\n.ht-empty-data-state__content-wrapper-inner:focus {\n outline: none;\n box-shadow: 0 0 0 1px var(--ht-accent-color);\n}\n.ht-empty-data-state__content {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: var(--ht-gap-size);\n}\n.ht-empty-data-state__title {\n margin: 0;\n font-size: var(--ht-font-size);\n font-weight: var(--ht-font-weight);\n line-height: var(--ht-line-height);\n}\n.ht-empty-data-state__description {\n margin: 0;\n color: var(--ht-foreground-secondary-color);\n font-size: var(--ht-font-size-small);\n line-height: var(--ht-line-height-small);\n font-weight: var(--ht-font-weight);\n}\n.ht-empty-data-state__buttons {\n display: flex;\n justify-content: center;\n flex-direction: row;\n flex-wrap: wrap;\n gap: calc(var(--ht-gap-size) * 2);\n}\n.ht-empty-data-state__buttons--has-buttons {\n margin-top: calc(var(--ht-gap-size) * 2);\n}\n.ht-empty-data-state__spinner {\n flex-shrink: 0;\n width: 28px;\n height: 28px;\n margin-bottom: calc(var(--ht-gap-size) * 2);\n border: 2px solid var(--ht-border-color);\n border-top-color: var(--ht-accent-color);\n border-radius: 50%;\n animation: ht-empty-data-state-spin 0.75s linear infinite;\n}\n@media (prefers-reduced-motion: reduce) {\n .ht-empty-data-state__spinner {\n animation: none;\n border-top-color: var(--ht-border-color);\n }\n}\n.ht-empty-data-state--loading .ht-empty-data-state__content {\n gap: calc(var(--ht-gap-size) * 0.5);\n}\n.ht-empty-data-state--disable-top-border {\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-top-width: 0;\n}\n.ht-empty-data-state--disable-inline-border {\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n border-inline-start-width: 0;\n}\n.ht-empty-data-state--disable-bottom-border {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n border-bottom-width: 0;\n}\n\n.ht-root-wrapper.ht-slot-bottom-filled .ht-empty-data-state {\n border-end-start-radius: 0;\n border-end-end-radius: 0;\n}\n\n@keyframes ht-empty-data-state-spin {\n to {\n transform: rotate(360deg);\n }\n}\n");
118174
118199
 
118175
118200
 
118176
118201
  },
@@ -127451,7 +127476,7 @@ __webpack_require__.d(__webpack_exports__, {
127451
127476
  // The bundler inlines `process.env.HOT_RELEASE_DATE` to a string literal (the bare read cannot
127452
127477
  // crash); a guard is left un-inlined and compiles to `false` in browser bundles, blanking the date
127453
127478
  // and silently killing expired-key detection.
127454
- const releaseDate = "01/09/2026" || 0;
127479
+ const releaseDate = "15/09/2026" || 0;
127455
127480
  mountBrandingSurface(hotInstance, (0,_helpers_mixed__rspack_import_3._getLicenseState)(hotInstance.getSettings().licenseKey, releaseDate));
127456
127481
  }
127457
127482
 
@@ -127730,7 +127755,7 @@ const LICENSE_INFO_CLASS = 'hot-display-license-info';
127730
127755
  // inlined - it survives as `typeof process !== 'undefined' && "..."`, which is `false` in every
127731
127756
  // browser bundle, blanks the release date, and silently kills expired-key detection. That was the
127732
127757
  // 18.0.0 regression this read restores; re-adding the guard reintroduces it.
127733
- const releaseDate = "01/09/2026" || 0;
127758
+ const releaseDate = "15/09/2026" || 0;
127734
127759
  const notificationElement = (0,_helpers_mixed__rspack_import_2._injectProductInfo)({
127735
127760
  className: LICENSE_INFO_CLASS,
127736
127761
  key: licenseKey,