fokus-styles 2.0.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +4 -3
  3. package/dist/css/components.css +510 -2
  4. package/dist/css/components.css.map +1 -1
  5. package/dist/css/components.min.css +1 -1
  6. package/dist/css/components.min.css.map +1 -1
  7. package/dist/css/fokus-components.css +4050 -0
  8. package/dist/css/fokus-components.css.map +1 -0
  9. package/dist/css/fokus-components.min.css +2 -0
  10. package/dist/css/fokus-components.min.css.map +1 -0
  11. package/dist/css/fokus-core.css +1563 -0
  12. package/dist/css/fokus-core.css.map +1 -0
  13. package/dist/css/fokus-core.min.css +2 -0
  14. package/dist/css/fokus-core.min.css.map +1 -0
  15. package/dist/css/fokus-dark.css +304 -0
  16. package/dist/css/fokus-dark.css.map +1 -0
  17. package/dist/css/fokus-dark.min.css +2 -0
  18. package/dist/css/fokus-dark.min.css.map +1 -0
  19. package/dist/css/fokus-utilities.css +4176 -0
  20. package/dist/css/fokus-utilities.css.map +1 -0
  21. package/dist/css/fokus-utilities.min.css +2 -0
  22. package/dist/css/fokus-utilities.min.css.map +1 -0
  23. package/dist/css/fokus.css +1339 -53
  24. package/dist/css/fokus.css.map +1 -1
  25. package/dist/css/fokus.min.css +1 -1
  26. package/dist/css/fokus.min.css.map +1 -1
  27. package/dist/css/forms.css +115 -2
  28. package/dist/css/forms.css.map +1 -1
  29. package/dist/css/forms.min.css +1 -1
  30. package/dist/css/forms.min.css.map +1 -1
  31. package/dist/css/helpers.css +376 -2
  32. package/dist/css/helpers.css.map +1 -1
  33. package/dist/css/helpers.min.css +1 -1
  34. package/dist/css/helpers.min.css.map +1 -1
  35. package/dist/css/layout.css +560 -2
  36. package/dist/css/layout.css.map +1 -1
  37. package/dist/css/layout.min.css +1 -1
  38. package/dist/css/layout.min.css.map +1 -1
  39. package/dist/js/fokus.js +347 -12
  40. package/dist/js/fokus.js.map +4 -4
  41. package/dist/js/fokus.min.js +17 -17
  42. package/dist/js/fokus.min.js.map +4 -4
  43. package/docs/components/accordion.md +3 -0
  44. package/docs/components/avatar.md +13 -0
  45. package/docs/components/button-group.md +13 -0
  46. package/docs/components/close-button.md +13 -0
  47. package/docs/components/code.md +13 -0
  48. package/docs/components/icon-link.md +13 -0
  49. package/docs/components/list-group.md +13 -0
  50. package/docs/components/modal.md +3 -0
  51. package/docs/components/navbar.md +3 -0
  52. package/docs/components/pagination.md +3 -0
  53. package/docs/components/placeholder.md +13 -0
  54. package/docs/components/ratio.md +13 -0
  55. package/docs/components/scrollspy.md +13 -0
  56. package/docs/components/skeleton.md +3 -0
  57. package/docs/components/table.md +3 -0
  58. package/docs/guides/javascript-api.md +9 -0
  59. package/docs/guides/utility-api.md +9 -0
  60. package/docs/reference/size-baseline.json +13 -13
  61. package/mockup/assets/example-theme.css +3 -1
  62. package/mockup/assets/example-theme.js +2 -0
  63. package/mockup/assets/showcase-contracts.js +2 -2
  64. package/mockup/assets/showcase.css +4 -2
  65. package/mockup/assets/showcase.js +2 -0
  66. package/mockup/examples/js-foundation.html +25 -0
  67. package/mockup/examples/tables-navbar.html +12 -8
  68. package/mockup/examples/theming.html +2 -1
  69. package/mockup/foundations.html +2 -2
  70. package/package.json +14 -1
  71. package/packages/fokus-cli/bin/fokus.mjs +18 -1
  72. package/packages/fokus-cli/lib/build.mjs +12 -2
  73. package/packages/fokus-components/scss/components/_accordion.scss +19 -0
  74. package/packages/fokus-components/scss/components/_avatar.scss +22 -0
  75. package/packages/fokus-components/scss/components/_button-group.scss +14 -0
  76. package/packages/fokus-components/scss/components/_close-button.scss +22 -0
  77. package/packages/fokus-components/scss/components/_code.scss +19 -0
  78. package/packages/fokus-components/scss/components/_icon-link.scss +8 -0
  79. package/packages/fokus-components/scss/components/_index.scss +10 -0
  80. package/packages/fokus-components/scss/components/_list-group.scss +26 -0
  81. package/packages/fokus-components/scss/components/_modal.scss +36 -0
  82. package/packages/fokus-components/scss/components/_navbar.scss +48 -0
  83. package/packages/fokus-components/scss/components/_offcanvas.scss +19 -0
  84. package/packages/fokus-components/scss/components/_pagination.scss +10 -0
  85. package/packages/fokus-components/scss/components/_placeholder.scss +13 -0
  86. package/packages/fokus-components/scss/components/_progress.scss +8 -0
  87. package/packages/fokus-components/scss/components/_ratio.scss +10 -0
  88. package/packages/fokus-components/scss/components/_scrollspy.scss +5 -0
  89. package/packages/fokus-components/scss/components/_skeleton.scss +19 -0
  90. package/packages/fokus-components/scss/components/_spinner.scss +9 -53
  91. package/packages/fokus-components/scss/components/_tables.scss +20 -0
  92. package/packages/fokus-components/scss/forms/_forms.scss +29 -0
  93. package/packages/fokus-core/scss/base/_accessibility.scss +45 -0
  94. package/packages/fokus-core/scss/base/_index.scss +1 -0
  95. package/packages/fokus-core/scss/layout/_grid.scss +18 -0
  96. package/packages/fokus-core/scss/settings/_config.scss +43 -0
  97. package/packages/fokus-core/scss/settings/_index.scss +1 -0
  98. package/packages/fokus-core/scss/themes/_dark.scss +38 -2
  99. package/packages/fokus-core/scss/tokens/_root.scss +14 -0
  100. package/packages/fokus-core/scss/tools/_mixins.scss +8 -0
  101. package/packages/fokus-js/js/accordion.js +7 -1
  102. package/packages/fokus-js/js/core/focus.js +20 -0
  103. package/packages/fokus-js/js/core/overlay.d.ts +2 -0
  104. package/packages/fokus-js/js/core/overlay.js +10 -0
  105. package/packages/fokus-js/js/core/register.js +4 -2
  106. package/packages/fokus-js/js/focus-trap.d.ts +3 -0
  107. package/packages/fokus-js/js/focus-trap.js +1 -0
  108. package/packages/fokus-js/js/fokus.d.ts +7 -0
  109. package/packages/fokus-js/js/fokus.js +7 -0
  110. package/packages/fokus-js/js/form-validation.d.ts +7 -0
  111. package/packages/fokus-js/js/form-validation.js +20 -0
  112. package/packages/fokus-js/js/modal.js +16 -2
  113. package/packages/fokus-js/js/navbar.d.ts +10 -0
  114. package/packages/fokus-js/js/navbar.js +27 -0
  115. package/packages/fokus-js/js/offcanvas.d.ts +4 -0
  116. package/packages/fokus-js/js/offcanvas.js +16 -2
  117. package/packages/fokus-js/js/pagination.d.ts +7 -0
  118. package/packages/fokus-js/js/pagination.js +38 -0
  119. package/packages/fokus-js/js/scrollspy.d.ts +7 -0
  120. package/packages/fokus-js/js/scrollspy.js +26 -0
  121. package/packages/fokus-js/js/spinner.d.ts +9 -0
  122. package/packages/fokus-js/js/spinner.js +18 -0
  123. package/packages/fokus-js/js/theme.d.ts +9 -0
  124. package/packages/fokus-js/js/theme.js +19 -0
  125. package/packages/fokus-js/js/toast.js +4 -0
  126. package/packages/fokus-utilities/scss/utilities/_api.scss +48 -0
  127. package/packages/fokus-utilities/scss/utilities/_index.scss +2 -0
  128. package/packages/fokus-utilities/scss/utilities/_states.scss +19 -0
  129. package/packages/fokus-utilities/scss/utilities/_visibility.scss +24 -0
  130. package/scss/entries/core-entry.scss +5 -0
  131. package/scss/entries/dark-entry.scss +3 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../scss/fokus.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/tokens/_root.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/tokens/_semantic.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/tokens/_charts.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/base/_reset.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/base/_typography.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/base/_motion.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_cluster.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_containers.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/tools/_mixins.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/settings/_breakpoints.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_grid.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_sidebar.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_stack.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/forms/_forms.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/settings/_typography.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/forms/_check-radio-switch.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/forms/_range.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/forms/_file-upload-advanced.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_buttons.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_cards.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_alerts.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_badges.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tables.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_navbar.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_combobox.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_datepicker.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_datatable.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_command-palette.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tree-view.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_dropdown.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_modal.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_alert-dialog.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_divider.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_empty-state.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_rating.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tag.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_offcanvas.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_accordion.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tabs.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tooltips.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_popover.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_toasts.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_pagination.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_breadcrumbs.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_spinner.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_carousel.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_stepper.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_segmented-control.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_skeleton.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_timeline.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_collapse.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_notification-center.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_nested-menu.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tile.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_container-queries.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_display.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_flex.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_icon.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_position.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_print.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_shadow.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_spacing.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/settings/_spacing.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_typography.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_visibility.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/themes/_brands.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/themes/_dark.scss"],"names":[],"mappings":"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E,cAAA;MACA,qBAAA;IXoYN;IWtYI;MACE,cAAA;MACA,UAAA;IXwYN;IW1YI;MACE,cAAA;MACA,qBAAA;IX4YN;IW9YI;MACE,cAAA;MACA,qBAAA;IXgZN;IWlZI;MACE,cAAA;MACA,WAAA;IXoZN;EACF;ESnbE;IEkBE;MACE,YAAA;IXoaJ;IWjaE;MACE,cAAA;MACA,WAAA;IXmaJ;IW/ZI;MACE,cAAA;MACA,oBAAA;IXiaN;IWnaI;MACE,cAAA;MACA,qBAAA;IXqaN;IWvaI;MACE,cAAA;MACA,UAAA;IXyaN;IW3aI;MACE,cAAA;MACA,qBAAA;IX6aN;IW/aI;MACE,cAAA;MACA,qBAAA;IXibN;IWnbI;MACE,cAAA;MACA,UAAA;IXqbN;IWvbI;MACE,cAAA;MACA,qBAAA;IXybN;IW3bI;MACE,cAAA;MACA,qBAAA;IX6bN;IW/bI;MACE,cAAA;MACA,UAAA;IXicN;IWncI;MACE,cAAA;MACA,qBAAA;IXqcN;IWvcI;MACE,cAAA;MACA,qBAAA;IXycN;IW3cI;MACE,cAAA;MACA,WAAA;IX6cN;EACF;ES5eE;IEkBE;MACE,YAAA;IX6dJ;IW1dE;MACE,cAAA;MACA,WAAA;IX4dJ;IWxdI;MACE,cAAA;MACA,oBAAA;IX0dN;IW5dI;MACE,cAAA;MACA,qBAAA;IX8dN;IWheI;MACE,cAAA;MACA,UAAA;IXkeN;IWpeI;MACE,cAAA;MACA,qBAAA;IXseN;IWxeI;MACE,cAAA;MACA,qBAAA;IX0eN;IW5eI;MACE,cAAA;MACA,UAAA;IX8eN;IWhfI;MACE,cAAA;MACA,qBAAA;IXkfN;IWpfI;MACE,cAAA;MACA,qBAAA;IXsfN;IWxfI;MACE,cAAA;MACA,UAAA;IX0fN;IW5fI;MACE,cAAA;MACA,qBAAA;IX8fN;IWhgBI;MACE,cAAA;MACA,qBAAA;IXkgBN;IWpgBI;MACE,cAAA;MACA,WAAA;IXsgBN;EACF;ESriBE;IEkBE;MACE,YAAA;IXshBJ;IWnhBE;MACE,cAAA;MACA,WAAA;IXqhBJ;IWjhBI;MACE,cAAA;MACA,oBAAA;IXmhBN;IWrhBI;MACE,cAAA;MACA,qBAAA;IXuhBN;IWzhBI;MACE,cAAA;MACA,UAAA;IX2hBN;IW7hBI;MACE,cAAA;MACA,qBAAA;IX+hBN;IWjiBI;MACE,cAAA;MACA,qBAAA;IXmiBN;IWriBI;MACE,cAAA;MACA,UAAA;IXuiBN;IWziBI;MACE,cAAA;MACA,qBAAA;IX2iBN;IW7iBI;MACE,cAAA;MACA,qBAAA;IX+iBN;IWjjBI;MACE,cAAA;MACA,UAAA;IXmjBN;IWrjBI;MACE,cAAA;MACA,qBAAA;IXujBN;IWzjBI;MACE,cAAA;MACA,qBAAA;IX2jBN;IW7jBI;MACE,cAAA;MACA,WAAA;IX+jBN;EACF;ES9lBE;IEkBE;MACE,YAAA;IX+kBJ;IW5kBE;MACE,cAAA;MACA,WAAA;IX8kBJ;IW1kBI;MACE,cAAA;MACA,oBAAA;IX4kBN;IW9kBI;MACE,cAAA;MACA,qBAAA;IXglBN;IWllBI;MACE,cAAA;MACA,UAAA;IXolBN;IWtlBI;MACE,cAAA;MACA,qBAAA;IXwlBN;IW1lBI;MACE,cAAA;MACA,qBAAA;IX4lBN;IW9lBI;MACE,cAAA;MACA,UAAA;IXgmBN;IWlmBI;MACE,cAAA;MACA,qBAAA;IXomBN;IWtmBI;MACE,cAAA;MACA,qBAAA;IXwmBN;IW1mBI;MACE,cAAA;MACA,UAAA;IX4mBN;IW9mBI;MACE,cAAA;MACA,qBAAA;IXgnBN;IWlnBI;MACE,cAAA;MACA,qBAAA;IXonBN;IWtnBI;MACE,cAAA;MACA,WAAA;IXwnBN;EACF;ESvpBE;IEkBE;MACE,YAAA;IXwoBJ;IWroBE;MACE,cAAA;MACA,WAAA;IXuoBJ;IWnoBI;MACE,cAAA;MACA,oBAAA;IXqoBN;IWvoBI;MACE,cAAA;MACA,qBAAA;IXyoBN;IW3oBI;MACE,cAAA;MACA,UAAA;IX6oBN;IW/oBI;MACE,cAAA;MACA,qBAAA;IXipBN;IWnpBI;MACE,cAAA;MACA,qBAAA;IXqpBN;IWvpBI;MACE,cAAA;MACA,UAAA;IXypBN;IW3pBI;MACE,cAAA;MACA,qBAAA;IX6pBN;IW/pBI;MACE,cAAA;MACA,qBAAA;IXiqBN;IWnqBI;MACE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A;IzDsqJJ;IyDnqJE;MACE,oBAAA;IzDqqJJ;EACF;ESxsJE;IgDPE;MACE,uBAAA;IzDktJJ;IyD/sJE;MACE,mBAAA;IzDitJJ;IyD9sJE;MACE,qBAAA;IzDgtJJ;IyD7sJE;MACE,2BAAA;IzD+sJJ;IyD5sJE;MACE,uBAAA;IzD8sJJ;IyD3sJE;MACE,yBAAA;IzD6sJJ;IyD1sJE;MACE,6BAAA;IzD4sJJ;IyDzsJE;MACE,8BAAA;IzD2sJJ;IyDxsJE;MACE,sBAAA;IzD0sJJ;IyDvsJE;MACE,kBAAA;IzDysJJ;IyDtsJE;MACE,oBAAA;IzDwsJJ;EACF;ES3uJE;IgDPE;MACE,uBAAA;IzDqvJJ;IyDlvJE;MACE,mBAAA;IzDovJJ;IyDjvJE;MACE,qBAAA;IzDmvJJ;IyDhvJE;MACE,2BAAA;IzDkvJJ;IyD/uJE;MACE,uBAAA;IzDivJJ;IyD9uJE;MACE,yBAAA;IzDgvJJ;IyD7uJE;MACE,6BAAA;IzD+uJJ;IyD5uJE;MACE,8BAAA;IzD8uJJ;IyD3uJE;MACE,sBAAA;IzD6uJJ;IyD1uJE;MACE,kBAAA;IzD4uJJ;IyDzuJE;MACE,oBAAA;IzD2uJJ;EACF;ES9wJE;IgDPE;MACE,uBAAA;IzDwxJJ;IyDrxJE;MACE,mBAAA;IzDuxJJ;IyDpxJE;MACE,qBAAA;IzDsxJJ;IyDnxJE;MACE,2BAAA;IzDqxJJ;IyDlxJE;MACE,uBAAA;IzDoxJJ;IyDjxJE;MACE,yBAAA;IzDmxJJ;IyDhxJE;MACE,6BAAA;IzDkxJJ;IyD/wJE;MACE,8BAAA;IzDixJJ;IyD9wJE;MACE,sBAAA;IzDgxJJ;IyD7wJE;MACE,kBAAA;IzD+wJJ;IyD5wJE;MACE,oBAAA;IzD8wJJ;EACF;ESjzJE;IgDPE;MACE,uBAAA;IzD2zJJ;IyDxzJE;MACE,mBAAA;IzD0zJJ;IyDvzJE;MACE,qBAAA;IzDyzJJ;IyDtzJE;MACE,2BAAA;IzDwzJJ;IyDrzJE;MACE,uBAAA;IzDuzJJ;IyDpzJE;MACE,yBAAA;IzDszJJ;IyDnzJE;MACE,6BAAA;IzDqzJJ;IyDlzJE;MACE,8BAAA;IzDozJJ;IyDjzJE;MACE,sBAAA;IzDmzJJ;IyDhzJE;MACE,kBAAA;IzDkzJJ;IyD/yJE;MACE,oBAAA;IzDizJJ;EACF;AACF;A0D31JA;EACE;IACE,qBAAA;IACA,cAAA;IACA,UAAA;IACA,WAAA;IACA,wBAAA;IACA,oBAAA;E1D61JF;E0D11JA;IACE,WAAA;IACA,YAAA;E1D41JF;E0Dz1JA;IACE,WAAA;IACA,YAAA;E1D21JF;E0Dx1JA;IACE,WAAA;IACA,YAAA;E1D01JF;E0Dv1JA;IACE,WAAA;IACA,YAAA;E1Dy1JF;AACF;A2D33JA;EACE;IACE,gBAAA;IACA,4BAAA;IACA,aAAA;E3D63JF;E2D13JA;IACE,gBAAA;IACA,kCAAA;IACA,aAAA;E3D43JF;AACF;A4D14JA;EACE;IACE;MACE,wBAAA;I5D44JF;EACF;E4Dz4JA;IACE;MACE,wBAAA;I5D24JF;EACF;E4Dx4JA;IACE;MACE,yBAAA;I5D04JF;I4Dv4JA;MACE,0BAAA;I5Dy4JF;I4Dt4JA;MACE,gCAAA;I5Dw4JF;EACF;AACF;A6Dj6JA;EACE;IACE,+BAAA;E7Dm6JF;E6Dh6JA;IACE,+BAAA;E7Dk6JF;E6D/5JA;IACE,+BAAA;E7Di6JF;AACF;A8Dz6JA;EAMQ;IACE,SCVA;E/Dg7JR;E8Dn6JM;IACE,aCdA;E/Dm7JR;E8Dl6JM;IACE,eClBA;E/Ds7JR;E8Dj6JM;IACE,gBCtBA;E/Dy7JR;E8Dh6JM;IACE,cC1BA;E/D47JR;E8D/5JM;IACE,eC9BA;ID+BA,cC/BA;E/Dg8JR;E8D95JM;IACE,aCnCA;IDoCA,gBCpCA;E/Do8JR;E8D75JM;IACE,UCxCA;E/Du8JR;E8D55JM;IACE,cC5CA;E/D08JR;E8D35JM;IACE,gBChDA;E/D68JR;E8D15JM;IACE,iBCpDA;E/Dg9JR;E8Dz5JM;IACE,eCxDA;E/Dm9JR;E8Dx5JM;IACE,gBC5DA;ID6DA,eC7DA;E/Du9JR;E8Dv5JM;IACE,cCjEA;IDkEA,iBClEA;E/D29JR;E8Dr5JM;IACE,gBAAA;IACA,gBAAA;E9Du5JR;E8Dp5JM;IACE,gBAAA;E9Ds5JR;E8Dn5JM;IACE,gBAAA;E9Dq5JR;E8Dj5JM;IACE,MCrFA;E/Dw+JR;E8Dh5JM;IACE,aCzFA;E/D2+JR;E8D/4JM;IACE,UC7FA;E/D8+JR;E8Dr+JM;IACE,eCVA;E/Di/JR;E8Dp+JM;IACE,mBCdA;E/Do/JR;E8Dn+JM;IACE,qBClBA;E/Du/JR;E8Dl+JM;IACE,sBCtBA;E/D0/JR;E8Dj+JM;IACE,oBC1BA;E/D6/JR;E8Dh+JM;IACE,qBC9BA;ID+BA,oBC/BA;E/DigKR;E8D/9JM;IACE,mBCnCA;IDoCA,sBCpCA;E/DqgKR;E8D99JM;IACE,gBCxCA;E/DwgKR;E8D79JM;IACE,oBC5CA;E/D2gKR;E8D59JM;IACE,sBChDA;E/D8gKR;E8D39JM;IACE,uBCpDA;E/DihKR;E8D19JM;IACE,qBCxDA;E/DohKR;E8Dz9JM;IACE,sBC5DA;ID6DA,qBC7DA;E/DwhKR;E8Dx9JM;IACE,oBCjEA;IDkEA,uBClEA;E/D4hKR;E8Dt9JM;IACE,sBAAA;IACA,sBAAA;E9Dw9JR;E8Dr9JM;IACE,sBAAA;E9Du9JR;E8Dp9JM;IACE,sBAAA;E9Ds9JR;E8Dl9JM;IACE,YCrFA;E/DyiKR;E8Dj9JM;IACE,mBCzFA;E/D4iKR;E8Dh9JM;IACE,gBC7FA;E/D+iKR;E8DtiKM;IACE,cCVA;E/DkjKR;E8DriKM;IACE,kBCdA;E/DqjKR;E8DpiKM;IACE,oBClBA;E/DwjKR;E8DniKM;IACE,qBCtBA;E/D2jKR;E8DliKM;IACE,mBC1BA;E/D8jKR;E8DjiKM;IACE,oBC9BA;ID+BA,mBC/BA;E/DkkKR;E8DhiKM;IACE,kBCnCA;IDoCA,qBCpCA;E/DskKR;E8D/hKM;IACE,eCxCA;E/DykKR;E8D9hKM;IACE,mBC5CA;E/D4kKR;E8D7hKM;IACE,qBChDA;E/D+kKR;E8D5hKM;IACE,sBCpDA;E/DklKR;E8D3hKM;IACE,oBCxDA;E/DqlKR;E8D1hKM;IACE,qBC5DA;ID6DA,oBC7DA;E/DylKR;E8DzhKM;IACE,mBCjEA;IDkEA,sBClEA;E/D6lKR;E8DvhKM;IACE,qBAAA;IACA,qBAAA;E9DyhKR;E8DthKM;IACE,qBAAA;E9DwhKR;E8DrhKM;IACE,qBAAA;E9DuhKR;E8DnhKM;IACE,WCrFA;E/D0mKR;E8DlhKM;IACE,kBCzFA;E/D6mKR;E8DjhKM;IACE,eC7FA;E/DgnKR;E8DvmKM;IACE,YCVA;E/DmnKR;E8DtmKM;IACE,gBCdA;E/DsnKR;E8DrmKM;IACE,kBClBA;E/DynKR;E8DpmKM;IACE,mBCtBA;E/D4nKR;E8DnmKM;IACE,iBC1BA;E/D+nKR;E8DlmKM;IACE,kBC9BA;ID+BA,iBC/BA;E/DmoKR;E8DjmKM;IACE,gBCnCA;IDoCA,mBCpCA;E/DuoKR;E8DhmKM;IACE,aCxCA;E/D0oKR;E8D/lKM;IACE,iBC5CA;E/D6oKR;E8D9lKM;IACE,mBChDA;E/DgpKR;E8D7lKM;IACE,oBCpDA;E/DmpKR;E8D5lKM;IACE,kBCxDA;E/DspKR;E8D3lKM;IACE,mBC5DA;ID6DA,kBC7DA;E/D0pKR;E8D1lKM;IACE,iBCjEA;IDkEA,oBClEA;E/D8pKR;E8DxlKM;IACE,mBAAA;IACA,mBAAA;E9D0lKR;E8DvlKM;IACE,mBAAA;E9DylKR;E8DtlKM;IACE,mBAAA;E9DwlKR;E8DplKM;IACE,SCrFA;E/D2qKR;E8DnlKM;IACE,gBCzFA;E/D8qKR;E8DllKM;IACE,aC7FA;E/DirKR;E8DxqKM;IACE,cCVA;E/DorKR;E8DvqKM;IACE,kBCdA;E/DurKR;E8DtqKM;IACE,oBClBA;E/D0rKR;E8DrqKM;IACE,qBCtBA;E/D6rKR;E8DpqKM;IACE,mBC1BA;E/DgsKR;E8DnqKM;IACE,oBC9BA;ID+BA,mBC/BA;E/DosKR;E8DlqKM;IACE,kBCnCA;IDoCA,qBCpCA;E/DwsKR;E8DjqKM;IACE,eCxCA;E/D2sKR;E8DhqKM;IACE,mBC5CA;E/D8sKR;E8D/pKM;IACE,qBChDA;E/DitKR;E8D9pKM;IACE,sBCpDA;E/DotKR;E8D7pKM;IACE,oBCxDA;E/DutKR;E8D5pKM;IACE,qBC5DA;ID6DA,oBC7DA;E/D2tKR;E8D3pKM;IACE,mBCjEA;IDkEA,sBClEA;E/D+tKR;E8DzpKM;IACE,qBAAA;IACA,qBAAA;E9D2pKR;E8DxpKM;IACE,qBAAA;E9D0pKR;E8DvpKM;IACE,qBAAA;E9DypKR;E8DrpKM;IACE,WCrFA;E/D4uKR;E8DppKM;IACE,kBCzFA;E/D+uKR;E8DnpKM;IACE,eC7FA;E/DkvKR;E8DzuKM;IACE,YCVA;E/DqvKR;E8DxuKM;IACE,gBCdA;E/DwvKR;E8DvuKM;IACE,kBClBA;E/D2vKR;E8DtuKM;IACE,mBCtBA;E/D8vKR;E8DruKM;IACE,iBC1BA;E/DiwKR;E8DpuKM;IACE,kBC9BA;ID+BA,iBC/BA;E/DqwKR;E8DnuKM;IACE,gBCnCA;IDoCA,mBCpCA;E/DywKR;E8DluKM;IACE,aCxCA;E/D4wKR;E8DjuKM;IACE,iBC5CA;E/D+wKR;E8DhuKM;IACE,mBChDA;E/DkxKR;E8D/tKM;IACE,oBCpDA;E/DqxKR;E8D9tKM;IACE,kBCxDA;E/DwxKR;E8D7tKM;IACE,mBC5DA;ID6DA,kBC7DA;E/D4xKR;E8D5tKM;IACE,iBCjEA;IDkEA,oBClEA;E/DgyKR;E8D1tKM;IACE,mBAAA;IACA,mBAAA;E9D4tKR;E8DztKM;IACE,mBAAA;E9D2tKR;E8DxtKM;IACE,mBAAA;E9D0tKR;E8DttKM;IACE,SCrFA;E/D6yKR;E8DrtKM;IACE,gBCzFA;E/DgzKR;E8DptKM;IACE,aC7FA;E/DmzKR;E8DltKI;IACE,YAAA;E9DotKN;E8DjtKI;IACE,gBAAA;E9DmtKN;E8DhtKI;IACE,kBAAA;E9DktKN;E8D/sKI;IACE,mBAAA;E9DitKN;E8D9sKI;IACE,iBAAA;E9DgtKN;E8D7sKI;IACE,kBAAA;IACA,iBAAA;E9D+sKN;E8D5sKI;IACE,gBAAA;IACA,mBAAA;E9D8sKN;ES3zKE;IqDNI;MACE,SCVA;I/D80KN;I8Dj0KI;MACE,aCdA;I/Di1KN;I8Dh0KI;MACE,eClBA;I/Do1KN;I8D/zKI;MACE,gBCtBA;I/Du1KN;I8D9zKI;MACE,cC1BA;I/D01KN;I8D7zKI;MACE,eC9BA;MD+BA,cC/BA;I/D81KN;I8D5zKI;MACE,aCnCA;MDoCA,gBCpCA;I/Dk2KN;I8D3zKI;MACE,UCxCA;I/Dq2KN;I8D1zKI;MACE,cC5CA;I/Dw2KN;I8DzzKI;MACE,gBChDA;I/D22KN;I8DxzKI;MACE,iBCpDA;I/D82KN;I8DvzKI;MACE,eCxDA;I/Di3KN;I8DtzKI;MACE,gBC5DA;MD6DA,eC7DA;I/Dq3KN;I8DrzKI;MACE,cCjEA;MDkEA,iBClEA;I/Dy3KN;I8DnzKI;MACE,gBAAA;MACA,gBAAA;I9DqzKN;I8DlzKI;MACE,gBAAA;I9DozKN;I8DjzKI;MACE,gBAAA;I9DmzKN;I8D/yKI;MACE,MCrFA;I/Ds4KN;I8D9yKI;MACE,aCzFA;I/Dy4KN;I8D7yKI;MACE,UC7FA;I/D44KN;I8Dn4KI;MACE,eCVA;I/D+4KN;I8Dl4KI;MACE,mBCdA;I/Dk5KN;I8Dj4KI;MACE,qBClBA;I/Dq5KN;I8Dh4KI;MACE,sBCtBA;I/Dw5KN;I8D/3KI;MACE,oBC1BA;I/D25KN;I8D93KI;MACE,qBC9BA;MD+BA,oBC/BA;I/D+5KN;I8D73KI;MACE,mBCnCA;MDoCA,sBCpCA;I/Dm6KN;I8D53KI;MACE,gBCxCA;I/Ds6KN;I8D33KI;MACE,oBC5CA;I/Dy6KN;I8D13KI;MACE,sBChDA;I/D46KN;I8Dz3KI;MACE,uBCpDA;I/D+6KN;I8Dx3KI;MACE,qBCxDA;I/Dk7KN;I8Dv3KI;MACE,sBC5DA;MD6DA,qBC7DA;I/Ds7KN;I8Dt3KI;MACE,oBCjEA;MDkEA,uBClEA;I/D07KN;I8Dp3KI;MACE,sBAAA;MACA,sBAAA;I9Ds3KN;I8Dn3KI;MACE,sBAAA;I9Dq3KN;I8Dl3KI;MACE,sBAAA;I9Do3KN;I8Dh3KI;MACE,YCrFA;I/Du8KN;I8D/2KI;MACE,mBCzFA;I/D08KN;I8D92KI;MACE,gBC7FA;I/D68KN;I8Dp8KI;MACE,cCVA;I/Dg9KN;I8Dn8KI;MACE,kBCdA;I/Dm9KN;I8Dl8KI;MACE,oBClBA;I/Ds9KN;I8Dj8KI;MACE,qBCtBA;I/Dy9KN;I8Dh8KI;MACE,mBC1BA;I/D49KN;I8D/7KI;MACE,oBC9BA;MD+BA,mBC/BA;I/Dg+KN;I8D97KI;MACE,kBCnCA;MDoCA,qBCpCA;I/Do+KN;I8D77KI;MACE,eCxCA;I/Du+KN;I8D57KI;MACE,mBC5CA;I/D0+KN;I8D37KI;MACE,qBChDA;I/D6+KN;I8D17KI;MACE,sBCpDA;I/Dg/KN;I8Dz7KI;MACE,oBCxDA;I/Dm/KN;I8Dx7KI;MACE,qBC5DA;MD6DA,oBC7DA;I/Du/KN;I8Dv7KI;MACE,mBCjEA;MDkEA,sBClEA;I/D2/KN;I8Dr7KI;MACE,qBAAA;MACA,qBAAA;I9Du7KN;I8Dp7KI;MACE,qBAAA;I9Ds7KN;I8Dn7KI;MACE,qBAAA;I9Dq7KN;I8Dj7KI;MACE,WCrFA;I/DwgLN;I8Dh7KI;MACE,kBCzFA;I/D2gLN;I8D/6KI;MACE,eC7FA;I/D8gLN;I8DrgLI;MACE,YCVA;I/DihLN;I8DpgLI;MACE,gBCdA;I/DohLN;I8DngLI;MACE,kBClBA;I/DuhLN;I8DlgLI;MACE,mBCtBA;I/D0hLN;I8DjgLI;MACE,iBC1BA;I/D6hLN;I8DhgLI;MACE,kBC9BA;MD+BA,iBC/BA;I/DiiLN;I8D//KI;MACE,gBCnCA;MDoCA,mBCpCA;I/DqiLN;I8D9/KI;MACE,aCxCA;I/DwiLN;I8D7/KI;MACE,iBC5CA;I/D2iLN;I8D5/KI;MACE,mBChDA;I/D8iLN;I8D3/KI;MACE,oBCpDA;I/DijLN;I8D1/KI;MACE,kBCxDA;I/DojLN;I8Dz/KI;MACE,mBC5DA;MD6DA,kBC7DA;I/DwjLN;I8Dx/KI;MACE,iBCjEA;MDkEA,oBClEA;I/D4jLN;I8Dt/KI;MACE,mBAAA;MACA,mBAAA;I9Dw/KN;I8Dr/KI;MACE,mBAAA;I9Du/KN;I8Dp/KI;MACE,mBAAA;I9Ds/KN;I8Dl/KI;MACE,SCrFA;I/DykLN;I8Dj/KI;MACE,gBCzFA;I/D4kLN;I8Dh/KI;MACE,aC7FA;I/D+kLN;I8DtkLI;MACE,cCVA;I/DklLN;I8DrkLI;MACE,kBCdA;I/DqlLN;I8DpkLI;MACE,oBClBA;I/DwlLN;I8DnkLI;MACE,qBCtBA;I/D2lLN;I8DlkLI;MACE,mBC1BA;I/D8lLN;I8DjkLI;MACE,oBC9BA;MD+BA,mBC/BA;I/DkmLN;I8DhkLI;MACE,kBCnCA;MDoCA,qBCpCA;I/DsmLN;I8D/jLI;MACE,eCxCA;I/DymLN;I8D9jLI;MACE,mBC5CA;I/D4mLN;I8D7jLI;MACE,qBChDA;I/D+mLN;I8D5jLI;MACE,sBCpDA;I/DknLN;I8D3jLI;MACE,oBCxDA;I/DqnLN;I8D1jLI;MACE,qBC5DA;MD6DA,oBC7DA;I/DynLN;I8DzjLI;MACE,mBCjEA;MDkEA,sBClEA;I/D6nLN;I8DvjLI;MACE,qBAAA;MACA,qBAAA;I9DyjLN;I8DtjLI;MACE,qBAAA;I9DwjLN;I8DrjLI;MACE,qBAAA;I9DujLN;I8DnjLI;MACE,WCrFA;I/D0oLN;I8DljLI;MACE,kBCzFA;I/D6oLN;I8DjjLI;MACE,eC7FA;I/DgpLN;I8DvoLI;MACE,YCVA;I/DmpLN;I8DtoLI;MACE,gBCdA;I/DspLN;I8DroLI;MACE,kBClBA;I/DypLN;I8DpoLI;MACE,mBCtBA;I/D4pLN;I8DnoLI;MACE,iBC1BA;I/D+pLN;I8DloLI;MACE,kBC9BA;MD+BA,iBC/BA;I/DmqLN;I8DjoLI;MACE,gBCnCA;MDoCA,mBCpCA;I/DuqLN;I8DhoLI;MACE,aCxCA;I/D0qLN;I8D/nLI;MACE,iBC5CA;I/D6qLN;I8D9nLI;MACE,mBChDA;I/DgrLN;I8D7nLI;MACE,oBCpDA;I/DmrLN;I8D5nLI;MACE,kBCxDA;I/DsrLN;I8D3nLI;MACE,mBC5DA;MD6DA,kBC7DA;I/D0rLN;I8D1nLI;MACE,iBCjEA;MDkEA,oBClEA;I/D8rLN;I8DxnLI;MACE,mBAAA;MACA,mBAAA;I9D0nLN;I8DvnLI;MACE,mBAAA;I9DynLN;I8DtnLI;MACE,mBAAA;I9DwnLN;I8DpnLI;MACE,SCrFA;I/D2sLN;I8DnnLI;MACE,gBCzFA;I/D8sLN;I8DlnLI;MACE,aC7FA;I/DitLN;I8DhnLE;MACE,YAAA;I9DknLJ;I8D/mLE;MACE,gBAAA;I9DinLJ;I8D9mLE;MACE,kBAAA;I9DgnLJ;I8D7mLE;MACE,mBAAA;I9D+mLJ;I8D5mLE;MACE,iBAAA;I9D8mLJ;I8D3mLE;MACE,kBAAA;MACA,iBAAA;I9D6mLJ;I8D1mLE;MACE,gBAAA;MACA,mBAAA;I9D4mLJ;EACF;ES1tLE;IqDNI;MACE,SCVA;I/D6uLN;I8DhuLI;MACE,aCdA;I/DgvLN;I8D/tLI;MACE,eClBA;I/DmvLN;I8D9tLI;MACE,gBCtBA;I/DsvLN;I8D7tLI;MACE,cC1BA;I/DyvLN;I8D5tLI;MACE,eC9BA;MD+BA,cC/BA;I/D6vLN;I8D3tLI;MACE,aCnCA;MDoCA,gBCpCA;I/DiwLN;I8D1tLI;MACE,UCxCA;I/DowLN;I8DztLI;MACE,cC5CA;I/DuwLN;I8DxtLI;MACE,gBChDA;I/D0wLN;I8DvtLI;MACE,iBCpDA;I/D6wLN;I8DttLI;MACE,eCxDA;I/DgxLN;I8DrtLI;MACE,gBC5DA;MD6DA,eC7DA;I/DoxLN;I8DptLI;MACE,cCjEA;MDkEA,iBClEA;I/DwxLN;I8DltLI;MACE,gBAAA;MACA,gBAAA;I9DotLN;I8DjtLI;MACE,gBAAA;I9DmtLN;I8DhtLI;MACE,gBAAA;I9DktLN;I8D9sLI;MACE,MCrFA;I/DqyLN;I8D7sLI;MACE,aCzFA;I/DwyLN;I8D5sLI;MACE,UC7FA;I/D2yLN;I8DlyLI;MACE,eCVA;I/D8yLN;I8DjyLI;MACE,mBCdA;I/DizLN;I8DhyLI;MACE,qBClBA;I/DozLN;I8D/xLI;MACE,sBCtBA;I/DuzLN;I8D9xLI;MACE,oBC1BA;I/D0zLN;I8D7xLI;MACE,qBC9BA;MD+BA,oBC/BA;I/D8zLN;I8D5xLI;MACE,mBCnCA;MDoCA,sBCpCA;I/Dk0LN;I8D3xLI;MACE,gBCxCA;I/Dq0LN;I8D1xLI;MACE,oBC5CA;I/Dw0LN;I8DzxLI;MACE,sBChDA;I/D20LN;I8DxxLI;MACE,uBCpDA;I/D80LN;I8DvxLI;MACE,qBCxDA;I/Di1LN;I8DtxLI;MACE,sBC5DA;MD6DA,qBC7DA;I/Dq1LN;I8DrxLI;MACE,oBCjEA;MDkEA,uBClEA;I/Dy1LN;I8DnxLI;MACE,sBAAA;MACA,sBAAA;I9DqxLN;I8DlxLI;MACE,sBAAA;I9DoxLN;I8DjxLI;MACE,sBAAA;I9DmxLN;I8D/wLI;MACE,YCrFA;I/Ds2LN;I8D9wLI;MACE,mBCzFA;I/Dy2LN;I8D7wLI;MACE,gBC7FA;I/D42LN;I8Dn2LI;MACE,cCVA;I/D+2LN;I8Dl2LI;MACE,kBCdA;I/Dk3LN;I8Dj2LI;MACE,oBClBA;I/Dq3LN;I8Dh2LI;MACE,qBCtBA;I/Dw3LN;I8D/1LI;MACE,mBC1BA;I/D23LN;I8D91LI;MACE,oBC9BA;MD+BA,mBC/BA;I/D+3LN;I8D71LI;MACE,kBCnCA;MDoCA,qBCpCA;I/Dm4LN;I8D51LI;MACE,eCxCA;I/Ds4LN;I8D31LI;MACE,mBC5CA;I/Dy4LN;I8D11LI;MACE,qBChDA;I/D44LN;I8Dz1LI;MACE,sBCpDA;I/D+4LN;I8Dx1LI;MACE,oBCxDA;I/Dk5LN;I8Dv1LI;MACE,qBC5DA;MD6DA,oBC7DA;I/Ds5LN;I8Dt1LI;MACE,mBCjEA;MDkEA,sBClEA;I/D05LN;I8Dp1LI;MACE,qBAAA;MACA,qBAAA;I9Ds1LN;I8Dn1LI;MACE,qBAAA;I9Dq1LN;I8Dl1LI;MACE,qBAAA;I9Do1LN;I8Dh1LI;MACE,WCrFA;I/Du6LN;I8D/0LI;MACE,kBCzFA;I/D06LN;I8D90LI;MACE,eC7FA;I/D66LN;I8Dp6LI;MACE,YCVA;I/Dg7LN;I8Dn6LI;MACE,gBCdA;I/Dm7LN;I8Dl6LI;MACE,kBClBA;I/Ds7LN;I8Dj6LI;MACE,mBCtBA;I/Dy7LN;I8Dh6LI;MACE,iBC1BA;I/D47LN;I8D/5LI;MACE,kBC9BA;MD+BA,iBC/BA;I/Dg8LN;I8D95LI;MACE,gBCnCA;MDoCA,mBCpCA;I/Do8LN;I8D75LI;MACE,aCxCA;I/Du8LN;I8D55LI;MACE,iBC5CA;I/D08LN;I8D35LI;MACE,mBChDA;I/D68LN;I8D15LI;MACE,oBCpDA;I/Dg9LN;I8Dz5LI;MACE,kBCxDA;I/Dm9LN;I8Dx5LI;MACE,mBC5DA;MD6DA,kBC7DA;I/Du9LN;I8Dv5LI;MACE,iBCjEA;MDkEA,oBClEA;I/D29LN;I8Dr5LI;MACE,mBAAA;MACA,mBAAA;I9Du5LN;I8Dp5LI;MACE,mBAAA;I9Ds5LN;I8Dn5LI;MACE,mBAAA;I9Dq5LN;I8Dj5LI;MACE,SCrFA;I/Dw+LN;I8Dh5LI;MACE,gBCzFA;I/D2+LN;I8D/4LI;MACE,aC7FA;I/D8+LN;I8Dr+LI;MACE,cCVA;I/Di/LN;I8Dp+LI;MACE,kBCdA;I/Do/LN;I8Dn+LI;MACE,oBClBA;I/Du/LN;I8Dl+LI;MACE,qBCtBA;I/D0/LN;I8Dj+LI;MACE,mBC1BA;I/D6/LN;I8Dh+LI;MACE,oBC9BA;MD+BA,mBC/BA;I/DigMN;I8D/9LI;MACE,kBCnCA;MDoCA,qBCpCA;I/DqgMN;I8D99LI;MACE,eCxCA;I/DwgMN;I8D79LI;MACE,mBC5CA;I/D2gMN;I8D59LI;MACE,qBChDA;I/D8gMN;I8D39LI;MACE,sBCpDA;I/DihMN;I8D19LI;MACE,oBCxDA;I/DohMN;I8Dz9LI;MACE,qBC5DA;MD6DA,oBC7DA;I/DwhMN;I8Dx9LI;MACE,mBCjEA;MDkEA,sBClEA;I/D4hMN;I8Dt9LI;MACE,qBAAA;MACA,qBAAA;I9Dw9LN;I8Dr9LI;MACE,qBAAA;I9Du9LN;I8Dp9LI;MACE,qBAAA;I9Ds9LN;I8Dl9LI;MACE,WCrFA;I/DyiMN;I8Dj9LI;MACE,kBCzFA;I/D4iMN;I8Dh9LI;MACE,eC7FA;I/D+iMN;I8DtiMI;MACE,YCVA;I/DkjMN;I8DriMI;MACE,gBCdA;I/DqjMN;I8DpiMI;MACE,kBClBA;I/DwjMN;I8DniMI;MACE,mBCtBA;I/D2jMN;I8DliMI;MACE,iBC1BA;I/D8jMN;I8DjiMI;MACE,kBC9BA;MD+BA,iBC/BA;I/DkkMN;I8DhiMI;MACE,gBCnCA;MDoCA,mBCpCA;I/DskMN;I8D/hMI;MACE,aCxCA;I/DykMN;I8D9hMI;MACE,iBC5CA;I/D4kMN;I8D7hMI;MACE,mBChDA;I/D+kMN;I8D5hMI;MACE,oBCpDA;I/DklMN;I8D3hMI;MACE,kBCxDA;I/DqlMN;I8D1hMI;MACE,mBC5DA;MD6DA,kBC7DA;I/DylMN;I8DzhMI;MACE,iBCjEA;MDkEA,oBClEA;I/D6lMN;I8DvhMI;MACE,mBAAA;MACA,mBAAA;I9DyhMN;I8DthMI;MACE,mBAAA;I9DwhMN;I8DrhMI;MACE,mBAAA;I9DuhMN;I8DnhMI;MACE,SCrFA;I/D0mMN;I8DlhMI;MACE,gBCzFA;I/D6mMN;I8DjhMI;MACE,aC7FA;I/DgnMN;I8D/gME;MACE,YAAA;I9DihMJ;I8D9gME;MACE,gBAAA;I9DghMJ;I8D7gME;MACE,kBAAA;I9D+gMJ;I8D5gME;MACE,mBAAA;I9D8gMJ;I8D3gME;MACE,iBAAA;I9D6gMJ;I8D1gME;MACE,kBAAA;MACA,iBAAA;I9D4gMJ;I8DzgME;MACE,gBAAA;MACA,mBAAA;I9D2gMJ;EACF;ESznME;IqDNI;MACE,SCVA;I/D4oMN;I8D/nMI;MACE,aCdA;I/D+oMN;I8D9nMI;MACE,eClBA;I/DkpMN;I8D7nMI;MACE,gBCtBA;I/DqpMN;I8D5nMI;MACE,cC1BA;I/DwpMN;I8D3nMI;MACE,eC9BA;MD+BA,cC/BA;I/D4pMN;I8D1nMI;MACE,aCnCA;MDoCA,gBCpCA;I/DgqMN;I8DznMI;MACE,UCxCA;I/DmqMN;I8DxnMI;MACE,cC5CA;I/DsqMN;I8DvnMI;MACE,gBChDA;I/DyqMN;I8DtnMI;MACE,iBCpDA;I/D4qMN;I8DrnMI;MACE,eCxDA;I/D+qMN;I8DpnMI;MACE,gBC5DA;MD6DA,eC7DA;I/DmrMN;I8DnnMI;MACE,cCjEA;MDkEA,iBClEA;I/DurMN;I8DjnMI;MACE,gBAAA;MACA,gBAAA;I9DmnMN;I8DhnMI;MACE,gBAAA;I9DknMN;I8D/mMI;MACE,gBAAA;I9DinMN;I8D7mMI;MACE,MCrFA;I/DosMN;I8D5mMI;MACE,aCzFA;I/DusMN;I8D3mMI;MACE,UC7FA;I/D0sMN;I8DjsMI;MACE,eCVA;I/D6sMN;I8DhsMI;MACE,mBCdA;I/DgtMN;I8D/rMI;MACE,qBClBA;I/DmtMN;I8D9rMI;MACE,sBCtBA;I/DstMN;I8D7rMI;MACE,oBC1BA;I/DytMN;I8D5rMI;MACE,qBC9BA;MD+BA,oBC/BA;I/D6tMN;I8D3rMI;MACE,mBCnCA;MDoCA,sBCpCA;I/DiuMN;I8D1rMI;MACE,gBCxCA;I/DouMN;I8DzrMI;MACE,oBC5CA;I/DuuMN;I8DxrMI;MACE,sBChDA;I/D0uMN;I8DvrMI;MACE,uBCpDA;I/D6uMN;I8DtrMI;MACE,qBCxDA;I/DgvMN;I8DrrMI;MACE,sBC5DA;MD6DA,qBC7DA;I/DovMN;I8DprMI;MACE,oBCjEA;MDkEA,uBClEA;I/DwvMN;I8DlrMI;MACE,sBAAA;MACA,sBAAA;I9DorMN;I8DjrMI;MACE,sBAAA;I9DmrMN;I8DhrMI;MACE,sBAAA;I9DkrMN;I8D9qMI;MACE,YCrFA;I/DqwMN;I8D7qMI;MACE,mBCzFA;I/DwwMN;I8D5qMI;MACE,gBC7FA;I/D2wMN;I8DlwMI;MACE,cCVA;I/D8wMN;I8DjwMI;MACE,kBCdA;I/DixMN;I8DhwMI;MACE,oBClBA;I/DoxMN;I8D/vMI;MACE,qBCtBA;I/DuxMN;I8D9vMI;MACE,mBC1BA;I/D0xMN;I8D7vMI;MACE,oBC9BA;MD+BA,mBC/BA;I/D8xMN;I8D5vMI;MACE,kBCnCA;MDoCA,qBCpCA;I/DkyMN;I8D3vMI;MACE,eCxCA;I/DqyMN;I8D1vMI;MACE,mBC5CA;I/DwyMN;I8DzvMI;MACE,qBChDA;I/D2yMN;I8DxvMI;MACE,sBCpDA;I/D8yMN;I8DvvMI;MACE,oBCxDA;I/DizMN;I8DtvMI;MACE,qBC5DA;MD6DA,oBC7DA;I/DqzMN;I8DrvMI;MACE,mBCjEA;MDkEA,sBClEA;I/DyzMN;I8DnvMI;MACE,qBAAA;MACA,qBAAA;I9DqvMN;I8DlvMI;MACE,qBAAA;I9DovMN;I8DjvMI;MACE,qBAAA;I9DmvMN;I8D/uMI;MACE,WCrFA;I/Ds0MN;I8D9uMI;MACE,kBCzFA;I/Dy0MN;I8D7uMI;MACE,eC7FA;I/D40MN;I8Dn0MI;MACE,YCVA;I/D+0MN;I8Dl0MI;MACE,gBCdA;I/Dk1MN;I8Dj0MI;MACE,kBClBA;I/Dq1MN;I8Dh0MI;MACE,mBCtBA;I/Dw1MN;I8D/zMI;MACE,iBC1BA;I/D21MN;I8D9zMI;MACE,kBC9BA;MD+BA,iBC/BA;I/D+1MN;I8D7zMI;MACE,gBCnCA;MDoCA,mBCpCA;I/Dm2MN;I8D5zMI;MACE,aCxCA;I/Ds2MN;I8D3zMI;MACE,iBC5CA;I/Dy2MN;I8D1zMI;MACE,mBChDA;I/D42MN;I8DzzMI;MACE,oBCpDA;I/D+2MN;I8DxzMI;MACE,kBCxDA;I/Dk3MN;I8DvzMI;MACE,mBC5DA;MD6DA,kBC7DA;I/Ds3MN;I8DtzMI;MACE,iBCjEA;MDkEA,oBClEA;I/D03MN;I8DpzMI;MACE,mBAAA;MACA,mBAAA;I9DszMN;I8DnzMI;MACE,mBAAA;I9DqzMN;I8DlzMI;MACE,mBAAA;I9DozMN;I8DhzMI;MACE,SCrFA;I/Du4MN;I8D/yMI;MACE,gBCzFA;I/D04MN;I8D9yMI;MACE,aC7FA;I/D64MN;I8Dp4MI;MACE,cCVA;I/Dg5MN;I8Dn4MI;MACE,kBCdA;I/Dm5MN;I8Dl4MI;MACE,oBClBA;I/Ds5MN;I8Dj4MI;MACE,qBCtBA;I/Dy5MN;I8Dh4MI;MACE,mBC1BA;I/D45MN;I8D/3MI;MACE,oBC9BA;MD+BA,mBC/BA;I/Dg6MN;I8D93MI;MACE,kBCnCA;MDoCA,qBCpCA;I/Do6MN;I8D73MI;MACE,eCxCA;I/Du6MN;I8D53MI;MACE,mBC5CA;I/D06MN;I8D33MI;MACE,qBChDA;I/D66MN;I8D13MI;MACE,sBCpDA;I/Dg7MN;I8Dz3MI;MACE,oBCxDA;I/Dm7MN;I8Dx3MI;MACE,qBC5DA;MD6DA,oBC7DA;I/Du7MN;I8Dv3MI;MACE,mBCjEA;MDkEA,sBClEA;I/D27MN;I8Dr3MI;MACE,qBAAA;MACA,qBAAA;I9Du3MN;I8Dp3MI;MACE,qBAAA;I9Ds3MN;I8Dn3MI;MACE,qBAAA;I9Dq3MN;I8Dj3MI;MACE,WCrFA;I/Dw8MN;I8Dh3MI;MACE,kBCzFA;I/D28MN;I8D/2MI;MACE,eC7FA;I/D88MN;I8Dr8MI;MACE,YCVA;I/Di9MN;I8Dp8MI;MACE,gBCdA;I/Do9MN;I8Dn8MI;MACE,kBClBA;I/Du9MN;I8Dl8MI;MACE,mBCtBA;I/D09MN;I8Dj8MI;MACE,iBC1BA;I/D69MN;I8Dh8MI;MACE,kBC9BA;MD+BA,iBC/BA;I/Di+MN;I8D/7MI;MACE,gBCnCA;MDoCA,mBCpCA;I/Dq+MN;I8D97MI;MACE,aCxCA;I/Dw+MN;I8D77MI;MACE,iBC5CA;I/D2+MN;I8D57MI;MACE,mBChDA;I/D8+MN;I8D37MI;MACE,oBCpDA;I/Di/MN;I8D17MI;MACE,kBCxDA;I/Do/MN;I8Dz7MI;MACE,mBC5DA;MD6DA,kBC7DA;I/Dw/MN;I8Dx7MI;MACE,iBCjEA;MDkEA,oBClEA;I/D4/MN;I8Dt7MI;MACE,mBAAA;MACA,mBAAA;I9Dw7MN;I8Dr7MI;MACE,mBAAA;I9Du7MN;I8Dp7MI;MACE,mBAAA;I9Ds7MN;I8Dl7MI;MACE,SCrFA;I/DygNN;I8Dj7MI;MACE,gBCzFA;I/D4gNN;I8Dh7MI;MACE,aC7FA;I/D+gNN;I8D96ME;MACE,YAAA;I9Dg7MJ;I8D76ME;MACE,gBAAA;I9D+6MJ;I8D56ME;MACE,kBAAA;I9D86MJ;I8D36ME;MACE,mBAAA;I9D66MJ;I8D16ME;MACE,iBAAA;I9D46MJ;I8Dz6ME;MACE,kBAAA;MACA,iBAAA;I9D26MJ;I8Dx6ME;MACE,gBAAA;MACA,mBAAA;I9D06MJ;EACF;ESxhNE;IqDNI;MACE,SCVA;I/D2iNN;I8D9hNI;MACE,aCdA;I/D8iNN;I8D7hNI;MACE,eClBA;I/DijNN;I8D5hNI;MACE,gBCtBA;I/DojNN;I8D3hNI;MACE,cC1BA;I/DujNN;I8D1hNI;MACE,eC9BA;MD+BA,cC/BA;I/D2jNN;I8DzhNI;MACE,aCnCA;MDoCA,gBCpCA;I/D+jNN;I8DxhNI;MACE,UCxCA;I/DkkNN;I8DvhNI;MACE,cC5CA;I/DqkNN;I8DthNI;MACE,gBChDA;I/DwkNN;I8DrhNI;MACE,iBCpDA;I/D2kNN;I8DphNI;MACE,eCxDA;I/D8kNN;I8DnhNI;MACE,gBC5DA;MD6DA,eC7DA;I/DklNN;I8DlhNI;MACE,cCjEA;MDkEA,iBClEA;I/DslNN;I8DhhNI;MACE,gBAAA;MACA,gBAAA;I9DkhNN;I8D/gNI;MACE,gBAAA;I9DihNN;I8D9gNI;MACE,gBAAA;I9DghNN;I8D5gNI;MACE,MCrFA;I/DmmNN;I8D3gNI;MACE,aCzFA;I/DsmNN;I8D1gNI;MACE,UC7FA;I/DymNN;I8DhmNI;MACE,eCVA;I/D4mNN;I8D/lNI;MACE,mBCdA;I/D+mNN;I8D9lNI;MACE,qBClBA;I/DknNN;I8D7lNI;MACE,sBCtBA;I/DqnNN;I8D5lNI;MACE,oBC1BA;I/DwnNN;I8D3lNI;MACE,qBC9BA;MD+BA,oBC/BA;I/D4nNN;I8D1lNI;MACE,mBCnCA;MDoCA,sBCpCA;I/DgoNN;I8DzlNI;MACE,gBCxCA;I/DmoNN;I8DxlNI;MACE,oBC5CA;I/DsoNN;I8DvlNI;MACE,sBChDA;I/DyoNN;I8DtlNI;MACE,uBCpDA;I/D4oNN;I8DrlNI;MACE,qBCxDA;I/D+oNN;I8DplNI;MACE,sBC5DA;MD6DA,qBC7DA;I/DmpNN;I8DnlNI;MACE,oBCjEA;MDkEA,uBClEA;I/DupNN;I8DjlNI;MACE,sBAAA;MACA,sBAAA;I9DmlNN;I8DhlNI;MACE,sBAAA;I9DklNN;I8D/kNI;MACE,sBAAA;I9DilNN;I8D7kNI;MACE,YCrFA;I/DoqNN;I8D5kNI;MACE,mBCzFA;I/DuqNN;I8D3kNI;MACE,gBC7FA;I/D0qNN;I8DjqNI;MACE,cCVA;I/D6qNN;I8DhqNI;MACE,kBCdA;I/DgrNN;I8D/pNI;MACE,oBClBA;I/DmrNN;I8D9pNI;MACE,qBCtBA;I/DsrNN;I8D7pNI;MACE,mBC1BA;I/DyrNN;I8D5pNI;MACE,oBC9BA;MD+BA,mBC/BA;I/D6rNN;I8D3pNI;MACE,kBCnCA;MDoCA,qBCpCA;I/DisNN;I8D1pNI;MACE,eCxCA;I/DosNN;I8DzpNI;MACE,mBC5CA;I/DusNN;I8DxpNI;MACE,qBChDA;I/D0sNN;I8DvpNI;MACE,sBCpDA;I/D6sNN;I8DtpNI;MACE,oBCxDA;I/DgtNN;I8DrpNI;MACE,qBC5DA;MD6DA,oBC7DA;I/DotNN;I8DppNI;MACE,mBCjEA;MDkEA,sBClEA;I/DwtNN;I8DlpNI;MACE,qBAAA;MACA,qBAAA;I9DopNN;I8DjpNI;MACE,qBAAA;I9DmpNN;I8DhpNI;MACE,qBAAA;I9DkpNN;I8D9oNI;MACE,WCrFA;I/DquNN;I8D7oNI;MACE,kBCzFA;I/DwuNN;I8D5oNI;MACE,eC7FA;I/D2uNN;I8DluNI;MACE,YCVA;I/D8uNN;I8DjuNI;MACE,gBCdA;I/DivNN;I8DhuNI;MACE,kBClBA;I/DovNN;I8D/tNI;MACE,mBCtBA;I/DuvNN;I8D9tNI;MACE,iBC1BA;I/D0vNN;I8D7tNI;MACE,kBC9BA;MD+BA,iBC/BA;I/D8vNN;I8D5tNI;MACE,gBCnCA;MDoCA,mBCpCA;I/DkwNN;I8D3tNI;MACE,aCxCA;I/DqwNN;I8D1tNI;MACE,iBC5CA;I/DwwNN;I8DztNI;MACE,mBChDA;I/D2wNN;I8DxtNI;MACE,oBCpDA;I/D8wNN;I8DvtNI;MACE,kBCxDA;I/DixNN;I8DttNI;MACE,mBC5DA;MD6DA,kBC7DA;I/DqxNN;I8DrtNI;MACE,iBCjEA;MDkEA,oBClEA;I/DyxNN;I8DntNI;MACE,mBAAA;MACA,mBAAA;I9DqtNN;I8DltNI;MACE,mBAAA;I9DotNN;I8DjtNI;MACE,mBAAA;I9DmtNN;I8D/sNI;MACE,SCrFA;I/DsyNN;I8D9sNI;MACE,gBCzFA;I/DyyNN;I8D7sNI;MACE,aC7FA;I/D4yNN;I8DnyNI;MACE,cCVA;I/D+yNN;I8DlyNI;MACE,kBCdA;I/DkzNN;I8DjyNI;MACE,oBClBA;I/DqzNN;I8DhyNI;MACE,qBCtBA;I/DwzNN;I8D/xNI;MACE,mBC1BA;I/D2zNN;I8D9xNI;MACE,oBC9BA;MD+BA,mBC/BA;I/D+zNN;I8D7xNI;MACE,kBCnCA;MDoCA,qBCpCA;I/Dm0NN;I8D5xNI;MACE,eCxCA;I/Ds0NN;I8D3xNI;MACE,mBC5CA;I/Dy0NN;I8D1xNI;MACE,qBChDA;I/D40NN;I8DzxNI;MACE,sBCpDA;I/D+0NN;I8DxxNI;MACE,oBCxDA;I/Dk1NN;I8DvxNI;MACE,qBC5DA;MD6DA,oBC7DA;I/Ds1NN;I8DtxNI;MACE,mBCjEA;MDkEA,sBClEA;I/D01NN;I8DpxNI;MACE,qBAAA;MACA,qBAAA;I9DsxNN;I8DnxNI;MACE,qBAAA;I9DqxNN;I8DlxNI;MACE,qBAAA;I9DoxNN;I8DhxNI;MACE,WCrFA;I/Du2NN;I8D/wNI;MACE,kBCzFA;I/D02NN;I8D9wNI;MACE,eC7FA;I/D62NN;I8Dp2NI;MACE,YCVA;I/Dg3NN;I8Dn2NI;MACE,gBCdA;I/Dm3NN;I8Dl2NI;MACE,kBClBA;I/Ds3NN;I8Dj2NI;MACE,mBCtBA;I/Dy3NN;I8Dh2NI;MACE,iBC1BA;I/D43NN;I8D/1NI;MACE,kBC9BA;MD+BA,iBC/BA;I/Dg4NN;I8D91NI;MACE,gBCnCA;MDoCA,mBCpCA;I/Do4NN;I8D71NI;MACE,aCxCA;I/Du4NN;I8D51NI;MACE,iBC5CA;I/D04NN;I8D31NI;MACE,mBChDA;I/D64NN;I8D11NI;MACE,oBCpDA;I/Dg5NN;I8Dz1NI;MACE,kBCxDA;I/Dm5NN;I8Dx1NI;MACE,mBC5DA;MD6DA,kBC7DA;I/Du5NN;I8Dv1NI;MACE,iBCjEA;MDkEA,oBClEA;I/D25NN;I8Dr1NI;MACE,mBAAA;MACA,mBAAA;I9Du1NN;I8Dp1NI;MACE,mBAAA;I9Ds1NN;I8Dn1NI;MACE,mBAAA;I9Dq1NN;I8Dj1NI;MACE,SCrFA;I/Dw6NN;I8Dh1NI;MACE,gBCzFA;I/D26NN;I8D/0NI;MACE,aC7FA;I/D86NN;I8D70NE;MACE,YAAA;I9D+0NJ;I8D50NE;MACE,gBAAA;I9D80NJ;I8D30NE;MACE,kBAAA;I9D60NJ;I8D10NE;MACE,mBAAA;I9D40NJ;I8Dz0NE;MACE,iBAAA;I9D20NJ;I8Dx0NE;MACE,kBAAA;MACA,iBAAA;I9D00NJ;I8Dv0NE;MACE,gBAAA;MACA,mBAAA;I9Dy0NJ;EACF;ESv7NE;IqDNI;MACE,SCVA;I/D08NN;I8D77NI;MACE,aCdA;I/D68NN;I8D57NI;MACE,eClBA;I/Dg9NN;I8D37NI;MACE,gBCtBA;I/Dm9NN;I8D17NI;MACE,cC1BA;I/Ds9NN;I8Dz7NI;MACE,eC9BA;MD+BA,cC/BA;I/D09NN;I8Dx7NI;MACE,aCnCA;MDoCA,gBCpCA;I/D89NN;I8Dv7NI;MACE,UCxCA;I/Di+NN;I8Dt7NI;MACE,cC5CA;I/Do+NN;I8Dr7NI;MACE,gBChDA;I/Du+NN;I8Dp7NI;MACE,iBCpDA;I/D0+NN;I8Dn7NI;MACE,eCxDA;I/D6+NN;I8Dl7NI;MACE,gBC5DA;MD6DA,eC7DA;I/Di/NN;I8Dj7NI;MACE,cCjEA;MDkEA,iBClEA;I/Dq/NN;I8D/6NI;MACE,gBAAA;MACA,gBAAA;I9Di7NN;I8D96NI;MACE,gBAAA;I9Dg7NN;I8D76NI;MACE,gBAAA;I9D+6NN;I8D36NI;MACE,MCrFA;I/DkgON;I8D16NI;MACE,aCzFA;I/DqgON;I8Dz6NI;MACE,UC7FA;I/DwgON;I8D//NI;MACE,eCVA;I/D2gON;I8D9/NI;MACE,mBCdA;I/D8gON;I8D7/NI;MACE,qBClBA;I/DihON;I8D5/NI;MACE,sBCtBA;I/DohON;I8D3/NI;MACE,oBC1BA;I/DuhON;I8D1/NI;MACE,qBC9BA;MD+BA,oBC/BA;I/D2hON;I8Dz/NI;MACE,mBCnCA;MDoCA,sBCpCA;I/D+hON;I8Dx/NI;MACE,gBCxCA;I/DkiON;I8Dv/NI;MACE,oBC5CA;I/DqiON;I8Dt/NI;MACE,sBChDA;I/DwiON;I8Dr/NI;MACE,uBCpDA;I/D2iON;I8Dp/NI;MACE,qBCxDA;I/D8iON;I8Dn/NI;MACE,sBC5DA;MD6DA,qBC7DA;I/DkjON;I8Dl/NI;MACE,oBCjEA;MDkEA,uBClEA;I/DsjON;I8Dh/NI;MACE,sBAAA;MACA,sBAAA;I9Dk/NN;I8D/+NI;MACE,sBAAA;I9Di/NN;I8D9+NI;MACE,sBAAA;I9Dg/NN;I8D5+NI;MACE,YCrFA;I/DmkON;I8D3+NI;MACE,mBCzFA;I/DskON;I8D1+NI;MACE,gBC7FA;I/DykON;I8DhkOI;MACE,cCVA;I/D4kON;I8D/jOI;MACE,kBCdA;I/D+kON;I8D9jOI;MACE,oBClBA;I/DklON;I8D7jOI;MACE,qBCtBA;I/DqlON;I8D5jOI;MACE,mBC1BA;I/DwlON;I8D3jOI;MACE,oBC9BA;MD+BA,mBC/BA;I/D4lON;I8D1jOI;MACE,kBCnCA;MDoCA,qBCpCA;I/DgmON;I8DzjOI;MACE,eCxCA;I/DmmON;I8DxjOI;MACE,mBC5CA;I/DsmON;I8DvjOI;MACE,qBChDA;I/DymON;I8DtjOI;MACE,sBCpDA;I/D4mON;I8DrjOI;MACE,oBCxDA;I/D+mON;I8DpjOI;MACE,qBC5DA;MD6DA,oBC7DA;I/DmnON;I8DnjOI;MACE,mBCjEA;MDkEA,sBClEA;I/DunON;I8DjjOI;MACE,qBAAA;MACA,qBAAA;I9DmjON;I8DhjOI;MACE,qBAAA;I9DkjON;I8D/iOI;MACE,qBAAA;I9DijON;I8D7iOI;MACE,WCrFA;I/DooON;I8D5iOI;MACE,kBCzFA;I/DuoON;I8D3iOI;MACE,eC7FA;I/D0oON;I8DjoOI;MACE,YCVA;I/D6oON;I8DhoOI;MACE,gBCdA;I/DgpON;I8D/nOI;MACE,kBClBA;I/DmpON;I8D9nOI;MACE,mBCtBA;I/DspON;I8D7nOI;MACE,iBC1BA;I/DypON;I8D5nOI;MACE,kBC9BA;MD+BA,iBC/BA;I/D6pON;I8D3nOI;MACE,gBCnCA;MDoCA,mBCpCA;I/DiqON;I8D1nOI;MACE,aCxCA;I/DoqON;I8DznOI;MACE,iBC5CA;I/DuqON;I8DxnOI;MACE,mBChDA;I/D0qON;I8DvnOI;MACE,oBCpDA;I/D6qON;I8DtnOI;MACE,kBCxDA;I/DgrON;I8DrnOI;MACE,mBC5DA;MD6DA,kBC7DA;I/DorON;I8DpnOI;MACE,iBCjEA;MDkEA,oBClEA;I/DwrON;I8DlnOI;MACE,mBAAA;MACA,mBAAA;I9DonON;I8DjnOI;MACE,mBAAA;I9DmnON;I8DhnOI;MACE,mBAAA;I9DknON;I8D9mOI;MACE,SCrFA;I/DqsON;I8D7mOI;MACE,gBCzFA;I/DwsON;I8D5mOI;MACE,aC7FA;I/D2sON;I8DlsOI;MACE,cCVA;I/D8sON;I8DjsOI;MACE,kBCdA;I/DitON;I8DhsOI;MACE,oBClBA;I/DotON;I8D/rOI;MACE,qBCtBA;I/DutON;I8D9rOI;MACE,mBC1BA;I/D0tON;I8D7rOI;MACE,oBC9BA;MD+BA,mBC/BA;I/D8tON;I8D5rOI;MACE,kBCnCA;MDoCA,qBCpCA;I/DkuON;I8D3rOI;MACE,eCxCA;I/DquON;I8D1rOI;MACE,mBC5CA;I/DwuON;I8DzrOI;MACE,qBChDA;I/D2uON;I8DxrOI;MACE,sBCpDA;I/D8uON;I8DvrOI;MACE,oBCxDA;I/DivON;I8DtrOI;MACE,qBC5DA;MD6DA,oBC7DA;I/DqvON;I8DrrOI;MACE,mBCjEA;MDkEA,sBClEA;I/DyvON;I8DnrOI;MACE,qBAAA;MACA,qBAAA;I9DqrON;I8DlrOI;MACE,qBAAA;I9DorON;I8DjrOI;MACE,qBAAA;I9DmrON;I8D/qOI;MACE,WCrFA;I/DswON;I8D9qOI;MACE,kBCzFA;I/DywON;I8D7qOI;MACE,eC7FA;I/D4wON;I8DnwOI;MACE,YCVA;I/D+wON;I8DlwOI;MACE,gBCdA;I/DkxON;I8DjwOI;MACE,kBClBA;I/DqxON;I8DhwOI;MACE,mBCtBA;I/DwxON;I8D/vOI;MACE,iBC1BA;I/D2xON;I8D9vOI;MACE,kBC9BA;MD+BA,iBC/BA;I/D+xON;I8D7vOI;MACE,gBCnCA;MDoCA,mBCpCA;I/DmyON;I8D5vOI;MACE,aCxCA;I/DsyON;I8D3vOI;MACE,iBC5CA;I/DyyON;I8D1vOI;MACE,mBChDA;I/D4yON;I8DzvOI;MACE,oBCpDA;I/D+yON;I8DxvOI;MACE,kBCxDA;I/DkzON;I8DvvOI;MACE,mBC5DA;MD6DA,kBC7DA;I/DszON;I8DtvOI;MACE,iBCjEA;MDkEA,oBClEA;I/D0zON;I8DpvOI;MACE,mBAAA;MACA,mBAAA;I9DsvON;I8DnvOI;MACE,mBAAA;I9DqvON;I8DlvOI;MACE,mBAAA;I9DovON;I8DhvOI;MACE,SCrFA;I/Du0ON;I8D/uOI;MACE,gBCzFA;I/D00ON;I8D9uOI;MACE,aC7FA;I/D60ON;I8D5uOE;MACE,YAAA;I9D8uOJ;I8D3uOE;MACE,gBAAA;I9D6uOJ;I8D1uOE;MACE,kBAAA;I9D4uOJ;I8DzuOE;MACE,mBAAA;I9D2uOJ;I8DxuOE;MACE,iBAAA;I9D0uOJ;I8DvuOE;MACE,kBAAA;MACA,iBAAA;I9DyuOJ;I8DtuOE;MACE,gBAAA;MACA,mBAAA;I9DwuOJ;EACF;ESt1OE;IqDNI;MACE,SCVA;I/Dy2ON;I8D51OI;MACE,aCdA;I/D42ON;I8D31OI;MACE,eClBA;I/D+2ON;I8D11OI;MACE,gBCtBA;I/Dk3ON;I8Dz1OI;MACE,cC1BA;I/Dq3ON;I8Dx1OI;MACE,eC9BA;MD+BA,cC/BA;I/Dy3ON;I8Dv1OI;MACE,aCnCA;MDoCA,gBCpCA;I/D63ON;I8Dt1OI;MACE,UCxCA;I/Dg4ON;I8Dr1OI;MACE,cC5CA;I/Dm4ON;I8Dp1OI;MACE,gBChDA;I/Ds4ON;I8Dn1OI;MACE,iBCpDA;I/Dy4ON;I8Dl1OI;MACE,eCxDA;I/D44ON;I8Dj1OI;MACE,gBC5DA;MD6DA,eC7DA;I/Dg5ON;I8Dh1OI;MACE,cCjEA;MDkEA,iBClEA;I/Do5ON;I8D90OI;MACE,gBAAA;MACA,gBAAA;I9Dg1ON;I8D70OI;MACE,gBAAA;I9D+0ON;I8D50OI;MACE,gBAAA;I9D80ON;I8D10OI;MACE,MCrFA;I/Di6ON;I8Dz0OI;MACE,aCzFA;I/Do6ON;I8Dx0OI;MACE,UC7FA;I/Du6ON;I8D95OI;MACE,eCVA;I/D06ON;I8D75OI;MACE,mBCdA;I/D66ON;I8D55OI;MACE,qBClBA;I/Dg7ON;I8D35OI;MACE,sBCtBA;I/Dm7ON;I8D15OI;MACE,oBC1BA;I/Ds7ON;I8Dz5OI;MACE,qBC9BA;MD+BA,oBC/BA;I/D07ON;I8Dx5OI;MACE,mBCnCA;MDoCA,sBCpCA;I/D87ON;I8Dv5OI;MACE,gBCxCA;I/Di8ON;I8Dt5OI;MACE,oBC5CA;I/Do8ON;I8Dr5OI;MACE,sBChDA;I/Du8ON;I8Dp5OI;MACE,uBCpDA;I/D08ON;I8Dn5OI;MACE,qBCxDA;I/D68ON;I8Dl5OI;MACE,sBC5DA;MD6DA,qBC7DA;I/Di9ON;I8Dj5OI;MACE,oBCjEA;MDkEA,uBClEA;I/Dq9ON;I8D/4OI;MACE,sBAAA;MACA,sBAAA;I9Di5ON;I8D94OI;MACE,sBAAA;I9Dg5ON;I8D74OI;MACE,sBAAA;I9D+4ON;I8D34OI;MACE,YCrFA;I/Dk+ON;I8D14OI;MACE,mBCzFA;I/Dq+ON;I8Dz4OI;MACE,gBC7FA;I/Dw+ON;I8D/9OI;MACE,cCVA;I/D2+ON;I8D99OI;MACE,kBCdA;I/D8+ON;I8D79OI;MACE,oBClBA;I/Di/ON;I8D59OI;MACE,qBCtBA;I/Do/ON;I8D39OI;MACE,mBC1BA;I/Du/ON;I8D19OI;MACE,oBC9BA;MD+BA,mBC/BA;I/D2/ON;I8Dz9OI;MACE,kBCnCA;MDoCA,qBCpCA;I/D+/ON;I8Dx9OI;MACE,eCxCA;I/DkgPN;I8Dv9OI;MACE,mBC5CA;I/DqgPN;I8Dt9OI;MACE,qBChDA;I/DwgPN;I8Dr9OI;MACE,sBCpDA;I/D2gPN;I8Dp9OI;MACE,oBCxDA;I/D8gPN;I8Dn9OI;MACE,qBC5DA;MD6DA,oBC7DA;I/DkhPN;I8Dl9OI;MACE,mBCjEA;MDkEA,sBClEA;I/DshPN;I8Dh9OI;MACE,qBAAA;MACA,qBAAA;I9Dk9ON;I8D/8OI;MACE,qBAAA;I9Di9ON;I8D98OI;MACE,qBAAA;I9Dg9ON;I8D58OI;MACE,WCrFA;I/DmiPN;I8D38OI;MACE,kBCzFA;I/DsiPN;I8D18OI;MACE,eC7FA;I/DyiPN;I8DhiPI;MACE,YCVA;I/D4iPN;I8D/hPI;MACE,gBCdA;I/D+iPN;I8D9hPI;MACE,kBClBA;I/DkjPN;I8D7hPI;MACE,mBCtBA;I/DqjPN;I8D5hPI;MACE,iBC1BA;I/DwjPN;I8D3hPI;MACE,kBC9BA;MD+BA,iBC/BA;I/D4jPN;I8D1hPI;MACE,gBCnCA;MDoCA,mBCpCA;I/DgkPN;I8DzhPI;MACE,aCxCA;I/DmkPN;I8DxhPI;MACE,iBC5CA;I/DskPN;I8DvhPI;MACE,mBChDA;I/DykPN;I8DthPI;MACE,oBCpDA;I/D4kPN;I8DrhPI;MACE,kBCxDA;I/D+kPN;I8DphPI;MACE,mBC5DA;MD6DA,kBC7DA;I/DmlPN;I8DnhPI;MACE,iBCjEA;MDkEA,oBClEA;I/DulPN;I8DjhPI;MACE,mBAAA;MACA,mBAAA;I9DmhPN;I8DhhPI;MACE,mBAAA;I9DkhPN;I8D/gPI;MACE,mBAAA;I9DihPN;I8D7gPI;MACE,SCrFA;I/DomPN;I8D5gPI;MACE,gBCzFA;I/DumPN;I8D3gPI;MACE,aC7FA;I/D0mPN;I8DjmPI;MACE,cCVA;I/D6mPN;I8DhmPI;MACE,kBCdA;I/DgnPN;I8D/lPI;MACE,oBClBA;I/DmnPN;I8D9lPI;MACE,qBCtBA;I/DsnPN;I8D7lPI;MACE,mBC1BA;I/DynPN;I8D5lPI;MACE,oBC9BA;MD+BA,mBC/BA;I/D6nPN;I8D3lPI;MACE,kBCnCA;MDoCA,qBCpCA;I/DioPN;I8D1lPI;MACE,eCxCA;I/DooPN;I8DzlPI;MACE,mBC5CA;I/DuoPN;I8DxlPI;MACE,qBChDA;I/D0oPN;I8DvlPI;MACE,sBCpDA;I/D6oPN;I8DtlPI;MACE,oBCxDA;I/DgpPN;I8DrlPI;MACE,qBC5DA;MD6DA,oBC7DA;I/DopPN;I8DplPI;MACE,mBCjEA;MDkEA,sBClEA;I/DwpPN;I8DllPI;MACE,qBAAA;MACA,qBAAA;I9DolPN;I8DjlPI;MACE,qBAAA;I9DmlPN;I8DhlPI;MACE,qBAAA;I9DklPN;I8D9kPI;MACE,WCrFA;I/DqqPN;I8D7kPI;MACE,kBCzFA;I/DwqPN;I8D5kPI;MACE,eC7FA;I/D2qPN;I8DlqPI;MACE,YCVA;I/D8qPN;I8DjqPI;MACE,gBCdA;I/DirPN;I8DhqPI;MACE,kBClBA;I/DorPN;I8D/pPI;MACE,mBCtBA;I/DurPN;I8D9pPI;MACE,iBC1BA;I/D0rPN;I8D7pPI;MACE,kBC9BA;MD+BA,iBC/BA;I/D8rPN;I8D5pPI;MACE,gBCnCA;MDoCA,mBCpCA;I/DksPN;I8D3pPI;MACE,aCxCA;I/DqsPN;I8D1pPI;MACE,iBC5CA;I/DwsPN;I8DzpPI;MACE,mBChDA;I/D2sPN;I8DxpPI;MACE,oBCpDA;I/D8sPN;I8DvpPI;MACE,kBCxDA;I/DitPN;I8DtpPI;MACE,mBC5DA;MD6DA,kBC7DA;I/DqtPN;I8DrpPI;MACE,iBCjEA;MDkEA,oBClEA;I/DytPN;I8DnpPI;MACE,mBAAA;MACA,mBAAA;I9DqpPN;I8DlpPI;MACE,mBAAA;I9DopPN;I8DjpPI;MACE,mBAAA;I9DmpPN;I8D/oPI;MACE,SCrFA;I/DsuPN;I8D9oPI;MACE,gBCzFA;I/DyuPN;I8D7oPI;MACE,aC7FA;I/D4uPN;I8D3oPE;MACE,YAAA;I9D6oPJ;I8D1oPE;MACE,gBAAA;I9D4oPJ;I8DzoPE;MACE,kBAAA;I9D2oPJ;I8DxoPE;MACE,mBAAA;I9D0oPJ;I8DvoPE;MACE,iBAAA;I9DyoPJ;I8DtoPE;MACE,kBAAA;MACA,iBAAA;I9DwoPJ;I8DroPE;MACE,gBAAA;MACA,mBAAA;I9DuoPJ;EACF;AACF;AgElwPA;EACE;IACE,gBAAA;EhEowPF;EgEjwPA;IACE,kBAAA;EhEmwPF;EgEhwPA;IACE,iBAAA;EhEkwPF;EgE/vPA;IACE,yBAAA;EhEiwPF;EgE9vPA;IACE,yBAAA;EhEgwPF;EgE7vPA;IACE,0BAAA;EhE+vPF;EgE5vPA;IvDSA,gBAAA;IACA,uBAAA;IACA,mBAAA;ETsvPA;EgE7vPA;IACE,gBjDbkB;Ef4wPpB;EgE5vPA;IACE,gBjDhBiB;Ef8wPnB;EgE3vPA;IACE,gBjDnBmB;EfgxPrB;EgE1vPA;IACE,gBjDtBe;EfkxPjB;EgEzvPA;IACE,oBjD5CW;EfuyPb;EgExvPA;IACE,kBjD/CW;EfyyPb;EgEvvPA;IACE,oBjDlDW;Ef2yPb;EgEtvPA;IACE,ejDrDW;Ef6yPb;EgErvPA;IACE,kBjDxDW;Ef+yPb;EgEpvPA;IACE,kBjDxDW;Ef8yPb;EgEnvPA;IACE,iBjD3DW;EfgzPb;EgElvPA;IACE,oBjD9DW;EfkzPb;EgEjvPA;IACE,mBjDjEW;EfozPb;EgEhvPA;IACE,ejDpEW;EfszPb;EgE/uPA;IACE,mBjDvEW;EfwzPb;EgE9uPA;IACE,gCAAA;EhEgvPF;EgE7uPA;IACE,gCAAA;EhE+uPF;AACF;AiEj1PA;EACE;IACE,mBAAA;EjEm1PF;EiEh1PA;IACE,kBAAA;EjEk1PF;AACF;AkEv0PA;EAOE;IACE,2BAAA;IACA,0EAAA;IACA,uEAAA;IACA,6EAAA;ElEm0PF;EkEh0PA;;IAEE,sEAAA;IACA,uEAAA;IACA,2EAAA;IACA,0EAAA;ElEk0PF;EkE/zPA;IACE;MACE,wEAAA;MACA,2EAAA;MACA,6EAAA;MACA,8EAAA;IlEi0PF;IkE9zPA;;MAEE,wEAAA;MACA,yEAAA;MACA,4EAAA;MACA,4EAAA;IlEg0PF;EACF;EkEzzPA;IACE,2BAAA;IACA,0EAAA;IACA,wEAAA;IACA,6EAAA;ElE2zPF;EkExzPA;;IAEE,qEAAA;IACA,uEAAA;IACA,4EAAA;IACA,0EAAA;ElE0zPF;EkEnzPA;IACE,2BAAA;IACA,+DAAA;IACA,yEAAA;IACA,kEAAA;ElEqzPF;EkElzPA;;IAEE,oEAAA;IACA,uEAAA;IACA,gEAAA;IACA,0EAAA;ElEozPF;EkEjzPA;IACE;MACE,wEAAA;MACA,2EAAA;MACA,4EAAA;MACA,8EAAA;IlEmzPF;IkEhzPA;;MAEE,wEAAA;MACA,2EAAA;MACA,6EAAA;MACA,8EAAA;IlEkzPF;IkE/yPA;MACE,uEAAA;MACA,0EAAA;MACA,4EAAA;MACA,6EAAA;IlEizPF;IkE9yPA;;MAEE,uEAAA;MACA,2EAAA;MACA,4EAAA;MACA,8EAAA;IlEgzPF;EACF;AACF;AkElyPA;EACE;;IAEE,uBAAA;IACA,yBAAA;ElEoyPF;EkEjyPA;IACE,wBAAA;ElEmyPF;AACF;AmEz6PA;EAsBE;IACE,wBAAA;IACA,yBAAA;IACA,0BAAA;IACA,2BAAA;IACA,0BAAA;IACA,8CAAA;IACA,4CAAA;IACA,kDAAA;IACA,sDAAA;IACA,6CAAA;IACA,4CAAA;IACA,iDAAA;IACA,yCAAA;IACA,kDAAA;IACA,gDAAA;IACA,sEAAA;IACA,uEAAA;IACA,yEAAA;IACA,wBAAA;IACA,0BAAA;IAGE,sEAAA;IACA,sEAAA;IACA,4EAAA;IACA,yEAAA;IAHA,wEAAA;IACA,yEAAA;IACA,8EAAA;IACA,4EAAA;IAHA,uEAAA;IACA,uEAAA;IACA,4EAAA;IACA,0EAAA;IAHA,uEAAA;IACA,uEAAA;IACA,4EAAA;IACA,0EAAA;IAHA,oEAAA;IACA,sEAAA;IACA,2EAAA;IACA,yEAAA;IAHA,wBAAA;IACA,oEAAA;IACA,sEAAA;IACA,uEAAA;EnEw6PJ;EmEp6PA;IACE;MACE,oEAAA;MACA,sEAAA;MACA,sEAAA;MACA,wEAAA;MACA,uEAAA;MACA,8CAAA;MACA,4CAAA;MACA,kDAAA;MACA,sDAAA;MACA,6CAAA;MACA,4CAAA;MACA,iDAAA;MACA,yCAAA;MACA,kDAAA;MACA,gDAAA;MACA,qEAAA;MACA,uEAAA;MAGE,uEAAA;MACA,2EAAA;MACA,6EAAA;MACA,8EAAA;MAHA,0EAAA;MACA,6EAAA;MACA,+EAAA;MACA,gFAAA;MAHA,sEAAA;MACA,2EAAA;MACA,4EAAA;MACA,8EAAA;MAHA,uEAAA;MACA,2EAAA;MACA,4EAAA;MACA,8EAAA;MAHA,sEAAA;MACA,yEAAA;MACA,0EAAA;MACA,4EAAA;MAHA,qEAAA;MACA,wEAAA;MACA,0EAAA;MACA,2EAAA;InEw7PJ;EACF;AACF","file":"fokus.css","sourcesContent":["@charset \"UTF-8\";\n@layer reset, tokens, base, layout, components, utilities, overrides;\n@layer tokens {\n :root {\n --fs-color-white: #ffffff;\n --fs-color-black: #000000;\n --fs-color-text: #1e293b;\n --fs-color-muted: #64748b;\n --fs-color-border: #e2e8f0;\n --fs-color-surface: #ffffff;\n --fs-color-subtle: #f8fafc;\n --fs-font-sans: Plus Jakarta Sans, sans-serif;\n --fs-font-mono: Source Code Pro, monospace;\n --fs-font-size-md: 0.8125rem;\n --fs-font-size-h1: 1.75rem;\n --fs-font-size-h2: 1.5rem;\n --fs-font-size-h3: 1.3125rem;\n --fs-font-size-h4: 1.125rem;\n --fs-font-size-h5: 1rem;\n --fs-font-size-h6: 0.875rem;\n --fs-font-weight-semibold: 600;\n --fs-line-height-base: 1.5;\n --fs-line-height-heading: 1.25;\n --fs-radius-sm: 4px;\n --fs-radius-md: 6px;\n --fs-radius-lg: 8px;\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 0px;\n --fs-space-0: 0;\n --fs-space-1: 0.25rem;\n --fs-space-2: 0.5rem;\n --fs-space-3: 1rem;\n --fs-space-4: 1.5rem;\n --fs-space-5: 3rem;\n --fs-z-base: 0;\n --fs-z-dropdown: 1000;\n --fs-z-sticky: 1020;\n --fs-z-modal: 1050;\n --fs-z-offcanvas: 1060;\n --fs-z-notification: 1080;\n --fs-z-toast: 1090;\n --fs-z-tooltip: 1100;\n --fs-control-height: 38px;\n --fs-control-height-sm: 30px;\n --fs-control-height-lg: 46px;\n --fs-control-padding-x: 12px;\n --fs-control-padding-x-sm: 8px;\n --fs-control-padding-x-lg: 16px;\n --fs-focus-width: 2px;\n --fs-focus-offset: 2px;\n --fs-focus-ring-alpha: 22%;\n --fs-transition-fast: 150ms;\n --fs-transition-normal: 220ms;\n --fs-ease-standard: cubic-bezier(0.2, 0, 0, 1);\n --fs-border-width: 1px;\n --fs-disabled-opacity: 0.5;\n --fs-cq-sm: 320px;\n --fs-cq-md: 480px;\n --fs-cq-lg: 640px;\n --fs-shadow-sm: 0 1px 3px rgb(0 0 0 / 15%), 0 1px 2px rgb(0 0 0 / 10%);\n --fs-shadow-md: 0 6px 12px rgb(0 0 0 / 15%), 0 3px 6px rgb(0 0 0 / 10%);\n --fs-shadow-lg: 0 15px 30px rgb(0 0 0 / 18%), 0 6px 12px rgb(0 0 0 / 12%);\n --fs-tooltip-bg: #1e293b;\n --fs-tooltip-text: #ffffff;\n --fs-color-primary: #1a61e6;\n --fs-color-on-primary: #ffffff;\n --fs-alert-primary-bg: rgb(220.3846532222, 232.689549371, 254.1042117072);\n --fs-alert-primary-text: rgb(4.2540793692, 32.6552622518, 88.5748738661);\n --fs-color-secondary: #64748b;\n --fs-color-on-secondary: #ffffff;\n --fs-alert-secondary-bg: rgb(230.2895610064, 233.0325853352, 236.9919508609);\n --fs-alert-secondary-text: rgb(33.9166068747, 40.6437781967, 50.3140869721);\n --fs-color-success: rgb(13, 209, 87);\n --fs-color-on-success: #000000;\n --fs-alert-success-bg: rgb(228.9046733915, 249.1514320752, 230.8709345684);\n --fs-alert-success-text: rgb(1.6574790861, 79.745461506, 28.4507801755);\n --fs-color-warning: #fab633;\n --fs-color-on-warning: #000000;\n --fs-alert-warning-bg: rgb(254.9170612621, 244.6528756631, 228.9710928247);\n --fs-alert-warning-text: rgb(96.9838380187, 68.3933599001, 13.3146447009);\n --fs-color-danger: #cc3335;\n --fs-color-on-danger: #ffffff;\n --fs-alert-danger-bg: rgb(251.9225977632, 226.389403069, 223.5618211362);\n --fs-alert-danger-text: rgb(77.6432204678, 13.3146447009, 14.1555411162);\n --fs-color-info: #5e5cc7;\n --fs-color-on-info: #ffffff;\n --fs-alert-info-bg: rgb(228.2395257626, 230.4806192824, 248.3934544766);\n --fs-alert-info-text: rgb(31.3939176289, 30.5530212136, 75.5409794297);\n --fs-feedback-primary-bg: #e6f0ff;\n --fs-feedback-secondary-bg: #f8fafc;\n --fs-feedback-success-bg: #e6fff2;\n --fs-feedback-warning-bg: #fff9e6;\n --fs-feedback-danger-bg: #fff2f3;\n --fs-feedback-info-bg: #f2f2ff;\n }\n @supports (color: oklch(0% 0 0deg)) {\n :root {\n --fs-color-text: oklch(27.9495237712% 0.0368481257 260.0309873929deg);\n --fs-color-muted: oklch(55.4391007662% 0.040717043 257.4166191214deg);\n --fs-color-border: oklch(92.876126719% 0.0126187744 255.5078854448deg);\n --fs-color-subtle: oklch(98.4151869501% 0.0034126992 247.8577745944deg);\n --fs-tooltip-bg: oklch(27.9495237712% 0.0368481257 260.0309873929deg);\n --fs-color-primary: oklch(53.5630074284% 0.2132145174 261.6264320248deg);\n --fs-color-on-primary: #ffffff;\n --fs-alert-primary-bg: oklch(93.0344511143% 0.0319821776 261.6264320248deg);\n --fs-alert-primary-text: oklch(26.7815037142% 0.1066072587 261.6264320248deg);\n --fs-color-secondary: oklch(55.4391007662% 0.040717043 257.4166191214deg);\n --fs-color-on-secondary: #ffffff;\n --fs-alert-secondary-bg: oklch(93.3158651149% 0.0061075564 257.4166191214deg);\n --fs-alert-secondary-text: oklch(27.7195503831% 0.0203585215 257.4166191214deg);\n --fs-color-success: oklch(75.151587899% 0.2146126169 148.125846236deg);\n --fs-color-on-success: #000000;\n --fs-alert-success-bg: oklch(96.2727381849% 0.0321918925 148.125846236deg);\n --fs-alert-success-text: oklch(37.5757939495% 0.1073063085 148.125846236deg);\n --fs-color-warning: oklch(81.9510815663% 0.1562613975 78.6575213966deg);\n --fs-color-on-warning: #000000;\n --fs-alert-warning-bg: oklch(97.2926622349% 0.0234392096 78.6575213966deg);\n --fs-alert-warning-text: oklch(40.9755407832% 0.0781306987 78.6575213966deg);\n --fs-color-danger: oklch(55.9653139301% 0.1897270855 25.2407937498deg);\n --fs-color-on-danger: #ffffff;\n --fs-alert-danger-bg: oklch(93.3947970895% 0.0284590628 25.2407937498deg);\n --fs-alert-danger-text: oklch(27.982656965% 0.0948635427 25.2407937498deg);\n --fs-color-info: oklch(53.3359780029% 0.1620131129 280.2231949375deg);\n --fs-color-on-info: #ffffff;\n --fs-alert-info-bg: oklch(93.0003967004% 0.0243019669 280.2231949375deg);\n --fs-alert-info-text: oklch(26.6679890014% 0.0810065564 280.2231949375deg);\n --fs-feedback-primary-bg: oklch(95.2067827456% 0.0228899025 258.359342143deg);\n --fs-feedback-secondary-bg: oklch(98.4151869501% 0.0034126992 247.8577745944deg);\n --fs-feedback-success-bg: oklch(97.8305614459% 0.0311593614 163.2740567608deg);\n --fs-feedback-warning-bg: oklch(98.17094418% 0.025708244 92.3886876566deg);\n --fs-feedback-danger-bg: oklch(97.1603097552% 0.0140720277 12.0135639679deg);\n --fs-feedback-info-bg: oklch(96.4918490239% 0.0173174767 286.0707018324deg);\n }\n }\n}\n@layer tokens {\n :root {\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n }\n}\n@layer tokens {\n :root {\n --fs-chart-series-1: var(--fs-color-primary);\n --fs-chart-series-2: var(--fs-color-success);\n --fs-chart-series-3: var(--fs-color-warning);\n --fs-chart-series-4: var(--fs-color-danger);\n --fs-chart-series-5: var(--fs-color-info);\n --fs-chart-series-6: var(--fs-color-secondary);\n --fs-chart-grid: var(--fs-color-border);\n --fs-chart-axis: var(--fs-color-muted);\n --fs-chart-tooltip-bg: var(--fs-tooltip-bg);\n --fs-chart-tooltip-text: var(--fs-tooltip-text);\n }\n}\n@layer reset {\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n }\n html {\n line-height: var(--fs-line-height-base);\n text-size-adjust: 100%;\n }\n body {\n margin: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n }\n [hidden] {\n display: none !important;\n }\n}\n@layer base {\n body,\n button,\n input,\n select,\n textarea {\n font-family: var(--fs-font-sans);\n font-size: var(--fs-font-size-md);\n }\n code,\n kbd,\n pre,\n samp {\n font-family: var(--fs-font-mono);\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin-top: 0;\n font-weight: var(--fs-font-weight-semibold);\n line-height: var(--fs-line-height-heading);\n }\n h1 {\n font-size: var(--fs-font-size-h1);\n }\n h2 {\n font-size: var(--fs-font-size-h2);\n }\n h3 {\n font-size: var(--fs-font-size-h3);\n }\n h4 {\n font-size: var(--fs-font-size-h4);\n }\n h5 {\n font-size: var(--fs-font-size-h5);\n }\n h6 {\n font-size: var(--fs-font-size-h6);\n }\n}\n@layer base {\n @media (prefers-reduced-motion: reduce) {\n *,\n *::before,\n *::after {\n scroll-behavior: auto !important;\n transition-duration: 0.01ms !important;\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n }\n .fs-spinner,\n .fs-progress-bar-animated,\n .fs-progress-indeterminate .fs-progress-bar {\n animation-duration: 1.5s !important;\n animation-iteration-count: infinite !important;\n }\n }\n}\n@layer layout {\n .fs-cluster {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--fs-cluster-gap, 0.5rem);\n }\n .fs-cluster-gap-0 {\n --fs-cluster-gap: 0;\n }\n .fs-cluster-gap-1 {\n --fs-cluster-gap: 0.25rem;\n }\n .fs-cluster-gap-2 {\n --fs-cluster-gap: 0.5rem;\n }\n .fs-cluster-gap-3 {\n --fs-cluster-gap: 1rem;\n }\n .fs-cluster-gap-4 {\n --fs-cluster-gap: 1.5rem;\n }\n .fs-cluster-gap-5 {\n --fs-cluster-gap: 3rem;\n }\n}\n@layer layout {\n .fs-container,\n .fs-container-sm,\n .fs-container-md,\n .fs-container-lg,\n .fs-container-xl,\n .fs-container-xxl,\n .fs-container-xxxl,\n .fs-container-fluid {\n width: 100%;\n margin-right: auto;\n margin-left: auto;\n }\n @media (min-width: 640px) {\n .fs-container,\n .fs-container-sm {\n max-width: 600px;\n }\n }\n @media (min-width: 768px) {\n .fs-container,\n .fs-container-md {\n max-width: 720px;\n }\n }\n @media (min-width: 1024px) {\n .fs-container,\n .fs-container-lg {\n max-width: 960px;\n }\n }\n @media (min-width: 1280px) {\n .fs-container,\n .fs-container-xl {\n max-width: 1200px;\n }\n }\n @media (min-width: 1536px) {\n .fs-container,\n .fs-container-xxl {\n max-width: 1440px;\n }\n }\n @media (min-width: 1920px) {\n .fs-container,\n .fs-container-xxxl {\n max-width: 1800px;\n }\n }\n}\n@layer layout {\n .fs-row {\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(var(--fs-gutter-y) * -1);\n margin-right: calc(var(--fs-gutter-x) / -2);\n margin-left: calc(var(--fs-gutter-x) / -2);\n }\n .fs-row > * {\n margin-top: var(--fs-gutter-y);\n padding-right: calc(var(--fs-gutter-x) / 2);\n padding-left: calc(var(--fs-gutter-x) / 2);\n }\n .fs-row-fluid {\n width: 100%;\n }\n .fs-col-fluid {\n width: 100%;\n }\n .fs-col {\n flex: 1 0 0%;\n }\n .fs-col-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n @media (min-width: 640px) {\n .fs-col-sm {\n flex: 1 0 0%;\n }\n .fs-col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-sm-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-sm-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-sm-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-sm-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-sm-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-sm-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-sm-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-sm-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-sm-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-sm-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-sm-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-sm-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 768px) {\n .fs-col-md {\n flex: 1 0 0%;\n }\n .fs-col-md-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-md-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-md-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-md-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-md-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-md-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-md-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-md-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-md-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-md-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-md-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-md-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-md-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 1024px) {\n .fs-col-lg {\n flex: 1 0 0%;\n }\n .fs-col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-lg-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-lg-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-lg-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-lg-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-lg-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-lg-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-lg-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-lg-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-lg-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-lg-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-lg-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-lg-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 1280px) {\n .fs-col-xl {\n flex: 1 0 0%;\n }\n .fs-col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-xl-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-xl-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-xl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-xl-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-xl-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-xl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-xl-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-xl-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-xl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-xl-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-xl-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-xl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 1536px) {\n .fs-col-xxl {\n flex: 1 0 0%;\n }\n .fs-col-xxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-xxl-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-xxl-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-xxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-xxl-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-xxl-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-xxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-xxl-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-xxl-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-xxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-xxl-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-xxl-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-xxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 1920px) {\n .fs-col-xxxl {\n flex: 1 0 0%;\n }\n .fs-col-xxxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-xxxl-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-xxxl-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-xxxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-xxxl-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-xxxl-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-xxxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-xxxl-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-xxxl-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-xxxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-xxxl-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-xxxl-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-xxxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n}\n@layer layout {\n .fs-sidebar {\n display: flex;\n flex-wrap: wrap;\n gap: var(--fs-sidebar-gap, 1rem);\n }\n .fs-sidebar-aside {\n flex-basis: var(--fs-sidebar-width, 16rem);\n flex-grow: 1;\n }\n .fs-sidebar-content {\n flex-basis: 0;\n flex-grow: 999;\n min-width: 50%;\n }\n .fs-sidebar-reverse {\n flex-direction: row-reverse;\n }\n .fs-sidebar-gap-0 {\n --fs-sidebar-gap: 0;\n }\n .fs-sidebar-gap-1 {\n --fs-sidebar-gap: 0.25rem;\n }\n .fs-sidebar-gap-2 {\n --fs-sidebar-gap: 0.5rem;\n }\n .fs-sidebar-gap-3 {\n --fs-sidebar-gap: 1rem;\n }\n .fs-sidebar-gap-4 {\n --fs-sidebar-gap: 1.5rem;\n }\n .fs-sidebar-gap-5 {\n --fs-sidebar-gap: 3rem;\n }\n .fs-sidebar-width-sm {\n --fs-sidebar-width: 120px;\n }\n .fs-sidebar-width-md {\n --fs-sidebar-width: 240px;\n }\n .fs-sidebar-width-lg {\n --fs-sidebar-width: 360px;\n }\n .fs-sidebar-width-xl {\n --fs-sidebar-width: 480px;\n }\n .fs-sidebar-width-xxl {\n --fs-sidebar-width: 600px;\n }\n .fs-sidebar-width-xxxl {\n --fs-sidebar-width: 720px;\n }\n}\n@layer layout {\n .fs-stack {\n display: flex;\n flex-direction: column;\n gap: var(--fs-stack-gap, 1rem);\n }\n .fs-stack-gap-0 {\n --fs-stack-gap: 0;\n }\n .fs-stack-gap-1 {\n --fs-stack-gap: 0.25rem;\n }\n .fs-stack-gap-2 {\n --fs-stack-gap: 0.5rem;\n }\n .fs-stack-gap-3 {\n --fs-stack-gap: 1rem;\n }\n .fs-stack-gap-4 {\n --fs-stack-gap: 1.5rem;\n }\n .fs-stack-gap-5 {\n --fs-stack-gap: 3rem;\n }\n}\n@layer components {\n .fs-form-row {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: flex-start;\n justify-content: flex-start;\n gap: 12px 16px;\n width: 100%;\n }\n .fs-form-col {\n display: flex;\n flex: 1 1 240px;\n flex-direction: column;\n align-items: stretch;\n min-width: 0;\n gap: 4px;\n }\n .fs-form-label {\n width: auto;\n margin: 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n font-weight: 400;\n }\n .fs-form-text {\n width: auto;\n margin: 0;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 400;\n }\n .fs-form-text,\n .fs-valid-feedback,\n .fs-invalid-feedback {\n min-height: 1.25rem;\n padding: 3px 8px;\n border-radius: var(--fs-radius-sm);\n }\n .fs-form-text {\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 400;\n }\n .fs-valid-feedback,\n .fs-invalid-feedback {\n display: none;\n font-size: 0.6875rem;\n font-weight: 400;\n }\n .fs-valid-feedback {\n color: var(--fs-alert-success-text);\n background-color: var(--fs-feedback-success-bg);\n }\n .fs-invalid-feedback {\n color: var(--fs-alert-danger-text);\n background-color: var(--fs-feedback-danger-bg);\n }\n .is-valid ~ .fs-valid-feedback,\n .is-invalid ~ .fs-invalid-feedback {\n display: block;\n }\n .fs-form-control {\n width: 100%;\n min-width: 0;\n height: var(--fs-control-height);\n padding: 0 7px;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: 0.8125rem;\n font-weight: 500;\n }\n .fs-form-control::placeholder {\n color: var(--fs-color-muted);\n }\n .fs-form-control:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-form-control:disabled {\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n .fs-form-control:read-only {\n background-color: var(--fs-color-subtle);\n cursor: default;\n }\n .fs-form-control-sm {\n height: var(--fs-control-height-sm);\n font-size: 0.6875rem;\n }\n .fs-form-control-lg {\n height: var(--fs-control-height-lg);\n font-size: 0.8125rem;\n }\n .fs-form-size-sm {\n width: 120px;\n }\n .fs-form-size-md {\n width: 180px;\n }\n .fs-form-size-lg {\n width: 240px;\n }\n .fs-form-size-xl {\n width: 300px;\n }\n .fs-form-size-xxl {\n width: 360px;\n }\n .fs-form-control.is-valid {\n border-color: var(--fs-color-success);\n }\n .fs-form-control.is-valid:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-success);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-success);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-success) 22%, transparent);\n }\n .fs-form-control.is-invalid {\n border-color: var(--fs-color-danger);\n }\n .fs-form-control.is-invalid:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-danger);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-danger);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-danger) 22%, transparent);\n }\n .fs-form-select {\n display: flex;\n flex: 1;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n height: var(--fs-control-height);\n padding: 0 7px;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: 0.8125rem;\n font-weight: 500;\n text-align: left;\n cursor: pointer;\n }\n .fs-form-select::after {\n flex-shrink: 0;\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 8px;\n content: \"\";\n border-top: 5px solid;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n }\n .fs-form-select:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-form-select:disabled {\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n opacity: 0.4;\n pointer-events: none;\n }\n .fs-form-select-sm {\n height: var(--fs-control-height-sm);\n font-size: 0.6875rem;\n }\n .fs-form-select-lg {\n height: var(--fs-control-height-lg);\n font-size: 0.8125rem;\n }\n .fs-file-upload {\n position: relative;\n display: inline-flex;\n }\n .fs-file-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n .fs-file-label {\n display: inline-flex;\n align-items: center;\n height: 38px;\n padding: 0 14px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n font-size: 0.8125rem;\n font-weight: 500;\n cursor: pointer;\n user-select: none;\n transition: filter var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-file-label:hover {\n filter: brightness(0.96);\n }\n .fs-file-input:focus-visible + .fs-file-label {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-file-input:disabled + .fs-file-label {\n color: var(--fs-color-muted);\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n cursor: default;\n }\n .fs-file-label-sm {\n height: 30px;\n padding: 0 10px;\n font-size: 0.6875rem;\n }\n .fs-file-label-lg {\n height: 46px;\n padding: 0 18px;\n font-size: 1rem;\n }\n .fs-file-label.is-dragover {\n border-color: var(--fs-color-primary);\n background-color: var(--fs-color-subtle);\n }\n .fs-file-label-dropzone {\n flex-direction: column;\n gap: 4px;\n width: 100%;\n height: auto;\n padding: 32px 16px;\n border-style: dashed;\n border-width: 2px;\n font-weight: 400;\n text-align: center;\n }\n .fs-file-label-dropzone .fs-file-dropzone-hint {\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 400;\n }\n .fs-input-group {\n display: flex;\n align-items: stretch;\n width: 100%;\n }\n .fs-input-group > .fs-form-control,\n .fs-input-group > .fs-form-select {\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n }\n .fs-input-group-text {\n display: flex;\n align-items: center;\n padding: 0 12px;\n border: 1px solid var(--fs-color-border);\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n font-size: 0.8125rem;\n font-weight: 500;\n white-space: nowrap;\n }\n .fs-input-group > :not(:first-child) {\n margin-left: -1px;\n }\n .fs-input-group > :focus-visible,\n .fs-input-group > :focus-within {\n position: relative;\n z-index: 1;\n }\n .fs-input-group > * {\n border-radius: 0;\n }\n .fs-input-group > :first-child {\n border-top-left-radius: var(--fs-radius-sm);\n border-bottom-left-radius: var(--fs-radius-sm);\n }\n .fs-input-group > :last-child {\n border-top-right-radius: var(--fs-radius-sm);\n border-bottom-right-radius: var(--fs-radius-sm);\n }\n .fs-input-group-sm > .fs-form-control,\n .fs-input-group-sm > .fs-form-select,\n .fs-input-group-sm > .fs-input-group-text {\n height: 30px;\n padding: 0 8px;\n font-size: 0.6875rem;\n }\n .fs-input-group-lg > .fs-form-control,\n .fs-input-group-lg > .fs-form-select,\n .fs-input-group-lg > .fs-input-group-text {\n height: 46px;\n padding: 0 16px;\n font-size: 1rem;\n }\n}\n@layer components {\n .fs-check,\n .fs-radio,\n .fs-switch {\n display: inline-flex;\n align-items: center;\n }\n .fs-check {\n --fs-check-mark: var(--fs-color-on-primary);\n }\n .fs-check-input,\n .fs-radio-input,\n .fs-switch-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n .fs-check-label,\n .fs-radio-label,\n .fs-switch-label {\n position: relative;\n display: inline-flex;\n align-items: center;\n min-height: 20px;\n padding-left: 28px;\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n cursor: pointer;\n user-select: none;\n }\n .fs-check-label::before,\n .fs-radio-label::before,\n .fs-switch-label::before {\n position: absolute;\n left: 0;\n box-sizing: border-box;\n border: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface);\n content: \"\";\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n }\n .fs-check-label::before,\n .fs-radio-label::before {\n width: 18px;\n height: 18px;\n }\n .fs-check-label::before {\n border: 2px solid var(--fs-color-primary);\n border-radius: 0;\n }\n .fs-radio-label::before {\n border-radius: 50%;\n }\n .fs-check-label::after {\n position: absolute;\n left: 4px;\n width: 9px;\n height: 5px;\n content: \"\";\n opacity: 0;\n border-bottom: 2px solid var(--fs-check-mark);\n border-left: 2px solid var(--fs-check-mark);\n transform: translateY(-1px) rotate(-45deg);\n transition: opacity 0.1s ease-in-out;\n }\n .fs-radio-label::after {\n position: absolute;\n left: 5px;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n content: \"\";\n opacity: 0;\n background-color: var(--fs-color-on-primary);\n transition: opacity 0.1s ease-in-out;\n }\n .fs-check-input:checked + .fs-check-label::before,\n .fs-radio-input:checked + .fs-radio-label::before {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-check-input:checked + .fs-check-label::after,\n .fs-radio-input:checked + .fs-radio-label::after {\n opacity: 1;\n }\n .fs-check-input:not(:checked, :indeterminate, :disabled, .is-invalid) + .fs-check-label:hover::before {\n background-color: color-mix(in srgb, var(--fs-color-primary) 10%, transparent);\n }\n .fs-check-input:not(:disabled, :indeterminate, .is-invalid) + .fs-check-label:active::before {\n background-color: color-mix(in srgb, var(--fs-color-primary) 86%, var(--fs-color-black));\n border-color: var(--fs-color-primary);\n }\n .fs-check-input:checked:not(:disabled, .is-invalid) + .fs-check-label:active::after {\n transform: translateY(-1px) rotate(-45deg) scale(0.9);\n }\n .fs-switch-label {\n padding-left: 44px;\n }\n .fs-switch-label::before {\n width: 36px;\n height: 20px;\n border-radius: var(--fs-radius-md);\n }\n .fs-switch-label::after {\n position: absolute;\n left: 2px;\n width: 16px;\n height: 14px;\n border-radius: var(--fs-radius-sm);\n content: \"\";\n background-color: var(--fs-color-border);\n transition: left 0.15s ease-in-out, background-color 0.15s ease-in-out;\n }\n .fs-switch-input:checked + .fs-switch-label::before {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-switch-input:checked + .fs-switch-label::after {\n left: 18px;\n background-color: var(--fs-color-on-primary);\n }\n .fs-check-input:focus-visible + .fs-check-label::before,\n .fs-radio-input:focus-visible + .fs-radio-label::before,\n .fs-switch-input:focus-visible + .fs-switch-label::before {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-radio-input:disabled + .fs-radio-label,\n .fs-switch-input:disabled + .fs-switch-label {\n opacity: 0.5;\n pointer-events: none;\n }\n .fs-check-input:disabled + .fs-check-label {\n color: var(--fs-color-muted);\n opacity: 1;\n pointer-events: none;\n }\n .fs-check-input:disabled:not(:checked, :indeterminate) + .fs-check-label::before {\n border-color: var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n .fs-check-input:disabled:checked + .fs-check-label::before {\n border-color: color-mix(in srgb, var(--fs-color-primary) 55%, var(--fs-color-border));\n background-color: color-mix(in srgb, var(--fs-color-primary) 45%, var(--fs-color-subtle));\n }\n .fs-check-input:disabled:checked + .fs-check-label::after {\n opacity: 0.72;\n }\n .fs-radio-input.is-valid + .fs-radio-label::before {\n border-color: var(--fs-color-success);\n }\n .fs-check-input.is-invalid + .fs-check-label::before,\n .fs-radio-input.is-invalid + .fs-radio-label::before {\n border-color: var(--fs-color-danger);\n }\n .fs-check-sm .fs-check-label,\n .fs-radio-sm .fs-radio-label {\n min-height: 16px;\n padding-left: 24px;\n font-size: 0.75rem;\n }\n .fs-check-sm .fs-check-label::before,\n .fs-radio-sm .fs-radio-label::before {\n width: 15px;\n height: 15px;\n }\n .fs-check-sm .fs-check-label::after {\n left: 3px;\n width: 8px;\n height: 4px;\n }\n .fs-radio-sm .fs-radio-label::after {\n left: 4px;\n width: 7px;\n height: 7px;\n }\n .fs-check-lg .fs-check-label,\n .fs-radio-lg .fs-radio-label {\n min-height: 24px;\n padding-left: 34px;\n font-size: 1rem;\n }\n .fs-check-lg .fs-check-label::before,\n .fs-radio-lg .fs-radio-label::before {\n width: 22px;\n height: 22px;\n }\n .fs-check-lg .fs-check-label::after {\n left: 5px;\n width: 11px;\n height: 6px;\n }\n .fs-radio-lg .fs-radio-label::after {\n left: 6px;\n width: 10px;\n height: 10px;\n }\n .fs-switch-sm .fs-switch-label {\n min-height: 16px;\n padding-left: 38px;\n font-size: 0.75rem;\n }\n .fs-switch-sm .fs-switch-label::before {\n width: 30px;\n height: 16px;\n }\n .fs-switch-sm .fs-switch-label::after {\n width: 12px;\n height: 10px;\n }\n .fs-switch-sm .fs-switch-input:checked + .fs-switch-label::after {\n left: 16px;\n }\n .fs-switch-lg .fs-switch-label {\n min-height: 26px;\n padding-left: 52px;\n font-size: 1rem;\n }\n .fs-switch-lg .fs-switch-label::before {\n width: 44px;\n height: 24px;\n }\n .fs-switch-lg .fs-switch-label::after {\n width: 20px;\n height: 18px;\n }\n .fs-switch-lg .fs-switch-input:checked + .fs-switch-label::after {\n left: 22px;\n }\n .fs-check-input:indeterminate + .fs-check-label::before {\n border: 2px dashed var(--fs-color-primary);\n background-color: var(--fs-color-surface);\n }\n .fs-check-input:indeterminate + .fs-check-label::after {\n left: 4px;\n width: 10px;\n height: 0;\n opacity: 1;\n border-bottom: 2px solid var(--fs-color-primary);\n border-left: 0;\n transform: translateY(3px) rotate(0deg);\n }\n .fs-check-sm .fs-check-input:indeterminate + .fs-check-label::after {\n left: 3px;\n width: 8px;\n }\n .fs-check-lg .fs-check-input:indeterminate + .fs-check-label::after {\n left: 5px;\n width: 12px;\n }\n .fs-check-input.is-invalid + .fs-check-label::before {\n background-color: var(--fs-color-danger);\n }\n .fs-check-input.is-invalid + .fs-check-label::after {\n top: 6px;\n left: 5px;\n width: 8px;\n height: 8px;\n opacity: 1;\n border: 0;\n background-image: linear-gradient(45deg, transparent 42%, #ffffff 42% 58%, transparent 58%), linear-gradient(-45deg, transparent 42%, #ffffff 42% 58%, transparent 58%);\n transform: none;\n }\n .fs-check-sm .fs-check-input.is-invalid + .fs-check-label::after {\n top: 5px;\n left: 4px;\n width: 7px;\n height: 7px;\n }\n .fs-check-lg .fs-check-input.is-invalid + .fs-check-label::after {\n top: 6px;\n left: 6px;\n width: 10px;\n height: 10px;\n }\n}\n@layer components {\n .fs-form-range {\n --fs-range-track-height: 6px;\n --fs-range-track-color: var(--fs-color-border);\n --fs-range-fill-color: var(--fs-color-primary);\n --fs-range-thumb-size: 18px;\n --fs-range-thumb-color: var(--fs-color-surface);\n --fs-range-thumb-border-color: var(--fs-color-primary);\n --fs-range-percent: 0%;\n width: 100%;\n height: var(--fs-range-thumb-size);\n padding: 0;\n background: transparent;\n appearance: none;\n cursor: pointer;\n }\n .fs-form-range::-webkit-slider-runnable-track {\n height: var(--fs-range-track-height);\n border-radius: var(--fs-radius-sm);\n background: linear-gradient(to right, var(--fs-range-fill-color) var(--fs-range-percent), var(--fs-range-track-color) var(--fs-range-percent));\n }\n .fs-form-range::-moz-range-track {\n height: var(--fs-range-track-height);\n border-radius: var(--fs-radius-sm);\n background: linear-gradient(to right, var(--fs-range-fill-color) var(--fs-range-percent), var(--fs-range-track-color) var(--fs-range-percent));\n }\n .fs-form-range::-webkit-slider-thumb {\n width: var(--fs-range-thumb-size);\n height: var(--fs-range-thumb-size);\n margin-top: calc((var(--fs-range-track-height) - var(--fs-range-thumb-size)) / 2);\n border: 2px solid var(--fs-range-thumb-border-color);\n border-radius: 50%;\n background-color: var(--fs-range-thumb-color);\n appearance: none;\n cursor: pointer;\n }\n .fs-form-range::-moz-range-thumb {\n width: calc(var(--fs-range-thumb-size) - 4px);\n height: calc(var(--fs-range-thumb-size) - 4px);\n border: 2px solid var(--fs-range-thumb-border-color);\n border-radius: 50%;\n background-color: var(--fs-range-thumb-color);\n cursor: pointer;\n }\n .fs-form-range:focus-visible::-webkit-slider-thumb {\n outline: var(--fs-focus-width) solid var(--fs-range-thumb-border-color);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-range-thumb-border-color);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-range-thumb-border-color) 22%, transparent);\n }\n .fs-form-range:focus-visible::-moz-range-thumb {\n outline: var(--fs-focus-width) solid var(--fs-range-thumb-border-color);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-range-thumb-border-color);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-range-thumb-border-color) 22%, transparent);\n }\n .fs-form-range:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n }\n .fs-form-range:disabled::-webkit-slider-thumb {\n cursor: not-allowed;\n }\n .fs-form-range:disabled::-moz-range-thumb {\n cursor: not-allowed;\n }\n .fs-range-output {\n display: inline-block;\n min-width: 2.5em;\n color: var(--fs-color-text);\n font-size: 0.75rem;\n font-weight: 500;\n text-align: center;\n }\n}\n@layer components {\n .fs-file-upload-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 100%;\n margin-top: 12px;\n padding: 0;\n list-style: none;\n }\n .fs-file-upload-item {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n background-color: var(--fs-color-surface);\n }\n .fs-file-upload-thumb {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n overflow: hidden;\n border-radius: var(--fs-radius-sm);\n background-color: var(--fs-color-subtle);\n color: var(--fs-color-muted);\n }\n .fs-file-upload-thumb img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n .fs-file-upload-info {\n flex: 1;\n min-width: 0;\n }\n .fs-file-upload-name {\n margin: 0;\n color: var(--fs-color-text);\n font-size: 0.75rem;\n font-weight: 500;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-file-upload-size {\n margin: 0 0 4px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n }\n .fs-file-upload-item.is-error .fs-file-upload-size {\n color: var(--fs-alert-danger-text);\n }\n .fs-file-upload-remove {\n flex-shrink: 0;\n }\n}\n@layer components {\n .fs-btn {\n --fs-btn-color: var(--fs-color-text-primary);\n --fs-btn-bg: var(--fs-color-bg-subtle);\n --fs-btn-border-color: var(--fs-color-border-default);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--fs-space-1);\n min-height: var(--fs-control-height);\n padding: 0 var(--fs-control-padding-x);\n border: var(--fs-border-width) solid var(--fs-btn-border-color);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-btn-color);\n background-color: var(--fs-btn-bg);\n font-size: 0.8125rem;\n font-weight: 500;\n text-decoration: none;\n cursor: pointer;\n transition: color var(--fs-transition-fast) var(--fs-ease-standard), background-color var(--fs-transition-fast) var(--fs-ease-standard), border-color var(--fs-transition-fast) var(--fs-ease-standard), box-shadow var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-btn:hover {\n --fs-btn-bg: var(--fs-btn-hover-bg, var(--fs-color-subtle));\n }\n .fs-btn:active {\n --fs-btn-bg: var(--fs-btn-active-bg, var(--fs-color-border));\n }\n .fs-btn:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-btn:disabled,\n .fs-btn.is-disabled {\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n .fs-btn-primary {\n --fs-btn-color: var(--fs-color-on-primary);\n --fs-btn-bg: var(--fs-color-primary);\n --fs-btn-border-color: var(--fs-color-primary);\n --fs-btn-hover-bg: var(--fs-color-primary);\n --fs-btn-active-bg: var(--fs-color-primary);\n }\n .fs-btn-outline-primary {\n --fs-btn-color: var(--fs-alert-primary-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-primary);\n }\n .fs-btn-outline-primary:hover,\n .fs-btn-outline-primary:active {\n --fs-btn-color: var(--fs-color-on-primary);\n --fs-btn-bg: var(--fs-color-primary);\n }\n .fs-btn-secondary {\n --fs-btn-color: var(--fs-color-on-secondary);\n --fs-btn-bg: var(--fs-color-secondary);\n --fs-btn-border-color: var(--fs-color-secondary);\n --fs-btn-hover-bg: var(--fs-color-secondary);\n --fs-btn-active-bg: var(--fs-color-secondary);\n }\n .fs-btn-outline-secondary {\n --fs-btn-color: var(--fs-alert-secondary-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-secondary);\n }\n .fs-btn-outline-secondary:hover,\n .fs-btn-outline-secondary:active {\n --fs-btn-color: var(--fs-color-on-secondary);\n --fs-btn-bg: var(--fs-color-secondary);\n }\n .fs-btn-success {\n --fs-btn-color: var(--fs-color-on-success);\n --fs-btn-bg: var(--fs-color-success);\n --fs-btn-border-color: var(--fs-color-success);\n --fs-btn-hover-bg: var(--fs-color-success);\n --fs-btn-active-bg: var(--fs-color-success);\n }\n .fs-btn-outline-success {\n --fs-btn-color: var(--fs-alert-success-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-success);\n }\n .fs-btn-outline-success:hover,\n .fs-btn-outline-success:active {\n --fs-btn-color: var(--fs-color-on-success);\n --fs-btn-bg: var(--fs-color-success);\n }\n .fs-btn-warning {\n --fs-btn-color: var(--fs-color-on-warning);\n --fs-btn-bg: var(--fs-color-warning);\n --fs-btn-border-color: var(--fs-color-warning);\n --fs-btn-hover-bg: var(--fs-color-warning);\n --fs-btn-active-bg: var(--fs-color-warning);\n }\n .fs-btn-outline-warning {\n --fs-btn-color: var(--fs-alert-warning-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-warning);\n }\n .fs-btn-outline-warning:hover,\n .fs-btn-outline-warning:active {\n --fs-btn-color: var(--fs-color-on-warning);\n --fs-btn-bg: var(--fs-color-warning);\n }\n .fs-btn-danger {\n --fs-btn-color: var(--fs-color-on-danger);\n --fs-btn-bg: var(--fs-color-danger);\n --fs-btn-border-color: var(--fs-color-danger);\n --fs-btn-hover-bg: var(--fs-color-danger);\n --fs-btn-active-bg: var(--fs-color-danger);\n }\n .fs-btn-outline-danger {\n --fs-btn-color: var(--fs-alert-danger-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-danger);\n }\n .fs-btn-outline-danger:hover,\n .fs-btn-outline-danger:active {\n --fs-btn-color: var(--fs-color-on-danger);\n --fs-btn-bg: var(--fs-color-danger);\n }\n .fs-btn-info {\n --fs-btn-color: var(--fs-color-on-info);\n --fs-btn-bg: var(--fs-color-info);\n --fs-btn-border-color: var(--fs-color-info);\n --fs-btn-hover-bg: var(--fs-color-info);\n --fs-btn-active-bg: var(--fs-color-info);\n }\n .fs-btn-outline-info {\n --fs-btn-color: var(--fs-alert-info-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-info);\n }\n .fs-btn-outline-info:hover,\n .fs-btn-outline-info:active {\n --fs-btn-color: var(--fs-color-on-info);\n --fs-btn-bg: var(--fs-color-info);\n }\n .fs-btn-sm {\n min-height: var(--fs-control-height-sm);\n padding: 0 var(--fs-control-padding-x-sm);\n font-size: 0.75rem;\n }\n .fs-btn-lg {\n min-height: var(--fs-control-height-lg);\n padding: 0 var(--fs-control-padding-x-lg);\n font-size: 1rem;\n }\n .fs-btn-close {\n position: relative;\n width: 20px;\n height: 20px;\n padding: 0;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface-raised);\n cursor: pointer;\n }\n .fs-btn-close::before,\n .fs-btn-close::after {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 12px;\n height: 2px;\n background-color: currentcolor;\n content: \"\";\n }\n .fs-btn-close::before {\n transform: translate(-50%, -50%) rotate(45deg);\n }\n .fs-btn-close::after {\n transform: translate(-50%, -50%) rotate(-45deg);\n }\n .fs-btn-close:hover {\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n }\n .fs-btn-close:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n}\n@layer components {\n .fs-card {\n position: relative;\n display: flex;\n flex-direction: column;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-lg);\n background-color: var(--fs-color-surface);\n }\n .fs-card-horizontal {\n flex-direction: row;\n }\n .fs-card-horizontal .fs-card-header:first-child {\n border-radius: calc(var(--fs-radius-lg) - 1px) 0 0 calc(var(--fs-radius-lg) - 1px);\n border-right: 1px solid var(--fs-color-border);\n border-bottom: none;\n }\n .fs-card-horizontal .fs-card-footer:last-child {\n border-radius: 0 calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px) 0;\n border-left: 1px solid var(--fs-color-border);\n border-top: none;\n }\n .fs-card-clickable {\n transition: border-color var(--fs-transition-fast) var(--fs-ease-standard), box-shadow var(--fs-transition-fast) var(--fs-ease-standard), transform var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-card-clickable:hover,\n .fs-card-clickable:focus-within {\n border-color: var(--fs-color-primary);\n box-shadow: var(--fs-shadow-sm);\n transform: translateY(-1px);\n }\n .fs-stretched-link {\n color: inherit;\n text-decoration: none;\n }\n .fs-stretched-link::after {\n position: absolute;\n inset: 0;\n z-index: 1;\n content: \"\";\n }\n .fs-card-header,\n .fs-card-body,\n .fs-card-footer {\n padding: 10px;\n }\n .fs-card-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n border-bottom: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n .fs-card-header .fs-card-title {\n margin: 0;\n }\n .fs-card-header:first-child {\n border-radius: calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px) 0 0;\n }\n .fs-card-footer {\n border-top: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n .fs-card-footer:last-child {\n border-radius: 0 0 calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px);\n }\n .fs-card-title {\n margin: 0 0 4px;\n color: var(--fs-color-text);\n font-size: 1rem;\n font-weight: 500;\n }\n .fs-card-subtitle {\n margin: 0 0 8px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-card-text {\n margin: 0 0 8px;\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n }\n .fs-card-text:last-child {\n margin-bottom: 0;\n }\n .fs-card-sm .fs-card-header,\n .fs-card-sm .fs-card-body,\n .fs-card-sm .fs-card-footer {\n padding: 5px;\n }\n .fs-card-lg .fs-card-header,\n .fs-card-lg .fs-card-body,\n .fs-card-lg .fs-card-footer {\n padding: 15px;\n }\n}\n@layer components {\n .fs-alert {\n display: flex;\n align-items: flex-start;\n gap: 8px;\n padding: 12px 16px;\n border: 1px solid var(--fs-color-border);\n border-left: 5px solid var(--fs-color-border);\n border-radius: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 0.75rem;\n }\n .fs-alert-primary {\n color: var(--fs-alert-primary-text);\n background-color: var(--fs-alert-primary-bg);\n border-color: var(--fs-color-primary);\n }\n .fs-alert-secondary {\n color: var(--fs-alert-secondary-text);\n background-color: var(--fs-alert-secondary-bg);\n border-color: var(--fs-color-secondary);\n }\n .fs-alert-success {\n color: var(--fs-alert-success-text);\n background-color: var(--fs-alert-success-bg);\n border-color: var(--fs-color-success);\n }\n .fs-alert-warning {\n color: var(--fs-alert-warning-text);\n background-color: var(--fs-alert-warning-bg);\n border-color: var(--fs-color-warning);\n }\n .fs-alert-danger {\n color: var(--fs-alert-danger-text);\n background-color: var(--fs-alert-danger-bg);\n border-color: var(--fs-color-danger);\n }\n .fs-alert-info {\n color: var(--fs-alert-info-text);\n background-color: var(--fs-alert-info-bg);\n border-color: var(--fs-color-info);\n }\n}\n@layer components {\n .fs-badge {\n --fs-badge-color: var(--fs-color-text);\n --fs-badge-bg: var(--fs-color-subtle);\n --fs-badge-border: transparent;\n --fs-badge-height: 22px;\n --fs-badge-radius: 0;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n justify-content: center;\n min-height: var(--fs-badge-height);\n padding: 1px 8px 3px;\n border: 1px solid var(--fs-badge-border);\n border-radius: var(--fs-badge-radius);\n color: var(--fs-badge-color);\n background-color: var(--fs-badge-bg);\n font-size: 0.6875rem;\n font-weight: 500;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n }\n .fs-badge-primary {\n --fs-badge-color: #ffffff;\n --fs-badge-bg: var(--fs-color-primary);\n }\n .fs-badge-soft-primary {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-primary) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-primary) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-primary) 38%, transparent);\n }\n .fs-badge-outline-primary {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-primary) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-secondary {\n --fs-badge-color: #ffffff;\n --fs-badge-bg: var(--fs-color-secondary);\n }\n .fs-badge-soft-secondary {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-secondary) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-secondary) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-secondary) 38%, transparent);\n }\n .fs-badge-outline-secondary {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-secondary) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-success {\n --fs-badge-color: #000000;\n --fs-badge-bg: var(--fs-color-success);\n }\n .fs-badge-soft-success {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-success) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-success) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-success) 38%, transparent);\n }\n .fs-badge-outline-success {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-success) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-warning {\n --fs-badge-color: #000000;\n --fs-badge-bg: var(--fs-color-warning);\n }\n .fs-badge-soft-warning {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-warning) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-warning) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-warning) 38%, transparent);\n }\n .fs-badge-outline-warning {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-warning) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-danger {\n --fs-badge-color: #ffffff;\n --fs-badge-bg: var(--fs-color-danger);\n }\n .fs-badge-soft-danger {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-danger) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-danger) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-danger) 38%, transparent);\n }\n .fs-badge-outline-danger {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-danger) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-info {\n --fs-badge-color: #ffffff;\n --fs-badge-bg: var(--fs-color-info);\n }\n .fs-badge-soft-info {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-info) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-info) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-info) 38%, transparent);\n }\n .fs-badge-outline-info {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-info) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-sm {\n --fs-badge-height: 18px;\n padding: 0 6px 2px;\n font-size: 0.6875rem;\n }\n .fs-badge-lg {\n --fs-badge-height: 26px;\n padding: 2px 10px 4px;\n font-size: 0.8125rem;\n }\n .fs-badge-dot::before {\n width: 6px;\n height: 6px;\n flex: 0 0 6px;\n border-radius: 50%;\n background-color: currentcolor;\n transform: translateY(1px);\n content: \"\";\n }\n .fs-badge-count {\n min-width: var(--fs-badge-height);\n padding-inline: 6px;\n font-variant-numeric: tabular-nums;\n }\n .fs-badge-split {\n --fs-badge-split-label-bg: var(--fs-color-black);\n --fs-badge-split-label-color: var(--fs-color-white);\n --fs-badge-split-value-bg: var(--fs-color-primary);\n --fs-badge-split-value-color: #ffffff;\n --fs-badge-split-height: 22px;\n --fs-badge-split-radius: 0;\n display: inline-flex;\n min-height: var(--fs-badge-split-height);\n overflow: hidden;\n border-radius: var(--fs-badge-split-radius);\n font-size: 0.6875rem;\n font-weight: 500;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n }\n .fs-badge-split-label,\n .fs-badge-split-value {\n display: inline-flex;\n align-items: center;\n min-height: var(--fs-badge-split-height);\n padding: 1px 8px 3px;\n }\n .fs-badge-split-label {\n color: var(--fs-badge-split-label-color);\n background-color: var(--fs-badge-split-label-bg);\n }\n .fs-badge-split-value {\n color: var(--fs-badge-split-value-color);\n background-color: var(--fs-badge-split-value-bg);\n font-variant-numeric: tabular-nums;\n }\n .fs-badge-split-primary {\n --fs-badge-split-value-bg: var(--fs-color-primary);\n --fs-badge-split-value-color: #ffffff;\n }\n .fs-badge-split-secondary {\n --fs-badge-split-value-bg: var(--fs-color-secondary);\n --fs-badge-split-value-color: #ffffff;\n }\n .fs-badge-split-success {\n --fs-badge-split-value-bg: var(--fs-color-success);\n --fs-badge-split-value-color: #000000;\n }\n .fs-badge-split-warning {\n --fs-badge-split-value-bg: var(--fs-color-warning);\n --fs-badge-split-value-color: #000000;\n }\n .fs-badge-split-danger {\n --fs-badge-split-value-bg: var(--fs-color-danger);\n --fs-badge-split-value-color: #ffffff;\n }\n .fs-badge-split-info {\n --fs-badge-split-value-bg: var(--fs-color-info);\n --fs-badge-split-value-color: #ffffff;\n }\n .fs-badge-split.fs-badge-sm {\n --fs-badge-split-height: 18px;\n min-height: var(--fs-badge-split-height);\n padding: 0;\n }\n .fs-badge-split.fs-badge-lg {\n --fs-badge-split-height: 26px;\n min-height: var(--fs-badge-split-height);\n padding: 0;\n font-size: 0.8125rem;\n }\n .fs-badge-split.fs-badge-sm .fs-badge-split-label,\n .fs-badge-split.fs-badge-sm .fs-badge-split-value {\n padding: 0 6px 2px;\n }\n .fs-badge-split.fs-badge-lg .fs-badge-split-label,\n .fs-badge-split.fs-badge-lg .fs-badge-split-value {\n padding: 2px 10px 4px;\n }\n}\n@layer components {\n .fs-table {\n width: 100%;\n margin-bottom: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n border-collapse: collapse;\n }\n .fs-table th,\n .fs-table td {\n padding: 8px 12px;\n border-bottom: 1px solid var(--fs-color-border);\n text-align: left;\n vertical-align: middle;\n }\n .fs-table thead th {\n border-bottom-width: 2px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n font-weight: 500;\n text-transform: uppercase;\n }\n .fs-table-striped tbody tr:nth-of-type(odd) {\n background-color: var(--fs-color-subtle);\n }\n .fs-table-hover tbody tr:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-table-bordered th,\n .fs-table-bordered td {\n border: 1px solid var(--fs-color-border);\n }\n .fs-table-borderless th,\n .fs-table-borderless td {\n border: 0;\n }\n .fs-table-primary {\n background-color: var(--fs-alert-primary-bg);\n color: var(--fs-alert-primary-text);\n }\n .fs-table-secondary {\n background-color: var(--fs-alert-secondary-bg);\n color: var(--fs-alert-secondary-text);\n }\n .fs-table-success {\n background-color: var(--fs-alert-success-bg);\n color: var(--fs-alert-success-text);\n }\n .fs-table-warning {\n background-color: var(--fs-alert-warning-bg);\n color: var(--fs-alert-warning-text);\n }\n .fs-table-danger {\n background-color: var(--fs-alert-danger-bg);\n color: var(--fs-alert-danger-text);\n }\n .fs-table-info {\n background-color: var(--fs-alert-info-bg);\n color: var(--fs-alert-info-text);\n }\n .fs-table-sm th,\n .fs-table-sm td {\n padding: 4px 8px;\n }\n .fs-table-responsive {\n overflow-x: auto;\n }\n}\n@layer components {\n .fs-navbar {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: 16px;\n padding: 12px 16px;\n border-bottom: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface);\n }\n .fs-navbar-brand {\n color: var(--fs-color-text);\n font-size: 1rem;\n font-weight: 500;\n text-decoration: none;\n }\n .fs-navbar-nav {\n display: flex;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-nav-link {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 8px 12px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n text-decoration: none;\n transition: background-color 0.15s ease-in-out;\n }\n .fs-nav-link:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-nav-link:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-nav-link.is-active {\n color: var(--fs-alert-primary-text);\n font-weight: 500;\n }\n .fs-nav-link.is-disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n }\n}\n@layer components {\n .fs-combobox {\n position: relative;\n display: inline-flex;\n width: 100%;\n }\n .fs-combobox-listbox {\n overflow-y: auto;\n max-height: 240px;\n }\n}\n@layer components {\n [data-theme=dark] .fs-form-control[type=date]::-webkit-calendar-picker-indicator,\n [data-theme=dark] .fs-form-control[type=time]::-webkit-calendar-picker-indicator {\n filter: invert(1);\n }\n .fs-datepicker {\n position: relative;\n display: inline-flex;\n width: 100%;\n }\n .fs-datepicker-panel {\n display: none;\n width: min(280px, 100vw - 2 * var(--fs-space-3));\n padding: 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-dropdown);\n }\n .fs-datepicker-panel.is-open {\n display: block;\n }\n .fs-datepicker-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 8px;\n }\n .fs-datepicker-nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n padding: 0;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 0.8125rem;\n cursor: pointer;\n }\n .fs-datepicker-nav:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-datepicker-nav:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-datepicker-title {\n font-size: 0.75rem;\n font-weight: 500;\n text-transform: capitalize;\n }\n .fs-datepicker-grid {\n display: flex;\n flex-direction: column;\n gap: 2px;\n }\n .fs-datepicker-weekdays,\n .fs-datepicker-week {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n gap: 2px;\n }\n .fs-datepicker-weekday {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 28px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 500;\n text-align: center;\n text-transform: uppercase;\n }\n .fs-datepicker-day {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 32px;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 0.75rem;\n cursor: pointer;\n }\n .fs-datepicker-day:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-datepicker-day:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-datepicker-day.is-outside {\n color: var(--fs-color-muted);\n }\n .fs-datepicker-day.is-today {\n font-weight: 600;\n box-shadow: inset 0 0 0 1px var(--fs-color-primary);\n }\n .fs-datepicker-day.is-selected {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-datepicker-day:disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n opacity: 0.4;\n }\n}\n@layer components {\n .fs-datatable-toolbar {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 12px;\n }\n .fs-datatable-sort-btn {\n display: inline-flex;\n align-items: center;\n width: 100%;\n padding: 0;\n border: 0;\n background-color: var(--fs-color-surface-raised);\n color: inherit;\n font: inherit;\n text-transform: inherit;\n text-align: left;\n cursor: pointer;\n }\n .fs-datatable-sort-btn:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-datatable-sort-btn::after {\n flex-shrink: 0;\n margin-left: auto;\n padding-left: 4px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n content: \"↕\";\n }\n th[aria-sort=ascending] .fs-datatable-sort-btn::after {\n color: var(--fs-color-text);\n content: \"↑\";\n }\n th[aria-sort=descending] .fs-datatable-sort-btn::after {\n color: var(--fs-color-text);\n content: \"↓\";\n }\n .fs-datatable [data-fs-datatable-pagination] {\n display: flex;\n justify-content: flex-end;\n margin-top: 12px;\n }\n .fs-datatable td:focus-visible,\n .fs-datatable th:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n outline-offset: -2px;\n }\n}\n@layer components {\n .fs-command-palette {\n position: fixed;\n inset: 0;\n z-index: var(--fs-z-modal);\n display: none;\n align-items: flex-start;\n justify-content: center;\n padding: 72px 16px 16px;\n background-color: rgba(0, 0, 0, 0.5);\n }\n .fs-command-palette.is-open {\n display: flex;\n }\n .fs-command-palette-dialog {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: 480px;\n max-height: calc(100vh - 88px);\n overflow: hidden;\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n }\n .fs-command-palette-input {\n width: 100%;\n padding: 16px 20px;\n border: none;\n border-bottom: 1px solid var(--fs-color-border);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 1rem;\n }\n .fs-command-palette-input:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-command-palette-list {\n margin: 0;\n padding: 6px 0;\n overflow-y: auto;\n list-style: none;\n }\n}\n@layer components {\n .fs-tree,\n .fs-tree [role=group] {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-tree [role=group] {\n padding-left: 20px;\n }\n .fs-tree [role=treeitem] {\n border-radius: var(--fs-radius-sm);\n }\n .fs-tree [role=treeitem]:focus-visible {\n outline: none;\n }\n .fs-tree [role=treeitem]:focus-visible > .fs-tree-label {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-tree-label {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 8px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n cursor: pointer;\n user-select: none;\n }\n .fs-tree-label:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-tree [role=treeitem][aria-selected=true] > .fs-tree-label {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-tree-toggle {\n flex-shrink: 0;\n width: 0;\n height: 0;\n border-top: 4px solid transparent;\n border-bottom: 4px solid transparent;\n border-left: 5px solid currentcolor;\n transition: transform 0.15s ease-in-out;\n }\n .fs-tree [role=treeitem][aria-expanded=true] > .fs-tree-label > .fs-tree-toggle {\n transform: rotate(90deg);\n }\n}\n@layer components {\n .fs-dropdown {\n position: relative;\n display: inline-flex;\n }\n .fs-dropdown-toggle::after {\n display: inline-block;\n width: 0;\n height: 0;\n vertical-align: middle;\n content: \"\";\n border-top: 5px solid;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n }\n .fs-dropdown-menu {\n position: absolute;\n display: none;\n min-width: 180px;\n margin: 0;\n padding: 6px 0;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-dropdown);\n }\n .fs-dropdown-menu.is-open {\n display: block;\n }\n .fs-dropdown-item {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 8px 16px;\n border: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 0.8125rem;\n text-align: left;\n text-decoration: none;\n cursor: pointer;\n }\n .fs-dropdown-item:hover,\n .fs-dropdown-item:focus-visible {\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n outline: none;\n }\n .fs-dropdown-item.is-active {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-dropdown-item.is-disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n opacity: 0.6;\n }\n .fs-dropdown-divider {\n height: 1px;\n margin: 6px 0;\n border: none;\n background-color: var(--fs-color-border);\n }\n .fs-dropdown-header {\n padding: 4px 16px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 500;\n text-transform: uppercase;\n }\n}\n@layer components {\n .fs-modal {\n position: fixed;\n inset: 0;\n z-index: var(--fs-z-modal);\n display: none;\n align-items: center;\n justify-content: center;\n padding: var(--fs-space-4);\n background-color: rgba(0, 0, 0, 0.5);\n }\n .fs-modal.is-open {\n display: flex;\n }\n .fs-modal-dialog {\n width: 100%;\n max-width: 480px;\n }\n .fs-modal-dialog.fs-modal-sm {\n max-width: 320px;\n }\n .fs-modal-dialog.fs-modal-lg {\n max-width: 720px;\n }\n .fs-modal-content {\n display: flex;\n flex-direction: column;\n max-height: calc(100vh - 2 * var(--fs-space-4));\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n }\n .fs-modal-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n .fs-modal-title {\n margin: 0;\n font-size: 1rem;\n font-weight: 500;\n }\n .fs-modal-body {\n padding: 20px;\n overflow-y: auto;\n }\n .fs-modal-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 16px 20px;\n border-top: 1px solid var(--fs-color-border);\n }\n}\n@layer components {\n .fs-alert-dialog-message {\n margin: 4px 0 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n}\n@layer components {\n .fs-divider {\n margin: 16px 0;\n border: 0;\n border-top: 1px solid var(--fs-color-border);\n }\n .fs-divider:not(hr) {\n display: flex;\n align-items: center;\n border-top: none;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-divider:not(hr)::before,\n .fs-divider:not(hr)::after {\n flex: 1;\n content: \"\";\n border-top: 1px solid var(--fs-color-border);\n }\n .fs-divider-label {\n padding: 0 12px;\n }\n}\n@layer components {\n .fs-empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: 48px 24px;\n text-align: center;\n }\n .fs-empty-state[hidden] {\n display: none;\n }\n .fs-empty-state-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 64px;\n height: 64px;\n margin-bottom: 16px;\n border-radius: 50%;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n font-size: 28px;\n }\n .fs-empty-state-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: 1rem;\n font-weight: 500;\n }\n .fs-empty-state-text {\n max-width: 360px;\n margin: 4px 0 20px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n}\n@layer components {\n .fs-rating {\n display: inline-flex;\n flex-direction: row-reverse;\n }\n .fs-rating-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n .fs-rating-star {\n display: flex;\n padding: 2px;\n color: var(--fs-color-border);\n font-size: 24px;\n cursor: pointer;\n }\n .fs-rating-input:checked ~ .fs-rating-star,\n .fs-rating-star:hover,\n .fs-rating-star:hover ~ .fs-rating-star {\n color: var(--fs-color-warning);\n }\n .fs-rating-input:checked ~ .fs-rating-star .fs-icon,\n .fs-rating-star:hover .fs-icon,\n .fs-rating-star:hover ~ .fs-rating-star .fs-icon {\n fill: currentcolor;\n }\n .fs-rating-input:focus-visible + .fs-rating-star {\n border-radius: var(--fs-radius-sm);\n outline: 2px solid var(--fs-color-primary);\n outline-offset: 2px;\n }\n .fs-rating-input:disabled + .fs-rating-star {\n opacity: 0.5;\n pointer-events: none;\n }\n .fs-rating-sm .fs-rating-star {\n font-size: 16px;\n }\n .fs-rating-lg .fs-rating-star {\n font-size: 32px;\n }\n}\n@layer components {\n .fs-tag {\n gap: 0;\n padding: 0 0 0 8px;\n }\n .fs-tag-label {\n min-width: 0;\n }\n .fs-tag-truncate {\n max-inline-size: min(100%, var(--fs-tag-max-inline-size, 20rem));\n }\n .fs-tag-truncate .fs-tag-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-tag-icon {\n display: inline-grid;\n width: 12px;\n height: 12px;\n flex: 0 0 12px;\n margin-right: 4px;\n place-items: center;\n }\n .fs-tag-icon .fs-icon {\n width: 12px;\n height: 12px;\n stroke: currentcolor;\n }\n .fs-tag .fs-btn-close {\n width: calc(var(--fs-badge-height) - 2px);\n height: calc(var(--fs-badge-height) - 2px);\n flex: 0 0 calc(var(--fs-badge-height) - 2px);\n margin-left: 4px;\n border-radius: 0;\n background-color: transparent;\n color: inherit;\n opacity: 0.7;\n transition: opacity 0.1s ease-in-out, background-color 0.1s ease-in-out, transform 0.1s ease-in-out;\n }\n .fs-tag .fs-btn-close::before,\n .fs-tag .fs-btn-close::after {\n top: calc(50% + 1px);\n width: 8px;\n }\n .fs-tag .fs-btn-close:hover {\n color: inherit;\n background-color: color-mix(in srgb, currentcolor 18%, transparent);\n opacity: 1;\n }\n .fs-tag .fs-btn-close:active {\n background-color: color-mix(in srgb, currentcolor 28%, transparent);\n transform: scale(0.9);\n }\n .fs-tag-group {\n display: flex;\n flex-wrap: wrap;\n gap: 0;\n }\n .fs-tag:focus-within {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-tag.is-loading,\n .fs-tag[aria-busy=true] {\n --fs-badge-bg: var(--fs-color-warning);\n --fs-badge-color: var(--fs-color-black);\n --fs-badge-border: transparent;\n cursor: progress;\n }\n .fs-tag.is-loading .fs-spinner,\n .fs-tag[aria-busy=true] .fs-spinner {\n width: 12px;\n height: 12px;\n flex: 0 0 12px;\n margin: 0 6px 0 4px;\n border-width: 2px;\n color: var(--fs-color-black);\n }\n .fs-tag.is-loading .fs-btn-close,\n .fs-tag[aria-busy=true] .fs-btn-close {\n display: none;\n }\n .fs-tag-group .fs-tag + .fs-tag {\n border-inline-start-color: color-mix(in srgb, currentcolor 24%, transparent);\n }\n .fs-tag-group .fs-tag {\n padding-inline-start: calc(var(--fs-badge-height) + 2px);\n transition: background-color 0.1s ease-in-out;\n }\n .fs-tag-group .fs-btn-close {\n pointer-events: none;\n opacity: 0;\n }\n .fs-tag-group .fs-tag:hover .fs-btn-close,\n .fs-tag-group .fs-tag:focus-within .fs-btn-close {\n pointer-events: auto;\n opacity: 0.7;\n }\n .fs-tag-group .fs-tag:hover,\n .fs-tag-group .fs-tag:focus-within {\n background-color: color-mix(in srgb, currentcolor 18%, transparent);\n }\n .fs-tag-overflow {\n --fs-badge-bg: transparent;\n --fs-badge-color: var(--fs-alert-primary-text);\n --fs-badge-border: transparent;\n width: var(--fs-badge-height);\n height: var(--fs-badge-height);\n min-width: var(--fs-badge-height);\n padding: 0;\n border: 0;\n appearance: none;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font: inherit;\n line-height: 0;\n }\n .fs-tag-overflow .fs-icon {\n display: block;\n flex: 0 0 13px;\n width: 13px;\n height: 13px;\n stroke: currentcolor;\n }\n .fs-tag-overflow:hover,\n .fs-tag-group .fs-tag-overflow:hover {\n background-color: transparent;\n border-color: transparent;\n }\n .fs-tag-group .fs-tag-overflow {\n padding-inline-start: 0;\n }\n .fs-tag-overflow:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-tag-group .fs-btn-close:hover {\n color: inherit;\n background-color: transparent;\n opacity: 0.7;\n }\n .fs-tag-protected {\n pointer-events: none;\n }\n .fs-tag-lock {\n display: inline-grid;\n width: calc(var(--fs-badge-height) - 2px);\n height: calc(var(--fs-badge-height) - 2px);\n margin-left: 4px;\n place-items: center;\n }\n .fs-tag-lock svg {\n width: 12px;\n height: 12px;\n stroke: currentcolor;\n stroke-width: 2;\n }\n}\n@layer components {\n .fs-offcanvas {\n position: fixed;\n z-index: var(--fs-z-offcanvas);\n display: flex;\n flex-direction: column;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n visibility: hidden;\n transition: transform 0.3s ease, visibility 0.3s ease;\n }\n .fs-offcanvas.is-open {\n visibility: visible;\n transform: none;\n }\n .fs-offcanvas-start {\n inset: 0 auto 0 0;\n width: 320px;\n transform: translateX(-100%);\n }\n .fs-offcanvas-end {\n inset: 0 0 0 auto;\n width: 320px;\n transform: translateX(100%);\n }\n .fs-offcanvas-top {\n inset: 0 0 auto;\n height: 40vh;\n transform: translateY(-100%);\n }\n .fs-offcanvas-bottom {\n inset: auto 0 0;\n height: 40vh;\n transform: translateY(100%);\n }\n .fs-offcanvas-backdrop {\n position: fixed;\n inset: 0;\n z-index: calc(var(--fs-z-offcanvas) - 1);\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n visibility: hidden;\n transition: opacity 0.3s ease, visibility 0.3s ease;\n }\n .fs-offcanvas-backdrop.is-open {\n visibility: visible;\n opacity: 1;\n }\n .fs-offcanvas-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n .fs-offcanvas-title {\n margin: 0;\n font-size: 1rem;\n font-weight: 500;\n }\n .fs-offcanvas-body {\n flex: 1 1 auto;\n padding: 20px;\n overflow-y: auto;\n }\n .fs-offcanvas-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 16px 20px;\n border-top: 1px solid var(--fs-color-border);\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-offcanvas,\n .fs-offcanvas-backdrop {\n transition: none;\n }\n }\n}\n@layer components {\n .fs-accordion {\n display: flex;\n flex-direction: column;\n }\n .fs-accordion-item {\n overflow: hidden;\n border: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface-raised);\n }\n .fs-accordion-item + .fs-accordion-item {\n border-top: none;\n }\n .fs-accordion-item:first-child {\n border-top-left-radius: var(--fs-radius-md);\n border-top-right-radius: var(--fs-radius-md);\n }\n .fs-accordion-item:last-child {\n border-bottom-right-radius: var(--fs-radius-md);\n border-bottom-left-radius: var(--fs-radius-md);\n }\n .fs-accordion-header {\n margin: 0;\n }\n .fs-accordion-button {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 14px 16px;\n border: none;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: 0.8125rem;\n font-weight: 500;\n text-align: left;\n cursor: pointer;\n }\n .fs-accordion-button:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-accordion-button:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-accordion-button::after {\n flex-shrink: 0;\n width: 8px;\n height: 8px;\n margin-left: 12px;\n content: \"\";\n border-right: 2px solid currentcolor;\n border-bottom: 2px solid currentcolor;\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out;\n }\n .fs-accordion-button[aria-expanded=true]::after {\n transform: rotate(-135deg);\n }\n .fs-accordion-collapse {\n overflow: hidden;\n }\n .fs-accordion-body {\n padding: 16px;\n border-top: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface-raised);\n }\n}\n@layer components {\n .fs-tabs {\n display: flex;\n border-bottom: var(--fs-border-width) solid var(--fs-color-border-default);\n }\n .fs-tabs .fs-nav-link {\n margin-bottom: -1px;\n border-bottom: 2px solid transparent;\n border-radius: var(--fs-radius-sm) var(--fs-radius-sm) 0 0;\n }\n .fs-tabs .fs-nav-link.is-active {\n border-bottom-color: var(--fs-color-primary);\n }\n .fs-tabs-pill {\n gap: 4px;\n border-bottom: none;\n }\n .fs-tabs-pill .fs-nav-link {\n margin-bottom: 0;\n border-bottom: none;\n border-radius: var(--fs-radius-sm);\n }\n .fs-tabs-pill .fs-nav-link.is-active {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-tabs-depth {\n gap: 2px;\n padding: 4px 4px 0;\n background-color: var(--fs-color-subtle);\n }\n .fs-tabs-depth .fs-nav-link {\n margin-bottom: -1px;\n border: 1px solid transparent;\n border-bottom: none;\n border-radius: var(--fs-radius-sm) var(--fs-radius-sm) 0 0;\n }\n .fs-tabs-depth .fs-nav-link.is-active {\n border-color: var(--fs-color-border);\n background-color: var(--fs-color-surface);\n }\n .fs-tabs-center {\n justify-content: center;\n }\n .fs-tabs-right {\n justify-content: flex-end;\n }\n .fs-tabs-fill .fs-nav-link {\n flex: 1;\n justify-content: center;\n text-align: center;\n }\n .fs-tabs-sm .fs-nav-link {\n padding: 6px 10px;\n font-size: 0.75rem;\n }\n .fs-tabs-lg .fs-nav-link {\n padding: 10px 16px;\n font-size: 1rem;\n }\n .fs-tab-content > .fs-tab-pane {\n display: none;\n }\n .fs-tab-content > .fs-tab-pane.is-active {\n display: block;\n }\n}\n@layer components {\n .fs-tooltip {\n position: absolute;\n z-index: var(--fs-z-tooltip);\n display: none;\n max-width: 220px;\n }\n .fs-tooltip.is-open {\n display: block;\n }\n .fs-tooltip-inner {\n padding: 6px 10px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-tooltip-text);\n background-color: var(--fs-tooltip-bg);\n font-size: 0.6875rem;\n text-align: center;\n }\n .fs-tooltip-arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--fs-tooltip-bg);\n transform: rotate(45deg);\n }\n .fs-tooltip[data-placement=top] .fs-tooltip-arrow {\n bottom: -4px;\n left: 50%;\n margin-left: -4px;\n }\n .fs-tooltip[data-placement=bottom] .fs-tooltip-arrow {\n top: -4px;\n left: 50%;\n margin-left: -4px;\n }\n .fs-tooltip[data-placement=left] .fs-tooltip-arrow {\n top: 50%;\n right: -4px;\n margin-top: -4px;\n }\n .fs-tooltip[data-placement=right] .fs-tooltip-arrow {\n top: 50%;\n left: -4px;\n margin-top: -4px;\n }\n}\n@layer components {\n .fs-popover {\n position: absolute;\n z-index: var(--fs-z-offcanvas);\n display: none;\n max-width: 280px;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n box-shadow: var(--fs-shadow-md);\n }\n .fs-popover.is-open {\n display: block;\n }\n .fs-popover-header {\n padding: 10px 14px;\n background-color: var(--fs-color-subtle);\n border-bottom: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md) var(--fs-radius-md) 0 0;\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-popover-body {\n padding: 14px;\n font-size: 0.75rem;\n }\n .fs-popover-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 10px 14px;\n border-top: 1px solid var(--fs-color-border);\n }\n .fs-popover-arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--fs-color-surface);\n border: 1px solid var(--fs-color-border);\n transform: rotate(45deg);\n }\n .fs-popover[data-placement=top] .fs-popover-arrow {\n bottom: -5px;\n left: 50%;\n margin-left: -4px;\n border-top: 0;\n border-left: 0;\n }\n .fs-popover[data-placement=bottom] .fs-popover-arrow {\n top: -5px;\n left: 50%;\n margin-left: -4px;\n border-right: 0;\n border-bottom: 0;\n }\n .fs-popover[data-placement=left] .fs-popover-arrow {\n top: 50%;\n right: -5px;\n margin-top: -4px;\n border-bottom: 0;\n border-left: 0;\n }\n .fs-popover[data-placement=right] .fs-popover-arrow {\n top: 50%;\n left: -5px;\n margin-top: -4px;\n border-top: 0;\n border-right: 0;\n }\n .fs-popover-hover-card {\n max-width: 320px;\n }\n .fs-popover-hover-card .fs-popover-body {\n display: flex;\n gap: 12px;\n }\n}\n@layer components {\n .fs-toast-container {\n position: fixed;\n right: 16px;\n bottom: 16px;\n z-index: var(--fs-z-toast);\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: min(360px, 100%);\n max-width: calc(100vw - 2 * var(--fs-space-3));\n }\n .fs-toast {\n display: flex;\n overflow: hidden;\n flex-direction: column;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n }\n .fs-toast-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 12px;\n border-bottom: 1px solid var(--fs-color-border);\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-toast-body {\n padding: 12px;\n font-size: 0.75rem;\n }\n .fs-toast-primary .fs-toast-header {\n color: var(--fs-alert-primary-text);\n background-color: var(--fs-alert-primary-bg);\n }\n .fs-toast-secondary .fs-toast-header {\n color: var(--fs-alert-secondary-text);\n background-color: var(--fs-alert-secondary-bg);\n }\n .fs-toast-success .fs-toast-header {\n color: var(--fs-alert-success-text);\n background-color: var(--fs-alert-success-bg);\n }\n .fs-toast-warning .fs-toast-header {\n color: var(--fs-alert-warning-text);\n background-color: var(--fs-alert-warning-bg);\n }\n .fs-toast-danger .fs-toast-header {\n color: var(--fs-alert-danger-text);\n background-color: var(--fs-alert-danger-bg);\n }\n .fs-toast-info .fs-toast-header {\n color: var(--fs-alert-info-text);\n background-color: var(--fs-alert-info-bg);\n }\n}\n@layer components {\n .fs-pagination {\n display: flex;\n gap: 0.25rem;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-page-link {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 32px;\n height: 32px;\n padding: 0 8px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n text-decoration: none;\n transition: background-color 0.15s ease-in-out;\n }\n .fs-page-link:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-page-link:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-page-item.is-active .fs-page-link {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-page-item.is-disabled .fs-page-link {\n color: var(--fs-color-muted);\n opacity: 0.6;\n pointer-events: none;\n }\n .fs-pagination-bordered {\n gap: 0;\n }\n .fs-pagination-bordered .fs-page-link {\n border-radius: 0;\n }\n .fs-pagination-bordered .fs-page-item:not(:first-child) .fs-page-link {\n margin-left: -1px;\n }\n .fs-pagination-bordered .fs-page-item:first-child .fs-page-link {\n border-top-left-radius: var(--fs-radius-sm);\n border-bottom-left-radius: var(--fs-radius-sm);\n }\n .fs-pagination-bordered .fs-page-item:last-child .fs-page-link {\n border-top-right-radius: var(--fs-radius-sm);\n border-bottom-right-radius: var(--fs-radius-sm);\n }\n .fs-pagination-bordered .fs-page-link:hover,\n .fs-pagination-bordered .fs-page-item.is-active .fs-page-link {\n position: relative;\n z-index: 1;\n }\n .fs-pagination-sm .fs-page-link {\n min-width: 26px;\n height: 26px;\n padding: 0 6px;\n font-size: 0.6875rem;\n }\n .fs-pagination-lg .fs-page-link {\n min-width: 40px;\n height: 40px;\n padding: 0 12px;\n font-size: 0.8125rem;\n }\n .fs-page-link-text {\n gap: 6px;\n padding: 0 14px;\n }\n}\n@layer components {\n .fs-breadcrumb {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n font-size: 0.75rem;\n }\n .fs-breadcrumb-item {\n display: flex;\n align-items: center;\n gap: 4px;\n color: var(--fs-color-muted);\n }\n .fs-breadcrumb-item + .fs-breadcrumb-item::before {\n color: var(--fs-color-muted);\n content: \"/\";\n }\n .fs-breadcrumb-item a {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--fs-alert-primary-text);\n text-decoration: none;\n }\n .fs-breadcrumb-item a:hover {\n text-decoration: underline;\n }\n .fs-breadcrumb-item.is-active {\n color: var(--fs-color-text);\n }\n .fs-breadcrumb-item-truncate {\n display: inline-block;\n max-width: 160px;\n vertical-align: bottom;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-breadcrumb-more {\n padding: 0;\n border: none;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface-raised);\n font-size: inherit;\n font-family: inherit;\n line-height: inherit;\n cursor: pointer;\n }\n .fs-breadcrumb-more:hover {\n color: var(--fs-color-text);\n }\n}\n@layer components {\n .fs-spinner {\n --fs-spinner-size: 20px;\n --fs-spinner-stroke: 2px;\n --fs-spinner-duration: 0.8s;\n display: inline-block;\n box-sizing: border-box;\n width: var(--fs-spinner-size);\n height: var(--fs-spinner-size);\n vertical-align: middle;\n border: var(--fs-spinner-stroke) solid color-mix(in srgb, currentcolor 20%, transparent);\n border-top-color: currentcolor;\n border-radius: 50%;\n animation: fokus-spin var(--fs-spinner-duration) linear infinite;\n will-change: transform;\n }\n .fs-spinner-sm {\n --fs-spinner-size: 14px;\n --fs-spinner-stroke: 2px;\n }\n .fs-spinner-lg {\n --fs-spinner-size: 32px;\n --fs-spinner-stroke: 3px;\n }\n .fs-spinner-primary {\n color: var(--fs-color-primary);\n }\n .fs-spinner-secondary {\n color: var(--fs-color-secondary);\n }\n .fs-spinner-success {\n color: var(--fs-color-success);\n }\n .fs-spinner-warning {\n color: var(--fs-color-warning);\n }\n .fs-spinner-danger {\n color: var(--fs-color-danger);\n }\n .fs-spinner-info {\n color: var(--fs-color-info);\n }\n @keyframes fokus-spin {\n to {\n transform: rotate(360deg);\n }\n }\n .fs-progress {\n --fs-progress-height: 8px;\n --fs-progress-track: var(--fs-color-subtle);\n --fs-progress-radius: 0;\n position: relative;\n display: flex;\n height: var(--fs-progress-height);\n overflow: hidden;\n background-color: var(--fs-progress-track);\n border-radius: var(--fs-progress-radius);\n }\n .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-primary);\n --fs-progress-color: var(--fs-color-on-primary);\n display: flex;\n align-items: center;\n justify-content: center;\n width: calc(var(--fs-progress-value, 0) * 1%);\n height: 100%;\n min-width: 0;\n overflow: hidden;\n color: var(--fs-progress-color);\n background-color: var(--fs-progress-bar-bg);\n font-size: 0;\n line-height: 1;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: width 0.25s ease-out;\n }\n .fs-progress-bar-primary {\n --fs-progress-bar-bg: var(--fs-color-primary);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-bar-secondary {\n --fs-progress-bar-bg: var(--fs-color-secondary);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-bar-success {\n --fs-progress-bar-bg: var(--fs-color-success);\n --fs-progress-color: #000000;\n }\n .fs-progress-bar-warning {\n --fs-progress-bar-bg: var(--fs-color-warning);\n --fs-progress-color: #000000;\n }\n .fs-progress-bar-danger {\n --fs-progress-bar-bg: var(--fs-color-danger);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-bar-info {\n --fs-progress-bar-bg: var(--fs-color-info);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-sm {\n --fs-progress-height: 4px;\n }\n .fs-progress-lg {\n --fs-progress-height: 16px;\n }\n .fs-progress-lg .fs-progress-bar {\n padding-inline: 6px;\n font-size: 0.6875rem;\n }\n .fs-progress-meta {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 12px;\n max-width: 480px;\n margin-bottom: 6px;\n color: var(--fs-color-text);\n font-size: 0.75rem;\n }\n .fs-progress-value {\n color: var(--fs-color-muted);\n font-variant-numeric: tabular-nums;\n }\n .fs-progress-indeterminate .fs-progress-bar {\n width: 36%;\n animation: fokus-progress-indeterminate 1.25s ease-in-out infinite;\n }\n .fs-progress-indeterminate {\n --fs-progress-track: color-mix(in srgb, var(--fs-color-primary) 18%, transparent);\n }\n @keyframes fokus-progress-indeterminate {\n from {\n transform: translateX(-110%);\n }\n to {\n transform: translateX(290%);\n }\n }\n .fs-progress-complete .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-success);\n --fs-progress-color: #000000;\n }\n .fs-progress-error .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-danger);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-status {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n margin-top: 6px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-progress-status-icon {\n display: inline-grid;\n width: 14px;\n height: 14px;\n place-items: center;\n color: var(--fs-alert-success-text);\n }\n .fs-progress-status-icon .fs-icon {\n width: 14px;\n height: 14px;\n stroke: currentcolor;\n }\n .fs-progress-status-danger,\n .fs-progress-error + .fs-progress-status {\n color: var(--fs-alert-danger-text);\n }\n .fs-progress-marker {\n position: absolute;\n z-index: 1;\n top: 0;\n bottom: 0;\n left: calc(var(--fs-progress-marker-value) * 1%);\n width: 2px;\n background-color: var(--fs-color-text);\n pointer-events: none;\n transform: translateX(-1px);\n }\n .fs-progress-minimum .fs-progress-bar {\n width: max(var(--fs-progress-value, 0) * 1%, 4px);\n }\n .fs-progress-bar-striped {\n background-image: linear-gradient(45deg, color-mix(in srgb, currentcolor 16%, transparent) 25%, transparent 25%, transparent 50%, color-mix(in srgb, currentcolor 16%, transparent) 50%, color-mix(in srgb, currentcolor 16%, transparent) 75%, transparent 75%, transparent);\n background-size: 16px 16px;\n }\n .fs-progress-bar-animated {\n animation: fokus-progress-stripes 1s linear infinite;\n }\n @keyframes fokus-progress-stripes {\n from {\n background-position: 16px 0;\n }\n to {\n background-position: 0 0;\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-spinner {\n --fs-spinner-duration: 1.5s;\n }\n .fs-progress-bar-animated {\n animation-duration: 1.5s;\n }\n .fs-progress-indeterminate .fs-progress-bar {\n animation-duration: 1.8s;\n }\n }\n}\n@layer components {\n .fs-carousel {\n --fs-carousel-radius: var(--fs-radius-md);\n --fs-carousel-transition-duration: var(--fs-transition-normal);\n --fs-carousel-transition-easing: var(--fs-ease-standard);\n --fs-carousel-control-size: 44px;\n --fs-carousel-control-inset: var(--fs-space-2);\n --fs-carousel-control-gap: var(--fs-space-1);\n --fs-carousel-control-color: var(--fs-color-white);\n --fs-carousel-control-paused-color: var(--fs-color-warning);\n --fs-carousel-control-bg: rgb(15 23 42 / 72%);\n --fs-carousel-control-bg-hover: rgb(15 23 42 / 88%);\n --fs-carousel-focus-color: var(--fs-color-white);\n --fs-carousel-indicator-size: 8px;\n --fs-carousel-indicator-active-width: 24px;\n --fs-carousel-indicator-color: rgb(255 255 255 / 62%);\n --fs-carousel-indicator-active-color: var(--fs-color-white);\n --fs-carousel-caption-scrim: rgb(15 23 42 / 78%);\n --fs-carousel-top-safe-area: calc(var(--fs-carousel-control-size) + (var(--fs-carousel-control-inset) * 2));\n --fs-carousel-bottom-safe-area: calc(32px + var(--fs-space-2) + 24px);\n --fs-carousel-progress-height: 3px;\n position: relative;\n overflow: hidden;\n border-radius: var(--fs-carousel-radius);\n }\n .fs-carousel::before {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(var(--fs-carousel-control-size) + var(--fs-carousel-control-inset) * 2);\n pointer-events: none;\n content: \"\";\n background: linear-gradient(to bottom, rgba(15, 23, 42, 0.76), rgba(15, 23, 42, 0.32));\n opacity: 0;\n transition: opacity var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-carousel-inner {\n display: flex;\n transition: transform var(--fs-carousel-transition-duration) var(--fs-carousel-transition-easing);\n }\n .fs-carousel-item {\n position: relative;\n flex: 0 0 100%;\n width: 100%;\n }\n .fs-carousel-item img {\n display: block;\n width: 100%;\n }\n .fs-carousel.is-dragging .fs-carousel-inner {\n cursor: grabbing;\n transition: none;\n user-select: none;\n }\n .fs-carousel:not(.is-static) .fs-carousel-inner {\n cursor: grab;\n touch-action: pan-y;\n }\n .fs-carousel-fade .fs-carousel-inner {\n display: block;\n transform: none;\n }\n .fs-carousel-fade .fs-carousel-item {\n position: absolute;\n inset: 0;\n opacity: 0;\n transition: opacity var(--fs-carousel-transition-duration) var(--fs-carousel-transition-easing);\n }\n .fs-carousel-fade .fs-carousel-item.is-active {\n position: relative;\n opacity: 1;\n }\n .fs-carousel-control-prev,\n .fs-carousel-control-next,\n .fs-carousel-control-toggle {\n position: absolute;\n top: var(--fs-carousel-control-inset);\n z-index: 2;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--fs-carousel-control-size);\n height: var(--fs-carousel-control-size);\n padding: 0;\n color: var(--fs-carousel-control-color);\n background-color: transparent;\n background-repeat: no-repeat;\n background-position: center;\n background-size: 18px 18px;\n border: 0;\n border-radius: 0;\n cursor: pointer;\n opacity: 0;\n transition: background-color var(--fs-transition-fast) var(--fs-ease-standard), opacity var(--fs-transition-fast) var(--fs-ease-standard), transform var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-carousel-control-prev,\n .fs-carousel-control-next {\n transform: none;\n }\n .fs-carousel-control-prev {\n left: var(--fs-carousel-control-inset);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 4 6 9l5 5'/%3E%3C/svg%3E\");\n }\n .fs-carousel-control-next {\n left: calc(var(--fs-carousel-control-inset) + var(--fs-carousel-control-size) + var(--fs-carousel-control-gap));\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 4 5 5-5 5'/%3E%3C/svg%3E\");\n }\n .fs-carousel-control-toggle {\n left: calc(var(--fs-carousel-control-inset) + var(--fs-carousel-control-size) + var(--fs-carousel-control-gap));\n }\n .fs-carousel:has(.fs-carousel-control-toggle) .fs-carousel-control-next {\n left: calc(var(--fs-carousel-control-inset) + (var(--fs-carousel-control-size) + var(--fs-carousel-control-gap)) * 2);\n }\n .fs-carousel-control-toggle[aria-pressed=true] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 5v8M11 5v8'/%3E%3C/svg%3E\");\n }\n .fs-carousel-control-toggle[aria-pressed=false] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23ffffff'%3E%3Cpath d='m7 4 7 5-7 5z'/%3E%3C/svg%3E\");\n }\n .fs-carousel.is-autoplay-paused .fs-carousel-control-toggle[aria-pressed=true] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23f0b40e' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 5v8M11 5v8'/%3E%3C/svg%3E\");\n }\n .fs-carousel.is-autoplay-paused .fs-carousel-control-toggle[aria-pressed=false] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23f0b40e'%3E%3Cpath d='m7 4 7 5-7 5z'/%3E%3C/svg%3E\");\n }\n .fs-carousel-control-prev:hover,\n .fs-carousel-control-next:hover,\n .fs-carousel-control-toggle:hover {\n background-color: var(--fs-carousel-control-bg-hover);\n }\n .fs-carousel-control-prev:active,\n .fs-carousel-control-next:active,\n .fs-carousel-control-toggle:active {\n transform: scale(0.94);\n }\n .fs-carousel-control-prev:focus-visible,\n .fs-carousel-control-next:focus-visible,\n .fs-carousel-control-toggle:focus-visible,\n .fs-carousel-indicators button:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-carousel-focus-color);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-carousel-focus-color);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-carousel-focus-color) 22%, transparent);\n }\n .fs-carousel:hover .fs-carousel-control-prev,\n .fs-carousel:hover .fs-carousel-control-next,\n .fs-carousel:hover .fs-carousel-control-toggle,\n .fs-carousel:focus-within .fs-carousel-control-prev,\n .fs-carousel:focus-within .fs-carousel-control-next,\n .fs-carousel:focus-within .fs-carousel-control-toggle {\n opacity: 1;\n }\n .fs-carousel:hover::before,\n .fs-carousel:focus-within::before {\n opacity: 1;\n }\n .fs-carousel-indicators {\n position: absolute;\n right: 0;\n bottom: var(--fs-space-2);\n left: 0;\n z-index: 1;\n display: flex;\n justify-content: center;\n gap: 0;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-carousel-indicators button {\n position: relative;\n display: grid;\n width: 28px;\n height: 32px;\n padding: 0;\n place-items: center;\n background: transparent;\n border: 0;\n cursor: pointer;\n }\n .fs-carousel-indicators button::before {\n width: var(--fs-carousel-indicator-size);\n height: var(--fs-carousel-indicator-size);\n content: \"\";\n background-color: var(--fs-carousel-indicator-color);\n border-radius: var(--fs-radius-lg);\n transition: width var(--fs-transition-fast) var(--fs-ease-standard), background-color var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-carousel-indicators button.is-active::before {\n width: var(--fs-carousel-indicator-active-width);\n background-color: var(--fs-carousel-indicator-active-color);\n }\n .fs-carousel-caption {\n position: absolute;\n right: 0;\n bottom: var(--fs-carousel-bottom-safe-area);\n left: 0;\n z-index: 1;\n box-sizing: border-box;\n max-width: min(100%, 42rem);\n max-block-size: calc(100% - var(--fs-carousel-top-safe-area) - var(--fs-carousel-bottom-safe-area));\n isolation: isolate;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: var(--fs-space-2);\n padding: calc(var(--fs-space-4) + 20px) var(--fs-space-4) var(--fs-space-3);\n color: var(--fs-color-white);\n }\n .fs-carousel-caption::before {\n position: absolute;\n top: 0;\n right: 0;\n bottom: calc(var(--fs-carousel-bottom-safe-area) * -1);\n left: 0;\n z-index: -1;\n content: \"\";\n background: linear-gradient(to top, var(--fs-carousel-caption-scrim), transparent);\n }\n .fs-carousel-caption > * {\n margin: 0;\n }\n .fs-carousel-caption .fs-btn {\n --fs-btn-color: var(--fs-color-text-primary);\n --fs-btn-bg: var(--fs-color-white);\n --fs-btn-border-color: var(--fs-color-white);\n --fs-btn-hover-bg: var(--fs-color-subtle);\n --fs-btn-active-bg: var(--fs-color-border-default);\n }\n .fs-carousel-caption-side .fs-carousel-caption {\n top: var(--fs-carousel-top-safe-area);\n right: 0;\n bottom: 0;\n left: auto;\n width: min(42%, 28rem);\n max-width: none;\n max-block-size: none;\n padding: var(--fs-space-4) var(--fs-space-4) calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-2));\n background: rgba(15, 23, 42, 0.84);\n }\n .fs-carousel-caption-side .fs-carousel-caption-start {\n right: auto;\n left: 0;\n }\n .fs-carousel-caption-side .fs-carousel-caption::before,\n .fs-carousel-caption-stacked .fs-carousel-caption::before {\n display: none;\n }\n .fs-carousel-caption-stacked {\n --fs-carousel-bottom-safe-area: 0px;\n }\n .fs-carousel-caption-stacked .fs-carousel-caption {\n position: static;\n max-width: none;\n max-block-size: none;\n overflow: visible;\n padding: var(--fs-space-4);\n color: var(--fs-color-text-primary);\n background: var(--fs-color-bg-surface);\n }\n .fs-carousel-caption-stacked .fs-carousel-indicators {\n position: relative;\n bottom: auto;\n background: var(--fs-color-bg-surface);\n }\n .fs-carousel-counter {\n position: absolute;\n right: var(--fs-space-3);\n bottom: var(--fs-space-2);\n z-index: 2;\n color: var(--fs-color-white);\n font-size: 0.75rem;\n font-variant-numeric: tabular-nums;\n }\n .fs-carousel-progress {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n height: var(--fs-carousel-progress-height);\n overflow: hidden;\n background-color: rgba(255, 255, 255, 0.24);\n }\n .fs-carousel-progress > span {\n display: block;\n width: 100%;\n height: 100%;\n background-color: var(--fs-color-white);\n transform: scaleX(0);\n transform-origin: left;\n }\n .fs-carousel-progress.is-running > span {\n animation: fs-carousel-progress var(--fs-carousel-progress-duration, 5000ms) linear forwards;\n }\n .fs-carousel.is-two-slides.fs-carousel-hide-indicators-two .fs-carousel-indicators {\n display: none;\n }\n .fs-carousel-no-media .fs-carousel-item {\n min-block-size: 15rem;\n background-color: var(--fs-color-bg-surface);\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n }\n .fs-carousel-no-media .fs-carousel-counter {\n color: var(--fs-color-text-muted);\n }\n .fs-carousel-no-media .fs-carousel-progress {\n background-color: var(--fs-color-border-default);\n }\n .fs-carousel-no-media .fs-carousel-progress > span {\n background-color: var(--fs-color-action-primary);\n }\n .fs-carousel-media-placeholder {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n min-height: inherit;\n padding: calc(var(--fs-carousel-top-safe-area) + var(--fs-space-4)) var(--fs-space-4) calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-4));\n }\n .fs-carousel-media-placeholder > * {\n max-width: 36rem;\n margin: 0;\n }\n .fs-carousel-media-placeholder > * + * {\n margin-top: var(--fs-space-2);\n }\n .fs-carousel-media {\n min-block-size: 18rem;\n background-position: center;\n background-size: cover;\n }\n .fs-carousel.is-static .fs-carousel-control-prev,\n .fs-carousel.is-static .fs-carousel-control-next,\n .fs-carousel.is-static .fs-carousel-control-toggle,\n .fs-carousel.is-static .fs-carousel-indicators {\n display: none;\n }\n @media (max-width: 639px) {\n .fs-carousel {\n --fs-carousel-control-inset: var(--fs-space-1);\n }\n .fs-carousel-caption {\n padding: calc(var(--fs-space-3) + 20px) var(--fs-space-3) var(--fs-space-3);\n }\n .fs-carousel-caption-side .fs-carousel-caption {\n top: auto;\n bottom: var(--fs-carousel-bottom-safe-area);\n width: auto;\n max-block-size: calc(100% - var(--fs-carousel-top-safe-area) - var(--fs-carousel-bottom-safe-area));\n overflow: clip;\n align-items: flex-end;\n padding: calc(var(--fs-space-3) + 20px) var(--fs-space-3) calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-2));\n text-align: end;\n background: transparent;\n }\n .fs-carousel-caption-side .fs-carousel-caption-start {\n right: 0;\n left: 0;\n align-items: flex-start;\n text-align: start;\n }\n .fs-carousel-caption-side .fs-carousel-item::after {\n position: absolute;\n inset: 0;\n z-index: 0;\n pointer-events: none;\n content: \"\";\n background: linear-gradient(to top, var(--fs-carousel-caption-scrim) 0%, rgba(15, 23, 42, 0.52) 56%, transparent 100%);\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-carousel-inner,\n .fs-carousel-fade .fs-carousel-item,\n .fs-carousel-control-prev,\n .fs-carousel-control-next,\n .fs-carousel-control-toggle,\n .fs-carousel-indicators button::before,\n .fs-carousel-progress.is-running > span {\n transition: none;\n animation: none;\n transform: scaleX(1);\n }\n }\n @keyframes fs-carousel-progress {\n to {\n transform: scaleX(1);\n }\n }\n}\n@layer components {\n .fs-stepper-header {\n display: flex;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-step {\n position: relative;\n display: flex;\n flex: 1 1 0;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n .fs-step-indicator {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface);\n border: 2px solid var(--fs-color-border);\n border-radius: 50%;\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-step-label {\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-step-description {\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n }\n .fs-step:not(:last-child)::after {\n content: \"\";\n position: absolute;\n top: 15px;\n left: calc(50% + 20px);\n width: calc(100% - 40px);\n height: 2px;\n background-color: var(--fs-color-border);\n }\n .fs-step-active .fs-step-indicator {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-step-active .fs-step-label {\n color: var(--fs-color-text);\n }\n .fs-step-completed .fs-step-indicator {\n color: transparent;\n background-color: var(--fs-color-primary);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5 6.5 12 13 4'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: center;\n border-color: var(--fs-color-primary);\n }\n .fs-step-completed .fs-step-label {\n color: var(--fs-color-text);\n }\n .fs-step-completed:not(:last-child)::after {\n background-color: var(--fs-color-primary);\n }\n .fs-step-error .fs-step-indicator {\n color: #ffffff;\n background-color: var(--fs-color-danger);\n border-color: var(--fs-color-danger);\n }\n .fs-step-error .fs-step-label {\n color: var(--fs-alert-danger-text);\n }\n .fs-step.fs-step-clickable {\n cursor: pointer;\n }\n .fs-step.fs-step-clickable:focus-visible {\n outline: 2px solid var(--fs-color-primary);\n outline-offset: 2px;\n border-radius: var(--fs-radius-sm);\n }\n .fs-stepper-vertical .fs-stepper-header {\n flex-direction: column;\n }\n .fs-stepper-vertical .fs-step {\n flex-direction: row;\n flex: 0 0 auto;\n align-items: flex-start;\n gap: 12px;\n min-height: 56px;\n text-align: left;\n }\n .fs-stepper-vertical .fs-step-content {\n display: flex;\n flex-direction: column;\n gap: 2px;\n padding-top: 5px;\n }\n .fs-stepper-vertical .fs-step:not(:last-child)::after {\n top: 34px;\n left: 15px;\n width: 2px;\n height: calc(100% - 22px);\n }\n .fs-step-panel {\n display: none;\n }\n .fs-step-panel.is-active {\n display: block;\n }\n .fs-stepper-content {\n margin-top: 20px;\n }\n .fs-stepper-actions {\n display: flex;\n justify-content: space-between;\n gap: 8px;\n margin-top: 20px;\n }\n}\n@layer components {\n .fs-segmented-control {\n display: inline-flex;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n overflow: hidden;\n }\n .fs-segmented-item {\n display: flex;\n }\n .fs-segmented-item:not(:first-child) .fs-segmented-label {\n border-left: 1px solid var(--fs-color-border);\n }\n .fs-segmented-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n .fs-segmented-label {\n display: inline-flex;\n flex: 1;\n align-items: center;\n justify-content: center;\n min-height: 38px;\n padding: 0 12px;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: 0.8125rem;\n font-weight: 500;\n text-align: center;\n white-space: nowrap;\n cursor: pointer;\n user-select: none;\n transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;\n }\n .fs-segmented-label:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-segmented-input:checked + .fs-segmented-label {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-segmented-input:focus-visible + .fs-segmented-label {\n position: relative;\n z-index: 1;\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-segmented-input:disabled + .fs-segmented-label {\n opacity: 0.4;\n pointer-events: none;\n }\n .fs-segmented-control-sm .fs-segmented-label {\n min-height: 30px;\n padding: 0 8px;\n font-size: 0.75rem;\n }\n .fs-segmented-control-lg .fs-segmented-label {\n min-height: 46px;\n padding: 0 16px;\n font-size: 1rem;\n }\n}\n@layer components {\n .fs-skeleton {\n display: block;\n background-color: var(--fs-color-subtle);\n border-radius: var(--fs-radius-sm);\n animation: fokus-skeleton-pulse 1.5s ease-in-out infinite;\n }\n .fs-skeleton-text {\n width: 100%;\n height: 1em;\n }\n .fs-skeleton-text:not(:last-child) {\n margin-bottom: 0.5em;\n }\n .fs-skeleton-text:last-child {\n width: 80%;\n }\n .fs-skeleton-circle {\n flex-shrink: 0;\n border-radius: 50%;\n }\n .fs-skeleton-rect {\n border-radius: var(--fs-radius-md);\n }\n @keyframes fokus-skeleton-pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n }\n .fs-skeleton-wave {\n position: relative;\n overflow: hidden;\n animation: none;\n }\n .fs-skeleton-wave::after {\n position: absolute;\n inset: 0;\n content: \"\";\n background-image: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);\n transform: translateX(-100%);\n animation: fokus-skeleton-wave 1.6s linear infinite;\n }\n @keyframes fokus-skeleton-wave {\n 100% {\n transform: translateX(100%);\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-skeleton {\n animation: none;\n }\n .fs-skeleton-wave::after {\n animation: none;\n }\n }\n}\n@layer components {\n .fs-timeline {\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-timeline-item {\n position: relative;\n display: flex;\n gap: 12px;\n padding-bottom: 24px;\n }\n .fs-timeline-item:last-child {\n padding-bottom: 0;\n }\n .fs-timeline-marker {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n margin-top: 3px;\n background-color: var(--fs-color-surface);\n background-repeat: no-repeat;\n background-position: center;\n border: 2px solid var(--fs-color-border);\n border-radius: 50%;\n }\n .fs-timeline-item:not(:last-child)::before {\n content: \"\";\n position: absolute;\n top: 22px;\n left: 7px;\n width: 2px;\n height: calc(100% - 22px);\n background-color: var(--fs-color-border);\n }\n .fs-timeline-content {\n flex: 1;\n padding-top: 1px;\n }\n .fs-timeline-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n font-weight: 500;\n }\n .fs-timeline-text {\n margin: 4px 0 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-timeline-time {\n display: block;\n margin-top: 2px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n }\n .fs-timeline-active .fs-timeline-marker {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-timeline-completed .fs-timeline-marker {\n background-color: var(--fs-color-success);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 5.5 4 8l4-6'/%3E%3C/svg%3E\");\n border-color: var(--fs-color-success);\n }\n .fs-timeline-completed:not(:last-child)::before {\n background-color: var(--fs-color-success);\n }\n .fs-timeline-failed .fs-timeline-marker {\n background-color: var(--fs-color-danger);\n border-color: var(--fs-color-danger);\n }\n .fs-timeline-failed .fs-timeline-title {\n color: var(--fs-alert-danger-text);\n }\n .fs-timeline-horizontal {\n flex-direction: row;\n }\n .fs-timeline-horizontal .fs-timeline-item {\n flex: 1 1 0;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n padding-bottom: 0;\n text-align: center;\n }\n .fs-timeline-horizontal .fs-timeline-marker {\n margin-top: 0;\n }\n .fs-timeline-horizontal .fs-timeline-item:not(:last-child)::before {\n top: 7px;\n left: calc(50% + 15px);\n width: calc(100% - 30px);\n height: 2px;\n }\n .fs-timeline-horizontal .fs-timeline-content {\n padding-top: 0;\n }\n}\n@layer components {\n .fs-collapse {\n overflow: hidden;\n }\n}\n@layer components {\n [data-fs=notification-center] {\n position: relative;\n }\n .fs-notification-badge {\n position: absolute;\n top: -6px;\n right: -6px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 18px;\n height: 18px;\n padding: 0 5px;\n border-radius: 999px;\n color: #ffffff;\n background-color: var(--fs-color-danger);\n font-size: 0.65rem;\n font-weight: 500;\n line-height: 1;\n }\n .fs-notification-badge[hidden] {\n display: none;\n }\n .fs-notification-center {\n position: absolute;\n display: none;\n flex-direction: column;\n width: min(320px, 100vw - 2 * var(--fs-space-3));\n max-height: 420px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-notification);\n }\n .fs-notification-center.is-open {\n display: flex;\n }\n .fs-notification-center-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 14px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n .fs-notification-center-title {\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-notification-list {\n margin: 0;\n padding: 0;\n overflow-y: auto;\n list-style: none;\n }\n .fs-notification-item {\n display: flex;\n gap: 10px;\n align-items: flex-start;\n padding: 10px 14px;\n border-left: 3px solid transparent;\n border-bottom: 1px solid var(--fs-color-border);\n }\n .fs-notification-item:last-child {\n border-bottom: none;\n }\n .fs-notification-item-unread {\n background-color: var(--fs-color-subtle);\n }\n .fs-notification-item-primary {\n border-left-color: var(--fs-color-primary);\n }\n .fs-notification-item-secondary {\n border-left-color: var(--fs-color-secondary);\n }\n .fs-notification-item-success {\n border-left-color: var(--fs-color-success);\n }\n .fs-notification-item-warning {\n border-left-color: var(--fs-color-warning);\n }\n .fs-notification-item-danger {\n border-left-color: var(--fs-color-danger);\n }\n .fs-notification-item-info {\n border-left-color: var(--fs-color-info);\n }\n .fs-notification-item-content {\n flex: 1;\n min-width: 0;\n }\n .fs-notification-item-title {\n margin: 0;\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-notification-item-text {\n margin: 2px 0 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-notification-item-time {\n display: block;\n margin-top: 4px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n }\n .fs-notification-item .fs-btn-close {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n }\n .fs-notification-empty {\n padding: 24px 14px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n text-align: center;\n }\n .fs-notification-empty[hidden] {\n display: none;\n }\n}\n@layer components {\n .fs-dropdown-submenu {\n position: relative;\n }\n .fs-dropdown-item-submenu {\n justify-content: space-between;\n }\n .fs-dropdown-item-submenu::after {\n margin-left: 8px;\n content: \"\";\n border-top: 5px solid transparent;\n border-bottom: 5px solid transparent;\n border-left: 5px solid currentcolor;\n }\n .fs-dropdown-submenu > .fs-dropdown-menu {\n top: -7px;\n left: 100%;\n margin: 0;\n }\n .fs-dropdown-submenu:hover > .fs-dropdown-menu,\n .fs-dropdown-submenu > .fs-dropdown-menu.is-open {\n display: block;\n }\n .fs-dropdown-submenu-left > .fs-dropdown-menu {\n right: 100%;\n left: auto;\n }\n}\n@layer components {\n .fs-tile {\n position: relative;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n background-color: var(--fs-color-surface);\n }\n .fs-tile-icon {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n font-size: 1rem;\n }\n .fs-tile-body {\n flex: 1 1 auto;\n min-width: 0;\n }\n .fs-tile-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n font-weight: 500;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-tile-subtitle {\n margin: 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-tile-actions {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n gap: 8px;\n }\n .fs-tile-actions-bottom {\n flex-wrap: wrap;\n }\n .fs-tile-actions-bottom .fs-tile-actions {\n flex-basis: 100%;\n justify-content: flex-end;\n margin-top: 4px;\n }\n .fs-tile-clickable {\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n }\n .fs-tile-clickable:hover,\n .fs-tile-clickable:focus-within {\n border-color: var(--fs-color-primary);\n box-shadow: var(--fs-shadow-sm);\n }\n .fs-tile-sm {\n gap: 8px;\n padding: 8px;\n }\n .fs-tile-sm .fs-tile-icon {\n width: 32px;\n height: 32px;\n font-size: 0.8125rem;\n }\n .fs-tile-sm .fs-tile-title {\n font-size: 0.75rem;\n }\n .fs-tile-sm .fs-tile-subtitle {\n font-size: 0.6875rem;\n }\n .fs-tile-lg {\n gap: 16px;\n padding: 16px;\n }\n .fs-tile-lg .fs-tile-icon {\n width: 48px;\n height: 48px;\n font-size: 1.25rem;\n }\n .fs-tile-lg .fs-tile-title {\n font-size: 1rem;\n }\n}\n@layer utilities {\n .fs-u-cq {\n container-type: inline-size;\n }\n @container (min-width: 320px) {\n .fs-u-cq-sm-d-none {\n display: none;\n }\n .fs-u-cq-sm-d-block {\n display: block;\n }\n .fs-u-cq-sm-d-inline-block {\n display: inline-block;\n }\n .fs-u-cq-sm-d-flex {\n display: flex;\n }\n }\n @container (min-width: 480px) {\n .fs-u-cq-md-d-none {\n display: none;\n }\n .fs-u-cq-md-d-block {\n display: block;\n }\n .fs-u-cq-md-d-inline-block {\n display: inline-block;\n }\n .fs-u-cq-md-d-flex {\n display: flex;\n }\n }\n @container (min-width: 640px) {\n .fs-u-cq-lg-d-none {\n display: none;\n }\n .fs-u-cq-lg-d-block {\n display: block;\n }\n .fs-u-cq-lg-d-inline-block {\n display: inline-block;\n }\n .fs-u-cq-lg-d-flex {\n display: flex;\n }\n }\n}\n@layer utilities {\n .fs-u-d-none {\n display: none;\n }\n .fs-u-d-block {\n display: block;\n }\n .fs-u-d-inline {\n display: inline;\n }\n .fs-u-d-inline-block {\n display: inline-block;\n }\n .fs-u-d-flex {\n display: flex;\n }\n}\n@layer utilities {\n .fs-u-align-items-start {\n align-items: flex-start;\n }\n .fs-u-align-items-center {\n align-items: center;\n }\n .fs-u-align-items-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-center {\n justify-content: center;\n }\n .fs-u-justify-content-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-between {\n justify-content: space-between;\n }\n .fs-u-align-self-start {\n align-self: flex-start;\n }\n .fs-u-align-self-center {\n align-self: center;\n }\n .fs-u-align-self-end {\n align-self: flex-end;\n }\n @media (min-width: 640px) {\n .fs-u-align-items-sm-start {\n align-items: flex-start;\n }\n .fs-u-align-items-sm-center {\n align-items: center;\n }\n .fs-u-align-items-sm-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-sm-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-sm-center {\n justify-content: center;\n }\n .fs-u-justify-content-sm-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-sm-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-sm-between {\n justify-content: space-between;\n }\n .fs-u-align-self-sm-start {\n align-self: flex-start;\n }\n .fs-u-align-self-sm-center {\n align-self: center;\n }\n .fs-u-align-self-sm-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 768px) {\n .fs-u-align-items-md-start {\n align-items: flex-start;\n }\n .fs-u-align-items-md-center {\n align-items: center;\n }\n .fs-u-align-items-md-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-md-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-md-center {\n justify-content: center;\n }\n .fs-u-justify-content-md-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-md-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-md-between {\n justify-content: space-between;\n }\n .fs-u-align-self-md-start {\n align-self: flex-start;\n }\n .fs-u-align-self-md-center {\n align-self: center;\n }\n .fs-u-align-self-md-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 1024px) {\n .fs-u-align-items-lg-start {\n align-items: flex-start;\n }\n .fs-u-align-items-lg-center {\n align-items: center;\n }\n .fs-u-align-items-lg-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-lg-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-lg-center {\n justify-content: center;\n }\n .fs-u-justify-content-lg-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-lg-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-lg-between {\n justify-content: space-between;\n }\n .fs-u-align-self-lg-start {\n align-self: flex-start;\n }\n .fs-u-align-self-lg-center {\n align-self: center;\n }\n .fs-u-align-self-lg-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 1280px) {\n .fs-u-align-items-xl-start {\n align-items: flex-start;\n }\n .fs-u-align-items-xl-center {\n align-items: center;\n }\n .fs-u-align-items-xl-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-xl-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-xl-center {\n justify-content: center;\n }\n .fs-u-justify-content-xl-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-xl-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-xl-between {\n justify-content: space-between;\n }\n .fs-u-align-self-xl-start {\n align-self: flex-start;\n }\n .fs-u-align-self-xl-center {\n align-self: center;\n }\n .fs-u-align-self-xl-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 1536px) {\n .fs-u-align-items-xxl-start {\n align-items: flex-start;\n }\n .fs-u-align-items-xxl-center {\n align-items: center;\n }\n .fs-u-align-items-xxl-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-xxl-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-xxl-center {\n justify-content: center;\n }\n .fs-u-justify-content-xxl-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-xxl-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-xxl-between {\n justify-content: space-between;\n }\n .fs-u-align-self-xxl-start {\n align-self: flex-start;\n }\n .fs-u-align-self-xxl-center {\n align-self: center;\n }\n .fs-u-align-self-xxl-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 1920px) {\n .fs-u-align-items-xxxl-start {\n align-items: flex-start;\n }\n .fs-u-align-items-xxxl-center {\n align-items: center;\n }\n .fs-u-align-items-xxxl-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-xxxl-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-xxxl-center {\n justify-content: center;\n }\n .fs-u-justify-content-xxxl-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-xxxl-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-xxxl-between {\n justify-content: space-between;\n }\n .fs-u-align-self-xxxl-start {\n align-self: flex-start;\n }\n .fs-u-align-self-xxxl-center {\n align-self: center;\n }\n .fs-u-align-self-xxxl-end {\n align-self: flex-end;\n }\n }\n}\n@layer utilities {\n .fs-icon {\n display: inline-block;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n vertical-align: -0.125em;\n stroke: currentcolor;\n }\n .fs-icon-xs {\n width: 12px;\n height: 12px;\n }\n .fs-icon-sm {\n width: 16px;\n height: 16px;\n }\n .fs-icon-lg {\n width: 32px;\n height: 32px;\n }\n .fs-icon-xl {\n width: 48px;\n height: 48px;\n }\n}\n@layer utilities {\n .fs-u-sticky-top {\n position: sticky;\n top: var(--fs-sticky-top, 0);\n z-index: 1020;\n }\n .fs-u-sticky-bottom {\n position: sticky;\n bottom: var(--fs-sticky-bottom, 0);\n z-index: 1020;\n }\n}\n@layer utilities {\n @media print {\n .fs-u-print-hide {\n display: none !important;\n }\n }\n @media not print {\n .fs-u-print-only {\n display: none !important;\n }\n }\n @media print {\n .fs-u-print-block {\n display: block !important;\n }\n .fs-u-print-inline {\n display: inline !important;\n }\n .fs-u-print-inline-block {\n display: inline-block !important;\n }\n }\n}\n@layer utilities {\n .fs-u-shadow-sm {\n box-shadow: var(--fs-shadow-sm);\n }\n .fs-u-shadow {\n box-shadow: var(--fs-shadow-md);\n }\n .fs-u-shadow-lg {\n box-shadow: var(--fs-shadow-lg);\n }\n}\n@layer utilities {\n .fs-u-m-0 {\n margin: 0;\n }\n .fs-u-mt-0 {\n margin-top: 0;\n }\n .fs-u-mr-0 {\n margin-right: 0;\n }\n .fs-u-mb-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-0 {\n margin-left: 0;\n }\n .fs-u-mx-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-0 {\n padding: 0;\n }\n .fs-u-pt-0 {\n padding-top: 0;\n }\n .fs-u-pr-0 {\n padding-right: 0;\n }\n .fs-u-pb-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-0 {\n padding-left: 0;\n }\n .fs-u-px-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-0 {\n gap: 0;\n }\n .fs-u-gap-x-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-0 {\n row-gap: 0;\n }\n .fs-u-m-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-3 {\n margin: 1rem;\n }\n .fs-u-mt-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-3 {\n padding: 1rem;\n }\n .fs-u-pt-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-3 {\n padding-left: 1rem;\n }\n .fs-u-px-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-3 {\n row-gap: 1rem;\n }\n .fs-u-m-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-5 {\n margin: 3rem;\n }\n .fs-u-mt-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-5 {\n padding: 3rem;\n }\n .fs-u-pt-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-5 {\n padding-left: 3rem;\n }\n .fs-u-px-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-5 {\n row-gap: 3rem;\n }\n .fs-u-m-auto {\n margin: auto;\n }\n .fs-u-mt-auto {\n margin-top: auto;\n }\n .fs-u-mr-auto {\n margin-right: auto;\n }\n .fs-u-mb-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-auto {\n margin-left: auto;\n }\n .fs-u-mx-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n @media (min-width: 640px) {\n .fs-u-m-sm-0 {\n margin: 0;\n }\n .fs-u-mt-sm-0 {\n margin-top: 0;\n }\n .fs-u-mr-sm-0 {\n margin-right: 0;\n }\n .fs-u-mb-sm-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-sm-0 {\n margin-left: 0;\n }\n .fs-u-mx-sm-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-sm-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-sm-0 {\n padding: 0;\n }\n .fs-u-pt-sm-0 {\n padding-top: 0;\n }\n .fs-u-pr-sm-0 {\n padding-right: 0;\n }\n .fs-u-pb-sm-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-sm-0 {\n padding-left: 0;\n }\n .fs-u-px-sm-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-sm-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-sm-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-sm-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-sm-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-sm-0 {\n gap: 0;\n }\n .fs-u-gap-x-sm-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-sm-0 {\n row-gap: 0;\n }\n .fs-u-m-sm-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-sm-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-sm-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-sm-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-sm-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-sm-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-sm-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-sm-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-sm-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-sm-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-sm-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-sm-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-sm-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-sm-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-sm-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-sm-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-sm-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-sm-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-sm-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-sm-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-sm-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-sm-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-sm-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-sm-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-sm-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-sm-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-sm-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-sm-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-sm-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-sm-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-sm-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-sm-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-sm-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-sm-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-sm-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-sm-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-sm-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-sm-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-sm-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-sm-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-sm-3 {\n margin: 1rem;\n }\n .fs-u-mt-sm-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-sm-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-sm-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-sm-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-sm-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-sm-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-sm-3 {\n padding: 1rem;\n }\n .fs-u-pt-sm-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-sm-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-sm-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-sm-3 {\n padding-left: 1rem;\n }\n .fs-u-px-sm-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-sm-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-sm-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-sm-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-sm-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-sm-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-sm-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-sm-3 {\n row-gap: 1rem;\n }\n .fs-u-m-sm-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-sm-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-sm-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-sm-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-sm-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-sm-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-sm-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-sm-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-sm-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-sm-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-sm-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-sm-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-sm-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-sm-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-sm-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-sm-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-sm-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-sm-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-sm-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-sm-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-sm-5 {\n margin: 3rem;\n }\n .fs-u-mt-sm-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-sm-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-sm-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-sm-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-sm-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-sm-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-sm-5 {\n padding: 3rem;\n }\n .fs-u-pt-sm-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-sm-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-sm-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-sm-5 {\n padding-left: 3rem;\n }\n .fs-u-px-sm-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-sm-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-sm-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-sm-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-sm-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-sm-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-sm-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-sm-5 {\n row-gap: 3rem;\n }\n .fs-u-m-sm-auto {\n margin: auto;\n }\n .fs-u-mt-sm-auto {\n margin-top: auto;\n }\n .fs-u-mr-sm-auto {\n margin-right: auto;\n }\n .fs-u-mb-sm-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-sm-auto {\n margin-left: auto;\n }\n .fs-u-mx-sm-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-sm-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 768px) {\n .fs-u-m-md-0 {\n margin: 0;\n }\n .fs-u-mt-md-0 {\n margin-top: 0;\n }\n .fs-u-mr-md-0 {\n margin-right: 0;\n }\n .fs-u-mb-md-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-md-0 {\n margin-left: 0;\n }\n .fs-u-mx-md-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-md-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-md-0 {\n padding: 0;\n }\n .fs-u-pt-md-0 {\n padding-top: 0;\n }\n .fs-u-pr-md-0 {\n padding-right: 0;\n }\n .fs-u-pb-md-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-md-0 {\n padding-left: 0;\n }\n .fs-u-px-md-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-md-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-md-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-md-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-md-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-md-0 {\n gap: 0;\n }\n .fs-u-gap-x-md-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-md-0 {\n row-gap: 0;\n }\n .fs-u-m-md-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-md-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-md-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-md-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-md-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-md-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-md-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-md-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-md-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-md-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-md-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-md-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-md-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-md-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-md-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-md-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-md-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-md-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-md-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-md-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-md-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-md-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-md-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-md-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-md-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-md-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-md-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-md-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-md-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-md-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-md-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-md-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-md-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-md-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-md-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-md-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-md-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-md-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-md-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-md-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-md-3 {\n margin: 1rem;\n }\n .fs-u-mt-md-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-md-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-md-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-md-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-md-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-md-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-md-3 {\n padding: 1rem;\n }\n .fs-u-pt-md-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-md-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-md-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-md-3 {\n padding-left: 1rem;\n }\n .fs-u-px-md-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-md-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-md-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-md-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-md-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-md-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-md-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-md-3 {\n row-gap: 1rem;\n }\n .fs-u-m-md-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-md-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-md-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-md-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-md-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-md-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-md-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-md-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-md-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-md-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-md-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-md-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-md-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-md-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-md-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-md-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-md-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-md-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-md-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-md-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-md-5 {\n margin: 3rem;\n }\n .fs-u-mt-md-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-md-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-md-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-md-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-md-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-md-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-md-5 {\n padding: 3rem;\n }\n .fs-u-pt-md-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-md-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-md-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-md-5 {\n padding-left: 3rem;\n }\n .fs-u-px-md-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-md-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-md-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-md-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-md-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-md-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-md-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-md-5 {\n row-gap: 3rem;\n }\n .fs-u-m-md-auto {\n margin: auto;\n }\n .fs-u-mt-md-auto {\n margin-top: auto;\n }\n .fs-u-mr-md-auto {\n margin-right: auto;\n }\n .fs-u-mb-md-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-md-auto {\n margin-left: auto;\n }\n .fs-u-mx-md-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-md-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 1024px) {\n .fs-u-m-lg-0 {\n margin: 0;\n }\n .fs-u-mt-lg-0 {\n margin-top: 0;\n }\n .fs-u-mr-lg-0 {\n margin-right: 0;\n }\n .fs-u-mb-lg-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-lg-0 {\n margin-left: 0;\n }\n .fs-u-mx-lg-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-lg-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-lg-0 {\n padding: 0;\n }\n .fs-u-pt-lg-0 {\n padding-top: 0;\n }\n .fs-u-pr-lg-0 {\n padding-right: 0;\n }\n .fs-u-pb-lg-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-lg-0 {\n padding-left: 0;\n }\n .fs-u-px-lg-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-lg-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-lg-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-lg-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-lg-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-lg-0 {\n gap: 0;\n }\n .fs-u-gap-x-lg-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-lg-0 {\n row-gap: 0;\n }\n .fs-u-m-lg-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-lg-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-lg-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-lg-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-lg-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-lg-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-lg-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-lg-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-lg-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-lg-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-lg-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-lg-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-lg-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-lg-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-lg-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-lg-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-lg-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-lg-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-lg-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-lg-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-lg-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-lg-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-lg-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-lg-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-lg-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-lg-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-lg-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-lg-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-lg-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-lg-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-lg-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-lg-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-lg-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-lg-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-lg-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-lg-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-lg-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-lg-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-lg-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-lg-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-lg-3 {\n margin: 1rem;\n }\n .fs-u-mt-lg-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-lg-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-lg-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-lg-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-lg-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-lg-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-lg-3 {\n padding: 1rem;\n }\n .fs-u-pt-lg-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-lg-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-lg-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-lg-3 {\n padding-left: 1rem;\n }\n .fs-u-px-lg-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-lg-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-lg-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-lg-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-lg-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-lg-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-lg-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-lg-3 {\n row-gap: 1rem;\n }\n .fs-u-m-lg-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-lg-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-lg-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-lg-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-lg-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-lg-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-lg-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-lg-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-lg-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-lg-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-lg-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-lg-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-lg-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-lg-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-lg-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-lg-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-lg-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-lg-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-lg-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-lg-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-lg-5 {\n margin: 3rem;\n }\n .fs-u-mt-lg-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-lg-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-lg-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-lg-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-lg-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-lg-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-lg-5 {\n padding: 3rem;\n }\n .fs-u-pt-lg-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-lg-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-lg-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-lg-5 {\n padding-left: 3rem;\n }\n .fs-u-px-lg-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-lg-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-lg-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-lg-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-lg-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-lg-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-lg-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-lg-5 {\n row-gap: 3rem;\n }\n .fs-u-m-lg-auto {\n margin: auto;\n }\n .fs-u-mt-lg-auto {\n margin-top: auto;\n }\n .fs-u-mr-lg-auto {\n margin-right: auto;\n }\n .fs-u-mb-lg-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-lg-auto {\n margin-left: auto;\n }\n .fs-u-mx-lg-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-lg-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 1280px) {\n .fs-u-m-xl-0 {\n margin: 0;\n }\n .fs-u-mt-xl-0 {\n margin-top: 0;\n }\n .fs-u-mr-xl-0 {\n margin-right: 0;\n }\n .fs-u-mb-xl-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-xl-0 {\n margin-left: 0;\n }\n .fs-u-mx-xl-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-xl-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-xl-0 {\n padding: 0;\n }\n .fs-u-pt-xl-0 {\n padding-top: 0;\n }\n .fs-u-pr-xl-0 {\n padding-right: 0;\n }\n .fs-u-pb-xl-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-xl-0 {\n padding-left: 0;\n }\n .fs-u-px-xl-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-xl-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-xl-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-xl-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-xl-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-xl-0 {\n gap: 0;\n }\n .fs-u-gap-x-xl-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-xl-0 {\n row-gap: 0;\n }\n .fs-u-m-xl-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-xl-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-xl-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-xl-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-xl-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-xl-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-xl-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-xl-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-xl-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-xl-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-xl-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-xl-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-xl-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-xl-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-xl-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-xl-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-xl-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-xl-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-xl-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-xl-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-xl-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-xl-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-xl-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-xl-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-xl-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-xl-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-xl-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-xl-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-xl-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-xl-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-xl-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-xl-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-xl-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-xl-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-xl-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-xl-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-xl-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-xl-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-xl-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-xl-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-xl-3 {\n margin: 1rem;\n }\n .fs-u-mt-xl-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-xl-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-xl-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-xl-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-xl-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-xl-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-xl-3 {\n padding: 1rem;\n }\n .fs-u-pt-xl-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-xl-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-xl-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-xl-3 {\n padding-left: 1rem;\n }\n .fs-u-px-xl-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-xl-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-xl-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-xl-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-xl-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-xl-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-xl-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-xl-3 {\n row-gap: 1rem;\n }\n .fs-u-m-xl-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-xl-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-xl-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-xl-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-xl-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-xl-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-xl-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-xl-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-xl-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-xl-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-xl-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-xl-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-xl-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-xl-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-xl-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-xl-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-xl-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-xl-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-xl-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-xl-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-xl-5 {\n margin: 3rem;\n }\n .fs-u-mt-xl-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-xl-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-xl-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-xl-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-xl-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-xl-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-xl-5 {\n padding: 3rem;\n }\n .fs-u-pt-xl-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-xl-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-xl-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-xl-5 {\n padding-left: 3rem;\n }\n .fs-u-px-xl-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-xl-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-xl-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-xl-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-xl-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-xl-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-xl-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-xl-5 {\n row-gap: 3rem;\n }\n .fs-u-m-xl-auto {\n margin: auto;\n }\n .fs-u-mt-xl-auto {\n margin-top: auto;\n }\n .fs-u-mr-xl-auto {\n margin-right: auto;\n }\n .fs-u-mb-xl-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-xl-auto {\n margin-left: auto;\n }\n .fs-u-mx-xl-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-xl-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 1536px) {\n .fs-u-m-xxl-0 {\n margin: 0;\n }\n .fs-u-mt-xxl-0 {\n margin-top: 0;\n }\n .fs-u-mr-xxl-0 {\n margin-right: 0;\n }\n .fs-u-mb-xxl-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-xxl-0 {\n margin-left: 0;\n }\n .fs-u-mx-xxl-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-xxl-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-xxl-0 {\n padding: 0;\n }\n .fs-u-pt-xxl-0 {\n padding-top: 0;\n }\n .fs-u-pr-xxl-0 {\n padding-right: 0;\n }\n .fs-u-pb-xxl-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-xxl-0 {\n padding-left: 0;\n }\n .fs-u-px-xxl-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-xxl-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-xxl-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-xxl-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-xxl-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-xxl-0 {\n gap: 0;\n }\n .fs-u-gap-x-xxl-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-xxl-0 {\n row-gap: 0;\n }\n .fs-u-m-xxl-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-xxl-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-xxl-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-xxl-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-xxl-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-xxl-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-xxl-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-xxl-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-xxl-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-xxl-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-xxl-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-xxl-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-xxl-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-xxl-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-xxl-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-xxl-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-xxl-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-xxl-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-xxl-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-xxl-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-xxl-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-xxl-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-xxl-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-xxl-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-xxl-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-xxl-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-xxl-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-xxl-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-xxl-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-xxl-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-xxl-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-xxl-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-xxl-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-xxl-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-xxl-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-xxl-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-xxl-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-xxl-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-xxl-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-xxl-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-xxl-3 {\n margin: 1rem;\n }\n .fs-u-mt-xxl-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-xxl-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-xxl-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-xxl-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-xxl-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-xxl-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-xxl-3 {\n padding: 1rem;\n }\n .fs-u-pt-xxl-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-xxl-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-xxl-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-xxl-3 {\n padding-left: 1rem;\n }\n .fs-u-px-xxl-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-xxl-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-xxl-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-xxl-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-xxl-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-xxl-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-xxl-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-xxl-3 {\n row-gap: 1rem;\n }\n .fs-u-m-xxl-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-xxl-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-xxl-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-xxl-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-xxl-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-xxl-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-xxl-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-xxl-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-xxl-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-xxl-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-xxl-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-xxl-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-xxl-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-xxl-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-xxl-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-xxl-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-xxl-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-xxl-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-xxl-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-xxl-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-xxl-5 {\n margin: 3rem;\n }\n .fs-u-mt-xxl-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-xxl-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-xxl-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-xxl-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-xxl-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-xxl-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-xxl-5 {\n padding: 3rem;\n }\n .fs-u-pt-xxl-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-xxl-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-xxl-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-xxl-5 {\n padding-left: 3rem;\n }\n .fs-u-px-xxl-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-xxl-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-xxl-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-xxl-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-xxl-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-xxl-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-xxl-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-xxl-5 {\n row-gap: 3rem;\n }\n .fs-u-m-xxl-auto {\n margin: auto;\n }\n .fs-u-mt-xxl-auto {\n margin-top: auto;\n }\n .fs-u-mr-xxl-auto {\n margin-right: auto;\n }\n .fs-u-mb-xxl-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-xxl-auto {\n margin-left: auto;\n }\n .fs-u-mx-xxl-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-xxl-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 1920px) {\n .fs-u-m-xxxl-0 {\n margin: 0;\n }\n .fs-u-mt-xxxl-0 {\n margin-top: 0;\n }\n .fs-u-mr-xxxl-0 {\n margin-right: 0;\n }\n .fs-u-mb-xxxl-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-xxxl-0 {\n margin-left: 0;\n }\n .fs-u-mx-xxxl-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-xxxl-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-xxxl-0 {\n padding: 0;\n }\n .fs-u-pt-xxxl-0 {\n padding-top: 0;\n }\n .fs-u-pr-xxxl-0 {\n padding-right: 0;\n }\n .fs-u-pb-xxxl-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-xxxl-0 {\n padding-left: 0;\n }\n .fs-u-px-xxxl-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-xxxl-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-xxxl-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-xxxl-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-xxxl-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-xxxl-0 {\n gap: 0;\n }\n .fs-u-gap-x-xxxl-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-xxxl-0 {\n row-gap: 0;\n }\n .fs-u-m-xxxl-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-xxxl-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-xxxl-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-xxxl-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-xxxl-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-xxxl-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-xxxl-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-xxxl-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-xxxl-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-xxxl-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-xxxl-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-xxxl-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-xxxl-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-xxxl-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-xxxl-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-xxxl-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-xxxl-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-xxxl-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-xxxl-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-xxxl-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-xxxl-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-xxxl-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-xxxl-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-xxxl-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-xxxl-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-xxxl-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-xxxl-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-xxxl-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-xxxl-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-xxxl-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-xxxl-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-xxxl-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-xxxl-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-xxxl-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-xxxl-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-xxxl-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-xxxl-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-xxxl-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-xxxl-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-xxxl-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-xxxl-3 {\n margin: 1rem;\n }\n .fs-u-mt-xxxl-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-xxxl-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-xxxl-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-xxxl-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-xxxl-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-xxxl-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-xxxl-3 {\n padding: 1rem;\n }\n .fs-u-pt-xxxl-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-xxxl-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-xxxl-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-xxxl-3 {\n padding-left: 1rem;\n }\n .fs-u-px-xxxl-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-xxxl-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-xxxl-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-xxxl-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-xxxl-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-xxxl-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-xxxl-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-xxxl-3 {\n row-gap: 1rem;\n }\n .fs-u-m-xxxl-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-xxxl-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-xxxl-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-xxxl-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-xxxl-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-xxxl-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-xxxl-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-xxxl-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-xxxl-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-xxxl-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-xxxl-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-xxxl-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-xxxl-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-xxxl-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-xxxl-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-xxxl-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-xxxl-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-xxxl-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-xxxl-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-xxxl-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-xxxl-5 {\n margin: 3rem;\n }\n .fs-u-mt-xxxl-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-xxxl-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-xxxl-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-xxxl-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-xxxl-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-xxxl-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-xxxl-5 {\n padding: 3rem;\n }\n .fs-u-pt-xxxl-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-xxxl-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-xxxl-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-xxxl-5 {\n padding-left: 3rem;\n }\n .fs-u-px-xxxl-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-xxxl-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-xxxl-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-xxxl-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-xxxl-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-xxxl-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-xxxl-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-xxxl-5 {\n row-gap: 3rem;\n }\n .fs-u-m-xxxl-auto {\n margin: auto;\n }\n .fs-u-mt-xxxl-auto {\n margin-top: auto;\n }\n .fs-u-mr-xxxl-auto {\n margin-right: auto;\n }\n .fs-u-mb-xxxl-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-xxxl-auto {\n margin-left: auto;\n }\n .fs-u-mx-xxxl-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-xxxl-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n}\n@layer utilities {\n .fs-u-text-start {\n text-align: left;\n }\n .fs-u-text-center {\n text-align: center;\n }\n .fs-u-text-end {\n text-align: right;\n }\n .fs-u-text-lowercase {\n text-transform: lowercase;\n }\n .fs-u-text-uppercase {\n text-transform: uppercase;\n }\n .fs-u-text-capitalize {\n text-transform: capitalize;\n }\n .fs-u-text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-u-fw-regular {\n font-weight: 400;\n }\n .fs-u-fw-medium {\n font-weight: 500;\n }\n .fs-u-fw-semibold {\n font-weight: 600;\n }\n .fs-u-fw-bold {\n font-weight: 700;\n }\n .fs-u-fs-xs {\n font-size: 0.6875rem;\n }\n .fs-u-fs-sm {\n font-size: 0.75rem;\n }\n .fs-u-fs-md {\n font-size: 0.8125rem;\n }\n .fs-u-fs-lg {\n font-size: 1rem;\n }\n .fs-u-fs-xl {\n font-size: 1.25rem;\n }\n .fs-u-fs-h1 {\n font-size: 1.75rem;\n }\n .fs-u-fs-h2 {\n font-size: 1.5rem;\n }\n .fs-u-fs-h3 {\n font-size: 1.3125rem;\n }\n .fs-u-fs-h4 {\n font-size: 1.125rem;\n }\n .fs-u-fs-h5 {\n font-size: 1rem;\n }\n .fs-u-fs-h6 {\n font-size: 0.875rem;\n }\n .fs-u-font-sans {\n font-family: var(--fs-font-sans);\n }\n .fs-u-font-mono {\n font-family: var(--fs-font-mono);\n }\n}\n@layer utilities {\n .fs-u-visible {\n visibility: visible;\n }\n .fs-u-invisible {\n visibility: hidden;\n }\n}\n@layer tokens {\n [data-fs-brand=violet] {\n --fs-color-primary: #6d28d9;\n --fs-alert-primary-bg: rgb(229.8834406263, 225.8717327657, 252.5458384302);\n --fs-alert-primary-text: rgb(37.7006407433, 8.7385189481, 83.109047167);\n --fs-feedback-primary-bg: rgb(229.8834406263, 225.8717327657, 252.5458384302);\n }\n [data-fs-brand=violet][data-theme=dark],\n [data-theme=dark] [data-fs-brand=violet] {\n --fs-color-primary: rgb(114.6495158739, 57.1165361442, 219.9746158745);\n --fs-alert-primary-bg: rgb(31.4819726714, 47.0564006856, 82.6607876597);\n --fs-alert-primary-text: rgb(167.4962913963, 147.746130571, 240.0249534535);\n --fs-feedback-primary-bg: rgb(31.4819726714, 47.0564006856, 82.6607876597);\n }\n @supports (color: oklch(0% 0 0deg)) {\n [data-fs-brand=violet] {\n --fs-color-primary: oklch(49.0666497236% 0.2412317343 292.5809393311deg);\n --fs-alert-primary-bg: oklch(92.3599974585% 0.0361847601 292.5809393311deg);\n --fs-alert-primary-text: oklch(24.5333248618% 0.1206158672 292.5809393311deg);\n --fs-feedback-primary-bg: oklch(92.3599974585% 0.0361847601 292.5809393311deg);\n }\n [data-fs-brand=violet][data-theme=dark],\n [data-theme=dark] [data-fs-brand=violet] {\n --fs-color-primary: oklch(51.6133172374% 0.2291701476 292.5809393311deg);\n --fs-alert-primary-bg: oklch(31.117092664% 0.067505667 264.9134801836deg);\n --fs-alert-primary-text: oklch(71.986657348% 0.1326774539 292.5809393311deg);\n --fs-feedback-primary-bg: oklch(31.117092664% 0.067505667 264.9134801836deg);\n }\n }\n [data-fs-brand=corporate] {\n --fs-color-primary: #1d4e89;\n --fs-alert-primary-bg: rgb(219.2237954153, 227.2186121739, 237.6990809983);\n --fs-alert-primary-text: rgb(5.0598830676, 24.6667463069, 49.4731905568);\n --fs-feedback-primary-bg: rgb(219.2237954153, 227.2186121739, 237.6990809983);\n }\n [data-fs-brand=corporate][data-theme=dark],\n [data-theme=dark] [data-fs-brand=corporate] {\n --fs-color-primary: rgb(40.8593466225, 86.5224214637, 143.0926598584);\n --fs-alert-primary-bg: rgb(31.2586947979, 46.3186220749, 70.1321749545);\n --fs-alert-primary-text: rgb(127.9940036809, 155.4045223568, 190.9765129762);\n --fs-feedback-primary-bg: rgb(31.2586947979, 46.3186220749, 70.1321749545);\n }\n [data-fs-brand=vibrant] {\n --fs-color-primary: #f2542d;\n --fs-alert-primary-bg: rgb(255, 231.3637253432, 224.6456124112);\n --fs-alert-primary-text: rgb(93.6202523577, 27.1894355526, 10.7919554552);\n --fs-feedback-primary-bg: rgb(255, 231.3637253432, 224.6456124112);\n }\n [data-fs-brand=vibrant][data-theme=dark],\n [data-theme=dark] [data-fs-brand=vibrant] {\n --fs-color-primary: rgb(244.0763687777, 94.774513804, 58.7750761343);\n --fs-alert-primary-bg: rgb(48.9487024594, 50.7990197305, 85.9119190034);\n --fs-alert-primary-text: rgb(255, 166.953251087, 144.6609410048);\n --fs-feedback-primary-bg: rgb(48.9487024594, 50.7990197305, 85.9119190034);\n }\n @supports (color: oklch(0% 0 0deg)) {\n [data-fs-brand=corporate] {\n --fs-color-primary: oklch(42.3377990386% 0.1112359961 255.1073474093deg);\n --fs-alert-primary-bg: oklch(91.3506698558% 0.0166853994 255.1073474093deg);\n --fs-alert-primary-text: oklch(21.1688995193% 0.055617998 255.1073474093deg);\n --fs-feedback-primary-bg: oklch(91.3506698558% 0.0166853994 255.1073474093deg);\n }\n [data-fs-brand=corporate][data-theme=dark],\n [data-theme=dark] [data-fs-brand=corporate] {\n --fs-color-primary: oklch(45.2209090867% 0.1056741963 255.1073474093deg);\n --fs-alert-primary-bg: oklch(30.1077650613% 0.0480063062 259.2924413953deg);\n --fs-alert-primary-text: oklch(68.2857894712% 0.0611797979 255.1073474093deg);\n --fs-feedback-primary-bg: oklch(30.1077650613% 0.0480063062 259.2924413953deg);\n }\n [data-fs-brand=vibrant] {\n --fs-color-primary: oklch(65.5786741493% 0.2007639921 34.7814711243deg);\n --fs-alert-primary-bg: oklch(94.8368011224% 0.0301145988 34.7814711243deg);\n --fs-alert-primary-text: oklch(32.7893370747% 0.1003819961 34.7814711243deg);\n --fs-feedback-primary-bg: oklch(94.8368011224% 0.0301145988 34.7814711243deg);\n }\n [data-fs-brand=vibrant][data-theme=dark],\n [data-theme=dark] [data-fs-brand=vibrant] {\n --fs-color-primary: oklch(67.2997404419% 0.1907257925 34.7814711243deg);\n --fs-alert-primary-bg: oklch(33.5938963279% 0.0614355056 280.2435599526deg);\n --fs-alert-primary-text: oklch(81.0682707821% 0.1104201957 34.7814711243deg);\n --fs-feedback-primary-bg: oklch(33.5938963279% 0.0614355056 280.2435599526deg);\n }\n }\n}\n@layer overrides {\n [data-fs-brand=vibrant] .fs-btn-primary,\n [data-fs-brand=vibrant] .fs-badge-primary {\n --fs-btn-color: #000000;\n --fs-badge-color: #000000;\n }\n [data-fs-brand=vibrant] .fs-check {\n --fs-check-mark: #000000;\n }\n}\n@layer tokens {\n [data-theme=dark] {\n --fs-color-text: #f1f3f4;\n --fs-color-muted: #bdc1c6;\n --fs-color-border: #3c4043;\n --fs-color-surface: #202124;\n --fs-color-subtle: #2b2c2f;\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n --fs-shadow-sm: 0 1px 3px rgb(0 0 0 / 50%), 0 1px 2px rgb(0 0 0 / 40%);\n --fs-shadow-md: 0 6px 12px rgb(0 0 0 / 55%), 0 3px 6px rgb(0 0 0 / 45%);\n --fs-shadow-lg: 0 15px 30px rgb(0 0 0 / 60%), 0 6px 12px rgb(0 0 0 / 50%);\n --fs-tooltip-bg: #f8fafc;\n --fs-tooltip-text: #1e293b;\n --fs-color-primary: rgb(39.8728684152, 106.2372587275, 232.1894887664);\n --fs-alert-primary-bg: rgb(30.765779113, 49.9974662348, 82.3021425489);\n --fs-alert-primary-text: rgb(130.6636212695, 172.0850768824, 246.4419684583);\n --fs-feedback-primary-bg: rgb(30.765779113, 49.9974662348, 82.3021425489);\n --fs-color-secondary: rgb(114.3557068426, 129.039220146, 150.1520317181);\n --fs-alert-secondary-bg: rgb(39.6548148226, 51.4270943358, 70.2648514061);\n --fs-alert-secondary-text: rgb(166.7597509121, 176.2809684237, 189.9919576187);\n --fs-feedback-secondary-bg: rgb(39.6548148226, 51.4270943358, 70.2648514061);\n --fs-color-success: rgb(134.4501166043, 226.9563331209, 149.6185042518);\n --fs-alert-success-bg: rgb(24.8621518491, 61.9088085702, 89.0318819222);\n --fs-alert-success-text: rgb(155.0475916512, 231.7231823866, 166.1609492581);\n --fs-feedback-success-bg: rgb(24.8621518491, 61.9088085702, 89.0318819222);\n --fs-color-warning: rgb(252.9400238762, 208.7461261831, 137.9221837268);\n --fs-alert-warning-bg: rgb(59.1359779173, 56.6792370273, 88.6687774507);\n --fs-alert-warning-text: rgb(253.5439861058, 216.1213263099, 157.1705651606);\n --fs-feedback-warning-bg: rgb(59.1359779173, 56.6792370273, 88.6687774507);\n --fs-color-danger: rgb(208.1189955268, 64.9740184262, 63.4302936954);\n --fs-alert-danger-bg: rgb(44.6823973866, 47.5125073063, 81.2083778204);\n --fs-alert-danger-text: rgb(235.4050745756, 149.9650253478, 142.4924034553);\n --fs-feedback-danger-bg: rgb(44.6823973866, 47.5125073063, 81.2083778204);\n --fs-color-info: #5e5cc7;\n --fs-alert-info-bg: rgb(35.0058091619, 49.6887857769, 78.5757788254);\n --fs-alert-info-text: rgb(160.628671266, 165.881962789, 227.610600335);\n --fs-feedback-info-bg: rgb(35.0058091619, 49.6887857769, 78.5757788254);\n }\n @supports (color: oklch(0% 0 0deg)) {\n [data-theme=dark] {\n --fs-color-text: oklch(96.2913383165% 0.002529697 228.7848682695deg);\n --fs-color-muted: oklch(80.9268110646% 0.0083071608 253.8653061211deg);\n --fs-color-border: oklch(36.8827622528% 0.0074489239 240.018838067deg);\n --fs-color-surface: oklch(24.7936263361% 0.0058460141 271.1764187765deg);\n --fs-color-subtle: oklch(29.3286259539% 0.0055990771 271.2234269855deg);\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n --fs-tooltip-bg: oklch(98.4151869501% 0.0034126992 247.8577745944deg);\n --fs-tooltip-text: oklch(27.9495237712% 0.0368481257 260.0309873929deg);\n --fs-color-primary: oklch(55.884857057% 0.2025537915 261.6264320248deg);\n --fs-alert-primary-bg: oklch(31.7915463198% 0.0633030844 260.2703040876deg);\n --fs-alert-primary-text: oklch(74.4596540856% 0.1172679846 261.6264320248deg);\n --fs-feedback-primary-bg: oklch(31.7915463198% 0.0633030844 260.2703040876deg);\n --fs-color-secondary: oklch(59.8951906896% 0.0366453387 257.4166191214deg);\n --fs-alert-secondary-bg: oklch(32.0729603204% 0.0374284633 259.6388321521deg);\n --fs-alert-secondary-text: oklch(75.4915054214% 0.0223943736 257.4166191214deg);\n --fs-feedback-secondary-bg: oklch(32.0729603204% 0.0374284633 259.6388321521deg);\n --fs-color-success: oklch(83.8485321344% 0.139498201 148.125846236deg);\n --fs-alert-success-bg: oklch(35.0298333903% 0.0635127994 243.2452162193deg);\n --fs-alert-success-text: oklch(86.3333733445% 0.1180369393 148.125846236deg);\n --fs-feedback-success-bg: oklch(35.0298333903% 0.0635127994 243.2452162193deg);\n --fs-color-warning: oklch(88.2682030181% 0.1015699084 78.6575213966deg);\n --fs-alert-warning-bg: oklch(36.0497574404% 0.0547601164 286.8249674934deg);\n --fs-alert-warning-text: oklch(90.0730948615% 0.0859437686 78.6575213966deg);\n --fs-feedback-warning-bg: oklch(36.0497574404% 0.0547601164 286.8249674934deg);\n --fs-color-danger: oklch(58.1670482336% 0.1802407312 25.2407937498deg);\n --fs-alert-danger-bg: oklch(32.151892295% 0.0597799696 278.8124583464deg);\n --fs-alert-danger-text: oklch(75.7809226615% 0.104349897 25.2407937498deg);\n --fs-feedback-danger-bg: oklch(32.151892295% 0.0597799696 278.8124583464deg);\n --fs-color-info: oklch(53.3359780029% 0.1620131129 280.2231949375deg);\n --fs-alert-info-bg: oklch(31.7574919059% 0.0556228738 263.0598185246deg);\n --fs-alert-info-text: oklch(74.3347879016% 0.0891072121 280.2231949375deg);\n --fs-feedback-info-bg: oklch(31.7574919059% 0.0556228738 263.0598185246deg);\n }\n }\n}","@use \"sass:map\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n// Ordem canônica das camadas: declarada uma única vez aqui porque `tokens`\n// é sempre o primeiro `@use` de cada entry point (ver scss/entries/*.scss e\n// scss/fokus.scss) — evita repetir a declaração em cada bundle.\n@layer reset, tokens, base, layout, components, utilities, overrides;\n\n@layer tokens {\n // Bloco incondicional: fallback sRGB, aplicado em todo navegador. Os\n // valores de cor aqui vêm de `rgb-fallback()` (gamut-mapeado a partir do\n // primitivo OKLCH) — ver `tools/_mixins.scss`. É sempre sobrescrito pelo\n // bloco `@supports` abaixo em navegadores com suporte a `oklch()`; um\n // `--fs-*` de cor nunca deve ser lido só daqui em código novo.\n :root {\n --fs-color-white: #{$color-white};\n --fs-color-black: #{$color-black};\n --fs-color-text: #{rgb-fallback($color-gray-900)};\n --fs-color-muted: #{rgb-fallback($color-gray-600)};\n --fs-color-border: #{rgb-fallback($color-gray-300)};\n --fs-color-surface: #{$color-white};\n --fs-color-subtle: #{rgb-fallback($color-gray-100)};\n --fs-font-sans: #{$font-family-sans};\n --fs-font-mono: #{$font-family-mono};\n --fs-font-size-md: #{$font-size-md};\n --fs-font-size-h1: #{$font-size-h1};\n --fs-font-size-h2: #{$font-size-h2};\n --fs-font-size-h3: #{$font-size-h3};\n --fs-font-size-h4: #{$font-size-h4};\n --fs-font-size-h5: #{$font-size-h5};\n --fs-font-size-h6: #{$font-size-h6};\n --fs-font-weight-semibold: #{$font-weight-semibold};\n --fs-line-height-base: #{$line-height-base};\n --fs-line-height-heading: #{$line-height-heading};\n --fs-radius-sm: #{$radius-sm};\n --fs-radius-md: #{$radius-md};\n --fs-radius-lg: #{$radius-lg};\n --fs-gutter-x: #{map.get($spacers, 4)};\n --fs-gutter-y: 0px;\n\n @each $name, $space in $spacers {\n --fs-space-#{$name}: #{$space};\n }\n\n @each $name, $z-index in $z-indexes {\n --fs-z-#{$name}: #{$z-index};\n }\n\n --fs-control-height: 38px;\n --fs-control-height-sm: 30px;\n --fs-control-height-lg: 46px;\n --fs-control-padding-x: 12px;\n --fs-control-padding-x-sm: 8px;\n --fs-control-padding-x-lg: 16px;\n --fs-focus-width: 2px;\n --fs-focus-offset: 2px;\n --fs-focus-ring-alpha: 22%;\n --fs-transition-fast: 150ms;\n --fs-transition-normal: 220ms;\n --fs-ease-standard: cubic-bezier(0.2, 0, 0, 1);\n --fs-border-width: 1px;\n --fs-disabled-opacity: 0.5;\n\n // Referência dos limiares usados pelos utilitários `@container` (ver\n // `packages/fokus-utilities/scss/utilities/_container-queries.scss`).\n // Só informativas: a condição de um `@container` precisa de um valor\n // literal em tempo de build, não aceita `var()` — mudar aqui não\n // recalibra as regras já compiladas, só documenta os valores usados.\n @each $name, $width in $container-breakpoints {\n --fs-cq-#{$name}: #{$width};\n }\n\n --fs-shadow-sm: 0 1px 3px rgb(0 0 0 / 15%), 0 1px 2px rgb(0 0 0 / 10%);\n --fs-shadow-md: 0 6px 12px rgb(0 0 0 / 15%), 0 3px 6px rgb(0 0 0 / 10%);\n --fs-shadow-lg: 0 15px 30px rgb(0 0 0 / 18%), 0 6px 12px rgb(0 0 0 / 12%);\n --fs-tooltip-bg: #{rgb-fallback($color-gray-900)};\n --fs-tooltip-text: #{$color-white};\n\n @each $name, $color in $theme-colors {\n --fs-color-#{$name}: #{rgb-fallback($color)};\n --fs-color-on-#{$name}: #{color-contrast($color)};\n --fs-alert-#{$name}-bg: #{rgb-fallback(tint-color($color))};\n --fs-alert-#{$name}-text: #{rgb-fallback(shade-color($color))};\n }\n\n @each $name, $bg in $theme-bg-colors {\n --fs-feedback-#{$name}-bg: #{rgb-fallback($bg)};\n }\n }\n\n // Bloco condicional: valores nativos em OKLCH. `@supports (color: oklch(0%\n // 0 0))` só passa em navegadores que entendem a função — os demais ignoram\n // o bloco inteiro e mantêm o fallback sRGB acima. Só propriedades de cor\n // entram aqui; o resto (fontes, raio, sombra, gutter) não tem equivalente\n // \"melhor\" em OKLCH e já está definido de forma incondicional.\n @supports (color: oklch(0% 0 0)) {\n :root {\n --fs-color-text: #{$color-gray-900};\n --fs-color-muted: #{$color-gray-600};\n --fs-color-border: #{$color-gray-300};\n --fs-color-subtle: #{$color-gray-100};\n --fs-tooltip-bg: #{$color-gray-900};\n\n @each $name, $color in $theme-colors {\n --fs-color-#{$name}: #{$color};\n --fs-color-on-#{$name}: #{color-contrast($color)};\n --fs-alert-#{$name}-bg: #{tint-color($color)};\n --fs-alert-#{$name}-text: #{shade-color($color)};\n }\n\n @each $name, $bg in $theme-bg-colors {\n --fs-feedback-#{$name}-bg: #{$bg};\n }\n }\n }\n}\n","// Camada semântica: nomeia tokens por PAPEL (o que a cor faz na interface),\n// não por valor. Cada token aqui é um alias `var()` de um token primitivo\n// (`_root.scss`) — não introduz nenhuma cor nova, só um vocabulário estável\n// entre o primitivo e o consumo por componente (ver `_component-buttons.scss`\n// como referência de como um componente deve consumir esta camada).\n// Por que alias e não recalcular o valor: um `var()` encadeado continua\n// resolvendo o fallback sRGB/OKLCH já decidido em `_root.scss` — não precisa\n// repetir a lógica de `@supports` aqui.\n@layer tokens {\n :root {\n // Superfícies\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n\n // Texto\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n\n // Bordas\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n\n // Ação (mapeiam para a cor de tema correspondente — existem para dar um\n // nome estável a \"a cor de ação primária\", independente de qual token\n // primitivo ela usa por baixo).\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n }\n}\n","// Tokens de gráficos: agnósticos de biblioteca — não é um wrapper de\n// Chart.js/ECharts/Recharts/etc., só cores/tema que qualquer uma delas pode\n// consumir via `getComputedStyle`/CSS custom properties. Aliases da camada\n// semântica já existente (mesma técnica de `_semantic.scss`), então\n// acompanham `data-theme`/`data-fs-brand` automaticamente sem token novo por\n// tema. Ver docs/guides/charts.md.\n@layer tokens {\n :root {\n --fs-chart-series-1: var(--fs-color-primary);\n --fs-chart-series-2: var(--fs-color-success);\n --fs-chart-series-3: var(--fs-color-warning);\n --fs-chart-series-4: var(--fs-color-danger);\n --fs-chart-series-5: var(--fs-color-info);\n --fs-chart-series-6: var(--fs-color-secondary);\n --fs-chart-grid: var(--fs-color-border);\n --fs-chart-axis: var(--fs-color-muted);\n --fs-chart-tooltip-bg: var(--fs-tooltip-bg);\n --fs-chart-tooltip-text: var(--fs-tooltip-text);\n }\n}\n","@layer reset {\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n }\n\n html {\n line-height: var(--fs-line-height-base);\n text-size-adjust: 100%;\n }\n\n body {\n margin: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n }\n\n [hidden] {\n display: none !important;\n }\n}\n","// As declarações @font-face das fontes self-hosted ficam em `_fonts.scss`,\n// distribuído à parte (dist/css/fonts.css) e fora dos bundles principais —\n// ver a nota nesse arquivo. Aqui só aplicamos as pilhas de `font-family`\n// (com fallback sans-serif/monospace, que valem mesmo sem fonts.css).\n\n@layer base {\n body,\n button,\n input,\n select,\n textarea {\n font-family: var(--fs-font-sans);\n font-size: var(--fs-font-size-md);\n }\n\n code,\n kbd,\n pre,\n samp {\n font-family: var(--fs-font-mono);\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin-top: 0;\n font-weight: var(--fs-font-weight-semibold);\n line-height: var(--fs-line-height-heading);\n }\n\n h1 {\n font-size: var(--fs-font-size-h1);\n }\n\n h2 {\n font-size: var(--fs-font-size-h2);\n }\n\n h3 {\n font-size: var(--fs-font-size-h3);\n }\n\n h4 {\n font-size: var(--fs-font-size-h4);\n }\n\n h5 {\n font-size: var(--fs-font-size-h5);\n }\n\n h6 {\n font-size: var(--fs-font-size-h6);\n }\n}\n","// Respeita a preferência do sistema sem remover a funcionalidade dos\n// componentes: apenas reduz transições e animações ao estado final.\n@layer base {\n @media (prefers-reduced-motion: reduce) {\n *,\n *::before,\n *::after {\n scroll-behavior: auto !important;\n transition-duration: 0.01ms !important;\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n }\n\n // Spinner comunica uma operação em curso; congelá-lo o transforma em um\n // ícone ambíguo. Mantemos a animação, porém em ritmo mais lento, para\n // respeitar a preferência sem perder o significado de carregamento.\n .fs-spinner,\n .fs-progress-bar-animated,\n .fs-progress-indeterminate .fs-progress-bar {\n animation-duration: 1.5s !important;\n animation-iteration-count: infinite !important;\n }\n }\n}\n","@use \"sass:map\";\n@use \"../settings\" as *;\n\n// Agrupa itens horizontalmente com quebra de linha automática e\n// espaçamento consistente nos dois eixos — ideal para grupos de\n// tags/botões/badges que precisam \"fluir\" sem estourar o container.\n@layer layout {\n .fs-cluster {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--fs-cluster-gap, #{map.get($spacers, 2)});\n }\n\n @each $key, $value in $spacers {\n .fs-cluster-gap-#{$key} {\n --fs-cluster-gap: #{$value};\n }\n }\n}\n","@use \"sass:map\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n@layer layout {\n .fs-container,\n .fs-container-sm,\n .fs-container-md,\n .fs-container-lg,\n .fs-container-xl,\n .fs-container-xxl,\n .fs-container-xxxl,\n .fs-container-fluid {\n width: 100%;\n margin-right: auto;\n margin-left: auto;\n }\n\n @each $breakpoint, $width in $container-max-widths {\n @include media-breakpoint-up($breakpoint) {\n .fs-container,\n .fs-container-#{$breakpoint} {\n max-width: $width;\n }\n }\n }\n}\n","@use \"sass:map\";\n@use \"sass:math\";\n@use \"sass:color\";\n@use \"../settings\" as *;\n\n@mixin media-breakpoint-up($name) {\n $min: map.get($breakpoints, $name);\n\n @if $min == null {\n @error \"Unknown breakpoint `#{$name}`.\";\n }\n\n @if $min == 0 {\n @content;\n } @else {\n @media (min-width: $min) {\n @content;\n }\n }\n}\n\n@function breakpoint-infix($name) {\n @if $name == xs {\n @return \"\";\n }\n\n @return \"-#{$name}\";\n}\n\n@mixin focus-ring($color: var(--fs-color-primary)) {\n outline: var(--fs-focus-width) solid $color;\n outline-offset: var(--fs-focus-offset);\n border-color: $color;\n box-shadow: 0 0 0 3px color-mix(in srgb, #{$color} 22%, transparent);\n}\n\n@mixin truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n@function linearize-channel($value) {\n $c: math.div($value, 255);\n\n @if $c <= 0.0393 {\n @return math.div($c, 12.92);\n }\n\n @return math.pow(math.div($c + 0.055, 1.055), 2.4);\n}\n\n@function relative-luminance($color) {\n $r: linearize-channel(color.channel($color, \"red\", $space: rgb));\n $g: linearize-channel(color.channel($color, \"green\", $space: rgb));\n $b: linearize-channel(color.channel($color, \"blue\", $space: rgb));\n\n @return (0.2126 * $r) + (0.7152 * $g) + (0.0722 * $b);\n}\n\n@function color-contrast($background, $min-contrast: 4.5) {\n $contrast-with-white: math.div(1.05, relative-luminance($background) + 0.05);\n\n @if $contrast-with-white >= $min-contrast {\n @return $color-white;\n }\n\n @return $color-black;\n}\n\n// Razão de contraste WCAG entre duas cores (1–21). Usada pelo relatório de\n// contraste do build (`npm run contrast`, `scripts/contrast-report.scss`) —\n// ver docs/reference/contrast-report.md para os pares auditados.\n@function contrast-ratio($foreground, $background) {\n $l1: relative-luminance($foreground) + 0.05;\n $l2: relative-luminance($background) + 0.05;\n\n @if $l1 > $l2 {\n @return math.div($l1, $l2);\n }\n\n @return math.div($l2, $l1);\n}\n\n@function tint-color($color, $weight: 15%) {\n @return color.mix($color, $color-white, $weight, $method: oklch);\n}\n\n@function shade-color($color, $weight: 50%) {\n @return color.mix($color, $color-black, $weight, $method: oklch);\n}\n\n// Fallback sRGB de uma cor OKLCH para navegadores sem suporte a `oklch()`\n// (ver `@supports` em tokens/_root.scss e themes/_dark.scss). Faz gamut\n// mapping antes da conversão — misturas em OKLCH frequentemente caem fora do\n// gamut sRGB, e converter sem mapear gera `rgb()`/`hsl()` com canais\n// inválidos (saturação > 100%, etc.).\n@function rgb-fallback($color) {\n $mapped: color.to-gamut($color, $space: rgb, $method: local-minde);\n\n @return color.to-space($mapped, rgb);\n}\n","// Escala alinhada às larguras lógicas de tela mais comuns do mercado atual:\n// sm/tablet retrato (~768 já cobria isso; 640 cobre phablets/tablets pequenos\n// antes desse corte), lg = tablet paisagem/iPad (1024), xl = laptop comum\n// (1280), xxl = notebook/desktop com escala (Mac/Windows a 1536 lógico),\n// xxxl = monitor externo Full HD sem escala (1920).\n$breakpoints: (\n xs: 0,\n sm: 640px,\n md: 768px,\n lg: 1024px,\n xl: 1280px,\n xxl: 1536px,\n xxxl: 1920px\n) !default;\n\n$container-max-widths: (\n sm: 600px,\n md: 720px,\n lg: 960px,\n xl: 1200px,\n xxl: 1440px,\n xxxl: 1800px\n) !default;\n\n$column-max-widths: (\n sm: 120px,\n md: 240px,\n lg: 360px,\n xl: 480px,\n xxl: 600px,\n xxxl: 720px\n) !default;\n","@use \"sass:math\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n@layer layout {\n $grid-columns: 12;\n\n .fs-row {\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(var(--fs-gutter-y) * -1);\n margin-right: calc(var(--fs-gutter-x) / -2);\n margin-left: calc(var(--fs-gutter-x) / -2);\n }\n\n .fs-row > * {\n margin-top: var(--fs-gutter-y);\n padding-right: calc(var(--fs-gutter-x) / 2);\n padding-left: calc(var(--fs-gutter-x) / 2);\n }\n\n .fs-row-fluid {\n width: 100%;\n }\n\n .fs-col-fluid {\n width: 100%;\n }\n\n @each $breakpoint, $min in $breakpoints {\n $infix: breakpoint-infix($breakpoint);\n\n @include media-breakpoint-up($breakpoint) {\n .fs-col#{$infix} {\n flex: 1 0 0%;\n }\n\n .fs-col#{$infix}-auto {\n flex: 0 0 auto;\n width: auto;\n }\n\n @for $i from 1 through $grid-columns {\n .fs-col#{$infix}-#{$i} {\n flex: 0 0 auto;\n width: math.percentage(math.div($i, $grid-columns));\n }\n }\n }\n }\n}\n","@use \"sass:map\";\n@use \"../settings\" as *;\n\n// Um lado com largura fixa (a \"aside\") e o outro preenchendo o espaço\n// restante, quebrando para empilhado quando o container fica estreito\n// demais — sem media query: `.fs-sidebar-content` força a quebra via\n// `min-width` quando não cabe ao lado da aside na mesma linha.\n@layer layout {\n .fs-sidebar {\n display: flex;\n flex-wrap: wrap;\n gap: var(--fs-sidebar-gap, #{map.get($spacers, 3)});\n }\n\n .fs-sidebar-aside {\n flex-basis: var(--fs-sidebar-width, 16rem);\n flex-grow: 1;\n }\n\n .fs-sidebar-content {\n flex-basis: 0;\n flex-grow: 999;\n min-width: 50%;\n }\n\n .fs-sidebar-reverse {\n flex-direction: row-reverse;\n }\n\n @each $key, $value in $spacers {\n .fs-sidebar-gap-#{$key} {\n --fs-sidebar-gap: #{$value};\n }\n }\n\n @each $key, $value in $column-max-widths {\n .fs-sidebar-width-#{$key} {\n --fs-sidebar-width: #{$value};\n }\n }\n}\n","@use \"sass:map\";\n@use \"../settings\" as *;\n\n// Empilha os filhos diretos verticalmente com espaçamento consistente —\n// `gap` em vez de margin, evita o problema clássico de \"último filho não\n// deve ter margin-bottom\" sem seletor extra.\n@layer layout {\n .fs-stack {\n display: flex;\n flex-direction: column;\n gap: var(--fs-stack-gap, #{map.get($spacers, 3)});\n }\n\n @each $key, $value in $spacers {\n .fs-stack-gap-#{$key} {\n --fs-stack-gap: #{$value};\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-form-row {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: flex-start;\n justify-content: flex-start;\n gap: 12px 16px;\n width: 100%;\n }\n\n .fs-form-col {\n display: flex;\n flex: 1 1 240px;\n flex-direction: column;\n align-items: stretch;\n min-width: 0;\n gap: 4px;\n }\n\n .fs-form-label {\n width: auto;\n margin: 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n font-weight: $font-weight-regular;\n }\n\n .fs-form-text {\n width: auto;\n margin: 0;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-regular;\n }\n\n .fs-form-text,\n .fs-valid-feedback,\n .fs-invalid-feedback {\n min-height: 1.25rem;\n padding: 3px 8px;\n border-radius: var(--fs-radius-sm);\n }\n\n .fs-form-text {\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-regular;\n }\n\n .fs-valid-feedback,\n .fs-invalid-feedback {\n display: none;\n font-size: $font-size-xs;\n font-weight: $font-weight-regular;\n\n }\n\n .fs-valid-feedback {\n color: var(--fs-alert-success-text);\n background-color: var(--fs-feedback-success-bg);\n }\n\n .fs-invalid-feedback {\n color: var(--fs-alert-danger-text);\n background-color: var(--fs-feedback-danger-bg);\n }\n\n .is-valid ~ .fs-valid-feedback,\n .is-invalid ~ .fs-invalid-feedback {\n display: block;\n }\n\n .fs-form-control {\n width: 100%;\n min-width: 0;\n height: var(--fs-control-height);\n padding: 0 7px;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n }\n\n .fs-form-control::placeholder {\n color: var(--fs-color-muted);\n }\n\n .fs-form-control:focus-visible {\n @include focus-ring;\n }\n\n .fs-form-control:disabled {\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n\n .fs-form-control:read-only {\n background-color: var(--fs-color-subtle);\n cursor: default;\n }\n\n .fs-form-control-sm {\n height: var(--fs-control-height-sm);\n font-size: $font-size-xs;\n }\n\n .fs-form-control-lg {\n height: var(--fs-control-height-lg);\n font-size: $font-size-md;\n }\n\n .fs-form-size-sm {\n width: 120px;\n }\n\n .fs-form-size-md {\n width: 180px;\n }\n\n .fs-form-size-lg {\n width: 240px;\n }\n\n .fs-form-size-xl {\n width: 300px;\n }\n\n .fs-form-size-xxl {\n width: 360px;\n }\n\n .fs-form-control.is-valid {\n border-color: var(--fs-color-success);\n }\n\n .fs-form-control.is-valid:focus-visible {\n @include focus-ring(var(--fs-color-success));\n }\n\n .fs-form-control.is-invalid {\n border-color: var(--fs-color-danger);\n }\n\n .fs-form-control.is-invalid:focus-visible {\n @include focus-ring(var(--fs-color-danger));\n }\n\n .fs-form-select {\n display: flex;\n flex: 1;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n height: var(--fs-control-height);\n padding: 0 7px;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n text-align: left;\n cursor: pointer;\n }\n\n .fs-form-select::after {\n flex-shrink: 0;\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 8px;\n content: \"\";\n border-top: 5px solid;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n }\n\n .fs-form-select:focus-visible {\n @include focus-ring;\n }\n\n .fs-form-select:disabled {\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n opacity: 0.4;\n pointer-events: none;\n }\n\n .fs-form-select-sm {\n height: var(--fs-control-height-sm);\n font-size: $font-size-xs;\n }\n\n .fs-form-select-lg {\n height: var(--fs-control-height-lg);\n font-size: $font-size-md;\n }\n\n .fs-file-upload {\n position: relative;\n display: inline-flex;\n }\n\n .fs-file-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .fs-file-label {\n display: inline-flex;\n align-items: center;\n height: 38px;\n padding: 0 14px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n cursor: pointer;\n user-select: none;\n transition: filter var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-file-label:hover {\n filter: brightness(0.96);\n }\n\n .fs-file-input:focus-visible + .fs-file-label {\n @include focus-ring;\n }\n\n .fs-file-input:disabled + .fs-file-label {\n color: var(--fs-color-muted);\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n cursor: default;\n }\n\n .fs-file-label-sm {\n height: 30px;\n padding: 0 10px;\n font-size: $font-size-xs;\n }\n\n .fs-file-label-lg {\n height: 46px;\n padding: 0 18px;\n font-size: $font-size-lg;\n }\n\n // Drag-and-drop (js/file-drop.js): estado visual ao arrastar um arquivo por\n // cima do `.fs-file-label`, e uma variante maior (dropzone) para quando o alvo\n // de soltar precisa ser mais generoso que o botão padrão de `.fs-file-label`.\n .fs-file-label.is-dragover {\n border-color: var(--fs-color-primary);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-file-label-dropzone {\n flex-direction: column;\n gap: 4px;\n width: 100%;\n height: auto;\n padding: 32px 16px;\n border-style: dashed;\n border-width: 2px;\n font-weight: $font-weight-regular;\n text-align: center;\n }\n\n .fs-file-label-dropzone .fs-file-dropzone-hint {\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-regular;\n }\n\n // Input Group: funde `.fs-form-control` (ou `.fs-form-select`/`.fs-btn`) com \"addons\"\n // de texto/ícone de prefixo/sufixo, reaproveitando os tokens visuais do\n // próprio `.fs-form-control` (borda, cor, radius). 100% CSS — a altura do addon\n // acompanha a do controle via `align-items: stretch` (herdado), sem precisar\n // fixar `height` nele.\n .fs-input-group {\n display: flex;\n align-items: stretch;\n width: 100%;\n }\n\n .fs-input-group > .fs-form-control,\n .fs-input-group > .fs-form-select {\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n }\n\n .fs-input-group-text {\n display: flex;\n align-items: center;\n padding: 0 12px;\n border: 1px solid var(--fs-color-border);\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n white-space: nowrap;\n }\n\n // Funde as bordas dos itens adjacentes (remove a dupla borda) e mantém o\n // item focado por cima da sobreposição de -1px, senão a borda de foco fica\n // parcialmente escondida atrás do vizinho.\n .fs-input-group > :not(:first-child) {\n margin-left: -1px;\n }\n\n .fs-input-group > :focus-visible,\n .fs-input-group > :focus-within {\n position: relative;\n z-index: 1;\n }\n\n .fs-input-group > * {\n border-radius: 0;\n }\n\n .fs-input-group > :first-child {\n border-top-left-radius: var(--fs-radius-sm);\n border-bottom-left-radius: var(--fs-radius-sm);\n }\n\n .fs-input-group > :last-child {\n border-top-right-radius: var(--fs-radius-sm);\n border-bottom-right-radius: var(--fs-radius-sm);\n }\n\n .fs-input-group-sm > .fs-form-control,\n .fs-input-group-sm > .fs-form-select,\n .fs-input-group-sm > .fs-input-group-text {\n height: 30px;\n padding: 0 8px;\n font-size: $font-size-xs;\n }\n\n .fs-input-group-lg > .fs-form-control,\n .fs-input-group-lg > .fs-form-select,\n .fs-input-group-lg > .fs-input-group-text {\n height: 46px;\n padding: 0 16px;\n font-size: $font-size-lg;\n }\n}\n","$font-family-sans: \"Plus Jakarta Sans\", sans-serif !default;\n$font-family-mono: \"Source Code Pro\", monospace !default;\n\n// Escala compacta: corpo (md) ~13px, piso (xs) ~11px — reservado a\n// texto de apoio (meta/label), nunca corpo de leitura.\n$font-size-xs: 0.6875rem !default;\n$font-size-sm: 0.75rem !default;\n$font-size-md: 0.8125rem !default;\n$font-size-lg: 1rem !default;\n$font-size-xl: 1.25rem !default;\n\n// Escala de headings, deliberadamente menor que o padrão do navegador\n// (preferência por texto compacto — ver docs/internal/plans).\n$font-size-h1: 1.75rem !default;\n$font-size-h2: 1.5rem !default;\n$font-size-h3: 1.3125rem !default;\n$font-size-h4: 1.125rem !default;\n$font-size-h5: 1rem !default;\n$font-size-h6: 0.875rem !default;\n\n$font-weight-regular: 400 !default;\n$font-weight-medium: 500 !default;\n$font-weight-semibold: 600 !default;\n$font-weight-bold: 700 !default;\n\n$line-height-base: 1.5 !default;\n$line-height-heading: 1.25 !default;\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Checkbox/radio/switch 100% CSS, reusando a técnica de input oculto +\n// label irmã do Segmented Control (_segmented-control.scss) e do Rating\n// (_rating.scss): `<input>` clipado visualmente (não `display: none` — teclado\n// e leitor de tela continuam enxergando o controle) + `<label for=\"id\">`\n// como irmã, que desenha a caixa/trilho via `::before` e a marca/knob via\n// `::after`. O `<label>` é o alvo de clique/hover/estado, mas o input\n// continua sendo o elemento focável e semântico (checkbox/radio nativos).\n// Wrapper (`.fs-check`/`.fs-radio`/`.fs-switch`) carrega o tamanho\n// (`-sm`/`-lg`) e agrupa input+label, no mesmo papel de `.fs-segmented-item`.\n@layer components {\n .fs-check,\n .fs-radio,\n .fs-switch {\n display: inline-flex;\n align-items: center;\n }\n\n .fs-check {\n --fs-check-mark: var(--fs-color-on-primary);\n }\n\n .fs-check-input,\n .fs-radio-input,\n .fs-switch-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .fs-check-label,\n .fs-radio-label,\n .fs-switch-label {\n position: relative;\n display: inline-flex;\n align-items: center;\n min-height: 20px;\n padding-left: 28px;\n color: var(--fs-color-text);\n font-size: $font-size-md;\n cursor: pointer;\n user-select: none;\n }\n\n // Caixa (checkbox/radio) ou trilho (switch), desenhados no `::before` da\n // label. Radio é a exceção redonda da regra anti-circular do projeto\n // (junto do spinner) — ver docs/internal/plans.\n .fs-check-label::before,\n .fs-radio-label::before,\n .fs-switch-label::before {\n position: absolute;\n left: 0;\n box-sizing: border-box;\n border: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface);\n content: \"\";\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n }\n\n .fs-check-label::before,\n .fs-radio-label::before {\n width: 18px;\n height: 18px;\n }\n\n .fs-check-label::before {\n border: 2px solid var(--fs-color-primary);\n border-radius: 0;\n }\n\n .fs-radio-label::before {\n border-radius: 50%;\n }\n\n // Marca de check (dois traços em \"V\", via borda rotacionada). Os estados\n // indeterminado e inválido substituem essa geometria mais abaixo.\n .fs-check-label::after {\n position: absolute;\n left: 4px;\n width: 9px;\n height: 5px;\n content: \"\";\n opacity: 0;\n border-bottom: 2px solid var(--fs-check-mark);\n border-left: 2px solid var(--fs-check-mark);\n transform: translateY(-1px) rotate(-45deg);\n transition: opacity 0.1s ease-in-out;\n }\n\n .fs-radio-label::after {\n position: absolute;\n left: 5px;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n content: \"\";\n opacity: 0;\n background-color: var(--fs-color-on-primary);\n transition: opacity 0.1s ease-in-out;\n }\n\n .fs-check-input:checked + .fs-check-label::before,\n .fs-radio-input:checked + .fs-radio-label::before {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n .fs-check-input:checked + .fs-check-label::after,\n .fs-radio-input:checked + .fs-radio-label::after {\n opacity: 1;\n }\n\n .fs-check-input:not(:checked, :indeterminate, :disabled, .is-invalid) + .fs-check-label:hover::before {\n background-color: color-mix(in srgb, var(--fs-color-primary) 10%, transparent);\n }\n\n .fs-check-input:not(:disabled, :indeterminate, .is-invalid) + .fs-check-label:active::before {\n background-color: color-mix(in srgb, var(--fs-color-primary) 86%, var(--fs-color-black));\n border-color: var(--fs-color-primary);\n }\n\n .fs-check-input:checked:not(:disabled, .is-invalid) + .fs-check-label:active::after {\n transform: translateY(-1px) rotate(-45deg) scale(0.9);\n }\n\n // Switch: trilho retangular arredondado (não pílula) e knob também\n // retangular arredondado — decisão de forma do projeto (nada circular além\n // do radio/spinner). Desliza via `left` no `::after`.\n .fs-switch-label {\n padding-left: 44px;\n }\n\n .fs-switch-label::before {\n width: 36px;\n height: 20px;\n border-radius: var(--fs-radius-md);\n }\n\n .fs-switch-label::after {\n position: absolute;\n left: 2px;\n width: 16px;\n height: 14px;\n border-radius: var(--fs-radius-sm);\n content: \"\";\n background-color: var(--fs-color-border);\n transition: left 0.15s ease-in-out, background-color 0.15s ease-in-out;\n }\n\n .fs-switch-input:checked + .fs-switch-label::before {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n .fs-switch-input:checked + .fs-switch-label::after {\n left: 18px;\n background-color: var(--fs-color-on-primary);\n }\n\n // Foco: anel sobre a caixa/trilho (`::before`), não sobre o texto.\n .fs-check-input:focus-visible + .fs-check-label::before,\n .fs-radio-input:focus-visible + .fs-radio-label::before,\n .fs-switch-input:focus-visible + .fs-switch-label::before {\n @include focus-ring;\n }\n\n .fs-radio-input:disabled + .fs-radio-label,\n .fs-switch-input:disabled + .fs-switch-label {\n opacity: 0.5;\n pointer-events: none;\n }\n\n .fs-check-input:disabled + .fs-check-label {\n color: var(--fs-color-muted);\n opacity: 1;\n pointer-events: none;\n }\n\n .fs-check-input:disabled:not(:checked, :indeterminate) + .fs-check-label::before {\n border-color: var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-check-input:disabled:checked + .fs-check-label::before {\n border-color: color-mix(in srgb, var(--fs-color-primary) 55%, var(--fs-color-border));\n background-color: color-mix(in srgb, var(--fs-color-primary) 45%, var(--fs-color-subtle));\n }\n\n .fs-check-input:disabled:checked + .fs-check-label::after {\n opacity: 0.72;\n }\n\n // Validação (mesma convenção de `.fs-form-control.is-valid`/`.is-invalid`).\n .fs-radio-input.is-valid + .fs-radio-label::before {\n border-color: var(--fs-color-success);\n }\n\n .fs-check-input.is-invalid + .fs-check-label::before,\n .fs-radio-input.is-invalid + .fs-radio-label::before {\n border-color: var(--fs-color-danger);\n }\n\n // Tamanhos: reescalam caixa/trilho/knob e o espaço reservado para eles\n // (`padding-left`) proporcionalmente.\n .fs-check-sm .fs-check-label,\n .fs-radio-sm .fs-radio-label {\n min-height: 16px;\n padding-left: 24px;\n font-size: $font-size-sm;\n }\n\n .fs-check-sm .fs-check-label::before,\n .fs-radio-sm .fs-radio-label::before {\n width: 15px;\n height: 15px;\n }\n\n .fs-check-sm .fs-check-label::after {\n left: 3px;\n width: 8px;\n height: 4px;\n }\n\n .fs-radio-sm .fs-radio-label::after {\n left: 4px;\n width: 7px;\n height: 7px;\n }\n\n .fs-check-lg .fs-check-label,\n .fs-radio-lg .fs-radio-label {\n min-height: 24px;\n padding-left: 34px;\n font-size: $font-size-lg;\n }\n\n .fs-check-lg .fs-check-label::before,\n .fs-radio-lg .fs-radio-label::before {\n width: 22px;\n height: 22px;\n }\n\n .fs-check-lg .fs-check-label::after {\n left: 5px;\n width: 11px;\n height: 6px;\n }\n\n .fs-radio-lg .fs-radio-label::after {\n left: 6px;\n width: 10px;\n height: 10px;\n }\n\n .fs-switch-sm .fs-switch-label {\n min-height: 16px;\n padding-left: 38px;\n font-size: $font-size-sm;\n }\n\n .fs-switch-sm .fs-switch-label::before {\n width: 30px;\n height: 16px;\n }\n\n .fs-switch-sm .fs-switch-label::after {\n width: 12px;\n height: 10px;\n }\n\n .fs-switch-sm .fs-switch-input:checked + .fs-switch-label::after {\n left: 16px;\n }\n\n .fs-switch-lg .fs-switch-label {\n min-height: 26px;\n padding-left: 52px;\n font-size: $font-size-lg;\n }\n\n .fs-switch-lg .fs-switch-label::before {\n width: 44px;\n height: 24px;\n }\n\n .fs-switch-lg .fs-switch-label::after {\n width: 20px;\n height: 18px;\n }\n\n .fs-switch-lg .fs-switch-input:checked + .fs-switch-label::after {\n left: 22px;\n }\n\n // Estado parcial: borda tracejada em primary e traço horizontal. Mantém o\n // fundo definido para não se confundir com a superfície ao redor.\n .fs-check-input:indeterminate + .fs-check-label::before {\n border: 2px dashed var(--fs-color-primary);\n background-color: var(--fs-color-surface);\n }\n\n .fs-check-input:indeterminate + .fs-check-label::after {\n left: 4px;\n width: 10px;\n height: 0;\n opacity: 1;\n border-bottom: 2px solid var(--fs-color-primary);\n border-left: 0;\n transform: translateY(3px) rotate(0deg);\n }\n\n .fs-check-sm .fs-check-input:indeterminate + .fs-check-label::after {\n left: 3px;\n width: 8px;\n }\n\n .fs-check-lg .fs-check-input:indeterminate + .fs-check-label::after {\n left: 5px;\n width: 12px;\n }\n\n // Erro: X branco sobre fundo danger, visível mesmo quando o checkbox não\n // está marcado. Os gradientes desenham o símbolo sem conteúdo decorativo no\n // HTML e preservam o input nativo como fonte de semântica.\n .fs-check-input.is-invalid + .fs-check-label::before {\n background-color: var(--fs-color-danger);\n }\n\n .fs-check-input.is-invalid + .fs-check-label::after {\n top: 6px;\n left: 5px;\n width: 8px;\n height: 8px;\n opacity: 1;\n border: 0;\n background-image:\n linear-gradient(45deg, transparent 42%, #{color-contrast($fokus-color-danger)} 42% 58%, transparent 58%),\n linear-gradient(-45deg, transparent 42%, #{color-contrast($fokus-color-danger)} 42% 58%, transparent 58%);\n transform: none;\n }\n\n .fs-check-sm .fs-check-input.is-invalid + .fs-check-label::after {\n top: 5px;\n left: 4px;\n width: 7px;\n height: 7px;\n }\n\n .fs-check-lg .fs-check-input.is-invalid + .fs-check-label::after {\n top: 6px;\n left: 6px;\n width: 10px;\n height: 10px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Range/Slider: <input type=\"range\"> nativo — teclado (setas, Home/End,\n// PageUp/Down) e ARIA (role=slider implícito, aria-valuenow/min/max\n// automáticos) já vêm de graça do navegador, então este componente só\n// estiliza a trilha/thumb (pseudo-elementos vendor-prefixados, sem padrão\n// unificado) e usa `--fs-range-percent` (escrito pelo JS opcional, ver\n// js/range.js) pra pintar a parte preenchida da trilha via gradiente —\n// truque necessário porque só o Firefox suporta `::-moz-range-progress`;\n// Chrome/Safari não têm equivalente.\n@layer components {\n .fs-form-range {\n --fs-range-track-height: 6px;\n --fs-range-track-color: var(--fs-color-border);\n --fs-range-fill-color: var(--fs-color-primary);\n --fs-range-thumb-size: 18px;\n --fs-range-thumb-color: var(--fs-color-surface);\n --fs-range-thumb-border-color: var(--fs-color-primary);\n --fs-range-percent: 0%;\n\n width: 100%;\n height: var(--fs-range-thumb-size);\n padding: 0;\n background: transparent;\n appearance: none;\n cursor: pointer;\n }\n\n .fs-form-range::-webkit-slider-runnable-track {\n height: var(--fs-range-track-height);\n border-radius: var(--fs-radius-sm);\n background: linear-gradient(\n to right,\n var(--fs-range-fill-color) var(--fs-range-percent),\n var(--fs-range-track-color) var(--fs-range-percent)\n );\n }\n\n .fs-form-range::-moz-range-track {\n height: var(--fs-range-track-height);\n border-radius: var(--fs-radius-sm);\n background: linear-gradient(\n to right,\n var(--fs-range-fill-color) var(--fs-range-percent),\n var(--fs-range-track-color) var(--fs-range-percent)\n );\n }\n\n .fs-form-range::-webkit-slider-thumb {\n width: var(--fs-range-thumb-size);\n height: var(--fs-range-thumb-size);\n margin-top: calc((var(--fs-range-track-height) - var(--fs-range-thumb-size)) / 2);\n border: 2px solid var(--fs-range-thumb-border-color);\n border-radius: 50%;\n background-color: var(--fs-range-thumb-color);\n appearance: none;\n cursor: pointer;\n }\n\n .fs-form-range::-moz-range-thumb {\n width: calc(var(--fs-range-thumb-size) - 4px);\n height: calc(var(--fs-range-thumb-size) - 4px);\n border: 2px solid var(--fs-range-thumb-border-color);\n border-radius: 50%;\n background-color: var(--fs-range-thumb-color);\n cursor: pointer;\n }\n\n .fs-form-range:focus-visible::-webkit-slider-thumb {\n @include focus-ring(var(--fs-range-thumb-border-color));\n }\n\n .fs-form-range:focus-visible::-moz-range-thumb {\n @include focus-ring(var(--fs-range-thumb-border-color));\n }\n\n .fs-form-range:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n }\n\n .fs-form-range:disabled::-webkit-slider-thumb {\n cursor: not-allowed;\n }\n\n .fs-form-range:disabled::-moz-range-thumb {\n cursor: not-allowed;\n }\n\n .fs-range-output {\n display: inline-block;\n min-width: 2.5em;\n color: var(--fs-color-text);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n text-align: center;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Upload avançado (js/file-upload-advanced.js): evolução do File Upload\n// simples (`.fs-file-upload`/`.fs-file-label`, forms/_forms.scss) — reusa a\n// mesma dropzone/botão como gatilho, só adiciona a lista de itens\n// selecionados (thumbnail/nome/tamanho/progresso/remoção) gerada pelo JS.\n@layer components {\n .fs-file-upload-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 100%;\n margin-top: 12px;\n padding: 0;\n list-style: none;\n }\n\n .fs-file-upload-item {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n background-color: var(--fs-color-surface);\n }\n\n .fs-file-upload-thumb {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n overflow: hidden;\n border-radius: var(--fs-radius-sm);\n background-color: var(--fs-color-subtle);\n color: var(--fs-color-muted);\n }\n\n .fs-file-upload-thumb img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n\n .fs-file-upload-info {\n flex: 1;\n min-width: 0;\n }\n\n .fs-file-upload-name {\n margin: 0;\n color: var(--fs-color-text);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n\n @include truncate;\n }\n\n .fs-file-upload-size {\n margin: 0 0 4px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n }\n\n .fs-file-upload-item.is-error .fs-file-upload-size {\n color: var(--fs-alert-danger-text);\n }\n\n .fs-file-upload-remove {\n flex-shrink: 0;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n // Tokens de componente: cada `.fs-btn-*` abaixo só sobrescreve estas três\n // custom properties (nunca `color`/`background-color`/`border-color`\n // diretamente) — permite customizar um botão específico via CSS\n // (`.minha-classe { --fs-btn-bg: ...; }`) sem precisar de `!important` nem\n // repetir a declaração de layout. Ver docs/scss-architecture.md.\n .fs-btn {\n --fs-btn-color: var(--fs-color-text-primary);\n --fs-btn-bg: var(--fs-color-bg-subtle);\n --fs-btn-border-color: var(--fs-color-border-default);\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--fs-space-1);\n min-height: var(--fs-control-height);\n padding: 0 var(--fs-control-padding-x);\n border: var(--fs-border-width) solid var(--fs-btn-border-color);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-btn-color);\n background-color: var(--fs-btn-bg);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n text-decoration: none;\n cursor: pointer;\n transition: color var(--fs-transition-fast) var(--fs-ease-standard),\n background-color var(--fs-transition-fast) var(--fs-ease-standard),\n border-color var(--fs-transition-fast) var(--fs-ease-standard),\n box-shadow var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-btn:hover {\n --fs-btn-bg: var(--fs-btn-hover-bg, var(--fs-color-subtle));\n }\n\n .fs-btn:active {\n --fs-btn-bg: var(--fs-btn-active-bg, var(--fs-color-border));\n }\n\n .fs-btn:focus-visible {\n @include focus-ring;\n }\n\n .fs-btn:disabled,\n .fs-btn.is-disabled {\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n\n @each $name, $color in $theme-colors {\n .fs-btn-#{$name} {\n --fs-btn-color: var(--fs-color-on-#{$name});\n --fs-btn-bg: var(--fs-color-#{$name});\n --fs-btn-border-color: var(--fs-color-#{$name});\n --fs-btn-hover-bg: var(--fs-color-#{$name});\n --fs-btn-active-bg: var(--fs-color-#{$name});\n }\n\n .fs-btn-outline-#{$name} {\n --fs-btn-color: var(--fs-alert-#{$name}-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-#{$name});\n }\n\n .fs-btn-outline-#{$name}:hover,\n .fs-btn-outline-#{$name}:active {\n --fs-btn-color: var(--fs-color-on-#{$name});\n --fs-btn-bg: var(--fs-color-#{$name});\n }\n }\n\n .fs-btn-sm {\n min-height: var(--fs-control-height-sm);\n padding: 0 var(--fs-control-padding-x-sm);\n font-size: $font-size-sm;\n }\n\n .fs-btn-lg {\n min-height: var(--fs-control-height-lg);\n padding: 0 var(--fs-control-padding-x-lg);\n font-size: $font-size-lg;\n }\n\n .fs-btn-close {\n position: relative;\n width: 20px;\n height: 20px;\n padding: 0;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface-raised);\n cursor: pointer;\n }\n\n .fs-btn-close::before,\n .fs-btn-close::after {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 12px;\n height: 2px;\n background-color: currentcolor;\n content: \"\";\n }\n\n .fs-btn-close::before {\n transform: translate(-50%, -50%) rotate(45deg);\n }\n\n .fs-btn-close::after {\n transform: translate(-50%, -50%) rotate(-45deg);\n }\n\n .fs-btn-close:hover {\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-btn-close:focus-visible {\n @include focus-ring;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-card {\n position: relative;\n display: flex;\n flex-direction: column;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-lg);\n background-color: var(--fs-color-surface);\n }\n\n .fs-card-horizontal {\n flex-direction: row;\n }\n\n .fs-card-horizontal .fs-card-header:first-child {\n border-radius: calc(var(--fs-radius-lg) - 1px) 0 0 calc(var(--fs-radius-lg) - 1px);\n border-right: 1px solid var(--fs-color-border);\n border-bottom: none;\n }\n\n .fs-card-horizontal .fs-card-footer:last-child {\n border-radius: 0 calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px) 0;\n border-left: 1px solid var(--fs-color-border);\n border-top: none;\n }\n\n .fs-card-clickable {\n transition: border-color var(--fs-transition-fast) var(--fs-ease-standard),\n box-shadow var(--fs-transition-fast) var(--fs-ease-standard),\n transform var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-card-clickable:hover,\n .fs-card-clickable:focus-within {\n border-color: var(--fs-color-primary);\n box-shadow: var(--fs-shadow-sm);\n transform: translateY(-1px);\n }\n\n .fs-stretched-link {\n color: inherit;\n text-decoration: none;\n }\n\n .fs-stretched-link::after {\n position: absolute;\n inset: 0;\n z-index: 1;\n content: \"\";\n }\n\n .fs-card-header,\n .fs-card-body,\n .fs-card-footer {\n padding: 10px;\n }\n\n .fs-card-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n border-bottom: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-card-header .fs-card-title {\n margin: 0;\n }\n\n .fs-card-header:first-child {\n border-radius: calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px) 0 0;\n }\n\n .fs-card-footer {\n border-top: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-card-footer:last-child {\n border-radius: 0 0 calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px);\n }\n\n .fs-card-title {\n margin: 0 0 4px;\n color: var(--fs-color-text);\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n }\n\n .fs-card-subtitle {\n margin: 0 0 8px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-card-text {\n margin: 0 0 8px;\n color: var(--fs-color-text);\n font-size: $font-size-md;\n }\n\n .fs-card-text:last-child {\n margin-bottom: 0;\n }\n\n .fs-card-sm .fs-card-header,\n .fs-card-sm .fs-card-body,\n .fs-card-sm .fs-card-footer {\n padding: 5px;\n }\n\n .fs-card-lg .fs-card-header,\n .fs-card-lg .fs-card-body,\n .fs-card-lg .fs-card-footer {\n padding: 15px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-alert {\n display: flex;\n align-items: flex-start;\n gap: 8px;\n padding: 12px 16px;\n border: 1px solid var(--fs-color-border);\n border-left: 5px solid var(--fs-color-border);\n border-radius: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-sm;\n }\n\n @each $name, $color in $theme-colors {\n .fs-alert-#{$name} {\n color: var(--fs-alert-#{$name}-text);\n background-color: var(--fs-alert-#{$name}-bg);\n border-color: var(--fs-color-#{$name});\n }\n }\n}\n","@use \"sass:map\";\n@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n // As variantes alteram somente tokens locais. Isso permite ajustar um badge\n // por marca sem sobrescrever propriedades de apresentação diretamente.\n .fs-badge {\n --fs-badge-color: var(--fs-color-text);\n --fs-badge-bg: var(--fs-color-subtle);\n --fs-badge-border: transparent;\n --fs-badge-height: 22px;\n --fs-badge-radius: 0;\n\n display: inline-flex;\n align-items: center;\n gap: 6px;\n justify-content: center;\n min-height: var(--fs-badge-height);\n\n // O peso óptico da fonte fica ligeiramente abaixo do centro geométrico.\n // Um pixel extra abaixo reposiciona a linha de texto para cima.\n padding: 1px 8px 3px;\n border: 1px solid var(--fs-badge-border);\n border-radius: var(--fs-badge-radius);\n color: var(--fs-badge-color);\n background-color: var(--fs-badge-bg);\n font-size: $font-size-xs;\n font-weight: $font-weight-medium;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n }\n\n @each $name, $color in $theme-colors {\n .fs-badge-#{$name} {\n --fs-badge-color: #{color-contrast($color)};\n --fs-badge-bg: var(--fs-color-#{$name});\n }\n\n .fs-badge-soft-#{$name} {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-#{$name}) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-#{$name}) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-#{$name}) 38%, transparent);\n }\n\n .fs-badge-outline-#{$name} {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-#{$name}) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n }\n\n .fs-badge-sm {\n --fs-badge-height: 18px;\n\n padding: 0 6px 2px;\n font-size: $font-size-xs;\n }\n\n .fs-badge-lg {\n --fs-badge-height: 26px;\n\n padding: 2px 10px 4px;\n font-size: $font-size-md;\n }\n\n .fs-badge-dot::before {\n width: 6px;\n height: 6px;\n flex: 0 0 6px;\n border-radius: 50%;\n background-color: currentcolor;\n transform: translateY(1px);\n content: \"\";\n }\n\n .fs-badge-count {\n min-width: var(--fs-badge-height);\n padding-inline: 6px;\n font-variant-numeric: tabular-nums;\n }\n\n .fs-badge-split {\n --fs-badge-split-label-bg: var(--fs-color-black);\n --fs-badge-split-label-color: var(--fs-color-white);\n --fs-badge-split-value-bg: var(--fs-color-primary);\n --fs-badge-split-value-color: #{color-contrast(map.get($theme-colors, primary))};\n --fs-badge-split-height: 22px;\n --fs-badge-split-radius: 0;\n\n display: inline-flex;\n min-height: var(--fs-badge-split-height);\n overflow: hidden;\n border-radius: var(--fs-badge-split-radius);\n font-size: $font-size-xs;\n font-weight: $font-weight-medium;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n }\n\n .fs-badge-split-label,\n .fs-badge-split-value {\n display: inline-flex;\n align-items: center;\n min-height: var(--fs-badge-split-height);\n padding: 1px 8px 3px;\n }\n\n .fs-badge-split-label {\n color: var(--fs-badge-split-label-color);\n background-color: var(--fs-badge-split-label-bg);\n }\n\n .fs-badge-split-value {\n color: var(--fs-badge-split-value-color);\n background-color: var(--fs-badge-split-value-bg);\n font-variant-numeric: tabular-nums;\n }\n\n @each $name, $color in $theme-colors {\n .fs-badge-split-#{$name} {\n --fs-badge-split-value-bg: var(--fs-color-#{$name});\n --fs-badge-split-value-color: #{color-contrast($color)};\n }\n }\n\n .fs-badge-split.fs-badge-sm {\n --fs-badge-split-height: 18px;\n\n min-height: var(--fs-badge-split-height);\n padding: 0;\n }\n\n .fs-badge-split.fs-badge-lg {\n --fs-badge-split-height: 26px;\n\n min-height: var(--fs-badge-split-height);\n padding: 0;\n font-size: $font-size-md;\n }\n\n .fs-badge-split.fs-badge-sm .fs-badge-split-label,\n .fs-badge-split.fs-badge-sm .fs-badge-split-value {\n padding: 0 6px 2px;\n }\n\n .fs-badge-split.fs-badge-lg .fs-badge-split-label,\n .fs-badge-split.fs-badge-lg .fs-badge-split-value {\n padding: 2px 10px 4px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-table {\n width: 100%;\n margin-bottom: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n border-collapse: collapse;\n }\n\n .fs-table th,\n .fs-table td {\n padding: 8px 12px;\n border-bottom: 1px solid var(--fs-color-border);\n text-align: left;\n vertical-align: middle;\n }\n\n .fs-table thead th {\n border-bottom-width: 2px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n text-transform: uppercase;\n }\n\n .fs-table-striped tbody tr:nth-of-type(odd) {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-table-hover tbody tr:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-table-bordered th,\n .fs-table-bordered td {\n border: 1px solid var(--fs-color-border);\n }\n\n .fs-table-borderless th,\n .fs-table-borderless td {\n border: 0;\n }\n\n @each $name, $color in $theme-colors {\n .fs-table-#{$name} {\n background-color: var(--fs-alert-#{$name}-bg);\n color: var(--fs-alert-#{$name}-text);\n }\n }\n\n .fs-table-sm th,\n .fs-table-sm td {\n padding: 4px 8px;\n }\n\n .fs-table-responsive {\n overflow-x: auto;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-navbar {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: 16px;\n padding: 12px 16px;\n border-bottom: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface);\n }\n\n .fs-navbar-brand {\n color: var(--fs-color-text);\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n text-decoration: none;\n }\n\n .fs-navbar-nav {\n display: flex;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-nav-link {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 8px 12px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n text-decoration: none;\n transition: background-color 0.15s ease-in-out;\n }\n\n .fs-nav-link:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-nav-link:focus-visible {\n @include focus-ring;\n }\n\n .fs-nav-link.is-active {\n color: var(--fs-alert-primary-text);\n font-weight: $font-weight-medium;\n }\n\n .fs-nav-link.is-disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n }\n}\n","@layer components {\n // Wrapper posicionador do input — a listbox (`.fs-dropdown-menu`, mesma\n // classe do Dropdown/Select) é reanexada a `document.body` pelo JS e\n // posicionada via `core/positioning.js`; o wrapper só existe pra manter\n // o layout inline do input no fluxo normal do documento.\n .fs-combobox {\n position: relative;\n display: inline-flex;\n width: 100%;\n }\n\n .fs-combobox-listbox {\n overflow-y: auto;\n max-height: 240px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n // Ajusta o indicador nativo de <input type=\"date\">/<input type=\"time\">\n // no tema escuro — por padrão o navegador desenha um ícone escuro fixo\n // (chrome do SO, não estilizável via token), que fica invisível sobre\n // --fs-color-surface escuro sem essa correção.\n [data-theme=\"dark\"] .fs-form-control[type=\"date\"]::-webkit-calendar-picker-indicator,\n [data-theme=\"dark\"] .fs-form-control[type=\"time\"]::-webkit-calendar-picker-indicator {\n filter: invert(1);\n }\n\n .fs-datepicker {\n position: relative;\n display: inline-flex;\n width: 100%;\n }\n\n .fs-datepicker-panel {\n display: none;\n width: min(280px, calc(100vw - 2 * var(--fs-space-3)));\n padding: 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-dropdown);\n }\n\n .fs-datepicker-panel.is-open {\n display: block;\n }\n\n .fs-datepicker-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 8px;\n }\n\n .fs-datepicker-nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n padding: 0;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-md;\n cursor: pointer;\n }\n\n .fs-datepicker-nav:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-datepicker-nav:focus-visible {\n @include focus-ring;\n }\n\n .fs-datepicker-title {\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n text-transform: capitalize;\n }\n\n .fs-datepicker-grid {\n display: flex;\n flex-direction: column;\n gap: 2px;\n }\n\n .fs-datepicker-weekdays,\n .fs-datepicker-week {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n gap: 2px;\n }\n\n .fs-datepicker-weekday {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 28px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-medium;\n text-align: center;\n text-transform: uppercase;\n }\n\n .fs-datepicker-day {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 32px;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-sm;\n cursor: pointer;\n }\n\n .fs-datepicker-day:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-datepicker-day:focus-visible {\n @include focus-ring;\n }\n\n .fs-datepicker-day.is-outside {\n color: var(--fs-color-muted);\n }\n\n .fs-datepicker-day.is-today {\n font-weight: $font-weight-semibold;\n box-shadow: inset 0 0 0 1px var(--fs-color-primary);\n }\n\n .fs-datepicker-day.is-selected {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n .fs-datepicker-day:disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n opacity: 0.4;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Estilos exclusivos do DataTable (`js/datatable.js`) — a tabela, a\n// paginação e o empty state em si reusam `.fs-table`/`.fs-pagination`/\n// `.fs-empty-state` já existentes, sem duplicação.\n\n@layer components {\n .fs-datatable-toolbar {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 12px;\n }\n\n .fs-datatable-sort-btn {\n display: inline-flex;\n align-items: center;\n width: 100%;\n padding: 0;\n border: 0;\n background-color: var(--fs-color-surface-raised);\n color: inherit;\n font: inherit;\n text-transform: inherit;\n text-align: left;\n cursor: pointer;\n }\n\n .fs-datatable-sort-btn:focus-visible {\n @include focus-ring;\n }\n\n .fs-datatable-sort-btn::after {\n flex-shrink: 0;\n margin-left: auto;\n padding-left: 4px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n content: \"↕\";\n }\n\n th[aria-sort=\"ascending\"] .fs-datatable-sort-btn::after {\n color: var(--fs-color-text);\n content: \"↑\";\n }\n\n th[aria-sort=\"descending\"] .fs-datatable-sort-btn::after {\n color: var(--fs-color-text);\n content: \"↓\";\n }\n\n .fs-datatable [data-fs-datatable-pagination] {\n display: flex;\n justify-content: flex-end;\n margin-top: 12px;\n }\n\n .fs-datatable td:focus-visible,\n .fs-datatable th:focus-visible {\n @include focus-ring;\n\n outline-offset: -2px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Diálogo do Command Palette (`js/command-palette.js`). Os itens da lista\n// reusam `.fs-dropdown-item`/`.is-active`/`.is-disabled` (scss/components/\n// _dropdown.scss) sem duplicação — só o backdrop/diálogo/campo de busca são\n// CSS novo.\n\n@layer components {\n .fs-command-palette {\n position: fixed;\n inset: 0;\n z-index: var(--fs-z-modal);\n display: none;\n align-items: flex-start;\n justify-content: center;\n padding: 72px 16px 16px;\n background-color: rgb(0 0 0 / 50%);\n }\n\n .fs-command-palette.is-open {\n display: flex;\n }\n\n .fs-command-palette-dialog {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: 480px;\n max-height: calc(100vh - 88px);\n overflow: hidden;\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n }\n\n .fs-command-palette-input {\n width: 100%;\n padding: 16px 20px;\n border: none;\n border-bottom: 1px solid var(--fs-color-border);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-lg;\n }\n\n .fs-command-palette-input:focus-visible {\n @include focus-ring;\n }\n\n .fs-command-palette-list {\n margin: 0;\n padding: 6px 0;\n overflow-y: auto;\n list-style: none;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-tree,\n .fs-tree [role=\"group\"] {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-tree [role=\"group\"] {\n padding-left: 20px;\n }\n\n .fs-tree [role=\"treeitem\"] {\n border-radius: var(--fs-radius-sm);\n }\n\n .fs-tree [role=\"treeitem\"]:focus-visible {\n outline: none;\n }\n\n .fs-tree [role=\"treeitem\"]:focus-visible > .fs-tree-label {\n @include focus-ring;\n }\n\n .fs-tree-label {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 8px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n font-size: $font-size-md;\n cursor: pointer;\n user-select: none;\n }\n\n .fs-tree-label:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-tree [role=\"treeitem\"][aria-selected=\"true\"] > .fs-tree-label {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n .fs-tree-toggle {\n flex-shrink: 0;\n width: 0;\n height: 0;\n border-top: 4px solid transparent;\n border-bottom: 4px solid transparent;\n border-left: 5px solid currentcolor;\n transition: transform 0.15s ease-in-out;\n }\n\n .fs-tree [role=\"treeitem\"][aria-expanded=\"true\"] > .fs-tree-label > .fs-tree-toggle {\n transform: rotate(90deg);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-dropdown {\n position: relative;\n display: inline-flex;\n }\n\n // Sem margin-left: `.fs-dropdown-toggle` é sempre usado com `.fs-btn`\n // (ver docs/components/dropdown.md), que já tem `gap` pros filhos —\n // incluindo este `::after`, que conta como item flex do `.fs-btn`.\n .fs-dropdown-toggle::after {\n display: inline-block;\n width: 0;\n height: 0;\n vertical-align: middle;\n content: \"\";\n border-top: 5px solid;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n }\n\n .fs-dropdown-menu {\n position: absolute;\n display: none;\n min-width: 180px;\n margin: 0;\n padding: 6px 0;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-dropdown);\n }\n\n .fs-dropdown-menu.is-open {\n display: block;\n }\n\n .fs-dropdown-item {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 8px 16px;\n border: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-md;\n text-align: left;\n text-decoration: none;\n cursor: pointer;\n }\n\n .fs-dropdown-item:hover,\n .fs-dropdown-item:focus-visible {\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n outline: none;\n }\n\n .fs-dropdown-item.is-active {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n .fs-dropdown-item.is-disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n opacity: 0.6;\n }\n\n .fs-dropdown-divider {\n height: 1px;\n margin: 6px 0;\n border: none;\n background-color: var(--fs-color-border);\n }\n\n .fs-dropdown-header {\n padding: 4px 16px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-medium;\n text-transform: uppercase;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-modal {\n position: fixed;\n inset: 0;\n z-index: var(--fs-z-modal);\n display: none;\n align-items: center;\n justify-content: center;\n padding: var(--fs-space-4);\n background-color: rgb(0 0 0 / 50%);\n }\n\n .fs-modal.is-open {\n display: flex;\n }\n\n .fs-modal-dialog {\n width: 100%;\n max-width: 480px;\n }\n\n .fs-modal-dialog.fs-modal-sm {\n max-width: 320px;\n }\n\n .fs-modal-dialog.fs-modal-lg {\n max-width: 720px;\n }\n\n .fs-modal-content {\n display: flex;\n flex-direction: column;\n max-height: calc(100vh - 2 * var(--fs-space-4));\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n }\n\n .fs-modal-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n\n .fs-modal-title {\n margin: 0;\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n }\n\n .fs-modal-body {\n padding: 20px;\n overflow-y: auto;\n }\n\n .fs-modal-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 16px 20px;\n border-top: 1px solid var(--fs-color-border);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Alert Dialog / Confirm: variante do Modal (scss/components/_modal.scss) para\n// confirmação, montada dinamicamente por FokusStyles.confirm() (js/confirm.js) —\n// reaproveita .fs-modal/.fs-modal-dialog/.fs-modal-content/.fs-modal-footer sem duplicar\n// layout, só adiciona a mensagem abaixo do título.\n\n@layer components {\n .fs-alert-dialog-message {\n margin: 4px 0 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Linha divisória, 100% CSS. `<hr class=\"divider\">` para o traço simples;\n// `<div class=\"divider\">` (não pode ser `<hr>`, que não aceita filhos) com\n// `.fs-divider-label` para o texto centralizado, flanqueado por duas linhas via\n// pseudo-elementos.\n\n@layer components {\n .fs-divider {\n margin: 16px 0;\n border: 0;\n border-top: 1px solid var(--fs-color-border);\n }\n\n .fs-divider:not(hr) {\n display: flex;\n align-items: center;\n border-top: none;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-divider:not(hr)::before,\n .fs-divider:not(hr)::after {\n flex: 1;\n content: \"\";\n border-top: 1px solid var(--fs-color-border);\n }\n\n .fs-divider-label {\n padding: 0 12px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Bloco padrão para listas/telas vazias, 100% CSS. `.fs-empty-state-icon` é um\n// slot vazio (o consumidor põe seu próprio SVG/emoji/ilustração dentro) — ao\n// contrário do ícone do Alert Dialog, aqui não há um conjunto fixo de\n// variantes de estado para gerar via CSS.\n\n@layer components {\n .fs-empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: 48px 24px;\n text-align: center;\n }\n\n // `[hidden]` sozinho não bastaria: a regra do user-agent stylesheet\n // perde pra `display: flex` acima (author styles sempre vencem UA\n // styles, mesmo em `@layer`) — sem isso, `.fs-empty-state[hidden]`\n // continua visível (bug real pego no DataTable, que alterna esse\n // atributo em `js/datatable.js`). Mesmo padrão já usado em\n // `.fs-notification-badge[hidden]`/`.fs-notification-empty[hidden]`.\n .fs-empty-state[hidden] {\n display: none;\n }\n\n .fs-empty-state-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 64px;\n height: 64px;\n margin-bottom: 16px;\n border-radius: 50%;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n font-size: 28px;\n }\n\n .fs-empty-state-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n }\n\n .fs-empty-state-text {\n max-width: 360px;\n margin: 4px 0 20px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Rating / Stars, 100% CSS — mesma técnica de input oculto + label irmão do\n// Segmented Control (scss/components/_segmented-control.scss): um\n// `<input type=\"radio\">` por estrela, exclusivo dentro do grupo. A marcação\n// espera os pares input+label em ordem DECRESCENTE de valor (5, 4, 3...) com\n// `.fs-rating` em `row-reverse`, o truque clássico de CSS pra destacar \"a\n// estrela clicada e todas à esquerda dela\" usando só `~` (combinador de\n// irmãos gerais, que só enxerga o que vem DEPOIS no DOM).\n// A estrela em si é o ícone `star` de `fokus-styles/icons` (`.fs-icon`, outline\n// por padrão) — preenchida (`fill: currentcolor`) só quando selecionada/em\n// hover, pra imitar o glifo sólido que ★ tinha antes sem perder o contorno\n// vazio do estado \"não avaliada\".\n\n@layer components {\n .fs-rating {\n display: inline-flex;\n flex-direction: row-reverse;\n }\n\n .fs-rating-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .fs-rating-star {\n display: flex;\n padding: 2px;\n color: var(--fs-color-border);\n font-size: 24px;\n cursor: pointer;\n }\n\n .fs-rating-input:checked ~ .fs-rating-star,\n .fs-rating-star:hover,\n .fs-rating-star:hover ~ .fs-rating-star {\n color: var(--fs-color-warning);\n }\n\n .fs-rating-input:checked ~ .fs-rating-star .fs-icon,\n .fs-rating-star:hover .fs-icon,\n .fs-rating-star:hover ~ .fs-rating-star .fs-icon {\n fill: currentcolor;\n }\n\n .fs-rating-input:focus-visible + .fs-rating-star {\n border-radius: var(--fs-radius-sm);\n outline: 2px solid var(--fs-color-primary);\n outline-offset: 2px;\n }\n\n .fs-rating-input:disabled + .fs-rating-star {\n opacity: 0.5;\n pointer-events: none;\n }\n\n .fs-rating-sm .fs-rating-star {\n font-size: 16px;\n }\n\n .fs-rating-lg .fs-rating-star {\n font-size: 32px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Badge dismissível / Tag: reaproveita `.fs-badge`\n// (scss/components/_badges.scss) e `.fs-btn-close`\n// (scss/components/_buttons.scss) — só ajusta o tamanho do botão de fechar\n// pra caber num badge, que é bem menor que um botão, e o espaçamento entre\n// o texto e o \"x\". O dismiss em si é feito por js/tag.js (FokusStyles.Tag).\n@layer components {\n .fs-tag {\n gap: 0;\n padding: 0 0 0 8px;\n }\n\n // O texto fica em um elemento próprio quando a tag puder ser truncada. A\n // string integral permanece no DOM, portanto continua disponível para AT.\n .fs-tag-label {\n min-width: 0;\n }\n\n .fs-tag-truncate {\n max-inline-size: min(100%, var(--fs-tag-max-inline-size, 20rem));\n }\n\n .fs-tag-truncate .fs-tag-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .fs-tag-icon {\n display: inline-grid;\n width: 12px;\n height: 12px;\n flex: 0 0 12px;\n margin-right: 4px;\n place-items: center;\n }\n\n .fs-tag-icon .fs-icon {\n width: 12px;\n height: 12px;\n stroke: currentcolor;\n }\n\n .fs-tag .fs-btn-close {\n width: calc(var(--fs-badge-height) - 2px);\n height: calc(var(--fs-badge-height) - 2px);\n flex: 0 0 calc(var(--fs-badge-height) - 2px);\n margin-left: 4px;\n border-radius: 0;\n background-color: transparent;\n\n // Herda a cor de texto do badge (contraste automático por variante) em vez\n // do cinza fixo do `.fs-btn-close`, pra o \"x\" ter contraste em qualquer fundo;\n // o `opacity` o deixa discreto sem depender de uma cor fixa.\n color: inherit;\n opacity: 0.7;\n transition: opacity 0.1s ease-in-out, background-color 0.1s ease-in-out, transform 0.1s ease-in-out;\n }\n\n .fs-tag .fs-btn-close::before,\n .fs-tag .fs-btn-close::after {\n top: calc(50% + 1px);\n width: 8px;\n }\n\n .fs-tag .fs-btn-close:hover {\n color: inherit;\n background-color: color-mix(in srgb, currentcolor 18%, transparent);\n opacity: 1;\n }\n\n // Feedback tátil ao clicar (o dismiss em si é assíncrono via evento\n // cancelável fs:tag:dismissed, então o \"afundar\" no clique reforça que a\n // ação registrou mesmo antes do elemento sumir).\n .fs-tag .fs-btn-close:active {\n background-color: color-mix(in srgb, currentcolor 28%, transparent);\n transform: scale(0.9);\n }\n\n // Agrupamento: várias tags lado a lado, quebrando linha sem cortar.\n .fs-tag-group {\n display: flex;\n flex-wrap: wrap;\n gap: 0;\n }\n\n // O botão já possui foco próprio; o contorno no contêiner evidencia qual\n // tag será removida, especialmente em grupos densos.\n .fs-tag:focus-within {\n @include focus-ring;\n }\n\n .fs-tag.is-loading,\n .fs-tag[aria-busy=\"true\"] {\n --fs-badge-bg: var(--fs-color-warning);\n --fs-badge-color: var(--fs-color-black);\n --fs-badge-border: transparent;\n\n cursor: progress;\n }\n\n // Usa o spinner do próprio FokusStyles. A classe é opt-in no markup para que o\n // conteúdo de uma tag carregando continue explícito e sem DOM implícito.\n .fs-tag.is-loading .fs-spinner,\n .fs-tag[aria-busy=\"true\"] .fs-spinner {\n width: 12px;\n height: 12px;\n flex: 0 0 12px;\n margin: 0 6px 0 4px;\n border-width: 2px;\n color: var(--fs-color-black);\n }\n\n .fs-tag.is-loading .fs-btn-close,\n .fs-tag[aria-busy=\"true\"] .fs-btn-close {\n display: none;\n }\n\n .fs-tag-group .fs-tag + .fs-tag {\n border-inline-start-color: color-mix(in srgb, currentcolor 24%, transparent);\n }\n\n .fs-tag-group .fs-tag {\n padding-inline-start: calc(var(--fs-badge-height) + 2px);\n transition: background-color 0.1s ease-in-out;\n }\n\n .fs-tag-group .fs-btn-close {\n pointer-events: none;\n opacity: 0;\n }\n\n .fs-tag-group .fs-tag:hover .fs-btn-close,\n .fs-tag-group .fs-tag:focus-within .fs-btn-close {\n pointer-events: auto;\n opacity: 0.7;\n }\n\n .fs-tag-group .fs-tag:hover,\n .fs-tag-group .fs-tag:focus-within {\n background-color: color-mix(in srgb, currentcolor 18%, transparent);\n }\n\n // Um botão de overflow representa as tags não exibidas. A abertura da lista\n // ou popover é responsabilidade da composição que o utiliza.\n .fs-tag-overflow {\n --fs-badge-bg: transparent;\n --fs-badge-color: var(--fs-alert-primary-text);\n --fs-badge-border: transparent;\n\n width: var(--fs-badge-height);\n height: var(--fs-badge-height);\n min-width: var(--fs-badge-height);\n padding: 0;\n border: 0;\n appearance: none;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font: inherit;\n line-height: 0;\n }\n\n .fs-tag-overflow .fs-icon {\n display: block;\n flex: 0 0 13px;\n width: 13px;\n height: 13px;\n stroke: currentcolor;\n }\n\n .fs-tag-overflow:hover,\n .fs-tag-group .fs-tag-overflow:hover {\n background-color: transparent;\n border-color: transparent;\n }\n\n .fs-tag-group .fs-tag-overflow {\n padding-inline-start: 0;\n }\n\n .fs-tag-overflow:focus-visible {\n @include focus-ring;\n }\n\n .fs-tag-group .fs-btn-close:hover {\n color: inherit;\n background-color: transparent;\n opacity: 0.7;\n }\n\n .fs-tag-protected {\n pointer-events: none;\n }\n\n .fs-tag-lock {\n display: inline-grid;\n width: calc(var(--fs-badge-height) - 2px);\n height: calc(var(--fs-badge-height) - 2px);\n margin-left: 4px;\n place-items: center;\n }\n\n .fs-tag-lock svg {\n width: 12px;\n height: 12px;\n stroke: currentcolor;\n stroke-width: 2;\n }\n\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Offcanvas: painel deslizante (fora da viewport por padrão, `.is-open` traz\n// para dentro via transform) + `.fs-offcanvas-backdrop` separado (não fixo\n// junto ao painel, como no Modal, porque o painel não cobre a tela toda —\n// o backdrop escurece o restante). Mesma faixa de z-index do Modal (1050),\n// já que são overlays mutuamente exclusivos.\n\n@layer components {\n .fs-offcanvas {\n position: fixed;\n z-index: var(--fs-z-offcanvas);\n display: flex;\n flex-direction: column;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n visibility: hidden;\n transition: transform 0.3s ease, visibility 0.3s ease;\n }\n\n .fs-offcanvas.is-open {\n visibility: visible;\n transform: none;\n }\n\n .fs-offcanvas-start {\n inset: 0 auto 0 0;\n width: 320px;\n transform: translateX(-100%);\n }\n\n .fs-offcanvas-end {\n inset: 0 0 0 auto;\n width: 320px;\n transform: translateX(100%);\n }\n\n .fs-offcanvas-top {\n inset: 0 0 auto;\n height: 40vh;\n transform: translateY(-100%);\n }\n\n .fs-offcanvas-bottom {\n inset: auto 0 0;\n height: 40vh;\n transform: translateY(100%);\n }\n\n .fs-offcanvas-backdrop {\n position: fixed;\n inset: 0;\n z-index: calc(var(--fs-z-offcanvas) - 1);\n background-color: rgb(0 0 0 / 50%);\n opacity: 0;\n visibility: hidden;\n transition: opacity 0.3s ease, visibility 0.3s ease;\n }\n\n .fs-offcanvas-backdrop.is-open {\n visibility: visible;\n opacity: 1;\n }\n\n .fs-offcanvas-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n\n .fs-offcanvas-title {\n margin: 0;\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n }\n\n .fs-offcanvas-body {\n flex: 1 1 auto;\n padding: 20px;\n overflow-y: auto;\n }\n\n .fs-offcanvas-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 16px 20px;\n border-top: 1px solid var(--fs-color-border);\n }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-offcanvas,\n .fs-offcanvas-backdrop {\n transition: none;\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-accordion {\n display: flex;\n flex-direction: column;\n }\n\n .fs-accordion-item {\n overflow: hidden;\n border: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface-raised);\n }\n\n .fs-accordion-item + .fs-accordion-item {\n border-top: none;\n }\n\n .fs-accordion-item:first-child {\n border-top-left-radius: var(--fs-radius-md);\n border-top-right-radius: var(--fs-radius-md);\n }\n\n .fs-accordion-item:last-child {\n border-bottom-right-radius: var(--fs-radius-md);\n border-bottom-left-radius: var(--fs-radius-md);\n }\n\n .fs-accordion-header {\n margin: 0;\n }\n\n .fs-accordion-button {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 14px 16px;\n border: none;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n text-align: left;\n cursor: pointer;\n }\n\n .fs-accordion-button:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-accordion-button:focus-visible {\n @include focus-ring;\n }\n\n .fs-accordion-button::after {\n flex-shrink: 0;\n width: 8px;\n height: 8px;\n margin-left: 12px;\n content: \"\";\n border-right: 2px solid currentcolor;\n border-bottom: 2px solid currentcolor;\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out;\n }\n\n .fs-accordion-button[aria-expanded=\"true\"]::after {\n transform: rotate(-135deg);\n }\n\n .fs-accordion-collapse {\n overflow: hidden;\n }\n\n .fs-accordion-body {\n padding: 16px;\n border-top: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface-raised);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Três estilos visuais (linha = padrão, pill, depth), mais alinhamento e\n// tamanho — todos modificadores de `.fs-tabs`, reaproveitando `.fs-nav-link`\n// (_navbar.scss) como o item clicável em todos os três, então o HTML e a\n// navegação por teclado (ArrowLeft/ArrowRight/Home/End, `js/tabs.js`) não\n// mudam entre estilos.\n@layer components {\n .fs-tabs {\n display: flex;\n border-bottom: var(--fs-border-width) solid var(--fs-color-border-default);\n }\n\n .fs-tabs .fs-nav-link {\n margin-bottom: -1px;\n border-bottom: 2px solid transparent;\n border-radius: var(--fs-radius-sm) var(--fs-radius-sm) 0 0;\n }\n\n .fs-tabs .fs-nav-link.is-active {\n border-bottom-color: var(--fs-color-primary);\n }\n\n // Pill: sem linha embaixo, cada item vira um \"chip\" com fundo próprio\n // quando ativo — nada de forma circular, só o token de raio padrão.\n .fs-tabs-pill {\n gap: 4px;\n border-bottom: none;\n }\n\n .fs-tabs-pill .fs-nav-link {\n margin-bottom: 0;\n border-bottom: none;\n border-radius: var(--fs-radius-sm);\n }\n\n .fs-tabs-pill .fs-nav-link.is-active {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n // Depth: fundo neutro por trás dos itens; o ativo \"sobe\" com borda nos 3\n // lados e fundo igual ao do conteúdo, criando a ilusão de aba de pasta\n // fundida ao painel abaixo (a borda inferior do container fica por baixo\n // do item ativo, escondida pela cor de fundo igual).\n .fs-tabs-depth {\n gap: 2px;\n padding: 4px 4px 0;\n background-color: var(--fs-color-subtle);\n }\n\n .fs-tabs-depth .fs-nav-link {\n margin-bottom: -1px;\n border: 1px solid transparent;\n border-bottom: none;\n border-radius: var(--fs-radius-sm) var(--fs-radius-sm) 0 0;\n }\n\n .fs-tabs-depth .fs-nav-link.is-active {\n border-color: var(--fs-color-border);\n background-color: var(--fs-color-surface);\n }\n\n // Alinhamento dos itens dentro do container (padrão: início/esquerda).\n .fs-tabs-center {\n justify-content: center;\n }\n\n .fs-tabs-right {\n justify-content: flex-end;\n }\n\n .fs-tabs-fill .fs-nav-link {\n flex: 1;\n justify-content: center;\n text-align: center;\n }\n\n // Tamanhos — mesma escala sm/lg dos outros componentes.\n .fs-tabs-sm .fs-nav-link {\n padding: 6px 10px;\n font-size: $font-size-sm;\n }\n\n .fs-tabs-lg .fs-nav-link {\n padding: 10px 16px;\n font-size: $font-size-lg;\n }\n\n .fs-tab-content > .fs-tab-pane {\n display: none;\n }\n\n .fs-tab-content > .fs-tab-pane.is-active {\n display: block;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-tooltip {\n position: absolute;\n z-index: var(--fs-z-tooltip);\n display: none;\n max-width: 220px;\n }\n\n .fs-tooltip.is-open {\n display: block;\n }\n\n .fs-tooltip-inner {\n padding: 6px 10px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-tooltip-text);\n background-color: var(--fs-tooltip-bg);\n font-size: $font-size-xs;\n text-align: center;\n }\n\n .fs-tooltip-arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--fs-tooltip-bg);\n transform: rotate(45deg);\n }\n\n .fs-tooltip[data-placement=\"top\"] .fs-tooltip-arrow {\n bottom: -4px;\n left: 50%;\n margin-left: -4px;\n }\n\n .fs-tooltip[data-placement=\"bottom\"] .fs-tooltip-arrow {\n top: -4px;\n left: 50%;\n margin-left: -4px;\n }\n\n .fs-tooltip[data-placement=\"left\"] .fs-tooltip-arrow {\n top: 50%;\n right: -4px;\n margin-top: -4px;\n }\n\n .fs-tooltip[data-placement=\"right\"] .fs-tooltip-arrow {\n top: 50%;\n left: -4px;\n margin-top: -4px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Popover: painel flutuante com conteúdo rico (header/body/footer),\n// posicionado como o Tooltip (mesma técnica de seta rotacionada 45°), mas com\n// aparência de card de superfície em vez do chip escuro do tooltip — porque\n// pode conter elementos interativos. z-index entre o Dropdown (1000) e o\n// Tooltip (1080), para um tooltip aplicado a um gatilho de popover ainda\n// vencer visualmente.\n\n@layer components {\n .fs-popover {\n position: absolute;\n z-index: var(--fs-z-offcanvas);\n display: none;\n max-width: 280px;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n box-shadow: var(--fs-shadow-md);\n }\n\n .fs-popover.is-open {\n display: block;\n }\n\n .fs-popover-header {\n padding: 10px 14px;\n background-color: var(--fs-color-subtle);\n border-bottom: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md) var(--fs-radius-md) 0 0;\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-popover-body {\n padding: 14px;\n font-size: $font-size-sm;\n }\n\n .fs-popover-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 10px 14px;\n border-top: 1px solid var(--fs-color-border);\n }\n\n .fs-popover-arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--fs-color-surface);\n border: 1px solid var(--fs-color-border);\n transform: rotate(45deg);\n }\n\n .fs-popover[data-placement=\"top\"] .fs-popover-arrow {\n bottom: -5px;\n left: 50%;\n margin-left: -4px;\n border-top: 0;\n border-left: 0;\n }\n\n .fs-popover[data-placement=\"bottom\"] .fs-popover-arrow {\n top: -5px;\n left: 50%;\n margin-left: -4px;\n border-right: 0;\n border-bottom: 0;\n }\n\n .fs-popover[data-placement=\"left\"] .fs-popover-arrow {\n top: 50%;\n right: -5px;\n margin-top: -4px;\n border-bottom: 0;\n border-left: 0;\n }\n\n .fs-popover[data-placement=\"right\"] .fs-popover-arrow {\n top: 50%;\n left: -5px;\n margin-top: -4px;\n border-top: 0;\n border-right: 0;\n }\n\n // Hover Card: não é um componente novo — composição do Popover com\n // `data-trigger=\"hover\"` (já suportado por js/popover.js) e conteúdo mais\n // rico (ex. avatar + bio). Este modificador só alarga um pouco o popover e\n // alinha um layout de linha (avatar ao lado do texto) no corpo.\n .fs-popover-hover-card {\n max-width: 320px;\n }\n\n .fs-popover-hover-card .fs-popover-body {\n display: flex;\n gap: 12px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-toast-container {\n position: fixed;\n right: 16px;\n bottom: 16px;\n z-index: var(--fs-z-toast);\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: min(360px, 100%);\n max-width: calc(100vw - 2 * var(--fs-space-3));\n }\n\n .fs-toast {\n display: flex;\n overflow: hidden;\n flex-direction: column;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n }\n\n .fs-toast-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 12px;\n border-bottom: 1px solid var(--fs-color-border);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-toast-body {\n padding: 12px;\n font-size: $font-size-sm;\n }\n\n @each $name, $color in $theme-colors {\n .fs-toast-#{$name} .fs-toast-header {\n color: var(--fs-alert-#{$name}-text);\n background-color: var(--fs-alert-#{$name}-bg);\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-pagination {\n display: flex;\n gap: 0.25rem;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-page-link {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 32px;\n height: 32px;\n padding: 0 8px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n text-decoration: none;\n transition: background-color 0.15s ease-in-out;\n }\n\n .fs-page-link:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-page-link:focus-visible {\n @include focus-ring;\n }\n\n .fs-page-item.is-active .fs-page-link {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n .fs-page-item.is-disabled .fs-page-link {\n color: var(--fs-color-muted);\n opacity: 0.6;\n pointer-events: none;\n }\n\n // Bordered: itens colados (sem gap), borda contínua fundida (técnica do\n // Input Group — margin negativo + z-index no item ativo/hover), cantos\n // arredondados só nas pontas.\n .fs-pagination-bordered {\n gap: 0;\n }\n\n .fs-pagination-bordered .fs-page-link {\n border-radius: 0;\n }\n\n .fs-pagination-bordered .fs-page-item:not(:first-child) .fs-page-link {\n margin-left: -1px;\n }\n\n .fs-pagination-bordered .fs-page-item:first-child .fs-page-link {\n border-top-left-radius: var(--fs-radius-sm);\n border-bottom-left-radius: var(--fs-radius-sm);\n }\n\n .fs-pagination-bordered .fs-page-item:last-child .fs-page-link {\n border-top-right-radius: var(--fs-radius-sm);\n border-bottom-right-radius: var(--fs-radius-sm);\n }\n\n .fs-pagination-bordered .fs-page-link:hover,\n .fs-pagination-bordered .fs-page-item.is-active .fs-page-link {\n position: relative;\n z-index: 1;\n }\n\n // Compacta / grande — mesma escala sm/lg dos outros componentes.\n .fs-pagination-sm .fs-page-link {\n min-width: 26px;\n height: 26px;\n padding: 0 6px;\n font-size: $font-size-xs;\n }\n\n .fs-pagination-lg .fs-page-link {\n min-width: 40px;\n height: 40px;\n padding: 0 12px;\n font-size: $font-size-md;\n }\n\n // Prev/next descritivo: item com ícone + texto (\"Anterior\"/\"Próxima\") em\n // vez de só \"«\"/\"»\" — `.fs-page-link` já acomoda largura variável\n // (min-width é piso, não teto); só falta o espaçamento entre ícone e texto.\n .fs-page-link-text {\n gap: 6px;\n padding: 0 14px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-breadcrumb {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n font-size: $font-size-sm;\n }\n\n .fs-breadcrumb-item {\n display: flex;\n align-items: center;\n gap: 4px;\n color: var(--fs-color-muted);\n }\n\n .fs-breadcrumb-item + .fs-breadcrumb-item::before {\n color: var(--fs-color-muted);\n content: \"/\";\n }\n\n .fs-breadcrumb-item a {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--fs-alert-primary-text);\n text-decoration: none;\n }\n\n .fs-breadcrumb-item a:hover {\n text-decoration: underline;\n }\n\n .fs-breadcrumb-item.is-active {\n color: var(--fs-color-text);\n }\n\n // Breadcrumb avançado (js/breadcrumb.js): trunca labels longos com reticências\n // (tooltip com o texto completo é anexado via js/tooltip.js só quando o texto\n // realmente transborda) e, em telas pequenas, recolhe os níveis\n // intermediários num único item \"…\" que abre um dropdown (js/dropdown.js)\n // com os links ocultos.\n .fs-breadcrumb-item-truncate {\n display: inline-block;\n max-width: 160px;\n vertical-align: bottom;\n\n @include truncate;\n }\n\n .fs-breadcrumb-more {\n padding: 0;\n border: none;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface-raised);\n font-size: inherit;\n font-family: inherit;\n line-height: inherit;\n cursor: pointer;\n }\n\n .fs-breadcrumb-more:hover {\n color: var(--fs-color-text);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Spinner giratório: trilho discreto + segmento ativo. A cor herda de\n// `currentColor`, permitindo usar as variantes semânticas ou utilitários de\n// cor de texto.\n\n@layer components {\n .fs-spinner {\n --fs-spinner-size: 20px;\n --fs-spinner-stroke: 2px;\n --fs-spinner-duration: 0.8s;\n\n display: inline-block;\n box-sizing: border-box;\n width: var(--fs-spinner-size);\n height: var(--fs-spinner-size);\n vertical-align: middle;\n border: var(--fs-spinner-stroke) solid color-mix(in srgb, currentcolor 20%, transparent);\n border-top-color: currentcolor;\n border-radius: 50%;\n animation: fokus-spin var(--fs-spinner-duration) linear infinite;\n will-change: transform;\n }\n\n .fs-spinner-sm {\n --fs-spinner-size: 14px;\n --fs-spinner-stroke: 2px;\n }\n\n .fs-spinner-lg {\n --fs-spinner-size: 32px;\n --fs-spinner-stroke: 3px;\n }\n\n @each $name, $color in $theme-colors {\n .fs-spinner-#{$name} {\n color: var(--fs-color-#{$name});\n }\n }\n\n @keyframes fokus-spin {\n to {\n transform: rotate(360deg);\n }\n }\n\n // Barra de progresso linear. A largura do `.fs-progress-bar` é controlada por\n // `--fs-progress-value` (0–100) ou diretamente por `style=\"width\"`.\n .fs-progress {\n --fs-progress-height: 8px;\n --fs-progress-track: var(--fs-color-subtle);\n --fs-progress-radius: 0;\n\n position: relative;\n display: flex;\n height: var(--fs-progress-height);\n overflow: hidden;\n background-color: var(--fs-progress-track);\n border-radius: var(--fs-progress-radius);\n }\n\n .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-primary);\n --fs-progress-color: var(--fs-color-on-primary);\n\n display: flex;\n align-items: center;\n justify-content: center;\n width: calc(var(--fs-progress-value, 0) * 1%);\n height: 100%;\n min-width: 0;\n overflow: hidden;\n color: var(--fs-progress-color);\n background-color: var(--fs-progress-bar-bg);\n font-size: 0;\n line-height: 1;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: width 0.25s ease-out;\n }\n\n @each $name, $color in $theme-colors {\n .fs-progress-bar-#{$name} {\n --fs-progress-bar-bg: var(--fs-color-#{$name});\n --fs-progress-color: #{color-contrast($color)};\n }\n }\n\n .fs-progress-sm {\n --fs-progress-height: 4px;\n }\n\n .fs-progress-lg {\n --fs-progress-height: 16px;\n }\n\n .fs-progress-lg .fs-progress-bar {\n padding-inline: 6px;\n font-size: $font-size-xs;\n }\n\n // Cabeçalho externo: preserva o valor legível sem comprimir texto dentro de\n // barras compactas.\n .fs-progress-meta {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 12px;\n max-width: 480px;\n margin-bottom: 6px;\n color: var(--fs-color-text);\n font-size: $font-size-sm;\n }\n\n .fs-progress-value {\n color: var(--fs-color-muted);\n font-variant-numeric: tabular-nums;\n }\n\n // Processo sem percentual conhecido: um preenchimento curto atravessa o\n // trilho. Não combine com aria-valuenow, pois o valor é indeterminado.\n .fs-progress-indeterminate .fs-progress-bar {\n width: 36%;\n animation: fokus-progress-indeterminate 1.25s ease-in-out infinite;\n }\n\n .fs-progress-indeterminate {\n --fs-progress-track: color-mix(in srgb, var(--fs-color-primary) 18%, transparent);\n }\n\n @keyframes fokus-progress-indeterminate {\n from {\n transform: translateX(-110%);\n }\n\n to {\n transform: translateX(290%);\n }\n }\n\n // Estados semânticos para operações finalizadas ou interrompidas.\n .fs-progress-complete .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-success);\n --fs-progress-color: #{color-contrast($fokus-color-success)};\n }\n\n .fs-progress-error .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-danger);\n --fs-progress-color: #{color-contrast($fokus-color-danger)};\n }\n\n .fs-progress-status {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n margin-top: 6px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-progress-status-icon {\n display: inline-grid;\n width: 14px;\n height: 14px;\n place-items: center;\n color: var(--fs-alert-success-text);\n }\n\n .fs-progress-status-icon .fs-icon {\n width: 14px;\n height: 14px;\n stroke: currentcolor;\n }\n\n .fs-progress-status-danger,\n .fs-progress-error + .fs-progress-status {\n color: var(--fs-alert-danger-text);\n }\n\n // Marca uma meta/SLA no trilho. O valor usa a mesma escala percentual da\n // barra e deve ser acompanhado por texto fora do componente.\n .fs-progress-marker {\n position: absolute;\n z-index: 1;\n top: 0;\n bottom: 0;\n left: calc(var(--fs-progress-marker-value) * 1%);\n width: 2px;\n background-color: var(--fs-color-text);\n pointer-events: none;\n transform: translateX(-1px);\n }\n\n // Mantém progresso inicial perceptível sem alterar aria-valuenow. Use\n // apenas quando o valor real já for maior que zero.\n .fs-progress-minimum .fs-progress-bar {\n width: max(calc(var(--fs-progress-value, 0) * 1%), 4px);\n }\n\n // Faixas diagonais opcionais, animáveis com `.fs-progress-bar-animated`.\n .fs-progress-bar-striped {\n background-image: linear-gradient(\n 45deg,\n color-mix(in srgb, currentcolor 16%, transparent) 25%,\n transparent 25%,\n transparent 50%,\n color-mix(in srgb, currentcolor 16%, transparent) 50%,\n color-mix(in srgb, currentcolor 16%, transparent) 75%,\n transparent 75%,\n transparent\n );\n background-size: 16px 16px;\n }\n\n .fs-progress-bar-animated {\n animation: fokus-progress-stripes 1s linear infinite;\n }\n\n @keyframes fokus-progress-stripes {\n from {\n background-position: 16px 0;\n }\n\n to {\n background-position: 0 0;\n }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-spinner {\n --fs-spinner-duration: 1.5s;\n }\n\n .fs-progress-bar-animated {\n animation-duration: 1.5s;\n }\n\n .fs-progress-indeterminate .fs-progress-bar {\n animation-duration: 1.8s;\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n@use \"sass:map\";\n\n@layer components {\n .fs-carousel {\n --fs-carousel-radius: var(--fs-radius-md);\n --fs-carousel-transition-duration: var(--fs-transition-normal);\n --fs-carousel-transition-easing: var(--fs-ease-standard);\n --fs-carousel-control-size: 44px;\n --fs-carousel-control-inset: var(--fs-space-2);\n --fs-carousel-control-gap: var(--fs-space-1);\n --fs-carousel-control-color: var(--fs-color-white);\n --fs-carousel-control-paused-color: var(--fs-color-warning);\n --fs-carousel-control-bg: rgb(15 23 42 / 72%);\n --fs-carousel-control-bg-hover: rgb(15 23 42 / 88%);\n --fs-carousel-focus-color: var(--fs-color-white);\n --fs-carousel-indicator-size: 8px;\n --fs-carousel-indicator-active-width: 24px;\n --fs-carousel-indicator-color: rgb(255 255 255 / 62%);\n --fs-carousel-indicator-active-color: var(--fs-color-white);\n --fs-carousel-caption-scrim: rgb(15 23 42 / 78%);\n --fs-carousel-top-safe-area: calc(var(--fs-carousel-control-size) + (var(--fs-carousel-control-inset) * 2));\n --fs-carousel-bottom-safe-area: calc(32px + var(--fs-space-2) + 24px);\n --fs-carousel-progress-height: 3px;\n\n position: relative;\n overflow: hidden;\n border-radius: var(--fs-carousel-radius);\n }\n\n .fs-carousel::before {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(var(--fs-carousel-control-size) + (var(--fs-carousel-control-inset) * 2));\n pointer-events: none;\n content: \"\";\n background: linear-gradient(to bottom, rgb(15 23 42 / 76%), rgb(15 23 42 / 32%));\n opacity: 0;\n transition: opacity var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-carousel-inner {\n display: flex;\n transition: transform var(--fs-carousel-transition-duration) var(--fs-carousel-transition-easing);\n }\n\n .fs-carousel-item {\n position: relative;\n flex: 0 0 100%;\n width: 100%;\n }\n\n .fs-carousel-item img {\n display: block;\n width: 100%;\n }\n\n .fs-carousel.is-dragging .fs-carousel-inner {\n cursor: grabbing;\n transition: none;\n user-select: none;\n }\n\n .fs-carousel:not(.is-static) .fs-carousel-inner {\n cursor: grab;\n touch-action: pan-y;\n }\n\n .fs-carousel-fade .fs-carousel-inner {\n display: block;\n transform: none;\n }\n\n .fs-carousel-fade .fs-carousel-item {\n position: absolute;\n inset: 0;\n opacity: 0;\n transition: opacity var(--fs-carousel-transition-duration) var(--fs-carousel-transition-easing);\n }\n\n .fs-carousel-fade .fs-carousel-item.is-active {\n position: relative;\n opacity: 1;\n }\n\n .fs-carousel-control-prev,\n .fs-carousel-control-next,\n .fs-carousel-control-toggle {\n position: absolute;\n top: var(--fs-carousel-control-inset);\n z-index: 2;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--fs-carousel-control-size);\n height: var(--fs-carousel-control-size);\n padding: 0;\n color: var(--fs-carousel-control-color);\n background-color: transparent;\n background-repeat: no-repeat;\n background-position: center;\n background-size: 18px 18px;\n border: 0;\n border-radius: 0;\n cursor: pointer;\n opacity: 0;\n transition: background-color var(--fs-transition-fast) var(--fs-ease-standard),\n opacity var(--fs-transition-fast) var(--fs-ease-standard),\n transform var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-carousel-control-prev,\n .fs-carousel-control-next {\n transform: none;\n }\n\n .fs-carousel-control-prev {\n left: var(--fs-carousel-control-inset);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 4 6 9l5 5'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel-control-next {\n left: calc(var(--fs-carousel-control-inset) + var(--fs-carousel-control-size) + var(--fs-carousel-control-gap));\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 4 5 5-5 5'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel-control-toggle {\n left: calc(var(--fs-carousel-control-inset) + var(--fs-carousel-control-size) + var(--fs-carousel-control-gap));\n }\n\n .fs-carousel:has(.fs-carousel-control-toggle) .fs-carousel-control-next {\n left: calc(var(--fs-carousel-control-inset) + ((var(--fs-carousel-control-size) + var(--fs-carousel-control-gap)) * 2));\n }\n\n .fs-carousel-control-toggle[aria-pressed=\"true\"] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 5v8M11 5v8'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel-control-toggle[aria-pressed=\"false\"] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23ffffff'%3E%3Cpath d='m7 4 7 5-7 5z'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel.is-autoplay-paused .fs-carousel-control-toggle[aria-pressed=\"true\"] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23f0b40e' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 5v8M11 5v8'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel.is-autoplay-paused .fs-carousel-control-toggle[aria-pressed=\"false\"] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23f0b40e'%3E%3Cpath d='m7 4 7 5-7 5z'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel-control-prev:hover,\n .fs-carousel-control-next:hover,\n .fs-carousel-control-toggle:hover {\n background-color: var(--fs-carousel-control-bg-hover);\n }\n\n .fs-carousel-control-prev:active,\n .fs-carousel-control-next:active,\n .fs-carousel-control-toggle:active {\n transform: scale(0.94);\n }\n\n .fs-carousel-control-prev:focus-visible,\n .fs-carousel-control-next:focus-visible,\n .fs-carousel-control-toggle:focus-visible,\n .fs-carousel-indicators button:focus-visible {\n @include focus-ring(var(--fs-carousel-focus-color));\n }\n\n .fs-carousel:hover .fs-carousel-control-prev,\n .fs-carousel:hover .fs-carousel-control-next,\n .fs-carousel:hover .fs-carousel-control-toggle,\n .fs-carousel:focus-within .fs-carousel-control-prev,\n .fs-carousel:focus-within .fs-carousel-control-next,\n .fs-carousel:focus-within .fs-carousel-control-toggle {\n opacity: 1;\n }\n\n .fs-carousel:hover::before,\n .fs-carousel:focus-within::before {\n opacity: 1;\n }\n\n .fs-carousel-indicators {\n position: absolute;\n right: 0;\n bottom: var(--fs-space-2);\n left: 0;\n z-index: 1;\n display: flex;\n justify-content: center;\n gap: 0;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-carousel-indicators button {\n position: relative;\n display: grid;\n width: 28px;\n height: 32px;\n padding: 0;\n place-items: center;\n background: transparent;\n border: 0;\n cursor: pointer;\n }\n\n .fs-carousel-indicators button::before {\n width: var(--fs-carousel-indicator-size);\n height: var(--fs-carousel-indicator-size);\n content: \"\";\n background-color: var(--fs-carousel-indicator-color);\n border-radius: var(--fs-radius-lg);\n transition: width var(--fs-transition-fast) var(--fs-ease-standard),\n background-color var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-carousel-indicators button.is-active::before {\n width: var(--fs-carousel-indicator-active-width);\n background-color: var(--fs-carousel-indicator-active-color);\n }\n\n .fs-carousel-caption {\n position: absolute;\n right: 0;\n bottom: var(--fs-carousel-bottom-safe-area);\n left: 0;\n z-index: 1;\n box-sizing: border-box;\n max-width: min(100%, 42rem);\n max-block-size: calc(100% - var(--fs-carousel-top-safe-area) - var(--fs-carousel-bottom-safe-area));\n isolation: isolate;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: var(--fs-space-2);\n padding: calc(var(--fs-space-4) + 20px) var(--fs-space-4) var(--fs-space-3);\n color: var(--fs-color-white);\n }\n\n .fs-carousel-caption::before {\n position: absolute;\n top: 0;\n right: 0;\n bottom: calc(var(--fs-carousel-bottom-safe-area) * -1);\n left: 0;\n z-index: -1;\n content: \"\";\n background: linear-gradient(to top, var(--fs-carousel-caption-scrim), transparent);\n }\n\n .fs-carousel-caption > * {\n margin: 0;\n }\n\n .fs-carousel-caption .fs-btn {\n --fs-btn-color: var(--fs-color-text-primary);\n --fs-btn-bg: var(--fs-color-white);\n --fs-btn-border-color: var(--fs-color-white);\n --fs-btn-hover-bg: var(--fs-color-subtle);\n --fs-btn-active-bg: var(--fs-color-border-default);\n }\n\n .fs-carousel-caption-side .fs-carousel-caption {\n top: var(--fs-carousel-top-safe-area);\n right: 0;\n bottom: 0;\n left: auto;\n width: min(42%, 28rem);\n max-width: none;\n max-block-size: none;\n padding: var(--fs-space-4) var(--fs-space-4)\n calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-2));\n background: rgb(15 23 42 / 84%);\n }\n\n // A legenda lateral fica à direita por padrão. Esta variação permite\n // preservar o assunto principal da imagem quando ele estiver à direita.\n .fs-carousel-caption-side .fs-carousel-caption-start {\n right: auto;\n left: 0;\n }\n\n .fs-carousel-caption-side .fs-carousel-caption::before,\n .fs-carousel-caption-stacked .fs-carousel-caption::before {\n display: none;\n }\n\n .fs-carousel-caption-stacked {\n --fs-carousel-bottom-safe-area: 0px;\n }\n\n .fs-carousel-caption-stacked .fs-carousel-caption {\n position: static;\n max-width: none;\n max-block-size: none;\n overflow: visible;\n padding: var(--fs-space-4);\n color: var(--fs-color-text-primary);\n background: var(--fs-color-bg-surface);\n }\n\n .fs-carousel-caption-stacked .fs-carousel-indicators {\n position: relative;\n bottom: auto;\n background: var(--fs-color-bg-surface);\n }\n\n .fs-carousel-counter {\n position: absolute;\n right: var(--fs-space-3);\n bottom: var(--fs-space-2);\n z-index: 2;\n color: var(--fs-color-white);\n font-size: $font-size-sm;\n font-variant-numeric: tabular-nums;\n }\n\n .fs-carousel-progress {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n height: var(--fs-carousel-progress-height);\n overflow: hidden;\n background-color: rgb(255 255 255 / 24%);\n }\n\n .fs-carousel-progress > span {\n display: block;\n width: 100%;\n height: 100%;\n background-color: var(--fs-color-white);\n transform: scaleX(0);\n transform-origin: left;\n }\n\n .fs-carousel-progress.is-running > span {\n animation: fs-carousel-progress var(--fs-carousel-progress-duration, 5000ms) linear forwards;\n }\n\n .fs-carousel.is-two-slides.fs-carousel-hide-indicators-two .fs-carousel-indicators {\n display: none;\n }\n\n .fs-carousel-no-media .fs-carousel-item {\n min-block-size: 15rem;\n background-color: var(--fs-color-bg-surface);\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n }\n\n .fs-carousel-no-media .fs-carousel-counter {\n color: var(--fs-color-text-muted);\n }\n\n .fs-carousel-no-media .fs-carousel-progress {\n background-color: var(--fs-color-border-default);\n }\n\n .fs-carousel-no-media .fs-carousel-progress > span {\n background-color: var(--fs-color-action-primary);\n }\n\n .fs-carousel-media-placeholder {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n min-height: inherit;\n padding: calc(var(--fs-carousel-top-safe-area) + var(--fs-space-4)) var(--fs-space-4)\n calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-4));\n }\n\n .fs-carousel-media-placeholder > * {\n max-width: 36rem;\n margin: 0;\n }\n\n .fs-carousel-media-placeholder > * + * {\n margin-top: var(--fs-space-2);\n }\n\n .fs-carousel-media {\n min-block-size: 18rem;\n background-position: center;\n background-size: cover;\n }\n\n .fs-carousel.is-static .fs-carousel-control-prev,\n .fs-carousel.is-static .fs-carousel-control-next,\n .fs-carousel.is-static .fs-carousel-control-toggle,\n .fs-carousel.is-static .fs-carousel-indicators {\n display: none;\n }\n\n @media (max-width: map.get($breakpoints, sm) - 1px) {\n .fs-carousel {\n --fs-carousel-control-inset: var(--fs-space-1);\n }\n\n .fs-carousel-caption {\n padding: calc(var(--fs-space-3) + 20px) var(--fs-space-3) var(--fs-space-3);\n }\n\n .fs-carousel-caption-side .fs-carousel-caption {\n top: auto;\n bottom: var(--fs-carousel-bottom-safe-area);\n width: auto;\n max-block-size: calc(100% - var(--fs-carousel-top-safe-area) - var(--fs-carousel-bottom-safe-area));\n overflow: clip;\n align-items: flex-end;\n padding: calc(var(--fs-space-3) + 20px) var(--fs-space-3)\n calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-2));\n text-align: end;\n background: transparent;\n }\n\n .fs-carousel-caption-side .fs-carousel-caption-start {\n right: 0;\n left: 0;\n align-items: flex-start;\n text-align: start;\n }\n\n .fs-carousel-caption-side .fs-carousel-item::after {\n position: absolute;\n inset: 0;\n z-index: 0;\n pointer-events: none;\n content: \"\";\n background: linear-gradient(\n to top,\n var(--fs-carousel-caption-scrim) 0%,\n rgb(15 23 42 / 52%) 56%,\n transparent 100%\n );\n }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-carousel-inner,\n .fs-carousel-fade .fs-carousel-item,\n .fs-carousel-control-prev,\n .fs-carousel-control-next,\n .fs-carousel-control-toggle,\n .fs-carousel-indicators button::before,\n .fs-carousel-progress.is-running > span {\n transition: none;\n animation: none;\n transform: scaleX(1);\n }\n }\n\n @keyframes fs-carousel-progress {\n to {\n transform: scaleX(1);\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Stepper / Wizard. Cabeçalho com os passos (`.fs-step`) e, opcionalmente, painéis\n// de conteúdo (`.fs-step-panel`) e ações de navegação (`.fs-stepper-actions`).\n// Estados por passo: padrão (pendente), `.fs-step-active`, `.fs-step-completed`,\n// `.fs-step-error` — controlados por `js/stepper.js`.\n\n@layer components {\n .fs-stepper-header {\n display: flex;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-step {\n position: relative;\n display: flex;\n flex: 1 1 0;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n\n .fs-step-indicator {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface);\n border: 2px solid var(--fs-color-border);\n border-radius: 50%;\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-step-label {\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-step-description {\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n }\n\n // Conector entre passos: linha do centro deste passo ao centro do próximo.\n .fs-step:not(:last-child)::after {\n content: \"\";\n position: absolute;\n top: 15px;\n left: calc(50% + 20px);\n width: calc(100% - 40px);\n height: 2px;\n background-color: var(--fs-color-border);\n }\n\n // Passo ativo.\n .fs-step-active .fs-step-indicator {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n .fs-step-active .fs-step-label {\n color: var(--fs-color-text);\n }\n\n // Passo concluído: círculo preenchido com um \"check\" no lugar do número, e o\n // conector à direita fica na cor primária (indica progresso).\n .fs-step-completed .fs-step-indicator {\n color: transparent;\n background-color: var(--fs-color-primary);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5 6.5 12 13 4'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: center;\n border-color: var(--fs-color-primary);\n }\n\n .fs-step-completed .fs-step-label {\n color: var(--fs-color-text);\n }\n\n // `:not(:last-child)` casa a especificidade da regra base do conector\n // (senão o cinza dela venceria e o progresso não apareceria).\n .fs-step-completed:not(:last-child)::after {\n background-color: var(--fs-color-primary);\n }\n\n // Passo em erro.\n .fs-step-error .fs-step-indicator {\n color: color-contrast($fokus-color-danger);\n background-color: var(--fs-color-danger);\n border-color: var(--fs-color-danger);\n }\n\n .fs-step-error .fs-step-label {\n color: var(--fs-alert-danger-text);\n }\n\n // Passo clicável (navegação para trás via cabeçalho).\n .fs-step.fs-step-clickable {\n cursor: pointer;\n }\n\n .fs-step.fs-step-clickable:focus-visible {\n outline: 2px solid var(--fs-color-primary);\n outline-offset: 2px;\n border-radius: var(--fs-radius-sm);\n }\n\n // Variante vertical.\n .fs-stepper-vertical .fs-stepper-header {\n flex-direction: column;\n }\n\n .fs-stepper-vertical .fs-step {\n flex-direction: row;\n flex: 0 0 auto;\n align-items: flex-start;\n gap: 12px;\n min-height: 56px;\n text-align: left;\n }\n\n .fs-stepper-vertical .fs-step-content {\n display: flex;\n flex-direction: column;\n gap: 2px;\n padding-top: 5px;\n }\n\n .fs-stepper-vertical .fs-step:not(:last-child)::after {\n top: 34px;\n left: 15px;\n width: 2px;\n height: calc(100% - 22px);\n }\n\n // Painéis de conteúdo (wizard) e ações de navegação.\n .fs-step-panel {\n display: none;\n }\n\n .fs-step-panel.is-active {\n display: block;\n }\n\n .fs-stepper-content {\n margin-top: 20px;\n }\n\n .fs-stepper-actions {\n display: flex;\n justify-content: space-between;\n gap: 8px;\n margin-top: 20px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Grupo de botões com estado selecionado. Modo exclusivo: `<input\n// type=\"radio\">` (mesmo `name` em todos os itens). Modo inclusivo: `<input\n// type=\"checkbox\">`, cada item seleciona/deseleciona de forma independente.\n// O input fica visualmente oculto (mesma técnica de `.fs-file-input`,\n// scss/forms/_forms.scss) e o `<label>` irmão recebe o estilo.\n\n@layer components {\n .fs-segmented-control {\n display: inline-flex;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n overflow: hidden;\n }\n\n .fs-segmented-item {\n display: flex;\n }\n\n .fs-segmented-item:not(:first-child) .fs-segmented-label {\n border-left: 1px solid var(--fs-color-border);\n }\n\n .fs-segmented-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .fs-segmented-label {\n display: inline-flex;\n flex: 1;\n align-items: center;\n justify-content: center;\n min-height: 38px;\n padding: 0 12px;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n text-align: center;\n white-space: nowrap;\n cursor: pointer;\n user-select: none;\n transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;\n }\n\n .fs-segmented-label:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-segmented-input:checked + .fs-segmented-label {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n .fs-segmented-input:focus-visible + .fs-segmented-label {\n position: relative;\n z-index: 1;\n\n @include focus-ring;\n }\n\n .fs-segmented-input:disabled + .fs-segmented-label {\n opacity: 0.4;\n pointer-events: none;\n }\n\n .fs-segmented-control-sm .fs-segmented-label {\n min-height: 30px;\n padding: 0 8px;\n font-size: $font-size-sm;\n }\n\n .fs-segmented-control-lg .fs-segmented-label {\n min-height: 46px;\n padding: 0 16px;\n font-size: $font-size-lg;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Placeholder de carregamento. Tamanho/forma controlados por largura/altura\n// inline (`style=\"width: ...; height: ...\"`) ou pelas variantes abaixo —\n// mesma abordagem de `.fs-progress-bar` (scss/components/_spinner.scss), que já\n// usa `style=\"width\"` em vez de classes de tamanho fixas.\n\n@layer components {\n .fs-skeleton {\n display: block;\n background-color: var(--fs-color-subtle);\n border-radius: var(--fs-radius-sm);\n animation: fokus-skeleton-pulse 1.5s ease-in-out infinite;\n }\n\n .fs-skeleton-text {\n width: 100%;\n height: 1em;\n }\n\n .fs-skeleton-text:not(:last-child) {\n margin-bottom: 0.5em;\n }\n\n .fs-skeleton-text:last-child {\n width: 80%;\n }\n\n .fs-skeleton-circle {\n flex-shrink: 0;\n border-radius: 50%;\n }\n\n .fs-skeleton-rect {\n border-radius: var(--fs-radius-md);\n }\n\n @keyframes fokus-skeleton-pulse {\n 0%,\n 100% {\n opacity: 1;\n }\n\n 50% {\n opacity: 0.5;\n }\n }\n\n // Variante \"wave\": em vez de pulsar a opacidade inteira, varre um brilho da\n // esquerda pra direita — precisa de `overflow: hidden` porque o brilho é um\n // pseudo-elemento maior que o próprio skeleton, deslocado por `translateX`.\n .fs-skeleton-wave {\n position: relative;\n overflow: hidden;\n animation: none;\n }\n\n .fs-skeleton-wave::after {\n position: absolute;\n inset: 0;\n content: \"\";\n background-image: linear-gradient(90deg, transparent, rgb(255 255 255 / 30%), transparent);\n transform: translateX(-100%);\n animation: fokus-skeleton-wave 1.6s linear infinite;\n }\n\n @keyframes fokus-skeleton-wave {\n 100% {\n transform: translateX(100%);\n }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-skeleton {\n animation: none;\n }\n\n .fs-skeleton-wave::after {\n animation: none;\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Linha do tempo, 100% CSS. Vertical por padrão (`.fs-timeline`); variante\n// `.fs-timeline-horizontal` inverte o eixo. Estados por item (`.fs-timeline-item`):\n// padrão (pendente), `.fs-timeline-active`, `.fs-timeline-completed`,\n// `.fs-timeline-failed` — mesma lógica de conector do Stepper\n// (scss/components/_stepper.scss): a linha entre marcadores fica na cor do\n// item concluído para indicar progresso.\n\n@layer components {\n .fs-timeline {\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-timeline-item {\n position: relative;\n display: flex;\n gap: 12px;\n padding-bottom: 24px;\n }\n\n .fs-timeline-item:last-child {\n padding-bottom: 0;\n }\n\n .fs-timeline-marker {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n margin-top: 3px;\n background-color: var(--fs-color-surface);\n background-repeat: no-repeat;\n background-position: center;\n border: 2px solid var(--fs-color-border);\n border-radius: 50%;\n }\n\n .fs-timeline-item:not(:last-child)::before {\n content: \"\";\n position: absolute;\n top: 22px;\n left: 7px;\n width: 2px;\n height: calc(100% - 22px);\n background-color: var(--fs-color-border);\n }\n\n .fs-timeline-content {\n flex: 1;\n padding-top: 1px;\n }\n\n .fs-timeline-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n }\n\n .fs-timeline-text {\n margin: 4px 0 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-timeline-time {\n display: block;\n margin-top: 2px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n }\n\n // Item ativo (em andamento).\n .fs-timeline-active .fs-timeline-marker {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n // Item concluído: marcador preenchido com um \"check\" (mesmo ícone do\n // Stepper) e o conector seguinte fica na cor de sucesso (indica progresso).\n .fs-timeline-completed .fs-timeline-marker {\n background-color: var(--fs-color-success);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 5.5 4 8l4-6'/%3E%3C/svg%3E\");\n border-color: var(--fs-color-success);\n }\n\n .fs-timeline-completed:not(:last-child)::before {\n background-color: var(--fs-color-success);\n }\n\n // Item com falha.\n .fs-timeline-failed .fs-timeline-marker {\n background-color: var(--fs-color-danger);\n border-color: var(--fs-color-danger);\n }\n\n .fs-timeline-failed .fs-timeline-title {\n color: var(--fs-alert-danger-text);\n }\n\n // Variante horizontal: cada item vira uma coluna, marcador no topo e\n // conector correndo na horizontal entre os centros dos marcadores (mesma\n // técnica do `.fs-step` padrão em scss/components/_stepper.scss).\n .fs-timeline-horizontal {\n flex-direction: row;\n }\n\n .fs-timeline-horizontal .fs-timeline-item {\n flex: 1 1 0;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n padding-bottom: 0;\n text-align: center;\n }\n\n // No modo horizontal o marcador não precisa do deslocamento vertical usado\n // para alinhar com a primeira linha de texto (margin-top no modo vertical);\n // zerá-lo faz o conector cair exatamente no centro do círculo.\n .fs-timeline-horizontal .fs-timeline-marker {\n margin-top: 0;\n }\n\n .fs-timeline-horizontal .fs-timeline-item:not(:last-child)::before {\n top: 7px;\n left: calc(50% + 15px);\n width: calc(100% - 30px);\n height: 2px;\n }\n\n .fs-timeline-horizontal .fs-timeline-content {\n padding-top: 0;\n }\n}\n","// Extraído do padrão já usado por `.fs-accordion-collapse`\n// (scss/components/_accordion.scss): o `overflow: hidden` é exigido pelo\n// `collapse()`/`expand()` de js/core/transition.js, que anima a propriedade\n// `height` do elemento.\n\n@layer components {\n .fs-collapse {\n overflow: hidden;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Notification Center (Etapa 10): orquestra o Toast (scss/components/_toasts.scss)\n// e guarda um histórico. Os toasts em si reaproveitam `.fs-toast`/`.fs-toast-container`\n// sem estilo novo; aqui ficam só o contador de não-lidas no gatilho e o painel\n// de histórico. O comportamento (empilhar toasts, marcar lido, persistir) é do\n// js/notification-center.js (FokusStyles.NotificationCenter).\n\n// O gatilho estabelece o contexto de posicionamento do contador.\n\n@layer components {\n [data-fs=\"notification-center\"] {\n position: relative;\n }\n\n .fs-notification-badge {\n position: absolute;\n top: -6px;\n right: -6px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 18px;\n height: 18px;\n padding: 0 5px;\n border-radius: 999px;\n color: color-contrast($fokus-color-danger);\n background-color: var(--fs-color-danger);\n font-size: 0.65rem;\n font-weight: $font-weight-medium;\n line-height: 1;\n }\n\n .fs-notification-badge[hidden] {\n display: none;\n }\n\n // Painel de histórico: reaproveita a mesma linguagem visual do Dropdown/Toast\n // (superfície + borda + sombra), posicionado via js/core/positioning.js.\n .fs-notification-center {\n position: absolute;\n display: none;\n flex-direction: column;\n width: min(320px, calc(100vw - 2 * var(--fs-space-3)));\n max-height: 420px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-notification);\n }\n\n .fs-notification-center.is-open {\n display: flex;\n }\n\n .fs-notification-center-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 14px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n\n .fs-notification-center-title {\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-notification-list {\n margin: 0;\n padding: 0;\n overflow-y: auto;\n list-style: none;\n }\n\n .fs-notification-item {\n display: flex;\n gap: 10px;\n align-items: flex-start;\n padding: 10px 14px;\n border-left: 3px solid transparent;\n border-bottom: 1px solid var(--fs-color-border);\n }\n\n .fs-notification-item:last-child {\n border-bottom: none;\n }\n\n .fs-notification-item-unread {\n background-color: var(--fs-color-subtle);\n }\n\n @each $name, $color in $theme-colors {\n .fs-notification-item-#{$name} {\n border-left-color: var(--fs-color-#{$name});\n }\n }\n\n .fs-notification-item-content {\n flex: 1;\n min-width: 0;\n }\n\n .fs-notification-item-title {\n margin: 0;\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-notification-item-text {\n margin: 2px 0 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-notification-item-time {\n display: block;\n margin-top: 4px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n }\n\n .fs-notification-item .fs-btn-close {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n }\n\n .fs-notification-empty {\n padding: 24px 14px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n text-align: center;\n }\n\n .fs-notification-empty[hidden] {\n display: none;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Nested Menu (Etapa 10): Dropdown com submenus recursivos. Reaproveita\n// `.fs-dropdown-menu`/`.fs-dropdown-item` (scss/components/_dropdown.scss) sem\n// reestilizar — só adiciona o posicionamento em cascata dos submenus e a seta\n// indicadora. Abertura por hover é 100% CSS; teclado/clique e o flip de borda\n// ficam no js/nested-menu.js (FokusStyles.NestedMenu), que adiciona `.is-open`.\n\n// Cada nível de submenu é envolto por `.fs-dropdown-submenu`, que serve de âncora\n// de posicionamento para o `.fs-dropdown-menu` filho.\n\n@layer components {\n .fs-dropdown-submenu {\n position: relative;\n }\n\n // Item que abre um submenu: seta apontando para o lado (em vez da seta pra\n // baixo do `.fs-dropdown-toggle`), empurrada para a direita do item.\n .fs-dropdown-item-submenu {\n justify-content: space-between;\n }\n\n .fs-dropdown-item-submenu::after {\n margin-left: 8px;\n content: \"\";\n border-top: 5px solid transparent;\n border-bottom: 5px solid transparent;\n border-left: 5px solid currentcolor;\n }\n\n // Submenu abre à direita do item, alinhado ao topo (compensa o padding + borda\n // do menu pai para os primeiros itens ficarem na mesma linha).\n .fs-dropdown-submenu > .fs-dropdown-menu {\n top: -7px;\n left: 100%;\n margin: 0;\n }\n\n .fs-dropdown-submenu:hover > .fs-dropdown-menu,\n .fs-dropdown-submenu > .fs-dropdown-menu.is-open {\n display: block;\n }\n\n // Sem espaço à direita: o JS marca `.fs-dropdown-submenu-left` e o submenu abre\n // para a esquerda.\n .fs-dropdown-submenu-left > .fs-dropdown-menu {\n right: 100%;\n left: auto;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Tile: linha compacta ícone + título/subtítulo + ações, para listas de\n// opções/configurações/itens de navegação (sinergia com Notification Center\n// e Empty State — mesmo vocabulário visual de ícone+texto). Reusa `.fs-btn`\n// nas ações e `.fs-stretched-link` (_cards.scss) para a variante clicável\n// (tile inteiro age como link, sem precisar envolver tudo numa `<a>`).\n@layer components {\n .fs-tile {\n position: relative;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n background-color: var(--fs-color-surface);\n }\n\n .fs-tile-icon {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n font-size: $font-size-lg;\n }\n\n .fs-tile-body {\n flex: 1 1 auto;\n min-width: 0;\n }\n\n .fs-tile-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n\n @include truncate;\n }\n\n .fs-tile-subtitle {\n margin: 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n\n @include truncate;\n }\n\n .fs-tile-actions {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n gap: 8px;\n }\n\n // Ações embaixo: o tile quebra linha (flex-wrap) e `.fs-tile-actions` ocupa\n // a largura toda numa segunda linha, alinhada à direita — em vez do padrão\n // (ações à direita, na mesma linha do ícone/corpo).\n .fs-tile-actions-bottom {\n flex-wrap: wrap;\n }\n\n .fs-tile-actions-bottom .fs-tile-actions {\n flex-basis: 100%;\n justify-content: flex-end;\n margin-top: 4px;\n }\n\n // Tile inteiro clicável: usa `.fs-stretched-link` num link dentro do corpo\n // (mesma técnica do Card) — o hover/focus visual fica no `.fs-tile`.\n .fs-tile-clickable {\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n }\n\n .fs-tile-clickable:hover,\n .fs-tile-clickable:focus-within {\n border-color: var(--fs-color-primary);\n box-shadow: var(--fs-shadow-sm);\n }\n\n .fs-tile-sm {\n gap: 8px;\n padding: 8px;\n }\n\n .fs-tile-sm .fs-tile-icon {\n width: 32px;\n height: 32px;\n font-size: $font-size-md;\n }\n\n .fs-tile-sm .fs-tile-title {\n font-size: $font-size-sm;\n }\n\n .fs-tile-sm .fs-tile-subtitle {\n font-size: $font-size-xs;\n }\n\n .fs-tile-lg {\n gap: 16px;\n padding: 16px;\n }\n\n .fs-tile-lg .fs-tile-icon {\n width: 48px;\n height: 48px;\n font-size: $font-size-xl;\n }\n\n .fs-tile-lg .fs-tile-title {\n font-size: $font-size-lg;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Utilitários de container query — reagem à largura do container mais\n// próximo (`.fs-u-cq`), não da viewport. Complementam (não substituem) os\n// utilitários de display responsivos por viewport já existentes\n// (`_display.scss`); ver `docs/guides/layout-advanced.md`.\n@layer utilities {\n // Opt-in: aplique num elemento pai pra que os filhos possam reagir à\n // largura dele via os utilitários `.fs-u-cq-{sm,md,lg}-d-*` abaixo.\n .fs-u-cq {\n container-type: inline-size;\n }\n\n @each $name, $width in $container-breakpoints {\n @container (min-width: #{$width}) {\n .fs-u-cq-#{$name}-d-none {\n display: none;\n }\n\n .fs-u-cq-#{$name}-d-block {\n display: block;\n }\n\n .fs-u-cq-#{$name}-d-inline-block {\n display: inline-block;\n }\n\n .fs-u-cq-#{$name}-d-flex {\n display: flex;\n }\n }\n }\n}\n","@layer utilities {\n .fs-u-d-none {\n display: none;\n }\n\n .fs-u-d-block {\n display: block;\n }\n\n .fs-u-d-inline {\n display: inline;\n }\n\n .fs-u-d-inline-block {\n display: inline-block;\n }\n\n .fs-u-d-flex {\n display: flex;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer utilities {\n @each $breakpoint, $min in $breakpoints {\n $infix: breakpoint-infix($breakpoint);\n\n @include media-breakpoint-up($breakpoint) {\n .fs-u-align-items#{$infix}-start {\n align-items: flex-start;\n }\n\n .fs-u-align-items#{$infix}-center {\n align-items: center;\n }\n\n .fs-u-align-items#{$infix}-end {\n align-items: flex-end;\n }\n\n .fs-u-justify-content#{$infix}-start {\n justify-content: flex-start;\n }\n\n .fs-u-justify-content#{$infix}-center {\n justify-content: center;\n }\n\n .fs-u-justify-content#{$infix}-end {\n justify-content: flex-end;\n }\n\n .fs-u-justify-content#{$infix}-around {\n justify-content: space-around;\n }\n\n .fs-u-justify-content#{$infix}-between {\n justify-content: space-between;\n }\n\n .fs-u-align-self#{$infix}-start {\n align-self: flex-start;\n }\n\n .fs-u-align-self#{$infix}-center {\n align-self: center;\n }\n\n .fs-u-align-self#{$infix}-end {\n align-self: flex-end;\n }\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Estilo base pra ícones SVG inline — pensado pro pacote opcional\n// `fokus-styles/icons` (ver docs/guides/icons.md), mas funciona com qualquer SVG\n// que siga a mesma convenção (`stroke=\"currentColor\"`, sem width/height\n// fixos via CSS). Tamanho relativo ao texto ao redor (`1em`), não em px\n// fixo, pra acompanhar `.fs-u-fs-*`/headings sem precisar de uma classe de\n// tamanho por contexto.\n\n@layer utilities {\n .fs-icon {\n display: inline-block;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n vertical-align: -0.125em;\n stroke: currentcolor;\n }\n\n .fs-icon-xs {\n width: 12px;\n height: 12px;\n }\n\n .fs-icon-sm {\n width: 16px;\n height: 16px;\n }\n\n .fs-icon-lg {\n width: 32px;\n height: 32px;\n }\n\n .fs-icon-xl {\n width: 48px;\n height: 48px;\n }\n}\n","// z-index 1020: mesma faixa numérica usada pelos componentes de overlay\n// (dropdown 1000, modal/offcanvas 1050, popover 1070...) — fica acima de\n// conteúdo normal e do dropdown, abaixo de qualquer overlay modal.\n@layer utilities {\n .fs-u-sticky-top {\n position: sticky;\n top: var(--fs-sticky-top, 0);\n z-index: 1020;\n }\n\n .fs-u-sticky-bottom {\n position: sticky;\n bottom: var(--fs-sticky-bottom, 0);\n z-index: 1020;\n }\n}\n","@layer utilities {\n @media print {\n .fs-u-print-hide {\n display: none !important;\n }\n }\n\n @media not print {\n .fs-u-print-only {\n display: none !important;\n }\n }\n\n @media print {\n .fs-u-print-block {\n display: block !important;\n }\n\n .fs-u-print-inline {\n display: inline !important;\n }\n\n .fs-u-print-inline-block {\n display: inline-block !important;\n }\n }\n}\n","@layer utilities {\n .fs-u-shadow-sm {\n box-shadow: var(--fs-shadow-sm);\n }\n\n .fs-u-shadow {\n box-shadow: var(--fs-shadow-md);\n }\n\n .fs-u-shadow-lg {\n box-shadow: var(--fs-shadow-lg);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer utilities {\n @each $breakpoint, $min in $breakpoints {\n $infix: breakpoint-infix($breakpoint);\n\n @include media-breakpoint-up($breakpoint) {\n @each $key, $value in $spacers {\n .fs-u-m#{$infix}-#{$key} {\n margin: $value;\n }\n\n .fs-u-mt#{$infix}-#{$key} {\n margin-top: $value;\n }\n\n .fs-u-mr#{$infix}-#{$key} {\n margin-right: $value;\n }\n\n .fs-u-mb#{$infix}-#{$key} {\n margin-bottom: $value;\n }\n\n .fs-u-ml#{$infix}-#{$key} {\n margin-left: $value;\n }\n\n .fs-u-mx#{$infix}-#{$key} {\n margin-right: $value;\n margin-left: $value;\n }\n\n .fs-u-my#{$infix}-#{$key} {\n margin-top: $value;\n margin-bottom: $value;\n }\n\n .fs-u-p#{$infix}-#{$key} {\n padding: $value;\n }\n\n .fs-u-pt#{$infix}-#{$key} {\n padding-top: $value;\n }\n\n .fs-u-pr#{$infix}-#{$key} {\n padding-right: $value;\n }\n\n .fs-u-pb#{$infix}-#{$key} {\n padding-bottom: $value;\n }\n\n .fs-u-pl#{$infix}-#{$key} {\n padding-left: $value;\n }\n\n .fs-u-px#{$infix}-#{$key} {\n padding-right: $value;\n padding-left: $value;\n }\n\n .fs-u-py#{$infix}-#{$key} {\n padding-top: $value;\n padding-bottom: $value;\n }\n\n // Controla o gutter da grid (--fs-gutter-x/-y), consumido por .row/.row > *.\n .fs-u-g#{$infix}-#{$key} {\n --fs-gutter-x: #{$value};\n --fs-gutter-y: #{$value};\n }\n\n .fs-u-gx#{$infix}-#{$key} {\n --fs-gutter-x: #{$value};\n }\n\n .fs-u-gy#{$infix}-#{$key} {\n --fs-gutter-y: #{$value};\n }\n\n // Gap literal (flex/grid), independente da grid de colunas.\n .fs-u-gap#{$infix}-#{$key} {\n gap: $value;\n }\n\n .fs-u-gap-x#{$infix}-#{$key} {\n column-gap: $value;\n }\n\n .fs-u-gap-y#{$infix}-#{$key} {\n row-gap: $value;\n }\n }\n\n .fs-u-m#{$infix}-auto {\n margin: auto;\n }\n\n .fs-u-mt#{$infix}-auto {\n margin-top: auto;\n }\n\n .fs-u-mr#{$infix}-auto {\n margin-right: auto;\n }\n\n .fs-u-mb#{$infix}-auto {\n margin-bottom: auto;\n }\n\n .fs-u-ml#{$infix}-auto {\n margin-left: auto;\n }\n\n .fs-u-mx#{$infix}-auto {\n margin-right: auto;\n margin-left: auto;\n }\n\n .fs-u-my#{$infix}-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n }\n}\n","$spacers: (\n 0: 0,\n 1: 0.25rem,\n 2: 0.5rem,\n 3: 1rem,\n 4: 1.5rem,\n 5: 3rem\n) !default;\n\n$z-indexes: (\n base: 0,\n dropdown: 1000,\n sticky: 1020,\n modal: 1050,\n offcanvas: 1060,\n notification: 1080,\n toast: 1090,\n tooltip: 1100\n) !default;\n\n$radius-sm: 4px !default;\n$radius-md: 6px !default;\n$radius-lg: 8px !default;\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer utilities {\n .fs-u-text-start {\n text-align: left;\n }\n\n .fs-u-text-center {\n text-align: center;\n }\n\n .fs-u-text-end {\n text-align: right;\n }\n\n .fs-u-text-lowercase {\n text-transform: lowercase;\n }\n\n .fs-u-text-uppercase {\n text-transform: uppercase;\n }\n\n .fs-u-text-capitalize {\n text-transform: capitalize;\n }\n\n .fs-u-text-truncate {\n @include truncate;\n }\n\n .fs-u-fw-regular {\n font-weight: $font-weight-regular;\n }\n\n .fs-u-fw-medium {\n font-weight: $font-weight-medium;\n }\n\n .fs-u-fw-semibold {\n font-weight: $font-weight-semibold;\n }\n\n .fs-u-fw-bold {\n font-weight: $font-weight-bold;\n }\n\n .fs-u-fs-xs {\n font-size: $font-size-xs;\n }\n\n .fs-u-fs-sm {\n font-size: $font-size-sm;\n }\n\n .fs-u-fs-md {\n font-size: $font-size-md;\n }\n\n .fs-u-fs-lg {\n font-size: $font-size-lg;\n }\n\n .fs-u-fs-xl {\n font-size: $font-size-xl;\n }\n\n .fs-u-fs-h1 {\n font-size: $font-size-h1;\n }\n\n .fs-u-fs-h2 {\n font-size: $font-size-h2;\n }\n\n .fs-u-fs-h3 {\n font-size: $font-size-h3;\n }\n\n .fs-u-fs-h4 {\n font-size: $font-size-h4;\n }\n\n .fs-u-fs-h5 {\n font-size: $font-size-h5;\n }\n\n .fs-u-fs-h6 {\n font-size: $font-size-h6;\n }\n\n .fs-u-font-sans {\n font-family: var(--fs-font-sans);\n }\n\n .fs-u-font-mono {\n font-family: var(--fs-font-mono);\n }\n}\n","@layer utilities {\n .fs-u-visible {\n visibility: visible;\n }\n\n .fs-u-invisible {\n visibility: hidden;\n }\n}\n","@use \"sass:color\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n// Theming multi-brand: um `data-fs-brand=\"x\"` sobrescreve só a cor de AÇÃO\n// PRIMÁRIA (--fs-color-primary e os tokens derivados) — secondary/success/\n// warning/danger/info continuam universais entre marcas, porque são\n// semânticos (sucesso é sempre verde, erro sempre vermelho, independente\n// de qual marca está ativa). Composto com `data-theme=\"dark\"` do mesmo\n// jeito que `_dark.scss` faz para a paleta padrão: mistura o primitivo com\n// branco/preto em OKLCH, não recalcula do zero.\n// Limitação conhecida: `.fs-btn-primary`/`.fs-badge-primary` (preenchimento\n// sólido) calculam a cor do texto em tempo de build via `color-contrast()`\n// a partir do primary padrão (azul) — não recalculam por marca. Escolha um\n// primitivo de marca escuro o bastante pro texto branco continuar legível\n// (como o exemplo abaixo), ou sobrescreva `--fs-btn-color`/`--fs-badge-color`\n// manualmente se o primitivo da marca for muito claro. Ver\n// `docs/guides/theming.md#multi-brand`.\n@layer tokens {\n // Marca de exemplo (\"violet\") — mesmo tom usado no exemplo de\n // customização do README, só pra provar que a troca funciona em runtime\n // sem recompilar CSS. Um projeto real substitui/adiciona marcas\n // definindo o próprio primitivo antes de `@use` este arquivo.\n $brand-violet-primary: color.to-space(#6d28d9, oklch) !default;\n\n [data-fs-brand=\"violet\"] {\n --fs-color-primary: #{rgb-fallback($brand-violet-primary)};\n --fs-alert-primary-bg: #{rgb-fallback(tint-color($brand-violet-primary))};\n --fs-alert-primary-text: #{rgb-fallback(shade-color($brand-violet-primary))};\n --fs-feedback-primary-bg: #{rgb-fallback(tint-color($brand-violet-primary))};\n }\n\n [data-fs-brand=\"violet\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"violet\"] {\n --fs-color-primary: #{rgb-fallback(color.mix($brand-violet-primary, $color-white, 95%, $method: oklch))};\n --fs-alert-primary-bg: #{rgb-fallback(color.mix($brand-violet-primary, $color-gray-900, 15%, $method: oklch))};\n --fs-alert-primary-text: #{rgb-fallback(color.mix($brand-violet-primary, $color-white, 55%, $method: oklch))};\n --fs-feedback-primary-bg: #{rgb-fallback(color.mix($brand-violet-primary, $color-gray-900, 15%, $method: oklch))};\n }\n\n @supports (color: oklch(0% 0 0)) {\n [data-fs-brand=\"violet\"] {\n --fs-color-primary: #{$brand-violet-primary};\n --fs-alert-primary-bg: #{tint-color($brand-violet-primary)};\n --fs-alert-primary-text: #{shade-color($brand-violet-primary)};\n --fs-feedback-primary-bg: #{tint-color($brand-violet-primary)};\n }\n\n [data-fs-brand=\"violet\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"violet\"] {\n --fs-color-primary: #{color.mix($brand-violet-primary, $color-white, 95%, $method: oklch)};\n --fs-alert-primary-bg: #{color.mix($brand-violet-primary, $color-gray-900, 15%, $method: oklch)};\n --fs-alert-primary-text: #{color.mix($brand-violet-primary, $color-white, 55%, $method: oklch)};\n --fs-feedback-primary-bg: #{color.mix($brand-violet-primary, $color-gray-900, 15%, $method: oklch)};\n }\n }\n\n // Preset \"corporate\" — azul-marinho/steel blue, tom sóbrio para\n // aplicações internas/B2B. Mesma técnica de mistura OKLCH acima.\n $brand-corporate-primary: color.to-space(#1d4e89, oklch) !default;\n\n [data-fs-brand=\"corporate\"] {\n --fs-color-primary: #{rgb-fallback($brand-corporate-primary)};\n --fs-alert-primary-bg: #{rgb-fallback(tint-color($brand-corporate-primary))};\n --fs-alert-primary-text: #{rgb-fallback(shade-color($brand-corporate-primary))};\n --fs-feedback-primary-bg: #{rgb-fallback(tint-color($brand-corporate-primary))};\n }\n\n [data-fs-brand=\"corporate\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"corporate\"] {\n --fs-color-primary: #{rgb-fallback(color.mix($brand-corporate-primary, $color-white, 95%, $method: oklch))};\n --fs-alert-primary-bg: #{rgb-fallback(color.mix($brand-corporate-primary, $color-gray-900, 15%, $method: oklch))};\n --fs-alert-primary-text: #{rgb-fallback(color.mix($brand-corporate-primary, $color-white, 55%, $method: oklch))};\n --fs-feedback-primary-bg: #{rgb-fallback(color.mix($brand-corporate-primary, $color-gray-900, 15%, $method: oklch))};\n }\n\n // Preset \"vibrant\" — laranja energético, tom para produtos de consumo/\n // marketing que queiram uma ação primária mais chamativa.\n $brand-vibrant-primary: color.to-space(#f2542d, oklch) !default;\n\n [data-fs-brand=\"vibrant\"] {\n --fs-color-primary: #{rgb-fallback($brand-vibrant-primary)};\n --fs-alert-primary-bg: #{rgb-fallback(tint-color($brand-vibrant-primary))};\n --fs-alert-primary-text: #{rgb-fallback(shade-color($brand-vibrant-primary))};\n --fs-feedback-primary-bg: #{rgb-fallback(tint-color($brand-vibrant-primary))};\n }\n\n [data-fs-brand=\"vibrant\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"vibrant\"] {\n --fs-color-primary: #{rgb-fallback(color.mix($brand-vibrant-primary, $color-white, 95%, $method: oklch))};\n --fs-alert-primary-bg: #{rgb-fallback(color.mix($brand-vibrant-primary, $color-gray-900, 15%, $method: oklch))};\n --fs-alert-primary-text: #{rgb-fallback(color.mix($brand-vibrant-primary, $color-white, 55%, $method: oklch))};\n --fs-feedback-primary-bg: #{rgb-fallback(color.mix($brand-vibrant-primary, $color-gray-900, 15%, $method: oklch))};\n }\n\n @supports (color: oklch(0% 0 0)) {\n [data-fs-brand=\"corporate\"] {\n --fs-color-primary: #{$brand-corporate-primary};\n --fs-alert-primary-bg: #{tint-color($brand-corporate-primary)};\n --fs-alert-primary-text: #{shade-color($brand-corporate-primary)};\n --fs-feedback-primary-bg: #{tint-color($brand-corporate-primary)};\n }\n\n [data-fs-brand=\"corporate\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"corporate\"] {\n --fs-color-primary: #{color.mix($brand-corporate-primary, $color-white, 95%, $method: oklch)};\n --fs-alert-primary-bg: #{color.mix($brand-corporate-primary, $color-gray-900, 15%, $method: oklch)};\n --fs-alert-primary-text: #{color.mix($brand-corporate-primary, $color-white, 55%, $method: oklch)};\n --fs-feedback-primary-bg: #{color.mix($brand-corporate-primary, $color-gray-900, 15%, $method: oklch)};\n }\n\n [data-fs-brand=\"vibrant\"] {\n --fs-color-primary: #{$brand-vibrant-primary};\n --fs-alert-primary-bg: #{tint-color($brand-vibrant-primary)};\n --fs-alert-primary-text: #{shade-color($brand-vibrant-primary)};\n --fs-feedback-primary-bg: #{tint-color($brand-vibrant-primary)};\n }\n\n [data-fs-brand=\"vibrant\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"vibrant\"] {\n --fs-color-primary: #{color.mix($brand-vibrant-primary, $color-white, 95%, $method: oklch)};\n --fs-alert-primary-bg: #{color.mix($brand-vibrant-primary, $color-gray-900, 15%, $method: oklch)};\n --fs-alert-primary-text: #{color.mix($brand-vibrant-primary, $color-white, 55%, $method: oklch)};\n --fs-feedback-primary-bg: #{color.mix($brand-vibrant-primary, $color-gray-900, 15%, $method: oklch)};\n }\n }\n}\n\n// Ao contrário de violet/corporate, o primitivo \"vibrant\" (laranja) é claro\n// o bastante pra o texto branco padrão de `.fs-btn-primary`/`.fs-badge-primary`\n// (calculado em tempo de build a partir do primary PADRÃO, não do de marca —\n// ver nota no topo do arquivo) cair abaixo de 4.5:1 — exatamente o caso que\n// a mitigação documentada em docs/guides/theming.md#multi-brand cobre.\n// Precisa estar em `@layer overrides` (a camada de maior prioridade — ver\n// `tokens/_root.scss`): `.fs-btn-primary`/`.fs-badge-primary` setam\n// `--fs-btn-color`/`--fs-badge-color` no próprio elemento dentro de\n// `@layer components`, e cascade layers ignoram especificidade — um\n// seletor mais específico em `@layer tokens` (onde vivem os blocos acima)\n// perderia mesmo assim.\n@layer overrides {\n [data-fs-brand=\"vibrant\"] .fs-btn-primary,\n [data-fs-brand=\"vibrant\"] .fs-badge-primary {\n --fs-btn-color: #{$color-black};\n --fs-badge-color: #{$color-black};\n }\n\n [data-fs-brand=\"vibrant\"] .fs-check {\n --fs-check-mark: #{$color-black};\n }\n}\n","@use \"sass:color\";\n@use \"sass:map\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n// Peso (% da cor original mantida, ver color.mix()) de cada cor de estado no\n// tema escuro. O limite de cada uma é o quanto dá pra clarear em direção ao\n// branco antes de virar o texto branco/preto que color-contrast() já\n// pré-calculou para os preenchimentos sólidos (botões, badges) no tema claro\n// — passar do limite deixaria esse texto ilegível. `primary` e `danger` têm\n// texto branco no preenchimento, então clareiam pouco (clarear reduz o\n// contraste com o branco); `info` não tem margem e fica sem alteração (100%).\n// Misturas em `$method: oklch` (ver tools/_mixins.scss) — recalibrado e\n// revalidado com `npm run contrast` após a migração para OKLCH.\n@layer tokens {\n $dark-color-weights: (\n primary: 95%,\n secondary: 90%,\n success: 65%,\n warning: 65%,\n danger: 95%,\n info: 100%\n ) !default;\n\n $dark-text: color.to-space(#f1f3f4, oklch) !default;\n $dark-muted: color.to-space(#bdc1c6, oklch) !default;\n $dark-border: color.to-space(#3c4043, oklch) !default;\n $dark-surface: color.to-space(#202124, oklch) !default;\n $dark-subtle: color.to-space(#2b2c2f, oklch) !default;\n\n // Pesos de alert/feedback bg+text no escuro: validados por\n // `npm run contrast` para ≥4.5:1 (texto normal) em todas as 6 cores —\n // não abaixe sem reconferir o relatório.\n $dark-alert-bg-weight: 15%;\n $dark-alert-text-weight: 55%;\n\n [data-theme=\"dark\"] {\n --fs-color-text: #{rgb-fallback($dark-text)};\n --fs-color-muted: #{rgb-fallback($dark-muted)};\n --fs-color-border: #{rgb-fallback($dark-border)};\n --fs-color-surface: #{rgb-fallback($dark-surface)};\n --fs-color-subtle: #{rgb-fallback($dark-subtle)};\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n --fs-shadow-sm: 0 1px 3px rgb(0 0 0 / 50%), 0 1px 2px rgb(0 0 0 / 40%);\n --fs-shadow-md: 0 6px 12px rgb(0 0 0 / 55%), 0 3px 6px rgb(0 0 0 / 45%);\n --fs-shadow-lg: 0 15px 30px rgb(0 0 0 / 60%), 0 6px 12px rgb(0 0 0 / 50%);\n --fs-tooltip-bg: #{rgb-fallback($color-gray-100)};\n --fs-tooltip-text: #{rgb-fallback($color-gray-900)};\n\n @each $name, $color in $theme-colors {\n --fs-color-#{$name}: #{rgb-fallback(color.mix($color, $color-white, map.get($dark-color-weights, $name), $method: oklch))};\n --fs-alert-#{$name}-bg: #{rgb-fallback(color.mix($color, $color-gray-900, $dark-alert-bg-weight, $method: oklch))};\n --fs-alert-#{$name}-text: #{rgb-fallback(color.mix($color, $color-white, $dark-alert-text-weight, $method: oklch))};\n --fs-feedback-#{$name}-bg: #{rgb-fallback(color.mix($color, $color-gray-900, $dark-alert-bg-weight, $method: oklch))};\n }\n }\n\n @supports (color: oklch(0% 0 0)) {\n [data-theme=\"dark\"] {\n --fs-color-text: #{$dark-text};\n --fs-color-muted: #{$dark-muted};\n --fs-color-border: #{$dark-border};\n --fs-color-surface: #{$dark-surface};\n --fs-color-subtle: #{$dark-subtle};\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n --fs-tooltip-bg: #{$color-gray-100};\n --fs-tooltip-text: #{$color-gray-900};\n\n @each $name, $color in $theme-colors {\n --fs-color-#{$name}: #{color.mix($color, $color-white, map.get($dark-color-weights, $name), $method: oklch)};\n --fs-alert-#{$name}-bg: #{color.mix($color, $color-gray-900, $dark-alert-bg-weight, $method: oklch)};\n --fs-alert-#{$name}-text: #{color.mix($color, $color-white, $dark-alert-text-weight, $method: oklch)};\n --fs-feedback-#{$name}-bg: #{color.mix($color, $color-gray-900, $dark-alert-bg-weight, $method: oklch)};\n }\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../../scss/fokus.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/tokens/_root.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/tokens/_semantic.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/tokens/_charts.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/base/_reset.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/base/_typography.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/base/_motion.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/base/_accessibility.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_cluster.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_containers.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/tools/_mixins.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/settings/_breakpoints.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_grid.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_sidebar.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/layout/_stack.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/forms/_forms.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/settings/_typography.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/forms/_check-radio-switch.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/forms/_range.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/forms/_file-upload-advanced.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_buttons.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_cards.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_alerts.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_badges.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tables.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_navbar.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_combobox.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_datepicker.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_datatable.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_command-palette.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tree-view.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_dropdown.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_modal.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_alert-dialog.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_divider.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_empty-state.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_rating.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tag.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_offcanvas.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_accordion.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tabs.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tooltips.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_popover.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_toasts.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_pagination.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_breadcrumbs.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_spinner.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_carousel.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_stepper.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_segmented-control.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_skeleton.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_timeline.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_collapse.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_notification-center.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_nested-menu.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_tile.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_avatar.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_button-group.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_close-button.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_list-group.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_code.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_ratio.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_icon-link.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_placeholder.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_progress.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_scrollspy.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_container-queries.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_display.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_flex.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_icon.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_position.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_print.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_shadow.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_spacing.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/settings/_spacing.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_typography.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_visibility.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_states.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-utilities/scss/utilities/_api.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/themes/_brands.scss","file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-core/scss/themes/_dark.scss"],"names":[],"mappings":"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oEnnLE;MACE,mBAAA;IpEqnLJ;IoElnLE;MACE,qBAAA;IpEonLJ;IoEjnLE;MACE,2BAAA;IpEmnLJ;IoEhnLE;MACE,uBAAA;IpEknLJ;IoE/mLE;MACE,yBAAA;IpEinLJ;IoE9mLE;MACE,6BAAA;IpEgnLJ;IoE7mLE;MACE,8BAAA;IpE+mLJ;IoE5mLE;MACE,sBAAA;IpE8mLJ;IoE3mLE;MACE,kBAAA;IpE6mLJ;IoE1mLE;MACE,oBAAA;IpE4mLJ;EACF;EUvoLE;I0DfE;MACE,uBAAA;IpEypLJ;IoEtpLE;MACE,mBAAA;IpEwpLJ;IoErpLE;MACE,qBAAA;IpEupLJ;IoEppLE;MACE,2BAAA;IpEspLJ;IoEnpLE;MACE,uBAAA;IpEqpLJ;IoElpLE;MACE,yBAAA;IpEopLJ;IoEjpLE;MACE,6BAAA;IpEmpLJ;IoEhpLE;MACE,8BAAA;IpEkpLJ;IoE/oLE;MACE,sBAAA;IpEipLJ;IoE9oLE;MACE,kBAAA;IpEgpLJ;IoE7oLE;MACE,oBAAA;IpE+oLJ;EACF;EU1qLE;I0DfE;MACE,uBAAA;IpE4rLJ;IoEzrLE;MACE,mBAAA;IpE2rLJ;IoExrLE;MACE,qBAAA;IpE0rLJ;IoEvrLE;MACE,2BAAA;IpEyrLJ;IoEtrLE;MACE,uBAAA;IpEwrLJ;IoErrLE;MACE,yBAAA;IpEurLJ;IoEprLE;MACE,6BAAA;IpEsrLJ;IoEnrLE;MACE,8BAAA;IpEqrLJ;IoElrLE;MACE,sBAAA;IpEorLJ;IoEjrLE;MACE,kBAAA;IpEmrLJ;IoEhrLE;MACE,oBAAA;IpEkrLJ;EACF;EU7sLE;I0DfE;MACE,uBAAA;IpE+tLJ;IoE5tLE;MACE,mBAAA;IpE8tLJ;IoE3tLE;MACE,qBAAA;IpE6tLJ;IoE1tLE;MACE,2BAAA;IpE4tLJ;IoEztLE;MACE,uBAAA;IpE2tLJ;IoExtLE;MACE,yBAAA;IpE0tLJ;IoEvtLE;MACE,6BAAA;IpEytLJ;IoEttLE;MACE,8BAAA;IpEwtLJ;IoErtLE;MACE,sBAAA;IpEutLJ;IoEptLE;MACE,kBAAA;IpEstLJ;IoEntLE;MACE,oBAAA;IpEqtLJ;EACF;EUhvLE;I0DfE;MACE,uBAAA;IpEkwLJ;IoE/vLE;MACE,mBAAA;IpEiwLJ;IoE9vLE;MACE,qBAAA;IpEgwLJ;IoE7vLE;MACE,2BAAA;IpE+vLJ;IoE5vLE;MACE,uBAAA;IpE8vLJ;IoE3vLE;MACE,yBAAA;IpE6vLJ;IoE1vLE;MACE,6BAAA;IpE4vLJ;IoEzvLE;MACE,8BAAA;IpE2vLJ;IoExvLE;MACE,sBAAA;IpE0vLJ;IoEvvLE;MACE,kBAAA;IpEyvLJ;IoEtvLE;MACE,oBAAA;IpEwvLJ;EACF;AACF;AqElyLA;EACE;IACE,qBAAA;IACA,cAAA;IACA,UAAA;IACA,WAAA;IACA,wBAAA;IACA,oBAAA;ErEoyLF;EqEjyLA;IACE,WAAA;IACA,YAAA;ErEmyLF;EqEhyLA;IACE,WAAA;IACA,YAAA;ErEkyLF;EqE/xLA;IACE,WAAA;IACA,YAAA;ErEiyLF;EqE9xLA;IACE,WAAA;IACA,YAAA;ErEgyLF;AACF;AsEl0LA;EACE;IACE,gBAAA;IACA,4BAAA;IACA,aAAA;EtEo0LF;EsEj0LA;IACE,gBAAA;IACA,kCAAA;IACA,aAAA;EtEm0LF;AACF;AuEj1LA;EACE;IACE;MACE,wBAAA;IvEm1LF;EACF;EuEh1LA;IACE;MACE,wBAAA;IvEk1LF;EACF;EuE/0LA;IACE;MACE,yBAAA;IvEi1LF;IuE90LA;MACE,0BAAA;IvEg1LF;IuE70LA;MACE,gCAAA;IvE+0LF;EACF;AACF;AwEx2LA;EACE;IACE,+BAAA;ExE02LF;EwEv2LA;IACE,+BAAA;ExEy2LF;EwEt2LA;IACE,+BAAA;ExEw2LF;AACF;AyEh3LA;EAMQ;IACE,SCVA;E1Eu3LR;EyE12LM;IACE,aCdA;E1E03LR;EyEz2LM;IACE,eClBA;E1E63LR;EyEx2LM;IACE,gBCtBA;E1Eg4LR;EyEv2LM;IACE,cC1BA;E1Em4LR;EyEt2LM;IACE,eC9BA;ID+BA,cC/BA;E1Eu4LR;EyEr2LM;IACE,aCnCA;IDoCA,gBCpCA;E1E24LR;EyEp2LM;IACE,UCxCA;E1E84LR;EyEn2LM;IACE,cC5CA;E1Ei5LR;EyEl2LM;IACE,gBChDA;E1Eo5LR;EyEj2LM;IACE,iBCpDA;E1Eu5LR;EyEh2LM;IACE,eCxDA;E1E05LR;EyE/1LM;IACE,gBC5DA;ID6DA,eC7DA;E1E85LR;EyE91LM;IACE,cCjEA;IDkEA,iBClEA;E1Ek6LR;EyE51LM;IACE,gBAAA;IACA,gBAAA;EzE81LR;EyE31LM;IACE,gBAAA;EzE61LR;EyE11LM;IACE,gBAAA;EzE41LR;EyEx1LM;IACE,MCrFA;E1E+6LR;EyEv1LM;IACE,aCzFA;E1Ek7LR;EyEt1LM;IACE,UC7FA;E1Eq7LR;EyE56LM;IACE,eCVA;E1Ew7LR;EyE36LM;IACE,mBCdA;E1E27LR;EyE16LM;IACE,qBClBA;E1E87LR;EyEz6LM;IACE,sBCtBA;E1Ei8LR;EyEx6LM;IACE,oBC1BA;E1Eo8LR;EyEv6LM;IACE,qBC9BA;ID+BA,oBC/BA;E1Ew8LR;EyEt6LM;IACE,mBCnCA;IDoCA,sBCpCA;E1E48LR;EyEr6LM;IACE,gBCxCA;E1E+8LR;EyEp6LM;IACE,oBC5CA;E1Ek9LR;EyEn6LM;IACE,sBChDA;E1Eq9LR;EyEl6LM;IACE,uBCpDA;E1Ew9LR;EyEj6LM;IACE,qBCxDA;E1E29LR;EyEh6LM;IACE,sBC5DA;ID6DA,qBC7DA;E1E+9LR;EyE/5LM;IACE,oBCjEA;IDkEA,uBClEA;E1Em+LR;EyE75LM;IACE,sBAAA;IACA,sBAAA;EzE+5LR;EyE55LM;IACE,sBAAA;EzE85LR;EyE35LM;IACE,sBAAA;EzE65LR;EyEz5LM;IACE,YCrFA;E1Eg/LR;EyEx5LM;IACE,mBCzFA;E1Em/LR;EyEv5LM;IACE,gBC7FA;E1Es/LR;EyE7+LM;IACE,cCVA;E1Ey/LR;EyE5+LM;IACE,kBCdA;E1E4/LR;EyE3+LM;IACE,oBClBA;E1E+/LR;EyE1+LM;IACE,qBCtBA;E1EkgMR;EyEz+LM;IACE,mBC1BA;E1EqgMR;EyEx+LM;IACE,oBC9BA;ID+BA,mBC/BA;E1EygMR;EyEv+LM;IACE,kBCnCA;IDoCA,qBCpCA;E1E6gMR;EyEt+LM;IACE,eCxCA;E1EghMR;EyEr+LM;IACE,mBC5CA;E1EmhMR;EyEp+LM;IACE,qBChDA;E1EshMR;EyEn+LM;IACE,sBCpDA;E1EyhMR;EyEl+LM;IACE,oBCxDA;E1E4hMR;EyEj+LM;IACE,qBC5DA;ID6DA,oBC7DA;E1EgiMR;EyEh+LM;IACE,mBCjEA;IDkEA,sBClEA;E1EoiMR;EyE99LM;IACE,qBAAA;IACA,qBAAA;EzEg+LR;EyE79LM;IACE,qBAAA;EzE+9LR;EyE59LM;IACE,qBAAA;EzE89LR;EyE19LM;IACE,WCrFA;E1EijMR;EyEz9LM;IACE,kBCzFA;E1EojMR;EyEx9LM;IACE,eC7FA;E1EujMR;EyE9iMM;IACE,YCVA;E1E0jMR;EyE7iMM;IACE,gBCdA;E1E6jMR;EyE5iMM;IACE,kBClBA;E1EgkMR;EyE3iMM;IACE,mBCtBA;E1EmkMR;EyE1iMM;IACE,iBC1BA;E1EskMR;EyEziMM;IACE,kBC9BA;ID+BA,iBC/BA;E1E0kMR;EyExiMM;IACE,gBCnCA;IDoCA,mBCpCA;E1E8kMR;EyEviMM;IACE,aCxCA;E1EilMR;EyEtiMM;IACE,iBC5CA;E1EolMR;EyEriMM;IACE,mBChDA;E1EulMR;EyEpiMM;IACE,oBCpDA;E1E0lMR;EyEniMM;IACE,kBCxDA;E1E6lMR;EyEliMM;IACE,mBC5DA;ID6DA,kBC7DA;E1EimMR;EyEjiMM;IACE,iBCjEA;IDkEA,oBClEA;E1EqmMR;EyE/hMM;IACE,mBAAA;IACA,mBAAA;EzEiiMR;EyE9hMM;IACE,mBAAA;EzEgiMR;EyE7hMM;IACE,mBAAA;EzE+hMR;EyE3hMM;IACE,SCrFA;E1EknMR;EyE1hMM;IACE,gBCzFA;E1EqnMR;EyEzhMM;IACE,aC7FA;E1EwnMR;EyE/mMM;IACE,cCVA;E1E2nMR;EyE9mMM;IACE,kBCdA;E1E8nMR;EyE7mMM;IACE,oBClBA;E1EioMR;EyE5mMM;IACE,qBCtBA;E1EooMR;EyE3mMM;IACE,mBC1BA;E1EuoMR;EyE1mMM;IACE,oBC9BA;ID+BA,mBC/BA;E1E2oMR;EyEzmMM;IACE,kBCnCA;IDoCA,qBCpCA;E1E+oMR;EyExmMM;IACE,eCxCA;E1EkpMR;EyEvmMM;IACE,mBC5CA;E1EqpMR;EyEtmMM;IACE,qBChDA;E1EwpMR;EyErmMM;IACE,sBCpDA;E1E2pMR;EyEpmMM;IACE,oBCxDA;E1E8pMR;EyEnmMM;IACE,qBC5DA;ID6DA,oBC7DA;E1EkqMR;EyElmMM;IACE,mBCjEA;IDkEA,sBClEA;E1EsqMR;EyEhmMM;IACE,qBAAA;IACA,qBAAA;EzEkmMR;EyE/lMM;IACE,qBAAA;EzEimMR;EyE9lMM;IACE,qBAAA;EzEgmMR;EyE5lMM;IACE,WCrFA;E1EmrMR;EyE3lMM;IACE,kBCzFA;E1EsrMR;EyE1lMM;IACE,eC7FA;E1EyrMR;EyEhrMM;IACE,YCVA;E1E4rMR;EyE/qMM;IACE,gBCdA;E1E+rMR;EyE9qMM;IACE,kBClBA;E1EksMR;EyE7qMM;IACE,mBCtBA;E1EqsMR;EyE5qMM;IACE,iBC1BA;E1EwsMR;EyE3qMM;IACE,kBC9BA;ID+BA,iBC/BA;E1E4sMR;EyE1qMM;IACE,gBCnCA;IDoCA,mBCpCA;E1EgtMR;EyEzqMM;IACE,aCxCA;E1EmtMR;EyExqMM;IACE,iBC5CA;E1EstMR;EyEvqMM;IACE,mBChDA;E1EytMR;EyEtqMM;IACE,oBCpDA;E1E4tMR;EyErqMM;IACE,kBCxDA;E1E+tMR;EyEpqMM;IACE,mBC5DA;ID6DA,kBC7DA;E1EmuMR;EyEnqMM;IACE,iBCjEA;IDkEA,oBClEA;E1EuuMR;EyEjqMM;IACE,mBAAA;IACA,mBAAA;EzEmqMR;EyEhqMM;IACE,mBAAA;EzEkqMR;EyE/pMM;IACE,mBAAA;EzEiqMR;EyE7pMM;IACE,SCrFA;E1EovMR;EyE5pMM;IACE,gBCzFA;E1EuvMR;EyE3pMM;IACE,aC7FA;E1E0vMR;EyEzpMI;IACE,YAAA;EzE2pMN;EyExpMI;IACE,gBAAA;EzE0pMN;EyEvpMI;IACE,kBAAA;EzEypMN;EyEtpMI;IACE,mBAAA;EzEwpMN;EyErpMI;IACE,iBAAA;EzEupMN;EyEppMI;IACE,kBAAA;IACA,iBAAA;EzEspMN;EyEnpMI;IACE,gBAAA;IACA,mBAAA;EzEqpMN;EU1vME;I+DdI;MACE,SCVA;I1EqxMN;IyExwMI;MACE,aCdA;I1EwxMN;IyEvwMI;MACE,eClBA;I1E2xMN;IyEtwMI;MACE,gBCtBA;I1E8xMN;IyErwMI;MACE,cC1BA;I1EiyMN;IyEpwMI;MACE,eC9BA;MD+BA,cC/BA;I1EqyMN;IyEnwMI;MACE,aCnCA;MDoCA,gBCpCA;I1EyyMN;IyElwMI;MACE,UCxCA;I1E4yMN;IyEjwMI;MACE,cC5CA;I1E+yMN;IyEhwMI;MACE,gBChDA;I1EkzMN;IyE/vMI;MACE,iBCpDA;I1EqzMN;IyE9vMI;MACE,eCxDA;I1EwzMN;IyE7vMI;MACE,gBC5DA;MD6DA,eC7DA;I1E4zMN;IyE5vMI;MACE,cCjEA;MDkEA,iBClEA;I1Eg0MN;IyE1vMI;MACE,gBAAA;MACA,gBAAA;IzE4vMN;IyEzvMI;MACE,gBAAA;IzE2vMN;IyExvMI;MACE,gBAAA;IzE0vMN;IyEtvMI;MACE,MCrFA;I1E60MN;IyErvMI;MACE,aCzFA;I1Eg1MN;IyEpvMI;MACE,UC7FA;I1Em1MN;IyE10MI;MACE,eCVA;I1Es1MN;IyEz0MI;MACE,mBCdA;I1Ey1MN;IyEx0MI;MACE,qBClBA;I1E41MN;IyEv0MI;MACE,sBCtBA;I1E+1MN;IyEt0MI;MACE,oBC1BA;I1Ek2MN;IyEr0MI;MACE,qBC9BA;MD+BA,oBC/BA;I1Es2MN;IyEp0MI;MACE,mBCnCA;MDoCA,sBCpCA;I1E02MN;IyEn0MI;MACE,gBCxCA;I1E62MN;IyEl0MI;MACE,oBC5CA;I1Eg3MN;IyEj0MI;MACE,sBChDA;I1Em3MN;IyEh0MI;MACE,uBCpDA;I1Es3MN;IyE/zMI;MACE,qBCxDA;I1Ey3MN;IyE9zMI;MACE,sBC5DA;MD6DA,qBC7DA;I1E63MN;IyE7zMI;MACE,oBCjEA;MDkEA,uBClEA;I1Ei4MN;IyE3zMI;MACE,sBAAA;MACA,sBAAA;IzE6zMN;IyE1zMI;MACE,sBAAA;IzE4zMN;IyEzzMI;MACE,sBAAA;IzE2zMN;IyEvzMI;MACE,YCrFA;I1E84MN;IyEtzMI;MACE,mBCzFA;I1Ei5MN;IyErzMI;MACE,gBC7FA;I1Eo5MN;IyE34MI;MACE,cCVA;I1Eu5MN;IyE14MI;MACE,kBCdA;I1E05MN;IyEz4MI;MACE,oBClBA;I1E65MN;IyEx4MI;MACE,qBCtBA;I1Eg6MN;IyEv4MI;MACE,mBC1BA;I1Em6MN;IyEt4MI;MACE,oBC9BA;MD+BA,mBC/BA;I1Eu6MN;IyEr4MI;MACE,kBCnCA;MDoCA,qBCpCA;I1E26MN;IyEp4MI;MACE,eCxCA;I1E86MN;IyEn4MI;MACE,mBC5CA;I1Ei7MN;IyEl4MI;MACE,qBChDA;I1Eo7MN;IyEj4MI;MACE,sBCpDA;I1Eu7MN;IyEh4MI;MACE,oBCxDA;I1E07MN;IyE/3MI;MACE,qBC5DA;MD6DA,oBC7DA;I1E87MN;IyE93MI;MACE,mBCjEA;MDkEA,sBClEA;I1Ek8MN;IyE53MI;MACE,qBAAA;MACA,qBAAA;IzE83MN;IyE33MI;MACE,qBAAA;IzE63MN;IyE13MI;MACE,qBAAA;IzE43MN;IyEx3MI;MACE,WCrFA;I1E+8MN;IyEv3MI;MACE,kBCzFA;I1Ek9MN;IyEt3MI;MACE,eC7FA;I1Eq9MN;IyE58MI;MACE,YCVA;I1Ew9MN;IyE38MI;MACE,gBCdA;I1E29MN;IyE18MI;MACE,kBClBA;I1E89MN;IyEz8MI;MACE,mBCtBA;I1Ei+MN;IyEx8MI;MACE,iBC1BA;I1Eo+MN;IyEv8MI;MACE,kBC9BA;MD+BA,iBC/BA;I1Ew+MN;IyEt8MI;MACE,gBCnCA;MDoCA,mBCpCA;I1E4+MN;IyEr8MI;MACE,aCxCA;I1E++MN;IyEp8MI;MACE,iBC5CA;I1Ek/MN;IyEn8MI;MACE,mBChDA;I1Eq/MN;IyEl8MI;MACE,oBCpDA;I1Ew/MN;IyEj8MI;MACE,kBCxDA;I1E2/MN;IyEh8MI;MACE,mBC5DA;MD6DA,kBC7DA;I1E+/MN;IyE/7MI;MACE,iBCjEA;MDkEA,oBClEA;I1EmgNN;IyE77MI;MACE,mBAAA;MACA,mBAAA;IzE+7MN;IyE57MI;MACE,mBAAA;IzE87MN;IyE37MI;MACE,mBAAA;IzE67MN;IyEz7MI;MACE,SCrFA;I1EghNN;IyEx7MI;MACE,gBCzFA;I1EmhNN;IyEv7MI;MACE,aC7FA;I1EshNN;IyE7gNI;MACE,cCVA;I1EyhNN;IyE5gNI;MACE,kBCdA;I1E4hNN;IyE3gNI;MACE,oBClBA;I1E+hNN;IyE1gNI;MACE,qBCtBA;I1EkiNN;IyEzgNI;MACE,mBC1BA;I1EqiNN;IyExgNI;MACE,oBC9BA;MD+BA,mBC/BA;I1EyiNN;IyEvgNI;MACE,kBCnCA;MDoCA,qBCpCA;I1E6iNN;IyEtgNI;MACE,eCxCA;I1EgjNN;IyErgNI;MACE,mBC5CA;I1EmjNN;IyEpgNI;MACE,qBChDA;I1EsjNN;IyEngNI;MACE,sBCpDA;I1EyjNN;IyElgNI;MACE,oBCxDA;I1E4jNN;IyEjgNI;MACE,qBC5DA;MD6DA,oBC7DA;I1EgkNN;IyEhgNI;MACE,mBCjEA;MDkEA,sBClEA;I1EokNN;IyE9/MI;MACE,qBAAA;MACA,qBAAA;IzEggNN;IyE7/MI;MACE,qBAAA;IzE+/MN;IyE5/MI;MACE,qBAAA;IzE8/MN;IyE1/MI;MACE,WCrFA;I1EilNN;IyEz/MI;MACE,kBCzFA;I1EolNN;IyEx/MI;MACE,eC7FA;I1EulNN;IyE9kNI;MACE,YCVA;I1E0lNN;IyE7kNI;MACE,gBCdA;I1E6lNN;IyE5kNI;MACE,kBClBA;I1EgmNN;IyE3kNI;MACE,mBCtBA;I1EmmNN;IyE1kNI;MACE,iBC1BA;I1EsmNN;IyEzkNI;MACE,kBC9BA;MD+BA,iBC/BA;I1E0mNN;IyExkNI;MACE,gBCnCA;MDoCA,mBCpCA;I1E8mNN;IyEvkNI;MACE,aCxCA;I1EinNN;IyEtkNI;MACE,iBC5CA;I1EonNN;IyErkNI;MACE,mBChDA;I1EunNN;IyEpkNI;MACE,oBCpDA;I1E0nNN;IyEnkNI;MACE,kBCxDA;I1E6nNN;IyElkNI;MACE,mBC5DA;MD6DA,kBC7DA;I1EioNN;IyEjkNI;MACE,iBCjEA;MDkEA,oBClEA;I1EqoNN;IyE/jNI;MACE,mBAAA;MACA,mBAAA;IzEikNN;IyE9jNI;MACE,mBAAA;IzEgkNN;IyE7jNI;MACE,mBAAA;IzE+jNN;IyE3jNI;MACE,SCrFA;I1EkpNN;IyE1jNI;MACE,gBCzFA;I1EqpNN;IyEzjNI;MACE,aC7FA;I1EwpNN;IyEvjNE;MACE,YAAA;IzEyjNJ;IyEtjNE;MACE,gBAAA;IzEwjNJ;IyErjNE;MACE,kBAAA;IzEujNJ;IyEpjNE;MACE,mBAAA;IzEsjNJ;IyEnjNE;MACE,iBAAA;IzEqjNJ;IyEljNE;MACE,kBAAA;MACA,iBAAA;IzEojNJ;IyEjjNE;MACE,gBAAA;MACA,mBAAA;IzEmjNJ;EACF;EUzpNE;I+DdI;MACE,SCVA;I1EorNN;IyEvqNI;MACE,aCdA;I1EurNN;IyEtqNI;MACE,eClBA;I1E0rNN;IyErqNI;MACE,gBCtBA;I1E6rNN;IyEpqNI;MACE,cC1BA;I1EgsNN;IyEnqNI;MACE,eC9BA;MD+BA,cC/BA;I1EosNN;IyElqNI;MACE,aCnCA;MDoCA,gBCpCA;I1EwsNN;IyEjqNI;MACE,UCxCA;I1E2sNN;IyEhqNI;MACE,cC5CA;I1E8sNN;IyE/pNI;MACE,gBChDA;I1EitNN;IyE9pNI;MACE,iBCpDA;I1EotNN;IyE7pNI;MACE,eCxDA;I1EutNN;IyE5pNI;MACE,gBC5DA;MD6DA,eC7DA;I1E2tNN;IyE3pNI;MACE,cCjEA;MDkEA,iBClEA;I1E+tNN;IyEzpNI;MACE,gBAAA;MACA,gBAAA;IzE2pNN;IyExpNI;MACE,gBAAA;IzE0pNN;IyEvpNI;MACE,gBAAA;IzEypNN;IyErpNI;MACE,MCrFA;I1E4uNN;IyEppNI;MACE,aCzFA;I1E+uNN;IyEnpNI;MACE,UC7FA;I1EkvNN;IyEzuNI;MACE,eCVA;I1EqvNN;IyExuNI;MACE,mBCdA;I1EwvNN;IyEvuNI;MACE,qBClBA;I1E2vNN;IyEtuNI;MACE,sBCtBA;I1E8vNN;IyEruNI;MACE,oBC1BA;I1EiwNN;IyEpuNI;MACE,qBC9BA;MD+BA,oBC/BA;I1EqwNN;IyEnuNI;MACE,mBCnCA;MDoCA,sBCpCA;I1EywNN;IyEluNI;MACE,gBCxCA;I1E4wNN;IyEjuNI;MACE,oBC5CA;I1E+wNN;IyEhuNI;MACE,sBChDA;I1EkxNN;IyE/tNI;MACE,uBCpDA;I1EqxNN;IyE9tNI;MACE,qBCxDA;I1EwxNN;IyE7tNI;MACE,sBC5DA;MD6DA,qBC7DA;I1E4xNN;IyE5tNI;MACE,oBCjEA;MDkEA,uBClEA;I1EgyNN;IyE1tNI;MACE,sBAAA;MACA,sBAAA;IzE4tNN;IyEztNI;MACE,sBAAA;IzE2tNN;IyExtNI;MACE,sBAAA;IzE0tNN;IyEttNI;MACE,YCrFA;I1E6yNN;IyErtNI;MACE,mBCzFA;I1EgzNN;IyEptNI;MACE,gBC7FA;I1EmzNN;IyE1yNI;MACE,cCVA;I1EszNN;IyEzyNI;MACE,kBCdA;I1EyzNN;IyExyNI;MACE,oBClBA;I1E4zNN;IyEvyNI;MACE,qBCtBA;I1E+zNN;IyEtyNI;MACE,mBC1BA;I1Ek0NN;IyEryNI;MACE,oBC9BA;MD+BA,mBC/BA;I1Es0NN;IyEpyNI;MACE,kBCnCA;MDoCA,qBCpCA;I1E00NN;IyEnyNI;MACE,eCxCA;I1E60NN;IyElyNI;MACE,mBC5CA;I1Eg1NN;IyEjyNI;MACE,qBChDA;I1Em1NN;IyEhyNI;MACE,sBCpDA;I1Es1NN;IyE/xNI;MACE,oBCxDA;I1Ey1NN;IyE9xNI;MACE,qBC5DA;MD6DA,oBC7DA;I1E61NN;IyE7xNI;MACE,mBCjEA;MDkEA,sBClEA;I1Ei2NN;IyE3xNI;MACE,qBAAA;MACA,qBAAA;IzE6xNN;IyE1xNI;MACE,qBAAA;IzE4xNN;IyEzxNI;MACE,qBAAA;IzE2xNN;IyEvxNI;MACE,WCrFA;I1E82NN;IyEtxNI;MACE,kBCzFA;I1Ei3NN;IyErxNI;MACE,eC7FA;I1Eo3NN;IyE32NI;MACE,YCVA;I1Eu3NN;IyE12NI;MACE,gBCdA;I1E03NN;IyEz2NI;MACE,kBClBA;I1E63NN;IyEx2NI;MACE,mBCtBA;I1Eg4NN;IyEv2NI;MACE,iBC1BA;I1Em4NN;IyEt2NI;MACE,kBC9BA;MD+BA,iBC/BA;I1Eu4NN;IyEr2NI;MACE,gBCnCA;MDoCA,mBCpCA;I1E24NN;IyEp2NI;MACE,aCxCA;I1E84NN;IyEn2NI;MACE,iBC5CA;I1Ei5NN;IyEl2NI;MACE,mBChDA;I1Eo5NN;IyEj2NI;MACE,oBCpDA;I1Eu5NN;IyEh2NI;MACE,kBCxDA;I1E05NN;IyE/1NI;MACE,mBC5DA;MD6DA,kBC7DA;I1E85NN;IyE91NI;MACE,iBCjEA;MDkEA,oBClEA;I1Ek6NN;IyE51NI;MACE,mBAAA;MACA,mBAAA;IzE81NN;IyE31NI;MACE,mBAAA;IzE61NN;IyE11NI;MACE,mBAAA;IzE41NN;IyEx1NI;MACE,SCrFA;I1E+6NN;IyEv1NI;MACE,gBCzFA;I1Ek7NN;IyEt1NI;MACE,aC7FA;I1Eq7NN;IyE56NI;MACE,cCVA;I1Ew7NN;IyE36NI;MACE,kBCdA;I1E27NN;IyE16NI;MACE,oBClBA;I1E87NN;IyEz6NI;MACE,qBCtBA;I1Ei8NN;IyEx6NI;MACE,mBC1BA;I1Eo8NN;IyEv6NI;MACE,oBC9BA;MD+BA,mBC/BA;I1Ew8NN;IyEt6NI;MACE,kBCnCA;MDoCA,qBCpCA;I1E48NN;IyEr6NI;MACE,eCxCA;I1E+8NN;IyEp6NI;MACE,mBC5CA;I1Ek9NN;IyEn6NI;MACE,qBChDA;I1Eq9NN;IyEl6NI;MACE,sBCpDA;I1Ew9NN;IyEj6NI;MACE,oBCxDA;I1E29NN;IyEh6NI;MACE,qBC5DA;MD6DA,oBC7DA;I1E+9NN;IyE/5NI;MACE,mBCjEA;MDkEA,sBClEA;I1Em+NN;IyE75NI;MACE,qBAAA;MACA,qBAAA;IzE+5NN;IyE55NI;MACE,qBAAA;IzE85NN;IyE35NI;MACE,qBAAA;IzE65NN;IyEz5NI;MACE,WCrFA;I1Eg/NN;IyEx5NI;MACE,kBCzFA;I1Em/NN;IyEv5NI;MACE,eC7FA;I1Es/NN;IyE7+NI;MACE,YCVA;I1Ey/NN;IyE5+NI;MACE,gBCdA;I1E4/NN;IyE3+NI;MACE,kBClBA;I1E+/NN;IyE1+NI;MACE,mBCtBA;I1EkgON;IyEz+NI;MACE,iBC1BA;I1EqgON;IyEx+NI;MACE,kBC9BA;MD+BA,iBC/BA;I1EygON;IyEv+NI;MACE,gBCnCA;MDoCA,mBCpCA;I1E6gON;IyEt+NI;MACE,aCxCA;I1EghON;IyEr+NI;MACE,iBC5CA;I1EmhON;IyEp+NI;MACE,mBChDA;I1EshON;IyEn+NI;MACE,oBCpDA;I1EyhON;IyEl+NI;MACE,kBCxDA;I1E4hON;IyEj+NI;MACE,mBC5DA;MD6DA,kBC7DA;I1EgiON;IyEh+NI;MACE,iBCjEA;MDkEA,oBClEA;I1EoiON;IyE99NI;MACE,mBAAA;MACA,mBAAA;IzEg+NN;IyE79NI;MACE,mBAAA;IzE+9NN;IyE59NI;MACE,mBAAA;IzE89NN;IyE19NI;MACE,SCrFA;I1EijON;IyEz9NI;MACE,gBCzFA;I1EojON;IyEx9NI;MACE,aC7FA;I1EujON;IyEt9NE;MACE,YAAA;IzEw9NJ;IyEr9NE;MACE,gBAAA;IzEu9NJ;IyEp9NE;MACE,kBAAA;IzEs9NJ;IyEn9NE;MACE,mBAAA;IzEq9NJ;IyEl9NE;MACE,iBAAA;IzEo9NJ;IyEj9NE;MACE,kBAAA;MACA,iBAAA;IzEm9NJ;IyEh9NE;MACE,gBAAA;MACA,mBAAA;IzEk9NJ;EACF;EUxjOE;I+DdI;MACE,SCVA;I1EmlON;IyEtkOI;MACE,aCdA;I1EslON;IyErkOI;MACE,eClBA;I1EylON;IyEpkOI;MACE,gBCtBA;I1E4lON;IyEnkOI;MACE,cC1BA;I1E+lON;IyElkOI;MACE,eC9BA;MD+BA,cC/BA;I1EmmON;IyEjkOI;MACE,aCnCA;MDoCA,gBCpCA;I1EumON;IyEhkOI;MACE,UCxCA;I1E0mON;IyE/jOI;MACE,cC5CA;I1E6mON;IyE9jOI;MACE,gBChDA;I1EgnON;IyE7jOI;MACE,iBCpDA;I1EmnON;IyE5jOI;MACE,eCxDA;I1EsnON;IyE3jOI;MACE,gBC5DA;MD6DA,eC7DA;I1E0nON;IyE1jOI;MACE,cCjEA;MDkEA,iBClEA;I1E8nON;IyExjOI;MACE,gBAAA;MACA,gBAAA;IzE0jON;IyEvjOI;MACE,gBAAA;IzEyjON;IyEtjOI;MACE,gBAAA;IzEwjON;IyEpjOI;MACE,MCrFA;I1E2oON;IyEnjOI;MACE,aCzFA;I1E8oON;IyEljOI;MACE,UC7FA;I1EipON;IyExoOI;MACE,eCVA;I1EopON;IyEvoOI;MACE,mBCdA;I1EupON;IyEtoOI;MACE,qBClBA;I1E0pON;IyEroOI;MACE,sBCtBA;I1E6pON;IyEpoOI;MACE,oBC1BA;I1EgqON;IyEnoOI;MACE,qBC9BA;MD+BA,oBC/BA;I1EoqON;IyEloOI;MACE,mBCnCA;MDoCA,sBCpCA;I1EwqON;IyEjoOI;MACE,gBCxCA;I1E2qON;IyEhoOI;MACE,oBC5CA;I1E8qON;IyE/nOI;MACE,sBChDA;I1EirON;IyE9nOI;MACE,uBCpDA;I1EorON;IyE7nOI;MACE,qBCxDA;I1EurON;IyE5nOI;MACE,sBC5DA;MD6DA,qBC7DA;I1E2rON;IyE3nOI;MACE,oBCjEA;MDkEA,uBClEA;I1E+rON;IyEznOI;MACE,sBAAA;MACA,sBAAA;IzE2nON;IyExnOI;MACE,sBAAA;IzE0nON;IyEvnOI;MACE,sBAAA;IzEynON;IyErnOI;MACE,YCrFA;I1E4sON;IyEpnOI;MACE,mBCzFA;I1E+sON;IyEnnOI;MACE,gBC7FA;I1EktON;IyEzsOI;MACE,cCVA;I1EqtON;IyExsOI;MACE,kBCdA;I1EwtON;IyEvsOI;MACE,oBClBA;I1E2tON;IyEtsOI;MACE,qBCtBA;I1E8tON;IyErsOI;MACE,mBC1BA;I1EiuON;IyEpsOI;MACE,oBC9BA;MD+BA,mBC/BA;I1EquON;IyEnsOI;MACE,kBCnCA;MDoCA,qBCpCA;I1EyuON;IyElsOI;MACE,eCxCA;I1E4uON;IyEjsOI;MACE,mBC5CA;I1E+uON;IyEhsOI;MACE,qBChDA;I1EkvON;IyE/rOI;MACE,sBCpDA;I1EqvON;IyE9rOI;MACE,oBCxDA;I1EwvON;IyE7rOI;MACE,qBC5DA;MD6DA,oBC7DA;I1E4vON;IyE5rOI;MACE,mBCjEA;MDkEA,sBClEA;I1EgwON;IyE1rOI;MACE,qBAAA;MACA,qBAAA;IzE4rON;IyEzrOI;MACE,qBAAA;IzE2rON;IyExrOI;MACE,qBAAA;IzE0rON;IyEtrOI;MACE,WCrFA;I1E6wON;IyErrOI;MACE,kBCzFA;I1EgxON;IyEprOI;MACE,eC7FA;I1EmxON;IyE1wOI;MACE,YCVA;I1EsxON;IyEzwOI;MACE,gBCdA;I1EyxON;IyExwOI;MACE,kBClBA;I1E4xON;IyEvwOI;MACE,mBCtBA;I1E+xON;IyEtwOI;MACE,iBC1BA;I1EkyON;IyErwOI;MACE,kBC9BA;MD+BA,iBC/BA;I1EsyON;IyEpwOI;MACE,gBCnCA;MDoCA,mBCpCA;I1E0yON;IyEnwOI;MACE,aCxCA;I1E6yON;IyElwOI;MACE,iBC5CA;I1EgzON;IyEjwOI;MACE,mBChDA;I1EmzON;IyEhwOI;MACE,oBCpDA;I1EszON;IyE/vOI;MACE,kBCxDA;I1EyzON;IyE9vOI;MACE,mBC5DA;MD6DA,kBC7DA;I1E6zON;IyE7vOI;MACE,iBCjEA;MDkEA,oBClEA;I1Ei0ON;IyE3vOI;MACE,mBAAA;MACA,mBAAA;IzE6vON;IyE1vOI;MACE,mBAAA;IzE4vON;IyEzvOI;MACE,mBAAA;IzE2vON;IyEvvOI;MACE,SCrFA;I1E80ON;IyEtvOI;MACE,gBCzFA;I1Ei1ON;IyErvOI;MACE,aC7FA;I1Eo1ON;IyE30OI;MACE,cCVA;I1Eu1ON;IyE10OI;MACE,kBCdA;I1E01ON;IyEz0OI;MACE,oBClBA;I1E61ON;IyEx0OI;MACE,qBCtBA;I1Eg2ON;IyEv0OI;MACE,mBC1BA;I1Em2ON;IyEt0OI;MACE,oBC9BA;MD+BA,mBC/BA;I1Eu2ON;IyEr0OI;MACE,kBCnCA;MDoCA,qBCpCA;I1E22ON;IyEp0OI;MACE,eCxCA;I1E82ON;IyEn0OI;MACE,mBC5CA;I1Ei3ON;IyEl0OI;MACE,qBChDA;I1Eo3ON;IyEj0OI;MACE,sBCpDA;I1Eu3ON;IyEh0OI;MACE,oBCxDA;I1E03ON;IyE/zOI;MACE,qBC5DA;MD6DA,oBC7DA;I1E83ON;IyE9zOI;MACE,mBCjEA;MDkEA,sBClEA;I1Ek4ON;IyE5zOI;MACE,qBAAA;MACA,qBAAA;IzE8zON;IyE3zOI;MACE,qBAAA;IzE6zON;IyE1zOI;MACE,qBAAA;IzE4zON;IyExzOI;MACE,WCrFA;I1E+4ON;IyEvzOI;MACE,kBCzFA;I1Ek5ON;IyEtzOI;MACE,eC7FA;I1Eq5ON;IyE54OI;MACE,YCVA;I1Ew5ON;IyE34OI;MACE,gBCdA;I1E25ON;IyE14OI;MACE,kBClBA;I1E85ON;IyEz4OI;MACE,mBCtBA;I1Ei6ON;IyEx4OI;MACE,iBC1BA;I1Eo6ON;IyEv4OI;MACE,kBC9BA;MD+BA,iBC/BA;I1Ew6ON;IyEt4OI;MACE,gBCnCA;MDoCA,mBCpCA;I1E46ON;IyEr4OI;MACE,aCxCA;I1E+6ON;IyEp4OI;MACE,iBC5CA;I1Ek7ON;IyEn4OI;MACE,mBChDA;I1Eq7ON;IyEl4OI;MACE,oBCpDA;I1Ew7ON;IyEj4OI;MACE,kBCxDA;I1E27ON;IyEh4OI;MACE,mBC5DA;MD6DA,kBC7DA;I1E+7ON;IyE/3OI;MACE,iBCjEA;MDkEA,oBClEA;I1Em8ON;IyE73OI;MACE,mBAAA;MACA,mBAAA;IzE+3ON;IyE53OI;MACE,mBAAA;IzE83ON;IyE33OI;MACE,mBAAA;IzE63ON;IyEz3OI;MACE,SCrFA;I1Eg9ON;IyEx3OI;MACE,gBCzFA;I1Em9ON;IyEv3OI;MACE,aC7FA;I1Es9ON;IyEr3OE;MACE,YAAA;IzEu3OJ;IyEp3OE;MACE,gBAAA;IzEs3OJ;IyEn3OE;MACE,kBAAA;IzEq3OJ;IyEl3OE;MACE,mBAAA;IzEo3OJ;IyEj3OE;MACE,iBAAA;IzEm3OJ;IyEh3OE;MACE,kBAAA;MACA,iBAAA;IzEk3OJ;IyE/2OE;MACE,gBAAA;MACA,mBAAA;IzEi3OJ;EACF;EUv9OE;I+DdI;MACE,SCVA;I1Ek/ON;IyEr+OI;MACE,aCdA;I1Eq/ON;IyEp+OI;MACE,eClBA;I1Ew/ON;IyEn+OI;MACE,gBCtBA;I1E2/ON;IyEl+OI;MACE,cC1BA;I1E8/ON;IyEj+OI;MACE,eC9BA;MD+BA,cC/BA;I1EkgPN;IyEh+OI;MACE,aCnCA;MDoCA,gBCpCA;I1EsgPN;IyE/9OI;MACE,UCxCA;I1EygPN;IyE99OI;MACE,cC5CA;I1E4gPN;IyE79OI;MACE,gBChDA;I1E+gPN;IyE59OI;MACE,iBCpDA;I1EkhPN;IyE39OI;MACE,eCxDA;I1EqhPN;IyE19OI;MACE,gBC5DA;MD6DA,eC7DA;I1EyhPN;IyEz9OI;MACE,cCjEA;MDkEA,iBClEA;I1E6hPN;IyEv9OI;MACE,gBAAA;MACA,gBAAA;IzEy9ON;IyEt9OI;MACE,gBAAA;IzEw9ON;IyEr9OI;MACE,gBAAA;IzEu9ON;IyEn9OI;MACE,MCrFA;I1E0iPN;IyEl9OI;MACE,aCzFA;I1E6iPN;IyEj9OI;MACE,UC7FA;I1EgjPN;IyEviPI;MACE,eCVA;I1EmjPN;IyEtiPI;MACE,mBCdA;I1EsjPN;IyEriPI;MACE,qBClBA;I1EyjPN;IyEpiPI;MACE,sBCtBA;I1E4jPN;IyEniPI;MACE,oBC1BA;I1E+jPN;IyEliPI;MACE,qBC9BA;MD+BA,oBC/BA;I1EmkPN;IyEjiPI;MACE,mBCnCA;MDoCA,sBCpCA;I1EukPN;IyEhiPI;MACE,gBCxCA;I1E0kPN;IyE/hPI;MACE,oBC5CA;I1E6kPN;IyE9hPI;MACE,sBChDA;I1EglPN;IyE7hPI;MACE,uBCpDA;I1EmlPN;IyE5hPI;MACE,qBCxDA;I1EslPN;IyE3hPI;MACE,sBC5DA;MD6DA,qBC7DA;I1E0lPN;IyE1hPI;MACE,oBCjEA;MDkEA,uBClEA;I1E8lPN;IyExhPI;MACE,sBAAA;MACA,sBAAA;IzE0hPN;IyEvhPI;MACE,sBAAA;IzEyhPN;IyEthPI;MACE,sBAAA;IzEwhPN;IyEphPI;MACE,YCrFA;I1E2mPN;IyEnhPI;MACE,mBCzFA;I1E8mPN;IyElhPI;MACE,gBC7FA;I1EinPN;IyExmPI;MACE,cCVA;I1EonPN;IyEvmPI;MACE,kBCdA;I1EunPN;IyEtmPI;MACE,oBClBA;I1E0nPN;IyErmPI;MACE,qBCtBA;I1E6nPN;IyEpmPI;MACE,mBC1BA;I1EgoPN;IyEnmPI;MACE,oBC9BA;MD+BA,mBC/BA;I1EooPN;IyElmPI;MACE,kBCnCA;MDoCA,qBCpCA;I1EwoPN;IyEjmPI;MACE,eCxCA;I1E2oPN;IyEhmPI;MACE,mBC5CA;I1E8oPN;IyE/lPI;MACE,qBChDA;I1EipPN;IyE9lPI;MACE,sBCpDA;I1EopPN;IyE7lPI;MACE,oBCxDA;I1EupPN;IyE5lPI;MACE,qBC5DA;MD6DA,oBC7DA;I1E2pPN;IyE3lPI;MACE,mBCjEA;MDkEA,sBClEA;I1E+pPN;IyEzlPI;MACE,qBAAA;MACA,qBAAA;IzE2lPN;IyExlPI;MACE,qBAAA;IzE0lPN;IyEvlPI;MACE,qBAAA;IzEylPN;IyErlPI;MACE,WCrFA;I1E4qPN;IyEplPI;MACE,kBCzFA;I1E+qPN;IyEnlPI;MACE,eC7FA;I1EkrPN;IyEzqPI;MACE,YCVA;I1EqrPN;IyExqPI;MACE,gBCdA;I1EwrPN;IyEvqPI;MACE,kBClBA;I1E2rPN;IyEtqPI;MACE,mBCtBA;I1E8rPN;IyErqPI;MACE,iBC1BA;I1EisPN;IyEpqPI;MACE,kBC9BA;MD+BA,iBC/BA;I1EqsPN;IyEnqPI;MACE,gBCnCA;MDoCA,mBCpCA;I1EysPN;IyElqPI;MACE,aCxCA;I1E4sPN;IyEjqPI;MACE,iBC5CA;I1E+sPN;IyEhqPI;MACE,mBChDA;I1EktPN;IyE/pPI;MACE,oBCpDA;I1EqtPN;IyE9pPI;MACE,kBCxDA;I1EwtPN;IyE7pPI;MACE,mBC5DA;MD6DA,kBC7DA;I1E4tPN;IyE5pPI;MACE,iBCjEA;MDkEA,oBClEA;I1EguPN;IyE1pPI;MACE,mBAAA;MACA,mBAAA;IzE4pPN;IyEzpPI;MACE,mBAAA;IzE2pPN;IyExpPI;MACE,mBAAA;IzE0pPN;IyEtpPI;MACE,SCrFA;I1E6uPN;IyErpPI;MACE,gBCzFA;I1EgvPN;IyEppPI;MACE,aC7FA;I1EmvPN;IyE1uPI;MACE,cCVA;I1EsvPN;IyEzuPI;MACE,kBCdA;I1EyvPN;IyExuPI;MACE,oBClBA;I1E4vPN;IyEvuPI;MACE,qBCtBA;I1E+vPN;IyEtuPI;MACE,mBC1BA;I1EkwPN;IyEruPI;MACE,oBC9BA;MD+BA,mBC/BA;I1EswPN;IyEpuPI;MACE,kBCnCA;MDoCA,qBCpCA;I1E0wPN;IyEnuPI;MACE,eCxCA;I1E6wPN;IyEluPI;MACE,mBC5CA;I1EgxPN;IyEjuPI;MACE,qBChDA;I1EmxPN;IyEhuPI;MACE,sBCpDA;I1EsxPN;IyE/tPI;MACE,oBCxDA;I1EyxPN;IyE9tPI;MACE,qBC5DA;MD6DA,oBC7DA;I1E6xPN;IyE7tPI;MACE,mBCjEA;MDkEA,sBClEA;I1EiyPN;IyE3tPI;MACE,qBAAA;MACA,qBAAA;IzE6tPN;IyE1tPI;MACE,qBAAA;IzE4tPN;IyEztPI;MACE,qBAAA;IzE2tPN;IyEvtPI;MACE,WCrFA;I1E8yPN;IyEttPI;MACE,kBCzFA;I1EizPN;IyErtPI;MACE,eC7FA;I1EozPN;IyE3yPI;MACE,YCVA;I1EuzPN;IyE1yPI;MACE,gBCdA;I1E0zPN;IyEzyPI;MACE,kBClBA;I1E6zPN;IyExyPI;MACE,mBCtBA;I1Eg0PN;IyEvyPI;MACE,iBC1BA;I1Em0PN;IyEtyPI;MACE,kBC9BA;MD+BA,iBC/BA;I1Eu0PN;IyEryPI;MACE,gBCnCA;MDoCA,mBCpCA;I1E20PN;IyEpyPI;MACE,aCxCA;I1E80PN;IyEnyPI;MACE,iBC5CA;I1Ei1PN;IyElyPI;MACE,mBChDA;I1Eo1PN;IyEjyPI;MACE,oBCpDA;I1Eu1PN;IyEhyPI;MACE,kBCxDA;I1E01PN;IyE/xPI;MACE,mBC5DA;MD6DA,kBC7DA;I1E81PN;IyE9xPI;MACE,iBCjEA;MDkEA,oBClEA;I1Ek2PN;IyE5xPI;MACE,mBAAA;MACA,mBAAA;IzE8xPN;IyE3xPI;MACE,mBAAA;IzE6xPN;IyE1xPI;MACE,mBAAA;IzE4xPN;IyExxPI;MACE,SCrFA;I1E+2PN;IyEvxPI;MACE,gBCzFA;I1Ek3PN;IyEtxPI;MACE,aC7FA;I1Eq3PN;IyEpxPE;MACE,YAAA;IzEsxPJ;IyEnxPE;MACE,gBAAA;IzEqxPJ;IyElxPE;MACE,kBAAA;IzEoxPJ;IyEjxPE;MACE,mBAAA;IzEmxPJ;IyEhxPE;MACE,iBAAA;IzEkxPJ;IyE/wPE;MACE,kBAAA;MACA,iBAAA;IzEixPJ;IyE9wPE;MACE,gBAAA;MACA,mBAAA;IzEgxPJ;EACF;EUt3PE;I+DdI;MACE,SCVA;I1Ei5PN;IyEp4PI;MACE,aCdA;I1Eo5PN;IyEn4PI;MACE,eClBA;I1Eu5PN;IyEl4PI;MACE,gBCtBA;I1E05PN;IyEj4PI;MACE,cC1BA;I1E65PN;IyEh4PI;MACE,eC9BA;MD+BA,cC/BA;I1Ei6PN;IyE/3PI;MACE,aCnCA;MDoCA,gBCpCA;I1Eq6PN;IyE93PI;MACE,UCxCA;I1Ew6PN;IyE73PI;MACE,cC5CA;I1E26PN;IyE53PI;MACE,gBChDA;I1E86PN;IyE33PI;MACE,iBCpDA;I1Ei7PN;IyE13PI;MACE,eCxDA;I1Eo7PN;IyEz3PI;MACE,gBC5DA;MD6DA,eC7DA;I1Ew7PN;IyEx3PI;MACE,cCjEA;MDkEA,iBClEA;I1E47PN;IyEt3PI;MACE,gBAAA;MACA,gBAAA;IzEw3PN;IyEr3PI;MACE,gBAAA;IzEu3PN;IyEp3PI;MACE,gBAAA;IzEs3PN;IyEl3PI;MACE,MCrFA;I1Ey8PN;IyEj3PI;MACE,aCzFA;I1E48PN;IyEh3PI;MACE,UC7FA;I1E+8PN;IyEt8PI;MACE,eCVA;I1Ek9PN;IyEr8PI;MACE,mBCdA;I1Eq9PN;IyEp8PI;MACE,qBClBA;I1Ew9PN;IyEn8PI;MACE,sBCtBA;I1E29PN;IyEl8PI;MACE,oBC1BA;I1E89PN;IyEj8PI;MACE,qBC9BA;MD+BA,oBC/BA;I1Ek+PN;IyEh8PI;MACE,mBCnCA;MDoCA,sBCpCA;I1Es+PN;IyE/7PI;MACE,gBCxCA;I1Ey+PN;IyE97PI;MACE,oBC5CA;I1E4+PN;IyE77PI;MACE,sBChDA;I1E++PN;IyE57PI;MACE,uBCpDA;I1Ek/PN;IyE37PI;MACE,qBCxDA;I1Eq/PN;IyE17PI;MACE,sBC5DA;MD6DA,qBC7DA;I1Ey/PN;IyEz7PI;MACE,oBCjEA;MDkEA,uBClEA;I1E6/PN;IyEv7PI;MACE,sBAAA;MACA,sBAAA;IzEy7PN;IyEt7PI;MACE,sBAAA;IzEw7PN;IyEr7PI;MACE,sBAAA;IzEu7PN;IyEn7PI;MACE,YCrFA;I1E0gQN;IyEl7PI;MACE,mBCzFA;I1E6gQN;IyEj7PI;MACE,gBC7FA;I1EghQN;IyEvgQI;MACE,cCVA;I1EmhQN;IyEtgQI;MACE,kBCdA;I1EshQN;IyErgQI;MACE,oBClBA;I1EyhQN;IyEpgQI;MACE,qBCtBA;I1E4hQN;IyEngQI;MACE,mBC1BA;I1E+hQN;IyElgQI;MACE,oBC9BA;MD+BA,mBC/BA;I1EmiQN;IyEjgQI;MACE,kBCnCA;MDoCA,qBCpCA;I1EuiQN;IyEhgQI;MACE,eCxCA;I1E0iQN;IyE//PI;MACE,mBC5CA;I1E6iQN;IyE9/PI;MACE,qBChDA;I1EgjQN;IyE7/PI;MACE,sBCpDA;I1EmjQN;IyE5/PI;MACE,oBCxDA;I1EsjQN;IyE3/PI;MACE,qBC5DA;MD6DA,oBC7DA;I1E0jQN;IyE1/PI;MACE,mBCjEA;MDkEA,sBClEA;I1E8jQN;IyEx/PI;MACE,qBAAA;MACA,qBAAA;IzE0/PN;IyEv/PI;MACE,qBAAA;IzEy/PN;IyEt/PI;MACE,qBAAA;IzEw/PN;IyEp/PI;MACE,WCrFA;I1E2kQN;IyEn/PI;MACE,kBCzFA;I1E8kQN;IyEl/PI;MACE,eC7FA;I1EilQN;IyExkQI;MACE,YCVA;I1EolQN;IyEvkQI;MACE,gBCdA;I1EulQN;IyEtkQI;MACE,kBClBA;I1E0lQN;IyErkQI;MACE,mBCtBA;I1E6lQN;IyEpkQI;MACE,iBC1BA;I1EgmQN;IyEnkQI;MACE,kBC9BA;MD+BA,iBC/BA;I1EomQN;IyElkQI;MACE,gBCnCA;MDoCA,mBCpCA;I1EwmQN;IyEjkQI;MACE,aCxCA;I1E2mQN;IyEhkQI;MACE,iBC5CA;I1E8mQN;IyE/jQI;MACE,mBChDA;I1EinQN;IyE9jQI;MACE,oBCpDA;I1EonQN;IyE7jQI;MACE,kBCxDA;I1EunQN;IyE5jQI;MACE,mBC5DA;MD6DA,kBC7DA;I1E2nQN;IyE3jQI;MACE,iBCjEA;MDkEA,oBClEA;I1E+nQN;IyEzjQI;MACE,mBAAA;MACA,mBAAA;IzE2jQN;IyExjQI;MACE,mBAAA;IzE0jQN;IyEvjQI;MACE,mBAAA;IzEyjQN;IyErjQI;MACE,SCrFA;I1E4oQN;IyEpjQI;MACE,gBCzFA;I1E+oQN;IyEnjQI;MACE,aC7FA;I1EkpQN;IyEzoQI;MACE,cCVA;I1EqpQN;IyExoQI;MACE,kBCdA;I1EwpQN;IyEvoQI;MACE,oBClBA;I1E2pQN;IyEtoQI;MACE,qBCtBA;I1E8pQN;IyEroQI;MACE,mBC1BA;I1EiqQN;IyEpoQI;MACE,oBC9BA;MD+BA,mBC/BA;I1EqqQN;IyEnoQI;MACE,kBCnCA;MDoCA,qBCpCA;I1EyqQN;IyEloQI;MACE,eCxCA;I1E4qQN;IyEjoQI;MACE,mBC5CA;I1E+qQN;IyEhoQI;MACE,qBChDA;I1EkrQN;IyE/nQI;MACE,sBCpDA;I1EqrQN;IyE9nQI;MACE,oBCxDA;I1EwrQN;IyE7nQI;MACE,qBC5DA;MD6DA,oBC7DA;I1E4rQN;IyE5nQI;MACE,mBCjEA;MDkEA,sBClEA;I1EgsQN;IyE1nQI;MACE,qBAAA;MACA,qBAAA;IzE4nQN;IyEznQI;MACE,qBAAA;IzE2nQN;IyExnQI;MACE,qBAAA;IzE0nQN;IyEtnQI;MACE,WCrFA;I1E6sQN;IyErnQI;MACE,kBCzFA;I1EgtQN;IyEpnQI;MACE,eC7FA;I1EmtQN;IyE1sQI;MACE,YCVA;I1EstQN;IyEzsQI;MACE,gBCdA;I1EytQN;IyExsQI;MACE,kBClBA;I1E4tQN;IyEvsQI;MACE,mBCtBA;I1E+tQN;IyEtsQI;MACE,iBC1BA;I1EkuQN;IyErsQI;MACE,kBC9BA;MD+BA,iBC/BA;I1EsuQN;IyEpsQI;MACE,gBCnCA;MDoCA,mBCpCA;I1E0uQN;IyEnsQI;MACE,aCxCA;I1E6uQN;IyElsQI;MACE,iBC5CA;I1EgvQN;IyEjsQI;MACE,mBChDA;I1EmvQN;IyEhsQI;MACE,oBCpDA;I1EsvQN;IyE/rQI;MACE,kBCxDA;I1EyvQN;IyE9rQI;MACE,mBC5DA;MD6DA,kBC7DA;I1E6vQN;IyE7rQI;MACE,iBCjEA;MDkEA,oBClEA;I1EiwQN;IyE3rQI;MACE,mBAAA;MACA,mBAAA;IzE6rQN;IyE1rQI;MACE,mBAAA;IzE4rQN;IyEzrQI;MACE,mBAAA;IzE2rQN;IyEvrQI;MACE,SCrFA;I1E8wQN;IyEtrQI;MACE,gBCzFA;I1EixQN;IyErrQI;MACE,aC7FA;I1EoxQN;IyEnrQE;MACE,YAAA;IzEqrQJ;IyElrQE;MACE,gBAAA;IzEorQJ;IyEjrQE;MACE,kBAAA;IzEmrQJ;IyEhrQE;MACE,mBAAA;IzEkrQJ;IyE/qQE;MACE,iBAAA;IzEirQJ;IyE9qQE;MACE,kBAAA;MACA,iBAAA;IzEgrQJ;IyE7qQE;MACE,gBAAA;MACA,mBAAA;IzE+qQJ;EACF;EUrxQE;I+DdI;MACE,SCVA;I1EgzQN;IyEnyQI;MACE,aCdA;I1EmzQN;IyElyQI;MACE,eClBA;I1EszQN;IyEjyQI;MACE,gBCtBA;I1EyzQN;IyEhyQI;MACE,cC1BA;I1E4zQN;IyE/xQI;MACE,eC9BA;MD+BA,cC/BA;I1Eg0QN;IyE9xQI;MACE,aCnCA;MDoCA,gBCpCA;I1Eo0QN;IyE7xQI;MACE,UCxCA;I1Eu0QN;IyE5xQI;MACE,cC5CA;I1E00QN;IyE3xQI;MACE,gBChDA;I1E60QN;IyE1xQI;MACE,iBCpDA;I1Eg1QN;IyEzxQI;MACE,eCxDA;I1Em1QN;IyExxQI;MACE,gBC5DA;MD6DA,eC7DA;I1Eu1QN;IyEvxQI;MACE,cCjEA;MDkEA,iBClEA;I1E21QN;IyErxQI;MACE,gBAAA;MACA,gBAAA;IzEuxQN;IyEpxQI;MACE,gBAAA;IzEsxQN;IyEnxQI;MACE,gBAAA;IzEqxQN;IyEjxQI;MACE,MCrFA;I1Ew2QN;IyEhxQI;MACE,aCzFA;I1E22QN;IyE/wQI;MACE,UC7FA;I1E82QN;IyEr2QI;MACE,eCVA;I1Ei3QN;IyEp2QI;MACE,mBCdA;I1Eo3QN;IyEn2QI;MACE,qBClBA;I1Eu3QN;IyEl2QI;MACE,sBCtBA;I1E03QN;IyEj2QI;MACE,oBC1BA;I1E63QN;IyEh2QI;MACE,qBC9BA;MD+BA,oBC/BA;I1Ei4QN;IyE/1QI;MACE,mBCnCA;MDoCA,sBCpCA;I1Eq4QN;IyE91QI;MACE,gBCxCA;I1Ew4QN;IyE71QI;MACE,oBC5CA;I1E24QN;IyE51QI;MACE,sBChDA;I1E84QN;IyE31QI;MACE,uBCpDA;I1Ei5QN;IyE11QI;MACE,qBCxDA;I1Eo5QN;IyEz1QI;MACE,sBC5DA;MD6DA,qBC7DA;I1Ew5QN;IyEx1QI;MACE,oBCjEA;MDkEA,uBClEA;I1E45QN;IyEt1QI;MACE,sBAAA;MACA,sBAAA;IzEw1QN;IyEr1QI;MACE,sBAAA;IzEu1QN;IyEp1QI;MACE,sBAAA;IzEs1QN;IyEl1QI;MACE,YCrFA;I1Ey6QN;IyEj1QI;MACE,mBCzFA;I1E46QN;IyEh1QI;MACE,gBC7FA;I1E+6QN;IyEt6QI;MACE,cCVA;I1Ek7QN;IyEr6QI;MACE,kBCdA;I1Eq7QN;IyEp6QI;MACE,oBClBA;I1Ew7QN;IyEn6QI;MACE,qBCtBA;I1E27QN;IyEl6QI;MACE,mBC1BA;I1E87QN;IyEj6QI;MACE,oBC9BA;MD+BA,mBC/BA;I1Ek8QN;IyEh6QI;MACE,kBCnCA;MDoCA,qBCpCA;I1Es8QN;IyE/5QI;MACE,eCxCA;I1Ey8QN;IyE95QI;MACE,mBC5CA;I1E48QN;IyE75QI;MACE,qBChDA;I1E+8QN;IyE55QI;MACE,sBCpDA;I1Ek9QN;IyE35QI;MACE,oBCxDA;I1Eq9QN;IyE15QI;MACE,qBC5DA;MD6DA,oBC7DA;I1Ey9QN;IyEz5QI;MACE,mBCjEA;MDkEA,sBClEA;I1E69QN;IyEv5QI;MACE,qBAAA;MACA,qBAAA;IzEy5QN;IyEt5QI;MACE,qBAAA;IzEw5QN;IyEr5QI;MACE,qBAAA;IzEu5QN;IyEn5QI;MACE,WCrFA;I1E0+QN;IyEl5QI;MACE,kBCzFA;I1E6+QN;IyEj5QI;MACE,eC7FA;I1Eg/QN;IyEv+QI;MACE,YCVA;I1Em/QN;IyEt+QI;MACE,gBCdA;I1Es/QN;IyEr+QI;MACE,kBClBA;I1Ey/QN;IyEp+QI;MACE,mBCtBA;I1E4/QN;IyEn+QI;MACE,iBC1BA;I1E+/QN;IyEl+QI;MACE,kBC9BA;MD+BA,iBC/BA;I1EmgRN;IyEj+QI;MACE,gBCnCA;MDoCA,mBCpCA;I1EugRN;IyEh+QI;MACE,aCxCA;I1E0gRN;IyE/9QI;MACE,iBC5CA;I1E6gRN;IyE99QI;MACE,mBChDA;I1EghRN;IyE79QI;MACE,oBCpDA;I1EmhRN;IyE59QI;MACE,kBCxDA;I1EshRN;IyE39QI;MACE,mBC5DA;MD6DA,kBC7DA;I1E0hRN;IyE19QI;MACE,iBCjEA;MDkEA,oBClEA;I1E8hRN;IyEx9QI;MACE,mBAAA;MACA,mBAAA;IzE09QN;IyEv9QI;MACE,mBAAA;IzEy9QN;IyEt9QI;MACE,mBAAA;IzEw9QN;IyEp9QI;MACE,SCrFA;I1E2iRN;IyEn9QI;MACE,gBCzFA;I1E8iRN;IyEl9QI;MACE,aC7FA;I1EijRN;IyExiRI;MACE,cCVA;I1EojRN;IyEviRI;MACE,kBCdA;I1EujRN;IyEtiRI;MACE,oBClBA;I1E0jRN;IyEriRI;MACE,qBCtBA;I1E6jRN;IyEpiRI;MACE,mBC1BA;I1EgkRN;IyEniRI;MACE,oBC9BA;MD+BA,mBC/BA;I1EokRN;IyEliRI;MACE,kBCnCA;MDoCA,qBCpCA;I1EwkRN;IyEjiRI;MACE,eCxCA;I1E2kRN;IyEhiRI;MACE,mBC5CA;I1E8kRN;IyE/hRI;MACE,qBChDA;I1EilRN;IyE9hRI;MACE,sBCpDA;I1EolRN;IyE7hRI;MACE,oBCxDA;I1EulRN;IyE5hRI;MACE,qBC5DA;MD6DA,oBC7DA;I1E2lRN;IyE3hRI;MACE,mBCjEA;MDkEA,sBClEA;I1E+lRN;IyEzhRI;MACE,qBAAA;MACA,qBAAA;IzE2hRN;IyExhRI;MACE,qBAAA;IzE0hRN;IyEvhRI;MACE,qBAAA;IzEyhRN;IyErhRI;MACE,WCrFA;I1E4mRN;IyEphRI;MACE,kBCzFA;I1E+mRN;IyEnhRI;MACE,eC7FA;I1EknRN;IyEzmRI;MACE,YCVA;I1EqnRN;IyExmRI;MACE,gBCdA;I1EwnRN;IyEvmRI;MACE,kBClBA;I1E2nRN;IyEtmRI;MACE,mBCtBA;I1E8nRN;IyErmRI;MACE,iBC1BA;I1EioRN;IyEpmRI;MACE,kBC9BA;MD+BA,iBC/BA;I1EqoRN;IyEnmRI;MACE,gBCnCA;MDoCA,mBCpCA;I1EyoRN;IyElmRI;MACE,aCxCA;I1E4oRN;IyEjmRI;MACE,iBC5CA;I1E+oRN;IyEhmRI;MACE,mBChDA;I1EkpRN;IyE/lRI;MACE,oBCpDA;I1EqpRN;IyE9lRI;MACE,kBCxDA;I1EwpRN;IyE7lRI;MACE,mBC5DA;MD6DA,kBC7DA;I1E4pRN;IyE5lRI;MACE,iBCjEA;MDkEA,oBClEA;I1EgqRN;IyE1lRI;MACE,mBAAA;MACA,mBAAA;IzE4lRN;IyEzlRI;MACE,mBAAA;IzE2lRN;IyExlRI;MACE,mBAAA;IzE0lRN;IyEtlRI;MACE,SCrFA;I1E6qRN;IyErlRI;MACE,gBCzFA;I1EgrRN;IyEplRI;MACE,aC7FA;I1EmrRN;IyEllRE;MACE,YAAA;IzEolRJ;IyEjlRE;MACE,gBAAA;IzEmlRJ;IyEhlRE;MACE,kBAAA;IzEklRJ;IyE/kRE;MACE,mBAAA;IzEilRJ;IyE9kRE;MACE,iBAAA;IzEglRJ;IyE7kRE;MACE,kBAAA;MACA,iBAAA;IzE+kRJ;IyE5kRE;MACE,gBAAA;MACA,mBAAA;IzE8kRJ;EACF;AACF;A2EzsRA;EACE;IACE,gBAAA;E3E2sRF;E2ExsRA;IACE,kBAAA;E3E0sRF;E2EvsRA;IACE,iBAAA;E3EysRF;E2EtsRA;IACE,yBAAA;E3EwsRF;E2ErsRA;IACE,yBAAA;E3EusRF;E2EpsRA;IACE,0BAAA;E3EssRF;E2EnsRA;IjEiBA,gBAAA;IACA,uBAAA;IACA,mBAAA;EVqrRA;E2EpsRA;IACE,gB3DbkB;EhBmtRpB;E2EnsRA;IACE,gB3DhBiB;EhBqtRnB;E2ElsRA;IACE,gB3DnBmB;EhButRrB;E2EjsRA;IACE,gB3DtBe;EhBytRjB;E2EhsRA;IACE,oB3D5CW;EhB8uRb;E2E/rRA;IACE,kB3D/CW;EhBgvRb;E2E9rRA;IACE,oB3DlDW;EhBkvRb;E2E7rRA;IACE,e3DrDW;EhBovRb;E2E5rRA;IACE,kB3DxDW;EhBsvRb;E2E3rRA;IACE,kB3DxDW;EhBqvRb;E2E1rRA;IACE,iB3D3DW;EhBuvRb;E2EzrRA;IACE,oB3D9DW;EhByvRb;E2ExrRA;IACE,mB3DjEW;EhB2vRb;E2EvrRA;IACE,e3DpEW;EhB6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","file":"fokus.css","sourcesContent":["@charset \"UTF-8\";\n@layer reset, tokens, base, layout, components, utilities, overrides;\n@layer tokens {\n :root {\n --fs-color-white: #ffffff;\n --fs-color-black: #000000;\n --fs-color-text: #1e293b;\n --fs-color-muted: #64748b;\n --fs-color-border: #e2e8f0;\n --fs-color-surface: #ffffff;\n --fs-color-subtle: #f8fafc;\n --fs-font-sans: Plus Jakarta Sans, sans-serif;\n --fs-font-mono: Source Code Pro, monospace;\n --fs-font-size-md: 0.8125rem;\n --fs-font-size-h1: 1.75rem;\n --fs-font-size-h2: 1.5rem;\n --fs-font-size-h3: 1.3125rem;\n --fs-font-size-h4: 1.125rem;\n --fs-font-size-h5: 1rem;\n --fs-font-size-h6: 0.875rem;\n --fs-font-weight-semibold: 600;\n --fs-line-height-base: 1.5;\n --fs-line-height-heading: 1.25;\n --fs-radius-sm: 4px;\n --fs-radius-md: 6px;\n --fs-radius-lg: 8px;\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 0px;\n --fs-space-0: 0;\n --fs-space-1: 0.25rem;\n --fs-space-2: 0.5rem;\n --fs-space-3: 1rem;\n --fs-space-4: 1.5rem;\n --fs-space-5: 3rem;\n --fs-z-base: 0;\n --fs-z-dropdown: 1000;\n --fs-z-sticky: 1020;\n --fs-z-modal: 1050;\n --fs-z-offcanvas: 1060;\n --fs-z-notification: 1080;\n --fs-z-toast: 1090;\n --fs-z-tooltip: 1100;\n --fs-control-height: 38px;\n --fs-control-height-sm: 30px;\n --fs-control-height-lg: 46px;\n --fs-control-padding-x: 12px;\n --fs-control-padding-x-sm: 8px;\n --fs-control-padding-x-lg: 16px;\n --fs-focus-width: 2px;\n --fs-focus-offset: 2px;\n --fs-focus-color: var(--fs-color-primary);\n --fs-focus-ring-size: 3px;\n --fs-focus-ring-color: color-mix(in srgb, var(--fs-focus-color) 22%, transparent);\n --fs-focus-ring-alpha: 22%;\n --fs-transition-fast: 150ms;\n --fs-transition-normal: 220ms;\n --fs-motion-duration-fast: var(--fs-transition-fast);\n --fs-motion-duration-normal: var(--fs-transition-normal);\n --fs-motion-ease-standard: var(--fs-ease-standard);\n --fs-ease-standard: cubic-bezier(0.2, 0, 0, 1);\n --fs-border-width: 1px;\n --fs-disabled-opacity: 0.5;\n --fs-safe-area-top: env(safe-area-inset-top, 0px);\n --fs-safe-area-right: env(safe-area-inset-right, 0px);\n --fs-safe-area-bottom: env(safe-area-inset-bottom, 0px);\n --fs-safe-area-left: env(safe-area-inset-left, 0px);\n --fs-component-control-height: var(--fs-control-height);\n --fs-component-overlay-backdrop: rgb(0 0 0 / 55%);\n --fs-component-panel-radius: var(--fs-radius-md);\n --fs-component-panel-shadow: var(--fs-shadow-lg);\n --fs-cq-sm: 320px;\n --fs-cq-md: 480px;\n --fs-cq-lg: 640px;\n --fs-shadow-sm: 0 1px 3px rgb(0 0 0 / 15%), 0 1px 2px rgb(0 0 0 / 10%);\n --fs-shadow-md: 0 6px 12px rgb(0 0 0 / 15%), 0 3px 6px rgb(0 0 0 / 10%);\n --fs-shadow-lg: 0 15px 30px rgb(0 0 0 / 18%), 0 6px 12px rgb(0 0 0 / 12%);\n --fs-tooltip-bg: #1e293b;\n --fs-tooltip-text: #ffffff;\n --fs-color-primary: #1a61e6;\n --fs-color-on-primary: #ffffff;\n --fs-alert-primary-bg: rgb(220.3846532222, 232.689549371, 254.1042117072);\n --fs-alert-primary-text: rgb(4.2540793692, 32.6552622518, 88.5748738661);\n --fs-color-secondary: #64748b;\n --fs-color-on-secondary: #ffffff;\n --fs-alert-secondary-bg: rgb(230.2895610064, 233.0325853352, 236.9919508609);\n --fs-alert-secondary-text: rgb(33.9166068747, 40.6437781967, 50.3140869721);\n --fs-color-success: rgb(13, 209, 87);\n --fs-color-on-success: #000000;\n --fs-alert-success-bg: rgb(228.9046733915, 249.1514320752, 230.8709345684);\n --fs-alert-success-text: rgb(1.6574790861, 79.745461506, 28.4507801755);\n --fs-color-warning: #fab633;\n --fs-color-on-warning: #000000;\n --fs-alert-warning-bg: rgb(254.9170612621, 244.6528756631, 228.9710928247);\n --fs-alert-warning-text: rgb(96.9838380187, 68.3933599001, 13.3146447009);\n --fs-color-danger: #cc3335;\n --fs-color-on-danger: #ffffff;\n --fs-alert-danger-bg: rgb(251.9225977632, 226.389403069, 223.5618211362);\n --fs-alert-danger-text: rgb(77.6432204678, 13.3146447009, 14.1555411162);\n --fs-color-info: #5e5cc7;\n --fs-color-on-info: #ffffff;\n --fs-alert-info-bg: rgb(228.2395257626, 230.4806192824, 248.3934544766);\n --fs-alert-info-text: rgb(31.3939176289, 30.5530212136, 75.5409794297);\n --fs-feedback-primary-bg: #e6f0ff;\n --fs-feedback-secondary-bg: #f8fafc;\n --fs-feedback-success-bg: #e6fff2;\n --fs-feedback-warning-bg: #fff9e6;\n --fs-feedback-danger-bg: #fff2f3;\n --fs-feedback-info-bg: #f2f2ff;\n }\n @supports (color: oklch(0% 0 0deg)) {\n :root {\n --fs-color-text: oklch(27.9495237712% 0.0368481257 260.0309873929deg);\n --fs-color-muted: oklch(55.4391007662% 0.040717043 257.4166191214deg);\n --fs-color-border: oklch(92.876126719% 0.0126187744 255.5078854448deg);\n --fs-color-subtle: oklch(98.4151869501% 0.0034126992 247.8577745944deg);\n --fs-tooltip-bg: oklch(27.9495237712% 0.0368481257 260.0309873929deg);\n --fs-color-primary: oklch(53.5630074284% 0.2132145174 261.6264320248deg);\n --fs-color-on-primary: #ffffff;\n --fs-alert-primary-bg: oklch(93.0344511143% 0.0319821776 261.6264320248deg);\n --fs-alert-primary-text: oklch(26.7815037142% 0.1066072587 261.6264320248deg);\n --fs-color-secondary: oklch(55.4391007662% 0.040717043 257.4166191214deg);\n --fs-color-on-secondary: #ffffff;\n --fs-alert-secondary-bg: oklch(93.3158651149% 0.0061075564 257.4166191214deg);\n --fs-alert-secondary-text: oklch(27.7195503831% 0.0203585215 257.4166191214deg);\n --fs-color-success: oklch(75.151587899% 0.2146126169 148.125846236deg);\n --fs-color-on-success: #000000;\n --fs-alert-success-bg: oklch(96.2727381849% 0.0321918925 148.125846236deg);\n --fs-alert-success-text: oklch(37.5757939495% 0.1073063085 148.125846236deg);\n --fs-color-warning: oklch(81.9510815663% 0.1562613975 78.6575213966deg);\n --fs-color-on-warning: #000000;\n --fs-alert-warning-bg: oklch(97.2926622349% 0.0234392096 78.6575213966deg);\n --fs-alert-warning-text: oklch(40.9755407832% 0.0781306987 78.6575213966deg);\n --fs-color-danger: oklch(55.9653139301% 0.1897270855 25.2407937498deg);\n --fs-color-on-danger: #ffffff;\n --fs-alert-danger-bg: oklch(93.3947970895% 0.0284590628 25.2407937498deg);\n --fs-alert-danger-text: oklch(27.982656965% 0.0948635427 25.2407937498deg);\n --fs-color-info: oklch(53.3359780029% 0.1620131129 280.2231949375deg);\n --fs-color-on-info: #ffffff;\n --fs-alert-info-bg: oklch(93.0003967004% 0.0243019669 280.2231949375deg);\n --fs-alert-info-text: oklch(26.6679890014% 0.0810065564 280.2231949375deg);\n --fs-feedback-primary-bg: oklch(95.2067827456% 0.0228899025 258.359342143deg);\n --fs-feedback-secondary-bg: oklch(98.4151869501% 0.0034126992 247.8577745944deg);\n --fs-feedback-success-bg: oklch(97.8305614459% 0.0311593614 163.2740567608deg);\n --fs-feedback-warning-bg: oklch(98.17094418% 0.025708244 92.3886876566deg);\n --fs-feedback-danger-bg: oklch(97.1603097552% 0.0140720277 12.0135639679deg);\n --fs-feedback-info-bg: oklch(96.4918490239% 0.0173174767 286.0707018324deg);\n }\n }\n}\n@layer tokens {\n :root {\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n }\n}\n@layer tokens {\n :root {\n --fs-chart-series-1: var(--fs-color-primary);\n --fs-chart-series-2: var(--fs-color-success);\n --fs-chart-series-3: var(--fs-color-warning);\n --fs-chart-series-4: var(--fs-color-danger);\n --fs-chart-series-5: var(--fs-color-info);\n --fs-chart-series-6: var(--fs-color-secondary);\n --fs-chart-grid: var(--fs-color-border);\n --fs-chart-axis: var(--fs-color-muted);\n --fs-chart-tooltip-bg: var(--fs-tooltip-bg);\n --fs-chart-tooltip-text: var(--fs-tooltip-text);\n }\n}\n@layer reset {\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n }\n html {\n line-height: var(--fs-line-height-base);\n text-size-adjust: 100%;\n }\n body {\n margin: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n }\n [hidden] {\n display: none !important;\n }\n}\n@layer base {\n body,\n button,\n input,\n select,\n textarea {\n font-family: var(--fs-font-sans);\n font-size: var(--fs-font-size-md);\n }\n code,\n kbd,\n pre,\n samp {\n font-family: var(--fs-font-mono);\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin-top: 0;\n font-weight: var(--fs-font-weight-semibold);\n line-height: var(--fs-line-height-heading);\n }\n h1 {\n font-size: var(--fs-font-size-h1);\n }\n h2 {\n font-size: var(--fs-font-size-h2);\n }\n h3 {\n font-size: var(--fs-font-size-h3);\n }\n h4 {\n font-size: var(--fs-font-size-h4);\n }\n h5 {\n font-size: var(--fs-font-size-h5);\n }\n h6 {\n font-size: var(--fs-font-size-h6);\n }\n}\n@layer base {\n @media (prefers-reduced-motion: reduce) {\n *,\n *::before,\n *::after {\n scroll-behavior: auto !important;\n transition-duration: 0.01ms !important;\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n }\n .fs-spinner,\n .fs-progress-bar-animated,\n .fs-progress-indeterminate .fs-progress-bar {\n animation-duration: 1.5s !important;\n animation-iteration-count: infinite !important;\n }\n }\n}\n/* stylelint-disable property-no-deprecated, selector-not-notation */\n@layer reset {\n :focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-focus-color);\n outline-offset: var(--fs-focus-offset);\n }\n @media (forced-colors: active) {\n :focus-visible {\n outline: 2px solid CanvasText;\n outline-offset: 2px;\n }\n }\n}\n@layer utilities {\n .fs-u-visually-hidden:not(:focus):not(:focus-within),\n .fs-u-visually-hidden-focusable:not(:focus):not(:focus-within) {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip-path: inset(50%) !important;\n white-space: nowrap !important;\n border: 0 !important;\n }\n .fs-skip-link {\n position: fixed;\n z-index: 1000;\n inset-block-start: var(--fs-space-2);\n inset-inline-start: var(--fs-space-2);\n transform: translateY(-200%);\n padding: var(--fs-space-2) var(--fs-space-3);\n color: var(--fs-color-on-primary);\n background: var(--fs-color-primary);\n border-radius: var(--fs-radius-sm);\n }\n .fs-skip-link:focus {\n transform: translateY(0);\n }\n}\n@layer layout {\n .fs-cluster {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--fs-cluster-gap, 0.5rem);\n }\n .fs-cluster-gap-0 {\n --fs-cluster-gap: 0;\n }\n .fs-cluster-gap-1 {\n --fs-cluster-gap: 0.25rem;\n }\n .fs-cluster-gap-2 {\n --fs-cluster-gap: 0.5rem;\n }\n .fs-cluster-gap-3 {\n --fs-cluster-gap: 1rem;\n }\n .fs-cluster-gap-4 {\n --fs-cluster-gap: 1.5rem;\n }\n .fs-cluster-gap-5 {\n --fs-cluster-gap: 3rem;\n }\n}\n@layer layout {\n .fs-container,\n .fs-container-sm,\n .fs-container-md,\n .fs-container-lg,\n .fs-container-xl,\n .fs-container-xxl,\n .fs-container-xxxl,\n .fs-container-fluid {\n width: 100%;\n margin-right: auto;\n margin-left: auto;\n }\n @media (min-width: 640px) {\n .fs-container,\n .fs-container-sm {\n max-width: 600px;\n }\n }\n @media (min-width: 768px) {\n .fs-container,\n .fs-container-md {\n max-width: 720px;\n }\n }\n @media (min-width: 1024px) {\n .fs-container,\n .fs-container-lg {\n max-width: 960px;\n }\n }\n @media (min-width: 1280px) {\n .fs-container,\n .fs-container-xl {\n max-width: 1200px;\n }\n }\n @media (min-width: 1536px) {\n .fs-container,\n .fs-container-xxl {\n max-width: 1440px;\n }\n }\n @media (min-width: 1920px) {\n .fs-container,\n .fs-container-xxxl {\n max-width: 1800px;\n }\n }\n}\n@layer layout {\n .fs-row {\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(var(--fs-gutter-y) * -1);\n margin-right: calc(var(--fs-gutter-x) / -2);\n margin-left: calc(var(--fs-gutter-x) / -2);\n }\n .fs-row > * {\n margin-top: var(--fs-gutter-y);\n padding-right: calc(var(--fs-gutter-x) / 2);\n padding-left: calc(var(--fs-gutter-x) / 2);\n }\n .fs-row-fluid {\n width: 100%;\n }\n .fs-col-fluid {\n width: 100%;\n }\n .fs-row-cols-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-row-cols-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .fs-row-cols-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-row-cols-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-row-cols-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-row-cols-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .fs-row-cols-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-order-0 {\n order: 0;\n }\n .fs-order-1 {\n order: 1;\n }\n .fs-order-2 {\n order: 2;\n }\n .fs-order-3 {\n order: 3;\n }\n .fs-order-4 {\n order: 4;\n }\n .fs-order-5 {\n order: 5;\n }\n .fs-order-6 {\n order: 6;\n }\n .fs-order-7 {\n order: 7;\n }\n .fs-order-8 {\n order: 8;\n }\n .fs-order-9 {\n order: 9;\n }\n .fs-order-10 {\n order: 10;\n }\n .fs-order-11 {\n order: 11;\n }\n .fs-order-12 {\n order: 12;\n }\n .fs-col {\n flex: 1 0 0%;\n }\n .fs-col-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n @media (min-width: 640px) {\n .fs-row-cols-sm-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-row-cols-sm-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .fs-row-cols-sm-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-row-cols-sm-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-row-cols-sm-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-row-cols-sm-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .fs-row-cols-sm-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-order-sm-0 {\n order: 0;\n }\n .fs-order-sm-1 {\n order: 1;\n }\n .fs-order-sm-2 {\n order: 2;\n }\n .fs-order-sm-3 {\n order: 3;\n }\n .fs-order-sm-4 {\n order: 4;\n }\n .fs-order-sm-5 {\n order: 5;\n }\n .fs-order-sm-6 {\n order: 6;\n }\n .fs-order-sm-7 {\n order: 7;\n }\n .fs-order-sm-8 {\n order: 8;\n }\n .fs-order-sm-9 {\n order: 9;\n }\n .fs-order-sm-10 {\n order: 10;\n }\n .fs-order-sm-11 {\n order: 11;\n }\n .fs-order-sm-12 {\n order: 12;\n }\n .fs-col-sm {\n flex: 1 0 0%;\n }\n .fs-col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-sm-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-sm-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-sm-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-sm-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-sm-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-sm-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-sm-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-sm-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-sm-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-sm-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-sm-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-sm-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 768px) {\n .fs-row-cols-md-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-row-cols-md-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .fs-row-cols-md-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-row-cols-md-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-row-cols-md-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-row-cols-md-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .fs-row-cols-md-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-order-md-0 {\n order: 0;\n }\n .fs-order-md-1 {\n order: 1;\n }\n .fs-order-md-2 {\n order: 2;\n }\n .fs-order-md-3 {\n order: 3;\n }\n .fs-order-md-4 {\n order: 4;\n }\n .fs-order-md-5 {\n order: 5;\n }\n .fs-order-md-6 {\n order: 6;\n }\n .fs-order-md-7 {\n order: 7;\n }\n .fs-order-md-8 {\n order: 8;\n }\n .fs-order-md-9 {\n order: 9;\n }\n .fs-order-md-10 {\n order: 10;\n }\n .fs-order-md-11 {\n order: 11;\n }\n .fs-order-md-12 {\n order: 12;\n }\n .fs-col-md {\n flex: 1 0 0%;\n }\n .fs-col-md-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-md-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-md-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-md-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-md-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-md-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-md-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-md-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-md-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-md-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-md-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-md-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-md-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 1024px) {\n .fs-row-cols-lg-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-row-cols-lg-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .fs-row-cols-lg-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-row-cols-lg-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-row-cols-lg-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-row-cols-lg-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .fs-row-cols-lg-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-order-lg-0 {\n order: 0;\n }\n .fs-order-lg-1 {\n order: 1;\n }\n .fs-order-lg-2 {\n order: 2;\n }\n .fs-order-lg-3 {\n order: 3;\n }\n .fs-order-lg-4 {\n order: 4;\n }\n .fs-order-lg-5 {\n order: 5;\n }\n .fs-order-lg-6 {\n order: 6;\n }\n .fs-order-lg-7 {\n order: 7;\n }\n .fs-order-lg-8 {\n order: 8;\n }\n .fs-order-lg-9 {\n order: 9;\n }\n .fs-order-lg-10 {\n order: 10;\n }\n .fs-order-lg-11 {\n order: 11;\n }\n .fs-order-lg-12 {\n order: 12;\n }\n .fs-col-lg {\n flex: 1 0 0%;\n }\n .fs-col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-lg-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-lg-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-lg-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-lg-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-lg-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-lg-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-lg-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-lg-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-lg-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-lg-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-lg-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-lg-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 1280px) {\n .fs-row-cols-xl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-row-cols-xl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .fs-row-cols-xl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-row-cols-xl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-row-cols-xl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-row-cols-xl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .fs-row-cols-xl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-order-xl-0 {\n order: 0;\n }\n .fs-order-xl-1 {\n order: 1;\n }\n .fs-order-xl-2 {\n order: 2;\n }\n .fs-order-xl-3 {\n order: 3;\n }\n .fs-order-xl-4 {\n order: 4;\n }\n .fs-order-xl-5 {\n order: 5;\n }\n .fs-order-xl-6 {\n order: 6;\n }\n .fs-order-xl-7 {\n order: 7;\n }\n .fs-order-xl-8 {\n order: 8;\n }\n .fs-order-xl-9 {\n order: 9;\n }\n .fs-order-xl-10 {\n order: 10;\n }\n .fs-order-xl-11 {\n order: 11;\n }\n .fs-order-xl-12 {\n order: 12;\n }\n .fs-col-xl {\n flex: 1 0 0%;\n }\n .fs-col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-xl-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-xl-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-xl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-xl-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-xl-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-xl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-xl-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-xl-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-xl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-xl-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-xl-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-xl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 1536px) {\n .fs-row-cols-xxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-row-cols-xxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .fs-row-cols-xxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-row-cols-xxl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-row-cols-xxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-row-cols-xxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .fs-row-cols-xxl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-order-xxl-0 {\n order: 0;\n }\n .fs-order-xxl-1 {\n order: 1;\n }\n .fs-order-xxl-2 {\n order: 2;\n }\n .fs-order-xxl-3 {\n order: 3;\n }\n .fs-order-xxl-4 {\n order: 4;\n }\n .fs-order-xxl-5 {\n order: 5;\n }\n .fs-order-xxl-6 {\n order: 6;\n }\n .fs-order-xxl-7 {\n order: 7;\n }\n .fs-order-xxl-8 {\n order: 8;\n }\n .fs-order-xxl-9 {\n order: 9;\n }\n .fs-order-xxl-10 {\n order: 10;\n }\n .fs-order-xxl-11 {\n order: 11;\n }\n .fs-order-xxl-12 {\n order: 12;\n }\n .fs-col-xxl {\n flex: 1 0 0%;\n }\n .fs-col-xxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-xxl-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-xxl-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-xxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-xxl-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-xxl-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-xxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-xxl-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-xxl-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-xxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-xxl-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-xxl-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-xxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n @media (min-width: 1920px) {\n .fs-row-cols-xxxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-row-cols-xxxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .fs-row-cols-xxxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-row-cols-xxxl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-row-cols-xxxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-row-cols-xxxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .fs-row-cols-xxxl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-order-xxxl-0 {\n order: 0;\n }\n .fs-order-xxxl-1 {\n order: 1;\n }\n .fs-order-xxxl-2 {\n order: 2;\n }\n .fs-order-xxxl-3 {\n order: 3;\n }\n .fs-order-xxxl-4 {\n order: 4;\n }\n .fs-order-xxxl-5 {\n order: 5;\n }\n .fs-order-xxxl-6 {\n order: 6;\n }\n .fs-order-xxxl-7 {\n order: 7;\n }\n .fs-order-xxxl-8 {\n order: 8;\n }\n .fs-order-xxxl-9 {\n order: 9;\n }\n .fs-order-xxxl-10 {\n order: 10;\n }\n .fs-order-xxxl-11 {\n order: 11;\n }\n .fs-order-xxxl-12 {\n order: 12;\n }\n .fs-col-xxxl {\n flex: 1 0 0%;\n }\n .fs-col-xxxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .fs-col-xxxl-1 {\n flex: 0 0 auto;\n width: 8.3333333333%;\n }\n .fs-col-xxxl-2 {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .fs-col-xxxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .fs-col-xxxl-4 {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .fs-col-xxxl-5 {\n flex: 0 0 auto;\n width: 41.6666666667%;\n }\n .fs-col-xxxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .fs-col-xxxl-7 {\n flex: 0 0 auto;\n width: 58.3333333333%;\n }\n .fs-col-xxxl-8 {\n flex: 0 0 auto;\n width: 66.6666666667%;\n }\n .fs-col-xxxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .fs-col-xxxl-10 {\n flex: 0 0 auto;\n width: 83.3333333333%;\n }\n .fs-col-xxxl-11 {\n flex: 0 0 auto;\n width: 91.6666666667%;\n }\n .fs-col-xxxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n }\n}\n@layer layout {\n .fs-sidebar {\n display: flex;\n flex-wrap: wrap;\n gap: var(--fs-sidebar-gap, 1rem);\n }\n .fs-sidebar-aside {\n flex-basis: var(--fs-sidebar-width, 16rem);\n flex-grow: 1;\n }\n .fs-sidebar-content {\n flex-basis: 0;\n flex-grow: 999;\n min-width: 50%;\n }\n .fs-sidebar-reverse {\n flex-direction: row-reverse;\n }\n .fs-sidebar-gap-0 {\n --fs-sidebar-gap: 0;\n }\n .fs-sidebar-gap-1 {\n --fs-sidebar-gap: 0.25rem;\n }\n .fs-sidebar-gap-2 {\n --fs-sidebar-gap: 0.5rem;\n }\n .fs-sidebar-gap-3 {\n --fs-sidebar-gap: 1rem;\n }\n .fs-sidebar-gap-4 {\n --fs-sidebar-gap: 1.5rem;\n }\n .fs-sidebar-gap-5 {\n --fs-sidebar-gap: 3rem;\n }\n .fs-sidebar-width-sm {\n --fs-sidebar-width: 120px;\n }\n .fs-sidebar-width-md {\n --fs-sidebar-width: 240px;\n }\n .fs-sidebar-width-lg {\n --fs-sidebar-width: 360px;\n }\n .fs-sidebar-width-xl {\n --fs-sidebar-width: 480px;\n }\n .fs-sidebar-width-xxl {\n --fs-sidebar-width: 600px;\n }\n .fs-sidebar-width-xxxl {\n --fs-sidebar-width: 720px;\n }\n}\n@layer layout {\n .fs-stack {\n display: flex;\n flex-direction: column;\n gap: var(--fs-stack-gap, 1rem);\n }\n .fs-stack-gap-0 {\n --fs-stack-gap: 0;\n }\n .fs-stack-gap-1 {\n --fs-stack-gap: 0.25rem;\n }\n .fs-stack-gap-2 {\n --fs-stack-gap: 0.5rem;\n }\n .fs-stack-gap-3 {\n --fs-stack-gap: 1rem;\n }\n .fs-stack-gap-4 {\n --fs-stack-gap: 1.5rem;\n }\n .fs-stack-gap-5 {\n --fs-stack-gap: 3rem;\n }\n}\n@layer components {\n .fs-form-row {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: flex-start;\n justify-content: flex-start;\n gap: 12px 16px;\n width: 100%;\n }\n .fs-form-col {\n display: flex;\n flex: 1 1 240px;\n flex-direction: column;\n align-items: stretch;\n min-width: 0;\n gap: 4px;\n }\n .fs-form-label {\n width: auto;\n margin: 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n font-weight: 400;\n }\n .fs-form-text {\n width: auto;\n margin: 0;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 400;\n }\n .fs-form-text,\n .fs-valid-feedback,\n .fs-invalid-feedback {\n min-height: 1.25rem;\n padding: 3px 8px;\n border-radius: var(--fs-radius-sm);\n }\n .fs-form-text {\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 400;\n }\n .fs-valid-feedback,\n .fs-invalid-feedback {\n display: none;\n font-size: 0.6875rem;\n font-weight: 400;\n }\n .fs-valid-feedback {\n color: var(--fs-alert-success-text);\n background-color: var(--fs-feedback-success-bg);\n }\n .fs-invalid-feedback {\n color: var(--fs-alert-danger-text);\n background-color: var(--fs-feedback-danger-bg);\n }\n .is-valid ~ .fs-valid-feedback,\n .is-invalid ~ .fs-invalid-feedback {\n display: block;\n }\n .fs-form-control {\n width: 100%;\n min-width: 0;\n height: var(--fs-control-height);\n padding: 0 7px;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: 0.8125rem;\n font-weight: 500;\n }\n .fs-form-control::placeholder {\n color: var(--fs-color-muted);\n }\n .fs-form-control:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-form-control:disabled {\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n .fs-form-control:read-only {\n background-color: var(--fs-color-subtle);\n cursor: default;\n }\n .fs-floating-label {\n position: relative;\n }\n .fs-floating-label > .fs-form-control {\n height: 56px;\n padding-top: 20px;\n }\n .fs-floating-label > .fs-form-label {\n position: absolute;\n z-index: 1;\n top: 8px;\n left: 8px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n pointer-events: none;\n }\n .fs-form-control[aria-invalid=true],\n .fs-was-validated .fs-form-control:invalid {\n border-color: var(--fs-color-danger);\n }\n .fs-form-control[aria-invalid=false],\n .fs-was-validated .fs-form-control:valid {\n border-color: var(--fs-color-success);\n }\n .fs-form-control-sm {\n height: var(--fs-control-height-sm);\n font-size: 0.6875rem;\n }\n .fs-form-control-lg {\n height: var(--fs-control-height-lg);\n font-size: 0.8125rem;\n }\n .fs-form-size-sm {\n width: 120px;\n }\n .fs-form-size-md {\n width: 180px;\n }\n .fs-form-size-lg {\n width: 240px;\n }\n .fs-form-size-xl {\n width: 300px;\n }\n .fs-form-size-xxl {\n width: 360px;\n }\n .fs-form-control.is-valid {\n border-color: var(--fs-color-success);\n }\n .fs-form-control.is-valid:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-success);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-success);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-success) 22%, transparent);\n }\n .fs-form-control.is-invalid {\n border-color: var(--fs-color-danger);\n }\n .fs-form-control.is-invalid:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-danger);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-danger);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-danger) 22%, transparent);\n }\n .fs-form-select {\n display: flex;\n flex: 1;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n height: var(--fs-control-height);\n padding: 0 7px;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: 0.8125rem;\n font-weight: 500;\n text-align: left;\n cursor: pointer;\n }\n .fs-form-select::after {\n flex-shrink: 0;\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 8px;\n content: \"\";\n border-top: 5px solid;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n }\n .fs-form-select:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-form-select:disabled {\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n opacity: 0.4;\n pointer-events: none;\n }\n .fs-form-select-sm {\n height: var(--fs-control-height-sm);\n font-size: 0.6875rem;\n }\n .fs-form-select-lg {\n height: var(--fs-control-height-lg);\n font-size: 0.8125rem;\n }\n .fs-file-upload {\n position: relative;\n display: inline-flex;\n }\n .fs-file-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n .fs-file-label {\n display: inline-flex;\n align-items: center;\n height: 38px;\n padding: 0 14px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n font-size: 0.8125rem;\n font-weight: 500;\n cursor: pointer;\n user-select: none;\n transition: filter var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-file-label:hover {\n filter: brightness(0.96);\n }\n .fs-file-input:focus-visible + .fs-file-label {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-file-input:disabled + .fs-file-label {\n color: var(--fs-color-muted);\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n cursor: default;\n }\n .fs-file-label-sm {\n height: 30px;\n padding: 0 10px;\n font-size: 0.6875rem;\n }\n .fs-file-label-lg {\n height: 46px;\n padding: 0 18px;\n font-size: 1rem;\n }\n .fs-file-label.is-dragover {\n border-color: var(--fs-color-primary);\n background-color: var(--fs-color-subtle);\n }\n .fs-file-label-dropzone {\n flex-direction: column;\n gap: 4px;\n width: 100%;\n height: auto;\n padding: 32px 16px;\n border-style: dashed;\n border-width: 2px;\n font-weight: 400;\n text-align: center;\n }\n .fs-file-label-dropzone .fs-file-dropzone-hint {\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 400;\n }\n .fs-input-group {\n display: flex;\n align-items: stretch;\n width: 100%;\n }\n .fs-input-group > .fs-form-control,\n .fs-input-group > .fs-form-select {\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n }\n .fs-input-group-text {\n display: flex;\n align-items: center;\n padding: 0 12px;\n border: 1px solid var(--fs-color-border);\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n font-size: 0.8125rem;\n font-weight: 500;\n white-space: nowrap;\n }\n .fs-input-group > :not(:first-child) {\n margin-left: -1px;\n }\n .fs-input-group > :focus-visible,\n .fs-input-group > :focus-within {\n position: relative;\n z-index: 1;\n }\n .fs-input-group > * {\n border-radius: 0;\n }\n .fs-input-group > :first-child {\n border-top-left-radius: var(--fs-radius-sm);\n border-bottom-left-radius: var(--fs-radius-sm);\n }\n .fs-input-group > :last-child {\n border-top-right-radius: var(--fs-radius-sm);\n border-bottom-right-radius: var(--fs-radius-sm);\n }\n .fs-input-group-sm > .fs-form-control,\n .fs-input-group-sm > .fs-form-select,\n .fs-input-group-sm > .fs-input-group-text {\n height: 30px;\n padding: 0 8px;\n font-size: 0.6875rem;\n }\n .fs-input-group-lg > .fs-form-control,\n .fs-input-group-lg > .fs-form-select,\n .fs-input-group-lg > .fs-input-group-text {\n height: 46px;\n padding: 0 16px;\n font-size: 1rem;\n }\n}\n@layer components {\n .fs-check,\n .fs-radio,\n .fs-switch {\n display: inline-flex;\n align-items: center;\n }\n .fs-check {\n --fs-check-mark: var(--fs-color-on-primary);\n }\n .fs-check-input,\n .fs-radio-input,\n .fs-switch-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n .fs-check-label,\n .fs-radio-label,\n .fs-switch-label {\n position: relative;\n display: inline-flex;\n align-items: center;\n min-height: 20px;\n padding-left: 28px;\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n cursor: pointer;\n user-select: none;\n }\n .fs-check-label::before,\n .fs-radio-label::before,\n .fs-switch-label::before {\n position: absolute;\n left: 0;\n box-sizing: border-box;\n border: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface);\n content: \"\";\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n }\n .fs-check-label::before,\n .fs-radio-label::before {\n width: 18px;\n height: 18px;\n }\n .fs-check-label::before {\n border: 2px solid var(--fs-color-primary);\n border-radius: 0;\n }\n .fs-radio-label::before {\n border-radius: 50%;\n }\n .fs-check-label::after {\n position: absolute;\n left: 4px;\n width: 9px;\n height: 5px;\n content: \"\";\n opacity: 0;\n border-bottom: 2px solid var(--fs-check-mark);\n border-left: 2px solid var(--fs-check-mark);\n transform: translateY(-1px) rotate(-45deg);\n transition: opacity 0.1s ease-in-out;\n }\n .fs-radio-label::after {\n position: absolute;\n left: 5px;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n content: \"\";\n opacity: 0;\n background-color: var(--fs-color-on-primary);\n transition: opacity 0.1s ease-in-out;\n }\n .fs-check-input:checked + .fs-check-label::before,\n .fs-radio-input:checked + .fs-radio-label::before {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-check-input:checked + .fs-check-label::after,\n .fs-radio-input:checked + .fs-radio-label::after {\n opacity: 1;\n }\n .fs-check-input:not(:checked, :indeterminate, :disabled, .is-invalid) + .fs-check-label:hover::before {\n background-color: color-mix(in srgb, var(--fs-color-primary) 10%, transparent);\n }\n .fs-check-input:not(:disabled, :indeterminate, .is-invalid) + .fs-check-label:active::before {\n background-color: color-mix(in srgb, var(--fs-color-primary) 86%, var(--fs-color-black));\n border-color: var(--fs-color-primary);\n }\n .fs-check-input:checked:not(:disabled, .is-invalid) + .fs-check-label:active::after {\n transform: translateY(-1px) rotate(-45deg) scale(0.9);\n }\n .fs-switch-label {\n padding-left: 44px;\n }\n .fs-switch-label::before {\n width: 36px;\n height: 20px;\n border-radius: var(--fs-radius-md);\n }\n .fs-switch-label::after {\n position: absolute;\n left: 2px;\n width: 16px;\n height: 14px;\n border-radius: var(--fs-radius-sm);\n content: \"\";\n background-color: var(--fs-color-border);\n transition: left 0.15s ease-in-out, background-color 0.15s ease-in-out;\n }\n .fs-switch-input:checked + .fs-switch-label::before {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-switch-input:checked + .fs-switch-label::after {\n left: 18px;\n background-color: var(--fs-color-on-primary);\n }\n .fs-check-input:focus-visible + .fs-check-label::before,\n .fs-radio-input:focus-visible + .fs-radio-label::before,\n .fs-switch-input:focus-visible + .fs-switch-label::before {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-radio-input:disabled + .fs-radio-label,\n .fs-switch-input:disabled + .fs-switch-label {\n opacity: 0.5;\n pointer-events: none;\n }\n .fs-check-input:disabled + .fs-check-label {\n color: var(--fs-color-muted);\n opacity: 1;\n pointer-events: none;\n }\n .fs-check-input:disabled:not(:checked, :indeterminate) + .fs-check-label::before {\n border-color: var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n .fs-check-input:disabled:checked + .fs-check-label::before {\n border-color: color-mix(in srgb, var(--fs-color-primary) 55%, var(--fs-color-border));\n background-color: color-mix(in srgb, var(--fs-color-primary) 45%, var(--fs-color-subtle));\n }\n .fs-check-input:disabled:checked + .fs-check-label::after {\n opacity: 0.72;\n }\n .fs-radio-input.is-valid + .fs-radio-label::before {\n border-color: var(--fs-color-success);\n }\n .fs-check-input.is-invalid + .fs-check-label::before,\n .fs-radio-input.is-invalid + .fs-radio-label::before {\n border-color: var(--fs-color-danger);\n }\n .fs-check-sm .fs-check-label,\n .fs-radio-sm .fs-radio-label {\n min-height: 16px;\n padding-left: 24px;\n font-size: 0.75rem;\n }\n .fs-check-sm .fs-check-label::before,\n .fs-radio-sm .fs-radio-label::before {\n width: 15px;\n height: 15px;\n }\n .fs-check-sm .fs-check-label::after {\n left: 3px;\n width: 8px;\n height: 4px;\n }\n .fs-radio-sm .fs-radio-label::after {\n left: 4px;\n width: 7px;\n height: 7px;\n }\n .fs-check-lg .fs-check-label,\n .fs-radio-lg .fs-radio-label {\n min-height: 24px;\n padding-left: 34px;\n font-size: 1rem;\n }\n .fs-check-lg .fs-check-label::before,\n .fs-radio-lg .fs-radio-label::before {\n width: 22px;\n height: 22px;\n }\n .fs-check-lg .fs-check-label::after {\n left: 5px;\n width: 11px;\n height: 6px;\n }\n .fs-radio-lg .fs-radio-label::after {\n left: 6px;\n width: 10px;\n height: 10px;\n }\n .fs-switch-sm .fs-switch-label {\n min-height: 16px;\n padding-left: 38px;\n font-size: 0.75rem;\n }\n .fs-switch-sm .fs-switch-label::before {\n width: 30px;\n height: 16px;\n }\n .fs-switch-sm .fs-switch-label::after {\n width: 12px;\n height: 10px;\n }\n .fs-switch-sm .fs-switch-input:checked + .fs-switch-label::after {\n left: 16px;\n }\n .fs-switch-lg .fs-switch-label {\n min-height: 26px;\n padding-left: 52px;\n font-size: 1rem;\n }\n .fs-switch-lg .fs-switch-label::before {\n width: 44px;\n height: 24px;\n }\n .fs-switch-lg .fs-switch-label::after {\n width: 20px;\n height: 18px;\n }\n .fs-switch-lg .fs-switch-input:checked + .fs-switch-label::after {\n left: 22px;\n }\n .fs-check-input:indeterminate + .fs-check-label::before {\n border: 2px dashed var(--fs-color-primary);\n background-color: var(--fs-color-surface);\n }\n .fs-check-input:indeterminate + .fs-check-label::after {\n left: 4px;\n width: 10px;\n height: 0;\n opacity: 1;\n border-bottom: 2px solid var(--fs-color-primary);\n border-left: 0;\n transform: translateY(3px) rotate(0deg);\n }\n .fs-check-sm .fs-check-input:indeterminate + .fs-check-label::after {\n left: 3px;\n width: 8px;\n }\n .fs-check-lg .fs-check-input:indeterminate + .fs-check-label::after {\n left: 5px;\n width: 12px;\n }\n .fs-check-input.is-invalid + .fs-check-label::before {\n background-color: var(--fs-color-danger);\n }\n .fs-check-input.is-invalid + .fs-check-label::after {\n top: 6px;\n left: 5px;\n width: 8px;\n height: 8px;\n opacity: 1;\n border: 0;\n background-image: linear-gradient(45deg, transparent 42%, #ffffff 42% 58%, transparent 58%), linear-gradient(-45deg, transparent 42%, #ffffff 42% 58%, transparent 58%);\n transform: none;\n }\n .fs-check-sm .fs-check-input.is-invalid + .fs-check-label::after {\n top: 5px;\n left: 4px;\n width: 7px;\n height: 7px;\n }\n .fs-check-lg .fs-check-input.is-invalid + .fs-check-label::after {\n top: 6px;\n left: 6px;\n width: 10px;\n height: 10px;\n }\n}\n@layer components {\n .fs-form-range {\n --fs-range-track-height: 6px;\n --fs-range-track-color: var(--fs-color-border);\n --fs-range-fill-color: var(--fs-color-primary);\n --fs-range-thumb-size: 18px;\n --fs-range-thumb-color: var(--fs-color-surface);\n --fs-range-thumb-border-color: var(--fs-color-primary);\n --fs-range-percent: 0%;\n width: 100%;\n height: var(--fs-range-thumb-size);\n padding: 0;\n background: transparent;\n appearance: none;\n cursor: pointer;\n }\n .fs-form-range::-webkit-slider-runnable-track {\n height: var(--fs-range-track-height);\n border-radius: var(--fs-radius-sm);\n background: linear-gradient(to right, var(--fs-range-fill-color) var(--fs-range-percent), var(--fs-range-track-color) var(--fs-range-percent));\n }\n .fs-form-range::-moz-range-track {\n height: var(--fs-range-track-height);\n border-radius: var(--fs-radius-sm);\n background: linear-gradient(to right, var(--fs-range-fill-color) var(--fs-range-percent), var(--fs-range-track-color) var(--fs-range-percent));\n }\n .fs-form-range::-webkit-slider-thumb {\n width: var(--fs-range-thumb-size);\n height: var(--fs-range-thumb-size);\n margin-top: calc((var(--fs-range-track-height) - var(--fs-range-thumb-size)) / 2);\n border: 2px solid var(--fs-range-thumb-border-color);\n border-radius: 50%;\n background-color: var(--fs-range-thumb-color);\n appearance: none;\n cursor: pointer;\n }\n .fs-form-range::-moz-range-thumb {\n width: calc(var(--fs-range-thumb-size) - 4px);\n height: calc(var(--fs-range-thumb-size) - 4px);\n border: 2px solid var(--fs-range-thumb-border-color);\n border-radius: 50%;\n background-color: var(--fs-range-thumb-color);\n cursor: pointer;\n }\n .fs-form-range:focus-visible::-webkit-slider-thumb {\n outline: var(--fs-focus-width) solid var(--fs-range-thumb-border-color);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-range-thumb-border-color);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-range-thumb-border-color) 22%, transparent);\n }\n .fs-form-range:focus-visible::-moz-range-thumb {\n outline: var(--fs-focus-width) solid var(--fs-range-thumb-border-color);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-range-thumb-border-color);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-range-thumb-border-color) 22%, transparent);\n }\n .fs-form-range:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n }\n .fs-form-range:disabled::-webkit-slider-thumb {\n cursor: not-allowed;\n }\n .fs-form-range:disabled::-moz-range-thumb {\n cursor: not-allowed;\n }\n .fs-range-output {\n display: inline-block;\n min-width: 2.5em;\n color: var(--fs-color-text);\n font-size: 0.75rem;\n font-weight: 500;\n text-align: center;\n }\n}\n@layer components {\n .fs-file-upload-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 100%;\n margin-top: 12px;\n padding: 0;\n list-style: none;\n }\n .fs-file-upload-item {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n background-color: var(--fs-color-surface);\n }\n .fs-file-upload-thumb {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n overflow: hidden;\n border-radius: var(--fs-radius-sm);\n background-color: var(--fs-color-subtle);\n color: var(--fs-color-muted);\n }\n .fs-file-upload-thumb img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n .fs-file-upload-info {\n flex: 1;\n min-width: 0;\n }\n .fs-file-upload-name {\n margin: 0;\n color: var(--fs-color-text);\n font-size: 0.75rem;\n font-weight: 500;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-file-upload-size {\n margin: 0 0 4px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n }\n .fs-file-upload-item.is-error .fs-file-upload-size {\n color: var(--fs-alert-danger-text);\n }\n .fs-file-upload-remove {\n flex-shrink: 0;\n }\n}\n@layer components {\n .fs-btn {\n --fs-btn-color: var(--fs-color-text-primary);\n --fs-btn-bg: var(--fs-color-bg-subtle);\n --fs-btn-border-color: var(--fs-color-border-default);\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--fs-space-1);\n min-height: var(--fs-control-height);\n padding: 0 var(--fs-control-padding-x);\n border: var(--fs-border-width) solid var(--fs-btn-border-color);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-btn-color);\n background-color: var(--fs-btn-bg);\n font-size: 0.8125rem;\n font-weight: 500;\n text-decoration: none;\n cursor: pointer;\n transition: color var(--fs-transition-fast) var(--fs-ease-standard), background-color var(--fs-transition-fast) var(--fs-ease-standard), border-color var(--fs-transition-fast) var(--fs-ease-standard), box-shadow var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-btn:hover {\n --fs-btn-bg: var(--fs-btn-hover-bg, var(--fs-color-subtle));\n }\n .fs-btn:active {\n --fs-btn-bg: var(--fs-btn-active-bg, var(--fs-color-border));\n }\n .fs-btn:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-btn:disabled,\n .fs-btn.is-disabled {\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n .fs-btn-primary {\n --fs-btn-color: var(--fs-color-on-primary);\n --fs-btn-bg: var(--fs-color-primary);\n --fs-btn-border-color: var(--fs-color-primary);\n --fs-btn-hover-bg: var(--fs-color-primary);\n --fs-btn-active-bg: var(--fs-color-primary);\n }\n .fs-btn-outline-primary {\n --fs-btn-color: var(--fs-alert-primary-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-primary);\n }\n .fs-btn-outline-primary:hover,\n .fs-btn-outline-primary:active {\n --fs-btn-color: var(--fs-color-on-primary);\n --fs-btn-bg: var(--fs-color-primary);\n }\n .fs-btn-secondary {\n --fs-btn-color: var(--fs-color-on-secondary);\n --fs-btn-bg: var(--fs-color-secondary);\n --fs-btn-border-color: var(--fs-color-secondary);\n --fs-btn-hover-bg: var(--fs-color-secondary);\n --fs-btn-active-bg: var(--fs-color-secondary);\n }\n .fs-btn-outline-secondary {\n --fs-btn-color: var(--fs-alert-secondary-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-secondary);\n }\n .fs-btn-outline-secondary:hover,\n .fs-btn-outline-secondary:active {\n --fs-btn-color: var(--fs-color-on-secondary);\n --fs-btn-bg: var(--fs-color-secondary);\n }\n .fs-btn-success {\n --fs-btn-color: var(--fs-color-on-success);\n --fs-btn-bg: var(--fs-color-success);\n --fs-btn-border-color: var(--fs-color-success);\n --fs-btn-hover-bg: var(--fs-color-success);\n --fs-btn-active-bg: var(--fs-color-success);\n }\n .fs-btn-outline-success {\n --fs-btn-color: var(--fs-alert-success-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-success);\n }\n .fs-btn-outline-success:hover,\n .fs-btn-outline-success:active {\n --fs-btn-color: var(--fs-color-on-success);\n --fs-btn-bg: var(--fs-color-success);\n }\n .fs-btn-warning {\n --fs-btn-color: var(--fs-color-on-warning);\n --fs-btn-bg: var(--fs-color-warning);\n --fs-btn-border-color: var(--fs-color-warning);\n --fs-btn-hover-bg: var(--fs-color-warning);\n --fs-btn-active-bg: var(--fs-color-warning);\n }\n .fs-btn-outline-warning {\n --fs-btn-color: var(--fs-alert-warning-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-warning);\n }\n .fs-btn-outline-warning:hover,\n .fs-btn-outline-warning:active {\n --fs-btn-color: var(--fs-color-on-warning);\n --fs-btn-bg: var(--fs-color-warning);\n }\n .fs-btn-danger {\n --fs-btn-color: var(--fs-color-on-danger);\n --fs-btn-bg: var(--fs-color-danger);\n --fs-btn-border-color: var(--fs-color-danger);\n --fs-btn-hover-bg: var(--fs-color-danger);\n --fs-btn-active-bg: var(--fs-color-danger);\n }\n .fs-btn-outline-danger {\n --fs-btn-color: var(--fs-alert-danger-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-danger);\n }\n .fs-btn-outline-danger:hover,\n .fs-btn-outline-danger:active {\n --fs-btn-color: var(--fs-color-on-danger);\n --fs-btn-bg: var(--fs-color-danger);\n }\n .fs-btn-info {\n --fs-btn-color: var(--fs-color-on-info);\n --fs-btn-bg: var(--fs-color-info);\n --fs-btn-border-color: var(--fs-color-info);\n --fs-btn-hover-bg: var(--fs-color-info);\n --fs-btn-active-bg: var(--fs-color-info);\n }\n .fs-btn-outline-info {\n --fs-btn-color: var(--fs-alert-info-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-info);\n }\n .fs-btn-outline-info:hover,\n .fs-btn-outline-info:active {\n --fs-btn-color: var(--fs-color-on-info);\n --fs-btn-bg: var(--fs-color-info);\n }\n .fs-btn-sm {\n min-height: var(--fs-control-height-sm);\n padding: 0 var(--fs-control-padding-x-sm);\n font-size: 0.75rem;\n }\n .fs-btn-lg {\n min-height: var(--fs-control-height-lg);\n padding: 0 var(--fs-control-padding-x-lg);\n font-size: 1rem;\n }\n .fs-btn-close {\n position: relative;\n width: 20px;\n height: 20px;\n padding: 0;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface-raised);\n cursor: pointer;\n }\n .fs-btn-close::before,\n .fs-btn-close::after {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 12px;\n height: 2px;\n background-color: currentcolor;\n content: \"\";\n }\n .fs-btn-close::before {\n transform: translate(-50%, -50%) rotate(45deg);\n }\n .fs-btn-close::after {\n transform: translate(-50%, -50%) rotate(-45deg);\n }\n .fs-btn-close:hover {\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n }\n .fs-btn-close:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n}\n@layer components {\n .fs-card {\n position: relative;\n display: flex;\n flex-direction: column;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-lg);\n background-color: var(--fs-color-surface);\n }\n .fs-card-horizontal {\n flex-direction: row;\n }\n .fs-card-horizontal .fs-card-header:first-child {\n border-radius: calc(var(--fs-radius-lg) - 1px) 0 0 calc(var(--fs-radius-lg) - 1px);\n border-right: 1px solid var(--fs-color-border);\n border-bottom: none;\n }\n .fs-card-horizontal .fs-card-footer:last-child {\n border-radius: 0 calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px) 0;\n border-left: 1px solid var(--fs-color-border);\n border-top: none;\n }\n .fs-card-clickable {\n transition: border-color var(--fs-transition-fast) var(--fs-ease-standard), box-shadow var(--fs-transition-fast) var(--fs-ease-standard), transform var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-card-clickable:hover,\n .fs-card-clickable:focus-within {\n border-color: var(--fs-color-primary);\n box-shadow: var(--fs-shadow-sm);\n transform: translateY(-1px);\n }\n .fs-stretched-link {\n color: inherit;\n text-decoration: none;\n }\n .fs-stretched-link::after {\n position: absolute;\n inset: 0;\n z-index: 1;\n content: \"\";\n }\n .fs-card-header,\n .fs-card-body,\n .fs-card-footer {\n padding: 10px;\n }\n .fs-card-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n border-bottom: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n .fs-card-header .fs-card-title {\n margin: 0;\n }\n .fs-card-header:first-child {\n border-radius: calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px) 0 0;\n }\n .fs-card-footer {\n border-top: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n .fs-card-footer:last-child {\n border-radius: 0 0 calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px);\n }\n .fs-card-title {\n margin: 0 0 4px;\n color: var(--fs-color-text);\n font-size: 1rem;\n font-weight: 500;\n }\n .fs-card-subtitle {\n margin: 0 0 8px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-card-text {\n margin: 0 0 8px;\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n }\n .fs-card-text:last-child {\n margin-bottom: 0;\n }\n .fs-card-sm .fs-card-header,\n .fs-card-sm .fs-card-body,\n .fs-card-sm .fs-card-footer {\n padding: 5px;\n }\n .fs-card-lg .fs-card-header,\n .fs-card-lg .fs-card-body,\n .fs-card-lg .fs-card-footer {\n padding: 15px;\n }\n}\n@layer components {\n .fs-alert {\n display: flex;\n align-items: flex-start;\n gap: 8px;\n padding: 12px 16px;\n border: 1px solid var(--fs-color-border);\n border-left: 5px solid var(--fs-color-border);\n border-radius: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 0.75rem;\n }\n .fs-alert-primary {\n color: var(--fs-alert-primary-text);\n background-color: var(--fs-alert-primary-bg);\n border-color: var(--fs-color-primary);\n }\n .fs-alert-secondary {\n color: var(--fs-alert-secondary-text);\n background-color: var(--fs-alert-secondary-bg);\n border-color: var(--fs-color-secondary);\n }\n .fs-alert-success {\n color: var(--fs-alert-success-text);\n background-color: var(--fs-alert-success-bg);\n border-color: var(--fs-color-success);\n }\n .fs-alert-warning {\n color: var(--fs-alert-warning-text);\n background-color: var(--fs-alert-warning-bg);\n border-color: var(--fs-color-warning);\n }\n .fs-alert-danger {\n color: var(--fs-alert-danger-text);\n background-color: var(--fs-alert-danger-bg);\n border-color: var(--fs-color-danger);\n }\n .fs-alert-info {\n color: var(--fs-alert-info-text);\n background-color: var(--fs-alert-info-bg);\n border-color: var(--fs-color-info);\n }\n}\n@layer components {\n .fs-badge {\n --fs-badge-color: var(--fs-color-text);\n --fs-badge-bg: var(--fs-color-subtle);\n --fs-badge-border: transparent;\n --fs-badge-height: 22px;\n --fs-badge-radius: 0;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n justify-content: center;\n min-height: var(--fs-badge-height);\n padding: 1px 8px 3px;\n border: 1px solid var(--fs-badge-border);\n border-radius: var(--fs-badge-radius);\n color: var(--fs-badge-color);\n background-color: var(--fs-badge-bg);\n font-size: 0.6875rem;\n font-weight: 500;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n }\n .fs-badge-primary {\n --fs-badge-color: #ffffff;\n --fs-badge-bg: var(--fs-color-primary);\n }\n .fs-badge-soft-primary {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-primary) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-primary) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-primary) 38%, transparent);\n }\n .fs-badge-outline-primary {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-primary) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-secondary {\n --fs-badge-color: #ffffff;\n --fs-badge-bg: var(--fs-color-secondary);\n }\n .fs-badge-soft-secondary {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-secondary) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-secondary) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-secondary) 38%, transparent);\n }\n .fs-badge-outline-secondary {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-secondary) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-success {\n --fs-badge-color: #000000;\n --fs-badge-bg: var(--fs-color-success);\n }\n .fs-badge-soft-success {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-success) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-success) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-success) 38%, transparent);\n }\n .fs-badge-outline-success {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-success) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-warning {\n --fs-badge-color: #000000;\n --fs-badge-bg: var(--fs-color-warning);\n }\n .fs-badge-soft-warning {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-warning) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-warning) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-warning) 38%, transparent);\n }\n .fs-badge-outline-warning {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-warning) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-danger {\n --fs-badge-color: #ffffff;\n --fs-badge-bg: var(--fs-color-danger);\n }\n .fs-badge-soft-danger {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-danger) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-danger) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-danger) 38%, transparent);\n }\n .fs-badge-outline-danger {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-danger) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-info {\n --fs-badge-color: #ffffff;\n --fs-badge-bg: var(--fs-color-info);\n }\n .fs-badge-soft-info {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-info) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-info) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-info) 38%, transparent);\n }\n .fs-badge-outline-info {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-info) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n .fs-badge-sm {\n --fs-badge-height: 18px;\n padding: 0 6px 2px;\n font-size: 0.6875rem;\n }\n .fs-badge-lg {\n --fs-badge-height: 26px;\n padding: 2px 10px 4px;\n font-size: 0.8125rem;\n }\n .fs-badge-dot::before {\n width: 6px;\n height: 6px;\n flex: 0 0 6px;\n border-radius: 50%;\n background-color: currentcolor;\n transform: translateY(1px);\n content: \"\";\n }\n .fs-badge-count {\n min-width: var(--fs-badge-height);\n padding-inline: 6px;\n font-variant-numeric: tabular-nums;\n }\n .fs-badge-split {\n --fs-badge-split-label-bg: var(--fs-color-black);\n --fs-badge-split-label-color: var(--fs-color-white);\n --fs-badge-split-value-bg: var(--fs-color-primary);\n --fs-badge-split-value-color: #ffffff;\n --fs-badge-split-height: 22px;\n --fs-badge-split-radius: 0;\n display: inline-flex;\n min-height: var(--fs-badge-split-height);\n overflow: hidden;\n border-radius: var(--fs-badge-split-radius);\n font-size: 0.6875rem;\n font-weight: 500;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n }\n .fs-badge-split-label,\n .fs-badge-split-value {\n display: inline-flex;\n align-items: center;\n min-height: var(--fs-badge-split-height);\n padding: 1px 8px 3px;\n }\n .fs-badge-split-label {\n color: var(--fs-badge-split-label-color);\n background-color: var(--fs-badge-split-label-bg);\n }\n .fs-badge-split-value {\n color: var(--fs-badge-split-value-color);\n background-color: var(--fs-badge-split-value-bg);\n font-variant-numeric: tabular-nums;\n }\n .fs-badge-split-primary {\n --fs-badge-split-value-bg: var(--fs-color-primary);\n --fs-badge-split-value-color: #ffffff;\n }\n .fs-badge-split-secondary {\n --fs-badge-split-value-bg: var(--fs-color-secondary);\n --fs-badge-split-value-color: #ffffff;\n }\n .fs-badge-split-success {\n --fs-badge-split-value-bg: var(--fs-color-success);\n --fs-badge-split-value-color: #000000;\n }\n .fs-badge-split-warning {\n --fs-badge-split-value-bg: var(--fs-color-warning);\n --fs-badge-split-value-color: #000000;\n }\n .fs-badge-split-danger {\n --fs-badge-split-value-bg: var(--fs-color-danger);\n --fs-badge-split-value-color: #ffffff;\n }\n .fs-badge-split-info {\n --fs-badge-split-value-bg: var(--fs-color-info);\n --fs-badge-split-value-color: #ffffff;\n }\n .fs-badge-split.fs-badge-sm {\n --fs-badge-split-height: 18px;\n min-height: var(--fs-badge-split-height);\n padding: 0;\n }\n .fs-badge-split.fs-badge-lg {\n --fs-badge-split-height: 26px;\n min-height: var(--fs-badge-split-height);\n padding: 0;\n font-size: 0.8125rem;\n }\n .fs-badge-split.fs-badge-sm .fs-badge-split-label,\n .fs-badge-split.fs-badge-sm .fs-badge-split-value {\n padding: 0 6px 2px;\n }\n .fs-badge-split.fs-badge-lg .fs-badge-split-label,\n .fs-badge-split.fs-badge-lg .fs-badge-split-value {\n padding: 2px 10px 4px;\n }\n}\n@layer components {\n .fs-table {\n width: 100%;\n margin-bottom: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n border-collapse: collapse;\n }\n .fs-table th,\n .fs-table td {\n padding: 8px 12px;\n border-bottom: 1px solid var(--fs-color-border);\n text-align: left;\n vertical-align: middle;\n }\n .fs-table thead th {\n border-bottom-width: 2px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n font-weight: 500;\n text-transform: uppercase;\n }\n .fs-table-striped tbody tr:nth-of-type(odd) {\n background-color: var(--fs-color-subtle);\n }\n .fs-table-hover tbody tr:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-table-bordered th,\n .fs-table-bordered td {\n border: 1px solid var(--fs-color-border);\n }\n .fs-table-borderless th,\n .fs-table-borderless td {\n border: 0;\n }\n .fs-table-primary {\n background-color: var(--fs-alert-primary-bg);\n color: var(--fs-alert-primary-text);\n }\n .fs-table-secondary {\n background-color: var(--fs-alert-secondary-bg);\n color: var(--fs-alert-secondary-text);\n }\n .fs-table-success {\n background-color: var(--fs-alert-success-bg);\n color: var(--fs-alert-success-text);\n }\n .fs-table-warning {\n background-color: var(--fs-alert-warning-bg);\n color: var(--fs-alert-warning-text);\n }\n .fs-table-danger {\n background-color: var(--fs-alert-danger-bg);\n color: var(--fs-alert-danger-text);\n }\n .fs-table-info {\n background-color: var(--fs-alert-info-bg);\n color: var(--fs-alert-info-text);\n }\n .fs-table-sm th,\n .fs-table-sm td {\n padding: 4px 8px;\n }\n .fs-table-responsive {\n overflow-x: auto;\n }\n .fs-table-caption {\n caption-side: top;\n padding: var(--fs-space-2) 0;\n color: var(--fs-color-muted);\n text-align: start;\n }\n .fs-table-empty {\n padding: var(--fs-space-5);\n color: var(--fs-color-muted);\n text-align: center;\n }\n @media (width < 640px) {\n .fs-table-priority th:nth-child(n+4),\n .fs-table-priority td:nth-child(n+4) {\n display: none;\n }\n }\n}\n@layer components {\n .fs-navbar {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: 16px;\n padding: 12px 16px;\n border-bottom: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface);\n }\n .fs-navbar-brand {\n color: var(--fs-color-text);\n font-size: 1rem;\n font-weight: 500;\n text-decoration: none;\n }\n .fs-navbar-nav {\n display: flex;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-navbar-toggler {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 44px;\n min-height: 44px;\n padding: 8px;\n color: var(--fs-color-text);\n background: transparent;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n cursor: pointer;\n }\n .fs-navbar-collapse {\n flex-basis: 100%;\n width: 100%;\n }\n .fs-navbar-collapse:not(.is-open) {\n display: none;\n }\n .fs-navbar-collapse.is-open .fs-navbar-nav {\n flex-direction: column;\n align-items: stretch;\n }\n @media (width >= 768px) {\n .fs-navbar-toggler {\n display: none;\n }\n .fs-navbar-collapse,\n .fs-navbar-collapse:not(.is-open),\n .fs-navbar-collapse[hidden] {\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n justify-content: flex-end;\n width: auto;\n }\n .fs-navbar-collapse .fs-navbar-nav {\n flex-direction: row;\n }\n }\n .fs-nav-link {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 8px 12px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n text-decoration: none;\n transition: background-color 0.15s ease-in-out;\n }\n .fs-nav-link:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-nav-link:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-nav-link.is-active {\n color: var(--fs-alert-primary-text);\n font-weight: 500;\n }\n .fs-nav-link.is-disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n }\n}\n@layer components {\n .fs-combobox {\n position: relative;\n display: inline-flex;\n width: 100%;\n }\n .fs-combobox-listbox {\n overflow-y: auto;\n max-height: 240px;\n }\n}\n@layer components {\n [data-theme=dark] .fs-form-control[type=date]::-webkit-calendar-picker-indicator,\n [data-theme=dark] .fs-form-control[type=time]::-webkit-calendar-picker-indicator {\n filter: invert(1);\n }\n .fs-datepicker {\n position: relative;\n display: inline-flex;\n width: 100%;\n }\n .fs-datepicker-panel {\n display: none;\n width: min(280px, 100vw - 2 * var(--fs-space-3));\n padding: 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-dropdown);\n }\n .fs-datepicker-panel.is-open {\n display: block;\n }\n .fs-datepicker-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 8px;\n }\n .fs-datepicker-nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n padding: 0;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 0.8125rem;\n cursor: pointer;\n }\n .fs-datepicker-nav:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-datepicker-nav:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-datepicker-title {\n font-size: 0.75rem;\n font-weight: 500;\n text-transform: capitalize;\n }\n .fs-datepicker-grid {\n display: flex;\n flex-direction: column;\n gap: 2px;\n }\n .fs-datepicker-weekdays,\n .fs-datepicker-week {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n gap: 2px;\n }\n .fs-datepicker-weekday {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 28px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 500;\n text-align: center;\n text-transform: uppercase;\n }\n .fs-datepicker-day {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 32px;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 0.75rem;\n cursor: pointer;\n }\n .fs-datepicker-day:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-datepicker-day:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-datepicker-day.is-outside {\n color: var(--fs-color-muted);\n }\n .fs-datepicker-day.is-today {\n font-weight: 600;\n box-shadow: inset 0 0 0 1px var(--fs-color-primary);\n }\n .fs-datepicker-day.is-selected {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-datepicker-day:disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n opacity: 0.4;\n }\n}\n@layer components {\n .fs-datatable-toolbar {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 12px;\n }\n .fs-datatable-sort-btn {\n display: inline-flex;\n align-items: center;\n width: 100%;\n padding: 0;\n border: 0;\n background-color: var(--fs-color-surface-raised);\n color: inherit;\n font: inherit;\n text-transform: inherit;\n text-align: left;\n cursor: pointer;\n }\n .fs-datatable-sort-btn:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-datatable-sort-btn::after {\n flex-shrink: 0;\n margin-left: auto;\n padding-left: 4px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n content: \"↕\";\n }\n th[aria-sort=ascending] .fs-datatable-sort-btn::after {\n color: var(--fs-color-text);\n content: \"↑\";\n }\n th[aria-sort=descending] .fs-datatable-sort-btn::after {\n color: var(--fs-color-text);\n content: \"↓\";\n }\n .fs-datatable [data-fs-datatable-pagination] {\n display: flex;\n justify-content: flex-end;\n margin-top: 12px;\n }\n .fs-datatable td:focus-visible,\n .fs-datatable th:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n outline-offset: -2px;\n }\n}\n@layer components {\n .fs-command-palette {\n position: fixed;\n inset: 0;\n z-index: var(--fs-z-modal);\n display: none;\n align-items: flex-start;\n justify-content: center;\n padding: 72px 16px 16px;\n background-color: rgba(0, 0, 0, 0.5);\n }\n .fs-command-palette.is-open {\n display: flex;\n }\n .fs-command-palette-dialog {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: 480px;\n max-height: calc(100vh - 88px);\n overflow: hidden;\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n }\n .fs-command-palette-input {\n width: 100%;\n padding: 16px 20px;\n border: none;\n border-bottom: 1px solid var(--fs-color-border);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 1rem;\n }\n .fs-command-palette-input:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-command-palette-list {\n margin: 0;\n padding: 6px 0;\n overflow-y: auto;\n list-style: none;\n }\n}\n@layer components {\n .fs-tree,\n .fs-tree [role=group] {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-tree [role=group] {\n padding-left: 20px;\n }\n .fs-tree [role=treeitem] {\n border-radius: var(--fs-radius-sm);\n }\n .fs-tree [role=treeitem]:focus-visible {\n outline: none;\n }\n .fs-tree [role=treeitem]:focus-visible > .fs-tree-label {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-tree-label {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 8px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n cursor: pointer;\n user-select: none;\n }\n .fs-tree-label:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-tree [role=treeitem][aria-selected=true] > .fs-tree-label {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-tree-toggle {\n flex-shrink: 0;\n width: 0;\n height: 0;\n border-top: 4px solid transparent;\n border-bottom: 4px solid transparent;\n border-left: 5px solid currentcolor;\n transition: transform 0.15s ease-in-out;\n }\n .fs-tree [role=treeitem][aria-expanded=true] > .fs-tree-label > .fs-tree-toggle {\n transform: rotate(90deg);\n }\n}\n@layer components {\n .fs-dropdown {\n position: relative;\n display: inline-flex;\n }\n .fs-dropdown-toggle::after {\n display: inline-block;\n width: 0;\n height: 0;\n vertical-align: middle;\n content: \"\";\n border-top: 5px solid;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n }\n .fs-dropdown-menu {\n position: absolute;\n display: none;\n min-width: 180px;\n margin: 0;\n padding: 6px 0;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-dropdown);\n }\n .fs-dropdown-menu.is-open {\n display: block;\n }\n .fs-dropdown-item {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 8px 16px;\n border: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: 0.8125rem;\n text-align: left;\n text-decoration: none;\n cursor: pointer;\n }\n .fs-dropdown-item:hover,\n .fs-dropdown-item:focus-visible {\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n outline: none;\n }\n .fs-dropdown-item.is-active {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-dropdown-item.is-disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n opacity: 0.6;\n }\n .fs-dropdown-divider {\n height: 1px;\n margin: 6px 0;\n border: none;\n background-color: var(--fs-color-border);\n }\n .fs-dropdown-header {\n padding: 4px 16px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n font-weight: 500;\n text-transform: uppercase;\n }\n}\n@layer components {\n .fs-modal {\n position: fixed;\n inset: 0;\n z-index: var(--fs-z-modal);\n display: none;\n align-items: center;\n justify-content: center;\n padding: var(--fs-space-4);\n background-color: rgba(0, 0, 0, 0.5);\n }\n .fs-modal.is-open {\n display: flex;\n }\n .fs-modal-dialog {\n width: 100%;\n max-width: 480px;\n }\n .fs-modal-dialog.fs-modal-sm {\n max-width: 320px;\n }\n .fs-modal-dialog.fs-modal-lg {\n max-width: 720px;\n }\n .fs-modal-dialog.fs-modal-xl {\n max-width: 1140px;\n }\n .fs-modal-dialog.fs-modal-fullscreen {\n max-width: none;\n height: 100%;\n }\n .fs-modal-content {\n display: flex;\n flex-direction: column;\n max-height: calc(100vh - 2 * var(--fs-space-4));\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n }\n .fs-modal-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n .fs-modal-title {\n margin: 0;\n font-size: 1rem;\n font-weight: 500;\n }\n .fs-modal-body {\n padding: 20px;\n overflow-y: auto;\n }\n .fs-modal-scrollable .fs-modal-content {\n overflow: hidden;\n }\n .fs-modal-scrollable .fs-modal-body {\n overflow-y: auto;\n }\n @media (width < 640px) {\n .fs-modal {\n align-items: flex-end;\n padding: 0;\n }\n .fs-modal-dialog,\n .fs-modal-dialog.fs-modal-sm,\n .fs-modal-dialog.fs-modal-lg,\n .fs-modal-dialog.fs-modal-xl {\n max-width: none;\n }\n .fs-modal-content {\n max-height: calc(100dvh - var(--fs-safe-area-top));\n border-radius: var(--fs-radius-md) var(--fs-radius-md) 0 0;\n }\n }\n .fs-modal-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 16px 20px;\n border-top: 1px solid var(--fs-color-border);\n }\n}\n@layer components {\n .fs-alert-dialog-message {\n margin: 4px 0 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n}\n@layer components {\n .fs-divider {\n margin: 16px 0;\n border: 0;\n border-top: 1px solid var(--fs-color-border);\n }\n .fs-divider:not(hr) {\n display: flex;\n align-items: center;\n border-top: none;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-divider:not(hr)::before,\n .fs-divider:not(hr)::after {\n flex: 1;\n content: \"\";\n border-top: 1px solid var(--fs-color-border);\n }\n .fs-divider-label {\n padding: 0 12px;\n }\n}\n@layer components {\n .fs-empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: 48px 24px;\n text-align: center;\n }\n .fs-empty-state[hidden] {\n display: none;\n }\n .fs-empty-state-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 64px;\n height: 64px;\n margin-bottom: 16px;\n border-radius: 50%;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n font-size: 28px;\n }\n .fs-empty-state-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: 1rem;\n font-weight: 500;\n }\n .fs-empty-state-text {\n max-width: 360px;\n margin: 4px 0 20px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n}\n@layer components {\n .fs-rating {\n display: inline-flex;\n flex-direction: row-reverse;\n }\n .fs-rating-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n .fs-rating-star {\n display: flex;\n padding: 2px;\n color: var(--fs-color-border);\n font-size: 24px;\n cursor: pointer;\n }\n .fs-rating-input:checked ~ .fs-rating-star,\n .fs-rating-star:hover,\n .fs-rating-star:hover ~ .fs-rating-star {\n color: var(--fs-color-warning);\n }\n .fs-rating-input:checked ~ .fs-rating-star .fs-icon,\n .fs-rating-star:hover .fs-icon,\n .fs-rating-star:hover ~ .fs-rating-star .fs-icon {\n fill: currentcolor;\n }\n .fs-rating-input:focus-visible + .fs-rating-star {\n border-radius: var(--fs-radius-sm);\n outline: 2px solid var(--fs-color-primary);\n outline-offset: 2px;\n }\n .fs-rating-input:disabled + .fs-rating-star {\n opacity: 0.5;\n pointer-events: none;\n }\n .fs-rating-sm .fs-rating-star {\n font-size: 16px;\n }\n .fs-rating-lg .fs-rating-star {\n font-size: 32px;\n }\n}\n@layer components {\n .fs-tag {\n gap: 0;\n padding: 0 0 0 8px;\n }\n .fs-tag-label {\n min-width: 0;\n }\n .fs-tag-truncate {\n max-inline-size: min(100%, var(--fs-tag-max-inline-size, 20rem));\n }\n .fs-tag-truncate .fs-tag-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-tag-icon {\n display: inline-grid;\n width: 12px;\n height: 12px;\n flex: 0 0 12px;\n margin-right: 4px;\n place-items: center;\n }\n .fs-tag-icon .fs-icon {\n width: 12px;\n height: 12px;\n stroke: currentcolor;\n }\n .fs-tag .fs-btn-close {\n width: calc(var(--fs-badge-height) - 2px);\n height: calc(var(--fs-badge-height) - 2px);\n flex: 0 0 calc(var(--fs-badge-height) - 2px);\n margin-left: 4px;\n border-radius: 0;\n background-color: transparent;\n color: inherit;\n opacity: 0.7;\n transition: opacity 0.1s ease-in-out, background-color 0.1s ease-in-out, transform 0.1s ease-in-out;\n }\n .fs-tag .fs-btn-close::before,\n .fs-tag .fs-btn-close::after {\n top: calc(50% + 1px);\n width: 8px;\n }\n .fs-tag .fs-btn-close:hover {\n color: inherit;\n background-color: color-mix(in srgb, currentcolor 18%, transparent);\n opacity: 1;\n }\n .fs-tag .fs-btn-close:active {\n background-color: color-mix(in srgb, currentcolor 28%, transparent);\n transform: scale(0.9);\n }\n .fs-tag-group {\n display: flex;\n flex-wrap: wrap;\n gap: 0;\n }\n .fs-tag:focus-within {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-tag.is-loading,\n .fs-tag[aria-busy=true] {\n --fs-badge-bg: var(--fs-color-warning);\n --fs-badge-color: var(--fs-color-black);\n --fs-badge-border: transparent;\n cursor: progress;\n }\n .fs-tag.is-loading .fs-spinner,\n .fs-tag[aria-busy=true] .fs-spinner {\n width: 12px;\n height: 12px;\n flex: 0 0 12px;\n margin: 0 6px 0 4px;\n border-width: 2px;\n color: var(--fs-color-black);\n }\n .fs-tag.is-loading .fs-btn-close,\n .fs-tag[aria-busy=true] .fs-btn-close {\n display: none;\n }\n .fs-tag-group .fs-tag + .fs-tag {\n border-inline-start-color: color-mix(in srgb, currentcolor 24%, transparent);\n }\n .fs-tag-group .fs-tag {\n padding-inline-start: calc(var(--fs-badge-height) + 2px);\n transition: background-color 0.1s ease-in-out;\n }\n .fs-tag-group .fs-btn-close {\n pointer-events: none;\n opacity: 0;\n }\n .fs-tag-group .fs-tag:hover .fs-btn-close,\n .fs-tag-group .fs-tag:focus-within .fs-btn-close {\n pointer-events: auto;\n opacity: 0.7;\n }\n .fs-tag-group .fs-tag:hover,\n .fs-tag-group .fs-tag:focus-within {\n background-color: color-mix(in srgb, currentcolor 18%, transparent);\n }\n .fs-tag-overflow {\n --fs-badge-bg: transparent;\n --fs-badge-color: var(--fs-alert-primary-text);\n --fs-badge-border: transparent;\n width: var(--fs-badge-height);\n height: var(--fs-badge-height);\n min-width: var(--fs-badge-height);\n padding: 0;\n border: 0;\n appearance: none;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font: inherit;\n line-height: 0;\n }\n .fs-tag-overflow .fs-icon {\n display: block;\n flex: 0 0 13px;\n width: 13px;\n height: 13px;\n stroke: currentcolor;\n }\n .fs-tag-overflow:hover,\n .fs-tag-group .fs-tag-overflow:hover {\n background-color: transparent;\n border-color: transparent;\n }\n .fs-tag-group .fs-tag-overflow {\n padding-inline-start: 0;\n }\n .fs-tag-overflow:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-tag-group .fs-btn-close:hover {\n color: inherit;\n background-color: transparent;\n opacity: 0.7;\n }\n .fs-tag-protected {\n pointer-events: none;\n }\n .fs-tag-lock {\n display: inline-grid;\n width: calc(var(--fs-badge-height) - 2px);\n height: calc(var(--fs-badge-height) - 2px);\n margin-left: 4px;\n place-items: center;\n }\n .fs-tag-lock svg {\n width: 12px;\n height: 12px;\n stroke: currentcolor;\n stroke-width: 2;\n }\n}\n@layer components {\n .fs-offcanvas {\n position: fixed;\n z-index: var(--fs-z-offcanvas);\n display: flex;\n flex-direction: column;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n visibility: hidden;\n transition: transform 0.3s ease, visibility 0.3s ease;\n }\n .fs-offcanvas.is-open {\n visibility: visible;\n transform: none;\n }\n .fs-offcanvas-start {\n inset: 0 auto 0 0;\n width: 320px;\n transform: translateX(-100%);\n }\n .fs-offcanvas-end {\n inset: 0 0 0 auto;\n width: 320px;\n transform: translateX(100%);\n }\n .fs-offcanvas-top {\n inset: 0 0 auto;\n height: 40vh;\n transform: translateY(-100%);\n }\n .fs-offcanvas-bottom {\n inset: auto 0 0;\n height: 40vh;\n transform: translateY(100%);\n }\n .fs-offcanvas-backdrop {\n position: fixed;\n inset: 0;\n z-index: calc(var(--fs-z-offcanvas) - 1);\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n visibility: hidden;\n transition: opacity 0.3s ease, visibility 0.3s ease;\n }\n .fs-offcanvas-backdrop.is-open {\n visibility: visible;\n opacity: 1;\n }\n .fs-offcanvas-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n .fs-offcanvas-title {\n margin: 0;\n font-size: 1rem;\n font-weight: 500;\n }\n .fs-offcanvas-body {\n flex: 1 1 auto;\n padding: 20px;\n overflow-y: auto;\n }\n .fs-offcanvas-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 16px 20px;\n border-top: 1px solid var(--fs-color-border);\n }\n .fs-offcanvas-responsive {\n width: min(100%, 420px);\n }\n @media (width >= 1024px) {\n .fs-offcanvas-lg {\n position: static;\n width: auto;\n height: auto;\n visibility: visible;\n transform: none;\n box-shadow: none;\n }\n .fs-offcanvas-lg + .fs-offcanvas-backdrop {\n display: none;\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-offcanvas,\n .fs-offcanvas-backdrop {\n transition: none;\n }\n }\n}\n@layer components {\n .fs-accordion {\n display: flex;\n flex-direction: column;\n }\n .fs-accordion-item {\n overflow: hidden;\n border: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface-raised);\n }\n .fs-accordion-item + .fs-accordion-item {\n border-top: none;\n }\n .fs-accordion-item:first-child {\n border-top-left-radius: var(--fs-radius-md);\n border-top-right-radius: var(--fs-radius-md);\n }\n .fs-accordion-item:last-child {\n border-bottom-right-radius: var(--fs-radius-md);\n border-bottom-left-radius: var(--fs-radius-md);\n }\n .fs-accordion-flush .fs-accordion-item {\n border-inline: 0;\n border-radius: 0;\n }\n .fs-accordion-flush .fs-accordion-item:first-child {\n border-block-start: 0;\n }\n .fs-accordion-always-open .fs-accordion-button[aria-expanded=true]::after {\n transform: rotate(-135deg);\n }\n .fs-accordion-header {\n margin: 0;\n }\n .fs-accordion-button {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 14px 16px;\n border: none;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: 0.8125rem;\n font-weight: 500;\n text-align: left;\n cursor: pointer;\n }\n .fs-accordion-button:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-accordion-button:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-accordion-button::after {\n flex-shrink: 0;\n width: 8px;\n height: 8px;\n margin-left: 12px;\n content: \"\";\n border-right: 2px solid currentcolor;\n border-bottom: 2px solid currentcolor;\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out;\n }\n .fs-accordion-button[aria-expanded=true]::after {\n transform: rotate(-135deg);\n }\n .fs-accordion-collapse {\n overflow: hidden;\n }\n .fs-accordion-body {\n padding: 16px;\n border-top: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface-raised);\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-accordion-button::after {\n transition: none;\n }\n }\n}\n@layer components {\n .fs-tabs {\n display: flex;\n border-bottom: var(--fs-border-width) solid var(--fs-color-border-default);\n }\n .fs-tabs .fs-nav-link {\n margin-bottom: -1px;\n border-bottom: 2px solid transparent;\n border-radius: var(--fs-radius-sm) var(--fs-radius-sm) 0 0;\n }\n .fs-tabs .fs-nav-link.is-active {\n border-bottom-color: var(--fs-color-primary);\n }\n .fs-tabs-pill {\n gap: 4px;\n border-bottom: none;\n }\n .fs-tabs-pill .fs-nav-link {\n margin-bottom: 0;\n border-bottom: none;\n border-radius: var(--fs-radius-sm);\n }\n .fs-tabs-pill .fs-nav-link.is-active {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-tabs-depth {\n gap: 2px;\n padding: 4px 4px 0;\n background-color: var(--fs-color-subtle);\n }\n .fs-tabs-depth .fs-nav-link {\n margin-bottom: -1px;\n border: 1px solid transparent;\n border-bottom: none;\n border-radius: var(--fs-radius-sm) var(--fs-radius-sm) 0 0;\n }\n .fs-tabs-depth .fs-nav-link.is-active {\n border-color: var(--fs-color-border);\n background-color: var(--fs-color-surface);\n }\n .fs-tabs-center {\n justify-content: center;\n }\n .fs-tabs-right {\n justify-content: flex-end;\n }\n .fs-tabs-fill .fs-nav-link {\n flex: 1;\n justify-content: center;\n text-align: center;\n }\n .fs-tabs-sm .fs-nav-link {\n padding: 6px 10px;\n font-size: 0.75rem;\n }\n .fs-tabs-lg .fs-nav-link {\n padding: 10px 16px;\n font-size: 1rem;\n }\n .fs-tab-content > .fs-tab-pane {\n display: none;\n }\n .fs-tab-content > .fs-tab-pane.is-active {\n display: block;\n }\n}\n@layer components {\n .fs-tooltip {\n position: absolute;\n z-index: var(--fs-z-tooltip);\n display: none;\n max-width: 220px;\n }\n .fs-tooltip.is-open {\n display: block;\n }\n .fs-tooltip-inner {\n padding: 6px 10px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-tooltip-text);\n background-color: var(--fs-tooltip-bg);\n font-size: 0.6875rem;\n text-align: center;\n }\n .fs-tooltip-arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--fs-tooltip-bg);\n transform: rotate(45deg);\n }\n .fs-tooltip[data-placement=top] .fs-tooltip-arrow {\n bottom: -4px;\n left: 50%;\n margin-left: -4px;\n }\n .fs-tooltip[data-placement=bottom] .fs-tooltip-arrow {\n top: -4px;\n left: 50%;\n margin-left: -4px;\n }\n .fs-tooltip[data-placement=left] .fs-tooltip-arrow {\n top: 50%;\n right: -4px;\n margin-top: -4px;\n }\n .fs-tooltip[data-placement=right] .fs-tooltip-arrow {\n top: 50%;\n left: -4px;\n margin-top: -4px;\n }\n}\n@layer components {\n .fs-popover {\n position: absolute;\n z-index: var(--fs-z-offcanvas);\n display: none;\n max-width: 280px;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n box-shadow: var(--fs-shadow-md);\n }\n .fs-popover.is-open {\n display: block;\n }\n .fs-popover-header {\n padding: 10px 14px;\n background-color: var(--fs-color-subtle);\n border-bottom: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md) var(--fs-radius-md) 0 0;\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-popover-body {\n padding: 14px;\n font-size: 0.75rem;\n }\n .fs-popover-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 10px 14px;\n border-top: 1px solid var(--fs-color-border);\n }\n .fs-popover-arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--fs-color-surface);\n border: 1px solid var(--fs-color-border);\n transform: rotate(45deg);\n }\n .fs-popover[data-placement=top] .fs-popover-arrow {\n bottom: -5px;\n left: 50%;\n margin-left: -4px;\n border-top: 0;\n border-left: 0;\n }\n .fs-popover[data-placement=bottom] .fs-popover-arrow {\n top: -5px;\n left: 50%;\n margin-left: -4px;\n border-right: 0;\n border-bottom: 0;\n }\n .fs-popover[data-placement=left] .fs-popover-arrow {\n top: 50%;\n right: -5px;\n margin-top: -4px;\n border-bottom: 0;\n border-left: 0;\n }\n .fs-popover[data-placement=right] .fs-popover-arrow {\n top: 50%;\n left: -5px;\n margin-top: -4px;\n border-top: 0;\n border-right: 0;\n }\n .fs-popover-hover-card {\n max-width: 320px;\n }\n .fs-popover-hover-card .fs-popover-body {\n display: flex;\n gap: 12px;\n }\n}\n@layer components {\n .fs-toast-container {\n position: fixed;\n right: 16px;\n bottom: 16px;\n z-index: var(--fs-z-toast);\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: min(360px, 100%);\n max-width: calc(100vw - 2 * var(--fs-space-3));\n }\n .fs-toast {\n display: flex;\n overflow: hidden;\n flex-direction: column;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n }\n .fs-toast-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 12px;\n border-bottom: 1px solid var(--fs-color-border);\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-toast-body {\n padding: 12px;\n font-size: 0.75rem;\n }\n .fs-toast-primary .fs-toast-header {\n color: var(--fs-alert-primary-text);\n background-color: var(--fs-alert-primary-bg);\n }\n .fs-toast-secondary .fs-toast-header {\n color: var(--fs-alert-secondary-text);\n background-color: var(--fs-alert-secondary-bg);\n }\n .fs-toast-success .fs-toast-header {\n color: var(--fs-alert-success-text);\n background-color: var(--fs-alert-success-bg);\n }\n .fs-toast-warning .fs-toast-header {\n color: var(--fs-alert-warning-text);\n background-color: var(--fs-alert-warning-bg);\n }\n .fs-toast-danger .fs-toast-header {\n color: var(--fs-alert-danger-text);\n background-color: var(--fs-alert-danger-bg);\n }\n .fs-toast-info .fs-toast-header {\n color: var(--fs-alert-info-text);\n background-color: var(--fs-alert-info-bg);\n }\n}\n@layer components {\n .fs-pagination {\n display: flex;\n gap: 0.25rem;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-pagination-scroll {\n max-width: 100%;\n overflow-x: auto;\n padding-block: 2px;\n }\n .fs-pagination-scroll .fs-pagination {\n width: max-content;\n }\n .fs-page-link {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 32px;\n height: 32px;\n padding: 0 8px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n text-decoration: none;\n transition: background-color 0.15s ease-in-out;\n }\n .fs-page-link:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-page-link:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-page-item.is-active .fs-page-link {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-page-item.is-disabled .fs-page-link {\n color: var(--fs-color-muted);\n opacity: 0.6;\n pointer-events: none;\n }\n .fs-pagination-bordered {\n gap: 0;\n }\n .fs-pagination-bordered .fs-page-link {\n border-radius: 0;\n }\n .fs-pagination-bordered .fs-page-item:not(:first-child) .fs-page-link {\n margin-left: -1px;\n }\n .fs-pagination-bordered .fs-page-item:first-child .fs-page-link {\n border-top-left-radius: var(--fs-radius-sm);\n border-bottom-left-radius: var(--fs-radius-sm);\n }\n .fs-pagination-bordered .fs-page-item:last-child .fs-page-link {\n border-top-right-radius: var(--fs-radius-sm);\n border-bottom-right-radius: var(--fs-radius-sm);\n }\n .fs-pagination-bordered .fs-page-link:hover,\n .fs-pagination-bordered .fs-page-item.is-active .fs-page-link {\n position: relative;\n z-index: 1;\n }\n .fs-pagination-sm .fs-page-link {\n min-width: 26px;\n height: 26px;\n padding: 0 6px;\n font-size: 0.6875rem;\n }\n .fs-pagination-lg .fs-page-link {\n min-width: 40px;\n height: 40px;\n padding: 0 12px;\n font-size: 0.8125rem;\n }\n .fs-page-link-text {\n gap: 6px;\n padding: 0 14px;\n }\n}\n@layer components {\n .fs-breadcrumb {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n font-size: 0.75rem;\n }\n .fs-breadcrumb-item {\n display: flex;\n align-items: center;\n gap: 4px;\n color: var(--fs-color-muted);\n }\n .fs-breadcrumb-item + .fs-breadcrumb-item::before {\n color: var(--fs-color-muted);\n content: \"/\";\n }\n .fs-breadcrumb-item a {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--fs-alert-primary-text);\n text-decoration: none;\n }\n .fs-breadcrumb-item a:hover {\n text-decoration: underline;\n }\n .fs-breadcrumb-item.is-active {\n color: var(--fs-color-text);\n }\n .fs-breadcrumb-item-truncate {\n display: inline-block;\n max-width: 160px;\n vertical-align: bottom;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-breadcrumb-more {\n padding: 0;\n border: none;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface-raised);\n font-size: inherit;\n font-family: inherit;\n line-height: inherit;\n cursor: pointer;\n }\n .fs-breadcrumb-more:hover {\n color: var(--fs-color-text);\n }\n}\n@layer components {\n .fs-spinner {\n --fs-spinner-size: 20px;\n --fs-spinner-stroke: 2px;\n --fs-spinner-duration: 0.8s;\n display: inline-block;\n box-sizing: border-box;\n width: var(--fs-spinner-size);\n height: var(--fs-spinner-size);\n vertical-align: middle;\n border: var(--fs-spinner-stroke) solid color-mix(in srgb, currentcolor 20%, transparent);\n border-top-color: currentcolor;\n border-radius: 50%;\n animation: fokus-spin var(--fs-spinner-duration) linear infinite;\n will-change: transform;\n }\n .fs-spinner-sm {\n --fs-spinner-size: 14px;\n --fs-spinner-stroke: 2px;\n }\n .fs-spinner-lg {\n --fs-spinner-size: 32px;\n --fs-spinner-stroke: 3px;\n }\n .fs-spinner-primary {\n color: var(--fs-color-primary);\n }\n .fs-spinner-secondary {\n color: var(--fs-color-secondary);\n }\n .fs-spinner-success {\n color: var(--fs-color-success);\n }\n .fs-spinner-warning {\n color: var(--fs-color-warning);\n }\n .fs-spinner-danger {\n color: var(--fs-color-danger);\n }\n .fs-spinner-info {\n color: var(--fs-color-info);\n }\n @keyframes fokus-spin {\n to {\n transform: rotate(360deg);\n }\n }\n .fs-progress {\n --fs-progress-height: 8px;\n --fs-progress-track: var(--fs-color-subtle);\n --fs-progress-radius: 0;\n position: relative;\n display: flex;\n height: var(--fs-progress-height);\n overflow: hidden;\n background-color: var(--fs-progress-track);\n border-radius: var(--fs-progress-radius);\n }\n .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-primary);\n --fs-progress-color: var(--fs-color-on-primary);\n display: flex;\n align-items: center;\n justify-content: center;\n width: calc(var(--fs-progress-value, 0) * 1%);\n height: 100%;\n min-width: 0;\n overflow: hidden;\n color: var(--fs-progress-color);\n background-color: var(--fs-progress-bar-bg);\n font-size: 0;\n line-height: 1;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: width 0.25s ease-out;\n }\n .fs-progress-bar-primary {\n --fs-progress-bar-bg: var(--fs-color-primary);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-bar-secondary {\n --fs-progress-bar-bg: var(--fs-color-secondary);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-bar-success {\n --fs-progress-bar-bg: var(--fs-color-success);\n --fs-progress-color: #000000;\n }\n .fs-progress-bar-warning {\n --fs-progress-bar-bg: var(--fs-color-warning);\n --fs-progress-color: #000000;\n }\n .fs-progress-bar-danger {\n --fs-progress-bar-bg: var(--fs-color-danger);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-bar-info {\n --fs-progress-bar-bg: var(--fs-color-info);\n --fs-progress-color: #ffffff;\n }\n .fs-spinner[data-fs-loading=false] {\n display: none;\n }\n .fs-progress-sm {\n --fs-progress-height: 4px;\n }\n .fs-progress-lg {\n --fs-progress-height: 16px;\n }\n .fs-progress-lg .fs-progress-bar {\n padding-inline: 6px;\n font-size: 0.6875rem;\n }\n .fs-progress-meta {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 12px;\n max-width: 480px;\n margin-bottom: 6px;\n color: var(--fs-color-text);\n font-size: 0.75rem;\n }\n .fs-progress-value {\n color: var(--fs-color-muted);\n font-variant-numeric: tabular-nums;\n }\n .fs-progress-indeterminate .fs-progress-bar {\n width: 36%;\n animation: fokus-progress-indeterminate 1.25s ease-in-out infinite;\n }\n .fs-progress-indeterminate {\n --fs-progress-track: color-mix(in srgb, var(--fs-color-primary) 18%, transparent);\n }\n @keyframes fokus-progress-indeterminate {\n from {\n transform: translateX(-110%);\n }\n to {\n transform: translateX(290%);\n }\n }\n .fs-progress-complete .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-success);\n --fs-progress-color: #000000;\n }\n .fs-progress-error .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-danger);\n --fs-progress-color: #ffffff;\n }\n .fs-progress-status {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n margin-top: 6px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-progress-status-icon {\n display: inline-grid;\n width: 14px;\n height: 14px;\n place-items: center;\n color: var(--fs-alert-success-text);\n }\n .fs-progress-status-icon .fs-icon {\n width: 14px;\n height: 14px;\n stroke: currentcolor;\n }\n .fs-progress-status-danger,\n .fs-progress-error + .fs-progress-status {\n color: var(--fs-alert-danger-text);\n }\n .fs-progress-marker {\n position: absolute;\n z-index: 1;\n top: 0;\n bottom: 0;\n left: calc(var(--fs-progress-marker-value) * 1%);\n width: 2px;\n background-color: var(--fs-color-text);\n pointer-events: none;\n transform: translateX(-1px);\n }\n .fs-progress-minimum .fs-progress-bar {\n width: max(var(--fs-progress-value, 0) * 1%, 4px);\n }\n .fs-progress-bar-striped {\n background-image: linear-gradient(45deg, color-mix(in srgb, currentcolor 16%, transparent) 25%, transparent 25%, transparent 50%, color-mix(in srgb, currentcolor 16%, transparent) 50%, color-mix(in srgb, currentcolor 16%, transparent) 75%, transparent 75%, transparent);\n background-size: 16px 16px;\n }\n .fs-progress-bar-animated {\n animation: fokus-progress-stripes 1s linear infinite;\n }\n @keyframes fokus-progress-stripes {\n from {\n background-position: 16px 0;\n }\n to {\n background-position: 0 0;\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-spinner {\n --fs-spinner-duration: 1.5s;\n }\n .fs-progress-bar-animated {\n animation-duration: 1.5s;\n }\n .fs-progress-indeterminate .fs-progress-bar {\n animation-duration: 1.8s;\n }\n }\n}\n@layer components {\n .fs-carousel {\n --fs-carousel-radius: var(--fs-radius-md);\n --fs-carousel-transition-duration: var(--fs-transition-normal);\n --fs-carousel-transition-easing: var(--fs-ease-standard);\n --fs-carousel-control-size: 44px;\n --fs-carousel-control-inset: var(--fs-space-2);\n --fs-carousel-control-gap: var(--fs-space-1);\n --fs-carousel-control-color: var(--fs-color-white);\n --fs-carousel-control-paused-color: var(--fs-color-warning);\n --fs-carousel-control-bg: rgb(15 23 42 / 72%);\n --fs-carousel-control-bg-hover: rgb(15 23 42 / 88%);\n --fs-carousel-focus-color: var(--fs-color-white);\n --fs-carousel-indicator-size: 8px;\n --fs-carousel-indicator-active-width: 24px;\n --fs-carousel-indicator-color: rgb(255 255 255 / 62%);\n --fs-carousel-indicator-active-color: var(--fs-color-white);\n --fs-carousel-caption-scrim: rgb(15 23 42 / 78%);\n --fs-carousel-top-safe-area: calc(var(--fs-carousel-control-size) + (var(--fs-carousel-control-inset) * 2));\n --fs-carousel-bottom-safe-area: calc(32px + var(--fs-space-2) + 24px);\n --fs-carousel-progress-height: 3px;\n position: relative;\n overflow: hidden;\n border-radius: var(--fs-carousel-radius);\n }\n .fs-carousel::before {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(var(--fs-carousel-control-size) + var(--fs-carousel-control-inset) * 2);\n pointer-events: none;\n content: \"\";\n background: linear-gradient(to bottom, rgba(15, 23, 42, 0.76), rgba(15, 23, 42, 0.32));\n opacity: 0;\n transition: opacity var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-carousel-inner {\n display: flex;\n transition: transform var(--fs-carousel-transition-duration) var(--fs-carousel-transition-easing);\n }\n .fs-carousel-item {\n position: relative;\n flex: 0 0 100%;\n width: 100%;\n }\n .fs-carousel-item img {\n display: block;\n width: 100%;\n }\n .fs-carousel.is-dragging .fs-carousel-inner {\n cursor: grabbing;\n transition: none;\n user-select: none;\n }\n .fs-carousel:not(.is-static) .fs-carousel-inner {\n cursor: grab;\n touch-action: pan-y;\n }\n .fs-carousel-fade .fs-carousel-inner {\n display: block;\n transform: none;\n }\n .fs-carousel-fade .fs-carousel-item {\n position: absolute;\n inset: 0;\n opacity: 0;\n transition: opacity var(--fs-carousel-transition-duration) var(--fs-carousel-transition-easing);\n }\n .fs-carousel-fade .fs-carousel-item.is-active {\n position: relative;\n opacity: 1;\n }\n .fs-carousel-control-prev,\n .fs-carousel-control-next,\n .fs-carousel-control-toggle {\n position: absolute;\n top: var(--fs-carousel-control-inset);\n z-index: 2;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--fs-carousel-control-size);\n height: var(--fs-carousel-control-size);\n padding: 0;\n color: var(--fs-carousel-control-color);\n background-color: transparent;\n background-repeat: no-repeat;\n background-position: center;\n background-size: 18px 18px;\n border: 0;\n border-radius: 0;\n cursor: pointer;\n opacity: 0;\n transition: background-color var(--fs-transition-fast) var(--fs-ease-standard), opacity var(--fs-transition-fast) var(--fs-ease-standard), transform var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-carousel-control-prev,\n .fs-carousel-control-next {\n transform: none;\n }\n .fs-carousel-control-prev {\n left: var(--fs-carousel-control-inset);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 4 6 9l5 5'/%3E%3C/svg%3E\");\n }\n .fs-carousel-control-next {\n left: calc(var(--fs-carousel-control-inset) + var(--fs-carousel-control-size) + var(--fs-carousel-control-gap));\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 4 5 5-5 5'/%3E%3C/svg%3E\");\n }\n .fs-carousel-control-toggle {\n left: calc(var(--fs-carousel-control-inset) + var(--fs-carousel-control-size) + var(--fs-carousel-control-gap));\n }\n .fs-carousel:has(.fs-carousel-control-toggle) .fs-carousel-control-next {\n left: calc(var(--fs-carousel-control-inset) + (var(--fs-carousel-control-size) + var(--fs-carousel-control-gap)) * 2);\n }\n .fs-carousel-control-toggle[aria-pressed=true] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 5v8M11 5v8'/%3E%3C/svg%3E\");\n }\n .fs-carousel-control-toggle[aria-pressed=false] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23ffffff'%3E%3Cpath d='m7 4 7 5-7 5z'/%3E%3C/svg%3E\");\n }\n .fs-carousel.is-autoplay-paused .fs-carousel-control-toggle[aria-pressed=true] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23f0b40e' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 5v8M11 5v8'/%3E%3C/svg%3E\");\n }\n .fs-carousel.is-autoplay-paused .fs-carousel-control-toggle[aria-pressed=false] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23f0b40e'%3E%3Cpath d='m7 4 7 5-7 5z'/%3E%3C/svg%3E\");\n }\n .fs-carousel-control-prev:hover,\n .fs-carousel-control-next:hover,\n .fs-carousel-control-toggle:hover {\n background-color: var(--fs-carousel-control-bg-hover);\n }\n .fs-carousel-control-prev:active,\n .fs-carousel-control-next:active,\n .fs-carousel-control-toggle:active {\n transform: scale(0.94);\n }\n .fs-carousel-control-prev:focus-visible,\n .fs-carousel-control-next:focus-visible,\n .fs-carousel-control-toggle:focus-visible,\n .fs-carousel-indicators button:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-carousel-focus-color);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-carousel-focus-color);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-carousel-focus-color) 22%, transparent);\n }\n .fs-carousel:hover .fs-carousel-control-prev,\n .fs-carousel:hover .fs-carousel-control-next,\n .fs-carousel:hover .fs-carousel-control-toggle,\n .fs-carousel:focus-within .fs-carousel-control-prev,\n .fs-carousel:focus-within .fs-carousel-control-next,\n .fs-carousel:focus-within .fs-carousel-control-toggle {\n opacity: 1;\n }\n .fs-carousel:hover::before,\n .fs-carousel:focus-within::before {\n opacity: 1;\n }\n .fs-carousel-indicators {\n position: absolute;\n right: 0;\n bottom: var(--fs-space-2);\n left: 0;\n z-index: 1;\n display: flex;\n justify-content: center;\n gap: 0;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-carousel-indicators button {\n position: relative;\n display: grid;\n width: 28px;\n height: 32px;\n padding: 0;\n place-items: center;\n background: transparent;\n border: 0;\n cursor: pointer;\n }\n .fs-carousel-indicators button::before {\n width: var(--fs-carousel-indicator-size);\n height: var(--fs-carousel-indicator-size);\n content: \"\";\n background-color: var(--fs-carousel-indicator-color);\n border-radius: var(--fs-radius-lg);\n transition: width var(--fs-transition-fast) var(--fs-ease-standard), background-color var(--fs-transition-fast) var(--fs-ease-standard);\n }\n .fs-carousel-indicators button.is-active::before {\n width: var(--fs-carousel-indicator-active-width);\n background-color: var(--fs-carousel-indicator-active-color);\n }\n .fs-carousel-caption {\n position: absolute;\n right: 0;\n bottom: var(--fs-carousel-bottom-safe-area);\n left: 0;\n z-index: 1;\n box-sizing: border-box;\n max-width: min(100%, 42rem);\n max-block-size: calc(100% - var(--fs-carousel-top-safe-area) - var(--fs-carousel-bottom-safe-area));\n isolation: isolate;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: var(--fs-space-2);\n padding: calc(var(--fs-space-4) + 20px) var(--fs-space-4) var(--fs-space-3);\n color: var(--fs-color-white);\n }\n .fs-carousel-caption::before {\n position: absolute;\n top: 0;\n right: 0;\n bottom: calc(var(--fs-carousel-bottom-safe-area) * -1);\n left: 0;\n z-index: -1;\n content: \"\";\n background: linear-gradient(to top, var(--fs-carousel-caption-scrim), transparent);\n }\n .fs-carousel-caption > * {\n margin: 0;\n }\n .fs-carousel-caption .fs-btn {\n --fs-btn-color: var(--fs-color-text-primary);\n --fs-btn-bg: var(--fs-color-white);\n --fs-btn-border-color: var(--fs-color-white);\n --fs-btn-hover-bg: var(--fs-color-subtle);\n --fs-btn-active-bg: var(--fs-color-border-default);\n }\n .fs-carousel-caption-side .fs-carousel-caption {\n top: var(--fs-carousel-top-safe-area);\n right: 0;\n bottom: 0;\n left: auto;\n width: min(42%, 28rem);\n max-width: none;\n max-block-size: none;\n padding: var(--fs-space-4) var(--fs-space-4) calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-2));\n background: rgba(15, 23, 42, 0.84);\n }\n .fs-carousel-caption-side .fs-carousel-caption-start {\n right: auto;\n left: 0;\n }\n .fs-carousel-caption-side .fs-carousel-caption::before,\n .fs-carousel-caption-stacked .fs-carousel-caption::before {\n display: none;\n }\n .fs-carousel-caption-stacked {\n --fs-carousel-bottom-safe-area: 0px;\n }\n .fs-carousel-caption-stacked .fs-carousel-caption {\n position: static;\n max-width: none;\n max-block-size: none;\n overflow: visible;\n padding: var(--fs-space-4);\n color: var(--fs-color-text-primary);\n background: var(--fs-color-bg-surface);\n }\n .fs-carousel-caption-stacked .fs-carousel-indicators {\n position: relative;\n bottom: auto;\n background: var(--fs-color-bg-surface);\n }\n .fs-carousel-counter {\n position: absolute;\n right: var(--fs-space-3);\n bottom: var(--fs-space-2);\n z-index: 2;\n color: var(--fs-color-white);\n font-size: 0.75rem;\n font-variant-numeric: tabular-nums;\n }\n .fs-carousel-progress {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n height: var(--fs-carousel-progress-height);\n overflow: hidden;\n background-color: rgba(255, 255, 255, 0.24);\n }\n .fs-carousel-progress > span {\n display: block;\n width: 100%;\n height: 100%;\n background-color: var(--fs-color-white);\n transform: scaleX(0);\n transform-origin: left;\n }\n .fs-carousel-progress.is-running > span {\n animation: fs-carousel-progress var(--fs-carousel-progress-duration, 5000ms) linear forwards;\n }\n .fs-carousel.is-two-slides.fs-carousel-hide-indicators-two .fs-carousel-indicators {\n display: none;\n }\n .fs-carousel-no-media .fs-carousel-item {\n min-block-size: 15rem;\n background-color: var(--fs-color-bg-surface);\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n }\n .fs-carousel-no-media .fs-carousel-counter {\n color: var(--fs-color-text-muted);\n }\n .fs-carousel-no-media .fs-carousel-progress {\n background-color: var(--fs-color-border-default);\n }\n .fs-carousel-no-media .fs-carousel-progress > span {\n background-color: var(--fs-color-action-primary);\n }\n .fs-carousel-media-placeholder {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n min-height: inherit;\n padding: calc(var(--fs-carousel-top-safe-area) + var(--fs-space-4)) var(--fs-space-4) calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-4));\n }\n .fs-carousel-media-placeholder > * {\n max-width: 36rem;\n margin: 0;\n }\n .fs-carousel-media-placeholder > * + * {\n margin-top: var(--fs-space-2);\n }\n .fs-carousel-media {\n min-block-size: 18rem;\n background-position: center;\n background-size: cover;\n }\n .fs-carousel.is-static .fs-carousel-control-prev,\n .fs-carousel.is-static .fs-carousel-control-next,\n .fs-carousel.is-static .fs-carousel-control-toggle,\n .fs-carousel.is-static .fs-carousel-indicators {\n display: none;\n }\n @media (max-width: 639px) {\n .fs-carousel {\n --fs-carousel-control-inset: var(--fs-space-1);\n }\n .fs-carousel-caption {\n padding: calc(var(--fs-space-3) + 20px) var(--fs-space-3) var(--fs-space-3);\n }\n .fs-carousel-caption-side .fs-carousel-caption {\n top: auto;\n bottom: var(--fs-carousel-bottom-safe-area);\n width: auto;\n max-block-size: calc(100% - var(--fs-carousel-top-safe-area) - var(--fs-carousel-bottom-safe-area));\n overflow: clip;\n align-items: flex-end;\n padding: calc(var(--fs-space-3) + 20px) var(--fs-space-3) calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-2));\n text-align: end;\n background: transparent;\n }\n .fs-carousel-caption-side .fs-carousel-caption-start {\n right: 0;\n left: 0;\n align-items: flex-start;\n text-align: start;\n }\n .fs-carousel-caption-side .fs-carousel-item::after {\n position: absolute;\n inset: 0;\n z-index: 0;\n pointer-events: none;\n content: \"\";\n background: linear-gradient(to top, var(--fs-carousel-caption-scrim) 0%, rgba(15, 23, 42, 0.52) 56%, transparent 100%);\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-carousel-inner,\n .fs-carousel-fade .fs-carousel-item,\n .fs-carousel-control-prev,\n .fs-carousel-control-next,\n .fs-carousel-control-toggle,\n .fs-carousel-indicators button::before,\n .fs-carousel-progress.is-running > span {\n transition: none;\n animation: none;\n transform: scaleX(1);\n }\n }\n @keyframes fs-carousel-progress {\n to {\n transform: scaleX(1);\n }\n }\n}\n@layer components {\n .fs-stepper-header {\n display: flex;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-step {\n position: relative;\n display: flex;\n flex: 1 1 0;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n .fs-step-indicator {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface);\n border: 2px solid var(--fs-color-border);\n border-radius: 50%;\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-step-label {\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-step-description {\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n }\n .fs-step:not(:last-child)::after {\n content: \"\";\n position: absolute;\n top: 15px;\n left: calc(50% + 20px);\n width: calc(100% - 40px);\n height: 2px;\n background-color: var(--fs-color-border);\n }\n .fs-step-active .fs-step-indicator {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-step-active .fs-step-label {\n color: var(--fs-color-text);\n }\n .fs-step-completed .fs-step-indicator {\n color: transparent;\n background-color: var(--fs-color-primary);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5 6.5 12 13 4'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: center;\n border-color: var(--fs-color-primary);\n }\n .fs-step-completed .fs-step-label {\n color: var(--fs-color-text);\n }\n .fs-step-completed:not(:last-child)::after {\n background-color: var(--fs-color-primary);\n }\n .fs-step-error .fs-step-indicator {\n color: #ffffff;\n background-color: var(--fs-color-danger);\n border-color: var(--fs-color-danger);\n }\n .fs-step-error .fs-step-label {\n color: var(--fs-alert-danger-text);\n }\n .fs-step.fs-step-clickable {\n cursor: pointer;\n }\n .fs-step.fs-step-clickable:focus-visible {\n outline: 2px solid var(--fs-color-primary);\n outline-offset: 2px;\n border-radius: var(--fs-radius-sm);\n }\n .fs-stepper-vertical .fs-stepper-header {\n flex-direction: column;\n }\n .fs-stepper-vertical .fs-step {\n flex-direction: row;\n flex: 0 0 auto;\n align-items: flex-start;\n gap: 12px;\n min-height: 56px;\n text-align: left;\n }\n .fs-stepper-vertical .fs-step-content {\n display: flex;\n flex-direction: column;\n gap: 2px;\n padding-top: 5px;\n }\n .fs-stepper-vertical .fs-step:not(:last-child)::after {\n top: 34px;\n left: 15px;\n width: 2px;\n height: calc(100% - 22px);\n }\n .fs-step-panel {\n display: none;\n }\n .fs-step-panel.is-active {\n display: block;\n }\n .fs-stepper-content {\n margin-top: 20px;\n }\n .fs-stepper-actions {\n display: flex;\n justify-content: space-between;\n gap: 8px;\n margin-top: 20px;\n }\n}\n@layer components {\n .fs-segmented-control {\n display: inline-flex;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n overflow: hidden;\n }\n .fs-segmented-item {\n display: flex;\n }\n .fs-segmented-item:not(:first-child) .fs-segmented-label {\n border-left: 1px solid var(--fs-color-border);\n }\n .fs-segmented-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n .fs-segmented-label {\n display: inline-flex;\n flex: 1;\n align-items: center;\n justify-content: center;\n min-height: 38px;\n padding: 0 12px;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: 0.8125rem;\n font-weight: 500;\n text-align: center;\n white-space: nowrap;\n cursor: pointer;\n user-select: none;\n transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;\n }\n .fs-segmented-label:hover {\n background-color: var(--fs-color-subtle);\n }\n .fs-segmented-input:checked + .fs-segmented-label {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n .fs-segmented-input:focus-visible + .fs-segmented-label {\n position: relative;\n z-index: 1;\n outline: var(--fs-focus-width) solid var(--fs-color-primary);\n outline-offset: var(--fs-focus-offset);\n border-color: var(--fs-color-primary);\n box-shadow: 0 0 0 3px color-mix(in srgb, var(--fs-color-primary) 22%, transparent);\n }\n .fs-segmented-input:disabled + .fs-segmented-label {\n opacity: 0.4;\n pointer-events: none;\n }\n .fs-segmented-control-sm .fs-segmented-label {\n min-height: 30px;\n padding: 0 8px;\n font-size: 0.75rem;\n }\n .fs-segmented-control-lg .fs-segmented-label {\n min-height: 46px;\n padding: 0 16px;\n font-size: 1rem;\n }\n}\n@layer components {\n .fs-skeleton {\n display: block;\n background-color: var(--fs-color-subtle);\n border-radius: var(--fs-radius-sm);\n animation: fokus-skeleton-pulse 1.5s ease-in-out infinite;\n }\n .fs-skeleton-text {\n width: 100%;\n height: 1em;\n }\n .fs-skeleton-text:not(:last-child) {\n margin-bottom: 0.5em;\n }\n .fs-skeleton-text:last-child {\n width: 80%;\n }\n .fs-skeleton-circle {\n flex-shrink: 0;\n border-radius: 50%;\n }\n .fs-skeleton-rect {\n border-radius: var(--fs-radius-md);\n }\n .fs-skeleton-card {\n display: grid;\n gap: var(--fs-space-3);\n min-height: 10rem;\n padding: var(--fs-space-4);\n border-radius: var(--fs-radius-md);\n }\n .fs-skeleton-table {\n height: 1.25rem;\n margin-block-end: var(--fs-space-2);\n }\n .fs-skeleton-avatar {\n width: 2.5rem;\n height: 2.5rem;\n border-radius: 50%;\n }\n @keyframes fokus-skeleton-pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n }\n .fs-skeleton-wave {\n position: relative;\n overflow: hidden;\n animation: none;\n }\n .fs-skeleton-wave::after {\n position: absolute;\n inset: 0;\n content: \"\";\n background-image: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);\n transform: translateX(-100%);\n animation: fokus-skeleton-wave 1.6s linear infinite;\n }\n @keyframes fokus-skeleton-wave {\n 100% {\n transform: translateX(100%);\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-skeleton {\n animation: none;\n }\n .fs-skeleton-wave::after {\n animation: none;\n }\n }\n}\n@layer components {\n .fs-timeline {\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n .fs-timeline-item {\n position: relative;\n display: flex;\n gap: 12px;\n padding-bottom: 24px;\n }\n .fs-timeline-item:last-child {\n padding-bottom: 0;\n }\n .fs-timeline-marker {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n margin-top: 3px;\n background-color: var(--fs-color-surface);\n background-repeat: no-repeat;\n background-position: center;\n border: 2px solid var(--fs-color-border);\n border-radius: 50%;\n }\n .fs-timeline-item:not(:last-child)::before {\n content: \"\";\n position: absolute;\n top: 22px;\n left: 7px;\n width: 2px;\n height: calc(100% - 22px);\n background-color: var(--fs-color-border);\n }\n .fs-timeline-content {\n flex: 1;\n padding-top: 1px;\n }\n .fs-timeline-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n font-weight: 500;\n }\n .fs-timeline-text {\n margin: 4px 0 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-timeline-time {\n display: block;\n margin-top: 2px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n }\n .fs-timeline-active .fs-timeline-marker {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n .fs-timeline-completed .fs-timeline-marker {\n background-color: var(--fs-color-success);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 5.5 4 8l4-6'/%3E%3C/svg%3E\");\n border-color: var(--fs-color-success);\n }\n .fs-timeline-completed:not(:last-child)::before {\n background-color: var(--fs-color-success);\n }\n .fs-timeline-failed .fs-timeline-marker {\n background-color: var(--fs-color-danger);\n border-color: var(--fs-color-danger);\n }\n .fs-timeline-failed .fs-timeline-title {\n color: var(--fs-alert-danger-text);\n }\n .fs-timeline-horizontal {\n flex-direction: row;\n }\n .fs-timeline-horizontal .fs-timeline-item {\n flex: 1 1 0;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n padding-bottom: 0;\n text-align: center;\n }\n .fs-timeline-horizontal .fs-timeline-marker {\n margin-top: 0;\n }\n .fs-timeline-horizontal .fs-timeline-item:not(:last-child)::before {\n top: 7px;\n left: calc(50% + 15px);\n width: calc(100% - 30px);\n height: 2px;\n }\n .fs-timeline-horizontal .fs-timeline-content {\n padding-top: 0;\n }\n}\n@layer components {\n .fs-collapse {\n overflow: hidden;\n }\n}\n@layer components {\n [data-fs=notification-center] {\n position: relative;\n }\n .fs-notification-badge {\n position: absolute;\n top: -6px;\n right: -6px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 18px;\n height: 18px;\n padding: 0 5px;\n border-radius: 999px;\n color: #ffffff;\n background-color: var(--fs-color-danger);\n font-size: 0.65rem;\n font-weight: 500;\n line-height: 1;\n }\n .fs-notification-badge[hidden] {\n display: none;\n }\n .fs-notification-center {\n position: absolute;\n display: none;\n flex-direction: column;\n width: min(320px, 100vw - 2 * var(--fs-space-3));\n max-height: 420px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-notification);\n }\n .fs-notification-center.is-open {\n display: flex;\n }\n .fs-notification-center-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 14px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n .fs-notification-center-title {\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-notification-list {\n margin: 0;\n padding: 0;\n overflow-y: auto;\n list-style: none;\n }\n .fs-notification-item {\n display: flex;\n gap: 10px;\n align-items: flex-start;\n padding: 10px 14px;\n border-left: 3px solid transparent;\n border-bottom: 1px solid var(--fs-color-border);\n }\n .fs-notification-item:last-child {\n border-bottom: none;\n }\n .fs-notification-item-unread {\n background-color: var(--fs-color-subtle);\n }\n .fs-notification-item-primary {\n border-left-color: var(--fs-color-primary);\n }\n .fs-notification-item-secondary {\n border-left-color: var(--fs-color-secondary);\n }\n .fs-notification-item-success {\n border-left-color: var(--fs-color-success);\n }\n .fs-notification-item-warning {\n border-left-color: var(--fs-color-warning);\n }\n .fs-notification-item-danger {\n border-left-color: var(--fs-color-danger);\n }\n .fs-notification-item-info {\n border-left-color: var(--fs-color-info);\n }\n .fs-notification-item-content {\n flex: 1;\n min-width: 0;\n }\n .fs-notification-item-title {\n margin: 0;\n font-size: 0.75rem;\n font-weight: 500;\n }\n .fs-notification-item-text {\n margin: 2px 0 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n }\n .fs-notification-item-time {\n display: block;\n margin-top: 4px;\n color: var(--fs-color-muted);\n font-size: 0.6875rem;\n }\n .fs-notification-item .fs-btn-close {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n }\n .fs-notification-empty {\n padding: 24px 14px;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n text-align: center;\n }\n .fs-notification-empty[hidden] {\n display: none;\n }\n}\n@layer components {\n .fs-dropdown-submenu {\n position: relative;\n }\n .fs-dropdown-item-submenu {\n justify-content: space-between;\n }\n .fs-dropdown-item-submenu::after {\n margin-left: 8px;\n content: \"\";\n border-top: 5px solid transparent;\n border-bottom: 5px solid transparent;\n border-left: 5px solid currentcolor;\n }\n .fs-dropdown-submenu > .fs-dropdown-menu {\n top: -7px;\n left: 100%;\n margin: 0;\n }\n .fs-dropdown-submenu:hover > .fs-dropdown-menu,\n .fs-dropdown-submenu > .fs-dropdown-menu.is-open {\n display: block;\n }\n .fs-dropdown-submenu-left > .fs-dropdown-menu {\n right: 100%;\n left: auto;\n }\n}\n@layer components {\n .fs-tile {\n position: relative;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n background-color: var(--fs-color-surface);\n }\n .fs-tile-icon {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n font-size: 1rem;\n }\n .fs-tile-body {\n flex: 1 1 auto;\n min-width: 0;\n }\n .fs-tile-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: 0.8125rem;\n font-weight: 500;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-tile-subtitle {\n margin: 0;\n color: var(--fs-color-muted);\n font-size: 0.75rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-tile-actions {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n gap: 8px;\n }\n .fs-tile-actions-bottom {\n flex-wrap: wrap;\n }\n .fs-tile-actions-bottom .fs-tile-actions {\n flex-basis: 100%;\n justify-content: flex-end;\n margin-top: 4px;\n }\n .fs-tile-clickable {\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n }\n .fs-tile-clickable:hover,\n .fs-tile-clickable:focus-within {\n border-color: var(--fs-color-primary);\n box-shadow: var(--fs-shadow-sm);\n }\n .fs-tile-sm {\n gap: 8px;\n padding: 8px;\n }\n .fs-tile-sm .fs-tile-icon {\n width: 32px;\n height: 32px;\n font-size: 0.8125rem;\n }\n .fs-tile-sm .fs-tile-title {\n font-size: 0.75rem;\n }\n .fs-tile-sm .fs-tile-subtitle {\n font-size: 0.6875rem;\n }\n .fs-tile-lg {\n gap: 16px;\n padding: 16px;\n }\n .fs-tile-lg .fs-tile-icon {\n width: 48px;\n height: 48px;\n font-size: 1.25rem;\n }\n .fs-tile-lg .fs-tile-title {\n font-size: 1rem;\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-avatar {\n display: inline-flex;\n flex: 0 0 auto;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n overflow: hidden;\n color: var(--fs-color-on-primary);\n font-weight: 600;\n background: var(--fs-color-primary);\n border-radius: 50%;\n object-fit: cover;\n }\n .fs-avatar-sm {\n width: 2rem;\n height: 2rem;\n font-size: 0.8125rem;\n }\n .fs-avatar-lg {\n width: 3.5rem;\n height: 3.5rem;\n font-size: 1.25rem;\n }\n .fs-avatar-square {\n border-radius: var(--fs-radius-md);\n }\n .fs-avatar img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-button-group {\n display: inline-flex;\n vertical-align: middle;\n }\n .fs-button-group > .fs-btn {\n border-radius: 0;\n }\n .fs-button-group > .fs-btn:first-child {\n border-start-start-radius: var(--fs-radius-sm);\n border-end-start-radius: var(--fs-radius-sm);\n }\n .fs-button-group > .fs-btn:last-child {\n border-start-end-radius: var(--fs-radius-sm);\n border-end-end-radius: var(--fs-radius-sm);\n }\n .fs-button-group > .fs-btn + .fs-btn {\n margin-inline-start: -1px;\n }\n .fs-button-group-vertical {\n flex-direction: column;\n align-items: flex-start;\n }\n .fs-button-group-vertical > .fs-btn {\n width: 100%;\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-close {\n display: inline-grid;\n width: 2rem;\n height: 2rem;\n place-items: center;\n padding: 0;\n color: currentcolor;\n font-size: 1.5rem;\n line-height: 1;\n background: transparent;\n border: 0;\n border-radius: 50%;\n cursor: pointer;\n opacity: 0.72;\n }\n .fs-close::before {\n content: \"×\";\n }\n .fs-close:hover {\n opacity: 1;\n background: var(--fs-color-subtle);\n }\n .fs-close:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-focus-color);\n outline-offset: var(--fs-focus-offset);\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-list-group {\n display: flex;\n flex-direction: column;\n padding: 0;\n margin: 0;\n list-style: none;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n }\n .fs-list-group-item {\n position: relative;\n display: block;\n padding: var(--fs-space-3) var(--fs-space-4);\n color: var(--fs-color-text);\n background: var(--fs-color-surface);\n border-block-end: 1px solid var(--fs-color-border);\n }\n .fs-list-group-item:last-child {\n border-block-end: 0;\n }\n button.fs-list-group-item, a.fs-list-group-item {\n width: 100%;\n text-align: start;\n cursor: pointer;\n }\n .fs-list-group-item:hover {\n background: var(--fs-color-subtle);\n }\n .fs-list-group-item.is-active {\n color: var(--fs-color-on-primary);\n background: var(--fs-color-primary);\n }\n}\n@layer components {\n .fs-code {\n padding: 0.125em 0.35em;\n color: var(--fs-color-danger);\n background: var(--fs-color-subtle);\n border-radius: var(--fs-radius-sm);\n }\n .fs-pre {\n display: block;\n max-width: 100%;\n padding: var(--fs-space-4);\n overflow: auto;\n color: var(--fs-color-text);\n background: var(--fs-color-subtle);\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-ratio {\n position: relative;\n width: 100%;\n }\n .fs-ratio::before {\n display: block;\n padding-top: var(--fs-ratio, 56.25%);\n content: \"\";\n }\n .fs-ratio > * {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n .fs-ratio-1x1 {\n --fs-ratio: 100%;\n }\n .fs-ratio-4x3 {\n --fs-ratio: 75%;\n }\n .fs-ratio-16x9 {\n --fs-ratio: 56.25%;\n }\n .fs-ratio-21x9 {\n --fs-ratio: 42.857%;\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-icon-link {\n display: inline-flex;\n gap: 0.5em;\n align-items: center;\n }\n .fs-icon-link svg {\n width: 1em;\n height: 1em;\n flex: 0 0 auto;\n }\n .fs-icon-link:hover svg {\n transform: translateX(0.15em);\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-icon-link svg {\n transition: none;\n }\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background: currentcolor;\n opacity: 0.18;\n }\n .fs-placeholder-glow {\n animation: fs-placeholder-glow 1.5s ease-in-out infinite;\n }\n .fs-placeholder-wave {\n background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.35), transparent), currentcolor;\n background-size: 200% 100%;\n animation: fs-placeholder-wave 1.5s linear infinite;\n }\n .fs-placeholder-btn {\n width: 6rem;\n height: 2.5rem;\n border-radius: var(--fs-radius-sm);\n }\n @keyframes fs-placeholder-glow {\n 50% {\n opacity: 0.08;\n }\n }\n @keyframes fs-placeholder-wave {\n to {\n background-position: -200% 0;\n }\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-placeholder-glow, .fs-placeholder-wave {\n animation: none;\n }\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-progress {\n display: flex;\n height: 0.75rem;\n overflow: hidden;\n background: var(--fs-color-subtle);\n border-radius: 999px;\n }\n .fs-progress-bar {\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--fs-color-on-primary);\n background: var(--fs-color-primary);\n transition: width var(--fs-motion-duration-normal) var(--fs-motion-ease-standard);\n }\n .fs-progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%);\n background-size: 1rem 1rem;\n }\n @media (prefers-reduced-motion: reduce) {\n .fs-progress-bar {\n transition: none;\n }\n }\n}\n/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n [data-fs-scrollspy] .is-active {\n color: var(--fs-color-primary);\n font-weight: 600;\n }\n .fs-scrollspy-nav {\n position: sticky;\n inset-block-start: var(--fs-space-4);\n }\n}\n@layer utilities {\n .fs-u-cq {\n container-type: inline-size;\n }\n @container (min-width: 320px) {\n .fs-u-cq-sm-d-none {\n display: none;\n }\n .fs-u-cq-sm-d-block {\n display: block;\n }\n .fs-u-cq-sm-d-inline-block {\n display: inline-block;\n }\n .fs-u-cq-sm-d-flex {\n display: flex;\n }\n }\n @container (min-width: 480px) {\n .fs-u-cq-md-d-none {\n display: none;\n }\n .fs-u-cq-md-d-block {\n display: block;\n }\n .fs-u-cq-md-d-inline-block {\n display: inline-block;\n }\n .fs-u-cq-md-d-flex {\n display: flex;\n }\n }\n @container (min-width: 640px) {\n .fs-u-cq-lg-d-none {\n display: none;\n }\n .fs-u-cq-lg-d-block {\n display: block;\n }\n .fs-u-cq-lg-d-inline-block {\n display: inline-block;\n }\n .fs-u-cq-lg-d-flex {\n display: flex;\n }\n }\n}\n@layer utilities {\n .fs-u-d-none {\n display: none;\n }\n .fs-u-d-block {\n display: block;\n }\n .fs-u-d-inline {\n display: inline;\n }\n .fs-u-d-inline-block {\n display: inline-block;\n }\n .fs-u-d-flex {\n display: flex;\n }\n}\n@layer utilities {\n .fs-u-align-items-start {\n align-items: flex-start;\n }\n .fs-u-align-items-center {\n align-items: center;\n }\n .fs-u-align-items-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-center {\n justify-content: center;\n }\n .fs-u-justify-content-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-between {\n justify-content: space-between;\n }\n .fs-u-align-self-start {\n align-self: flex-start;\n }\n .fs-u-align-self-center {\n align-self: center;\n }\n .fs-u-align-self-end {\n align-self: flex-end;\n }\n @media (min-width: 640px) {\n .fs-u-align-items-sm-start {\n align-items: flex-start;\n }\n .fs-u-align-items-sm-center {\n align-items: center;\n }\n .fs-u-align-items-sm-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-sm-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-sm-center {\n justify-content: center;\n }\n .fs-u-justify-content-sm-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-sm-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-sm-between {\n justify-content: space-between;\n }\n .fs-u-align-self-sm-start {\n align-self: flex-start;\n }\n .fs-u-align-self-sm-center {\n align-self: center;\n }\n .fs-u-align-self-sm-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 768px) {\n .fs-u-align-items-md-start {\n align-items: flex-start;\n }\n .fs-u-align-items-md-center {\n align-items: center;\n }\n .fs-u-align-items-md-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-md-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-md-center {\n justify-content: center;\n }\n .fs-u-justify-content-md-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-md-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-md-between {\n justify-content: space-between;\n }\n .fs-u-align-self-md-start {\n align-self: flex-start;\n }\n .fs-u-align-self-md-center {\n align-self: center;\n }\n .fs-u-align-self-md-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 1024px) {\n .fs-u-align-items-lg-start {\n align-items: flex-start;\n }\n .fs-u-align-items-lg-center {\n align-items: center;\n }\n .fs-u-align-items-lg-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-lg-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-lg-center {\n justify-content: center;\n }\n .fs-u-justify-content-lg-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-lg-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-lg-between {\n justify-content: space-between;\n }\n .fs-u-align-self-lg-start {\n align-self: flex-start;\n }\n .fs-u-align-self-lg-center {\n align-self: center;\n }\n .fs-u-align-self-lg-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 1280px) {\n .fs-u-align-items-xl-start {\n align-items: flex-start;\n }\n .fs-u-align-items-xl-center {\n align-items: center;\n }\n .fs-u-align-items-xl-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-xl-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-xl-center {\n justify-content: center;\n }\n .fs-u-justify-content-xl-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-xl-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-xl-between {\n justify-content: space-between;\n }\n .fs-u-align-self-xl-start {\n align-self: flex-start;\n }\n .fs-u-align-self-xl-center {\n align-self: center;\n }\n .fs-u-align-self-xl-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 1536px) {\n .fs-u-align-items-xxl-start {\n align-items: flex-start;\n }\n .fs-u-align-items-xxl-center {\n align-items: center;\n }\n .fs-u-align-items-xxl-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-xxl-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-xxl-center {\n justify-content: center;\n }\n .fs-u-justify-content-xxl-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-xxl-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-xxl-between {\n justify-content: space-between;\n }\n .fs-u-align-self-xxl-start {\n align-self: flex-start;\n }\n .fs-u-align-self-xxl-center {\n align-self: center;\n }\n .fs-u-align-self-xxl-end {\n align-self: flex-end;\n }\n }\n @media (min-width: 1920px) {\n .fs-u-align-items-xxxl-start {\n align-items: flex-start;\n }\n .fs-u-align-items-xxxl-center {\n align-items: center;\n }\n .fs-u-align-items-xxxl-end {\n align-items: flex-end;\n }\n .fs-u-justify-content-xxxl-start {\n justify-content: flex-start;\n }\n .fs-u-justify-content-xxxl-center {\n justify-content: center;\n }\n .fs-u-justify-content-xxxl-end {\n justify-content: flex-end;\n }\n .fs-u-justify-content-xxxl-around {\n justify-content: space-around;\n }\n .fs-u-justify-content-xxxl-between {\n justify-content: space-between;\n }\n .fs-u-align-self-xxxl-start {\n align-self: flex-start;\n }\n .fs-u-align-self-xxxl-center {\n align-self: center;\n }\n .fs-u-align-self-xxxl-end {\n align-self: flex-end;\n }\n }\n}\n@layer utilities {\n .fs-icon {\n display: inline-block;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n vertical-align: -0.125em;\n stroke: currentcolor;\n }\n .fs-icon-xs {\n width: 12px;\n height: 12px;\n }\n .fs-icon-sm {\n width: 16px;\n height: 16px;\n }\n .fs-icon-lg {\n width: 32px;\n height: 32px;\n }\n .fs-icon-xl {\n width: 48px;\n height: 48px;\n }\n}\n@layer utilities {\n .fs-u-sticky-top {\n position: sticky;\n top: var(--fs-sticky-top, 0);\n z-index: 1020;\n }\n .fs-u-sticky-bottom {\n position: sticky;\n bottom: var(--fs-sticky-bottom, 0);\n z-index: 1020;\n }\n}\n@layer utilities {\n @media print {\n .fs-u-print-hide {\n display: none !important;\n }\n }\n @media not print {\n .fs-u-print-only {\n display: none !important;\n }\n }\n @media print {\n .fs-u-print-block {\n display: block !important;\n }\n .fs-u-print-inline {\n display: inline !important;\n }\n .fs-u-print-inline-block {\n display: inline-block !important;\n }\n }\n}\n@layer utilities {\n .fs-u-shadow-sm {\n box-shadow: var(--fs-shadow-sm);\n }\n .fs-u-shadow {\n box-shadow: var(--fs-shadow-md);\n }\n .fs-u-shadow-lg {\n box-shadow: var(--fs-shadow-lg);\n }\n}\n@layer utilities {\n .fs-u-m-0 {\n margin: 0;\n }\n .fs-u-mt-0 {\n margin-top: 0;\n }\n .fs-u-mr-0 {\n margin-right: 0;\n }\n .fs-u-mb-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-0 {\n margin-left: 0;\n }\n .fs-u-mx-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-0 {\n padding: 0;\n }\n .fs-u-pt-0 {\n padding-top: 0;\n }\n .fs-u-pr-0 {\n padding-right: 0;\n }\n .fs-u-pb-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-0 {\n padding-left: 0;\n }\n .fs-u-px-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-0 {\n gap: 0;\n }\n .fs-u-gap-x-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-0 {\n row-gap: 0;\n }\n .fs-u-m-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-3 {\n margin: 1rem;\n }\n .fs-u-mt-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-3 {\n padding: 1rem;\n }\n .fs-u-pt-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-3 {\n padding-left: 1rem;\n }\n .fs-u-px-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-3 {\n row-gap: 1rem;\n }\n .fs-u-m-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-5 {\n margin: 3rem;\n }\n .fs-u-mt-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-5 {\n padding: 3rem;\n }\n .fs-u-pt-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-5 {\n padding-left: 3rem;\n }\n .fs-u-px-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-5 {\n row-gap: 3rem;\n }\n .fs-u-m-auto {\n margin: auto;\n }\n .fs-u-mt-auto {\n margin-top: auto;\n }\n .fs-u-mr-auto {\n margin-right: auto;\n }\n .fs-u-mb-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-auto {\n margin-left: auto;\n }\n .fs-u-mx-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n @media (min-width: 640px) {\n .fs-u-m-sm-0 {\n margin: 0;\n }\n .fs-u-mt-sm-0 {\n margin-top: 0;\n }\n .fs-u-mr-sm-0 {\n margin-right: 0;\n }\n .fs-u-mb-sm-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-sm-0 {\n margin-left: 0;\n }\n .fs-u-mx-sm-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-sm-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-sm-0 {\n padding: 0;\n }\n .fs-u-pt-sm-0 {\n padding-top: 0;\n }\n .fs-u-pr-sm-0 {\n padding-right: 0;\n }\n .fs-u-pb-sm-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-sm-0 {\n padding-left: 0;\n }\n .fs-u-px-sm-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-sm-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-sm-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-sm-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-sm-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-sm-0 {\n gap: 0;\n }\n .fs-u-gap-x-sm-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-sm-0 {\n row-gap: 0;\n }\n .fs-u-m-sm-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-sm-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-sm-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-sm-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-sm-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-sm-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-sm-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-sm-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-sm-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-sm-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-sm-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-sm-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-sm-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-sm-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-sm-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-sm-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-sm-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-sm-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-sm-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-sm-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-sm-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-sm-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-sm-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-sm-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-sm-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-sm-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-sm-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-sm-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-sm-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-sm-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-sm-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-sm-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-sm-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-sm-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-sm-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-sm-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-sm-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-sm-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-sm-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-sm-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-sm-3 {\n margin: 1rem;\n }\n .fs-u-mt-sm-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-sm-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-sm-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-sm-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-sm-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-sm-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-sm-3 {\n padding: 1rem;\n }\n .fs-u-pt-sm-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-sm-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-sm-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-sm-3 {\n padding-left: 1rem;\n }\n .fs-u-px-sm-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-sm-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-sm-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-sm-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-sm-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-sm-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-sm-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-sm-3 {\n row-gap: 1rem;\n }\n .fs-u-m-sm-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-sm-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-sm-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-sm-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-sm-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-sm-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-sm-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-sm-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-sm-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-sm-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-sm-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-sm-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-sm-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-sm-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-sm-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-sm-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-sm-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-sm-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-sm-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-sm-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-sm-5 {\n margin: 3rem;\n }\n .fs-u-mt-sm-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-sm-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-sm-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-sm-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-sm-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-sm-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-sm-5 {\n padding: 3rem;\n }\n .fs-u-pt-sm-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-sm-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-sm-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-sm-5 {\n padding-left: 3rem;\n }\n .fs-u-px-sm-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-sm-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-sm-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-sm-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-sm-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-sm-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-sm-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-sm-5 {\n row-gap: 3rem;\n }\n .fs-u-m-sm-auto {\n margin: auto;\n }\n .fs-u-mt-sm-auto {\n margin-top: auto;\n }\n .fs-u-mr-sm-auto {\n margin-right: auto;\n }\n .fs-u-mb-sm-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-sm-auto {\n margin-left: auto;\n }\n .fs-u-mx-sm-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-sm-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 768px) {\n .fs-u-m-md-0 {\n margin: 0;\n }\n .fs-u-mt-md-0 {\n margin-top: 0;\n }\n .fs-u-mr-md-0 {\n margin-right: 0;\n }\n .fs-u-mb-md-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-md-0 {\n margin-left: 0;\n }\n .fs-u-mx-md-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-md-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-md-0 {\n padding: 0;\n }\n .fs-u-pt-md-0 {\n padding-top: 0;\n }\n .fs-u-pr-md-0 {\n padding-right: 0;\n }\n .fs-u-pb-md-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-md-0 {\n padding-left: 0;\n }\n .fs-u-px-md-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-md-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-md-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-md-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-md-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-md-0 {\n gap: 0;\n }\n .fs-u-gap-x-md-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-md-0 {\n row-gap: 0;\n }\n .fs-u-m-md-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-md-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-md-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-md-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-md-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-md-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-md-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-md-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-md-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-md-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-md-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-md-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-md-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-md-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-md-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-md-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-md-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-md-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-md-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-md-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-md-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-md-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-md-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-md-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-md-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-md-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-md-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-md-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-md-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-md-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-md-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-md-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-md-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-md-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-md-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-md-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-md-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-md-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-md-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-md-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-md-3 {\n margin: 1rem;\n }\n .fs-u-mt-md-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-md-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-md-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-md-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-md-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-md-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-md-3 {\n padding: 1rem;\n }\n .fs-u-pt-md-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-md-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-md-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-md-3 {\n padding-left: 1rem;\n }\n .fs-u-px-md-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-md-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-md-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-md-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-md-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-md-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-md-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-md-3 {\n row-gap: 1rem;\n }\n .fs-u-m-md-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-md-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-md-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-md-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-md-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-md-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-md-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-md-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-md-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-md-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-md-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-md-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-md-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-md-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-md-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-md-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-md-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-md-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-md-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-md-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-md-5 {\n margin: 3rem;\n }\n .fs-u-mt-md-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-md-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-md-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-md-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-md-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-md-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-md-5 {\n padding: 3rem;\n }\n .fs-u-pt-md-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-md-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-md-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-md-5 {\n padding-left: 3rem;\n }\n .fs-u-px-md-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-md-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-md-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-md-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-md-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-md-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-md-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-md-5 {\n row-gap: 3rem;\n }\n .fs-u-m-md-auto {\n margin: auto;\n }\n .fs-u-mt-md-auto {\n margin-top: auto;\n }\n .fs-u-mr-md-auto {\n margin-right: auto;\n }\n .fs-u-mb-md-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-md-auto {\n margin-left: auto;\n }\n .fs-u-mx-md-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-md-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 1024px) {\n .fs-u-m-lg-0 {\n margin: 0;\n }\n .fs-u-mt-lg-0 {\n margin-top: 0;\n }\n .fs-u-mr-lg-0 {\n margin-right: 0;\n }\n .fs-u-mb-lg-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-lg-0 {\n margin-left: 0;\n }\n .fs-u-mx-lg-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-lg-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-lg-0 {\n padding: 0;\n }\n .fs-u-pt-lg-0 {\n padding-top: 0;\n }\n .fs-u-pr-lg-0 {\n padding-right: 0;\n }\n .fs-u-pb-lg-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-lg-0 {\n padding-left: 0;\n }\n .fs-u-px-lg-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-lg-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-lg-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-lg-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-lg-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-lg-0 {\n gap: 0;\n }\n .fs-u-gap-x-lg-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-lg-0 {\n row-gap: 0;\n }\n .fs-u-m-lg-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-lg-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-lg-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-lg-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-lg-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-lg-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-lg-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-lg-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-lg-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-lg-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-lg-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-lg-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-lg-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-lg-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-lg-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-lg-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-lg-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-lg-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-lg-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-lg-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-lg-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-lg-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-lg-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-lg-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-lg-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-lg-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-lg-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-lg-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-lg-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-lg-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-lg-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-lg-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-lg-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-lg-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-lg-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-lg-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-lg-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-lg-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-lg-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-lg-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-lg-3 {\n margin: 1rem;\n }\n .fs-u-mt-lg-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-lg-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-lg-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-lg-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-lg-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-lg-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-lg-3 {\n padding: 1rem;\n }\n .fs-u-pt-lg-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-lg-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-lg-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-lg-3 {\n padding-left: 1rem;\n }\n .fs-u-px-lg-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-lg-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-lg-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-lg-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-lg-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-lg-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-lg-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-lg-3 {\n row-gap: 1rem;\n }\n .fs-u-m-lg-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-lg-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-lg-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-lg-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-lg-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-lg-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-lg-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-lg-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-lg-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-lg-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-lg-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-lg-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-lg-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-lg-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-lg-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-lg-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-lg-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-lg-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-lg-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-lg-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-lg-5 {\n margin: 3rem;\n }\n .fs-u-mt-lg-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-lg-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-lg-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-lg-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-lg-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-lg-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-lg-5 {\n padding: 3rem;\n }\n .fs-u-pt-lg-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-lg-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-lg-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-lg-5 {\n padding-left: 3rem;\n }\n .fs-u-px-lg-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-lg-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-lg-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-lg-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-lg-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-lg-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-lg-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-lg-5 {\n row-gap: 3rem;\n }\n .fs-u-m-lg-auto {\n margin: auto;\n }\n .fs-u-mt-lg-auto {\n margin-top: auto;\n }\n .fs-u-mr-lg-auto {\n margin-right: auto;\n }\n .fs-u-mb-lg-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-lg-auto {\n margin-left: auto;\n }\n .fs-u-mx-lg-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-lg-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 1280px) {\n .fs-u-m-xl-0 {\n margin: 0;\n }\n .fs-u-mt-xl-0 {\n margin-top: 0;\n }\n .fs-u-mr-xl-0 {\n margin-right: 0;\n }\n .fs-u-mb-xl-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-xl-0 {\n margin-left: 0;\n }\n .fs-u-mx-xl-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-xl-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-xl-0 {\n padding: 0;\n }\n .fs-u-pt-xl-0 {\n padding-top: 0;\n }\n .fs-u-pr-xl-0 {\n padding-right: 0;\n }\n .fs-u-pb-xl-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-xl-0 {\n padding-left: 0;\n }\n .fs-u-px-xl-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-xl-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-xl-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-xl-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-xl-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-xl-0 {\n gap: 0;\n }\n .fs-u-gap-x-xl-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-xl-0 {\n row-gap: 0;\n }\n .fs-u-m-xl-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-xl-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-xl-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-xl-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-xl-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-xl-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-xl-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-xl-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-xl-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-xl-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-xl-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-xl-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-xl-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-xl-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-xl-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-xl-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-xl-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-xl-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-xl-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-xl-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-xl-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-xl-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-xl-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-xl-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-xl-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-xl-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-xl-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-xl-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-xl-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-xl-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-xl-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-xl-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-xl-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-xl-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-xl-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-xl-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-xl-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-xl-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-xl-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-xl-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-xl-3 {\n margin: 1rem;\n }\n .fs-u-mt-xl-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-xl-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-xl-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-xl-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-xl-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-xl-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-xl-3 {\n padding: 1rem;\n }\n .fs-u-pt-xl-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-xl-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-xl-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-xl-3 {\n padding-left: 1rem;\n }\n .fs-u-px-xl-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-xl-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-xl-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-xl-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-xl-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-xl-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-xl-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-xl-3 {\n row-gap: 1rem;\n }\n .fs-u-m-xl-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-xl-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-xl-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-xl-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-xl-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-xl-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-xl-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-xl-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-xl-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-xl-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-xl-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-xl-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-xl-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-xl-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-xl-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-xl-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-xl-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-xl-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-xl-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-xl-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-xl-5 {\n margin: 3rem;\n }\n .fs-u-mt-xl-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-xl-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-xl-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-xl-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-xl-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-xl-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-xl-5 {\n padding: 3rem;\n }\n .fs-u-pt-xl-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-xl-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-xl-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-xl-5 {\n padding-left: 3rem;\n }\n .fs-u-px-xl-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-xl-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-xl-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-xl-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-xl-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-xl-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-xl-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-xl-5 {\n row-gap: 3rem;\n }\n .fs-u-m-xl-auto {\n margin: auto;\n }\n .fs-u-mt-xl-auto {\n margin-top: auto;\n }\n .fs-u-mr-xl-auto {\n margin-right: auto;\n }\n .fs-u-mb-xl-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-xl-auto {\n margin-left: auto;\n }\n .fs-u-mx-xl-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-xl-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 1536px) {\n .fs-u-m-xxl-0 {\n margin: 0;\n }\n .fs-u-mt-xxl-0 {\n margin-top: 0;\n }\n .fs-u-mr-xxl-0 {\n margin-right: 0;\n }\n .fs-u-mb-xxl-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-xxl-0 {\n margin-left: 0;\n }\n .fs-u-mx-xxl-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-xxl-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-xxl-0 {\n padding: 0;\n }\n .fs-u-pt-xxl-0 {\n padding-top: 0;\n }\n .fs-u-pr-xxl-0 {\n padding-right: 0;\n }\n .fs-u-pb-xxl-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-xxl-0 {\n padding-left: 0;\n }\n .fs-u-px-xxl-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-xxl-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-xxl-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-xxl-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-xxl-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-xxl-0 {\n gap: 0;\n }\n .fs-u-gap-x-xxl-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-xxl-0 {\n row-gap: 0;\n }\n .fs-u-m-xxl-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-xxl-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-xxl-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-xxl-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-xxl-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-xxl-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-xxl-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-xxl-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-xxl-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-xxl-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-xxl-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-xxl-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-xxl-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-xxl-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-xxl-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-xxl-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-xxl-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-xxl-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-xxl-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-xxl-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-xxl-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-xxl-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-xxl-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-xxl-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-xxl-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-xxl-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-xxl-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-xxl-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-xxl-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-xxl-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-xxl-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-xxl-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-xxl-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-xxl-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-xxl-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-xxl-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-xxl-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-xxl-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-xxl-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-xxl-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-xxl-3 {\n margin: 1rem;\n }\n .fs-u-mt-xxl-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-xxl-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-xxl-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-xxl-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-xxl-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-xxl-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-xxl-3 {\n padding: 1rem;\n }\n .fs-u-pt-xxl-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-xxl-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-xxl-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-xxl-3 {\n padding-left: 1rem;\n }\n .fs-u-px-xxl-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-xxl-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-xxl-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-xxl-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-xxl-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-xxl-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-xxl-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-xxl-3 {\n row-gap: 1rem;\n }\n .fs-u-m-xxl-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-xxl-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-xxl-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-xxl-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-xxl-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-xxl-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-xxl-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-xxl-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-xxl-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-xxl-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-xxl-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-xxl-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-xxl-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-xxl-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-xxl-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-xxl-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-xxl-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-xxl-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-xxl-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-xxl-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-xxl-5 {\n margin: 3rem;\n }\n .fs-u-mt-xxl-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-xxl-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-xxl-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-xxl-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-xxl-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-xxl-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-xxl-5 {\n padding: 3rem;\n }\n .fs-u-pt-xxl-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-xxl-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-xxl-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-xxl-5 {\n padding-left: 3rem;\n }\n .fs-u-px-xxl-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-xxl-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-xxl-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-xxl-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-xxl-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-xxl-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-xxl-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-xxl-5 {\n row-gap: 3rem;\n }\n .fs-u-m-xxl-auto {\n margin: auto;\n }\n .fs-u-mt-xxl-auto {\n margin-top: auto;\n }\n .fs-u-mr-xxl-auto {\n margin-right: auto;\n }\n .fs-u-mb-xxl-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-xxl-auto {\n margin-left: auto;\n }\n .fs-u-mx-xxl-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-xxl-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n @media (min-width: 1920px) {\n .fs-u-m-xxxl-0 {\n margin: 0;\n }\n .fs-u-mt-xxxl-0 {\n margin-top: 0;\n }\n .fs-u-mr-xxxl-0 {\n margin-right: 0;\n }\n .fs-u-mb-xxxl-0 {\n margin-bottom: 0;\n }\n .fs-u-ml-xxxl-0 {\n margin-left: 0;\n }\n .fs-u-mx-xxxl-0 {\n margin-right: 0;\n margin-left: 0;\n }\n .fs-u-my-xxxl-0 {\n margin-top: 0;\n margin-bottom: 0;\n }\n .fs-u-p-xxxl-0 {\n padding: 0;\n }\n .fs-u-pt-xxxl-0 {\n padding-top: 0;\n }\n .fs-u-pr-xxxl-0 {\n padding-right: 0;\n }\n .fs-u-pb-xxxl-0 {\n padding-bottom: 0;\n }\n .fs-u-pl-xxxl-0 {\n padding-left: 0;\n }\n .fs-u-px-xxxl-0 {\n padding-right: 0;\n padding-left: 0;\n }\n .fs-u-py-xxxl-0 {\n padding-top: 0;\n padding-bottom: 0;\n }\n .fs-u-g-xxxl-0 {\n --fs-gutter-x: 0;\n --fs-gutter-y: 0;\n }\n .fs-u-gx-xxxl-0 {\n --fs-gutter-x: 0;\n }\n .fs-u-gy-xxxl-0 {\n --fs-gutter-y: 0;\n }\n .fs-u-gap-xxxl-0 {\n gap: 0;\n }\n .fs-u-gap-x-xxxl-0 {\n column-gap: 0;\n }\n .fs-u-gap-y-xxxl-0 {\n row-gap: 0;\n }\n .fs-u-m-xxxl-1 {\n margin: 0.25rem;\n }\n .fs-u-mt-xxxl-1 {\n margin-top: 0.25rem;\n }\n .fs-u-mr-xxxl-1 {\n margin-right: 0.25rem;\n }\n .fs-u-mb-xxxl-1 {\n margin-bottom: 0.25rem;\n }\n .fs-u-ml-xxxl-1 {\n margin-left: 0.25rem;\n }\n .fs-u-mx-xxxl-1 {\n margin-right: 0.25rem;\n margin-left: 0.25rem;\n }\n .fs-u-my-xxxl-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n }\n .fs-u-p-xxxl-1 {\n padding: 0.25rem;\n }\n .fs-u-pt-xxxl-1 {\n padding-top: 0.25rem;\n }\n .fs-u-pr-xxxl-1 {\n padding-right: 0.25rem;\n }\n .fs-u-pb-xxxl-1 {\n padding-bottom: 0.25rem;\n }\n .fs-u-pl-xxxl-1 {\n padding-left: 0.25rem;\n }\n .fs-u-px-xxxl-1 {\n padding-right: 0.25rem;\n padding-left: 0.25rem;\n }\n .fs-u-py-xxxl-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n .fs-u-g-xxxl-1 {\n --fs-gutter-x: 0.25rem;\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gx-xxxl-1 {\n --fs-gutter-x: 0.25rem;\n }\n .fs-u-gy-xxxl-1 {\n --fs-gutter-y: 0.25rem;\n }\n .fs-u-gap-xxxl-1 {\n gap: 0.25rem;\n }\n .fs-u-gap-x-xxxl-1 {\n column-gap: 0.25rem;\n }\n .fs-u-gap-y-xxxl-1 {\n row-gap: 0.25rem;\n }\n .fs-u-m-xxxl-2 {\n margin: 0.5rem;\n }\n .fs-u-mt-xxxl-2 {\n margin-top: 0.5rem;\n }\n .fs-u-mr-xxxl-2 {\n margin-right: 0.5rem;\n }\n .fs-u-mb-xxxl-2 {\n margin-bottom: 0.5rem;\n }\n .fs-u-ml-xxxl-2 {\n margin-left: 0.5rem;\n }\n .fs-u-mx-xxxl-2 {\n margin-right: 0.5rem;\n margin-left: 0.5rem;\n }\n .fs-u-my-xxxl-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n }\n .fs-u-p-xxxl-2 {\n padding: 0.5rem;\n }\n .fs-u-pt-xxxl-2 {\n padding-top: 0.5rem;\n }\n .fs-u-pr-xxxl-2 {\n padding-right: 0.5rem;\n }\n .fs-u-pb-xxxl-2 {\n padding-bottom: 0.5rem;\n }\n .fs-u-pl-xxxl-2 {\n padding-left: 0.5rem;\n }\n .fs-u-px-xxxl-2 {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .fs-u-py-xxxl-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n }\n .fs-u-g-xxxl-2 {\n --fs-gutter-x: 0.5rem;\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gx-xxxl-2 {\n --fs-gutter-x: 0.5rem;\n }\n .fs-u-gy-xxxl-2 {\n --fs-gutter-y: 0.5rem;\n }\n .fs-u-gap-xxxl-2 {\n gap: 0.5rem;\n }\n .fs-u-gap-x-xxxl-2 {\n column-gap: 0.5rem;\n }\n .fs-u-gap-y-xxxl-2 {\n row-gap: 0.5rem;\n }\n .fs-u-m-xxxl-3 {\n margin: 1rem;\n }\n .fs-u-mt-xxxl-3 {\n margin-top: 1rem;\n }\n .fs-u-mr-xxxl-3 {\n margin-right: 1rem;\n }\n .fs-u-mb-xxxl-3 {\n margin-bottom: 1rem;\n }\n .fs-u-ml-xxxl-3 {\n margin-left: 1rem;\n }\n .fs-u-mx-xxxl-3 {\n margin-right: 1rem;\n margin-left: 1rem;\n }\n .fs-u-my-xxxl-3 {\n margin-top: 1rem;\n margin-bottom: 1rem;\n }\n .fs-u-p-xxxl-3 {\n padding: 1rem;\n }\n .fs-u-pt-xxxl-3 {\n padding-top: 1rem;\n }\n .fs-u-pr-xxxl-3 {\n padding-right: 1rem;\n }\n .fs-u-pb-xxxl-3 {\n padding-bottom: 1rem;\n }\n .fs-u-pl-xxxl-3 {\n padding-left: 1rem;\n }\n .fs-u-px-xxxl-3 {\n padding-right: 1rem;\n padding-left: 1rem;\n }\n .fs-u-py-xxxl-3 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n }\n .fs-u-g-xxxl-3 {\n --fs-gutter-x: 1rem;\n --fs-gutter-y: 1rem;\n }\n .fs-u-gx-xxxl-3 {\n --fs-gutter-x: 1rem;\n }\n .fs-u-gy-xxxl-3 {\n --fs-gutter-y: 1rem;\n }\n .fs-u-gap-xxxl-3 {\n gap: 1rem;\n }\n .fs-u-gap-x-xxxl-3 {\n column-gap: 1rem;\n }\n .fs-u-gap-y-xxxl-3 {\n row-gap: 1rem;\n }\n .fs-u-m-xxxl-4 {\n margin: 1.5rem;\n }\n .fs-u-mt-xxxl-4 {\n margin-top: 1.5rem;\n }\n .fs-u-mr-xxxl-4 {\n margin-right: 1.5rem;\n }\n .fs-u-mb-xxxl-4 {\n margin-bottom: 1.5rem;\n }\n .fs-u-ml-xxxl-4 {\n margin-left: 1.5rem;\n }\n .fs-u-mx-xxxl-4 {\n margin-right: 1.5rem;\n margin-left: 1.5rem;\n }\n .fs-u-my-xxxl-4 {\n margin-top: 1.5rem;\n margin-bottom: 1.5rem;\n }\n .fs-u-p-xxxl-4 {\n padding: 1.5rem;\n }\n .fs-u-pt-xxxl-4 {\n padding-top: 1.5rem;\n }\n .fs-u-pr-xxxl-4 {\n padding-right: 1.5rem;\n }\n .fs-u-pb-xxxl-4 {\n padding-bottom: 1.5rem;\n }\n .fs-u-pl-xxxl-4 {\n padding-left: 1.5rem;\n }\n .fs-u-px-xxxl-4 {\n padding-right: 1.5rem;\n padding-left: 1.5rem;\n }\n .fs-u-py-xxxl-4 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n }\n .fs-u-g-xxxl-4 {\n --fs-gutter-x: 1.5rem;\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gx-xxxl-4 {\n --fs-gutter-x: 1.5rem;\n }\n .fs-u-gy-xxxl-4 {\n --fs-gutter-y: 1.5rem;\n }\n .fs-u-gap-xxxl-4 {\n gap: 1.5rem;\n }\n .fs-u-gap-x-xxxl-4 {\n column-gap: 1.5rem;\n }\n .fs-u-gap-y-xxxl-4 {\n row-gap: 1.5rem;\n }\n .fs-u-m-xxxl-5 {\n margin: 3rem;\n }\n .fs-u-mt-xxxl-5 {\n margin-top: 3rem;\n }\n .fs-u-mr-xxxl-5 {\n margin-right: 3rem;\n }\n .fs-u-mb-xxxl-5 {\n margin-bottom: 3rem;\n }\n .fs-u-ml-xxxl-5 {\n margin-left: 3rem;\n }\n .fs-u-mx-xxxl-5 {\n margin-right: 3rem;\n margin-left: 3rem;\n }\n .fs-u-my-xxxl-5 {\n margin-top: 3rem;\n margin-bottom: 3rem;\n }\n .fs-u-p-xxxl-5 {\n padding: 3rem;\n }\n .fs-u-pt-xxxl-5 {\n padding-top: 3rem;\n }\n .fs-u-pr-xxxl-5 {\n padding-right: 3rem;\n }\n .fs-u-pb-xxxl-5 {\n padding-bottom: 3rem;\n }\n .fs-u-pl-xxxl-5 {\n padding-left: 3rem;\n }\n .fs-u-px-xxxl-5 {\n padding-right: 3rem;\n padding-left: 3rem;\n }\n .fs-u-py-xxxl-5 {\n padding-top: 3rem;\n padding-bottom: 3rem;\n }\n .fs-u-g-xxxl-5 {\n --fs-gutter-x: 3rem;\n --fs-gutter-y: 3rem;\n }\n .fs-u-gx-xxxl-5 {\n --fs-gutter-x: 3rem;\n }\n .fs-u-gy-xxxl-5 {\n --fs-gutter-y: 3rem;\n }\n .fs-u-gap-xxxl-5 {\n gap: 3rem;\n }\n .fs-u-gap-x-xxxl-5 {\n column-gap: 3rem;\n }\n .fs-u-gap-y-xxxl-5 {\n row-gap: 3rem;\n }\n .fs-u-m-xxxl-auto {\n margin: auto;\n }\n .fs-u-mt-xxxl-auto {\n margin-top: auto;\n }\n .fs-u-mr-xxxl-auto {\n margin-right: auto;\n }\n .fs-u-mb-xxxl-auto {\n margin-bottom: auto;\n }\n .fs-u-ml-xxxl-auto {\n margin-left: auto;\n }\n .fs-u-mx-xxxl-auto {\n margin-right: auto;\n margin-left: auto;\n }\n .fs-u-my-xxxl-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n}\n@layer utilities {\n .fs-u-text-start {\n text-align: left;\n }\n .fs-u-text-center {\n text-align: center;\n }\n .fs-u-text-end {\n text-align: right;\n }\n .fs-u-text-lowercase {\n text-transform: lowercase;\n }\n .fs-u-text-uppercase {\n text-transform: uppercase;\n }\n .fs-u-text-capitalize {\n text-transform: capitalize;\n }\n .fs-u-text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .fs-u-fw-regular {\n font-weight: 400;\n }\n .fs-u-fw-medium {\n font-weight: 500;\n }\n .fs-u-fw-semibold {\n font-weight: 600;\n }\n .fs-u-fw-bold {\n font-weight: 700;\n }\n .fs-u-fs-xs {\n font-size: 0.6875rem;\n }\n .fs-u-fs-sm {\n font-size: 0.75rem;\n }\n .fs-u-fs-md {\n font-size: 0.8125rem;\n }\n .fs-u-fs-lg {\n font-size: 1rem;\n }\n .fs-u-fs-xl {\n font-size: 1.25rem;\n }\n .fs-u-fs-h1 {\n font-size: 1.75rem;\n }\n .fs-u-fs-h2 {\n font-size: 1.5rem;\n }\n .fs-u-fs-h3 {\n font-size: 1.3125rem;\n }\n .fs-u-fs-h4 {\n font-size: 1.125rem;\n }\n .fs-u-fs-h5 {\n font-size: 1rem;\n }\n .fs-u-fs-h6 {\n font-size: 0.875rem;\n }\n .fs-u-font-sans {\n font-family: var(--fs-font-sans);\n }\n .fs-u-font-mono {\n font-family: var(--fs-font-mono);\n }\n}\n@layer utilities {\n .fs-u-visible {\n visibility: visible;\n }\n .fs-u-invisible {\n visibility: hidden;\n }\n .fs-u-visually-hidden,\n .fs-u-visually-hidden-focusable {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip-path: inset(50%) !important;\n white-space: nowrap !important;\n border: 0 !important;\n }\n .fs-u-visually-hidden-focusable:focus,\n .fs-u-visually-hidden-focusable:focus-within {\n position: static !important;\n width: auto !important;\n height: auto !important;\n margin: 0 !important;\n overflow: visible !important;\n clip-path: none !important;\n white-space: normal !important;\n }\n}\n@layer utilities {\n .fs-u-focus-ring:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-focus-color);\n outline-offset: var(--fs-focus-offset);\n box-shadow: 0 0 0 var(--fs-focus-ring-size) var(--fs-focus-ring-color);\n }\n .fs-u-disabled,\n .fs-u-disabled[aria-disabled=true] {\n cursor: not-allowed;\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n @media print {\n .fs-u-print-hidden {\n display: none !important;\n }\n .fs-u-print-visible {\n display: block !important;\n }\n }\n}\n@layer utilities {\n .fs-u-color-primary {\n color: var(--fs-color-primary, oklch(53.5630074284% 0.2132145174 261.6264320248deg)) !important;\n }\n .fs-u-bg-primary {\n background-color: var(--fs-color-primary, oklch(53.5630074284% 0.2132145174 261.6264320248deg)) !important;\n }\n .fs-u-color-secondary {\n color: var(--fs-color-secondary, oklch(55.4391007662% 0.040717043 257.4166191214deg)) !important;\n }\n .fs-u-bg-secondary {\n background-color: var(--fs-color-secondary, oklch(55.4391007662% 0.040717043 257.4166191214deg)) !important;\n }\n .fs-u-color-success {\n color: var(--fs-color-success, oklch(75.151587899% 0.2146126169 148.125846236deg)) !important;\n }\n .fs-u-bg-success {\n background-color: var(--fs-color-success, oklch(75.151587899% 0.2146126169 148.125846236deg)) !important;\n }\n .fs-u-color-warning {\n color: var(--fs-color-warning, oklch(81.9510815663% 0.1562613975 78.6575213966deg)) !important;\n }\n .fs-u-bg-warning {\n background-color: var(--fs-color-warning, oklch(81.9510815663% 0.1562613975 78.6575213966deg)) !important;\n }\n .fs-u-color-danger {\n color: var(--fs-color-danger, oklch(55.9653139301% 0.1897270855 25.2407937498deg)) !important;\n }\n .fs-u-bg-danger {\n background-color: var(--fs-color-danger, oklch(55.9653139301% 0.1897270855 25.2407937498deg)) !important;\n }\n .fs-u-color-info {\n color: var(--fs-color-info, oklch(53.3359780029% 0.1620131129 280.2231949375deg)) !important;\n }\n .fs-u-bg-info {\n background-color: var(--fs-color-info, oklch(53.3359780029% 0.1620131129 280.2231949375deg)) !important;\n }\n .fs-u-m-0 {\n margin: 0 !important;\n }\n .fs-u-mx-0 {\n margin-inline: 0 !important;\n }\n .fs-u-my-0 {\n margin-block: 0 !important;\n }\n .fs-u-p-0 {\n padding: 0 !important;\n }\n .fs-u-px-0 {\n padding-inline: 0 !important;\n }\n .fs-u-py-0 {\n padding-block: 0 !important;\n }\n .fs-u-m-1 {\n margin: 0.25rem !important;\n }\n .fs-u-mx-1 {\n margin-inline: 0.25rem !important;\n }\n .fs-u-my-1 {\n margin-block: 0.25rem !important;\n }\n .fs-u-p-1 {\n padding: 0.25rem !important;\n }\n .fs-u-px-1 {\n padding-inline: 0.25rem !important;\n }\n .fs-u-py-1 {\n padding-block: 0.25rem !important;\n }\n .fs-u-m-2 {\n margin: 0.5rem !important;\n }\n .fs-u-mx-2 {\n margin-inline: 0.5rem !important;\n }\n .fs-u-my-2 {\n margin-block: 0.5rem !important;\n }\n .fs-u-p-2 {\n padding: 0.5rem !important;\n }\n .fs-u-px-2 {\n padding-inline: 0.5rem !important;\n }\n .fs-u-py-2 {\n padding-block: 0.5rem !important;\n }\n .fs-u-m-3 {\n margin: 1rem !important;\n }\n .fs-u-mx-3 {\n margin-inline: 1rem !important;\n }\n .fs-u-my-3 {\n margin-block: 1rem !important;\n }\n .fs-u-p-3 {\n padding: 1rem !important;\n }\n .fs-u-px-3 {\n padding-inline: 1rem !important;\n }\n .fs-u-py-3 {\n padding-block: 1rem !important;\n }\n .fs-u-m-4 {\n margin: 1.5rem !important;\n }\n .fs-u-mx-4 {\n margin-inline: 1.5rem !important;\n }\n .fs-u-my-4 {\n margin-block: 1.5rem !important;\n }\n .fs-u-p-4 {\n padding: 1.5rem !important;\n }\n .fs-u-px-4 {\n padding-inline: 1.5rem !important;\n }\n .fs-u-py-4 {\n padding-block: 1.5rem !important;\n }\n .fs-u-m-5 {\n margin: 3rem !important;\n }\n .fs-u-mx-5 {\n margin-inline: 3rem !important;\n }\n .fs-u-my-5 {\n margin-block: 3rem !important;\n }\n .fs-u-p-5 {\n padding: 3rem !important;\n }\n .fs-u-px-5 {\n padding-inline: 3rem !important;\n }\n .fs-u-py-5 {\n padding-block: 3rem !important;\n }\n .fs-u-w-25 {\n width: 25% !important;\n }\n .fs-u-h-25 {\n height: 25% !important;\n }\n .fs-u-w-50 {\n width: 50% !important;\n }\n .fs-u-h-50 {\n height: 50% !important;\n }\n .fs-u-w-75 {\n width: 75% !important;\n }\n .fs-u-h-75 {\n height: 75% !important;\n }\n .fs-u-w-100 {\n width: 100% !important;\n }\n .fs-u-h-100 {\n height: 100% !important;\n }\n .fs-u-w-auto {\n width: auto !important;\n }\n .fs-u-h-auto {\n height: auto !important;\n }\n @media (min-width: 640px) {\n .fs-u-d-sm-flex {\n display: flex !important;\n }\n .fs-u-d-sm-none {\n display: none !important;\n }\n .fs-u-text-sm-start {\n text-align: start !important;\n }\n }\n @media (min-width: 768px) {\n .fs-u-d-md-flex {\n display: flex !important;\n }\n .fs-u-d-md-none {\n display: none !important;\n }\n .fs-u-text-md-start {\n text-align: start !important;\n }\n }\n @media (min-width: 1024px) {\n .fs-u-d-lg-flex {\n display: flex !important;\n }\n .fs-u-d-lg-none {\n display: none !important;\n }\n .fs-u-text-lg-start {\n text-align: start !important;\n }\n }\n @media (min-width: 1280px) {\n .fs-u-d-xl-flex {\n display: flex !important;\n }\n .fs-u-d-xl-none {\n display: none !important;\n }\n .fs-u-text-xl-start {\n text-align: start !important;\n }\n }\n @media (min-width: 1536px) {\n .fs-u-d-xxl-flex {\n display: flex !important;\n }\n .fs-u-d-xxl-none {\n display: none !important;\n }\n .fs-u-text-xxl-start {\n text-align: start !important;\n }\n }\n @media (min-width: 1920px) {\n .fs-u-d-xxxl-flex {\n display: flex !important;\n }\n .fs-u-d-xxxl-none {\n display: none !important;\n }\n .fs-u-text-xxxl-start {\n text-align: start !important;\n }\n }\n}\n@layer tokens {\n [data-fs-brand=violet] {\n --fs-color-primary: #6d28d9;\n --fs-alert-primary-bg: rgb(229.8834406263, 225.8717327657, 252.5458384302);\n --fs-alert-primary-text: rgb(37.7006407433, 8.7385189481, 83.109047167);\n --fs-feedback-primary-bg: rgb(229.8834406263, 225.8717327657, 252.5458384302);\n }\n [data-fs-brand=violet][data-theme=dark],\n [data-theme=dark] [data-fs-brand=violet] {\n --fs-color-primary: rgb(114.6495158739, 57.1165361442, 219.9746158745);\n --fs-alert-primary-bg: rgb(31.4819726714, 47.0564006856, 82.6607876597);\n --fs-alert-primary-text: rgb(167.4962913963, 147.746130571, 240.0249534535);\n --fs-feedback-primary-bg: rgb(31.4819726714, 47.0564006856, 82.6607876597);\n }\n @supports (color: oklch(0% 0 0deg)) {\n [data-fs-brand=violet] {\n --fs-color-primary: oklch(49.0666497236% 0.2412317343 292.5809393311deg);\n --fs-alert-primary-bg: oklch(92.3599974585% 0.0361847601 292.5809393311deg);\n --fs-alert-primary-text: oklch(24.5333248618% 0.1206158672 292.5809393311deg);\n --fs-feedback-primary-bg: oklch(92.3599974585% 0.0361847601 292.5809393311deg);\n }\n [data-fs-brand=violet][data-theme=dark],\n [data-theme=dark] [data-fs-brand=violet] {\n --fs-color-primary: oklch(51.6133172374% 0.2291701476 292.5809393311deg);\n --fs-alert-primary-bg: oklch(31.117092664% 0.067505667 264.9134801836deg);\n --fs-alert-primary-text: oklch(71.986657348% 0.1326774539 292.5809393311deg);\n --fs-feedback-primary-bg: oklch(31.117092664% 0.067505667 264.9134801836deg);\n }\n }\n [data-fs-brand=corporate] {\n --fs-color-primary: #1d4e89;\n --fs-alert-primary-bg: rgb(219.2237954153, 227.2186121739, 237.6990809983);\n --fs-alert-primary-text: rgb(5.0598830676, 24.6667463069, 49.4731905568);\n --fs-feedback-primary-bg: rgb(219.2237954153, 227.2186121739, 237.6990809983);\n }\n [data-fs-brand=corporate][data-theme=dark],\n [data-theme=dark] [data-fs-brand=corporate] {\n --fs-color-primary: rgb(40.8593466225, 86.5224214637, 143.0926598584);\n --fs-alert-primary-bg: rgb(31.2586947979, 46.3186220749, 70.1321749545);\n --fs-alert-primary-text: rgb(127.9940036809, 155.4045223568, 190.9765129762);\n --fs-feedback-primary-bg: rgb(31.2586947979, 46.3186220749, 70.1321749545);\n }\n [data-fs-brand=vibrant] {\n --fs-color-primary: #f2542d;\n --fs-alert-primary-bg: rgb(255, 231.3637253432, 224.6456124112);\n --fs-alert-primary-text: rgb(93.6202523577, 27.1894355526, 10.7919554552);\n --fs-feedback-primary-bg: rgb(255, 231.3637253432, 224.6456124112);\n }\n [data-fs-brand=vibrant][data-theme=dark],\n [data-theme=dark] [data-fs-brand=vibrant] {\n --fs-color-primary: rgb(244.0763687777, 94.774513804, 58.7750761343);\n --fs-alert-primary-bg: rgb(48.9487024594, 50.7990197305, 85.9119190034);\n --fs-alert-primary-text: rgb(255, 166.953251087, 144.6609410048);\n --fs-feedback-primary-bg: rgb(48.9487024594, 50.7990197305, 85.9119190034);\n }\n @supports (color: oklch(0% 0 0deg)) {\n [data-fs-brand=corporate] {\n --fs-color-primary: oklch(42.3377990386% 0.1112359961 255.1073474093deg);\n --fs-alert-primary-bg: oklch(91.3506698558% 0.0166853994 255.1073474093deg);\n --fs-alert-primary-text: oklch(21.1688995193% 0.055617998 255.1073474093deg);\n --fs-feedback-primary-bg: oklch(91.3506698558% 0.0166853994 255.1073474093deg);\n }\n [data-fs-brand=corporate][data-theme=dark],\n [data-theme=dark] [data-fs-brand=corporate] {\n --fs-color-primary: oklch(45.2209090867% 0.1056741963 255.1073474093deg);\n --fs-alert-primary-bg: oklch(30.1077650613% 0.0480063062 259.2924413953deg);\n --fs-alert-primary-text: oklch(68.2857894712% 0.0611797979 255.1073474093deg);\n --fs-feedback-primary-bg: oklch(30.1077650613% 0.0480063062 259.2924413953deg);\n }\n [data-fs-brand=vibrant] {\n --fs-color-primary: oklch(65.5786741493% 0.2007639921 34.7814711243deg);\n --fs-alert-primary-bg: oklch(94.8368011224% 0.0301145988 34.7814711243deg);\n --fs-alert-primary-text: oklch(32.7893370747% 0.1003819961 34.7814711243deg);\n --fs-feedback-primary-bg: oklch(94.8368011224% 0.0301145988 34.7814711243deg);\n }\n [data-fs-brand=vibrant][data-theme=dark],\n [data-theme=dark] [data-fs-brand=vibrant] {\n --fs-color-primary: oklch(67.2997404419% 0.1907257925 34.7814711243deg);\n --fs-alert-primary-bg: oklch(33.5938963279% 0.0614355056 280.2435599526deg);\n --fs-alert-primary-text: oklch(81.0682707821% 0.1104201957 34.7814711243deg);\n --fs-feedback-primary-bg: oklch(33.5938963279% 0.0614355056 280.2435599526deg);\n }\n }\n}\n@layer overrides {\n [data-fs-brand=vibrant] .fs-btn-primary,\n [data-fs-brand=vibrant] .fs-badge-primary {\n --fs-btn-color: #000000;\n --fs-badge-color: #000000;\n }\n [data-fs-brand=vibrant] .fs-check {\n --fs-check-mark: #000000;\n }\n}\n@layer tokens {\n [data-theme=dark],\n [data-fs-theme=dark] {\n --fs-color-text: #f1f3f4;\n --fs-color-muted: #bdc1c6;\n --fs-color-border: #3c4043;\n --fs-color-surface: #202124;\n --fs-color-subtle: #2b2c2f;\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n --fs-shadow-sm: 0 1px 3px rgb(0 0 0 / 50%), 0 1px 2px rgb(0 0 0 / 40%);\n --fs-shadow-md: 0 6px 12px rgb(0 0 0 / 55%), 0 3px 6px rgb(0 0 0 / 45%);\n --fs-shadow-lg: 0 15px 30px rgb(0 0 0 / 60%), 0 6px 12px rgb(0 0 0 / 50%);\n --fs-tooltip-bg: #f8fafc;\n --fs-tooltip-text: #1e293b;\n --fs-color-primary: rgb(39.8728684152, 106.2372587275, 232.1894887664);\n --fs-alert-primary-bg: rgb(30.765779113, 49.9974662348, 82.3021425489);\n --fs-alert-primary-text: rgb(130.6636212695, 172.0850768824, 246.4419684583);\n --fs-feedback-primary-bg: rgb(30.765779113, 49.9974662348, 82.3021425489);\n --fs-color-secondary: rgb(114.3557068426, 129.039220146, 150.1520317181);\n --fs-alert-secondary-bg: rgb(39.6548148226, 51.4270943358, 70.2648514061);\n --fs-alert-secondary-text: rgb(166.7597509121, 176.2809684237, 189.9919576187);\n --fs-feedback-secondary-bg: rgb(39.6548148226, 51.4270943358, 70.2648514061);\n --fs-color-success: rgb(134.4501166043, 226.9563331209, 149.6185042518);\n --fs-alert-success-bg: rgb(24.8621518491, 61.9088085702, 89.0318819222);\n --fs-alert-success-text: rgb(155.0475916512, 231.7231823866, 166.1609492581);\n --fs-feedback-success-bg: rgb(24.8621518491, 61.9088085702, 89.0318819222);\n --fs-color-warning: rgb(252.9400238762, 208.7461261831, 137.9221837268);\n --fs-alert-warning-bg: rgb(59.1359779173, 56.6792370273, 88.6687774507);\n --fs-alert-warning-text: rgb(253.5439861058, 216.1213263099, 157.1705651606);\n --fs-feedback-warning-bg: rgb(59.1359779173, 56.6792370273, 88.6687774507);\n --fs-color-danger: rgb(208.1189955268, 64.9740184262, 63.4302936954);\n --fs-alert-danger-bg: rgb(44.6823973866, 47.5125073063, 81.2083778204);\n --fs-alert-danger-text: rgb(235.4050745756, 149.9650253478, 142.4924034553);\n --fs-feedback-danger-bg: rgb(44.6823973866, 47.5125073063, 81.2083778204);\n --fs-color-info: #5e5cc7;\n --fs-alert-info-bg: rgb(35.0058091619, 49.6887857769, 78.5757788254);\n --fs-alert-info-text: rgb(160.628671266, 165.881962789, 227.610600335);\n --fs-feedback-info-bg: rgb(35.0058091619, 49.6887857769, 78.5757788254);\n }\n @supports (color: oklch(0% 0 0deg)) {\n [data-theme=dark],\n [data-fs-theme=dark] {\n --fs-color-text: oklch(96.2913383165% 0.002529697 228.7848682695deg);\n --fs-color-muted: oklch(80.9268110646% 0.0083071608 253.8653061211deg);\n --fs-color-border: oklch(36.8827622528% 0.0074489239 240.018838067deg);\n --fs-color-surface: oklch(24.7936263361% 0.0058460141 271.1764187765deg);\n --fs-color-subtle: oklch(29.3286259539% 0.0055990771 271.2234269855deg);\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n --fs-tooltip-bg: oklch(98.4151869501% 0.0034126992 247.8577745944deg);\n --fs-tooltip-text: oklch(27.9495237712% 0.0368481257 260.0309873929deg);\n --fs-color-primary: oklch(55.884857057% 0.2025537915 261.6264320248deg);\n --fs-alert-primary-bg: oklch(31.7915463198% 0.0633030844 260.2703040876deg);\n --fs-alert-primary-text: oklch(74.4596540856% 0.1172679846 261.6264320248deg);\n --fs-feedback-primary-bg: oklch(31.7915463198% 0.0633030844 260.2703040876deg);\n --fs-color-secondary: oklch(59.8951906896% 0.0366453387 257.4166191214deg);\n --fs-alert-secondary-bg: oklch(32.0729603204% 0.0374284633 259.6388321521deg);\n --fs-alert-secondary-text: oklch(75.4915054214% 0.0223943736 257.4166191214deg);\n --fs-feedback-secondary-bg: oklch(32.0729603204% 0.0374284633 259.6388321521deg);\n --fs-color-success: oklch(83.8485321344% 0.139498201 148.125846236deg);\n --fs-alert-success-bg: oklch(35.0298333903% 0.0635127994 243.2452162193deg);\n --fs-alert-success-text: oklch(86.3333733445% 0.1180369393 148.125846236deg);\n --fs-feedback-success-bg: oklch(35.0298333903% 0.0635127994 243.2452162193deg);\n --fs-color-warning: oklch(88.2682030181% 0.1015699084 78.6575213966deg);\n --fs-alert-warning-bg: oklch(36.0497574404% 0.0547601164 286.8249674934deg);\n --fs-alert-warning-text: oklch(90.0730948615% 0.0859437686 78.6575213966deg);\n --fs-feedback-warning-bg: oklch(36.0497574404% 0.0547601164 286.8249674934deg);\n --fs-color-danger: oklch(58.1670482336% 0.1802407312 25.2407937498deg);\n --fs-alert-danger-bg: oklch(32.151892295% 0.0597799696 278.8124583464deg);\n --fs-alert-danger-text: oklch(75.7809226615% 0.104349897 25.2407937498deg);\n --fs-feedback-danger-bg: oklch(32.151892295% 0.0597799696 278.8124583464deg);\n --fs-color-info: oklch(53.3359780029% 0.1620131129 280.2231949375deg);\n --fs-alert-info-bg: oklch(31.7574919059% 0.0556228738 263.0598185246deg);\n --fs-alert-info-text: oklch(74.3347879016% 0.0891072121 280.2231949375deg);\n --fs-feedback-info-bg: oklch(31.7574919059% 0.0556228738 263.0598185246deg);\n }\n }\n @media (prefers-color-scheme: dark) {\n [data-fs-theme=auto] {\n --fs-color-text: #f1f3f4;\n --fs-color-muted: #bdc1c6;\n --fs-color-border: #3c4043;\n --fs-color-surface: #202124;\n --fs-color-subtle: #2b2c2f;\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-tooltip-bg: #f8fafc;\n --fs-tooltip-text: #1e293b;\n }\n }\n @media (forced-colors: active) {\n :root,\n [data-theme=dark],\n [data-fs-theme=light],\n [data-fs-theme=dark],\n [data-fs-theme=auto] {\n --fs-color-border: CanvasText;\n --fs-color-text: CanvasText;\n --fs-color-surface: Canvas;\n --fs-color-subtle: Canvas;\n --fs-focus-color: Highlight;\n }\n }\n}","@use \"sass:map\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n// Ordem canônica das camadas: declarada uma única vez aqui porque `tokens`\n// é sempre o primeiro `@use` de cada entry point (ver scss/entries/*.scss e\n// scss/fokus.scss) — evita repetir a declaração em cada bundle.\n@layer reset, tokens, base, layout, components, utilities, overrides;\n\n@layer tokens {\n // Bloco incondicional: fallback sRGB, aplicado em todo navegador. Os\n // valores de cor aqui vêm de `rgb-fallback()` (gamut-mapeado a partir do\n // primitivo OKLCH) — ver `tools/_mixins.scss`. É sempre sobrescrito pelo\n // bloco `@supports` abaixo em navegadores com suporte a `oklch()`; um\n // `--fs-*` de cor nunca deve ser lido só daqui em código novo.\n :root {\n --fs-color-white: #{$color-white};\n --fs-color-black: #{$color-black};\n --fs-color-text: #{rgb-fallback($color-gray-900)};\n --fs-color-muted: #{rgb-fallback($color-gray-600)};\n --fs-color-border: #{rgb-fallback($color-gray-300)};\n --fs-color-surface: #{$color-white};\n --fs-color-subtle: #{rgb-fallback($color-gray-100)};\n --fs-font-sans: #{$font-family-sans};\n --fs-font-mono: #{$font-family-mono};\n --fs-font-size-md: #{$font-size-md};\n --fs-font-size-h1: #{$font-size-h1};\n --fs-font-size-h2: #{$font-size-h2};\n --fs-font-size-h3: #{$font-size-h3};\n --fs-font-size-h4: #{$font-size-h4};\n --fs-font-size-h5: #{$font-size-h5};\n --fs-font-size-h6: #{$font-size-h6};\n --fs-font-weight-semibold: #{$font-weight-semibold};\n --fs-line-height-base: #{$line-height-base};\n --fs-line-height-heading: #{$line-height-heading};\n --fs-radius-sm: #{$radius-sm};\n --fs-radius-md: #{$radius-md};\n --fs-radius-lg: #{$radius-lg};\n --fs-gutter-x: #{map.get($spacers, 4)};\n --fs-gutter-y: 0px;\n\n @each $name, $space in $spacers {\n --fs-space-#{$name}: #{$space};\n }\n\n @each $name, $z-index in $z-indexes {\n --fs-z-#{$name}: #{$z-index};\n }\n\n --fs-control-height: 38px;\n --fs-control-height-sm: 30px;\n --fs-control-height-lg: 46px;\n --fs-control-padding-x: 12px;\n --fs-control-padding-x-sm: 8px;\n --fs-control-padding-x-lg: 16px;\n --fs-focus-width: 2px;\n --fs-focus-offset: 2px;\n --fs-focus-color: var(--fs-color-primary);\n --fs-focus-ring-size: 3px;\n --fs-focus-ring-color: color-mix(in srgb, var(--fs-focus-color) 22%, transparent);\n --fs-focus-ring-alpha: 22%;\n --fs-transition-fast: 150ms;\n --fs-transition-normal: 220ms;\n --fs-motion-duration-fast: var(--fs-transition-fast);\n --fs-motion-duration-normal: var(--fs-transition-normal);\n --fs-motion-ease-standard: var(--fs-ease-standard);\n --fs-ease-standard: cubic-bezier(0.2, 0, 0, 1);\n --fs-border-width: 1px;\n --fs-disabled-opacity: 0.5;\n --fs-safe-area-top: env(safe-area-inset-top, 0px);\n --fs-safe-area-right: env(safe-area-inset-right, 0px);\n --fs-safe-area-bottom: env(safe-area-inset-bottom, 0px);\n --fs-safe-area-left: env(safe-area-inset-left, 0px);\n --fs-component-control-height: var(--fs-control-height);\n --fs-component-overlay-backdrop: rgb(0 0 0 / 55%);\n --fs-component-panel-radius: var(--fs-radius-md);\n --fs-component-panel-shadow: var(--fs-shadow-lg);\n\n // Referência dos limiares usados pelos utilitários `@container` (ver\n // `packages/fokus-utilities/scss/utilities/_container-queries.scss`).\n // Só informativas: a condição de um `@container` precisa de um valor\n // literal em tempo de build, não aceita `var()` — mudar aqui não\n // recalibra as regras já compiladas, só documenta os valores usados.\n @each $name, $width in $container-breakpoints {\n --fs-cq-#{$name}: #{$width};\n }\n\n --fs-shadow-sm: 0 1px 3px rgb(0 0 0 / 15%), 0 1px 2px rgb(0 0 0 / 10%);\n --fs-shadow-md: 0 6px 12px rgb(0 0 0 / 15%), 0 3px 6px rgb(0 0 0 / 10%);\n --fs-shadow-lg: 0 15px 30px rgb(0 0 0 / 18%), 0 6px 12px rgb(0 0 0 / 12%);\n --fs-tooltip-bg: #{rgb-fallback($color-gray-900)};\n --fs-tooltip-text: #{$color-white};\n\n @each $name, $color in $theme-colors {\n --fs-color-#{$name}: #{rgb-fallback($color)};\n --fs-color-on-#{$name}: #{color-contrast($color)};\n --fs-alert-#{$name}-bg: #{rgb-fallback(tint-color($color))};\n --fs-alert-#{$name}-text: #{rgb-fallback(shade-color($color))};\n }\n\n @each $name, $bg in $theme-bg-colors {\n --fs-feedback-#{$name}-bg: #{rgb-fallback($bg)};\n }\n }\n\n // Bloco condicional: valores nativos em OKLCH. `@supports (color: oklch(0%\n // 0 0))` só passa em navegadores que entendem a função — os demais ignoram\n // o bloco inteiro e mantêm o fallback sRGB acima. Só propriedades de cor\n // entram aqui; o resto (fontes, raio, sombra, gutter) não tem equivalente\n // \"melhor\" em OKLCH e já está definido de forma incondicional.\n @supports (color: oklch(0% 0 0)) {\n :root {\n --fs-color-text: #{$color-gray-900};\n --fs-color-muted: #{$color-gray-600};\n --fs-color-border: #{$color-gray-300};\n --fs-color-subtle: #{$color-gray-100};\n --fs-tooltip-bg: #{$color-gray-900};\n\n @each $name, $color in $theme-colors {\n --fs-color-#{$name}: #{$color};\n --fs-color-on-#{$name}: #{color-contrast($color)};\n --fs-alert-#{$name}-bg: #{tint-color($color)};\n --fs-alert-#{$name}-text: #{shade-color($color)};\n }\n\n @each $name, $bg in $theme-bg-colors {\n --fs-feedback-#{$name}-bg: #{$bg};\n }\n }\n }\n}\n","// Camada semântica: nomeia tokens por PAPEL (o que a cor faz na interface),\n// não por valor. Cada token aqui é um alias `var()` de um token primitivo\n// (`_root.scss`) — não introduz nenhuma cor nova, só um vocabulário estável\n// entre o primitivo e o consumo por componente (ver `_component-buttons.scss`\n// como referência de como um componente deve consumir esta camada).\n// Por que alias e não recalcular o valor: um `var()` encadeado continua\n// resolvendo o fallback sRGB/OKLCH já decidido em `_root.scss` — não precisa\n// repetir a lógica de `@supports` aqui.\n@layer tokens {\n :root {\n // Superfícies\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n\n // Texto\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n\n // Bordas\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n\n // Ação (mapeiam para a cor de tema correspondente — existem para dar um\n // nome estável a \"a cor de ação primária\", independente de qual token\n // primitivo ela usa por baixo).\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n }\n}\n","// Tokens de gráficos: agnósticos de biblioteca — não é um wrapper de\n// Chart.js/ECharts/Recharts/etc., só cores/tema que qualquer uma delas pode\n// consumir via `getComputedStyle`/CSS custom properties. Aliases da camada\n// semântica já existente (mesma técnica de `_semantic.scss`), então\n// acompanham `data-theme`/`data-fs-brand` automaticamente sem token novo por\n// tema. Ver docs/guides/charts.md.\n@layer tokens {\n :root {\n --fs-chart-series-1: var(--fs-color-primary);\n --fs-chart-series-2: var(--fs-color-success);\n --fs-chart-series-3: var(--fs-color-warning);\n --fs-chart-series-4: var(--fs-color-danger);\n --fs-chart-series-5: var(--fs-color-info);\n --fs-chart-series-6: var(--fs-color-secondary);\n --fs-chart-grid: var(--fs-color-border);\n --fs-chart-axis: var(--fs-color-muted);\n --fs-chart-tooltip-bg: var(--fs-tooltip-bg);\n --fs-chart-tooltip-text: var(--fs-tooltip-text);\n }\n}\n","@layer reset {\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n }\n\n html {\n line-height: var(--fs-line-height-base);\n text-size-adjust: 100%;\n }\n\n body {\n margin: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n }\n\n [hidden] {\n display: none !important;\n }\n}\n","// As declarações @font-face das fontes self-hosted ficam em `_fonts.scss`,\n// distribuído à parte (dist/css/fonts.css) e fora dos bundles principais —\n// ver a nota nesse arquivo. Aqui só aplicamos as pilhas de `font-family`\n// (com fallback sans-serif/monospace, que valem mesmo sem fonts.css).\n\n@layer base {\n body,\n button,\n input,\n select,\n textarea {\n font-family: var(--fs-font-sans);\n font-size: var(--fs-font-size-md);\n }\n\n code,\n kbd,\n pre,\n samp {\n font-family: var(--fs-font-mono);\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin-top: 0;\n font-weight: var(--fs-font-weight-semibold);\n line-height: var(--fs-line-height-heading);\n }\n\n h1 {\n font-size: var(--fs-font-size-h1);\n }\n\n h2 {\n font-size: var(--fs-font-size-h2);\n }\n\n h3 {\n font-size: var(--fs-font-size-h3);\n }\n\n h4 {\n font-size: var(--fs-font-size-h4);\n }\n\n h5 {\n font-size: var(--fs-font-size-h5);\n }\n\n h6 {\n font-size: var(--fs-font-size-h6);\n }\n}\n","// Respeita a preferência do sistema sem remover a funcionalidade dos\n// componentes: apenas reduz transições e animações ao estado final.\n@layer base {\n @media (prefers-reduced-motion: reduce) {\n *,\n *::before,\n *::after {\n scroll-behavior: auto !important;\n transition-duration: 0.01ms !important;\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n }\n\n // Spinner comunica uma operação em curso; congelá-lo o transforma em um\n // ícone ambíguo. Mantemos a animação, porém em ritmo mais lento, para\n // respeitar a preferência sem perder o significado de carregamento.\n .fs-spinner,\n .fs-progress-bar-animated,\n .fs-progress-indeterminate .fs-progress-bar {\n animation-duration: 1.5s !important;\n animation-iteration-count: infinite !important;\n }\n }\n}\n","/* stylelint-disable property-no-deprecated, selector-not-notation */\n@layer reset {\n :focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-focus-color);\n outline-offset: var(--fs-focus-offset);\n }\n\n @media (forced-colors: active) {\n :focus-visible {\n outline: 2px solid CanvasText;\n outline-offset: 2px;\n }\n }\n}\n\n@layer utilities {\n .fs-u-visually-hidden:not(:focus):not(:focus-within),\n .fs-u-visually-hidden-focusable:not(:focus):not(:focus-within) {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip-path: inset(50%) !important;\n white-space: nowrap !important;\n border: 0 !important;\n }\n\n .fs-skip-link {\n position: fixed;\n z-index: 1000;\n inset-block-start: var(--fs-space-2);\n inset-inline-start: var(--fs-space-2);\n transform: translateY(-200%);\n padding: var(--fs-space-2) var(--fs-space-3);\n color: var(--fs-color-on-primary);\n background: var(--fs-color-primary);\n border-radius: var(--fs-radius-sm);\n }\n\n .fs-skip-link:focus {\n transform: translateY(0);\n }\n}\n","@use \"sass:map\";\n@use \"../settings\" as *;\n\n// Agrupa itens horizontalmente com quebra de linha automática e\n// espaçamento consistente nos dois eixos — ideal para grupos de\n// tags/botões/badges que precisam \"fluir\" sem estourar o container.\n@layer layout {\n .fs-cluster {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--fs-cluster-gap, #{map.get($spacers, 2)});\n }\n\n @each $key, $value in $spacers {\n .fs-cluster-gap-#{$key} {\n --fs-cluster-gap: #{$value};\n }\n }\n}\n","@use \"sass:map\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n@layer layout {\n .fs-container,\n .fs-container-sm,\n .fs-container-md,\n .fs-container-lg,\n .fs-container-xl,\n .fs-container-xxl,\n .fs-container-xxxl,\n .fs-container-fluid {\n width: 100%;\n margin-right: auto;\n margin-left: auto;\n }\n\n @each $breakpoint, $width in $container-max-widths {\n @include media-breakpoint-up($breakpoint) {\n .fs-container,\n .fs-container-#{$breakpoint} {\n max-width: $width;\n }\n }\n }\n}\n","@use \"sass:map\";\n@use \"sass:math\";\n@use \"sass:color\";\n@use \"../settings\" as *;\n\n@mixin fs-fluid-type($min, $max, $min-vw: 320px, $max-vw: 1280px) {\n font-size: clamp($min, calc(#{$min} + (#{ $max } - #{ $min }) * ((100vw - #{ $min-vw }) / (#{ $max-vw } - #{ $min-vw }))), $max);\n}\n\n@mixin fs-fluid-value($property, $min, $max, $min-vw: 320px, $max-vw: 1280px) {\n #{$property}: clamp($min, calc(#{$min} + (#{ $max } - #{ $min }) * ((100vw - #{ $min-vw }) / (#{ $max-vw } - #{ $min-vw }))), $max);\n}\n\n@mixin media-breakpoint-up($name) {\n $min: map.get($breakpoints, $name);\n\n @if $min == null {\n @error \"Unknown breakpoint `#{$name}`.\";\n }\n\n @if $min == 0 {\n @content;\n } @else {\n @media (min-width: $min) {\n @content;\n }\n }\n}\n\n@function breakpoint-infix($name) {\n @if $name == xs {\n @return \"\";\n }\n\n @return \"-#{$name}\";\n}\n\n@mixin focus-ring($color: var(--fs-color-primary)) {\n outline: var(--fs-focus-width) solid $color;\n outline-offset: var(--fs-focus-offset);\n border-color: $color;\n box-shadow: 0 0 0 3px color-mix(in srgb, #{$color} 22%, transparent);\n}\n\n@mixin truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n@function linearize-channel($value) {\n $c: math.div($value, 255);\n\n @if $c <= 0.0393 {\n @return math.div($c, 12.92);\n }\n\n @return math.pow(math.div($c + 0.055, 1.055), 2.4);\n}\n\n@function relative-luminance($color) {\n $r: linearize-channel(color.channel($color, \"red\", $space: rgb));\n $g: linearize-channel(color.channel($color, \"green\", $space: rgb));\n $b: linearize-channel(color.channel($color, \"blue\", $space: rgb));\n\n @return (0.2126 * $r) + (0.7152 * $g) + (0.0722 * $b);\n}\n\n@function color-contrast($background, $min-contrast: 4.5) {\n $contrast-with-white: math.div(1.05, relative-luminance($background) + 0.05);\n\n @if $contrast-with-white >= $min-contrast {\n @return $color-white;\n }\n\n @return $color-black;\n}\n\n// Razão de contraste WCAG entre duas cores (1–21). Usada pelo relatório de\n// contraste do build (`npm run contrast`, `scripts/contrast-report.scss`) —\n// ver docs/reference/contrast-report.md para os pares auditados.\n@function contrast-ratio($foreground, $background) {\n $l1: relative-luminance($foreground) + 0.05;\n $l2: relative-luminance($background) + 0.05;\n\n @if $l1 > $l2 {\n @return math.div($l1, $l2);\n }\n\n @return math.div($l2, $l1);\n}\n\n@function tint-color($color, $weight: 15%) {\n @return color.mix($color, $color-white, $weight, $method: oklch);\n}\n\n@function shade-color($color, $weight: 50%) {\n @return color.mix($color, $color-black, $weight, $method: oklch);\n}\n\n// Fallback sRGB de uma cor OKLCH para navegadores sem suporte a `oklch()`\n// (ver `@supports` em tokens/_root.scss e themes/_dark.scss). Faz gamut\n// mapping antes da conversão — misturas em OKLCH frequentemente caem fora do\n// gamut sRGB, e converter sem mapear gera `rgb()`/`hsl()` com canais\n// inválidos (saturação > 100%, etc.).\n@function rgb-fallback($color) {\n $mapped: color.to-gamut($color, $space: rgb, $method: local-minde);\n\n @return color.to-space($mapped, rgb);\n}\n","// Escala alinhada às larguras lógicas de tela mais comuns do mercado atual:\n// sm/tablet retrato (~768 já cobria isso; 640 cobre phablets/tablets pequenos\n// antes desse corte), lg = tablet paisagem/iPad (1024), xl = laptop comum\n// (1280), xxl = notebook/desktop com escala (Mac/Windows a 1536 lógico),\n// xxxl = monitor externo Full HD sem escala (1920).\n$breakpoints: (\n xs: 0,\n sm: 640px,\n md: 768px,\n lg: 1024px,\n xl: 1280px,\n xxl: 1536px,\n xxxl: 1920px\n) !default;\n\n$container-max-widths: (\n sm: 600px,\n md: 720px,\n lg: 960px,\n xl: 1200px,\n xxl: 1440px,\n xxxl: 1800px\n) !default;\n\n$column-max-widths: (\n sm: 120px,\n md: 240px,\n lg: 360px,\n xl: 480px,\n xxl: 600px,\n xxxl: 720px\n) !default;\n","@use \"sass:math\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n@layer layout {\n $grid-columns: 12;\n\n .fs-row {\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(var(--fs-gutter-y) * -1);\n margin-right: calc(var(--fs-gutter-x) / -2);\n margin-left: calc(var(--fs-gutter-x) / -2);\n }\n\n .fs-row > * {\n margin-top: var(--fs-gutter-y);\n padding-right: calc(var(--fs-gutter-x) / 2);\n padding-left: calc(var(--fs-gutter-x) / 2);\n }\n\n .fs-row-fluid {\n width: 100%;\n }\n\n .fs-col-fluid {\n width: 100%;\n }\n\n @each $breakpoint, $min in $breakpoints {\n $infix: breakpoint-infix($breakpoint);\n\n @include media-breakpoint-up($breakpoint) {\n .fs-row-cols#{$infix}-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n\n @for $count from 1 through 6 {\n .fs-row-cols#{$infix}-#{$count} > * {\n flex: 0 0 auto;\n width: math.percentage(math.div(1, $count));\n }\n }\n\n @for $order from 0 through $grid-columns {\n .fs-order#{$infix}-#{$order} {\n order: $order;\n }\n }\n\n .fs-col#{$infix} {\n flex: 1 0 0%;\n }\n\n .fs-col#{$infix}-auto {\n flex: 0 0 auto;\n width: auto;\n }\n\n @for $i from 1 through $grid-columns {\n .fs-col#{$infix}-#{$i} {\n flex: 0 0 auto;\n width: math.percentage(math.div($i, $grid-columns));\n }\n }\n }\n }\n}\n","@use \"sass:map\";\n@use \"../settings\" as *;\n\n// Um lado com largura fixa (a \"aside\") e o outro preenchendo o espaço\n// restante, quebrando para empilhado quando o container fica estreito\n// demais — sem media query: `.fs-sidebar-content` força a quebra via\n// `min-width` quando não cabe ao lado da aside na mesma linha.\n@layer layout {\n .fs-sidebar {\n display: flex;\n flex-wrap: wrap;\n gap: var(--fs-sidebar-gap, #{map.get($spacers, 3)});\n }\n\n .fs-sidebar-aside {\n flex-basis: var(--fs-sidebar-width, 16rem);\n flex-grow: 1;\n }\n\n .fs-sidebar-content {\n flex-basis: 0;\n flex-grow: 999;\n min-width: 50%;\n }\n\n .fs-sidebar-reverse {\n flex-direction: row-reverse;\n }\n\n @each $key, $value in $spacers {\n .fs-sidebar-gap-#{$key} {\n --fs-sidebar-gap: #{$value};\n }\n }\n\n @each $key, $value in $column-max-widths {\n .fs-sidebar-width-#{$key} {\n --fs-sidebar-width: #{$value};\n }\n }\n}\n","@use \"sass:map\";\n@use \"../settings\" as *;\n\n// Empilha os filhos diretos verticalmente com espaçamento consistente —\n// `gap` em vez de margin, evita o problema clássico de \"último filho não\n// deve ter margin-bottom\" sem seletor extra.\n@layer layout {\n .fs-stack {\n display: flex;\n flex-direction: column;\n gap: var(--fs-stack-gap, #{map.get($spacers, 3)});\n }\n\n @each $key, $value in $spacers {\n .fs-stack-gap-#{$key} {\n --fs-stack-gap: #{$value};\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-form-row {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: flex-start;\n justify-content: flex-start;\n gap: 12px 16px;\n width: 100%;\n }\n\n .fs-form-col {\n display: flex;\n flex: 1 1 240px;\n flex-direction: column;\n align-items: stretch;\n min-width: 0;\n gap: 4px;\n }\n\n .fs-form-label {\n width: auto;\n margin: 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n font-weight: $font-weight-regular;\n }\n\n .fs-form-text {\n width: auto;\n margin: 0;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-regular;\n }\n\n .fs-form-text,\n .fs-valid-feedback,\n .fs-invalid-feedback {\n min-height: 1.25rem;\n padding: 3px 8px;\n border-radius: var(--fs-radius-sm);\n }\n\n .fs-form-text {\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-regular;\n }\n\n .fs-valid-feedback,\n .fs-invalid-feedback {\n display: none;\n font-size: $font-size-xs;\n font-weight: $font-weight-regular;\n\n }\n\n .fs-valid-feedback {\n color: var(--fs-alert-success-text);\n background-color: var(--fs-feedback-success-bg);\n }\n\n .fs-invalid-feedback {\n color: var(--fs-alert-danger-text);\n background-color: var(--fs-feedback-danger-bg);\n }\n\n .is-valid ~ .fs-valid-feedback,\n .is-invalid ~ .fs-invalid-feedback {\n display: block;\n }\n\n .fs-form-control {\n width: 100%;\n min-width: 0;\n height: var(--fs-control-height);\n padding: 0 7px;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n }\n\n .fs-form-control::placeholder {\n color: var(--fs-color-muted);\n }\n\n .fs-form-control:focus-visible {\n @include focus-ring;\n }\n\n .fs-form-control:disabled {\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n\n .fs-form-control:read-only {\n background-color: var(--fs-color-subtle);\n cursor: default;\n }\n\n .fs-floating-label {\n position: relative;\n }\n\n .fs-floating-label > .fs-form-control {\n height: 56px;\n padding-top: 20px;\n }\n\n .fs-floating-label > .fs-form-label {\n position: absolute;\n z-index: 1;\n top: 8px;\n left: 8px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n pointer-events: none;\n }\n\n .fs-form-control[aria-invalid=\"true\"],\n .fs-was-validated .fs-form-control:invalid {\n border-color: var(--fs-color-danger);\n }\n\n .fs-form-control[aria-invalid=\"false\"],\n .fs-was-validated .fs-form-control:valid {\n border-color: var(--fs-color-success);\n }\n\n .fs-form-control-sm {\n height: var(--fs-control-height-sm);\n font-size: $font-size-xs;\n }\n\n .fs-form-control-lg {\n height: var(--fs-control-height-lg);\n font-size: $font-size-md;\n }\n\n .fs-form-size-sm {\n width: 120px;\n }\n\n .fs-form-size-md {\n width: 180px;\n }\n\n .fs-form-size-lg {\n width: 240px;\n }\n\n .fs-form-size-xl {\n width: 300px;\n }\n\n .fs-form-size-xxl {\n width: 360px;\n }\n\n .fs-form-control.is-valid {\n border-color: var(--fs-color-success);\n }\n\n .fs-form-control.is-valid:focus-visible {\n @include focus-ring(var(--fs-color-success));\n }\n\n .fs-form-control.is-invalid {\n border-color: var(--fs-color-danger);\n }\n\n .fs-form-control.is-invalid:focus-visible {\n @include focus-ring(var(--fs-color-danger));\n }\n\n .fs-form-select {\n display: flex;\n flex: 1;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n height: var(--fs-control-height);\n padding: 0 7px;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n text-align: left;\n cursor: pointer;\n }\n\n .fs-form-select::after {\n flex-shrink: 0;\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 8px;\n content: \"\";\n border-top: 5px solid;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n }\n\n .fs-form-select:focus-visible {\n @include focus-ring;\n }\n\n .fs-form-select:disabled {\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n opacity: 0.4;\n pointer-events: none;\n }\n\n .fs-form-select-sm {\n height: var(--fs-control-height-sm);\n font-size: $font-size-xs;\n }\n\n .fs-form-select-lg {\n height: var(--fs-control-height-lg);\n font-size: $font-size-md;\n }\n\n .fs-file-upload {\n position: relative;\n display: inline-flex;\n }\n\n .fs-file-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .fs-file-label {\n display: inline-flex;\n align-items: center;\n height: 38px;\n padding: 0 14px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n cursor: pointer;\n user-select: none;\n transition: filter var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-file-label:hover {\n filter: brightness(0.96);\n }\n\n .fs-file-input:focus-visible + .fs-file-label {\n @include focus-ring;\n }\n\n .fs-file-input:disabled + .fs-file-label {\n color: var(--fs-color-muted);\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n cursor: default;\n }\n\n .fs-file-label-sm {\n height: 30px;\n padding: 0 10px;\n font-size: $font-size-xs;\n }\n\n .fs-file-label-lg {\n height: 46px;\n padding: 0 18px;\n font-size: $font-size-lg;\n }\n\n // Drag-and-drop (js/file-drop.js): estado visual ao arrastar um arquivo por\n // cima do `.fs-file-label`, e uma variante maior (dropzone) para quando o alvo\n // de soltar precisa ser mais generoso que o botão padrão de `.fs-file-label`.\n .fs-file-label.is-dragover {\n border-color: var(--fs-color-primary);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-file-label-dropzone {\n flex-direction: column;\n gap: 4px;\n width: 100%;\n height: auto;\n padding: 32px 16px;\n border-style: dashed;\n border-width: 2px;\n font-weight: $font-weight-regular;\n text-align: center;\n }\n\n .fs-file-label-dropzone .fs-file-dropzone-hint {\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-regular;\n }\n\n // Input Group: funde `.fs-form-control` (ou `.fs-form-select`/`.fs-btn`) com \"addons\"\n // de texto/ícone de prefixo/sufixo, reaproveitando os tokens visuais do\n // próprio `.fs-form-control` (borda, cor, radius). 100% CSS — a altura do addon\n // acompanha a do controle via `align-items: stretch` (herdado), sem precisar\n // fixar `height` nele.\n .fs-input-group {\n display: flex;\n align-items: stretch;\n width: 100%;\n }\n\n .fs-input-group > .fs-form-control,\n .fs-input-group > .fs-form-select {\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n }\n\n .fs-input-group-text {\n display: flex;\n align-items: center;\n padding: 0 12px;\n border: 1px solid var(--fs-color-border);\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n white-space: nowrap;\n }\n\n // Funde as bordas dos itens adjacentes (remove a dupla borda) e mantém o\n // item focado por cima da sobreposição de -1px, senão a borda de foco fica\n // parcialmente escondida atrás do vizinho.\n .fs-input-group > :not(:first-child) {\n margin-left: -1px;\n }\n\n .fs-input-group > :focus-visible,\n .fs-input-group > :focus-within {\n position: relative;\n z-index: 1;\n }\n\n .fs-input-group > * {\n border-radius: 0;\n }\n\n .fs-input-group > :first-child {\n border-top-left-radius: var(--fs-radius-sm);\n border-bottom-left-radius: var(--fs-radius-sm);\n }\n\n .fs-input-group > :last-child {\n border-top-right-radius: var(--fs-radius-sm);\n border-bottom-right-radius: var(--fs-radius-sm);\n }\n\n .fs-input-group-sm > .fs-form-control,\n .fs-input-group-sm > .fs-form-select,\n .fs-input-group-sm > .fs-input-group-text {\n height: 30px;\n padding: 0 8px;\n font-size: $font-size-xs;\n }\n\n .fs-input-group-lg > .fs-form-control,\n .fs-input-group-lg > .fs-form-select,\n .fs-input-group-lg > .fs-input-group-text {\n height: 46px;\n padding: 0 16px;\n font-size: $font-size-lg;\n }\n}\n","$font-family-sans: \"Plus Jakarta Sans\", sans-serif !default;\n$font-family-mono: \"Source Code Pro\", monospace !default;\n\n// Escala compacta: corpo (md) ~13px, piso (xs) ~11px — reservado a\n// texto de apoio (meta/label), nunca corpo de leitura.\n$font-size-xs: 0.6875rem !default;\n$font-size-sm: 0.75rem !default;\n$font-size-md: 0.8125rem !default;\n$font-size-lg: 1rem !default;\n$font-size-xl: 1.25rem !default;\n\n// Escala de headings, deliberadamente menor que o padrão do navegador\n// (preferência por texto compacto — ver docs/internal/plans).\n$font-size-h1: 1.75rem !default;\n$font-size-h2: 1.5rem !default;\n$font-size-h3: 1.3125rem !default;\n$font-size-h4: 1.125rem !default;\n$font-size-h5: 1rem !default;\n$font-size-h6: 0.875rem !default;\n\n$font-weight-regular: 400 !default;\n$font-weight-medium: 500 !default;\n$font-weight-semibold: 600 !default;\n$font-weight-bold: 700 !default;\n\n$line-height-base: 1.5 !default;\n$line-height-heading: 1.25 !default;\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Checkbox/radio/switch 100% CSS, reusando a técnica de input oculto +\n// label irmã do Segmented Control (_segmented-control.scss) e do Rating\n// (_rating.scss): `<input>` clipado visualmente (não `display: none` — teclado\n// e leitor de tela continuam enxergando o controle) + `<label for=\"id\">`\n// como irmã, que desenha a caixa/trilho via `::before` e a marca/knob via\n// `::after`. O `<label>` é o alvo de clique/hover/estado, mas o input\n// continua sendo o elemento focável e semântico (checkbox/radio nativos).\n// Wrapper (`.fs-check`/`.fs-radio`/`.fs-switch`) carrega o tamanho\n// (`-sm`/`-lg`) e agrupa input+label, no mesmo papel de `.fs-segmented-item`.\n@layer components {\n .fs-check,\n .fs-radio,\n .fs-switch {\n display: inline-flex;\n align-items: center;\n }\n\n .fs-check {\n --fs-check-mark: var(--fs-color-on-primary);\n }\n\n .fs-check-input,\n .fs-radio-input,\n .fs-switch-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .fs-check-label,\n .fs-radio-label,\n .fs-switch-label {\n position: relative;\n display: inline-flex;\n align-items: center;\n min-height: 20px;\n padding-left: 28px;\n color: var(--fs-color-text);\n font-size: $font-size-md;\n cursor: pointer;\n user-select: none;\n }\n\n // Caixa (checkbox/radio) ou trilho (switch), desenhados no `::before` da\n // label. Radio é a exceção redonda da regra anti-circular do projeto\n // (junto do spinner) — ver docs/internal/plans.\n .fs-check-label::before,\n .fs-radio-label::before,\n .fs-switch-label::before {\n position: absolute;\n left: 0;\n box-sizing: border-box;\n border: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface);\n content: \"\";\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n }\n\n .fs-check-label::before,\n .fs-radio-label::before {\n width: 18px;\n height: 18px;\n }\n\n .fs-check-label::before {\n border: 2px solid var(--fs-color-primary);\n border-radius: 0;\n }\n\n .fs-radio-label::before {\n border-radius: 50%;\n }\n\n // Marca de check (dois traços em \"V\", via borda rotacionada). Os estados\n // indeterminado e inválido substituem essa geometria mais abaixo.\n .fs-check-label::after {\n position: absolute;\n left: 4px;\n width: 9px;\n height: 5px;\n content: \"\";\n opacity: 0;\n border-bottom: 2px solid var(--fs-check-mark);\n border-left: 2px solid var(--fs-check-mark);\n transform: translateY(-1px) rotate(-45deg);\n transition: opacity 0.1s ease-in-out;\n }\n\n .fs-radio-label::after {\n position: absolute;\n left: 5px;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n content: \"\";\n opacity: 0;\n background-color: var(--fs-color-on-primary);\n transition: opacity 0.1s ease-in-out;\n }\n\n .fs-check-input:checked + .fs-check-label::before,\n .fs-radio-input:checked + .fs-radio-label::before {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n .fs-check-input:checked + .fs-check-label::after,\n .fs-radio-input:checked + .fs-radio-label::after {\n opacity: 1;\n }\n\n .fs-check-input:not(:checked, :indeterminate, :disabled, .is-invalid) + .fs-check-label:hover::before {\n background-color: color-mix(in srgb, var(--fs-color-primary) 10%, transparent);\n }\n\n .fs-check-input:not(:disabled, :indeterminate, .is-invalid) + .fs-check-label:active::before {\n background-color: color-mix(in srgb, var(--fs-color-primary) 86%, var(--fs-color-black));\n border-color: var(--fs-color-primary);\n }\n\n .fs-check-input:checked:not(:disabled, .is-invalid) + .fs-check-label:active::after {\n transform: translateY(-1px) rotate(-45deg) scale(0.9);\n }\n\n // Switch: trilho retangular arredondado (não pílula) e knob também\n // retangular arredondado — decisão de forma do projeto (nada circular além\n // do radio/spinner). Desliza via `left` no `::after`.\n .fs-switch-label {\n padding-left: 44px;\n }\n\n .fs-switch-label::before {\n width: 36px;\n height: 20px;\n border-radius: var(--fs-radius-md);\n }\n\n .fs-switch-label::after {\n position: absolute;\n left: 2px;\n width: 16px;\n height: 14px;\n border-radius: var(--fs-radius-sm);\n content: \"\";\n background-color: var(--fs-color-border);\n transition: left 0.15s ease-in-out, background-color 0.15s ease-in-out;\n }\n\n .fs-switch-input:checked + .fs-switch-label::before {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n .fs-switch-input:checked + .fs-switch-label::after {\n left: 18px;\n background-color: var(--fs-color-on-primary);\n }\n\n // Foco: anel sobre a caixa/trilho (`::before`), não sobre o texto.\n .fs-check-input:focus-visible + .fs-check-label::before,\n .fs-radio-input:focus-visible + .fs-radio-label::before,\n .fs-switch-input:focus-visible + .fs-switch-label::before {\n @include focus-ring;\n }\n\n .fs-radio-input:disabled + .fs-radio-label,\n .fs-switch-input:disabled + .fs-switch-label {\n opacity: 0.5;\n pointer-events: none;\n }\n\n .fs-check-input:disabled + .fs-check-label {\n color: var(--fs-color-muted);\n opacity: 1;\n pointer-events: none;\n }\n\n .fs-check-input:disabled:not(:checked, :indeterminate) + .fs-check-label::before {\n border-color: var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-check-input:disabled:checked + .fs-check-label::before {\n border-color: color-mix(in srgb, var(--fs-color-primary) 55%, var(--fs-color-border));\n background-color: color-mix(in srgb, var(--fs-color-primary) 45%, var(--fs-color-subtle));\n }\n\n .fs-check-input:disabled:checked + .fs-check-label::after {\n opacity: 0.72;\n }\n\n // Validação (mesma convenção de `.fs-form-control.is-valid`/`.is-invalid`).\n .fs-radio-input.is-valid + .fs-radio-label::before {\n border-color: var(--fs-color-success);\n }\n\n .fs-check-input.is-invalid + .fs-check-label::before,\n .fs-radio-input.is-invalid + .fs-radio-label::before {\n border-color: var(--fs-color-danger);\n }\n\n // Tamanhos: reescalam caixa/trilho/knob e o espaço reservado para eles\n // (`padding-left`) proporcionalmente.\n .fs-check-sm .fs-check-label,\n .fs-radio-sm .fs-radio-label {\n min-height: 16px;\n padding-left: 24px;\n font-size: $font-size-sm;\n }\n\n .fs-check-sm .fs-check-label::before,\n .fs-radio-sm .fs-radio-label::before {\n width: 15px;\n height: 15px;\n }\n\n .fs-check-sm .fs-check-label::after {\n left: 3px;\n width: 8px;\n height: 4px;\n }\n\n .fs-radio-sm .fs-radio-label::after {\n left: 4px;\n width: 7px;\n height: 7px;\n }\n\n .fs-check-lg .fs-check-label,\n .fs-radio-lg .fs-radio-label {\n min-height: 24px;\n padding-left: 34px;\n font-size: $font-size-lg;\n }\n\n .fs-check-lg .fs-check-label::before,\n .fs-radio-lg .fs-radio-label::before {\n width: 22px;\n height: 22px;\n }\n\n .fs-check-lg .fs-check-label::after {\n left: 5px;\n width: 11px;\n height: 6px;\n }\n\n .fs-radio-lg .fs-radio-label::after {\n left: 6px;\n width: 10px;\n height: 10px;\n }\n\n .fs-switch-sm .fs-switch-label {\n min-height: 16px;\n padding-left: 38px;\n font-size: $font-size-sm;\n }\n\n .fs-switch-sm .fs-switch-label::before {\n width: 30px;\n height: 16px;\n }\n\n .fs-switch-sm .fs-switch-label::after {\n width: 12px;\n height: 10px;\n }\n\n .fs-switch-sm .fs-switch-input:checked + .fs-switch-label::after {\n left: 16px;\n }\n\n .fs-switch-lg .fs-switch-label {\n min-height: 26px;\n padding-left: 52px;\n font-size: $font-size-lg;\n }\n\n .fs-switch-lg .fs-switch-label::before {\n width: 44px;\n height: 24px;\n }\n\n .fs-switch-lg .fs-switch-label::after {\n width: 20px;\n height: 18px;\n }\n\n .fs-switch-lg .fs-switch-input:checked + .fs-switch-label::after {\n left: 22px;\n }\n\n // Estado parcial: borda tracejada em primary e traço horizontal. Mantém o\n // fundo definido para não se confundir com a superfície ao redor.\n .fs-check-input:indeterminate + .fs-check-label::before {\n border: 2px dashed var(--fs-color-primary);\n background-color: var(--fs-color-surface);\n }\n\n .fs-check-input:indeterminate + .fs-check-label::after {\n left: 4px;\n width: 10px;\n height: 0;\n opacity: 1;\n border-bottom: 2px solid var(--fs-color-primary);\n border-left: 0;\n transform: translateY(3px) rotate(0deg);\n }\n\n .fs-check-sm .fs-check-input:indeterminate + .fs-check-label::after {\n left: 3px;\n width: 8px;\n }\n\n .fs-check-lg .fs-check-input:indeterminate + .fs-check-label::after {\n left: 5px;\n width: 12px;\n }\n\n // Erro: X branco sobre fundo danger, visível mesmo quando o checkbox não\n // está marcado. Os gradientes desenham o símbolo sem conteúdo decorativo no\n // HTML e preservam o input nativo como fonte de semântica.\n .fs-check-input.is-invalid + .fs-check-label::before {\n background-color: var(--fs-color-danger);\n }\n\n .fs-check-input.is-invalid + .fs-check-label::after {\n top: 6px;\n left: 5px;\n width: 8px;\n height: 8px;\n opacity: 1;\n border: 0;\n background-image:\n linear-gradient(45deg, transparent 42%, #{color-contrast($fokus-color-danger)} 42% 58%, transparent 58%),\n linear-gradient(-45deg, transparent 42%, #{color-contrast($fokus-color-danger)} 42% 58%, transparent 58%);\n transform: none;\n }\n\n .fs-check-sm .fs-check-input.is-invalid + .fs-check-label::after {\n top: 5px;\n left: 4px;\n width: 7px;\n height: 7px;\n }\n\n .fs-check-lg .fs-check-input.is-invalid + .fs-check-label::after {\n top: 6px;\n left: 6px;\n width: 10px;\n height: 10px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Range/Slider: <input type=\"range\"> nativo — teclado (setas, Home/End,\n// PageUp/Down) e ARIA (role=slider implícito, aria-valuenow/min/max\n// automáticos) já vêm de graça do navegador, então este componente só\n// estiliza a trilha/thumb (pseudo-elementos vendor-prefixados, sem padrão\n// unificado) e usa `--fs-range-percent` (escrito pelo JS opcional, ver\n// js/range.js) pra pintar a parte preenchida da trilha via gradiente —\n// truque necessário porque só o Firefox suporta `::-moz-range-progress`;\n// Chrome/Safari não têm equivalente.\n@layer components {\n .fs-form-range {\n --fs-range-track-height: 6px;\n --fs-range-track-color: var(--fs-color-border);\n --fs-range-fill-color: var(--fs-color-primary);\n --fs-range-thumb-size: 18px;\n --fs-range-thumb-color: var(--fs-color-surface);\n --fs-range-thumb-border-color: var(--fs-color-primary);\n --fs-range-percent: 0%;\n\n width: 100%;\n height: var(--fs-range-thumb-size);\n padding: 0;\n background: transparent;\n appearance: none;\n cursor: pointer;\n }\n\n .fs-form-range::-webkit-slider-runnable-track {\n height: var(--fs-range-track-height);\n border-radius: var(--fs-radius-sm);\n background: linear-gradient(\n to right,\n var(--fs-range-fill-color) var(--fs-range-percent),\n var(--fs-range-track-color) var(--fs-range-percent)\n );\n }\n\n .fs-form-range::-moz-range-track {\n height: var(--fs-range-track-height);\n border-radius: var(--fs-radius-sm);\n background: linear-gradient(\n to right,\n var(--fs-range-fill-color) var(--fs-range-percent),\n var(--fs-range-track-color) var(--fs-range-percent)\n );\n }\n\n .fs-form-range::-webkit-slider-thumb {\n width: var(--fs-range-thumb-size);\n height: var(--fs-range-thumb-size);\n margin-top: calc((var(--fs-range-track-height) - var(--fs-range-thumb-size)) / 2);\n border: 2px solid var(--fs-range-thumb-border-color);\n border-radius: 50%;\n background-color: var(--fs-range-thumb-color);\n appearance: none;\n cursor: pointer;\n }\n\n .fs-form-range::-moz-range-thumb {\n width: calc(var(--fs-range-thumb-size) - 4px);\n height: calc(var(--fs-range-thumb-size) - 4px);\n border: 2px solid var(--fs-range-thumb-border-color);\n border-radius: 50%;\n background-color: var(--fs-range-thumb-color);\n cursor: pointer;\n }\n\n .fs-form-range:focus-visible::-webkit-slider-thumb {\n @include focus-ring(var(--fs-range-thumb-border-color));\n }\n\n .fs-form-range:focus-visible::-moz-range-thumb {\n @include focus-ring(var(--fs-range-thumb-border-color));\n }\n\n .fs-form-range:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n }\n\n .fs-form-range:disabled::-webkit-slider-thumb {\n cursor: not-allowed;\n }\n\n .fs-form-range:disabled::-moz-range-thumb {\n cursor: not-allowed;\n }\n\n .fs-range-output {\n display: inline-block;\n min-width: 2.5em;\n color: var(--fs-color-text);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n text-align: center;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Upload avançado (js/file-upload-advanced.js): evolução do File Upload\n// simples (`.fs-file-upload`/`.fs-file-label`, forms/_forms.scss) — reusa a\n// mesma dropzone/botão como gatilho, só adiciona a lista de itens\n// selecionados (thumbnail/nome/tamanho/progresso/remoção) gerada pelo JS.\n@layer components {\n .fs-file-upload-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 100%;\n margin-top: 12px;\n padding: 0;\n list-style: none;\n }\n\n .fs-file-upload-item {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n background-color: var(--fs-color-surface);\n }\n\n .fs-file-upload-thumb {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n overflow: hidden;\n border-radius: var(--fs-radius-sm);\n background-color: var(--fs-color-subtle);\n color: var(--fs-color-muted);\n }\n\n .fs-file-upload-thumb img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n\n .fs-file-upload-info {\n flex: 1;\n min-width: 0;\n }\n\n .fs-file-upload-name {\n margin: 0;\n color: var(--fs-color-text);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n\n @include truncate;\n }\n\n .fs-file-upload-size {\n margin: 0 0 4px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n }\n\n .fs-file-upload-item.is-error .fs-file-upload-size {\n color: var(--fs-alert-danger-text);\n }\n\n .fs-file-upload-remove {\n flex-shrink: 0;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n // Tokens de componente: cada `.fs-btn-*` abaixo só sobrescreve estas três\n // custom properties (nunca `color`/`background-color`/`border-color`\n // diretamente) — permite customizar um botão específico via CSS\n // (`.minha-classe { --fs-btn-bg: ...; }`) sem precisar de `!important` nem\n // repetir a declaração de layout. Ver docs/scss-architecture.md.\n .fs-btn {\n --fs-btn-color: var(--fs-color-text-primary);\n --fs-btn-bg: var(--fs-color-bg-subtle);\n --fs-btn-border-color: var(--fs-color-border-default);\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--fs-space-1);\n min-height: var(--fs-control-height);\n padding: 0 var(--fs-control-padding-x);\n border: var(--fs-border-width) solid var(--fs-btn-border-color);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-btn-color);\n background-color: var(--fs-btn-bg);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n text-decoration: none;\n cursor: pointer;\n transition: color var(--fs-transition-fast) var(--fs-ease-standard),\n background-color var(--fs-transition-fast) var(--fs-ease-standard),\n border-color var(--fs-transition-fast) var(--fs-ease-standard),\n box-shadow var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-btn:hover {\n --fs-btn-bg: var(--fs-btn-hover-bg, var(--fs-color-subtle));\n }\n\n .fs-btn:active {\n --fs-btn-bg: var(--fs-btn-active-bg, var(--fs-color-border));\n }\n\n .fs-btn:focus-visible {\n @include focus-ring;\n }\n\n .fs-btn:disabled,\n .fs-btn.is-disabled {\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n\n @each $name, $color in $theme-colors {\n .fs-btn-#{$name} {\n --fs-btn-color: var(--fs-color-on-#{$name});\n --fs-btn-bg: var(--fs-color-#{$name});\n --fs-btn-border-color: var(--fs-color-#{$name});\n --fs-btn-hover-bg: var(--fs-color-#{$name});\n --fs-btn-active-bg: var(--fs-color-#{$name});\n }\n\n .fs-btn-outline-#{$name} {\n --fs-btn-color: var(--fs-alert-#{$name}-text);\n --fs-btn-bg: transparent;\n --fs-btn-border-color: var(--fs-color-#{$name});\n }\n\n .fs-btn-outline-#{$name}:hover,\n .fs-btn-outline-#{$name}:active {\n --fs-btn-color: var(--fs-color-on-#{$name});\n --fs-btn-bg: var(--fs-color-#{$name});\n }\n }\n\n .fs-btn-sm {\n min-height: var(--fs-control-height-sm);\n padding: 0 var(--fs-control-padding-x-sm);\n font-size: $font-size-sm;\n }\n\n .fs-btn-lg {\n min-height: var(--fs-control-height-lg);\n padding: 0 var(--fs-control-padding-x-lg);\n font-size: $font-size-lg;\n }\n\n .fs-btn-close {\n position: relative;\n width: 20px;\n height: 20px;\n padding: 0;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface-raised);\n cursor: pointer;\n }\n\n .fs-btn-close::before,\n .fs-btn-close::after {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 12px;\n height: 2px;\n background-color: currentcolor;\n content: \"\";\n }\n\n .fs-btn-close::before {\n transform: translate(-50%, -50%) rotate(45deg);\n }\n\n .fs-btn-close::after {\n transform: translate(-50%, -50%) rotate(-45deg);\n }\n\n .fs-btn-close:hover {\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-btn-close:focus-visible {\n @include focus-ring;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-card {\n position: relative;\n display: flex;\n flex-direction: column;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-lg);\n background-color: var(--fs-color-surface);\n }\n\n .fs-card-horizontal {\n flex-direction: row;\n }\n\n .fs-card-horizontal .fs-card-header:first-child {\n border-radius: calc(var(--fs-radius-lg) - 1px) 0 0 calc(var(--fs-radius-lg) - 1px);\n border-right: 1px solid var(--fs-color-border);\n border-bottom: none;\n }\n\n .fs-card-horizontal .fs-card-footer:last-child {\n border-radius: 0 calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px) 0;\n border-left: 1px solid var(--fs-color-border);\n border-top: none;\n }\n\n .fs-card-clickable {\n transition: border-color var(--fs-transition-fast) var(--fs-ease-standard),\n box-shadow var(--fs-transition-fast) var(--fs-ease-standard),\n transform var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-card-clickable:hover,\n .fs-card-clickable:focus-within {\n border-color: var(--fs-color-primary);\n box-shadow: var(--fs-shadow-sm);\n transform: translateY(-1px);\n }\n\n .fs-stretched-link {\n color: inherit;\n text-decoration: none;\n }\n\n .fs-stretched-link::after {\n position: absolute;\n inset: 0;\n z-index: 1;\n content: \"\";\n }\n\n .fs-card-header,\n .fs-card-body,\n .fs-card-footer {\n padding: 10px;\n }\n\n .fs-card-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n border-bottom: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-card-header .fs-card-title {\n margin: 0;\n }\n\n .fs-card-header:first-child {\n border-radius: calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px) 0 0;\n }\n\n .fs-card-footer {\n border-top: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-subtle);\n }\n\n .fs-card-footer:last-child {\n border-radius: 0 0 calc(var(--fs-radius-lg) - 1px) calc(var(--fs-radius-lg) - 1px);\n }\n\n .fs-card-title {\n margin: 0 0 4px;\n color: var(--fs-color-text);\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n }\n\n .fs-card-subtitle {\n margin: 0 0 8px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-card-text {\n margin: 0 0 8px;\n color: var(--fs-color-text);\n font-size: $font-size-md;\n }\n\n .fs-card-text:last-child {\n margin-bottom: 0;\n }\n\n .fs-card-sm .fs-card-header,\n .fs-card-sm .fs-card-body,\n .fs-card-sm .fs-card-footer {\n padding: 5px;\n }\n\n .fs-card-lg .fs-card-header,\n .fs-card-lg .fs-card-body,\n .fs-card-lg .fs-card-footer {\n padding: 15px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-alert {\n display: flex;\n align-items: flex-start;\n gap: 8px;\n padding: 12px 16px;\n border: 1px solid var(--fs-color-border);\n border-left: 5px solid var(--fs-color-border);\n border-radius: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-sm;\n }\n\n @each $name, $color in $theme-colors {\n .fs-alert-#{$name} {\n color: var(--fs-alert-#{$name}-text);\n background-color: var(--fs-alert-#{$name}-bg);\n border-color: var(--fs-color-#{$name});\n }\n }\n}\n","@use \"sass:map\";\n@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n // As variantes alteram somente tokens locais. Isso permite ajustar um badge\n // por marca sem sobrescrever propriedades de apresentação diretamente.\n .fs-badge {\n --fs-badge-color: var(--fs-color-text);\n --fs-badge-bg: var(--fs-color-subtle);\n --fs-badge-border: transparent;\n --fs-badge-height: 22px;\n --fs-badge-radius: 0;\n\n display: inline-flex;\n align-items: center;\n gap: 6px;\n justify-content: center;\n min-height: var(--fs-badge-height);\n\n // O peso óptico da fonte fica ligeiramente abaixo do centro geométrico.\n // Um pixel extra abaixo reposiciona a linha de texto para cima.\n padding: 1px 8px 3px;\n border: 1px solid var(--fs-badge-border);\n border-radius: var(--fs-badge-radius);\n color: var(--fs-badge-color);\n background-color: var(--fs-badge-bg);\n font-size: $font-size-xs;\n font-weight: $font-weight-medium;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n }\n\n @each $name, $color in $theme-colors {\n .fs-badge-#{$name} {\n --fs-badge-color: #{color-contrast($color)};\n --fs-badge-bg: var(--fs-color-#{$name});\n }\n\n .fs-badge-soft-#{$name} {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-#{$name}) 45%, var(--fs-color-text));\n --fs-badge-bg: color-mix(in srgb, var(--fs-color-#{$name}) 14%, transparent);\n --fs-badge-border: color-mix(in srgb, var(--fs-color-#{$name}) 38%, transparent);\n }\n\n .fs-badge-outline-#{$name} {\n --fs-badge-color: color-mix(in srgb, var(--fs-color-#{$name}) 45%, var(--fs-color-text));\n --fs-badge-bg: transparent;\n --fs-badge-border: var(--fs-badge-color);\n }\n }\n\n .fs-badge-sm {\n --fs-badge-height: 18px;\n\n padding: 0 6px 2px;\n font-size: $font-size-xs;\n }\n\n .fs-badge-lg {\n --fs-badge-height: 26px;\n\n padding: 2px 10px 4px;\n font-size: $font-size-md;\n }\n\n .fs-badge-dot::before {\n width: 6px;\n height: 6px;\n flex: 0 0 6px;\n border-radius: 50%;\n background-color: currentcolor;\n transform: translateY(1px);\n content: \"\";\n }\n\n .fs-badge-count {\n min-width: var(--fs-badge-height);\n padding-inline: 6px;\n font-variant-numeric: tabular-nums;\n }\n\n .fs-badge-split {\n --fs-badge-split-label-bg: var(--fs-color-black);\n --fs-badge-split-label-color: var(--fs-color-white);\n --fs-badge-split-value-bg: var(--fs-color-primary);\n --fs-badge-split-value-color: #{color-contrast(map.get($theme-colors, primary))};\n --fs-badge-split-height: 22px;\n --fs-badge-split-radius: 0;\n\n display: inline-flex;\n min-height: var(--fs-badge-split-height);\n overflow: hidden;\n border-radius: var(--fs-badge-split-radius);\n font-size: $font-size-xs;\n font-weight: $font-weight-medium;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n }\n\n .fs-badge-split-label,\n .fs-badge-split-value {\n display: inline-flex;\n align-items: center;\n min-height: var(--fs-badge-split-height);\n padding: 1px 8px 3px;\n }\n\n .fs-badge-split-label {\n color: var(--fs-badge-split-label-color);\n background-color: var(--fs-badge-split-label-bg);\n }\n\n .fs-badge-split-value {\n color: var(--fs-badge-split-value-color);\n background-color: var(--fs-badge-split-value-bg);\n font-variant-numeric: tabular-nums;\n }\n\n @each $name, $color in $theme-colors {\n .fs-badge-split-#{$name} {\n --fs-badge-split-value-bg: var(--fs-color-#{$name});\n --fs-badge-split-value-color: #{color-contrast($color)};\n }\n }\n\n .fs-badge-split.fs-badge-sm {\n --fs-badge-split-height: 18px;\n\n min-height: var(--fs-badge-split-height);\n padding: 0;\n }\n\n .fs-badge-split.fs-badge-lg {\n --fs-badge-split-height: 26px;\n\n min-height: var(--fs-badge-split-height);\n padding: 0;\n font-size: $font-size-md;\n }\n\n .fs-badge-split.fs-badge-sm .fs-badge-split-label,\n .fs-badge-split.fs-badge-sm .fs-badge-split-value {\n padding: 0 6px 2px;\n }\n\n .fs-badge-split.fs-badge-lg .fs-badge-split-label,\n .fs-badge-split.fs-badge-lg .fs-badge-split-value {\n padding: 2px 10px 4px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-table {\n width: 100%;\n margin-bottom: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n border-collapse: collapse;\n }\n\n .fs-table th,\n .fs-table td {\n padding: 8px 12px;\n border-bottom: 1px solid var(--fs-color-border);\n text-align: left;\n vertical-align: middle;\n }\n\n .fs-table thead th {\n border-bottom-width: 2px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n text-transform: uppercase;\n }\n\n .fs-table-striped tbody tr:nth-of-type(odd) {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-table-hover tbody tr:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-table-bordered th,\n .fs-table-bordered td {\n border: 1px solid var(--fs-color-border);\n }\n\n .fs-table-borderless th,\n .fs-table-borderless td {\n border: 0;\n }\n\n @each $name, $color in $theme-colors {\n .fs-table-#{$name} {\n background-color: var(--fs-alert-#{$name}-bg);\n color: var(--fs-alert-#{$name}-text);\n }\n }\n\n .fs-table-sm th,\n .fs-table-sm td {\n padding: 4px 8px;\n }\n\n .fs-table-responsive {\n overflow-x: auto;\n }\n\n .fs-table-caption {\n caption-side: top;\n padding: var(--fs-space-2) 0;\n color: var(--fs-color-muted);\n text-align: start;\n }\n\n .fs-table-empty {\n padding: var(--fs-space-5);\n color: var(--fs-color-muted);\n text-align: center;\n }\n\n @media (width < 640px) {\n .fs-table-priority th:nth-child(n + 4),\n .fs-table-priority td:nth-child(n + 4) {\n display: none;\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-navbar {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: 16px;\n padding: 12px 16px;\n border-bottom: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface);\n }\n\n .fs-navbar-brand {\n color: var(--fs-color-text);\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n text-decoration: none;\n }\n\n .fs-navbar-nav {\n display: flex;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-navbar-toggler {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 44px;\n min-height: 44px;\n padding: 8px;\n color: var(--fs-color-text);\n background: transparent;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n cursor: pointer;\n }\n\n .fs-navbar-collapse {\n flex-basis: 100%;\n width: 100%;\n }\n\n .fs-navbar-collapse:not(.is-open) {\n display: none;\n }\n\n .fs-navbar-collapse.is-open .fs-navbar-nav {\n flex-direction: column;\n align-items: stretch;\n }\n\n @media (width >= 768px) {\n .fs-navbar-toggler {\n display: none;\n }\n\n .fs-navbar-collapse,\n .fs-navbar-collapse:not(.is-open),\n .fs-navbar-collapse[hidden] {\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n justify-content: flex-end;\n width: auto;\n }\n\n .fs-navbar-collapse .fs-navbar-nav {\n flex-direction: row;\n }\n }\n\n .fs-nav-link {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 8px 12px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n text-decoration: none;\n transition: background-color 0.15s ease-in-out;\n }\n\n .fs-nav-link:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-nav-link:focus-visible {\n @include focus-ring;\n }\n\n .fs-nav-link.is-active {\n color: var(--fs-alert-primary-text);\n font-weight: $font-weight-medium;\n }\n\n .fs-nav-link.is-disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n }\n}\n","@layer components {\n // Wrapper posicionador do input — a listbox (`.fs-dropdown-menu`, mesma\n // classe do Dropdown/Select) é reanexada a `document.body` pelo JS e\n // posicionada via `core/positioning.js`; o wrapper só existe pra manter\n // o layout inline do input no fluxo normal do documento.\n .fs-combobox {\n position: relative;\n display: inline-flex;\n width: 100%;\n }\n\n .fs-combobox-listbox {\n overflow-y: auto;\n max-height: 240px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n // Ajusta o indicador nativo de <input type=\"date\">/<input type=\"time\">\n // no tema escuro — por padrão o navegador desenha um ícone escuro fixo\n // (chrome do SO, não estilizável via token), que fica invisível sobre\n // --fs-color-surface escuro sem essa correção.\n [data-theme=\"dark\"] .fs-form-control[type=\"date\"]::-webkit-calendar-picker-indicator,\n [data-theme=\"dark\"] .fs-form-control[type=\"time\"]::-webkit-calendar-picker-indicator {\n filter: invert(1);\n }\n\n .fs-datepicker {\n position: relative;\n display: inline-flex;\n width: 100%;\n }\n\n .fs-datepicker-panel {\n display: none;\n width: min(280px, calc(100vw - 2 * var(--fs-space-3)));\n padding: 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-dropdown);\n }\n\n .fs-datepicker-panel.is-open {\n display: block;\n }\n\n .fs-datepicker-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 8px;\n }\n\n .fs-datepicker-nav {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n padding: 0;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-md;\n cursor: pointer;\n }\n\n .fs-datepicker-nav:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-datepicker-nav:focus-visible {\n @include focus-ring;\n }\n\n .fs-datepicker-title {\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n text-transform: capitalize;\n }\n\n .fs-datepicker-grid {\n display: flex;\n flex-direction: column;\n gap: 2px;\n }\n\n .fs-datepicker-weekdays,\n .fs-datepicker-week {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n gap: 2px;\n }\n\n .fs-datepicker-weekday {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 28px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-medium;\n text-align: center;\n text-transform: uppercase;\n }\n\n .fs-datepicker-day {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 32px;\n border: none;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-sm;\n cursor: pointer;\n }\n\n .fs-datepicker-day:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-datepicker-day:focus-visible {\n @include focus-ring;\n }\n\n .fs-datepicker-day.is-outside {\n color: var(--fs-color-muted);\n }\n\n .fs-datepicker-day.is-today {\n font-weight: $font-weight-semibold;\n box-shadow: inset 0 0 0 1px var(--fs-color-primary);\n }\n\n .fs-datepicker-day.is-selected {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n .fs-datepicker-day:disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n opacity: 0.4;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Estilos exclusivos do DataTable (`js/datatable.js`) — a tabela, a\n// paginação e o empty state em si reusam `.fs-table`/`.fs-pagination`/\n// `.fs-empty-state` já existentes, sem duplicação.\n\n@layer components {\n .fs-datatable-toolbar {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 12px;\n }\n\n .fs-datatable-sort-btn {\n display: inline-flex;\n align-items: center;\n width: 100%;\n padding: 0;\n border: 0;\n background-color: var(--fs-color-surface-raised);\n color: inherit;\n font: inherit;\n text-transform: inherit;\n text-align: left;\n cursor: pointer;\n }\n\n .fs-datatable-sort-btn:focus-visible {\n @include focus-ring;\n }\n\n .fs-datatable-sort-btn::after {\n flex-shrink: 0;\n margin-left: auto;\n padding-left: 4px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n content: \"↕\";\n }\n\n th[aria-sort=\"ascending\"] .fs-datatable-sort-btn::after {\n color: var(--fs-color-text);\n content: \"↑\";\n }\n\n th[aria-sort=\"descending\"] .fs-datatable-sort-btn::after {\n color: var(--fs-color-text);\n content: \"↓\";\n }\n\n .fs-datatable [data-fs-datatable-pagination] {\n display: flex;\n justify-content: flex-end;\n margin-top: 12px;\n }\n\n .fs-datatable td:focus-visible,\n .fs-datatable th:focus-visible {\n @include focus-ring;\n\n outline-offset: -2px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Diálogo do Command Palette (`js/command-palette.js`). Os itens da lista\n// reusam `.fs-dropdown-item`/`.is-active`/`.is-disabled` (scss/components/\n// _dropdown.scss) sem duplicação — só o backdrop/diálogo/campo de busca são\n// CSS novo.\n\n@layer components {\n .fs-command-palette {\n position: fixed;\n inset: 0;\n z-index: var(--fs-z-modal);\n display: none;\n align-items: flex-start;\n justify-content: center;\n padding: 72px 16px 16px;\n background-color: rgb(0 0 0 / 50%);\n }\n\n .fs-command-palette.is-open {\n display: flex;\n }\n\n .fs-command-palette-dialog {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: 480px;\n max-height: calc(100vh - 88px);\n overflow: hidden;\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n }\n\n .fs-command-palette-input {\n width: 100%;\n padding: 16px 20px;\n border: none;\n border-bottom: 1px solid var(--fs-color-border);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-lg;\n }\n\n .fs-command-palette-input:focus-visible {\n @include focus-ring;\n }\n\n .fs-command-palette-list {\n margin: 0;\n padding: 6px 0;\n overflow-y: auto;\n list-style: none;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-tree,\n .fs-tree [role=\"group\"] {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-tree [role=\"group\"] {\n padding-left: 20px;\n }\n\n .fs-tree [role=\"treeitem\"] {\n border-radius: var(--fs-radius-sm);\n }\n\n .fs-tree [role=\"treeitem\"]:focus-visible {\n outline: none;\n }\n\n .fs-tree [role=\"treeitem\"]:focus-visible > .fs-tree-label {\n @include focus-ring;\n }\n\n .fs-tree-label {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 8px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n font-size: $font-size-md;\n cursor: pointer;\n user-select: none;\n }\n\n .fs-tree-label:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-tree [role=\"treeitem\"][aria-selected=\"true\"] > .fs-tree-label {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n .fs-tree-toggle {\n flex-shrink: 0;\n width: 0;\n height: 0;\n border-top: 4px solid transparent;\n border-bottom: 4px solid transparent;\n border-left: 5px solid currentcolor;\n transition: transform 0.15s ease-in-out;\n }\n\n .fs-tree [role=\"treeitem\"][aria-expanded=\"true\"] > .fs-tree-label > .fs-tree-toggle {\n transform: rotate(90deg);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-dropdown {\n position: relative;\n display: inline-flex;\n }\n\n // Sem margin-left: `.fs-dropdown-toggle` é sempre usado com `.fs-btn`\n // (ver docs/components/dropdown.md), que já tem `gap` pros filhos —\n // incluindo este `::after`, que conta como item flex do `.fs-btn`.\n .fs-dropdown-toggle::after {\n display: inline-block;\n width: 0;\n height: 0;\n vertical-align: middle;\n content: \"\";\n border-top: 5px solid;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n }\n\n .fs-dropdown-menu {\n position: absolute;\n display: none;\n min-width: 180px;\n margin: 0;\n padding: 6px 0;\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-dropdown);\n }\n\n .fs-dropdown-menu.is-open {\n display: block;\n }\n\n .fs-dropdown-item {\n display: flex;\n align-items: center;\n width: 100%;\n padding: 8px 16px;\n border: 0;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface-raised);\n font-size: $font-size-md;\n text-align: left;\n text-decoration: none;\n cursor: pointer;\n }\n\n .fs-dropdown-item:hover,\n .fs-dropdown-item:focus-visible {\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n outline: none;\n }\n\n .fs-dropdown-item.is-active {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n .fs-dropdown-item.is-disabled {\n color: var(--fs-color-muted);\n pointer-events: none;\n opacity: 0.6;\n }\n\n .fs-dropdown-divider {\n height: 1px;\n margin: 6px 0;\n border: none;\n background-color: var(--fs-color-border);\n }\n\n .fs-dropdown-header {\n padding: 4px 16px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n font-weight: $font-weight-medium;\n text-transform: uppercase;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-modal {\n position: fixed;\n inset: 0;\n z-index: var(--fs-z-modal);\n display: none;\n align-items: center;\n justify-content: center;\n padding: var(--fs-space-4);\n background-color: rgb(0 0 0 / 50%);\n }\n\n .fs-modal.is-open {\n display: flex;\n }\n\n .fs-modal-dialog {\n width: 100%;\n max-width: 480px;\n }\n\n .fs-modal-dialog.fs-modal-sm {\n max-width: 320px;\n }\n\n .fs-modal-dialog.fs-modal-lg {\n max-width: 720px;\n }\n\n .fs-modal-dialog.fs-modal-xl {\n max-width: 1140px;\n }\n\n .fs-modal-dialog.fs-modal-fullscreen {\n max-width: none;\n height: 100%;\n }\n\n .fs-modal-content {\n display: flex;\n flex-direction: column;\n max-height: calc(100vh - 2 * var(--fs-space-4));\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n }\n\n .fs-modal-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n\n .fs-modal-title {\n margin: 0;\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n }\n\n .fs-modal-body {\n padding: 20px;\n overflow-y: auto;\n }\n\n .fs-modal-scrollable .fs-modal-content {\n overflow: hidden;\n }\n\n .fs-modal-scrollable .fs-modal-body {\n overflow-y: auto;\n }\n\n @media (width < 640px) {\n .fs-modal {\n align-items: flex-end;\n padding: 0;\n }\n\n .fs-modal-dialog,\n .fs-modal-dialog.fs-modal-sm,\n .fs-modal-dialog.fs-modal-lg,\n .fs-modal-dialog.fs-modal-xl {\n max-width: none;\n }\n\n .fs-modal-content {\n max-height: calc(100dvh - var(--fs-safe-area-top));\n border-radius: var(--fs-radius-md) var(--fs-radius-md) 0 0;\n }\n }\n\n .fs-modal-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 16px 20px;\n border-top: 1px solid var(--fs-color-border);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Alert Dialog / Confirm: variante do Modal (scss/components/_modal.scss) para\n// confirmação, montada dinamicamente por FokusStyles.confirm() (js/confirm.js) —\n// reaproveita .fs-modal/.fs-modal-dialog/.fs-modal-content/.fs-modal-footer sem duplicar\n// layout, só adiciona a mensagem abaixo do título.\n\n@layer components {\n .fs-alert-dialog-message {\n margin: 4px 0 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Linha divisória, 100% CSS. `<hr class=\"divider\">` para o traço simples;\n// `<div class=\"divider\">` (não pode ser `<hr>`, que não aceita filhos) com\n// `.fs-divider-label` para o texto centralizado, flanqueado por duas linhas via\n// pseudo-elementos.\n\n@layer components {\n .fs-divider {\n margin: 16px 0;\n border: 0;\n border-top: 1px solid var(--fs-color-border);\n }\n\n .fs-divider:not(hr) {\n display: flex;\n align-items: center;\n border-top: none;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-divider:not(hr)::before,\n .fs-divider:not(hr)::after {\n flex: 1;\n content: \"\";\n border-top: 1px solid var(--fs-color-border);\n }\n\n .fs-divider-label {\n padding: 0 12px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Bloco padrão para listas/telas vazias, 100% CSS. `.fs-empty-state-icon` é um\n// slot vazio (o consumidor põe seu próprio SVG/emoji/ilustração dentro) — ao\n// contrário do ícone do Alert Dialog, aqui não há um conjunto fixo de\n// variantes de estado para gerar via CSS.\n\n@layer components {\n .fs-empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: 48px 24px;\n text-align: center;\n }\n\n // `[hidden]` sozinho não bastaria: a regra do user-agent stylesheet\n // perde pra `display: flex` acima (author styles sempre vencem UA\n // styles, mesmo em `@layer`) — sem isso, `.fs-empty-state[hidden]`\n // continua visível (bug real pego no DataTable, que alterna esse\n // atributo em `js/datatable.js`). Mesmo padrão já usado em\n // `.fs-notification-badge[hidden]`/`.fs-notification-empty[hidden]`.\n .fs-empty-state[hidden] {\n display: none;\n }\n\n .fs-empty-state-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 64px;\n height: 64px;\n margin-bottom: 16px;\n border-radius: 50%;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-subtle);\n font-size: 28px;\n }\n\n .fs-empty-state-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n }\n\n .fs-empty-state-text {\n max-width: 360px;\n margin: 4px 0 20px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Rating / Stars, 100% CSS — mesma técnica de input oculto + label irmão do\n// Segmented Control (scss/components/_segmented-control.scss): um\n// `<input type=\"radio\">` por estrela, exclusivo dentro do grupo. A marcação\n// espera os pares input+label em ordem DECRESCENTE de valor (5, 4, 3...) com\n// `.fs-rating` em `row-reverse`, o truque clássico de CSS pra destacar \"a\n// estrela clicada e todas à esquerda dela\" usando só `~` (combinador de\n// irmãos gerais, que só enxerga o que vem DEPOIS no DOM).\n// A estrela em si é o ícone `star` de `fokus-styles/icons` (`.fs-icon`, outline\n// por padrão) — preenchida (`fill: currentcolor`) só quando selecionada/em\n// hover, pra imitar o glifo sólido que ★ tinha antes sem perder o contorno\n// vazio do estado \"não avaliada\".\n\n@layer components {\n .fs-rating {\n display: inline-flex;\n flex-direction: row-reverse;\n }\n\n .fs-rating-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .fs-rating-star {\n display: flex;\n padding: 2px;\n color: var(--fs-color-border);\n font-size: 24px;\n cursor: pointer;\n }\n\n .fs-rating-input:checked ~ .fs-rating-star,\n .fs-rating-star:hover,\n .fs-rating-star:hover ~ .fs-rating-star {\n color: var(--fs-color-warning);\n }\n\n .fs-rating-input:checked ~ .fs-rating-star .fs-icon,\n .fs-rating-star:hover .fs-icon,\n .fs-rating-star:hover ~ .fs-rating-star .fs-icon {\n fill: currentcolor;\n }\n\n .fs-rating-input:focus-visible + .fs-rating-star {\n border-radius: var(--fs-radius-sm);\n outline: 2px solid var(--fs-color-primary);\n outline-offset: 2px;\n }\n\n .fs-rating-input:disabled + .fs-rating-star {\n opacity: 0.5;\n pointer-events: none;\n }\n\n .fs-rating-sm .fs-rating-star {\n font-size: 16px;\n }\n\n .fs-rating-lg .fs-rating-star {\n font-size: 32px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Badge dismissível / Tag: reaproveita `.fs-badge`\n// (scss/components/_badges.scss) e `.fs-btn-close`\n// (scss/components/_buttons.scss) — só ajusta o tamanho do botão de fechar\n// pra caber num badge, que é bem menor que um botão, e o espaçamento entre\n// o texto e o \"x\". O dismiss em si é feito por js/tag.js (FokusStyles.Tag).\n@layer components {\n .fs-tag {\n gap: 0;\n padding: 0 0 0 8px;\n }\n\n // O texto fica em um elemento próprio quando a tag puder ser truncada. A\n // string integral permanece no DOM, portanto continua disponível para AT.\n .fs-tag-label {\n min-width: 0;\n }\n\n .fs-tag-truncate {\n max-inline-size: min(100%, var(--fs-tag-max-inline-size, 20rem));\n }\n\n .fs-tag-truncate .fs-tag-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .fs-tag-icon {\n display: inline-grid;\n width: 12px;\n height: 12px;\n flex: 0 0 12px;\n margin-right: 4px;\n place-items: center;\n }\n\n .fs-tag-icon .fs-icon {\n width: 12px;\n height: 12px;\n stroke: currentcolor;\n }\n\n .fs-tag .fs-btn-close {\n width: calc(var(--fs-badge-height) - 2px);\n height: calc(var(--fs-badge-height) - 2px);\n flex: 0 0 calc(var(--fs-badge-height) - 2px);\n margin-left: 4px;\n border-radius: 0;\n background-color: transparent;\n\n // Herda a cor de texto do badge (contraste automático por variante) em vez\n // do cinza fixo do `.fs-btn-close`, pra o \"x\" ter contraste em qualquer fundo;\n // o `opacity` o deixa discreto sem depender de uma cor fixa.\n color: inherit;\n opacity: 0.7;\n transition: opacity 0.1s ease-in-out, background-color 0.1s ease-in-out, transform 0.1s ease-in-out;\n }\n\n .fs-tag .fs-btn-close::before,\n .fs-tag .fs-btn-close::after {\n top: calc(50% + 1px);\n width: 8px;\n }\n\n .fs-tag .fs-btn-close:hover {\n color: inherit;\n background-color: color-mix(in srgb, currentcolor 18%, transparent);\n opacity: 1;\n }\n\n // Feedback tátil ao clicar (o dismiss em si é assíncrono via evento\n // cancelável fs:tag:dismissed, então o \"afundar\" no clique reforça que a\n // ação registrou mesmo antes do elemento sumir).\n .fs-tag .fs-btn-close:active {\n background-color: color-mix(in srgb, currentcolor 28%, transparent);\n transform: scale(0.9);\n }\n\n // Agrupamento: várias tags lado a lado, quebrando linha sem cortar.\n .fs-tag-group {\n display: flex;\n flex-wrap: wrap;\n gap: 0;\n }\n\n // O botão já possui foco próprio; o contorno no contêiner evidencia qual\n // tag será removida, especialmente em grupos densos.\n .fs-tag:focus-within {\n @include focus-ring;\n }\n\n .fs-tag.is-loading,\n .fs-tag[aria-busy=\"true\"] {\n --fs-badge-bg: var(--fs-color-warning);\n --fs-badge-color: var(--fs-color-black);\n --fs-badge-border: transparent;\n\n cursor: progress;\n }\n\n // Usa o spinner do próprio FokusStyles. A classe é opt-in no markup para que o\n // conteúdo de uma tag carregando continue explícito e sem DOM implícito.\n .fs-tag.is-loading .fs-spinner,\n .fs-tag[aria-busy=\"true\"] .fs-spinner {\n width: 12px;\n height: 12px;\n flex: 0 0 12px;\n margin: 0 6px 0 4px;\n border-width: 2px;\n color: var(--fs-color-black);\n }\n\n .fs-tag.is-loading .fs-btn-close,\n .fs-tag[aria-busy=\"true\"] .fs-btn-close {\n display: none;\n }\n\n .fs-tag-group .fs-tag + .fs-tag {\n border-inline-start-color: color-mix(in srgb, currentcolor 24%, transparent);\n }\n\n .fs-tag-group .fs-tag {\n padding-inline-start: calc(var(--fs-badge-height) + 2px);\n transition: background-color 0.1s ease-in-out;\n }\n\n .fs-tag-group .fs-btn-close {\n pointer-events: none;\n opacity: 0;\n }\n\n .fs-tag-group .fs-tag:hover .fs-btn-close,\n .fs-tag-group .fs-tag:focus-within .fs-btn-close {\n pointer-events: auto;\n opacity: 0.7;\n }\n\n .fs-tag-group .fs-tag:hover,\n .fs-tag-group .fs-tag:focus-within {\n background-color: color-mix(in srgb, currentcolor 18%, transparent);\n }\n\n // Um botão de overflow representa as tags não exibidas. A abertura da lista\n // ou popover é responsabilidade da composição que o utiliza.\n .fs-tag-overflow {\n --fs-badge-bg: transparent;\n --fs-badge-color: var(--fs-alert-primary-text);\n --fs-badge-border: transparent;\n\n width: var(--fs-badge-height);\n height: var(--fs-badge-height);\n min-width: var(--fs-badge-height);\n padding: 0;\n border: 0;\n appearance: none;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font: inherit;\n line-height: 0;\n }\n\n .fs-tag-overflow .fs-icon {\n display: block;\n flex: 0 0 13px;\n width: 13px;\n height: 13px;\n stroke: currentcolor;\n }\n\n .fs-tag-overflow:hover,\n .fs-tag-group .fs-tag-overflow:hover {\n background-color: transparent;\n border-color: transparent;\n }\n\n .fs-tag-group .fs-tag-overflow {\n padding-inline-start: 0;\n }\n\n .fs-tag-overflow:focus-visible {\n @include focus-ring;\n }\n\n .fs-tag-group .fs-btn-close:hover {\n color: inherit;\n background-color: transparent;\n opacity: 0.7;\n }\n\n .fs-tag-protected {\n pointer-events: none;\n }\n\n .fs-tag-lock {\n display: inline-grid;\n width: calc(var(--fs-badge-height) - 2px);\n height: calc(var(--fs-badge-height) - 2px);\n margin-left: 4px;\n place-items: center;\n }\n\n .fs-tag-lock svg {\n width: 12px;\n height: 12px;\n stroke: currentcolor;\n stroke-width: 2;\n }\n\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Offcanvas: painel deslizante (fora da viewport por padrão, `.is-open` traz\n// para dentro via transform) + `.fs-offcanvas-backdrop` separado (não fixo\n// junto ao painel, como no Modal, porque o painel não cobre a tela toda —\n// o backdrop escurece o restante). Mesma faixa de z-index do Modal (1050),\n// já que são overlays mutuamente exclusivos.\n\n@layer components {\n .fs-offcanvas {\n position: fixed;\n z-index: var(--fs-z-offcanvas);\n display: flex;\n flex-direction: column;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-lg);\n visibility: hidden;\n transition: transform 0.3s ease, visibility 0.3s ease;\n }\n\n .fs-offcanvas.is-open {\n visibility: visible;\n transform: none;\n }\n\n .fs-offcanvas-start {\n inset: 0 auto 0 0;\n width: 320px;\n transform: translateX(-100%);\n }\n\n .fs-offcanvas-end {\n inset: 0 0 0 auto;\n width: 320px;\n transform: translateX(100%);\n }\n\n .fs-offcanvas-top {\n inset: 0 0 auto;\n height: 40vh;\n transform: translateY(-100%);\n }\n\n .fs-offcanvas-bottom {\n inset: auto 0 0;\n height: 40vh;\n transform: translateY(100%);\n }\n\n .fs-offcanvas-backdrop {\n position: fixed;\n inset: 0;\n z-index: calc(var(--fs-z-offcanvas) - 1);\n background-color: rgb(0 0 0 / 50%);\n opacity: 0;\n visibility: hidden;\n transition: opacity 0.3s ease, visibility 0.3s ease;\n }\n\n .fs-offcanvas-backdrop.is-open {\n visibility: visible;\n opacity: 1;\n }\n\n .fs-offcanvas-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n\n .fs-offcanvas-title {\n margin: 0;\n font-size: $font-size-lg;\n font-weight: $font-weight-medium;\n }\n\n .fs-offcanvas-body {\n flex: 1 1 auto;\n padding: 20px;\n overflow-y: auto;\n }\n\n .fs-offcanvas-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 16px 20px;\n border-top: 1px solid var(--fs-color-border);\n }\n\n .fs-offcanvas-responsive {\n width: min(100%, 420px);\n }\n\n @media (width >= 1024px) {\n .fs-offcanvas-lg {\n position: static;\n width: auto;\n height: auto;\n visibility: visible;\n transform: none;\n box-shadow: none;\n }\n\n .fs-offcanvas-lg + .fs-offcanvas-backdrop {\n display: none;\n }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-offcanvas,\n .fs-offcanvas-backdrop {\n transition: none;\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-accordion {\n display: flex;\n flex-direction: column;\n }\n\n .fs-accordion-item {\n overflow: hidden;\n border: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface-raised);\n }\n\n .fs-accordion-item + .fs-accordion-item {\n border-top: none;\n }\n\n .fs-accordion-item:first-child {\n border-top-left-radius: var(--fs-radius-md);\n border-top-right-radius: var(--fs-radius-md);\n }\n\n .fs-accordion-item:last-child {\n border-bottom-right-radius: var(--fs-radius-md);\n border-bottom-left-radius: var(--fs-radius-md);\n }\n\n .fs-accordion-flush .fs-accordion-item {\n border-inline: 0;\n border-radius: 0;\n }\n\n .fs-accordion-flush .fs-accordion-item:first-child {\n border-block-start: 0;\n }\n\n .fs-accordion-always-open .fs-accordion-button[aria-expanded=\"true\"]::after {\n transform: rotate(-135deg);\n }\n\n .fs-accordion-header {\n margin: 0;\n }\n\n .fs-accordion-button {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 14px 16px;\n border: none;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n text-align: left;\n cursor: pointer;\n }\n\n .fs-accordion-button:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-accordion-button:focus-visible {\n @include focus-ring;\n }\n\n .fs-accordion-button::after {\n flex-shrink: 0;\n width: 8px;\n height: 8px;\n margin-left: 12px;\n content: \"\";\n border-right: 2px solid currentcolor;\n border-bottom: 2px solid currentcolor;\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out;\n }\n\n .fs-accordion-button[aria-expanded=\"true\"]::after {\n transform: rotate(-135deg);\n }\n\n .fs-accordion-collapse {\n overflow: hidden;\n }\n\n .fs-accordion-body {\n padding: 16px;\n border-top: 1px solid var(--fs-color-border);\n background-color: var(--fs-color-surface-raised);\n }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-accordion-button::after {\n transition: none;\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Três estilos visuais (linha = padrão, pill, depth), mais alinhamento e\n// tamanho — todos modificadores de `.fs-tabs`, reaproveitando `.fs-nav-link`\n// (_navbar.scss) como o item clicável em todos os três, então o HTML e a\n// navegação por teclado (ArrowLeft/ArrowRight/Home/End, `js/tabs.js`) não\n// mudam entre estilos.\n@layer components {\n .fs-tabs {\n display: flex;\n border-bottom: var(--fs-border-width) solid var(--fs-color-border-default);\n }\n\n .fs-tabs .fs-nav-link {\n margin-bottom: -1px;\n border-bottom: 2px solid transparent;\n border-radius: var(--fs-radius-sm) var(--fs-radius-sm) 0 0;\n }\n\n .fs-tabs .fs-nav-link.is-active {\n border-bottom-color: var(--fs-color-primary);\n }\n\n // Pill: sem linha embaixo, cada item vira um \"chip\" com fundo próprio\n // quando ativo — nada de forma circular, só o token de raio padrão.\n .fs-tabs-pill {\n gap: 4px;\n border-bottom: none;\n }\n\n .fs-tabs-pill .fs-nav-link {\n margin-bottom: 0;\n border-bottom: none;\n border-radius: var(--fs-radius-sm);\n }\n\n .fs-tabs-pill .fs-nav-link.is-active {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n // Depth: fundo neutro por trás dos itens; o ativo \"sobe\" com borda nos 3\n // lados e fundo igual ao do conteúdo, criando a ilusão de aba de pasta\n // fundida ao painel abaixo (a borda inferior do container fica por baixo\n // do item ativo, escondida pela cor de fundo igual).\n .fs-tabs-depth {\n gap: 2px;\n padding: 4px 4px 0;\n background-color: var(--fs-color-subtle);\n }\n\n .fs-tabs-depth .fs-nav-link {\n margin-bottom: -1px;\n border: 1px solid transparent;\n border-bottom: none;\n border-radius: var(--fs-radius-sm) var(--fs-radius-sm) 0 0;\n }\n\n .fs-tabs-depth .fs-nav-link.is-active {\n border-color: var(--fs-color-border);\n background-color: var(--fs-color-surface);\n }\n\n // Alinhamento dos itens dentro do container (padrão: início/esquerda).\n .fs-tabs-center {\n justify-content: center;\n }\n\n .fs-tabs-right {\n justify-content: flex-end;\n }\n\n .fs-tabs-fill .fs-nav-link {\n flex: 1;\n justify-content: center;\n text-align: center;\n }\n\n // Tamanhos — mesma escala sm/lg dos outros componentes.\n .fs-tabs-sm .fs-nav-link {\n padding: 6px 10px;\n font-size: $font-size-sm;\n }\n\n .fs-tabs-lg .fs-nav-link {\n padding: 10px 16px;\n font-size: $font-size-lg;\n }\n\n .fs-tab-content > .fs-tab-pane {\n display: none;\n }\n\n .fs-tab-content > .fs-tab-pane.is-active {\n display: block;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-tooltip {\n position: absolute;\n z-index: var(--fs-z-tooltip);\n display: none;\n max-width: 220px;\n }\n\n .fs-tooltip.is-open {\n display: block;\n }\n\n .fs-tooltip-inner {\n padding: 6px 10px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-tooltip-text);\n background-color: var(--fs-tooltip-bg);\n font-size: $font-size-xs;\n text-align: center;\n }\n\n .fs-tooltip-arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--fs-tooltip-bg);\n transform: rotate(45deg);\n }\n\n .fs-tooltip[data-placement=\"top\"] .fs-tooltip-arrow {\n bottom: -4px;\n left: 50%;\n margin-left: -4px;\n }\n\n .fs-tooltip[data-placement=\"bottom\"] .fs-tooltip-arrow {\n top: -4px;\n left: 50%;\n margin-left: -4px;\n }\n\n .fs-tooltip[data-placement=\"left\"] .fs-tooltip-arrow {\n top: 50%;\n right: -4px;\n margin-top: -4px;\n }\n\n .fs-tooltip[data-placement=\"right\"] .fs-tooltip-arrow {\n top: 50%;\n left: -4px;\n margin-top: -4px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Popover: painel flutuante com conteúdo rico (header/body/footer),\n// posicionado como o Tooltip (mesma técnica de seta rotacionada 45°), mas com\n// aparência de card de superfície em vez do chip escuro do tooltip — porque\n// pode conter elementos interativos. z-index entre o Dropdown (1000) e o\n// Tooltip (1080), para um tooltip aplicado a um gatilho de popover ainda\n// vencer visualmente.\n\n@layer components {\n .fs-popover {\n position: absolute;\n z-index: var(--fs-z-offcanvas);\n display: none;\n max-width: 280px;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n box-shadow: var(--fs-shadow-md);\n }\n\n .fs-popover.is-open {\n display: block;\n }\n\n .fs-popover-header {\n padding: 10px 14px;\n background-color: var(--fs-color-subtle);\n border-bottom: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md) var(--fs-radius-md) 0 0;\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-popover-body {\n padding: 14px;\n font-size: $font-size-sm;\n }\n\n .fs-popover-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n padding: 10px 14px;\n border-top: 1px solid var(--fs-color-border);\n }\n\n .fs-popover-arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--fs-color-surface);\n border: 1px solid var(--fs-color-border);\n transform: rotate(45deg);\n }\n\n .fs-popover[data-placement=\"top\"] .fs-popover-arrow {\n bottom: -5px;\n left: 50%;\n margin-left: -4px;\n border-top: 0;\n border-left: 0;\n }\n\n .fs-popover[data-placement=\"bottom\"] .fs-popover-arrow {\n top: -5px;\n left: 50%;\n margin-left: -4px;\n border-right: 0;\n border-bottom: 0;\n }\n\n .fs-popover[data-placement=\"left\"] .fs-popover-arrow {\n top: 50%;\n right: -5px;\n margin-top: -4px;\n border-bottom: 0;\n border-left: 0;\n }\n\n .fs-popover[data-placement=\"right\"] .fs-popover-arrow {\n top: 50%;\n left: -5px;\n margin-top: -4px;\n border-top: 0;\n border-right: 0;\n }\n\n // Hover Card: não é um componente novo — composição do Popover com\n // `data-trigger=\"hover\"` (já suportado por js/popover.js) e conteúdo mais\n // rico (ex. avatar + bio). Este modificador só alarga um pouco o popover e\n // alinha um layout de linha (avatar ao lado do texto) no corpo.\n .fs-popover-hover-card {\n max-width: 320px;\n }\n\n .fs-popover-hover-card .fs-popover-body {\n display: flex;\n gap: 12px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n@layer components {\n .fs-toast-container {\n position: fixed;\n right: 16px;\n bottom: 16px;\n z-index: var(--fs-z-toast);\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: min(360px, 100%);\n max-width: calc(100vw - 2 * var(--fs-space-3));\n }\n\n .fs-toast {\n display: flex;\n overflow: hidden;\n flex-direction: column;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n }\n\n .fs-toast-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 12px;\n border-bottom: 1px solid var(--fs-color-border);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-toast-body {\n padding: 12px;\n font-size: $font-size-sm;\n }\n\n @each $name, $color in $theme-colors {\n .fs-toast-#{$name} .fs-toast-header {\n color: var(--fs-alert-#{$name}-text);\n background-color: var(--fs-alert-#{$name}-bg);\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-pagination {\n display: flex;\n gap: 0.25rem;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-pagination-scroll {\n max-width: 100%;\n overflow-x: auto;\n padding-block: 2px;\n }\n\n .fs-pagination-scroll .fs-pagination {\n width: max-content;\n }\n\n .fs-page-link {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 32px;\n height: 32px;\n padding: 0 8px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n text-decoration: none;\n transition: background-color 0.15s ease-in-out;\n }\n\n .fs-page-link:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-page-link:focus-visible {\n @include focus-ring;\n }\n\n .fs-page-item.is-active .fs-page-link {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n .fs-page-item.is-disabled .fs-page-link {\n color: var(--fs-color-muted);\n opacity: 0.6;\n pointer-events: none;\n }\n\n // Bordered: itens colados (sem gap), borda contínua fundida (técnica do\n // Input Group — margin negativo + z-index no item ativo/hover), cantos\n // arredondados só nas pontas.\n .fs-pagination-bordered {\n gap: 0;\n }\n\n .fs-pagination-bordered .fs-page-link {\n border-radius: 0;\n }\n\n .fs-pagination-bordered .fs-page-item:not(:first-child) .fs-page-link {\n margin-left: -1px;\n }\n\n .fs-pagination-bordered .fs-page-item:first-child .fs-page-link {\n border-top-left-radius: var(--fs-radius-sm);\n border-bottom-left-radius: var(--fs-radius-sm);\n }\n\n .fs-pagination-bordered .fs-page-item:last-child .fs-page-link {\n border-top-right-radius: var(--fs-radius-sm);\n border-bottom-right-radius: var(--fs-radius-sm);\n }\n\n .fs-pagination-bordered .fs-page-link:hover,\n .fs-pagination-bordered .fs-page-item.is-active .fs-page-link {\n position: relative;\n z-index: 1;\n }\n\n // Compacta / grande — mesma escala sm/lg dos outros componentes.\n .fs-pagination-sm .fs-page-link {\n min-width: 26px;\n height: 26px;\n padding: 0 6px;\n font-size: $font-size-xs;\n }\n\n .fs-pagination-lg .fs-page-link {\n min-width: 40px;\n height: 40px;\n padding: 0 12px;\n font-size: $font-size-md;\n }\n\n // Prev/next descritivo: item com ícone + texto (\"Anterior\"/\"Próxima\") em\n // vez de só \"«\"/\"»\" — `.fs-page-link` já acomoda largura variável\n // (min-width é piso, não teto); só falta o espaçamento entre ícone e texto.\n .fs-page-link-text {\n gap: 6px;\n padding: 0 14px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-breadcrumb {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 4px;\n margin: 0;\n padding: 0;\n list-style: none;\n font-size: $font-size-sm;\n }\n\n .fs-breadcrumb-item {\n display: flex;\n align-items: center;\n gap: 4px;\n color: var(--fs-color-muted);\n }\n\n .fs-breadcrumb-item + .fs-breadcrumb-item::before {\n color: var(--fs-color-muted);\n content: \"/\";\n }\n\n .fs-breadcrumb-item a {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n color: var(--fs-alert-primary-text);\n text-decoration: none;\n }\n\n .fs-breadcrumb-item a:hover {\n text-decoration: underline;\n }\n\n .fs-breadcrumb-item.is-active {\n color: var(--fs-color-text);\n }\n\n // Breadcrumb avançado (js/breadcrumb.js): trunca labels longos com reticências\n // (tooltip com o texto completo é anexado via js/tooltip.js só quando o texto\n // realmente transborda) e, em telas pequenas, recolhe os níveis\n // intermediários num único item \"…\" que abre um dropdown (js/dropdown.js)\n // com os links ocultos.\n .fs-breadcrumb-item-truncate {\n display: inline-block;\n max-width: 160px;\n vertical-align: bottom;\n\n @include truncate;\n }\n\n .fs-breadcrumb-more {\n padding: 0;\n border: none;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface-raised);\n font-size: inherit;\n font-family: inherit;\n line-height: inherit;\n cursor: pointer;\n }\n\n .fs-breadcrumb-more:hover {\n color: var(--fs-color-text);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer components {\n .fs-spinner {\n --fs-spinner-size: 20px;\n --fs-spinner-stroke: 2px;\n --fs-spinner-duration: 0.8s;\n\n display: inline-block;\n box-sizing: border-box;\n width: var(--fs-spinner-size);\n height: var(--fs-spinner-size);\n vertical-align: middle;\n border: var(--fs-spinner-stroke) solid color-mix(in srgb, currentcolor 20%, transparent);\n border-top-color: currentcolor;\n border-radius: 50%;\n animation: fokus-spin var(--fs-spinner-duration) linear infinite;\n will-change: transform;\n }\n\n .fs-spinner-sm {\n --fs-spinner-size: 14px;\n --fs-spinner-stroke: 2px;\n }\n\n .fs-spinner-lg {\n --fs-spinner-size: 32px;\n --fs-spinner-stroke: 3px;\n }\n\n @each $name, $color in $theme-colors {\n .fs-spinner-#{$name} {\n color: var(--fs-color-#{$name});\n }\n }\n\n @keyframes fokus-spin { to { transform: rotate(360deg); } }\n\n .fs-progress {\n --fs-progress-height: 8px;\n --fs-progress-track: var(--fs-color-subtle);\n --fs-progress-radius: 0;\n\n position: relative;\n display: flex;\n height: var(--fs-progress-height);\n overflow: hidden;\n background-color: var(--fs-progress-track);\n border-radius: var(--fs-progress-radius);\n }\n\n .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-primary);\n --fs-progress-color: var(--fs-color-on-primary);\n\n display: flex;\n align-items: center;\n justify-content: center;\n width: calc(var(--fs-progress-value, 0) * 1%);\n height: 100%;\n min-width: 0;\n overflow: hidden;\n color: var(--fs-progress-color);\n background-color: var(--fs-progress-bar-bg);\n font-size: 0;\n line-height: 1;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: width 0.25s ease-out;\n }\n\n @each $name, $color in $theme-colors {\n .fs-progress-bar-#{$name} {\n --fs-progress-bar-bg: var(--fs-color-#{$name});\n --fs-progress-color: #{color-contrast($color)};\n }\n }\n\n .fs-spinner[data-fs-loading=\"false\"] {\n display: none;\n }\n\n .fs-progress-sm {\n --fs-progress-height: 4px;\n }\n\n .fs-progress-lg {\n --fs-progress-height: 16px;\n }\n\n .fs-progress-lg .fs-progress-bar {\n padding-inline: 6px;\n font-size: $font-size-xs;\n }\n\n .fs-progress-meta {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 12px;\n max-width: 480px;\n margin-bottom: 6px;\n color: var(--fs-color-text);\n font-size: $font-size-sm;\n }\n\n .fs-progress-value {\n color: var(--fs-color-muted);\n font-variant-numeric: tabular-nums;\n }\n\n .fs-progress-indeterminate .fs-progress-bar {\n width: 36%;\n animation: fokus-progress-indeterminate 1.25s ease-in-out infinite;\n }\n\n .fs-progress-indeterminate {\n --fs-progress-track: color-mix(in srgb, var(--fs-color-primary) 18%, transparent);\n }\n\n @keyframes fokus-progress-indeterminate { from { transform: translateX(-110%); } to { transform: translateX(290%); } }\n\n .fs-progress-complete .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-success);\n --fs-progress-color: #{color-contrast($fokus-color-success)};\n }\n\n .fs-progress-error .fs-progress-bar {\n --fs-progress-bar-bg: var(--fs-color-danger);\n --fs-progress-color: #{color-contrast($fokus-color-danger)};\n }\n\n .fs-progress-status {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n margin-top: 6px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-progress-status-icon {\n display: inline-grid;\n width: 14px;\n height: 14px;\n place-items: center;\n color: var(--fs-alert-success-text);\n }\n\n .fs-progress-status-icon .fs-icon {\n width: 14px;\n height: 14px;\n stroke: currentcolor;\n }\n\n .fs-progress-status-danger,\n .fs-progress-error + .fs-progress-status {\n color: var(--fs-alert-danger-text);\n }\n\n .fs-progress-marker {\n position: absolute;\n z-index: 1;\n top: 0;\n bottom: 0;\n left: calc(var(--fs-progress-marker-value) * 1%);\n width: 2px;\n background-color: var(--fs-color-text);\n pointer-events: none;\n transform: translateX(-1px);\n }\n\n .fs-progress-minimum .fs-progress-bar {\n width: max(calc(var(--fs-progress-value, 0) * 1%), 4px);\n }\n\n .fs-progress-bar-striped {\n background-image: linear-gradient(45deg, color-mix(in srgb, currentcolor 16%, transparent) 25%, transparent 25%, transparent 50%, color-mix(in srgb, currentcolor 16%, transparent) 50%, color-mix(in srgb, currentcolor 16%, transparent) 75%, transparent 75%, transparent);\n background-size: 16px 16px;\n }\n .fs-progress-bar-animated { animation: fokus-progress-stripes 1s linear infinite; }\n\n @keyframes fokus-progress-stripes { from { background-position: 16px 0; } to { background-position: 0 0; } }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-spinner {\n --fs-spinner-duration: 1.5s;\n }\n\n .fs-progress-bar-animated {\n animation-duration: 1.5s;\n }\n\n .fs-progress-indeterminate .fs-progress-bar {\n animation-duration: 1.8s;\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n@use \"sass:map\";\n\n@layer components {\n .fs-carousel {\n --fs-carousel-radius: var(--fs-radius-md);\n --fs-carousel-transition-duration: var(--fs-transition-normal);\n --fs-carousel-transition-easing: var(--fs-ease-standard);\n --fs-carousel-control-size: 44px;\n --fs-carousel-control-inset: var(--fs-space-2);\n --fs-carousel-control-gap: var(--fs-space-1);\n --fs-carousel-control-color: var(--fs-color-white);\n --fs-carousel-control-paused-color: var(--fs-color-warning);\n --fs-carousel-control-bg: rgb(15 23 42 / 72%);\n --fs-carousel-control-bg-hover: rgb(15 23 42 / 88%);\n --fs-carousel-focus-color: var(--fs-color-white);\n --fs-carousel-indicator-size: 8px;\n --fs-carousel-indicator-active-width: 24px;\n --fs-carousel-indicator-color: rgb(255 255 255 / 62%);\n --fs-carousel-indicator-active-color: var(--fs-color-white);\n --fs-carousel-caption-scrim: rgb(15 23 42 / 78%);\n --fs-carousel-top-safe-area: calc(var(--fs-carousel-control-size) + (var(--fs-carousel-control-inset) * 2));\n --fs-carousel-bottom-safe-area: calc(32px + var(--fs-space-2) + 24px);\n --fs-carousel-progress-height: 3px;\n\n position: relative;\n overflow: hidden;\n border-radius: var(--fs-carousel-radius);\n }\n\n .fs-carousel::before {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(var(--fs-carousel-control-size) + (var(--fs-carousel-control-inset) * 2));\n pointer-events: none;\n content: \"\";\n background: linear-gradient(to bottom, rgb(15 23 42 / 76%), rgb(15 23 42 / 32%));\n opacity: 0;\n transition: opacity var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-carousel-inner {\n display: flex;\n transition: transform var(--fs-carousel-transition-duration) var(--fs-carousel-transition-easing);\n }\n\n .fs-carousel-item {\n position: relative;\n flex: 0 0 100%;\n width: 100%;\n }\n\n .fs-carousel-item img {\n display: block;\n width: 100%;\n }\n\n .fs-carousel.is-dragging .fs-carousel-inner {\n cursor: grabbing;\n transition: none;\n user-select: none;\n }\n\n .fs-carousel:not(.is-static) .fs-carousel-inner {\n cursor: grab;\n touch-action: pan-y;\n }\n\n .fs-carousel-fade .fs-carousel-inner {\n display: block;\n transform: none;\n }\n\n .fs-carousel-fade .fs-carousel-item {\n position: absolute;\n inset: 0;\n opacity: 0;\n transition: opacity var(--fs-carousel-transition-duration) var(--fs-carousel-transition-easing);\n }\n\n .fs-carousel-fade .fs-carousel-item.is-active {\n position: relative;\n opacity: 1;\n }\n\n .fs-carousel-control-prev,\n .fs-carousel-control-next,\n .fs-carousel-control-toggle {\n position: absolute;\n top: var(--fs-carousel-control-inset);\n z-index: 2;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--fs-carousel-control-size);\n height: var(--fs-carousel-control-size);\n padding: 0;\n color: var(--fs-carousel-control-color);\n background-color: transparent;\n background-repeat: no-repeat;\n background-position: center;\n background-size: 18px 18px;\n border: 0;\n border-radius: 0;\n cursor: pointer;\n opacity: 0;\n transition: background-color var(--fs-transition-fast) var(--fs-ease-standard),\n opacity var(--fs-transition-fast) var(--fs-ease-standard),\n transform var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-carousel-control-prev,\n .fs-carousel-control-next {\n transform: none;\n }\n\n .fs-carousel-control-prev {\n left: var(--fs-carousel-control-inset);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 4 6 9l5 5'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel-control-next {\n left: calc(var(--fs-carousel-control-inset) + var(--fs-carousel-control-size) + var(--fs-carousel-control-gap));\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 4 5 5-5 5'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel-control-toggle {\n left: calc(var(--fs-carousel-control-inset) + var(--fs-carousel-control-size) + var(--fs-carousel-control-gap));\n }\n\n .fs-carousel:has(.fs-carousel-control-toggle) .fs-carousel-control-next {\n left: calc(var(--fs-carousel-control-inset) + ((var(--fs-carousel-control-size) + var(--fs-carousel-control-gap)) * 2));\n }\n\n .fs-carousel-control-toggle[aria-pressed=\"true\"] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 5v8M11 5v8'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel-control-toggle[aria-pressed=\"false\"] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23ffffff'%3E%3Cpath d='m7 4 7 5-7 5z'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel.is-autoplay-paused .fs-carousel-control-toggle[aria-pressed=\"true\"] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23f0b40e' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M7 5v8M11 5v8'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel.is-autoplay-paused .fs-carousel-control-toggle[aria-pressed=\"false\"] {\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='%23f0b40e'%3E%3Cpath d='m7 4 7 5-7 5z'/%3E%3C/svg%3E\");\n }\n\n .fs-carousel-control-prev:hover,\n .fs-carousel-control-next:hover,\n .fs-carousel-control-toggle:hover {\n background-color: var(--fs-carousel-control-bg-hover);\n }\n\n .fs-carousel-control-prev:active,\n .fs-carousel-control-next:active,\n .fs-carousel-control-toggle:active {\n transform: scale(0.94);\n }\n\n .fs-carousel-control-prev:focus-visible,\n .fs-carousel-control-next:focus-visible,\n .fs-carousel-control-toggle:focus-visible,\n .fs-carousel-indicators button:focus-visible {\n @include focus-ring(var(--fs-carousel-focus-color));\n }\n\n .fs-carousel:hover .fs-carousel-control-prev,\n .fs-carousel:hover .fs-carousel-control-next,\n .fs-carousel:hover .fs-carousel-control-toggle,\n .fs-carousel:focus-within .fs-carousel-control-prev,\n .fs-carousel:focus-within .fs-carousel-control-next,\n .fs-carousel:focus-within .fs-carousel-control-toggle {\n opacity: 1;\n }\n\n .fs-carousel:hover::before,\n .fs-carousel:focus-within::before {\n opacity: 1;\n }\n\n .fs-carousel-indicators {\n position: absolute;\n right: 0;\n bottom: var(--fs-space-2);\n left: 0;\n z-index: 1;\n display: flex;\n justify-content: center;\n gap: 0;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-carousel-indicators button {\n position: relative;\n display: grid;\n width: 28px;\n height: 32px;\n padding: 0;\n place-items: center;\n background: transparent;\n border: 0;\n cursor: pointer;\n }\n\n .fs-carousel-indicators button::before {\n width: var(--fs-carousel-indicator-size);\n height: var(--fs-carousel-indicator-size);\n content: \"\";\n background-color: var(--fs-carousel-indicator-color);\n border-radius: var(--fs-radius-lg);\n transition: width var(--fs-transition-fast) var(--fs-ease-standard),\n background-color var(--fs-transition-fast) var(--fs-ease-standard);\n }\n\n .fs-carousel-indicators button.is-active::before {\n width: var(--fs-carousel-indicator-active-width);\n background-color: var(--fs-carousel-indicator-active-color);\n }\n\n .fs-carousel-caption {\n position: absolute;\n right: 0;\n bottom: var(--fs-carousel-bottom-safe-area);\n left: 0;\n z-index: 1;\n box-sizing: border-box;\n max-width: min(100%, 42rem);\n max-block-size: calc(100% - var(--fs-carousel-top-safe-area) - var(--fs-carousel-bottom-safe-area));\n isolation: isolate;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: var(--fs-space-2);\n padding: calc(var(--fs-space-4) + 20px) var(--fs-space-4) var(--fs-space-3);\n color: var(--fs-color-white);\n }\n\n .fs-carousel-caption::before {\n position: absolute;\n top: 0;\n right: 0;\n bottom: calc(var(--fs-carousel-bottom-safe-area) * -1);\n left: 0;\n z-index: -1;\n content: \"\";\n background: linear-gradient(to top, var(--fs-carousel-caption-scrim), transparent);\n }\n\n .fs-carousel-caption > * {\n margin: 0;\n }\n\n .fs-carousel-caption .fs-btn {\n --fs-btn-color: var(--fs-color-text-primary);\n --fs-btn-bg: var(--fs-color-white);\n --fs-btn-border-color: var(--fs-color-white);\n --fs-btn-hover-bg: var(--fs-color-subtle);\n --fs-btn-active-bg: var(--fs-color-border-default);\n }\n\n .fs-carousel-caption-side .fs-carousel-caption {\n top: var(--fs-carousel-top-safe-area);\n right: 0;\n bottom: 0;\n left: auto;\n width: min(42%, 28rem);\n max-width: none;\n max-block-size: none;\n padding: var(--fs-space-4) var(--fs-space-4)\n calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-2));\n background: rgb(15 23 42 / 84%);\n }\n\n // A legenda lateral fica à direita por padrão. Esta variação permite\n // preservar o assunto principal da imagem quando ele estiver à direita.\n .fs-carousel-caption-side .fs-carousel-caption-start {\n right: auto;\n left: 0;\n }\n\n .fs-carousel-caption-side .fs-carousel-caption::before,\n .fs-carousel-caption-stacked .fs-carousel-caption::before {\n display: none;\n }\n\n .fs-carousel-caption-stacked {\n --fs-carousel-bottom-safe-area: 0px;\n }\n\n .fs-carousel-caption-stacked .fs-carousel-caption {\n position: static;\n max-width: none;\n max-block-size: none;\n overflow: visible;\n padding: var(--fs-space-4);\n color: var(--fs-color-text-primary);\n background: var(--fs-color-bg-surface);\n }\n\n .fs-carousel-caption-stacked .fs-carousel-indicators {\n position: relative;\n bottom: auto;\n background: var(--fs-color-bg-surface);\n }\n\n .fs-carousel-counter {\n position: absolute;\n right: var(--fs-space-3);\n bottom: var(--fs-space-2);\n z-index: 2;\n color: var(--fs-color-white);\n font-size: $font-size-sm;\n font-variant-numeric: tabular-nums;\n }\n\n .fs-carousel-progress {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n height: var(--fs-carousel-progress-height);\n overflow: hidden;\n background-color: rgb(255 255 255 / 24%);\n }\n\n .fs-carousel-progress > span {\n display: block;\n width: 100%;\n height: 100%;\n background-color: var(--fs-color-white);\n transform: scaleX(0);\n transform-origin: left;\n }\n\n .fs-carousel-progress.is-running > span {\n animation: fs-carousel-progress var(--fs-carousel-progress-duration, 5000ms) linear forwards;\n }\n\n .fs-carousel.is-two-slides.fs-carousel-hide-indicators-two .fs-carousel-indicators {\n display: none;\n }\n\n .fs-carousel-no-media .fs-carousel-item {\n min-block-size: 15rem;\n background-color: var(--fs-color-bg-surface);\n border: var(--fs-border-width) solid var(--fs-color-border-default);\n }\n\n .fs-carousel-no-media .fs-carousel-counter {\n color: var(--fs-color-text-muted);\n }\n\n .fs-carousel-no-media .fs-carousel-progress {\n background-color: var(--fs-color-border-default);\n }\n\n .fs-carousel-no-media .fs-carousel-progress > span {\n background-color: var(--fs-color-action-primary);\n }\n\n .fs-carousel-media-placeholder {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n min-height: inherit;\n padding: calc(var(--fs-carousel-top-safe-area) + var(--fs-space-4)) var(--fs-space-4)\n calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-4));\n }\n\n .fs-carousel-media-placeholder > * {\n max-width: 36rem;\n margin: 0;\n }\n\n .fs-carousel-media-placeholder > * + * {\n margin-top: var(--fs-space-2);\n }\n\n .fs-carousel-media {\n min-block-size: 18rem;\n background-position: center;\n background-size: cover;\n }\n\n .fs-carousel.is-static .fs-carousel-control-prev,\n .fs-carousel.is-static .fs-carousel-control-next,\n .fs-carousel.is-static .fs-carousel-control-toggle,\n .fs-carousel.is-static .fs-carousel-indicators {\n display: none;\n }\n\n @media (max-width: map.get($breakpoints, sm) - 1px) {\n .fs-carousel {\n --fs-carousel-control-inset: var(--fs-space-1);\n }\n\n .fs-carousel-caption {\n padding: calc(var(--fs-space-3) + 20px) var(--fs-space-3) var(--fs-space-3);\n }\n\n .fs-carousel-caption-side .fs-carousel-caption {\n top: auto;\n bottom: var(--fs-carousel-bottom-safe-area);\n width: auto;\n max-block-size: calc(100% - var(--fs-carousel-top-safe-area) - var(--fs-carousel-bottom-safe-area));\n overflow: clip;\n align-items: flex-end;\n padding: calc(var(--fs-space-3) + 20px) var(--fs-space-3)\n calc(var(--fs-carousel-bottom-safe-area) + var(--fs-space-2));\n text-align: end;\n background: transparent;\n }\n\n .fs-carousel-caption-side .fs-carousel-caption-start {\n right: 0;\n left: 0;\n align-items: flex-start;\n text-align: start;\n }\n\n .fs-carousel-caption-side .fs-carousel-item::after {\n position: absolute;\n inset: 0;\n z-index: 0;\n pointer-events: none;\n content: \"\";\n background: linear-gradient(\n to top,\n var(--fs-carousel-caption-scrim) 0%,\n rgb(15 23 42 / 52%) 56%,\n transparent 100%\n );\n }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-carousel-inner,\n .fs-carousel-fade .fs-carousel-item,\n .fs-carousel-control-prev,\n .fs-carousel-control-next,\n .fs-carousel-control-toggle,\n .fs-carousel-indicators button::before,\n .fs-carousel-progress.is-running > span {\n transition: none;\n animation: none;\n transform: scaleX(1);\n }\n }\n\n @keyframes fs-carousel-progress {\n to {\n transform: scaleX(1);\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Stepper / Wizard. Cabeçalho com os passos (`.fs-step`) e, opcionalmente, painéis\n// de conteúdo (`.fs-step-panel`) e ações de navegação (`.fs-stepper-actions`).\n// Estados por passo: padrão (pendente), `.fs-step-active`, `.fs-step-completed`,\n// `.fs-step-error` — controlados por `js/stepper.js`.\n\n@layer components {\n .fs-stepper-header {\n display: flex;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-step {\n position: relative;\n display: flex;\n flex: 1 1 0;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n\n .fs-step-indicator {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n color: var(--fs-color-muted);\n background-color: var(--fs-color-surface);\n border: 2px solid var(--fs-color-border);\n border-radius: 50%;\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-step-label {\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-step-description {\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n }\n\n // Conector entre passos: linha do centro deste passo ao centro do próximo.\n .fs-step:not(:last-child)::after {\n content: \"\";\n position: absolute;\n top: 15px;\n left: calc(50% + 20px);\n width: calc(100% - 40px);\n height: 2px;\n background-color: var(--fs-color-border);\n }\n\n // Passo ativo.\n .fs-step-active .fs-step-indicator {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n .fs-step-active .fs-step-label {\n color: var(--fs-color-text);\n }\n\n // Passo concluído: círculo preenchido com um \"check\" no lugar do número, e o\n // conector à direita fica na cor primária (indica progresso).\n .fs-step-completed .fs-step-indicator {\n color: transparent;\n background-color: var(--fs-color-primary);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5 6.5 12 13 4'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-position: center;\n border-color: var(--fs-color-primary);\n }\n\n .fs-step-completed .fs-step-label {\n color: var(--fs-color-text);\n }\n\n // `:not(:last-child)` casa a especificidade da regra base do conector\n // (senão o cinza dela venceria e o progresso não apareceria).\n .fs-step-completed:not(:last-child)::after {\n background-color: var(--fs-color-primary);\n }\n\n // Passo em erro.\n .fs-step-error .fs-step-indicator {\n color: color-contrast($fokus-color-danger);\n background-color: var(--fs-color-danger);\n border-color: var(--fs-color-danger);\n }\n\n .fs-step-error .fs-step-label {\n color: var(--fs-alert-danger-text);\n }\n\n // Passo clicável (navegação para trás via cabeçalho).\n .fs-step.fs-step-clickable {\n cursor: pointer;\n }\n\n .fs-step.fs-step-clickable:focus-visible {\n outline: 2px solid var(--fs-color-primary);\n outline-offset: 2px;\n border-radius: var(--fs-radius-sm);\n }\n\n // Variante vertical.\n .fs-stepper-vertical .fs-stepper-header {\n flex-direction: column;\n }\n\n .fs-stepper-vertical .fs-step {\n flex-direction: row;\n flex: 0 0 auto;\n align-items: flex-start;\n gap: 12px;\n min-height: 56px;\n text-align: left;\n }\n\n .fs-stepper-vertical .fs-step-content {\n display: flex;\n flex-direction: column;\n gap: 2px;\n padding-top: 5px;\n }\n\n .fs-stepper-vertical .fs-step:not(:last-child)::after {\n top: 34px;\n left: 15px;\n width: 2px;\n height: calc(100% - 22px);\n }\n\n // Painéis de conteúdo (wizard) e ações de navegação.\n .fs-step-panel {\n display: none;\n }\n\n .fs-step-panel.is-active {\n display: block;\n }\n\n .fs-stepper-content {\n margin-top: 20px;\n }\n\n .fs-stepper-actions {\n display: flex;\n justify-content: space-between;\n gap: 8px;\n margin-top: 20px;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Grupo de botões com estado selecionado. Modo exclusivo: `<input\n// type=\"radio\">` (mesmo `name` em todos os itens). Modo inclusivo: `<input\n// type=\"checkbox\">`, cada item seleciona/deseleciona de forma independente.\n// O input fica visualmente oculto (mesma técnica de `.fs-file-input`,\n// scss/forms/_forms.scss) e o `<label>` irmão recebe o estilo.\n\n@layer components {\n .fs-segmented-control {\n display: inline-flex;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-sm);\n overflow: hidden;\n }\n\n .fs-segmented-item {\n display: flex;\n }\n\n .fs-segmented-item:not(:first-child) .fs-segmented-label {\n border-left: 1px solid var(--fs-color-border);\n }\n\n .fs-segmented-input {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip-path: inset(50%);\n white-space: nowrap;\n border: 0;\n }\n\n .fs-segmented-label {\n display: inline-flex;\n flex: 1;\n align-items: center;\n justify-content: center;\n min-height: 38px;\n padding: 0 12px;\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n text-align: center;\n white-space: nowrap;\n cursor: pointer;\n user-select: none;\n transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;\n }\n\n .fs-segmented-label:hover {\n background-color: var(--fs-color-subtle);\n }\n\n .fs-segmented-input:checked + .fs-segmented-label {\n color: var(--fs-color-on-primary);\n background-color: var(--fs-color-primary);\n }\n\n .fs-segmented-input:focus-visible + .fs-segmented-label {\n position: relative;\n z-index: 1;\n\n @include focus-ring;\n }\n\n .fs-segmented-input:disabled + .fs-segmented-label {\n opacity: 0.4;\n pointer-events: none;\n }\n\n .fs-segmented-control-sm .fs-segmented-label {\n min-height: 30px;\n padding: 0 8px;\n font-size: $font-size-sm;\n }\n\n .fs-segmented-control-lg .fs-segmented-label {\n min-height: 46px;\n padding: 0 16px;\n font-size: $font-size-lg;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Placeholder de carregamento. Tamanho/forma controlados por largura/altura\n// inline (`style=\"width: ...; height: ...\"`) ou pelas variantes abaixo —\n// mesma abordagem de `.fs-progress-bar` (scss/components/_spinner.scss), que já\n// usa `style=\"width\"` em vez de classes de tamanho fixas.\n\n@layer components {\n .fs-skeleton {\n display: block;\n background-color: var(--fs-color-subtle);\n border-radius: var(--fs-radius-sm);\n animation: fokus-skeleton-pulse 1.5s ease-in-out infinite;\n }\n\n .fs-skeleton-text {\n width: 100%;\n height: 1em;\n }\n\n .fs-skeleton-text:not(:last-child) {\n margin-bottom: 0.5em;\n }\n\n .fs-skeleton-text:last-child {\n width: 80%;\n }\n\n .fs-skeleton-circle {\n flex-shrink: 0;\n border-radius: 50%;\n }\n\n .fs-skeleton-rect {\n border-radius: var(--fs-radius-md);\n }\n\n .fs-skeleton-card {\n display: grid;\n gap: var(--fs-space-3);\n min-height: 10rem;\n padding: var(--fs-space-4);\n border-radius: var(--fs-radius-md);\n }\n\n .fs-skeleton-table {\n height: 1.25rem;\n margin-block-end: var(--fs-space-2);\n }\n\n .fs-skeleton-avatar {\n width: 2.5rem;\n height: 2.5rem;\n border-radius: 50%;\n }\n\n @keyframes fokus-skeleton-pulse {\n 0%,\n 100% {\n opacity: 1;\n }\n\n 50% {\n opacity: 0.5;\n }\n }\n\n // Variante \"wave\": em vez de pulsar a opacidade inteira, varre um brilho da\n // esquerda pra direita — precisa de `overflow: hidden` porque o brilho é um\n // pseudo-elemento maior que o próprio skeleton, deslocado por `translateX`.\n .fs-skeleton-wave {\n position: relative;\n overflow: hidden;\n animation: none;\n }\n\n .fs-skeleton-wave::after {\n position: absolute;\n inset: 0;\n content: \"\";\n background-image: linear-gradient(90deg, transparent, rgb(255 255 255 / 30%), transparent);\n transform: translateX(-100%);\n animation: fokus-skeleton-wave 1.6s linear infinite;\n }\n\n @keyframes fokus-skeleton-wave {\n 100% {\n transform: translateX(100%);\n }\n }\n\n @media (prefers-reduced-motion: reduce) {\n .fs-skeleton {\n animation: none;\n }\n\n .fs-skeleton-wave::after {\n animation: none;\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Linha do tempo, 100% CSS. Vertical por padrão (`.fs-timeline`); variante\n// `.fs-timeline-horizontal` inverte o eixo. Estados por item (`.fs-timeline-item`):\n// padrão (pendente), `.fs-timeline-active`, `.fs-timeline-completed`,\n// `.fs-timeline-failed` — mesma lógica de conector do Stepper\n// (scss/components/_stepper.scss): a linha entre marcadores fica na cor do\n// item concluído para indicar progresso.\n\n@layer components {\n .fs-timeline {\n display: flex;\n flex-direction: column;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .fs-timeline-item {\n position: relative;\n display: flex;\n gap: 12px;\n padding-bottom: 24px;\n }\n\n .fs-timeline-item:last-child {\n padding-bottom: 0;\n }\n\n .fs-timeline-marker {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n margin-top: 3px;\n background-color: var(--fs-color-surface);\n background-repeat: no-repeat;\n background-position: center;\n border: 2px solid var(--fs-color-border);\n border-radius: 50%;\n }\n\n .fs-timeline-item:not(:last-child)::before {\n content: \"\";\n position: absolute;\n top: 22px;\n left: 7px;\n width: 2px;\n height: calc(100% - 22px);\n background-color: var(--fs-color-border);\n }\n\n .fs-timeline-content {\n flex: 1;\n padding-top: 1px;\n }\n\n .fs-timeline-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n }\n\n .fs-timeline-text {\n margin: 4px 0 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-timeline-time {\n display: block;\n margin-top: 2px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n }\n\n // Item ativo (em andamento).\n .fs-timeline-active .fs-timeline-marker {\n background-color: var(--fs-color-primary);\n border-color: var(--fs-color-primary);\n }\n\n // Item concluído: marcador preenchido com um \"check\" (mesmo ícone do\n // Stepper) e o conector seguinte fica na cor de sucesso (indica progresso).\n .fs-timeline-completed .fs-timeline-marker {\n background-color: var(--fs-color-success);\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 5.5 4 8l4-6'/%3E%3C/svg%3E\");\n border-color: var(--fs-color-success);\n }\n\n .fs-timeline-completed:not(:last-child)::before {\n background-color: var(--fs-color-success);\n }\n\n // Item com falha.\n .fs-timeline-failed .fs-timeline-marker {\n background-color: var(--fs-color-danger);\n border-color: var(--fs-color-danger);\n }\n\n .fs-timeline-failed .fs-timeline-title {\n color: var(--fs-alert-danger-text);\n }\n\n // Variante horizontal: cada item vira uma coluna, marcador no topo e\n // conector correndo na horizontal entre os centros dos marcadores (mesma\n // técnica do `.fs-step` padrão em scss/components/_stepper.scss).\n .fs-timeline-horizontal {\n flex-direction: row;\n }\n\n .fs-timeline-horizontal .fs-timeline-item {\n flex: 1 1 0;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n padding-bottom: 0;\n text-align: center;\n }\n\n // No modo horizontal o marcador não precisa do deslocamento vertical usado\n // para alinhar com a primeira linha de texto (margin-top no modo vertical);\n // zerá-lo faz o conector cair exatamente no centro do círculo.\n .fs-timeline-horizontal .fs-timeline-marker {\n margin-top: 0;\n }\n\n .fs-timeline-horizontal .fs-timeline-item:not(:last-child)::before {\n top: 7px;\n left: calc(50% + 15px);\n width: calc(100% - 30px);\n height: 2px;\n }\n\n .fs-timeline-horizontal .fs-timeline-content {\n padding-top: 0;\n }\n}\n","// Extraído do padrão já usado por `.fs-accordion-collapse`\n// (scss/components/_accordion.scss): o `overflow: hidden` é exigido pelo\n// `collapse()`/`expand()` de js/core/transition.js, que anima a propriedade\n// `height` do elemento.\n\n@layer components {\n .fs-collapse {\n overflow: hidden;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Notification Center (Etapa 10): orquestra o Toast (scss/components/_toasts.scss)\n// e guarda um histórico. Os toasts em si reaproveitam `.fs-toast`/`.fs-toast-container`\n// sem estilo novo; aqui ficam só o contador de não-lidas no gatilho e o painel\n// de histórico. O comportamento (empilhar toasts, marcar lido, persistir) é do\n// js/notification-center.js (FokusStyles.NotificationCenter).\n\n// O gatilho estabelece o contexto de posicionamento do contador.\n\n@layer components {\n [data-fs=\"notification-center\"] {\n position: relative;\n }\n\n .fs-notification-badge {\n position: absolute;\n top: -6px;\n right: -6px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 18px;\n height: 18px;\n padding: 0 5px;\n border-radius: 999px;\n color: color-contrast($fokus-color-danger);\n background-color: var(--fs-color-danger);\n font-size: 0.65rem;\n font-weight: $font-weight-medium;\n line-height: 1;\n }\n\n .fs-notification-badge[hidden] {\n display: none;\n }\n\n // Painel de histórico: reaproveita a mesma linguagem visual do Dropdown/Toast\n // (superfície + borda + sombra), posicionado via js/core/positioning.js.\n .fs-notification-center {\n position: absolute;\n display: none;\n flex-direction: column;\n width: min(320px, calc(100vw - 2 * var(--fs-space-3)));\n max-height: 420px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n color: var(--fs-color-text);\n background-color: var(--fs-color-surface);\n box-shadow: var(--fs-shadow-md);\n z-index: var(--fs-z-notification);\n }\n\n .fs-notification-center.is-open {\n display: flex;\n }\n\n .fs-notification-center-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 14px;\n border-bottom: 1px solid var(--fs-color-border);\n }\n\n .fs-notification-center-title {\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-notification-list {\n margin: 0;\n padding: 0;\n overflow-y: auto;\n list-style: none;\n }\n\n .fs-notification-item {\n display: flex;\n gap: 10px;\n align-items: flex-start;\n padding: 10px 14px;\n border-left: 3px solid transparent;\n border-bottom: 1px solid var(--fs-color-border);\n }\n\n .fs-notification-item:last-child {\n border-bottom: none;\n }\n\n .fs-notification-item-unread {\n background-color: var(--fs-color-subtle);\n }\n\n @each $name, $color in $theme-colors {\n .fs-notification-item-#{$name} {\n border-left-color: var(--fs-color-#{$name});\n }\n }\n\n .fs-notification-item-content {\n flex: 1;\n min-width: 0;\n }\n\n .fs-notification-item-title {\n margin: 0;\n font-size: $font-size-sm;\n font-weight: $font-weight-medium;\n }\n\n .fs-notification-item-text {\n margin: 2px 0 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n }\n\n .fs-notification-item-time {\n display: block;\n margin-top: 4px;\n color: var(--fs-color-muted);\n font-size: $font-size-xs;\n }\n\n .fs-notification-item .fs-btn-close {\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n }\n\n .fs-notification-empty {\n padding: 24px 14px;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n text-align: center;\n }\n\n .fs-notification-empty[hidden] {\n display: none;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Nested Menu (Etapa 10): Dropdown com submenus recursivos. Reaproveita\n// `.fs-dropdown-menu`/`.fs-dropdown-item` (scss/components/_dropdown.scss) sem\n// reestilizar — só adiciona o posicionamento em cascata dos submenus e a seta\n// indicadora. Abertura por hover é 100% CSS; teclado/clique e o flip de borda\n// ficam no js/nested-menu.js (FokusStyles.NestedMenu), que adiciona `.is-open`.\n\n// Cada nível de submenu é envolto por `.fs-dropdown-submenu`, que serve de âncora\n// de posicionamento para o `.fs-dropdown-menu` filho.\n\n@layer components {\n .fs-dropdown-submenu {\n position: relative;\n }\n\n // Item que abre um submenu: seta apontando para o lado (em vez da seta pra\n // baixo do `.fs-dropdown-toggle`), empurrada para a direita do item.\n .fs-dropdown-item-submenu {\n justify-content: space-between;\n }\n\n .fs-dropdown-item-submenu::after {\n margin-left: 8px;\n content: \"\";\n border-top: 5px solid transparent;\n border-bottom: 5px solid transparent;\n border-left: 5px solid currentcolor;\n }\n\n // Submenu abre à direita do item, alinhado ao topo (compensa o padding + borda\n // do menu pai para os primeiros itens ficarem na mesma linha).\n .fs-dropdown-submenu > .fs-dropdown-menu {\n top: -7px;\n left: 100%;\n margin: 0;\n }\n\n .fs-dropdown-submenu:hover > .fs-dropdown-menu,\n .fs-dropdown-submenu > .fs-dropdown-menu.is-open {\n display: block;\n }\n\n // Sem espaço à direita: o JS marca `.fs-dropdown-submenu-left` e o submenu abre\n // para a esquerda.\n .fs-dropdown-submenu-left > .fs-dropdown-menu {\n right: 100%;\n left: auto;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n// Tile: linha compacta ícone + título/subtítulo + ações, para listas de\n// opções/configurações/itens de navegação (sinergia com Notification Center\n// e Empty State — mesmo vocabulário visual de ícone+texto). Reusa `.fs-btn`\n// nas ações e `.fs-stretched-link` (_cards.scss) para a variante clicável\n// (tile inteiro age como link, sem precisar envolver tudo numa `<a>`).\n@layer components {\n .fs-tile {\n position: relative;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 12px;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n background-color: var(--fs-color-surface);\n }\n\n .fs-tile-icon {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n border-radius: var(--fs-radius-sm);\n color: var(--fs-color-text);\n background-color: var(--fs-color-subtle);\n font-size: $font-size-lg;\n }\n\n .fs-tile-body {\n flex: 1 1 auto;\n min-width: 0;\n }\n\n .fs-tile-title {\n margin: 0;\n color: var(--fs-color-text);\n font-size: $font-size-md;\n font-weight: $font-weight-medium;\n\n @include truncate;\n }\n\n .fs-tile-subtitle {\n margin: 0;\n color: var(--fs-color-muted);\n font-size: $font-size-sm;\n\n @include truncate;\n }\n\n .fs-tile-actions {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n gap: 8px;\n }\n\n // Ações embaixo: o tile quebra linha (flex-wrap) e `.fs-tile-actions` ocupa\n // a largura toda numa segunda linha, alinhada à direita — em vez do padrão\n // (ações à direita, na mesma linha do ícone/corpo).\n .fs-tile-actions-bottom {\n flex-wrap: wrap;\n }\n\n .fs-tile-actions-bottom .fs-tile-actions {\n flex-basis: 100%;\n justify-content: flex-end;\n margin-top: 4px;\n }\n\n // Tile inteiro clicável: usa `.fs-stretched-link` num link dentro do corpo\n // (mesma técnica do Card) — o hover/focus visual fica no `.fs-tile`.\n .fs-tile-clickable {\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n }\n\n .fs-tile-clickable:hover,\n .fs-tile-clickable:focus-within {\n border-color: var(--fs-color-primary);\n box-shadow: var(--fs-shadow-sm);\n }\n\n .fs-tile-sm {\n gap: 8px;\n padding: 8px;\n }\n\n .fs-tile-sm .fs-tile-icon {\n width: 32px;\n height: 32px;\n font-size: $font-size-md;\n }\n\n .fs-tile-sm .fs-tile-title {\n font-size: $font-size-sm;\n }\n\n .fs-tile-sm .fs-tile-subtitle {\n font-size: $font-size-xs;\n }\n\n .fs-tile-lg {\n gap: 16px;\n padding: 16px;\n }\n\n .fs-tile-lg .fs-tile-icon {\n width: 48px;\n height: 48px;\n font-size: $font-size-xl;\n }\n\n .fs-tile-lg .fs-tile-title {\n font-size: $font-size-lg;\n }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-avatar {\n display: inline-flex;\n flex: 0 0 auto;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n overflow: hidden;\n color: var(--fs-color-on-primary);\n font-weight: 600;\n background: var(--fs-color-primary);\n border-radius: 50%;\n object-fit: cover;\n }\n\n .fs-avatar-sm { width: 2rem; height: 2rem; font-size: .8125rem; }\n .fs-avatar-lg { width: 3.5rem; height: 3.5rem; font-size: 1.25rem; }\n .fs-avatar-square { border-radius: var(--fs-radius-md); }\n .fs-avatar img { width: 100%; height: 100%; object-fit: cover; }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-button-group {\n display: inline-flex;\n vertical-align: middle;\n }\n\n .fs-button-group > .fs-btn { border-radius: 0; }\n .fs-button-group > .fs-btn:first-child { border-start-start-radius: var(--fs-radius-sm); border-end-start-radius: var(--fs-radius-sm); }\n .fs-button-group > .fs-btn:last-child { border-start-end-radius: var(--fs-radius-sm); border-end-end-radius: var(--fs-radius-sm); }\n .fs-button-group > .fs-btn + .fs-btn { margin-inline-start: -1px; }\n .fs-button-group-vertical { flex-direction: column; align-items: flex-start; }\n .fs-button-group-vertical > .fs-btn { width: 100%; }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-close {\n display: inline-grid;\n width: 2rem;\n height: 2rem;\n place-items: center;\n padding: 0;\n color: currentcolor;\n font-size: 1.5rem;\n line-height: 1;\n background: transparent;\n border: 0;\n border-radius: 50%;\n cursor: pointer;\n opacity: .72;\n }\n\n .fs-close::before { content: \"×\"; }\n .fs-close:hover { opacity: 1; background: var(--fs-color-subtle); }\n .fs-close:focus-visible { outline: var(--fs-focus-width) solid var(--fs-focus-color); outline-offset: var(--fs-focus-offset); }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-list-group {\n display: flex;\n flex-direction: column;\n padding: 0;\n margin: 0;\n list-style: none;\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n }\n\n .fs-list-group-item {\n position: relative;\n display: block;\n padding: var(--fs-space-3) var(--fs-space-4);\n color: var(--fs-color-text);\n background: var(--fs-color-surface);\n border-block-end: 1px solid var(--fs-color-border);\n }\n\n .fs-list-group-item:last-child { border-block-end: 0; }\n button.fs-list-group-item, a.fs-list-group-item { width: 100%; text-align: start; cursor: pointer; }\n .fs-list-group-item:hover { background: var(--fs-color-subtle); }\n .fs-list-group-item.is-active { color: var(--fs-color-on-primary); background: var(--fs-color-primary); }\n}\n","@layer components {\n .fs-code {\n padding: .125em .35em;\n color: var(--fs-color-danger);\n background: var(--fs-color-subtle);\n border-radius: var(--fs-radius-sm);\n }\n\n .fs-pre {\n display: block;\n max-width: 100%;\n padding: var(--fs-space-4);\n overflow: auto;\n color: var(--fs-color-text);\n background: var(--fs-color-subtle);\n border: 1px solid var(--fs-color-border);\n border-radius: var(--fs-radius-md);\n }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-ratio { position: relative; width: 100%; }\n .fs-ratio::before { display: block; padding-top: var(--fs-ratio, 56.25%); content: \"\"; }\n .fs-ratio > * { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }\n .fs-ratio-1x1 { --fs-ratio: 100%; }\n .fs-ratio-4x3 { --fs-ratio: 75%; }\n .fs-ratio-16x9 { --fs-ratio: 56.25%; }\n .fs-ratio-21x9 { --fs-ratio: 42.857%; }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-icon-link { display: inline-flex; gap: .5em; align-items: center; }\n .fs-icon-link svg { width: 1em; height: 1em; flex: 0 0 auto; }\n .fs-icon-link:hover svg { transform: translateX(.15em); }\n\n @media (prefers-reduced-motion: reduce) { .fs-icon-link svg { transition: none; } }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-placeholder { display: inline-block; min-height: 1em; vertical-align: middle; cursor: wait; background: currentcolor; opacity: .18; }\n .fs-placeholder-glow { animation: fs-placeholder-glow 1.5s ease-in-out infinite; }\n .fs-placeholder-wave { background: linear-gradient(90deg, transparent, rgb(255 255 255 / 35%), transparent), currentcolor; background-size: 200% 100%; animation: fs-placeholder-wave 1.5s linear infinite; }\n .fs-placeholder-btn { width: 6rem; height: 2.5rem; border-radius: var(--fs-radius-sm); }\n\n @keyframes fs-placeholder-glow { 50% { opacity: .08; } }\n\n @keyframes fs-placeholder-wave { to { background-position: -200% 0; } }\n\n @media (prefers-reduced-motion: reduce) { .fs-placeholder-glow, .fs-placeholder-wave { animation: none; } }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n .fs-progress { display: flex; height: .75rem; overflow: hidden; background: var(--fs-color-subtle); border-radius: 999px; }\n .fs-progress-bar { display: flex; align-items: center; justify-content: center; color: var(--fs-color-on-primary); background: var(--fs-color-primary); transition: width var(--fs-motion-duration-normal) var(--fs-motion-ease-standard); }\n .fs-progress-bar-striped { background-image: linear-gradient(45deg, rgb(255 255 255 / 15%) 25%, transparent 25%, transparent 50%, rgb(255 255 255 / 15%) 50%, rgb(255 255 255 / 15%) 75%, transparent 75%); background-size: 1rem 1rem; }\n\n @media (prefers-reduced-motion: reduce) { .fs-progress-bar { transition: none; } }\n}\n","/* stylelint-disable declaration-block-single-line-max-declarations */\n@layer components {\n [data-fs-scrollspy] .is-active { color: var(--fs-color-primary); font-weight: 600; }\n .fs-scrollspy-nav { position: sticky; inset-block-start: var(--fs-space-4); }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Utilitários de container query — reagem à largura do container mais\n// próximo (`.fs-u-cq`), não da viewport. Complementam (não substituem) os\n// utilitários de display responsivos por viewport já existentes\n// (`_display.scss`); ver `docs/guides/layout-advanced.md`.\n@layer utilities {\n // Opt-in: aplique num elemento pai pra que os filhos possam reagir à\n // largura dele via os utilitários `.fs-u-cq-{sm,md,lg}-d-*` abaixo.\n .fs-u-cq {\n container-type: inline-size;\n }\n\n @each $name, $width in $container-breakpoints {\n @container (min-width: #{$width}) {\n .fs-u-cq-#{$name}-d-none {\n display: none;\n }\n\n .fs-u-cq-#{$name}-d-block {\n display: block;\n }\n\n .fs-u-cq-#{$name}-d-inline-block {\n display: inline-block;\n }\n\n .fs-u-cq-#{$name}-d-flex {\n display: flex;\n }\n }\n }\n}\n","@layer utilities {\n .fs-u-d-none {\n display: none;\n }\n\n .fs-u-d-block {\n display: block;\n }\n\n .fs-u-d-inline {\n display: inline;\n }\n\n .fs-u-d-inline-block {\n display: inline-block;\n }\n\n .fs-u-d-flex {\n display: flex;\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer utilities {\n @each $breakpoint, $min in $breakpoints {\n $infix: breakpoint-infix($breakpoint);\n\n @include media-breakpoint-up($breakpoint) {\n .fs-u-align-items#{$infix}-start {\n align-items: flex-start;\n }\n\n .fs-u-align-items#{$infix}-center {\n align-items: center;\n }\n\n .fs-u-align-items#{$infix}-end {\n align-items: flex-end;\n }\n\n .fs-u-justify-content#{$infix}-start {\n justify-content: flex-start;\n }\n\n .fs-u-justify-content#{$infix}-center {\n justify-content: center;\n }\n\n .fs-u-justify-content#{$infix}-end {\n justify-content: flex-end;\n }\n\n .fs-u-justify-content#{$infix}-around {\n justify-content: space-around;\n }\n\n .fs-u-justify-content#{$infix}-between {\n justify-content: space-between;\n }\n\n .fs-u-align-self#{$infix}-start {\n align-self: flex-start;\n }\n\n .fs-u-align-self#{$infix}-center {\n align-self: center;\n }\n\n .fs-u-align-self#{$infix}-end {\n align-self: flex-end;\n }\n }\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n\n// Estilo base pra ícones SVG inline — pensado pro pacote opcional\n// `fokus-styles/icons` (ver docs/guides/icons.md), mas funciona com qualquer SVG\n// que siga a mesma convenção (`stroke=\"currentColor\"`, sem width/height\n// fixos via CSS). Tamanho relativo ao texto ao redor (`1em`), não em px\n// fixo, pra acompanhar `.fs-u-fs-*`/headings sem precisar de uma classe de\n// tamanho por contexto.\n\n@layer utilities {\n .fs-icon {\n display: inline-block;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n vertical-align: -0.125em;\n stroke: currentcolor;\n }\n\n .fs-icon-xs {\n width: 12px;\n height: 12px;\n }\n\n .fs-icon-sm {\n width: 16px;\n height: 16px;\n }\n\n .fs-icon-lg {\n width: 32px;\n height: 32px;\n }\n\n .fs-icon-xl {\n width: 48px;\n height: 48px;\n }\n}\n","// z-index 1020: mesma faixa numérica usada pelos componentes de overlay\n// (dropdown 1000, modal/offcanvas 1050, popover 1070...) — fica acima de\n// conteúdo normal e do dropdown, abaixo de qualquer overlay modal.\n@layer utilities {\n .fs-u-sticky-top {\n position: sticky;\n top: var(--fs-sticky-top, 0);\n z-index: 1020;\n }\n\n .fs-u-sticky-bottom {\n position: sticky;\n bottom: var(--fs-sticky-bottom, 0);\n z-index: 1020;\n }\n}\n","@layer utilities {\n @media print {\n .fs-u-print-hide {\n display: none !important;\n }\n }\n\n @media not print {\n .fs-u-print-only {\n display: none !important;\n }\n }\n\n @media print {\n .fs-u-print-block {\n display: block !important;\n }\n\n .fs-u-print-inline {\n display: inline !important;\n }\n\n .fs-u-print-inline-block {\n display: inline-block !important;\n }\n }\n}\n","@layer utilities {\n .fs-u-shadow-sm {\n box-shadow: var(--fs-shadow-sm);\n }\n\n .fs-u-shadow {\n box-shadow: var(--fs-shadow-md);\n }\n\n .fs-u-shadow-lg {\n box-shadow: var(--fs-shadow-lg);\n }\n}\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer utilities {\n @each $breakpoint, $min in $breakpoints {\n $infix: breakpoint-infix($breakpoint);\n\n @include media-breakpoint-up($breakpoint) {\n @each $key, $value in $spacers {\n .fs-u-m#{$infix}-#{$key} {\n margin: $value;\n }\n\n .fs-u-mt#{$infix}-#{$key} {\n margin-top: $value;\n }\n\n .fs-u-mr#{$infix}-#{$key} {\n margin-right: $value;\n }\n\n .fs-u-mb#{$infix}-#{$key} {\n margin-bottom: $value;\n }\n\n .fs-u-ml#{$infix}-#{$key} {\n margin-left: $value;\n }\n\n .fs-u-mx#{$infix}-#{$key} {\n margin-right: $value;\n margin-left: $value;\n }\n\n .fs-u-my#{$infix}-#{$key} {\n margin-top: $value;\n margin-bottom: $value;\n }\n\n .fs-u-p#{$infix}-#{$key} {\n padding: $value;\n }\n\n .fs-u-pt#{$infix}-#{$key} {\n padding-top: $value;\n }\n\n .fs-u-pr#{$infix}-#{$key} {\n padding-right: $value;\n }\n\n .fs-u-pb#{$infix}-#{$key} {\n padding-bottom: $value;\n }\n\n .fs-u-pl#{$infix}-#{$key} {\n padding-left: $value;\n }\n\n .fs-u-px#{$infix}-#{$key} {\n padding-right: $value;\n padding-left: $value;\n }\n\n .fs-u-py#{$infix}-#{$key} {\n padding-top: $value;\n padding-bottom: $value;\n }\n\n // Controla o gutter da grid (--fs-gutter-x/-y), consumido por .row/.row > *.\n .fs-u-g#{$infix}-#{$key} {\n --fs-gutter-x: #{$value};\n --fs-gutter-y: #{$value};\n }\n\n .fs-u-gx#{$infix}-#{$key} {\n --fs-gutter-x: #{$value};\n }\n\n .fs-u-gy#{$infix}-#{$key} {\n --fs-gutter-y: #{$value};\n }\n\n // Gap literal (flex/grid), independente da grid de colunas.\n .fs-u-gap#{$infix}-#{$key} {\n gap: $value;\n }\n\n .fs-u-gap-x#{$infix}-#{$key} {\n column-gap: $value;\n }\n\n .fs-u-gap-y#{$infix}-#{$key} {\n row-gap: $value;\n }\n }\n\n .fs-u-m#{$infix}-auto {\n margin: auto;\n }\n\n .fs-u-mt#{$infix}-auto {\n margin-top: auto;\n }\n\n .fs-u-mr#{$infix}-auto {\n margin-right: auto;\n }\n\n .fs-u-mb#{$infix}-auto {\n margin-bottom: auto;\n }\n\n .fs-u-ml#{$infix}-auto {\n margin-left: auto;\n }\n\n .fs-u-mx#{$infix}-auto {\n margin-right: auto;\n margin-left: auto;\n }\n\n .fs-u-my#{$infix}-auto {\n margin-top: auto;\n margin-bottom: auto;\n }\n }\n }\n}\n","$spacers: (\n 0: 0,\n 1: 0.25rem,\n 2: 0.5rem,\n 3: 1rem,\n 4: 1.5rem,\n 5: 3rem\n) !default;\n\n$z-indexes: (\n base: 0,\n dropdown: 1000,\n sticky: 1020,\n modal: 1050,\n offcanvas: 1060,\n notification: 1080,\n toast: 1090,\n tooltip: 1100\n) !default;\n\n$radius-sm: 4px !default;\n$radius-md: 6px !default;\n$radius-lg: 8px !default;\n","@use \"../../../fokus-core/scss/settings\" as *;\n@use \"../../../fokus-core/scss/tools\" as *;\n\n@layer utilities {\n .fs-u-text-start {\n text-align: left;\n }\n\n .fs-u-text-center {\n text-align: center;\n }\n\n .fs-u-text-end {\n text-align: right;\n }\n\n .fs-u-text-lowercase {\n text-transform: lowercase;\n }\n\n .fs-u-text-uppercase {\n text-transform: uppercase;\n }\n\n .fs-u-text-capitalize {\n text-transform: capitalize;\n }\n\n .fs-u-text-truncate {\n @include truncate;\n }\n\n .fs-u-fw-regular {\n font-weight: $font-weight-regular;\n }\n\n .fs-u-fw-medium {\n font-weight: $font-weight-medium;\n }\n\n .fs-u-fw-semibold {\n font-weight: $font-weight-semibold;\n }\n\n .fs-u-fw-bold {\n font-weight: $font-weight-bold;\n }\n\n .fs-u-fs-xs {\n font-size: $font-size-xs;\n }\n\n .fs-u-fs-sm {\n font-size: $font-size-sm;\n }\n\n .fs-u-fs-md {\n font-size: $font-size-md;\n }\n\n .fs-u-fs-lg {\n font-size: $font-size-lg;\n }\n\n .fs-u-fs-xl {\n font-size: $font-size-xl;\n }\n\n .fs-u-fs-h1 {\n font-size: $font-size-h1;\n }\n\n .fs-u-fs-h2 {\n font-size: $font-size-h2;\n }\n\n .fs-u-fs-h3 {\n font-size: $font-size-h3;\n }\n\n .fs-u-fs-h4 {\n font-size: $font-size-h4;\n }\n\n .fs-u-fs-h5 {\n font-size: $font-size-h5;\n }\n\n .fs-u-fs-h6 {\n font-size: $font-size-h6;\n }\n\n .fs-u-font-sans {\n font-family: var(--fs-font-sans);\n }\n\n .fs-u-font-mono {\n font-family: var(--fs-font-mono);\n }\n}\n","@layer utilities {\n .fs-u-visible {\n visibility: visible;\n }\n\n .fs-u-invisible {\n visibility: hidden;\n }\n\n .fs-u-visually-hidden,\n .fs-u-visually-hidden-focusable {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip-path: inset(50%) !important;\n white-space: nowrap !important;\n border: 0 !important;\n }\n\n .fs-u-visually-hidden-focusable:focus,\n .fs-u-visually-hidden-focusable:focus-within {\n position: static !important;\n width: auto !important;\n height: auto !important;\n margin: 0 !important;\n overflow: visible !important;\n clip-path: none !important;\n white-space: normal !important;\n }\n}\n","@layer utilities {\n .fs-u-focus-ring:focus-visible {\n outline: var(--fs-focus-width) solid var(--fs-focus-color);\n outline-offset: var(--fs-focus-offset);\n box-shadow: 0 0 0 var(--fs-focus-ring-size) var(--fs-focus-ring-color);\n }\n\n .fs-u-disabled,\n .fs-u-disabled[aria-disabled=\"true\"] {\n cursor: not-allowed;\n opacity: var(--fs-disabled-opacity);\n pointer-events: none;\n }\n\n @media print {\n .fs-u-print-hidden { display: none !important; }\n .fs-u-print-visible { display: block !important; }\n }\n}\n","@use \"sass:map\";\n@use \"../../fokus-core/scss/settings\" as *;\n@use \"../../fokus-core/scss/tools\" as tools;\n\n// Utility API do Fokus Styles: os mapas são públicos e podem ser estendidos\n// antes do @use do entry-point pelo consumidor.\n$fs-utility-colors: $theme-colors !default;\n$fs-utility-spacers: $spacers !default;\n$fs-utility-sizes: (25: 25%, 50: 50%, 75: 75%, 100: 100%, auto: auto) !default;\n\n@layer utilities {\n @if fs-config-list-enabled(colors, color) {\n @each $name, $value in $fs-utility-colors {\n .fs-u-color-#{$name} { color: var(--fs-color-#{$name}, #{$value}) !important; }\n .fs-u-bg-#{$name} { background-color: var(--fs-color-#{$name}, #{$value}) !important; }\n }\n }\n\n @if fs-config-list-enabled(spacing, margin) and fs-config-list-enabled(spacing, padding) {\n @each $name, $value in $fs-utility-spacers {\n .fs-u-m-#{$name} { margin: $value !important; }\n .fs-u-mx-#{$name} { margin-inline: $value !important; }\n .fs-u-my-#{$name} { margin-block: $value !important; }\n .fs-u-p-#{$name} { padding: $value !important; }\n .fs-u-px-#{$name} { padding-inline: $value !important; }\n .fs-u-py-#{$name} { padding-block: $value !important; }\n }\n }\n\n @if fs-config-list-enabled(sizing, width) {\n @each $name, $value in $fs-utility-sizes {\n .fs-u-w-#{$name} { width: $value !important; }\n .fs-u-h-#{$name} { height: $value !important; }\n }\n }\n\n @if fs-config-get(responsive, true) {\n @each $breakpoint, $min in $breakpoints {\n @if $min != 0 {\n @media (min-width: $min) {\n .fs-u-d-#{$breakpoint}-flex { display: flex !important; }\n .fs-u-d-#{$breakpoint}-none { display: none !important; }\n .fs-u-text-#{$breakpoint}-start { text-align: start !important; }\n }\n }\n }\n }\n}\n","@use \"sass:color\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n// Theming multi-brand: um `data-fs-brand=\"x\"` sobrescreve só a cor de AÇÃO\n// PRIMÁRIA (--fs-color-primary e os tokens derivados) — secondary/success/\n// warning/danger/info continuam universais entre marcas, porque são\n// semânticos (sucesso é sempre verde, erro sempre vermelho, independente\n// de qual marca está ativa). Composto com `data-theme=\"dark\"` do mesmo\n// jeito que `_dark.scss` faz para a paleta padrão: mistura o primitivo com\n// branco/preto em OKLCH, não recalcula do zero.\n// Limitação conhecida: `.fs-btn-primary`/`.fs-badge-primary` (preenchimento\n// sólido) calculam a cor do texto em tempo de build via `color-contrast()`\n// a partir do primary padrão (azul) — não recalculam por marca. Escolha um\n// primitivo de marca escuro o bastante pro texto branco continuar legível\n// (como o exemplo abaixo), ou sobrescreva `--fs-btn-color`/`--fs-badge-color`\n// manualmente se o primitivo da marca for muito claro. Ver\n// `docs/guides/theming.md#multi-brand`.\n@layer tokens {\n // Marca de exemplo (\"violet\") — mesmo tom usado no exemplo de\n // customização do README, só pra provar que a troca funciona em runtime\n // sem recompilar CSS. Um projeto real substitui/adiciona marcas\n // definindo o próprio primitivo antes de `@use` este arquivo.\n $brand-violet-primary: color.to-space(#6d28d9, oklch) !default;\n\n [data-fs-brand=\"violet\"] {\n --fs-color-primary: #{rgb-fallback($brand-violet-primary)};\n --fs-alert-primary-bg: #{rgb-fallback(tint-color($brand-violet-primary))};\n --fs-alert-primary-text: #{rgb-fallback(shade-color($brand-violet-primary))};\n --fs-feedback-primary-bg: #{rgb-fallback(tint-color($brand-violet-primary))};\n }\n\n [data-fs-brand=\"violet\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"violet\"] {\n --fs-color-primary: #{rgb-fallback(color.mix($brand-violet-primary, $color-white, 95%, $method: oklch))};\n --fs-alert-primary-bg: #{rgb-fallback(color.mix($brand-violet-primary, $color-gray-900, 15%, $method: oklch))};\n --fs-alert-primary-text: #{rgb-fallback(color.mix($brand-violet-primary, $color-white, 55%, $method: oklch))};\n --fs-feedback-primary-bg: #{rgb-fallback(color.mix($brand-violet-primary, $color-gray-900, 15%, $method: oklch))};\n }\n\n @supports (color: oklch(0% 0 0)) {\n [data-fs-brand=\"violet\"] {\n --fs-color-primary: #{$brand-violet-primary};\n --fs-alert-primary-bg: #{tint-color($brand-violet-primary)};\n --fs-alert-primary-text: #{shade-color($brand-violet-primary)};\n --fs-feedback-primary-bg: #{tint-color($brand-violet-primary)};\n }\n\n [data-fs-brand=\"violet\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"violet\"] {\n --fs-color-primary: #{color.mix($brand-violet-primary, $color-white, 95%, $method: oklch)};\n --fs-alert-primary-bg: #{color.mix($brand-violet-primary, $color-gray-900, 15%, $method: oklch)};\n --fs-alert-primary-text: #{color.mix($brand-violet-primary, $color-white, 55%, $method: oklch)};\n --fs-feedback-primary-bg: #{color.mix($brand-violet-primary, $color-gray-900, 15%, $method: oklch)};\n }\n }\n\n // Preset \"corporate\" — azul-marinho/steel blue, tom sóbrio para\n // aplicações internas/B2B. Mesma técnica de mistura OKLCH acima.\n $brand-corporate-primary: color.to-space(#1d4e89, oklch) !default;\n\n [data-fs-brand=\"corporate\"] {\n --fs-color-primary: #{rgb-fallback($brand-corporate-primary)};\n --fs-alert-primary-bg: #{rgb-fallback(tint-color($brand-corporate-primary))};\n --fs-alert-primary-text: #{rgb-fallback(shade-color($brand-corporate-primary))};\n --fs-feedback-primary-bg: #{rgb-fallback(tint-color($brand-corporate-primary))};\n }\n\n [data-fs-brand=\"corporate\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"corporate\"] {\n --fs-color-primary: #{rgb-fallback(color.mix($brand-corporate-primary, $color-white, 95%, $method: oklch))};\n --fs-alert-primary-bg: #{rgb-fallback(color.mix($brand-corporate-primary, $color-gray-900, 15%, $method: oklch))};\n --fs-alert-primary-text: #{rgb-fallback(color.mix($brand-corporate-primary, $color-white, 55%, $method: oklch))};\n --fs-feedback-primary-bg: #{rgb-fallback(color.mix($brand-corporate-primary, $color-gray-900, 15%, $method: oklch))};\n }\n\n // Preset \"vibrant\" — laranja energético, tom para produtos de consumo/\n // marketing que queiram uma ação primária mais chamativa.\n $brand-vibrant-primary: color.to-space(#f2542d, oklch) !default;\n\n [data-fs-brand=\"vibrant\"] {\n --fs-color-primary: #{rgb-fallback($brand-vibrant-primary)};\n --fs-alert-primary-bg: #{rgb-fallback(tint-color($brand-vibrant-primary))};\n --fs-alert-primary-text: #{rgb-fallback(shade-color($brand-vibrant-primary))};\n --fs-feedback-primary-bg: #{rgb-fallback(tint-color($brand-vibrant-primary))};\n }\n\n [data-fs-brand=\"vibrant\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"vibrant\"] {\n --fs-color-primary: #{rgb-fallback(color.mix($brand-vibrant-primary, $color-white, 95%, $method: oklch))};\n --fs-alert-primary-bg: #{rgb-fallback(color.mix($brand-vibrant-primary, $color-gray-900, 15%, $method: oklch))};\n --fs-alert-primary-text: #{rgb-fallback(color.mix($brand-vibrant-primary, $color-white, 55%, $method: oklch))};\n --fs-feedback-primary-bg: #{rgb-fallback(color.mix($brand-vibrant-primary, $color-gray-900, 15%, $method: oklch))};\n }\n\n @supports (color: oklch(0% 0 0)) {\n [data-fs-brand=\"corporate\"] {\n --fs-color-primary: #{$brand-corporate-primary};\n --fs-alert-primary-bg: #{tint-color($brand-corporate-primary)};\n --fs-alert-primary-text: #{shade-color($brand-corporate-primary)};\n --fs-feedback-primary-bg: #{tint-color($brand-corporate-primary)};\n }\n\n [data-fs-brand=\"corporate\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"corporate\"] {\n --fs-color-primary: #{color.mix($brand-corporate-primary, $color-white, 95%, $method: oklch)};\n --fs-alert-primary-bg: #{color.mix($brand-corporate-primary, $color-gray-900, 15%, $method: oklch)};\n --fs-alert-primary-text: #{color.mix($brand-corporate-primary, $color-white, 55%, $method: oklch)};\n --fs-feedback-primary-bg: #{color.mix($brand-corporate-primary, $color-gray-900, 15%, $method: oklch)};\n }\n\n [data-fs-brand=\"vibrant\"] {\n --fs-color-primary: #{$brand-vibrant-primary};\n --fs-alert-primary-bg: #{tint-color($brand-vibrant-primary)};\n --fs-alert-primary-text: #{shade-color($brand-vibrant-primary)};\n --fs-feedback-primary-bg: #{tint-color($brand-vibrant-primary)};\n }\n\n [data-fs-brand=\"vibrant\"][data-theme=\"dark\"],\n [data-theme=\"dark\"] [data-fs-brand=\"vibrant\"] {\n --fs-color-primary: #{color.mix($brand-vibrant-primary, $color-white, 95%, $method: oklch)};\n --fs-alert-primary-bg: #{color.mix($brand-vibrant-primary, $color-gray-900, 15%, $method: oklch)};\n --fs-alert-primary-text: #{color.mix($brand-vibrant-primary, $color-white, 55%, $method: oklch)};\n --fs-feedback-primary-bg: #{color.mix($brand-vibrant-primary, $color-gray-900, 15%, $method: oklch)};\n }\n }\n}\n\n// Ao contrário de violet/corporate, o primitivo \"vibrant\" (laranja) é claro\n// o bastante pra o texto branco padrão de `.fs-btn-primary`/`.fs-badge-primary`\n// (calculado em tempo de build a partir do primary PADRÃO, não do de marca —\n// ver nota no topo do arquivo) cair abaixo de 4.5:1 — exatamente o caso que\n// a mitigação documentada em docs/guides/theming.md#multi-brand cobre.\n// Precisa estar em `@layer overrides` (a camada de maior prioridade — ver\n// `tokens/_root.scss`): `.fs-btn-primary`/`.fs-badge-primary` setam\n// `--fs-btn-color`/`--fs-badge-color` no próprio elemento dentro de\n// `@layer components`, e cascade layers ignoram especificidade — um\n// seletor mais específico em `@layer tokens` (onde vivem os blocos acima)\n// perderia mesmo assim.\n@layer overrides {\n [data-fs-brand=\"vibrant\"] .fs-btn-primary,\n [data-fs-brand=\"vibrant\"] .fs-badge-primary {\n --fs-btn-color: #{$color-black};\n --fs-badge-color: #{$color-black};\n }\n\n [data-fs-brand=\"vibrant\"] .fs-check {\n --fs-check-mark: #{$color-black};\n }\n}\n","@use \"sass:color\";\n@use \"sass:map\";\n@use \"../settings\" as *;\n@use \"../tools\" as *;\n\n// Peso (% da cor original mantida, ver color.mix()) de cada cor de estado no\n// tema escuro. O limite de cada uma é o quanto dá pra clarear em direção ao\n// branco antes de virar o texto branco/preto que color-contrast() já\n// pré-calculou para os preenchimentos sólidos (botões, badges) no tema claro\n// — passar do limite deixaria esse texto ilegível. `primary` e `danger` têm\n// texto branco no preenchimento, então clareiam pouco (clarear reduz o\n// contraste com o branco); `info` não tem margem e fica sem alteração (100%).\n// Misturas em `$method: oklch` (ver tools/_mixins.scss) — recalibrado e\n// revalidado com `npm run contrast` após a migração para OKLCH.\n@layer tokens {\n $dark-color-weights: (\n primary: 95%,\n secondary: 90%,\n success: 65%,\n warning: 65%,\n danger: 95%,\n info: 100%\n ) !default;\n\n $dark-text: color.to-space(#f1f3f4, oklch) !default;\n $dark-muted: color.to-space(#bdc1c6, oklch) !default;\n $dark-border: color.to-space(#3c4043, oklch) !default;\n $dark-surface: color.to-space(#202124, oklch) !default;\n $dark-subtle: color.to-space(#2b2c2f, oklch) !default;\n\n // Pesos de alert/feedback bg+text no escuro: validados por\n // `npm run contrast` para ≥4.5:1 (texto normal) em todas as 6 cores —\n // não abaixe sem reconferir o relatório.\n $dark-alert-bg-weight: 15%;\n $dark-alert-text-weight: 55%;\n\n [data-theme=\"dark\"],\n [data-fs-theme=\"dark\"] {\n --fs-color-text: #{rgb-fallback($dark-text)};\n --fs-color-muted: #{rgb-fallback($dark-muted)};\n --fs-color-border: #{rgb-fallback($dark-border)};\n --fs-color-surface: #{rgb-fallback($dark-surface)};\n --fs-color-subtle: #{rgb-fallback($dark-subtle)};\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n --fs-shadow-sm: 0 1px 3px rgb(0 0 0 / 50%), 0 1px 2px rgb(0 0 0 / 40%);\n --fs-shadow-md: 0 6px 12px rgb(0 0 0 / 55%), 0 3px 6px rgb(0 0 0 / 45%);\n --fs-shadow-lg: 0 15px 30px rgb(0 0 0 / 60%), 0 6px 12px rgb(0 0 0 / 50%);\n --fs-tooltip-bg: #{rgb-fallback($color-gray-100)};\n --fs-tooltip-text: #{rgb-fallback($color-gray-900)};\n\n @each $name, $color in $theme-colors {\n --fs-color-#{$name}: #{rgb-fallback(color.mix($color, $color-white, map.get($dark-color-weights, $name), $method: oklch))};\n --fs-alert-#{$name}-bg: #{rgb-fallback(color.mix($color, $color-gray-900, $dark-alert-bg-weight, $method: oklch))};\n --fs-alert-#{$name}-text: #{rgb-fallback(color.mix($color, $color-white, $dark-alert-text-weight, $method: oklch))};\n --fs-feedback-#{$name}-bg: #{rgb-fallback(color.mix($color, $color-gray-900, $dark-alert-bg-weight, $method: oklch))};\n }\n }\n\n @supports (color: oklch(0% 0 0)) {\n [data-theme=\"dark\"],\n [data-fs-theme=\"dark\"] {\n --fs-color-text: #{$dark-text};\n --fs-color-muted: #{$dark-muted};\n --fs-color-border: #{$dark-border};\n --fs-color-surface: #{$dark-surface};\n --fs-color-subtle: #{$dark-subtle};\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-color-action-primary: var(--fs-color-primary);\n --fs-color-action-danger: var(--fs-color-danger);\n --fs-tooltip-bg: #{$color-gray-100};\n --fs-tooltip-text: #{$color-gray-900};\n\n @each $name, $color in $theme-colors {\n --fs-color-#{$name}: #{color.mix($color, $color-white, map.get($dark-color-weights, $name), $method: oklch)};\n --fs-alert-#{$name}-bg: #{color.mix($color, $color-gray-900, $dark-alert-bg-weight, $method: oklch)};\n --fs-alert-#{$name}-text: #{color.mix($color, $color-white, $dark-alert-text-weight, $method: oklch)};\n --fs-feedback-#{$name}-bg: #{color.mix($color, $color-gray-900, $dark-alert-bg-weight, $method: oklch)};\n }\n }\n }\n\n @media (prefers-color-scheme: dark) {\n [data-fs-theme=\"auto\"] {\n --fs-color-text: #{rgb-fallback($dark-text)};\n --fs-color-muted: #{rgb-fallback($dark-muted)};\n --fs-color-border: #{rgb-fallback($dark-border)};\n --fs-color-surface: #{rgb-fallback($dark-surface)};\n --fs-color-subtle: #{rgb-fallback($dark-subtle)};\n --fs-color-bg-surface: var(--fs-color-surface);\n --fs-color-bg-subtle: var(--fs-color-subtle);\n --fs-color-surface-raised: var(--fs-color-surface);\n --fs-color-surface-interactive: var(--fs-color-subtle);\n --fs-color-text-primary: var(--fs-color-text);\n --fs-color-text-muted: var(--fs-color-muted);\n --fs-color-border-default: var(--fs-color-border);\n --fs-color-focus: var(--fs-color-primary);\n --fs-tooltip-bg: #{rgb-fallback($color-gray-100)};\n --fs-tooltip-text: #{rgb-fallback($color-gray-900)};\n }\n }\n\n @media (forced-colors: active) {\n :root,\n [data-theme=\"dark\"],\n [data-fs-theme=\"light\"],\n [data-fs-theme=\"dark\"],\n [data-fs-theme=\"auto\"] {\n --fs-color-border: CanvasText;\n --fs-color-text: CanvasText;\n --fs-color-surface: Canvas;\n --fs-color-subtle: Canvas;\n --fs-focus-color: Highlight;\n }\n }\n}\n"]}