fokus-styles 2.0.0 → 2.4.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 (137) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +4 -3
  3. package/dist/css/components.css +532 -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 +4072 -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 +1585 -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 +314 -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-rtl.css +8552 -0
  20. package/dist/css/fokus-rtl.css.map +1 -0
  21. package/dist/css/fokus-rtl.min.css +2 -0
  22. package/dist/css/fokus-rtl.min.css.map +1 -0
  23. package/dist/css/fokus-utilities.css +4198 -0
  24. package/dist/css/fokus-utilities.css.map +1 -0
  25. package/dist/css/fokus-utilities.min.css +2 -0
  26. package/dist/css/fokus-utilities.min.css.map +1 -0
  27. package/dist/css/fokus.css +1361 -53
  28. package/dist/css/fokus.css.map +1 -1
  29. package/dist/css/fokus.min.css +1 -1
  30. package/dist/css/fokus.min.css.map +1 -1
  31. package/dist/css/forms.css +137 -2
  32. package/dist/css/forms.css.map +1 -1
  33. package/dist/css/forms.min.css +1 -1
  34. package/dist/css/forms.min.css.map +1 -1
  35. package/dist/css/helpers.css +398 -2
  36. package/dist/css/helpers.css.map +1 -1
  37. package/dist/css/helpers.min.css +1 -1
  38. package/dist/css/helpers.min.css.map +1 -1
  39. package/dist/css/layout.css +582 -2
  40. package/dist/css/layout.css.map +1 -1
  41. package/dist/css/layout.min.css +1 -1
  42. package/dist/css/layout.min.css.map +1 -1
  43. package/dist/js/fokus.js +347 -12
  44. package/dist/js/fokus.js.map +4 -4
  45. package/dist/js/fokus.min.js +17 -17
  46. package/dist/js/fokus.min.js.map +4 -4
  47. package/docs/components/accordion.md +3 -0
  48. package/docs/components/avatar.md +13 -0
  49. package/docs/components/button-group.md +13 -0
  50. package/docs/components/close-button.md +13 -0
  51. package/docs/components/code.md +13 -0
  52. package/docs/components/icon-link.md +13 -0
  53. package/docs/components/list-group.md +13 -0
  54. package/docs/components/modal.md +3 -0
  55. package/docs/components/navbar.md +3 -0
  56. package/docs/components/pagination.md +3 -0
  57. package/docs/components/placeholder.md +13 -0
  58. package/docs/components/ratio.md +13 -0
  59. package/docs/components/scrollspy.md +13 -0
  60. package/docs/components/skeleton.md +3 -0
  61. package/docs/components/table.md +3 -0
  62. package/docs/guides/javascript-api.md +9 -0
  63. package/docs/guides/rtl-and-system-preferences.md +28 -0
  64. package/docs/guides/utility-api.md +9 -0
  65. package/docs/reference/size-baseline.json +13 -13
  66. package/mockup/assets/example-theme.css +3 -1
  67. package/mockup/assets/example-theme.js +2 -0
  68. package/mockup/assets/showcase-contracts.js +2 -2
  69. package/mockup/assets/showcase.css +4 -2
  70. package/mockup/assets/showcase.js +2 -0
  71. package/mockup/examples/js-foundation.html +25 -0
  72. package/mockup/examples/tables-navbar.html +12 -8
  73. package/mockup/examples/theming.html +2 -1
  74. package/mockup/foundations.html +2 -2
  75. package/package.json +15 -1
  76. package/packages/fokus-cli/bin/fokus.mjs +18 -1
  77. package/packages/fokus-cli/lib/build.mjs +12 -2
  78. package/packages/fokus-components/scss/components/_accordion.scss +19 -0
  79. package/packages/fokus-components/scss/components/_avatar.scss +22 -0
  80. package/packages/fokus-components/scss/components/_button-group.scss +14 -0
  81. package/packages/fokus-components/scss/components/_close-button.scss +22 -0
  82. package/packages/fokus-components/scss/components/_code.scss +19 -0
  83. package/packages/fokus-components/scss/components/_icon-link.scss +8 -0
  84. package/packages/fokus-components/scss/components/_index.scss +10 -0
  85. package/packages/fokus-components/scss/components/_list-group.scss +26 -0
  86. package/packages/fokus-components/scss/components/_modal.scss +36 -0
  87. package/packages/fokus-components/scss/components/_navbar.scss +48 -0
  88. package/packages/fokus-components/scss/components/_offcanvas.scss +19 -0
  89. package/packages/fokus-components/scss/components/_pagination.scss +10 -0
  90. package/packages/fokus-components/scss/components/_placeholder.scss +13 -0
  91. package/packages/fokus-components/scss/components/_progress.scss +8 -0
  92. package/packages/fokus-components/scss/components/_ratio.scss +10 -0
  93. package/packages/fokus-components/scss/components/_scrollspy.scss +5 -0
  94. package/packages/fokus-components/scss/components/_skeleton.scss +19 -0
  95. package/packages/fokus-components/scss/components/_spinner.scss +9 -53
  96. package/packages/fokus-components/scss/components/_tables.scss +20 -0
  97. package/packages/fokus-components/scss/forms/_forms.scss +29 -0
  98. package/packages/fokus-core/scss/base/_accessibility.scss +59 -0
  99. package/packages/fokus-core/scss/base/_index.scss +1 -0
  100. package/packages/fokus-core/scss/layout/_grid.scss +18 -0
  101. package/packages/fokus-core/scss/settings/_config.scss +43 -0
  102. package/packages/fokus-core/scss/settings/_index.scss +1 -0
  103. package/packages/fokus-core/scss/themes/_dark.scss +38 -2
  104. package/packages/fokus-core/scss/tokens/_root.scss +25 -0
  105. package/packages/fokus-core/scss/tools/_mixins.scss +8 -0
  106. package/packages/fokus-js/js/accordion.js +7 -1
  107. package/packages/fokus-js/js/core/focus.js +20 -0
  108. package/packages/fokus-js/js/core/overlay.d.ts +2 -0
  109. package/packages/fokus-js/js/core/overlay.js +10 -0
  110. package/packages/fokus-js/js/core/register.js +4 -2
  111. package/packages/fokus-js/js/focus-trap.d.ts +3 -0
  112. package/packages/fokus-js/js/focus-trap.js +1 -0
  113. package/packages/fokus-js/js/fokus.d.ts +7 -0
  114. package/packages/fokus-js/js/fokus.js +7 -0
  115. package/packages/fokus-js/js/form-validation.d.ts +7 -0
  116. package/packages/fokus-js/js/form-validation.js +20 -0
  117. package/packages/fokus-js/js/modal.js +16 -2
  118. package/packages/fokus-js/js/navbar.d.ts +10 -0
  119. package/packages/fokus-js/js/navbar.js +27 -0
  120. package/packages/fokus-js/js/offcanvas.d.ts +4 -0
  121. package/packages/fokus-js/js/offcanvas.js +16 -2
  122. package/packages/fokus-js/js/pagination.d.ts +7 -0
  123. package/packages/fokus-js/js/pagination.js +38 -0
  124. package/packages/fokus-js/js/scrollspy.d.ts +7 -0
  125. package/packages/fokus-js/js/scrollspy.js +26 -0
  126. package/packages/fokus-js/js/spinner.d.ts +9 -0
  127. package/packages/fokus-js/js/spinner.js +18 -0
  128. package/packages/fokus-js/js/theme.d.ts +9 -0
  129. package/packages/fokus-js/js/theme.js +19 -0
  130. package/packages/fokus-js/js/toast.js +4 -0
  131. package/packages/fokus-utilities/scss/utilities/_api.scss +48 -0
  132. package/packages/fokus-utilities/scss/utilities/_index.scss +2 -0
  133. package/packages/fokus-utilities/scss/utilities/_states.scss +19 -0
  134. package/packages/fokus-utilities/scss/utilities/_visibility.scss +24 -0
  135. package/scss/entries/core-entry.scss +5 -0
  136. package/scss/entries/dark-entry.scss +3 -0
  137. package/scss/entries/rtl-entry.scss +11 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_datatable.scss","../../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/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/_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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I,aACE,aAAA,CACA,SVqbN,CUvbI,aACE,aAAA,CACA,oBVybN,CU3bI,aACE,aAAA,CACA,oBV6bN,CU/bI,aACE,aAAA,CACA,SVicN,CUncI,cACE,aAAA,CACA,oBVqcN,CUvcI,cACE,aAAA,CACA,oBVycN,CU3cI,cACE,aAAA,CACA,UV6cN,CACF,CS5eE,0BCkBE,WACE,WV6dJ,CU1dE,gBACE,aAAA,CACA,UV4dJ,CUxdI,aACE,aAAA,CACA,mBV0dN,CU5dI,aACE,aAAA,CACA,oBV8dN,CUheI,aACE,aAAA,CACA,SVkeN,CUpeI,aACE,aAAA,CACA,oBVseN,CUxeI,aACE,aAAA,CACA,oBV0eN,CU5eI,aACE,aAAA,CACA,SV8eN,CUhfI,aACE,aAAA,CACA,oBVkfN,CUpfI,aACE,aAAA,CACA,oBVsfN,CUxfI,aACE,aAAA,CACA,SV0fN,CU5fI,cACE,aAAA,CACA,oBV8fN,CUhgBI,cACE,aAAA,CACA,oBVkgBN,CUpgBI,cACE,aAAA,CACA,UVsgBN,CACF,CSriBE,0BCkBE,WACE,WVshBJ,CUnhBE,gBACE,aAAA,CACA,UVqhBJ,CUjhBI,aACE,aAAA,CACA,mBVmhBN,CUrhBI,aACE,aAAA,CACA,oBVuhBN,CUzhBI,aACE,aAAA,CACA,SV2hBN,CU7hBI,aACE,aAAA,CACA,oBV+hBN,CUjiBI,aACE,aAAA,CACA,oBVmiBN,CUriBI,aACE,aAAA,CACA,SVuiBN,CUziBI,aACE,aAAA,CACA,oBV2iBN,CU7iBI,aACE,aAAA,CACA,oBV+iBN,CUjjBI,aACE,aAAA,CACA,SVmjBN,CUrjBI,cACE,aAAA,CACA,oBVujBN,CUzjBI,cACE,aAAA,CACA,oBV2jBN,CU7jBI,cACE,aAAA,CACA,UV+jBN,CACF,CS9lBE,0BCkBE,YACE,WV+kBJ,CU5kBE,iBACE,aAAA,CACA,UV8kBJ,CU1kBI,cACE,aAAA,CACA,mBV4kBN,CU9kBI,cACE,aAAA,CACA,oBVglBN,CUllBI,cACE,aAAA,CACA,SVolBN,CUtlBI,cACE,aAAA,CACA,oBVwlBN,CU1lBI,cACE,aAAA,CACA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pD28IF,CoDt8IA,iCARE,QAAA,C3CFF,eAAA,CACA,sBAAA,CACA,kBTs9IA,CoD98IA,kBAEE,2BAAA,CACA,gBpD28IF,CoDt8IA,iBACE,YAAA,CACA,aAAA,CACA,kBAAA,CACA,OpDw8IF,CoDl8IA,wBACE,cpDo8IF,CoDj8IA,yCACE,eAAA,CACA,wBAAA,CACA,cpDm8IF,CoD97IA,mBACE,oEpDg8IF,CoD77IA,yDAEE,oCAAA,CACA,8BpD+7IF,CoD57IA,YACE,OAAA,CACA,WpD87IF,CoD37IA,0BACE,UAAA,CACA,WAAA,CACA,kBpD67IF,CoD17IA,2BACE,gBpD47IF,CoDz7IA,8BACE,kBpD27IF,CoDx7IA,YACE,QAAA,CACA,YpD07IF,CoDv7IA,0BACE,UAAA,CACA,WAAA,CACA,iBpDy7IF,CoDt7IA,2BACE,cpDw7IF,CA1PF,CiD/yIA,kBjDozIA,CkD9yIA,kBlD06IA,CmD16IA,kBnDs8IA,CoDz8IA,kBpDuiJA,CqDziJA,iBAGE,SACE,0BrDyiJF,CqDriJE,8BACE,mBACE,YrDuiJJ,CqDpiJE,oBACE,arDsiJJ,CqDniJE,2BACE,oBrDqiJJ,CqDliJE,mBACE,YrDoiJJ,CACF,CqDnjJE,8BACE,mBACE,YrDqjJJ,CqDljJE,oBACE,arDojJJ,CqDjjJE,2BACE,oBrDmjJJ,CqDhjJE,mBACE,YrDkjJJ,CACF,CqDjkJE,8BACE,mBACE,YrDmkJJ,CqDhkJE,oBACE,arDkkJJ,CqD/jJE,2BACE,oBrDikJJ,CqD9jJE,mBACE,YrDgkJJ,CACF,CACF,CsD9lJA,iBACE,aACE,YtDgmJF,CsD7lJA,cACE,atD+lJF,CsD5lJA,eACE,ctD8lJF,CsD3lJA,qBACE,oBtD6lJF,CsD1lJA,aACE,YtD4lJF,CuDtmJI,wBACE,sBvD0mJN,CuDvmJI,yBACE,kBvDymJN,CuDtmJI,sBACE,oBvDwmJN,CuDrmJI,4BACE,0BvDumJN,CuDpmJI,6BACE,sBvDsmJN,CuDnmJI,0BACE,wBvDqmJN,CuDlmJI,6BACE,4BvDomJN,CuDjmJI,8BACE,6BvDmmJN,CuDhmJI,uBACE,qBvDkmJN,CuD/lJI,wBACE,iBvDimJN,CuD9lJI,qBACE,mBvDgmJN,CAlCF,CuD5mJA,iB9CYI,yB8CPE,2BACE,sBvD4oJJ,CuDzoJE,4BACE,kBvD2oJJ,CuDxoJE,yBACE,oBvD0oJJ,CuDvoJE,+BACE,0BvDyoJJ,CuDtoJE,gCACE,sBvDwoJJ,CuDroJE,6BACE,wBvDuoJJ,CuDpoJE,gCACE,4BvDsoJJ,CuDnoJE,iCACE,6BvDqoJJ,CuDloJE,0BACE,qBvDooJJ,CuDjoJE,2BACE,iBvDmoJJ,CuDhoJE,wBACE,mBvDkoJJ,CACF,CSrqJE,yB8CPE,2BACE,sBvD+qJJ,CuD5qJE,4BACE,kBvD8qJJ,CuD3qJE,yBACE,oBvD6qJJ,CuD1qJE,+BACE,0BvD4qJJ,CuDzqJE,gCACE,sBvD2qJJ,CuDxqJE,6BACE,wBvD0qJJ,CuDvqJE,gCACE,4BvDyqJJ,CuDtqJE,iCACE,6BvDwqJJ,CuDrqJE,0BACE,qBvDuqJJ,CuDpqJE,2BACE,iBvDsqJJ,CuDnqJE,wBACE,mBvDqqJJ,CACF,CSxsJE,0B8CPE,2BACE,sBvDktJJ,CuD/sJE,4BACE,kBvDitJJ,CuD9sJE,yBACE,oBvDgtJJ,CuD7sJE,+BACE,0BvD+sJJ,CuD5sJE,gCACE,sBvD8sJJ,CuD3sJE,6BACE,wBvD6sJJ,CuD1sJE,gCACE,4BvD4sJJ,CuDzsJE,iCACE,6BvD2sJJ,CuDxsJE,0BACE,qBvD0sJJ,CuDvsJE,2BACE,iBvDysJJ,CuDtsJE,wBACE,mBvDwsJJ,CACF,CS3uJE,0B8CPE,2BACE,sBvDqvJJ,CuDlvJE,4BACE,kBvDovJJ,CuDjvJE,yBACE,oBvDmvJJ,CuDhvJE,+BACE,0BvDkvJJ,CuD/uJE,gCACE,sBvDivJJ,CuD9uJE,6BACE,wBvDgvJJ,CuD7uJE,gCACE,4BvD+uJJ,CuD5uJE,iCACE,6BvD8uJJ,CuD3uJE,0BACE,qBvD6uJJ,CuD1uJE,2BACE,iBvD4uJJ,CuDzuJE,wBACE,mBvD2uJJ,CACF,CS9wJE,0B8CPE,4BACE,sBvDwxJJ,CuDrxJE,6BACE,kBvDuxJJ,CuDpxJE,0BACE,oBvDsxJJ,CuDnxJE,gCACE,0BvDqxJJ,CuDlxJE,iCACE,sBvDoxJJ,CuDjxJE,8BACE,wBvDmxJJ,CuDhxJE,iCACE,4BvDkxJJ,CuD/wJE,kCACE,6BvDixJJ,CuD9wJE,2BACE,qBvDgxJJ,CuD7wJE,4BACE,iBvD+wJJ,CuD5wJE,yBACE,mBvD8wJJ,CACF,CSjzJE,0B8CPE,6BACE,sBvD2zJJ,CuDxzJE,8BACE,kBvD0zJJ,CuDvzJE,2BACE,oBvDyzJJ,CuDtzJE,iCACE,0BvDwzJJ,CuDrzJE,kCACE,sBvDuzJJ,CuDpzJE,+BACE,wBvDszJJ,CuDnzJE,kCACE,4BvDqzJJ,CuDlzJE,mCACE,6BvDozJJ,CuDjzJE,4BACE,qBvDmzJJ,CuDhzJE,6BACE,iBvDkzJJ,CuD/yJE,0BACE,mBvDizJJ,CACF,CACF,CwD31JA,iBACE,SACE,oBAAA,CACA,aAAA,CACA,SAAA,CACA,UAAA,CACA,sBAAA,CACA,mBxD61JF,CwD11JA,YACE,UAAA,CACA,WxD41JF,CwDz1JA,YACE,UAAA,CACA,WxD21JF,CwDx1JA,YACE,UAAA,CACA,WxD01JF,CwDv1JA,YACE,UAAA,CACA,WxDy1JF,CyDz3JA,iBACE,eAAA,CACA,0BAAA,CACA,YzD63JF,CyD13JA,oBACE,eAAA,CACA,gCAAA,CACA,YzD43JF,CAXF,CyD33JA,iBzDu4JA,C0D14JA,iBACE,aACE,iBACE,sB1D44JF,CACF,C0Dz4JA,iBACE,iBACE,sB1D24JF,CACF,C0Dx4JA,aACE,kBACE,uB1D04JF,C0Dv4JA,mBACE,wB1Dy4JF,C0Dt4JA,yBACE,8B1Dw4JF,CACF,CACF,C2Dj6JA,iBACE,gBACE,8B3Dm6JF,C2Dh6JA,aACE,8B3Dk6JF,C2D/5JA,gBACE,8B3Di6JF,C4Dl6JM,UACE,Q5Ds6JR,C4Dn6JM,WACE,Y5Dq6JR,C4Dl6JM,WACE,c5Do6JR,C4Dj6JM,WACE,e5Dm6JR,C4D55JM,sBAHE,a5Ds6JR,C4Dn6JM,WACE,c5Dk6JR,C4D95JM,WACE,YCnCA,CDoCA,e5Dg6JR,C4D75JM,UACE,S5D+5JR,C4D55JM,WACE,a5D85JR,C4D35JM,WACE,e5D65JR,C4D15JM,WACE,gB5D45JR,C4Dr5JM,sBAHE,c5D+5JR,C4D55JM,WACE,e5D25JR,C4Dv5JM,WACE,aCjEA,CDkEA,gB5Dy5JR,C4Dr5JM,UACE,eAAA,CACA,e5Du5JR,C4Dp5JM,WACE,e5Ds5JR,C4Dn5JM,WACE,e5Dq5JR,C4Dj5JM,YACE,K5Dm5JR,C4Dh5JM,cACE,Y5Dk5JR,C4D/4JM,cACE,S5Di5JR,C4Dr+JM,UACE,a5Du+JR,C4Dp+JM,WACE,iB5Ds+JR,C4Dn+JM,WACE,mB5Dq+JR,C4Dl+JM,WACE,oB5Do+JR,C4D79JM,sBAHE,kB5Du+JR,C4Dp+JM,WACE,mB5Dm+JR,C4D/9JM,WACE,iBCnCA,CDoCA,oB5Di+JR,C4D99JM,UACE,c5Dg+JR,C4D79JM,WACE,kB5D+9JR,C4D59JM,WACE,oB5D89JR,C4D39JM,WACE,qB5D69JR,C4Dt9JM,sBAHE,mB5Dg+JR,C4D79JM,WACE,oB5D49JR,C4Dx9JM,WACE,kBCjEA,CDkEA,qB5D09JR,C4Dt9JM,UACE,qBAAA,CACA,qB5Dw9JR,C4Dr9JM,WACE,qB5Du9JR,C4Dp9JM,WACE,qB5Ds9JR,C4Dl9JM,YACE,U5Do9JR,C4Dj9JM,cACE,iB5Dm9JR,C4Dh9JM,cACE,c5Dk9JR,C4DtiKM,UACE,Y5DwiKR,C4DriKM,WACE,gB5DuiKR,C4DpiKM,WACE,kB5DsiKR,C4DniKM,WACE,mB5DqiKR,C4D9hKM,sBAHE,iB5DwiKR,C4DriKM,WACE,kB5DoiKR,C4DhiKM,WACE,gBCnCA,CDoCA,mB5DkiKR,C4D/hKM,UACE,a5DiiKR,C4D9hKM,WACE,iB5DgiKR,C4D7hKM,WACE,mB5D+hKR,C4D5hKM,WACE,oB5D8hKR,C4DvhKM,sBAHE,kB5DiiKR,C4D9hKM,WACE,mB5D6hKR,C4DzhKM,WACE,iBCjEA,CDkEA,oB5D2hKR,C4DvhKM,UACE,oBAAA,CACA,oB5DyhKR,C4DthKM,WACE,oB5DwhKR,C4DrhKM,WACE,oB5DuhKR,C4DnhKM,YACE,S5DqhKR,C4DlhKM,cACE,gB5DohKR,C4DjhKM,cACE,a5DmhKR,C4DvmKM,UACE,W5DymKR,C4DtmKM,WACE,e5DwmKR,C4DrmKM,WACE,iB5DumKR,C4DpmKM,WACE,kB5DsmKR,C4D/lKM,sBAHE,gB5DymKR,C4DtmKM,WACE,iB5DqmKR,C4DjmKM,WACE,eCnCA,CDoCA,kB5DmmKR,C4DhmKM,UACE,Y5DkmKR,C4D/lKM,WACE,gB5DimKR,C4D9lKM,WACE,kB5DgmKR,C4D7lKM,WACE,mB5D+lKR,C4DxlKM,sBAHE,iB5DkmKR,C4D/lKM,WACE,kB5D8lKR,C4D1lKM,WACE,gBCjEA,CDkEA,mB5D4lKR,C4DxlKM,UACE,kBAAA,CACA,kB5D0lKR,C4DvlKM,WACE,kB5DylKR,C4DtlKM,WACE,kB5DwlKR,C4DplKM,YACE,Q5DslKR,C4DnlKM,cACE,e5DqlKR,C4DllKM,cACE,Y5DolKR,C4DxqKM,UACE,a5D0qKR,C4DvqKM,WACE,iB5DyqKR,C4DtqKM,WACE,mB5DwqKR,C4DrqKM,WACE,oB5DuqKR,C4DhqKM,sBAHE,kB5D0qKR,C4DvqKM,WACE,mB5DsqKR,C4DlqKM,WACE,iBCnCA,CDoCA,oB5DoqKR,C4DjqKM,UACE,c5DmqKR,C4DhqKM,WACE,kB5DkqKR,C4D/pKM,WACE,oB5DiqKR,C4D9pKM,WACE,qB5DgqKR,C4DzpKM,sBAHE,mB5DmqKR,C4DhqKM,WACE,oB5D+pKR,C4D3pKM,WACE,kBCjEA,CDkEA,qB5D6pKR,C4DzpKM,UACE,oBAAA,CACA,oB5D2pKR,C4DxpKM,WACE,oB5D0pKR,C4DvpKM,WACE,oB5DypKR,C4DrpKM,YACE,U5DupKR,C4DppKM,cACE,iB5DspKR,C4DnpKM,cACE,c5DqpKR,C4DzuKM,UACE,W5D2uKR,C4DxuKM,WACE,e5D0uKR,C4DvuKM,WACE,iB5DyuKR,C4DtuKM,WACE,kB5DwuKR,C4DjuKM,sBAHE,gB5D2uKR,C4DxuKM,WACE,iB5DuuKR,C4DnuKM,WACE,eCnCA,CDoCA,kB5DquKR,C4DluKM,UACE,Y5DouKR,C4DjuKM,WACE,gB5DmuKR,C4DhuKM,WACE,kB5DkuKR,C4D/tKM,WACE,mB5DiuKR,C4D1tKM,sBAHE,iB5DouKR,C4DjuKM,WACE,kB5DguKR,C4D5tKM,WACE,gBCjEA,CDkEA,mB5D8tKR,C4D1tKM,UACE,kBAAA,CACA,kB5D4tKR,C4DztKM,WACE,kB5D2tKR,C4DxtKM,WACE,kB5D0tKR,C4DttKM,YACE,Q5DwtKR,C4DrtKM,cACE,e5DutKR,C4DptKM,cACE,Y5DstKR,C4DltKI,aACE,W5DotKN,C4DjtKI,cACE,e5DmtKN,C4DhtKI,cACE,iB5DktKN,C4D/sKI,cACE,kB5DitKN,C4D1sKI,4BAHE,gB5DotKN,C4DjtKI,cACE,iB5DgtKN,C4D5sKI,cACE,eAAA,CACA,kB5D8sKN,CA9ZF,C4Dz6JA,iBnDYI,yBmDNI,aACE,Q5Do0KN,C4Dj0KI,cACE,Y5Dm0KN,C4Dh0KI,cACE,c5Dk0KN,C4D/zKI,cACE,e5Di0KN,C4D9zKI,cACE,a5Dg0KN,C4D7zKI,cACE,cC9BA,CD+BA,a5D+zKN,C4D5zKI,cACE,YCnCA,CDoCA,e5D8zKN,C4D3zKI,aACE,S5D6zKN,C4D1zKI,cACE,a5D4zKN,C4DzzKI,cACE,e5D2zKN,C4DxzKI,cACE,gB5D0zKN,C4DnzKI,4BAHE,c5D6zKN,C4D1zKI,cACE,e5DyzKN,C4DrzKI,cACE,aCjEA,CDkEA,gB5DuzKN,C4DnzKI,aACE,eAAA,CACA,e5DqzKN,C4DlzKI,cACE,e5DozKN,C4DjzKI,cACE,e5DmzKN,C4D/yKI,eACE,K5DizKN,C4D9yKI,iBACE,Y5DgzKN,C4D7yKI,iBACE,S5D+yKN,C4Dn4KI,aACE,a5Dq4KN,C4Dl4KI,cACE,iB5Do4KN,C4Dj4KI,cACE,mB5Dm4KN,C4Dh4KI,cACE,oB5Dk4KN,C4D33KI,4BAHE,kB5Dq4KN,C4Dl4KI,cACE,mB5Di4KN,C4D73KI,cACE,iBCnCA,CDoCA,oB5D+3KN,C4D53KI,aACE,c5D83KN,C4D33KI,cACE,kB5D63KN,C4D13KI,cACE,oB5D43KN,C4Dz3KI,cACE,qB5D23KN,C4Dp3KI,4BAHE,mB5D83KN,C4D33KI,cACE,oB5D03KN,C4Dt3KI,cACE,kBCjEA,CDkEA,qB5Dw3KN,C4Dp3KI,aACE,qBAAA,CACA,qB5Ds3KN,C4Dn3KI,cACE,qB5Dq3KN,C4Dl3KI,cACE,qB5Do3KN,C4Dh3KI,eACE,U5Dk3KN,C4D/2KI,iBACE,iB5Di3KN,C4D92KI,iBACE,c5Dg3KN,C4Dp8KI,aACE,Y5Ds8KN,C4Dn8KI,cACE,gB5Dq8KN,C4Dl8KI,cACE,kB5Do8KN,C4Dj8KI,cACE,mB5Dm8KN,C4D57KI,4BAHE,iB5Ds8KN,C4Dn8KI,cACE,kB5Dk8KN,C4D97KI,cACE,gBCnCA,CDoCA,mB5Dg8KN,C4D77KI,aACE,a5D+7KN,C4D57KI,cACE,iB5D87KN,C4D37KI,cACE,mB5D67KN,C4D17KI,cACE,oB5D47KN,C4Dr7KI,4BAHE,kB5D+7KN,C4D57KI,cACE,mB5D27KN,C4Dv7KI,cACE,iBCjEA,CDkEA,oB5Dy7KN,C4Dr7KI,aACE,oBAAA,CACA,oB5Du7KN,C4Dp7KI,cACE,oB5Ds7KN,C4Dn7KI,cACE,oB5Dq7KN,C4Dj7KI,eACE,S5Dm7KN,C4Dh7KI,iBACE,gB5Dk7KN,C4D/6KI,iBACE,a5Di7KN,C4DrgLI,aACE,W5DugLN,C4DpgLI,cACE,e5DsgLN,C4DngLI,cACE,iB5DqgLN,C4DlgLI,cACE,kB5DogLN,C4D7/KI,4BAHE,gB5DugLN,C4DpgLI,cACE,iB5DmgLN,C4D//KI,cACE,eCnCA,CDoCA,kB5DigLN,C4D9/KI,aACE,Y5DggLN,C4D7/KI,cACE,gB5D+/KN,C4D5/KI,cACE,kB5D8/KN,C4D3/KI,cACE,mB5D6/KN,C4Dt/KI,4BAHE,iB5DggLN,C4D7/KI,cACE,kB5D4/KN,C4Dx/KI,cACE,gBCjEA,CDkEA,mB5D0/KN,C4Dt/KI,aACE,kBAAA,CACA,kB5Dw/KN,C4Dr/KI,cACE,kB5Du/KN,C4Dp/KI,cACE,kB5Ds/KN,C4Dl/KI,eACE,Q5Do/KN,C4Dj/KI,iBACE,e5Dm/KN,C4Dh/KI,iBACE,Y5Dk/KN,C4DtkLI,aACE,a5DwkLN,C4DrkLI,cACE,iB5DukLN,C4DpkLI,cACE,mB5DskLN,C4DnkLI,cACE,oB5DqkLN,C4D9jLI,4BAHE,kB5DwkLN,C4DrkLI,cACE,mB5DokLN,C4DhkLI,cACE,iBCnCA,CDoCA,oB5DkkLN,C4D/jLI,aACE,c5DikLN,C4D9jLI,cACE,kB5DgkLN,C4D7jLI,cACE,oB5D+jLN,C4D5jLI,cACE,qB5D8jLN,C4DvjLI,4BAHE,mB5DikLN,C4D9jLI,cACE,oB5D6jLN,C4DzjLI,cACE,kBCjEA,CDkEA,qB5D2jLN,C4DvjLI,aACE,oBAAA,CACA,oB5DyjLN,C4DtjLI,cACE,oB5DwjLN,C4DrjLI,cACE,oB5DujLN,C4DnjLI,eACE,U5DqjLN,C4DljLI,iBACE,iB5DojLN,C4DjjLI,iBACE,c5DmjLN,C4DvoLI,aACE,W5DyoLN,C4DtoLI,cACE,e5DwoLN,C4DroLI,cACE,iB5DuoLN,C4DpoLI,cACE,kB5DsoLN,C4D/nLI,4BAHE,gB5DyoLN,C4DtoLI,cACE,iB5DqoLN,C4DjoLI,cACE,eCnCA,CDoCA,kB5DmoLN,C4DhoLI,aACE,Y5DkoLN,C4D/nLI,cACE,gB5DioLN,C4D9nLI,cACE,kB5DgoLN,C4D7nLI,cACE,mB5D+nLN,C4DxnLI,4BAHE,iB5DkoLN,C4D/nLI,cACE,kB5D8nLN,C4D1nLI,cACE,gBCjEA,CDkEA,mB5D4nLN,C4DxnLI,aACE,kBAAA,CACA,kB5D0nLN,C4DvnLI,cACE,kB5DynLN,C4DtnLI,cACE,kB5DwnLN,C4DpnLI,eACE,Q5DsnLN,C4DnnLI,iBACE,e5DqnLN,C4DlnLI,iBACE,Y5DonLN,C4DhnLE,gBACE,W5DknLJ,C4D/mLE,iBACE,e5DinLJ,C4D9mLE,iBACE,iB5DgnLJ,C4D7mLE,iBACE,kB5D+mLJ,C4D5mLE,iBACE,gB5D8mLJ,C4D3mLE,iBACE,iBAAA,CACA,gB5D6mLJ,C4D1mLE,iBACE,eAAA,CACA,kB5D4mLJ,CACF,CS1tLE,yBmDNI,aACE,Q5DmuLN,C4DhuLI,cACE,Y5DkuLN,C4D/tLI,cACE,c5DiuLN,C4D9tLI,cACE,e5DguLN,C4D7tLI,cACE,a5D+tLN,C4D5tLI,cACE,cC9BA,CD+BA,a5D8tLN,C4D3tLI,cACE,YCnCA,CDoCA,e5D6tLN,C4D1tLI,aACE,S5D4tLN,C4DztLI,cACE,a5D2tLN,C4DxtLI,cACE,e5D0tLN,C4DvtLI,cACE,gB5DytLN,C4DltLI,4BAHE,c5D4tLN,C4DztLI,cACE,e5DwtLN,C4DptLI,cACE,aCjEA,CDkEA,gB5DstLN,C4DltLI,aACE,eAAA,CACA,e5DotLN,C4DjtLI,cACE,e5DmtLN,C4DhtLI,cACE,e5DktLN,C4D9sLI,eACE,K5DgtLN,C4D7sLI,iBACE,Y5D+sLN,C4D5sLI,iBACE,S5D8sLN,C4DlyLI,aACE,a5DoyLN,C4DjyLI,cACE,iB5DmyLN,C4DhyLI,cACE,mB5DkyLN,C4D/xLI,cACE,oB5DiyLN,C4D1xLI,4BAHE,kB5DoyLN,C4DjyLI,cACE,mB5DgyLN,C4D5xLI,cACE,iBCnCA,CDoCA,oB5D8xLN,C4D3xLI,aACE,c5D6xLN,C4D1xLI,cACE,kB5D4xLN,C4DzxLI,cACE,oB5D2xLN,C4DxxLI,cACE,qB5D0xLN,C4DnxLI,4BAHE,mB5D6xLN,C4D1xLI,cACE,oB5DyxLN,C4DrxLI,cACE,kBCjEA,CDkEA,qB5DuxLN,C4DnxLI,aACE,qBAAA,CACA,qB5DqxLN,C4DlxLI,cACE,qB5DoxLN,C4DjxLI,cACE,qB5DmxLN,C4D/wLI,eACE,U5DixLN,C4D9wLI,iBACE,iB5DgxLN,C4D7wLI,iBACE,c5D+wLN,C4Dn2LI,aACE,Y5Dq2LN,C4Dl2LI,cACE,gB5Do2LN,C4Dj2LI,cACE,kB5Dm2LN,C4Dh2LI,cACE,mB5Dk2LN,C4D31LI,4BAHE,iB5Dq2LN,C4Dl2LI,cACE,kB5Di2LN,C4D71LI,cACE,gBCnCA,CDoCA,mB5D+1LN,C4D51LI,aACE,a5D81LN,C4D31LI,cACE,iB5D61LN,C4D11LI,cACE,mB5D41LN,C4Dz1LI,cACE,oB5D21LN,C4Dp1LI,4BAHE,kB5D81LN,C4D31LI,cACE,mB5D01LN,C4Dt1LI,cACE,iBCjEA,CDkEA,oB5Dw1LN,C4Dp1LI,aACE,oBAAA,CACA,oB5Ds1LN,C4Dn1LI,cACE,oB5Dq1LN,C4Dl1LI,cACE,oB5Do1LN,C4Dh1LI,eACE,S5Dk1LN,C4D/0LI,iBACE,gB5Di1LN,C4D90LI,iBACE,a5Dg1LN,C4Dp6LI,aACE,W5Ds6LN,C4Dn6LI,cACE,e5Dq6LN,C4Dl6LI,cACE,iB5Do6LN,C4Dj6LI,cACE,kB5Dm6LN,C4D55LI,4BAHE,gB5Ds6LN,C4Dn6LI,cACE,iB5Dk6LN,C4D95LI,cACE,eCnCA,CDoCA,kB5Dg6LN,C4D75LI,aACE,Y5D+5LN,C4D55LI,cACE,gB5D85LN,C4D35LI,cACE,kB5D65LN,C4D15LI,cACE,mB5D45LN,C4Dr5LI,4BAHE,iB5D+5LN,C4D55LI,cACE,kB5D25LN,C4Dv5LI,cACE,gBCjEA,CDkEA,mB5Dy5LN,C4Dr5LI,aACE,kBAAA,CACA,kB5Du5LN,C4Dp5LI,cACE,kB5Ds5LN,C4Dn5LI,cACE,kB5Dq5LN,C4Dj5LI,eACE,Q5Dm5LN,C4Dh5LI,iBACE,e5Dk5LN,C4D/4LI,iBACE,Y5Di5LN,C4Dr+LI,aACE,a5Du+LN,C4Dp+LI,cACE,iB5Ds+LN,C4Dn+LI,cACE,mB5Dq+LN,C4Dl+LI,cACE,oB5Do+LN,C4D79LI,4BAHE,kB5Du+LN,C4Dp+LI,cACE,mB5Dm+LN,C4D/9LI,cACE,iBCnCA,CDoCA,oB5Di+LN,C4D99LI,aACE,c5Dg+LN,C4D79LI,cACE,kB5D+9LN,C4D59LI,cACE,oB5D89LN,C4D39LI,cACE,qB5D69LN,C4Dt9LI,4BAHE,mB5Dg+LN,C4D79LI,cACE,oB5D49LN,C4Dx9LI,cACE,kBCjEA,CDkEA,qB5D09LN,C4Dt9LI,aACE,oBAAA,CACA,oB5Dw9LN,C4Dr9LI,cACE,oB5Du9LN,C4Dp9LI,cACE,oB5Ds9LN,C4Dl9LI,eACE,U5Do9LN,C4Dj9LI,iBACE,iB5Dm9LN,C4Dh9LI,iBACE,c5Dk9LN,C4DtiMI,aACE,W5DwiMN,C4DriMI,cACE,e5DuiMN,C4DpiMI,cACE,iB5DsiMN,C4DniMI,cACE,kB5DqiMN,C4D9hMI,4BAHE,gB5DwiMN,C4DriMI,cACE,iB5DoiMN,C4DhiMI,cACE,eCnCA,CDoCA,kB5DkiMN,C4D/hMI,aACE,Y5DiiMN,C4D9hMI,cACE,gB5DgiMN,C4D7hMI,cACE,kB5D+hMN,C4D5hMI,cACE,mB5D8hMN,C4DvhMI,4BAHE,iB5DiiMN,C4D9hMI,cACE,kB5D6hMN,C4DzhMI,cACE,gBCjEA,CDkEA,mB5D2hMN,C4DvhMI,aACE,kBAAA,CACA,kB5DyhMN,C4DthMI,cACE,kB5DwhMN,C4DrhMI,cACE,kB5DuhMN,C4DnhMI,eACE,Q5DqhMN,C4DlhMI,iBACE,e5DohMN,C4DjhMI,iBACE,Y5DmhMN,C4D/gME,gBACE,W5DihMJ,C4D9gME,iBACE,e5DghMJ,C4D7gME,iBACE,iB5D+gMJ,C4D5gME,iBACE,kB5D8gMJ,C4D3gME,iBACE,gB5D6gMJ,C4D1gME,iBACE,iBAAA,CACA,gB5D4gMJ,C4DzgME,iBACE,eAAA,CACA,kB5D2gMJ,CACF,CSznME,0BmDNI,aACE,Q5DkoMN,C4D/nMI,cACE,Y5DioMN,C4D9nMI,cACE,c5DgoMN,C4D7nMI,cACE,e5D+nMN,C4D5nMI,cACE,a5D8nMN,C4D3nMI,cACE,cC9BA,CD+BA,a5D6nMN,C4D1nMI,cACE,YCnCA,CDoCA,e5D4nMN,C4DznMI,aACE,S5D2nMN,C4DxnMI,cACE,a5D0nMN,C4DvnMI,cACE,e5DynMN,C4DtnMI,cACE,gB5DwnMN,C4DjnMI,4BAHE,c5D2nMN,C4DxnMI,cACE,e5DunMN,C4DnnMI,cACE,aCjEA,CDkEA,gB5DqnMN,C4DjnMI,aACE,eAAA,CACA,e5DmnMN,C4DhnMI,cACE,e5DknMN,C4D/mMI,cACE,e5DinMN,C4D7mMI,eACE,K5D+mMN,C4D5mMI,iBACE,Y5D8mMN,C4D3mMI,iBACE,S5D6mMN,C4DjsMI,aACE,a5DmsMN,C4DhsMI,cACE,iB5DksMN,C4D/rMI,cACE,mB5DisMN,C4D9rMI,cACE,oB5DgsMN,C4DzrMI,4BAHE,kB5DmsMN,C4DhsMI,cACE,mB5D+rMN,C4D3rMI,cACE,iBCnCA,CDoCA,oB5D6rMN,C4D1rMI,aACE,c5D4rMN,C4DzrMI,cACE,kB5D2rMN,C4DxrMI,cACE,oB5D0rMN,C4DvrMI,cACE,qB5DyrMN,C4DlrMI,4BAHE,mB5D4rMN,C4DzrMI,cACE,oB5DwrMN,C4DprMI,cACE,kBCjEA,CDkEA,qB5DsrMN,C4DlrMI,aACE,qBAAA,CACA,qB5DorMN,C4DjrMI,cACE,qB5DmrMN,C4DhrMI,cACE,qB5DkrMN,C4D9qMI,eACE,U5DgrMN,C4D7qMI,iBACE,iB5D+qMN,C4D5qMI,iBACE,c5D8qMN,C4DlwMI,aACE,Y5DowMN,C4DjwMI,cACE,gB5DmwMN,C4DhwMI,cACE,kB5DkwMN,C4D/vMI,cACE,mB5DiwMN,C4D1vMI,4BAHE,iB5DowMN,C4DjwMI,cACE,kB5DgwMN,C4D5vMI,cACE,gBCnCA,CDoCA,mB5D8vMN,C4D3vMI,aACE,a5D6vMN,C4D1vMI,cACE,iB5D4vMN,C4DzvMI,cACE,mB5D2vMN,C4DxvMI,cACE,oB5D0vMN,C4DnvMI,4BAHE,kB5D6vMN,C4D1vMI,cACE,mB5DyvMN,C4DrvMI,cACE,iBCjEA,CDkEA,oB5DuvMN,C4DnvMI,aACE,oBAAA,CACA,oB5DqvMN,C4DlvMI,cACE,oB5DovMN,C4DjvMI,cACE,oB5DmvMN,C4D/uMI,eACE,S5DivMN,C4D9uMI,iBACE,gB5DgvMN,C4D7uMI,iBACE,a5D+uMN,C4Dn0MI,aACE,W5Dq0MN,C4Dl0MI,cACE,e5Do0MN,C4Dj0MI,cACE,iB5Dm0MN,C4Dh0MI,cACE,kB5Dk0MN,C4D3zMI,4BAHE,gB5Dq0MN,C4Dl0MI,cACE,iB5Di0MN,C4D7zMI,cACE,eCnCA,CDoCA,kB5D+zMN,C4D5zMI,aACE,Y5D8zMN,C4D3zMI,cACE,gB5D6zMN,C4D1zMI,cACE,kB5D4zMN,C4DzzMI,cACE,mB5D2zMN,C4DpzMI,4BAHE,iB5D8zMN,C4D3zMI,cACE,kB5D0zMN,C4DtzMI,cACE,gBCjEA,CDkEA,mB5DwzMN,C4DpzMI,aACE,kBAAA,CACA,kB5DszMN,C4DnzMI,cACE,kB5DqzMN,C4DlzMI,cACE,kB5DozMN,C4DhzMI,eACE,Q5DkzMN,C4D/yMI,iBACE,e5DizMN,C4D9yMI,iBACE,Y5DgzMN,C4Dp4MI,aACE,a5Ds4MN,C4Dn4MI,cACE,iB5Dq4MN,C4Dl4MI,cACE,mB5Do4MN,C4Dj4MI,cACE,oB5Dm4MN,C4D53MI,4BAHE,kB5Ds4MN,C4Dn4MI,cACE,mB5Dk4MN,C4D93MI,cACE,iBCnCA,CDoCA,oB5Dg4MN,C4D73MI,aACE,c5D+3MN,C4D53MI,cACE,kB5D83MN,C4D33MI,cACE,oB5D63MN,C4D13MI,cACE,qB5D43MN,C4Dr3MI,4BAHE,mB5D+3MN,C4D53MI,cACE,oB5D23MN,C4Dv3MI,cACE,kBCjEA,CDkEA,qB5Dy3MN,C4Dr3MI,aACE,oBAAA,CACA,oB5Du3MN,C4Dp3MI,cACE,oB5Ds3MN,C4Dn3MI,cACE,oB5Dq3MN,C4Dj3MI,eACE,U5Dm3MN,C4Dh3MI,iBACE,iB5Dk3MN,C4D/2MI,iBACE,c5Di3MN,C4Dr8MI,aACE,W5Du8MN,C4Dp8MI,cACE,e5Ds8MN,C4Dn8MI,cACE,iB5Dq8MN,C4Dl8MI,cACE,kB5Do8MN,C4D77MI,4BAHE,gB5Du8MN,C4Dp8MI,cACE,iB5Dm8MN,C4D/7MI,cACE,eCnCA,CDoCA,kB5Di8MN,C4D97MI,aACE,Y5Dg8MN,C4D77MI,cACE,gB5D+7MN,C4D57MI,cACE,kB5D87MN,C4D37MI,cACE,mB5D67MN,C4Dt7MI,4BAHE,iB5Dg8MN,C4D77MI,cACE,kB5D47MN,C4Dx7MI,cACE,gBCjEA,CDkEA,mB5D07MN,C4Dt7MI,aACE,kBAAA,CACA,kB5Dw7MN,C4Dr7MI,cACE,kB5Du7MN,C4Dp7MI,cACE,kB5Ds7MN,C4Dl7MI,eACE,Q5Do7MN,C4Dj7MI,iBACE,e5Dm7MN,C4Dh7MI,iBACE,Y5Dk7MN,C4D96ME,gBACE,W5Dg7MJ,C4D76ME,iBACE,e5D+6MJ,C4D56ME,iBACE,iB5D86MJ,C4D36ME,iBACE,kB5D66MJ,C4D16ME,iBACE,gB5D46MJ,C4Dz6ME,iBACE,iBAAA,CACA,gB5D26MJ,C4Dx6ME,iBACE,eAAA,CACA,kB5D06MJ,CACF,CSxhNE,0BmDNI,aACE,Q5DiiNN,C4D9hNI,cACE,Y5DgiNN,C4D7hNI,cACE,c5D+hNN,C4D5hNI,cACE,e5D8hNN,C4D3hNI,cACE,a5D6hNN,C4D1hNI,cACE,cC9BA,CD+BA,a5D4hNN,C4DzhNI,cACE,YCnCA,CDoCA,e5D2hNN,C4DxhNI,aACE,S5D0hNN,C4DvhNI,cACE,a5DyhNN,C4DthNI,cACE,e5DwhNN,C4DrhNI,cACE,gB5DuhNN,C4DhhNI,4BAHE,c5D0hNN,C4DvhNI,cACE,e5DshNN,C4DlhNI,cACE,aCjEA,CDkEA,gB5DohNN,C4DhhNI,aACE,eAAA,CACA,e5DkhNN,C4D/gNI,cACE,e5DihNN,C4D9gNI,cACE,e5DghNN,C4D5gNI,eACE,K5D8gNN,C4D3gNI,iBACE,Y5D6gNN,C4D1gNI,iBACE,S5D4gNN,C4DhmNI,aACE,a5DkmNN,C4D/lNI,cACE,iB5DimNN,C4D9lNI,cACE,mB5DgmNN,C4D7lNI,cACE,oB5D+lNN,C4DxlNI,4BAHE,kB5DkmNN,C4D/lNI,cACE,mB5D8lNN,C4D1lNI,cACE,iBCnCA,CDoCA,oB5D4lNN,C4DzlNI,aACE,c5D2lNN,C4DxlNI,cACE,kB5D0lNN,C4DvlNI,cACE,oB5DylNN,C4DtlNI,cACE,qB5DwlNN,C4DjlNI,4BAHE,mB5D2lNN,C4DxlNI,cACE,oB5DulNN,C4DnlNI,cACE,kBCjEA,CDkEA,qB5DqlNN,C4DjlNI,aACE,qBAAA,CACA,qB5DmlNN,C4DhlNI,cACE,qB5DklNN,C4D/kNI,cACE,qB5DilNN,C4D7kNI,eACE,U5D+kNN,C4D5kNI,iBACE,iB5D8kNN,C4D3kNI,iBACE,c5D6kNN,C4DjqNI,aACE,Y5DmqNN,C4DhqNI,cACE,gB5DkqNN,C4D/pNI,cACE,kB5DiqNN,C4D9pNI,cACE,mB5DgqNN,C4DzpNI,4BAHE,iB5DmqNN,C4DhqNI,cACE,kB5D+pNN,C4D3pNI,cACE,gBCnCA,CDoCA,mB5D6pNN,C4D1pNI,aACE,a5D4pNN,C4DzpNI,cACE,iB5D2pNN,C4DxpNI,cACE,mB5D0pNN,C4DvpNI,cACE,oB5DypNN,C4DlpNI,4BAHE,kB5D4pNN,C4DzpNI,cACE,mB5DwpNN,C4DppNI,cACE,iBCjEA,CDkEA,oB5DspNN,C4DlpNI,aACE,oBAAA,CACA,oB5DopNN,C4DjpNI,cACE,oB5DmpNN,C4DhpNI,cACE,oB5DkpNN,C4D9oNI,eACE,S5DgpNN,C4D7oNI,iBACE,gB5D+oNN,C4D5oNI,iBACE,a5D8oNN,C4DluNI,aACE,W5DouNN,C4DjuNI,cACE,e5DmuNN,C4DhuNI,cACE,iB5DkuNN,C4D/tNI,cACE,kB5DiuNN,C4D1tNI,4BAHE,gB5DouNN,C4DjuNI,cACE,iB5DguNN,C4D5tNI,cACE,eCnCA,CDoCA,kB5D8tNN,C4D3tNI,aACE,Y5D6tNN,C4D1tNI,cACE,gB5D4tNN,C4DztNI,cACE,kB5D2tNN,C4DxtNI,cACE,mB5D0tNN,C4DntNI,4BAHE,iB5D6tNN,C4D1tNI,cACE,kB5DytNN,C4DrtNI,cACE,gBCjEA,CDkEA,mB5DutNN,C4DntNI,aACE,kBAAA,CACA,kB5DqtNN,C4DltNI,cACE,kB5DotNN,C4DjtNI,cACE,kB5DmtNN,C4D/sNI,eACE,Q5DitNN,C4D9sNI,iBACE,e5DgtNN,C4D7sNI,iBACE,Y5D+sNN,C4DnyNI,aACE,a5DqyNN,C4DlyNI,cACE,iB5DoyNN,C4DjyNI,cACE,mB5DmyNN,C4DhyNI,cACE,oB5DkyNN,C4D3xNI,4BAHE,kB5DqyNN,C4DlyNI,cACE,mB5DiyNN,C4D7xNI,cACE,iBCnCA,CDoCA,oB5D+xNN,C4D5xNI,aACE,c5D8xNN,C4D3xNI,cACE,kB5D6xNN,C4D1xNI,cACE,oB5D4xNN,C4DzxNI,cACE,qB5D2xNN,C4DpxNI,4BAHE,mB5D8xNN,C4D3xNI,cACE,oB5D0xNN,C4DtxNI,cACE,kBCjEA,CDkEA,qB5DwxNN,C4DpxNI,aACE,oBAAA,CACA,oB5DsxNN,C4DnxNI,cACE,oB5DqxNN,C4DlxNI,cACE,oB5DoxNN,C4DhxNI,eACE,U5DkxNN,C4D/wNI,iBACE,iB5DixNN,C4D9wNI,iBACE,c5DgxNN,C4Dp2NI,aACE,W5Ds2NN,C4Dn2NI,cACE,e5Dq2NN,C4Dl2NI,cACE,iB5Do2NN,C4Dj2NI,cACE,kB5Dm2NN,C4D51NI,4BAHE,gB5Ds2NN,C4Dn2NI,cACE,iB5Dk2NN,C4D91NI,cACE,eCnCA,CDoCA,kB5Dg2NN,C4D71NI,aACE,Y5D+1NN,C4D51NI,cACE,gB5D81NN,C4D31NI,cACE,kB5D61NN,C4D11NI,cACE,mB5D41NN,C4Dr1NI,4BAHE,iB5D+1NN,C4D51NI,cACE,kB5D21NN,C4Dv1NI,cACE,gBCjEA,CDkEA,mB5Dy1NN,C4Dr1NI,aACE,kBAAA,CACA,kB5Du1NN,C4Dp1NI,cACE,kB5Ds1NN,C4Dn1NI,cACE,kB5Dq1NN,C4Dj1NI,eACE,Q5Dm1NN,C4Dh1NI,iBACE,e5Dk1NN,C4D/0NI,iBACE,Y5Di1NN,C4D70NE,gBACE,W5D+0NJ,C4D50NE,iBACE,e5D80NJ,C4D30NE,iBACE,iB5D60NJ,C4D10NE,iBACE,kB5D40NJ,C4Dz0NE,iBACE,gB5D20NJ,C4Dx0NE,iBACE,iBAAA,CACA,gB5D00NJ,C4Dv0NE,iBACE,eAAA,CACA,kB5Dy0NJ,CACF,CSv7NE,0BmDNI,cACE,Q5Dg8NN,C4D77NI,eACE,Y5D+7NN,C4D57NI,eACE,c5D87NN,C4D37NI,eACE,e5D67NN,C4D17NI,eACE,a5D47NN,C4Dz7NI,eACE,cC9BA,CD+BA,a5D27NN,C4Dx7NI,eACE,YCnCA,CDoCA,e5D07NN,C4Dv7NI,cACE,S5Dy7NN,C4Dt7NI,eACE,a5Dw7NN,C4Dr7NI,eACE,e5Du7NN,C4Dp7NI,eACE,gB5Ds7NN,C4Dn7NI,eACE,c5Dq7NN,C4Dl7NI,eACE,eC5DA,CD6DA,c5Do7NN,C4Dj7NI,eACE,aCjEA,CDkEA,gB5Dm7NN,C4D/6NI,cACE,eAAA,CACA,e5Di7NN,C4D96NI,eACE,e5Dg7NN,C4D76NI,eACE,e5D+6NN,C4D36NI,gBACE,K5D66NN,C4D16NI,kBACE,Y5D46NN,C4Dz6NI,kBACE,S5D26NN,C4D//NI,cACE,a5DigON,C4D9/NI,eACE,iB5DggON,C4D7/NI,eACE,mB5D+/NN,C4D5/NI,eACE,oB5D8/NN,C4Dv/NI,8BAHE,kB5DigON,C4D9/NI,eACE,mB5D6/NN,C4Dz/NI,eACE,iBCnCA,CDoCA,oB5D2/NN,C4Dx/NI,cACE,c5D0/NN,C4Dv/NI,eACE,kB5Dy/NN,C4Dt/NI,eACE,oB5Dw/NN,C4Dr/NI,eACE,qB5Du/NN,C4Dh/NI,8BAHE,mB5D0/NN,C4Dv/NI,eACE,oB5Ds/NN,C4Dl/NI,eACE,kBCjEA,CDkEA,qB5Do/NN,C4Dh/NI,cACE,qBAAA,CACA,qB5Dk/NN,C4D/+NI,eACE,qB5Di/NN,C4D9+NI,eACE,qB5Dg/NN,C4D5+NI,gBACE,U5D8+NN,C4D3+NI,kBACE,iB5D6+NN,C4D1+NI,kBACE,c5D4+NN,C4DhkOI,cACE,Y5DkkON,C4D/jOI,eACE,gB5DikON,C4D9jOI,eACE,kB5DgkON,C4D7jOI,eACE,mB5D+jON,C4DxjOI,8BAHE,iB5DkkON,C4D/jOI,eACE,kB5D8jON,C4D1jOI,eACE,gBCnCA,CDoCA,mB5D4jON,C4DzjOI,cACE,a5D2jON,C4DxjOI,eACE,iB5D0jON,C4DvjOI,eACE,mB5DyjON,C4DtjOI,eACE,oB5DwjON,C4DjjOI,8BAHE,kB5D2jON,C4DxjOI,eACE,mB5DujON,C4DnjOI,eACE,iBCjEA,CDkEA,oB5DqjON,C4DjjOI,cACE,oBAAA,CACA,oB5DmjON,C4DhjOI,eACE,oB5DkjON,C4D/iOI,eACE,oB5DijON,C4D7iOI,gBACE,S5D+iON,C4D5iOI,kBACE,gB5D8iON,C4D3iOI,kBACE,a5D6iON,C4DjoOI,cACE,W5DmoON,C4DhoOI,eACE,e5DkoON,C4D/nOI,eACE,iB5DioON,C4D9nOI,eACE,kB5DgoON,C4DznOI,8BAHE,gB5DmoON,C4DhoOI,eACE,iB5D+nON,C4D3nOI,eACE,eCnCA,CDoCA,kB5D6nON,C4D1nOI,cACE,Y5D4nON,C4DznOI,eACE,gB5D2nON,C4DxnOI,eACE,kB5D0nON,C4DvnOI,eACE,mB5DynON,C4DlnOI,8BAHE,iB5D4nON,C4DznOI,eACE,kB5DwnON,C4DpnOI,eACE,gBCjEA,CDkEA,mB5DsnON,C4DlnOI,cACE,kBAAA,CACA,kB5DonON,C4DjnOI,eACE,kB5DmnON,C4DhnOI,eACE,kB5DknON,C4D9mOI,gBACE,Q5DgnON,C4D7mOI,kBACE,e5D+mON,C4D5mOI,kBACE,Y5D8mON,C4DlsOI,cACE,a5DosON,C4DjsOI,eACE,iB5DmsON,C4DhsOI,eACE,mB5DksON,C4D/rOI,eACE,oB5DisON,C4D1rOI,8BAHE,kB5DosON,C4DjsOI,eACE,mB5DgsON,C4D5rOI,eACE,iBCnCA,CDoCA,oB5D8rON,C4D3rOI,cACE,c5D6rON,C4D1rOI,eACE,kB5D4rON,C4DzrOI,eACE,oB5D2rON,C4DxrOI,eACE,qB5D0rON,C4DnrOI,8BAHE,mB5D6rON,C4D1rOI,eACE,oB5DyrON,C4DrrOI,eACE,kBCjEA,CDkEA,qB5DurON,C4DnrOI,cACE,oBAAA,CACA,oB5DqrON,C4DlrOI,eACE,oB5DorON,C4DjrOI,eACE,oB5DmrON,C4D/qOI,gBACE,U5DirON,C4D9qOI,kBACE,iB5DgrON,C4D7qOI,kBACE,c5D+qON,C4DnwOI,cACE,W5DqwON,C4DlwOI,eACE,e5DowON,C4DjwOI,eACE,iB5DmwON,C4DhwOI,eACE,kB5DkwON,C4D3vOI,8BAHE,gB5DqwON,C4DlwOI,eACE,iB5DiwON,C4D7vOI,eACE,eCnCA,CDoCA,kB5D+vON,C4D5vOI,cACE,Y5D8vON,C4D3vOI,eACE,gB5D6vON,C4D1vOI,eACE,kB5D4vON,C4DzvOI,eACE,mB5D2vON,C4DpvOI,8BAHE,iB5D8vON,C4D3vOI,eACE,kB5D0vON,C4DtvOI,eACE,gBCjEA,CDkEA,mB5DwvON,C4DpvOI,cACE,kBAAA,CACA,kB5DsvON,C4DnvOI,eACE,kB5DqvON,C4DlvOI,eACE,kB5DovON,C4DhvOI,gBACE,Q5DkvON,C4D/uOI,kBACE,e5DivON,C4D9uOI,kBACE,Y5DgvON,C4D5uOE,iBACE,W5D8uOJ,C4D3uOE,kBACE,e5D6uOJ,C4D1uOE,kBACE,iB5D4uOJ,C4DzuOE,kBACE,kB5D2uOJ,C4DxuOE,kBACE,gB5D0uOJ,C4DvuOE,kBACE,iBAAA,CACA,gB5DyuOJ,C4DtuOE,kBACE,eAAA,CACA,kB5DwuOJ,CACF,CSt1OE,0BmDNI,eACE,Q5D+1ON,C4D51OI,gBACE,Y5D81ON,C4D31OI,gBACE,c5D61ON,C4D11OI,gBACE,e5D41ON,C4Dz1OI,gBACE,a5D21ON,C4Dx1OI,gBACE,cC9BA,CD+BA,a5D01ON,C4Dv1OI,gBACE,YCnCA,CDoCA,e5Dy1ON,C4Dt1OI,eACE,S5Dw1ON,C4Dr1OI,gBACE,a5Du1ON,C4Dp1OI,gBACE,e5Ds1ON,C4Dn1OI,gBACE,gB5Dq1ON,C4Dl1OI,gBACE,c5Do1ON,C4Dj1OI,gBACE,eC5DA,CD6DA,c5Dm1ON,C4Dh1OI,gBACE,aCjEA,CDkEA,gB5Dk1ON,C4D90OI,eACE,eAAA,CACA,e5Dg1ON,C4D70OI,gBACE,e5D+0ON,C4D50OI,gBACE,e5D80ON,C4D10OI,iBACE,K5D40ON,C4Dz0OI,mBACE,Y5D20ON,C4Dx0OI,mBACE,S5D00ON,C4D95OI,eACE,a5Dg6ON,C4D75OI,gBACE,iB5D+5ON,C4D55OI,gBACE,mB5D85ON,C4D35OI,gBACE,oB5D65ON,C4Dt5OI,gCAHE,kB5Dg6ON,C4D75OI,gBACE,mB5D45ON,C4Dx5OI,gBACE,iBCnCA,CDoCA,oB5D05ON,C4Dv5OI,eACE,c5Dy5ON,C4Dt5OI,gBACE,kB5Dw5ON,C4Dr5OI,gBACE,oB5Du5ON,C4Dp5OI,gBACE,qB5Ds5ON,C4D/4OI,gCAHE,mB5Dy5ON,C4Dt5OI,gBACE,oB5Dq5ON,C4Dj5OI,gBACE,kBCjEA,CDkEA,qB5Dm5ON,C4D/4OI,eACE,qBAAA,CACA,qB5Di5ON,C4D94OI,gBACE,qB5Dg5ON,C4D74OI,gBACE,qB5D+4ON,C4D34OI,iBACE,U5D64ON,C4D14OI,mBACE,iB5D44ON,C4Dz4OI,mBACE,c5D24ON,C4D/9OI,eACE,Y5Di+ON,C4D99OI,gBACE,gB5Dg+ON,C4D79OI,gBACE,kB5D+9ON,C4D59OI,gBACE,mB5D89ON,C4Dv9OI,gCAHE,iB5Di+ON,C4D99OI,gBACE,kB5D69ON,C4Dz9OI,gBACE,gBCnCA,CDoCA,mB5D29ON,C4Dx9OI,eACE,a5D09ON,C4Dv9OI,gBACE,iB5Dy9ON,C4Dt9OI,gBACE,mB5Dw9ON,C4Dr9OI,gBACE,oB5Du9ON,C4Dh9OI,gCAHE,kB5D09ON,C4Dv9OI,gBACE,mB5Ds9ON,C4Dl9OI,gBACE,iBCjEA,CDkEA,oB5Do9ON,C4Dh9OI,eACE,oBAAA,CACA,oB5Dk9ON,C4D/8OI,gBACE,oB5Di9ON,C4D98OI,gBACE,oB5Dg9ON,C4D58OI,iBACE,S5D88ON,C4D38OI,mBACE,gB5D68ON,C4D18OI,mBACE,a5D48ON,C4DhiPI,eACE,W5DkiPN,C4D/hPI,gBACE,e5DiiPN,C4D9hPI,gBACE,iB5DgiPN,C4D7hPI,gBACE,kB5D+hPN,C4DxhPI,gCAHE,gB5DkiPN,C4D/hPI,gBACE,iB5D8hPN,C4D1hPI,gBACE,eCnCA,CDoCA,kB5D4hPN,C4DzhPI,eACE,Y5D2hPN,C4DxhPI,gBACE,gB5D0hPN,C4DvhPI,gBACE,kB5DyhPN,C4DthPI,gBACE,mB5DwhPN,C4DjhPI,gCAHE,iB5D2hPN,C4DxhPI,gBACE,kB5DuhPN,C4DnhPI,gBACE,gBCjEA,CDkEA,mB5DqhPN,C4DjhPI,eACE,kBAAA,CACA,kB5DmhPN,C4DhhPI,gBACE,kB5DkhPN,C4D/gPI,gBACE,kB5DihPN,C4D7gPI,iBACE,Q5D+gPN,C4D5gPI,mBACE,e5D8gPN,C4D3gPI,mBACE,Y5D6gPN,C4DjmPI,eACE,a5DmmPN,C4DhmPI,gBACE,iB5DkmPN,C4D/lPI,gBACE,mB5DimPN,C4D9lPI,gBACE,oB5DgmPN,C4DzlPI,gCAHE,kB5DmmPN,C4DhmPI,gBACE,mB5D+lPN,C4D3lPI,gBACE,iBCnCA,CDoCA,oB5D6lPN,C4D1lPI,eACE,c5D4lPN,C4DzlPI,gBACE,kB5D2lPN,C4DxlPI,gBACE,oB5D0lPN,C4DvlPI,gBACE,qB5DylPN,C4DllPI,gCAHE,mB5D4lPN,C4DzlPI,gBACE,oB5DwlPN,C4DplPI,gBACE,kBCjEA,CDkEA,qB5DslPN,C4DllPI,eACE,oBAAA,CACA,oB5DolPN,C4DjlPI,gBACE,oB5DmlPN,C4DhlPI,gBACE,oB5DklPN,C4D9kPI,iBACE,U5DglPN,C4D7kPI,mBACE,iB5D+kPN,C4D5kPI,mBACE,c5D8kPN,C4DlqPI,eACE,W5DoqPN,C4DjqPI,gBACE,e5DmqPN,C4DhqPI,gBACE,iB5DkqPN,C4D/pPI,gBACE,kB5DiqPN,C4D1pPI,gCAHE,gB5DoqPN,C4DjqPI,gBACE,iB5DgqPN,C4D5pPI,gBACE,eCnCA,CDoCA,kB5D8pPN,C4D3pPI,eACE,Y5D6pPN,C4D1pPI,gBACE,gB5D4pPN,C4DzpPI,gBACE,kB5D2pPN,C4DxpPI,gBACE,mB5D0pPN,C4DnpPI,gCAHE,iB5D6pPN,C4D1pPI,gBACE,kB5DypPN,C4DrpPI,gBACE,gBCjEA,CDkEA,mB5DupPN,C4DnpPI,eACE,kBAAA,CACA,kB5DqpPN,C4DlpPI,gBACE,kB5DopPN,C4DjpPI,gBACE,kB5DmpPN,C4D/oPI,iBACE,Q5DipPN,C4D9oPI,mBACE,e5DgpPN,C4D7oPI,mBACE,Y5D+oPN,C4D3oPE,kBACE,W5D6oPJ,C4D1oPE,mBACE,e5D4oPJ,C4DzoPE,mBACE,iB5D2oPJ,C4DxoPE,mBACE,kB5D0oPJ,C4DvoPE,mBACE,gB5DyoPJ,C4DtoPE,mBACE,iBAAA,CACA,gB5DwoPJ,C4DroPE,mBACE,eAAA,CACA,kB5DuoPJ,CACF,CACF,C8DlwPA,iBACE,iBACE,e9DowPF,C8DjwPA,kBACE,iB9DmwPF,C8DhwPA,eACE,gB9DkwPF,C8D/vPA,qBACE,wB9DiwPF,C8D9vPA,qBACE,wB9DgwPF,C8D7vPA,sBACE,yB9D+vPF,C8D5vPA,oBrDSA,eAAA,CACA,sBAAA,CACA,kBTsvPA,C8D7vPA,iBACE,e9D+vPF,C8D5vPA,gBACE,e9D8vPF,C8D3vPA,kBACE,e9D6vPF,C8D1vPA,cACE,e9D4vPF,C8DzvPA,YACE,kB9D2vPF,C8DxvPA,YACE,gB9D0vPF,C8DvvPA,YACE,kB9DyvPF,C8DtvPA,YACE,c9DwvPF,C8DrvPA,YACE,iB9DuvPF,C8DpvPA,YACE,iB9DsvPF,C8DnvPA,YACE,gB9DqvPF,C8DlvPA,YACE,mB9DovPF,C8DjvPA,YACE,kB9DmvPF,C8DhvPA,YACE,c9DkvPF,C8D/uPA,YACE,iB9DivPF,C8D9uPA,gBACE,+B9DgvPF,C8D7uPA,gBACE,+B9D+uPF,C+D/0PA,cACE,kB/Dm1PF,C+Dh1PA,gBACE,iB/Dk1PF,CAPF,C+Dj1PA,iB/Dy1PA,CgEv0PA,cAOE,uBACE,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gChEm0PF,CgEh0PA,iFAEE,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gChEk0PF,CgE/zPA,mCACE,uBACE,uEAAA,CACA,0EAAA,CACA,4EAAA,CACA,6EhEi0PF,CgE9zPA,iFAEE,uEAAA,CACA,wEAAA,CACA,2EAAA,CACA,2EhEg0PF,CACF,CgEzzPA,0BACE,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gChE2zPF,CgExzPA,uFAEE,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gChE0zPF,CgEnzPA,wBACE,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gChEqzPF,CgElzPA,mFAEE,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gChEozPF,CgEjzPA,mCACE,0BACE,uEAAA,CACA,0EAAA,CACA,2EAAA,CACA,6EhEmzPF,CgEhzPA,uFAEE,uEAAA,CACA,0EAAA,CACA,4EAAA,CACA,6EhEkzPF,CgE/yPA,wBACE,sEAAA,CACA,yEAAA,CACA,2EAAA,CACA,4EhEizPF,CgE9yPA,mFAEE,sEAAA,CACA,0EAAA,CACA,2EAAA,CACA,6EhEgzPF,CACF,CACF,CgElyPA,iBACE,+DAEE,mBAAA,CACA,qBhEoyPF,CgEjyPA,kCACE,oBhEmyPF,CACF,CiEz6PA,cAsBE,kBACE,uBAAA,CACA,wBAAA,CACA,yBAAA,CACA,0BAAA,CACA,yBAAA,CACA,6CAAA,CACA,2CAAA,CACA,iDAAA,CACA,qDAAA,CACA,4CAAA,CACA,2CAAA,CACA,gDAAA,CACA,wCAAA,CACA,iDAAA,CACA,+CAAA,CACA,kDAAA,CACA,uDAAA,CACA,qDAAA,CACA,uBAAA,CACA,yBAAA,CAGE,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gCAAA,CAHA,4BAAA,CACA,+BAAA,CACA,iCAAA,CACA,kCAAA,CAHA,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gCAAA,CAHA,0BAAA,CACA,6BAAA,CACA,+BAAA,CACA,gCAAA,CAHA,yBAAA,CACA,4BAAA,CACA,8BAAA,CACA,+BAAA,CAHA,uBAAA,CACA,0BAAA,CACA,4BAAA,CACA,6BjEw6PJ,CiEp6PA,mCACE,kBACE,mEAAA,CACA,qEAAA,CACA,qEAAA,CACA,uEAAA,CACA,sEAAA,CACA,6CAAA,CACA,2CAAA,CACA,iDAAA,CACA,qDAAA,CACA,4CAAA,CACA,2CAAA,CACA,gDAAA,CACA,wCAAA,CACA,iDAAA,CACA,+CAAA,CACA,oEAAA,CACA,sEAAA,CAGE,sEAAA,CACA,0EAAA,CACA,4EAAA,CACA,6EAAA,CAHA,yEAAA,CACA,4EAAA,CACA,8EAAA,CACA,+EAAA,CAHA,qEAAA,CACA,0EAAA,CACA,2EAAA,CACA,6EAAA,CAHA,sEAAA,CACA,0EAAA,CACA,2EAAA,CACA,6EAAA,CAHA,qEAAA,CACA,wEAAA,CACA,yEAAA,CACA,2EAAA,CAHA,oEAAA,CACA,uEAAA,CACA,yEAAA,CACA,0EjEw7PJ,CACF,CACF","file":"fokus.min.css","sourcesContent":["@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","@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","@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// 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":["file:///home/runner/work/fokus-styles/fokus-styles/packages/fokus-components/scss/components/_datatable.scss","../../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/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/_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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CA,oBXqwBN,CWhwBI,eACE,OXkwBN,CWnwBI,eACE,OXqwBN,CWtwBI,eACE,OXwwBN,CWzwBI,eACE,OX2wBN,CW5wBI,eACE,OX8wBN,CW/wBI,eACE,OXixBN,CWlxBI,eACE,OXoxBN,CWrxBI,eACE,OXuxBN,CWxxBI,eACE,OX0xBN,CW3xBI,eACE,OX6xBN,CW9xBI,gBACE,QXgyBN,CWjyBI,gBACE,QXmyBN,CWpyBI,gBACE,QXsyBN,CWlyBE,WACE,WXoyBJ,CWjyBE,gBACE,aAAA,CACA,UXmyBJ,CW/xBI,aACE,aAAA,CACA,mBXiyBN,CWnyBI,aACE,aAAA,CACA,oBXqyBN,CWvyBI,aACE,aAAA,CACA,SXyyBN,CW3yBI,aACE,aAAA,CACA,oBX6yBN,CW/yBI,aACE,aAAA,CACA,oBXizBN,CWnzBI,aACE,aAAA,CACA,SXqzBN,CWvzBI,aACE,aAAA,CACA,oBXyzBN,CW3zBI,aACE,aAAA,CACA,oBX6zBN,CW/zBI,aACE,aAAA,CACA,SXi0BN,CWn0BI,cACE,aAAA,CACA,oBXq0BN,CWv0BI,cACE,aAAA,CACA,oBXy0BN,CW30BI,cACE,aAAA,CACA,UX60BN,CACF,CUt3BE,0BCUE,uBACE,aAAA,CACA,UX+2BJ,CW32BI,oBACE,aAAA,CACA,UX62BN,CW/2BI,oBACE,aAAA,CACA,SXi3BN,CWn3BI,oBACE,aAAA,CACA,oBXq3BN,CWv3BI,oBACE,aAAA,CACA,SXy3BN,CW33BI,oBACE,aAAA,CACA,SX63BN,CW/3BI,oBACE,aAAA,CACA,oBXi4BN,CW53BI,eACE,OX83BN,CW/3BI,eACE,OXi4BN,CWl4BI,eACE,OXo4BN,CWr4BI,eACE,OXu4BN,CWx4BI,eACE,OX04BN,CW34BI,eACE,OX64BN,CW94BI,eACE,OXg5BN,CWj5BI,eACE,OXm5BN,CWp5BI,eACE,OXs5BN,CWv5BI,eACE,OXy5BN,CW15BI,gBACE,QX45BN,CW75BI,gBACE,QX+5BN,CWh6BI,gBACE,QXk6BN,CW95BE,WACE,WXg6BJ,CW75BE,gBACE,aAAA,CACA,UX+5BJ,CW35BI,aACE,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gLE,mBACE,YhE+gLJ,CACF,CgE9hLE,8BACE,mBACE,YhEgiLJ,CgE7hLE,oBACE,ahE+hLJ,CgE5hLE,2BACE,oBhE8hLJ,CgE3hLE,mBACE,YhE6hLJ,CACF,CACF,CiE3jLA,iBACE,aACE,YjE6jLF,CiE1jLA,cACE,ajE4jLF,CiEzjLA,eACE,cjE2jLF,CiExjLA,qBACE,oBjE0jLF,CiEvjLA,aACE,YjEyjLF,CkEnkLI,wBACE,sBlEukLN,CkEpkLI,yBACE,kBlEskLN,CkEnkLI,sBACE,oBlEqkLN,CkElkLI,4BACE,0BlEokLN,CkEjkLI,6BACE,sBlEmkLN,CkEhkLI,0BACE,wBlEkkLN,CkE/jLI,6BACE,4BlEikLN,CkE9jLI,8BACE,6BlEgkLN,CkE7jLI,uBACE,qBlE+jLN,CkE5jLI,wBACE,iBlE8jLN,CkE3jLI,qBACE,mBlE6jLN,CAlCF,CkEzkLA,iBxDoBI,yBwDfE,2BACE,sBlEymLJ,CkEtmLE,4BACE,kBlEwmLJ,CkErmLE,yBACE,oBlEumLJ,CkEpmLE,+BACE,0BlEsmLJ,CkEnmLE,gCACE,sBlEqmLJ,CkElmLE,6BACE,wBlEomLJ,CkEjmLE,gCACE,4BlEmmLJ,CkEhmLE,iCACE,6BlEkmLJ,CkE/lLE,0BACE,qBlEimLJ,CkE9lLE,2BACE,iBlEgmLJ,CkE7lLE,wBACE,mBlE+lLJ,CACF,CU1nLE,yBwDfE,2BACE,sBlE4oLJ,CkEzoLE,4BACE,kBlE2oLJ,CkExoLE,yBACE,oBlE0oLJ,CkEvoLE,+BACE,0BlEyoLJ,CkEtoLE,gCACE,sBlEwoLJ,CkEroLE,6BACE,wBlEuoLJ,CkEpoLE,gCACE,4BlEsoLJ,CkEnoLE,iCACE,6BlEqoLJ,CkEloLE,0BACE,qBlEooLJ,CkEjoLE,2BACE,iBlEmoLJ,CkEhoLE,wBACE,mBlEkoLJ,CACF,CU7pLE,0BwDfE,2BACE,sBlE+qLJ,CkE5qLE,4BACE,kBlE8qLJ,CkE3qLE,yBACE,oBlE6qLJ,CkE1qLE,+BACE,0BlE4qLJ,CkEzqLE,gCACE,sBlE2qLJ,CkExqLE,6BACE,wBlE0qLJ,CkEvqLE,gCACE,4BlEyqLJ,CkEtqLE,iCACE,6BlEwqLJ,CkErqLE,0BACE,qBlEuqLJ,CkEpqLE,2BACE,iBlEsqLJ,CkEnqLE,wBACE,mBlEqqLJ,CACF,CUhsLE,0BwDfE,2BACE,sBlEktLJ,CkE/sLE,4BACE,kBlEitLJ,CkE9sLE,yBACE,oBlEgtLJ,CkE7sLE,+BACE,0BlE+sLJ,CkE5sLE,gCACE,sBlE8sLJ,CkE3sLE,6BACE,wBlE6sLJ,CkE1sLE,gCACE,4BlE4sLJ,CkEzsLE,iCACE,6BlE2sLJ,CkExsLE,0BACE,qBlE0sLJ,CkEvsLE,2BACE,iBlEysLJ,CkEtsLE,wBACE,mBlEwsLJ,CACF,CUnuLE,0BwDfE,4BACE,sBlEqvLJ,CkElvLE,6BACE,kBlEovLJ,CkEjvLE,0BACE,oBlEmvLJ,CkEhvLE,gCACE,0BlEkvLJ,CkE/uLE,iCACE,sBlEivLJ,CkE9uLE,8BACE,wBlEgvLJ,CkE7uLE,iCACE,4BlE+uLJ,CkE5uLE,kCACE,6BlE8uLJ,CkE3uLE,2BACE,qBlE6uLJ,CkE1uLE,4BACE,iBlE4uLJ,CkEzuLE,yBACE,mBlE2uLJ,CACF,CUtwLE,0BwDfE,6BACE,sBlEwxLJ,CkErxLE,8BACE,kBlEuxLJ,CkEpxLE,2BACE,oBlEsxLJ,CkEnxLE,iCACE,0BlEqxLJ,CkElxLE,kCACE,sBlEoxLJ,CkEjxLE,+BACE,wBlEmxLJ,CkEhxLE,kCACE,4BlEkxLJ,CkE/wLE,mCACE,6BlEixLJ,CkE9wLE,4BACE,qBlEgxLJ,CkE7wLE,6BACE,iBlE+wLJ,CkE5wLE,0BACE,mBlE8wLJ,CACF,CACF,CmExzLA,iBACE,SACE,oBAAA,CACA,aAAA,CACA,SAAA,CACA,UAAA,CACA,sBAAA,CACA,mBnE0zLF,CmEvzLA,YACE,UAAA,CACA,WnEyzLF,CmEtzLA,YACE,UAAA,CACA,WnEwzLF,CmErzLA,YACE,UAAA,CACA,WnEuzLF,CmEpzLA,YACE,UAAA,CACA,WnEszLF,CoEt1LA,iBACE,eAAA,CACA,0BAAA,CACA,YpE01LF,CoEv1LA,oBACE,eAAA,CACA,gCAAA,CACA,YpEy1LF,CAXF,CoEx1LA,iBpEo2LA,CqEv2LA,iBACE,aACE,iBACE,sBrEy2LF,CACF,CqEt2LA,iBACE,iBACE,sBrEw2LF,CACF,CqEr2LA,aACE,kBACE,uBrEu2LF,CqEp2LA,mBACE,wBrEs2LF,CqEn2LA,yBACE,8BrEq2LF,CACF,CACF,CsE93LA,iBACE,gBACE,8BtEg4LF,CsE73LA,aACE,8BtE+3LF,CsE53LA,gBACE,8BtE83LF,CuE/3LM,UACE,QvEm4LR,CuEh4LM,WACE,YvEk4LR,CuE/3LM,WACE,cvEi4LR,CuE93LM,WACE,evEg4LR,CuEz3LM,sBAHE,avEm4LR,CuEh4LM,WACE,cvE+3LR,CuE33LM,WACE,YCnCA,CDoCA,evE63LR,CuE13LM,UACE,SvE43LR,CuEz3LM,WACE,avE23LR,CuEx3LM,WACE,evE03LR,CuEv3LM,WACE,gBvEy3LR,CuEl3LM,sBAHE,cvE43LR,CuEz3LM,WACE,evEw3LR,CuEp3LM,WACE,aCjEA,CDkEA,gBvEs3LR,CuEl3LM,UACE,eAAA,CACA,evEo3LR,CuEj3LM,WACE,evEm3LR,CuEh3LM,WACE,evEk3LR,CuE92LM,YACE,KvEg3LR,CuE72LM,cACE,YvE+2LR,CuE52LM,cACE,SvE82LR,CuEl8LM,UACE,avEo8LR,CuEj8LM,WACE,iBvEm8LR,CuEh8LM,WACE,mBvEk8LR,CuE/7LM,WACE,oBvEi8LR,CuE17LM,sBAHE,kBvEo8LR,CuEj8LM,WACE,mBvEg8LR,CuE57LM,WACE,iBCnCA,CDoCA,oBvE87LR,CuE37LM,UACE,cvE67LR,CuE17LM,WACE,kBvE47LR,CuEz7LM,WACE,oBvE27LR,CuEx7LM,WACE,qBvE07LR,CuEn7LM,sBAHE,mBvE67LR,CuE17LM,WACE,oBvEy7LR,CuEr7LM,WACE,kBCjEA,CDkEA,qBvEu7LR,CuEn7LM,UACE,qBAAA,CACA,qBvEq7LR,CuEl7LM,WACE,qBvEo7LR,CuEj7LM,WACE,qBvEm7LR,CuE/6LM,YACE,UvEi7LR,CuE96LM,cACE,iBvEg7LR,CuE76LM,cACE,cvE+6LR,CuEngMM,UACE,YvEqgMR,CuElgMM,WACE,gBvEogMR,CuEjgMM,WACE,kBvEmgMR,CuEhgMM,WACE,mBvEkgMR,CuE3/LM,sBAHE,iBvEqgMR,CuElgMM,WACE,kBvEigMR,CuE7/LM,WACE,gBCnCA,CDoCA,mBvE+/LR,CuE5/LM,UACE,avE8/LR,CuE3/LM,WACE,iBvE6/LR,CuE1/LM,WACE,mBvE4/LR,CuEz/LM,WACE,oBvE2/LR,CuEp/LM,sBAHE,kBvE8/LR,CuE3/LM,WACE,mBvE0/LR,CuEt/LM,WACE,iBCjEA,CDkEA,oBvEw/LR,CuEp/LM,UACE,oBAAA,CACA,oBvEs/LR,CuEn/LM,WACE,oBvEq/LR,CuEl/LM,WACE,oBvEo/LR,CuEh/LM,YACE,SvEk/LR,CuE/+LM,cACE,gBvEi/LR,CuE9+LM,cACE,avEg/LR,CuEpkMM,UACE,WvEskMR,CuEnkMM,WACE,evEqkMR,CuElkMM,WACE,iBvEokMR,CuEjkMM,WACE,kBvEmkMR,CuE5jMM,sBAHE,gBvEskMR,CuEnkMM,WACE,iBvEkkMR,CuE9jMM,WACE,eCnCA,CDoCA,kBvEgkMR,CuE7jMM,UACE,YvE+jMR,CuE5jMM,WACE,gBvE8jMR,CuE3jMM,WACE,kBvE6jMR,CuE1jMM,WACE,mBvE4jMR,CuErjMM,sBAHE,iBvE+jMR,CuE5jMM,WACE,kBvE2jMR,CuEvjMM,WACE,gBCjEA,CDkEA,mBvEyjMR,CuErjMM,UACE,kBAAA,CACA,kBvEujMR,CuEpjMM,WACE,kBvEsjMR,CuEnjMM,WACE,kBvEqjMR,CuEjjMM,YACE,QvEmjMR,CuEhjMM,cACE,evEkjMR,CuE/iMM,cACE,YvEijMR,CuEroMM,UACE,avEuoMR,CuEpoMM,WACE,iBvEsoMR,CuEnoMM,WACE,mBvEqoMR,CuEloMM,WACE,oBvEooMR,CuE7nMM,sBAHE,kBvEuoMR,CuEpoMM,WACE,mBvEmoMR,CuE/nMM,WACE,iBCnCA,CDoCA,oBvEioMR,CuE9nMM,UACE,cvEgoMR,CuE7nMM,WACE,kBvE+nMR,CuE5nMM,WACE,oBvE8nMR,CuE3nMM,WACE,qBvE6nMR,CuEtnMM,sBAHE,mBvEgoMR,CuE7nMM,WACE,oBvE4nMR,CuExnMM,WACE,kBCjEA,CDkEA,qBvE0nMR,CuEtnMM,UACE,oBAAA,CACA,oBvEwnMR,CuErnMM,WACE,oBvEunMR,CuEpnMM,WACE,oBvEsnMR,CuElnMM,YACE,UvEonMR,CuEjnMM,cACE,iBvEmnMR,CuEhnMM,cACE,cvEknMR,CuEtsMM,UACE,WvEwsMR,CuErsMM,WACE,evEusMR,CuEpsMM,WACE,iBvEssMR,CuEnsMM,WACE,kBvEqsMR,CuE9rMM,sBAHE,gBvEwsMR,CuErsMM,WACE,iBvEosMR,CuEhsMM,WACE,eCnCA,CDoCA,kBvEksMR,CuE/rMM,UACE,YvEisMR,CuE9rMM,WACE,gBvEgsMR,CuE7rMM,WACE,kBvE+rMR,CuE5rMM,WACE,mBvE8rMR,CuEvrMM,sBAHE,iBvEisMR,CuE9rMM,WACE,kBvE6rMR,CuEzrMM,WACE,gBCjEA,CDkEA,mBvE2rMR,CuEvrMM,UACE,kBAAA,CACA,kBvEyrMR,CuEtrMM,WACE,kBvEwrMR,CuErrMM,WACE,kBvEurMR,CuEnrMM,YACE,QvEqrMR,CuElrMM,cACE,evEorMR,CuEjrMM,cACE,YvEmrMR,CuE/qMI,aACE,WvEirMN,CuE9qMI,cACE,evEgrMN,CuE7qMI,cACE,iBvE+qMN,CuE5qMI,cACE,kBvE8qMN,CuEvqMI,4BAHE,gBvEirMN,CuE9qMI,cACE,iBvE6qMN,CuEzqMI,cACE,eAAA,CACA,kBvE2qMN,CA9ZF,CuEt4LA,iB7DoBI,yB6DdI,aACE,QvEiyMN,CuE9xMI,cACE,YvEgyMN,CuE7xMI,cACE,cvE+xMN,CuE5xMI,cACE,evE8xMN,CuE3xMI,cACE,avE6xMN,CuE1xMI,cACE,cC9BA,CD+BA,avE4xMN,CuEzxMI,cACE,YCnCA,CDoCA,evE2xMN,CuExxMI,aACE,SvE0xMN,CuEvxMI,cACE,avEyxMN,CuEtxMI,cACE,evEwxMN,CuErxMI,cACE,gBvEuxMN,CuEhxMI,4BAHE,cvE0xMN,CuEvxMI,cACE,evEsxMN,CuElxMI,cACE,aCjEA,CDkEA,gBvEoxMN,CuEhxMI,aACE,eAAA,CACA,evEkxMN,CuE/wMI,cACE,evEixMN,CuE9wMI,cACE,evEgxMN,CuE5wMI,eACE,KvE8wMN,CuE3wMI,iBACE,YvE6wMN,CuE1wMI,iBACE,SvE4wMN,CuEh2MI,aACE,avEk2MN,CuE/1MI,cACE,iBvEi2MN,CuE91MI,cACE,mBvEg2MN,CuE71MI,cACE,oBvE+1MN,CuEx1MI,4BAHE,kBvEk2MN,CuE/1MI,cACE,mBvE81MN,CuE11MI,cACE,iBCnCA,CDoCA,oBvE41MN,CuEz1MI,aACE,cvE21MN,CuEx1MI,cACE,kBvE01MN,CuEv1MI,cACE,oBvEy1MN,CuEt1MI,cACE,qBvEw1MN,CuEj1MI,4BAHE,mBvE21MN,CuEx1MI,cACE,oBvEu1MN,CuEn1MI,cACE,kBCjEA,CDkEA,qBvEq1MN,CuEj1MI,aACE,qBAAA,CACA,qBvEm1MN,CuEh1MI,cACE,qBvEk1MN,CuE/0MI,cACE,qBvEi1MN,CuE70MI,eACE,UvE+0MN,CuE50MI,iBACE,iBvE80MN,CuE30MI,iBACE,cvE60MN,CuEj6MI,aACE,YvEm6MN,CuEh6MI,cACE,gBvEk6MN,CuE/5MI,cACE,kBvEi6MN,CuE95MI,cACE,mBvEg6MN,CuEz5MI,4BAHE,iBvEm6MN,CuEh6MI,cACE,kBvE+5MN,CuE35MI,cACE,gBCnCA,CDoCA,mBvE65MN,CuE15MI,aACE,avE45MN,CuEz5MI,cACE,iBvE25MN,CuEx5MI,cACE,mBvE05MN,CuEv5MI,cACE,oBvEy5MN,CuEl5MI,4BAHE,kBvE45MN,CuEz5MI,cACE,mBvEw5MN,CuEp5MI,cACE,iBCjEA,CDkEA,oBvEs5MN,CuEl5MI,aACE,oBAAA,CACA,oBvEo5MN,CuEj5MI,cACE,oBvEm5MN,CuEh5MI,cACE,oBvEk5MN,CuE94MI,eACE,SvEg5MN,CuE74MI,iBACE,gBvE+4MN,CuE54MI,iBACE,avE84MN,CuEl+MI,aACE,WvEo+MN,CuEj+MI,cACE,evEm+MN,CuEh+MI,cACE,iBvEk+MN,CuE/9MI,cACE,kBvEi+MN,CuE19MI,4BAHE,gBvEo+MN,CuEj+MI,cACE,iBvEg+MN,CuE59MI,cACE,eCnCA,CDoCA,kBvE89MN,CuE39MI,aACE,YvE69MN,CuE19MI,cACE,gBvE49MN,CuEz9MI,cACE,kBvE29MN,CuEx9MI,cACE,mBvE09MN,CuEn9MI,4BAHE,iBvE69MN,CuE19MI,cACE,kBvEy9MN,CuEr9MI,cACE,gBCjEA,CDkEA,mBvEu9MN,CuEn9MI,aACE,kBAAA,CACA,kBvEq9MN,CuEl9MI,cACE,kBvEo9MN,CuEj9MI,cACE,kBvEm9MN,CuE/8MI,eACE,QvEi9MN,CuE98MI,iBACE,evEg9MN,CuE78MI,iBACE,YvE+8MN,CuEniNI,aACE,avEqiNN,CuEliNI,cACE,iBvEoiNN,CuEjiNI,cACE,mBvEmiNN,CuEhiNI,cACE,oBvEkiNN,CuE3hNI,4BAHE,kBvEqiNN,CuEliNI,cACE,mBvEiiNN,CuE7hNI,cACE,iBCnCA,CDoCA,oBvE+hNN,CuE5hNI,aACE,cvE8hNN,CuE3hNI,cACE,kBvE6hNN,CuE1hNI,cACE,oBvE4hNN,CuEzhNI,cACE,qBvE2hNN,CuEphNI,4BAHE,mBvE8hNN,CuE3hNI,cACE,oBvE0hNN,CuEthNI,cACE,kBCjEA,CDkEA,qBvEwhNN,CuEphNI,aACE,oBAAA,CACA,oBvEshNN,CuEnhNI,cACE,oBvEqhNN,CuElhNI,cACE,oBvEohNN,CuEhhNI,eACE,UvEkhNN,CuE/gNI,iBACE,iBvEihNN,CuE9gNI,iBACE,cvEghNN,CuEpmNI,aACE,WvEsmNN,CuEnmNI,cACE,evEqmNN,CuElmNI,cACE,iBvEomNN,CuEjmNI,cACE,kBvEmmNN,CuE5lNI,4BAHE,gBvEsmNN,CuEnmNI,cACE,iBvEkmNN,CuE9lNI,cACE,eCnCA,CDoCA,kBvEgmNN,CuE7lNI,aACE,YvE+lNN,CuE5lNI,cACE,gBvE8lNN,CuE3lNI,cACE,kBvE6lNN,CuE1lNI,cACE,mBvE4lNN,CuErlNI,4BAHE,iBvE+lNN,CuE5lNI,cACE,kBvE2lNN,CuEvlNI,cACE,gBCjEA,CDkEA,mBvEylNN,CuErlNI,aACE,kBAAA,CACA,kBvEulNN,CuEplNI,cACE,kBvEslNN,CuEnlNI,cACE,kBvEqlNN,CuEjlNI,eACE,QvEmlNN,CuEhlNI,iBACE,evEklNN,CuE/kNI,iBACE,YvEilNN,CuE7kNE,gBACE,WvE+kNJ,CuE5kNE,iBACE,evE8kNJ,CuE3kNE,iBACE,iBvE6kNJ,CuE1kNE,iBACE,kBvE4kNJ,CuEzkNE,iBACE,gBvE2kNJ,CuExkNE,iBACE,iBAAA,CACA,gBvE0kNJ,CuEvkNE,iBACE,eAAA,CACA,kBvEykNJ,CACF,CU/qNE,yB6DdI,aACE,QvEgsNN,CuE7rNI,cACE,YvE+rNN,CuE5rNI,cACE,cvE8rNN,CuE3rNI,cACE,evE6rNN,CuE1rNI,cACE,avE4rNN,CuEzrNI,cACE,cC9BA,CD+BA,avE2rNN,CuExrNI,cACE,YCnCA,CDoCA,evE0rNN,CuEvrNI,aACE,SvEyrNN,CuEtrNI,cACE,avEwrNN,CuErrNI,cACE,evEurNN,CuEprNI,cACE,gBvEsrNN,CuE/qNI,4BAHE,cvEyrNN,CuEtrNI,cACE,evEqrNN,CuEjrNI,cACE,aCjEA,CDkEA,gBvEmrNN,CuE/qNI,aACE,eAAA,CACA,evEirNN,CuE9qNI,cACE,evEgrNN,CuE7qNI,cACE,evE+qNN,CuE3qNI,eACE,KvE6qNN,CuE1qNI,iBACE,YvE4qNN,CuEzqNI,iBACE,SvE2qNN,CuE/vNI,aACE,avEiwNN,CuE9vNI,cACE,iBvEgwNN,CuE7vNI,cACE,mBvE+vNN,CuE5vNI,cACE,oBvE8vNN,CuEvvNI,4BAHE,kBvEiwNN,CuE9vNI,cACE,mBvE6vNN,CuEzvNI,cACE,iBCnCA,CDoCA,oBvE2vNN,CuExvNI,aACE,cvE0vNN,CuEvvNI,cACE,kBvEyvNN,CuEtvNI,cACE,oBvEwvNN,CuErvNI,cACE,qBvEuvNN,CuEhvNI,4BAHE,mBvE0vNN,CuEvvNI,cACE,oBvEsvNN,CuElvNI,cACE,kBCjEA,CDkEA,qBvEovNN,CuEhvNI,aACE,qBAAA,CACA,qBvEkvNN,CuE/uNI,cACE,qBvEivNN,CuE9uNI,cACE,qBvEgvNN,CuE5uNI,eACE,UvE8uNN,CuE3uNI,iBACE,iBvE6uNN,CuE1uNI,iBACE,cvE4uNN,CuEh0NI,aACE,YvEk0NN,CuE/zNI,cACE,gBvEi0NN,CuE9zNI,cACE,kBvEg0NN,CuE7zNI,cACE,mBvE+zNN,CuExzNI,4BAHE,iBvEk0NN,CuE/zNI,cACE,kBvE8zNN,CuE1zNI,cACE,gBCnCA,CDoCA,mBvE4zNN,CuEzzNI,aACE,avE2zNN,CuExzNI,cACE,iBvE0zNN,CuEvzNI,cACE,mBvEyzNN,CuEtzNI,cACE,oBvEwzNN,CuEjzNI,4BAHE,kBvE2zNN,CuExzNI,cACE,mBvEuzNN,CuEnzNI,cACE,iBCjEA,CDkEA,oBvEqzNN,CuEjzNI,aACE,oBAAA,CACA,oBvEmzNN,CuEhzNI,cACE,oBvEkzNN,CuE/yNI,cACE,oBvEizNN,CuE7yNI,eACE,SvE+yNN,CuE5yNI,iBACE,gBvE8yNN,CuE3yNI,iBACE,avE6yNN,CuEj4NI,aACE,WvEm4NN,CuEh4NI,cACE,evEk4NN,CuE/3NI,cACE,iBvEi4NN,CuE93NI,cACE,kBvEg4NN,CuEz3NI,4BAHE,gBvEm4NN,CuEh4NI,cACE,iBvE+3NN,CuE33NI,cACE,eCnCA,CDoCA,kBvE63NN,CuE13NI,aACE,YvE43NN,CuEz3NI,cACE,gBvE23NN,CuEx3NI,cACE,kBvE03NN,CuEv3NI,cACE,mBvEy3NN,CuEl3NI,4BAHE,iBvE43NN,CuEz3NI,cACE,kBvEw3NN,CuEp3NI,cACE,gBCjEA,CDkEA,mBvEs3NN,CuEl3NI,aACE,kBAAA,CACA,kBvEo3NN,CuEj3NI,cACE,kBvEm3NN,CuEh3NI,cACE,kBvEk3NN,CuE92NI,eACE,QvEg3NN,CuE72NI,iBACE,evE+2NN,CuE52NI,iBACE,YvE82NN,CuEl8NI,aACE,avEo8NN,CuEj8NI,cACE,iBvEm8NN,CuEh8NI,cACE,mBvEk8NN,CuE/7NI,cACE,oBvEi8NN,CuE17NI,4BAHE,kBvEo8NN,CuEj8NI,cACE,mBvEg8NN,CuE57NI,cACE,iBCnCA,CDoCA,oBvE87NN,CuE37NI,aACE,cvE67NN,CuE17NI,cACE,kBvE47NN,CuEz7NI,cACE,oBvE27NN,CuEx7NI,cACE,qBvE07NN,CuEn7NI,4BAHE,mBvE67NN,CuE17NI,cACE,oBvEy7NN,CuEr7NI,cACE,kBCjEA,CDkEA,qBvEu7NN,CuEn7NI,aACE,oBAAA,CACA,oBvEq7NN,CuEl7NI,cACE,oBvEo7NN,CuEj7NI,cACE,oBvEm7NN,CuE/6NI,eACE,UvEi7NN,CuE96NI,iBACE,iBvEg7NN,CuE76NI,iBACE,cvE+6NN,CuEngOI,aACE,WvEqgON,CuElgOI,cACE,evEogON,CuEjgOI,cACE,iBvEmgON,CuEhgOI,cACE,kBvEkgON,CuE3/NI,4BAHE,gBvEqgON,CuElgOI,cACE,iBvEigON,CuE7/NI,cACE,eCnCA,CDoCA,kBvE+/NN,CuE5/NI,aACE,YvE8/NN,CuE3/NI,cACE,gBvE6/NN,CuE1/NI,cACE,kBvE4/NN,CuEz/NI,cACE,mBvE2/NN,CuEp/NI,4BAHE,iBvE8/NN,CuE3/NI,cACE,kBvE0/NN,CuEt/NI,cACE,gBCjEA,CDkEA,mBvEw/NN,CuEp/NI,aACE,kBAAA,CACA,kBvEs/NN,CuEn/NI,cACE,kBvEq/NN,CuEl/NI,cACE,kBvEo/NN,CuEh/NI,eACE,QvEk/NN,CuE/+NI,iBACE,evEi/NN,CuE9+NI,iBACE,YvEg/NN,CuE5+NE,gBACE,WvE8+NJ,CuE3+NE,iBACE,evE6+NJ,CuE1+NE,iBACE,iBvE4+NJ,CuEz+NE,iBACE,kBvE2+NJ,CuEx+NE,iBACE,gBvE0+NJ,CuEv+NE,iBACE,iBAAA,CACA,gBvEy+NJ,CuEt+NE,iBACE,eAAA,CACA,kBvEw+NJ,CACF,CU9kOE,0B6DdI,aACE,QvE+lON,CuE5lOI,cACE,YvE8lON,CuE3lOI,cACE,cvE6lON,CuE1lOI,cACE,evE4lON,CuEzlOI,cACE,avE2lON,CuExlOI,cACE,cC9BA,CD+BA,avE0lON,CuEvlOI,cACE,YCnCA,CDoCA,evEylON,CuEtlOI,aACE,SvEwlON,CuErlOI,cACE,avEulON,CuEplOI,cACE,evEslON,CuEnlOI,cACE,gBvEqlON,CuE9kOI,4BAHE,cvEwlON,CuErlOI,cACE,evEolON,CuEhlOI,cACE,aCjEA,CDkEA,gBvEklON,CuE9kOI,aACE,eAAA,CACA,evEglON,CuE7kOI,cACE,evE+kON,CuE5kOI,cACE,evE8kON,CuE1kOI,eACE,KvE4kON,CuEzkOI,iBACE,YvE2kON,CuExkOI,iBACE,SvE0kON,CuE9pOI,aACE,avEgqON,CuE7pOI,cACE,iBvE+pON,CuE5pOI,cACE,mBvE8pON,CuE3pOI,cACE,oBvE6pON,CuEtpOI,4BAHE,kBvEgqON,CuE7pOI,cACE,mBvE4pON,CuExpOI,cACE,iBCnCA,CDoCA,oBvE0pON,CuEvpOI,aACE,cvEypON,CuEtpOI,cACE,kBvEwpON,CuErpOI,cACE,oBvEupON,CuEppOI,cACE,qBvEspON,CuE/oOI,4BAHE,mBvEypON,CuEtpOI,cACE,oBvEqpON,CuEjpOI,cACE,kBCjEA,CDkEA,qBvEmpON,CuE/oOI,aACE,qBAAA,CACA,qBvEipON,CuE9oOI,cACE,qBvEgpON,CuE7oOI,cACE,qBvE+oON,CuE3oOI,eACE,UvE6oON,CuE1oOI,iBACE,iBvE4oON,CuEzoOI,iBACE,cvE2oON,CuE/tOI,aACE,YvEiuON,CuE9tOI,cACE,gBvEguON,CuE7tOI,cACE,kBvE+tON,CuE5tOI,cACE,mBvE8tON,CuEvtOI,4BAHE,iBvEiuON,CuE9tOI,cACE,kBvE6tON,CuEztOI,cACE,gBCnCA,CDoCA,mBvE2tON,CuExtOI,aACE,avE0tON,CuEvtOI,cACE,iBvEytON,CuEttOI,cACE,mBvEwtON,CuErtOI,cACE,oBvEutON,CuEhtOI,4BAHE,kBvE0tON,CuEvtOI,cACE,mBvEstON,CuEltOI,cACE,iBCjEA,CDkEA,oBvEotON,CuEhtOI,aACE,oBAAA,CACA,oBvEktON,CuE/sOI,cACE,oBvEitON,CuE9sOI,cACE,oBvEgtON,CuE5sOI,eACE,SvE8sON,CuE3sOI,iBACE,gBvE6sON,CuE1sOI,iBACE,avE4sON,CuEhyOI,aACE,WvEkyON,CuE/xOI,cACE,evEiyON,CuE9xOI,cACE,iBvEgyON,CuE7xOI,cACE,kBvE+xON,CuExxOI,4BAHE,gBvEkyON,CuE/xOI,cACE,iBvE8xON,CuE1xOI,cACE,eCnCA,CDoCA,kBvE4xON,CuEzxOI,aACE,YvE2xON,CuExxOI,cACE,gBvE0xON,CuEvxOI,cACE,kBvEyxON,CuEtxOI,cACE,mBvEwxON,CuEjxOI,4BAHE,iBvE2xON,CuExxOI,cACE,kBvEuxON,CuEnxOI,cACE,gBCjEA,CDkEA,mBvEqxON,CuEjxOI,aACE,kBAAA,CACA,kBvEmxON,CuEhxOI,cACE,kBvEkxON,CuE/wOI,cACE,kBvEixON,CuE7wOI,eACE,QvE+wON,CuE5wOI,iBACE,evE8wON,CuE3wOI,iBACE,YvE6wON,CuEj2OI,aACE,avEm2ON,CuEh2OI,cACE,iBvEk2ON,CuE/1OI,cACE,mBvEi2ON,CuE91OI,cACE,oBvEg2ON,CuEz1OI,4BAHE,kBvEm2ON,CuEh2OI,cACE,mBvE+1ON,CuE31OI,cACE,iBCnCA,CDoCA,oBvE61ON,CuE11OI,aACE,cvE41ON,CuEz1OI,cACE,kBvE21ON,CuEx1OI,cACE,oBvE01ON,CuEv1OI,cACE,qBvEy1ON,CuEl1OI,4BAHE,mBvE41ON,CuEz1OI,cACE,oBvEw1ON,CuEp1OI,cACE,kBCjEA,CDkEA,qBvEs1ON,CuEl1OI,aACE,oBAAA,CACA,oBvEo1ON,CuEj1OI,cACE,oBvEm1ON,CuEh1OI,cACE,oBvEk1ON,CuE90OI,eACE,UvEg1ON,CuE70OI,iBACE,iBvE+0ON,CuE50OI,iBACE,cvE80ON,CuEl6OI,aACE,WvEo6ON,CuEj6OI,cACE,evEm6ON,CuEh6OI,cACE,iBvEk6ON,CuE/5OI,cACE,kBvEi6ON,CuE15OI,4BAHE,gBvEo6ON,CuEj6OI,cACE,iBvEg6ON,CuE55OI,cACE,eCnCA,CDoCA,kBvE85ON,CuE35OI,aACE,YvE65ON,CuE15OI,cACE,gBvE45ON,CuEz5OI,cACE,kBvE25ON,CuEx5OI,cACE,mBvE05ON,CuEn5OI,4BAHE,iBvE65ON,CuE15OI,cACE,kBvEy5ON,CuEr5OI,cACE,gBCjEA,CDkEA,mBvEu5ON,CuEn5OI,aACE,kBAAA,CACA,kBvEq5ON,CuEl5OI,cACE,kBvEo5ON,CuEj5OI,cACE,kBvEm5ON,CuE/4OI,eACE,QvEi5ON,CuE94OI,iBACE,evEg5ON,CuE74OI,iBACE,YvE+4ON,CuE34OE,gBACE,WvE64OJ,CuE14OE,iBACE,evE44OJ,CuEz4OE,iBACE,iBvE24OJ,CuEx4OE,iBACE,kBvE04OJ,CuEv4OE,iBACE,gBvEy4OJ,CuEt4OE,iBACE,iBAAA,CACA,gBvEw4OJ,CuEr4OE,iBACE,eAAA,CACA,kBvEu4OJ,CACF,CU7+OE,0B6DdI,aACE,QvE8/ON,CuE3/OI,cACE,YvE6/ON,CuE1/OI,cACE,cvE4/ON,CuEz/OI,cACE,evE2/ON,CuEx/OI,cACE,avE0/ON,CuEv/OI,cACE,cC9BA,CD+BA,avEy/ON,CuEt/OI,cACE,YCnCA,CDoCA,evEw/ON,CuEr/OI,aACE,SvEu/ON,CuEp/OI,cACE,avEs/ON,CuEn/OI,cACE,evEq/ON,CuEl/OI,cACE,gBvEo/ON,CuE7+OI,4BAHE,cvEu/ON,CuEp/OI,cACE,evEm/ON,CuE/+OI,cACE,aCjEA,CDkEA,gBvEi/ON,CuE7+OI,aACE,eAAA,CACA,evE++ON,CuE5+OI,cACE,evE8+ON,CuE3+OI,cACE,evE6+ON,CuEz+OI,eACE,KvE2+ON,CuEx+OI,iBACE,YvE0+ON,CuEv+OI,iBACE,SvEy+ON,CuE7jPI,aACE,avE+jPN,CuE5jPI,cACE,iBvE8jPN,CuE3jPI,cACE,mBvE6jPN,CuE1jPI,cACE,oBvE4jPN,CuErjPI,4BAHE,kBvE+jPN,CuE5jPI,cACE,mBvE2jPN,CuEvjPI,cACE,iBCnCA,CDoCA,oBvEyjPN,CuEtjPI,aACE,cvEwjPN,CuErjPI,cACE,kBvEujPN,CuEpjPI,cACE,oBvEsjPN,CuEnjPI,cACE,qBvEqjPN,CuE9iPI,4BAHE,mBvEwjPN,CuErjPI,cACE,oBvEojPN,CuEhjPI,cACE,kBCjEA,CDkEA,qBvEkjPN,CuE9iPI,aACE,qBAAA,CACA,qBvEgjPN,CuE7iPI,cACE,qBvE+iPN,CuE5iPI,cACE,qBvE8iPN,CuE1iPI,eACE,UvE4iPN,CuEziPI,iBACE,iBvE2iPN,CuExiPI,iBACE,cvE0iPN,CuE9nPI,aACE,YvEgoPN,CuE7nPI,cACE,gBvE+nPN,CuE5nPI,cACE,kBvE8nPN,CuE3nPI,cACE,mBvE6nPN,CuEtnPI,4BAHE,iBvEgoPN,CuE7nPI,cACE,kBvE4nPN,CuExnPI,cACE,gBCnCA,CDoCA,mBvE0nPN,CuEvnPI,aACE,avEynPN,CuEtnPI,cACE,iBvEwnPN,CuErnPI,cACE,mBvEunPN,CuEpnPI,cACE,oBvEsnPN,CuE/mPI,4BAHE,kBvEynPN,CuEtnPI,cACE,mBvEqnPN,CuEjnPI,cACE,iBCjEA,CDkEA,oBvEmnPN,CuE/mPI,aACE,oBAAA,CACA,oBvEinPN,CuE9mPI,cACE,oBvEgnPN,CuE7mPI,cACE,oBvE+mPN,CuE3mPI,eACE,SvE6mPN,CuE1mPI,iBACE,gBvE4mPN,CuEzmPI,iBACE,avE2mPN,CuE/rPI,aACE,WvEisPN,CuE9rPI,cACE,evEgsPN,CuE7rPI,cACE,iBvE+rPN,CuE5rPI,cACE,kBvE8rPN,CuEvrPI,4BAHE,gBvEisPN,CuE9rPI,cACE,iBvE6rPN,CuEzrPI,cACE,eCnCA,CDoCA,kBvE2rPN,CuExrPI,aACE,YvE0rPN,CuEvrPI,cACE,gBvEyrPN,CuEtrPI,cACE,kBvEwrPN,CuErrPI,cACE,mBvEurPN,CuEhrPI,4BAHE,iBvE0rPN,CuEvrPI,cACE,kBvEsrPN,CuElrPI,cACE,gBCjEA,CDkEA,mBvEorPN,CuEhrPI,aACE,kBAAA,CACA,kBvEkrPN,CuE/qPI,cACE,kBvEirPN,CuE9qPI,cACE,kBvEgrPN,CuE5qPI,eACE,QvE8qPN,CuE3qPI,iBACE,evE6qPN,CuE1qPI,iBACE,YvE4qPN,CuEhwPI,aACE,avEkwPN,CuE/vPI,cACE,iBvEiwPN,CuE9vPI,cACE,mBvEgwPN,CuE7vPI,cACE,oBvE+vPN,CuExvPI,4BAHE,kBvEkwPN,CuE/vPI,cACE,mBvE8vPN,CuE1vPI,cACE,iBCnCA,CDoCA,oBvE4vPN,CuEzvPI,aACE,cvE2vPN,CuExvPI,cACE,kBvE0vPN,CuEvvPI,cACE,oBvEyvPN,CuEtvPI,cACE,qBvEwvPN,CuEjvPI,4BAHE,mBvE2vPN,CuExvPI,cACE,oBvEuvPN,CuEnvPI,cACE,kBCjEA,CDkEA,qBvEqvPN,CuEjvPI,aACE,oBAAA,CACA,oBvEmvPN,CuEhvPI,cACE,oBvEkvPN,CuE/uPI,cACE,oBvEivPN,CuE7uPI,eACE,UvE+uPN,CuE5uPI,iBACE,iBvE8uPN,CuE3uPI,iBACE,cvE6uPN,CuEj0PI,aACE,WvEm0PN,CuEh0PI,cACE,evEk0PN,CuE/zPI,cACE,iBvEi0PN,CuE9zPI,cACE,kBvEg0PN,CuEzzPI,4BAHE,gBvEm0PN,CuEh0PI,cACE,iBvE+zPN,CuE3zPI,cACE,eCnCA,CDoCA,kBvE6zPN,CuE1zPI,aACE,YvE4zPN,CuEzzPI,cACE,gBvE2zPN,CuExzPI,cACE,kBvE0zPN,CuEvzPI,cACE,mBvEyzPN,CuElzPI,4BAHE,iBvE4zPN,CuEzzPI,cACE,kBvEwzPN,CuEpzPI,cACE,gBCjEA,CDkEA,mBvEszPN,CuElzPI,aACE,kBAAA,CACA,kBvEozPN,CuEjzPI,cACE,kBvEmzPN,CuEhzPI,cACE,kBvEkzPN,CuE9yPI,eACE,QvEgzPN,CuE7yPI,iBACE,evE+yPN,CuE5yPI,iBACE,YvE8yPN,CuE1yPE,gBACE,WvE4yPJ,CuEzyPE,iBACE,evE2yPJ,CuExyPE,iBACE,iBvE0yPJ,CuEvyPE,iBACE,kBvEyyPJ,CuEtyPE,iBACE,gBvEwyPJ,CuEryPE,iBACE,iBAAA,CACA,gBvEuyPJ,CuEpyPE,iBACE,eAAA,CACA,kBvEsyPJ,CACF,CU54PE,0B6DdI,cACE,QvE65PN,CuE15PI,eACE,YvE45PN,CuEz5PI,eACE,cvE25PN,CuEx5PI,eACE,evE05PN,CuEv5PI,eACE,avEy5PN,CuEt5PI,eACE,cC9BA,CD+BA,avEw5PN,CuEr5PI,eACE,YCnCA,CDoCA,evEu5PN,CuEp5PI,cACE,SvEs5PN,CuEn5PI,eACE,avEq5PN,CuEl5PI,eACE,evEo5PN,CuEj5PI,eACE,gBvEm5PN,CuEh5PI,eACE,cvEk5PN,CuE/4PI,eACE,eC5DA,CD6DA,cvEi5PN,CuE94PI,eACE,aCjEA,CDkEA,gBvEg5PN,CuE54PI,cACE,eAAA,CACA,evE84PN,CuE34PI,eACE,evE64PN,CuE14PI,eACE,evE44PN,CuEx4PI,gBACE,KvE04PN,CuEv4PI,kBACE,YvEy4PN,CuEt4PI,kBACE,SvEw4PN,CuE59PI,cACE,avE89PN,CuE39PI,eACE,iBvE69PN,CuE19PI,eACE,mBvE49PN,CuEz9PI,eACE,oBvE29PN,CuEp9PI,8BAHE,kBvE89PN,CuE39PI,eACE,mBvE09PN,CuEt9PI,eACE,iBCnCA,CDoCA,oBvEw9PN,CuEr9PI,cACE,cvEu9PN,CuEp9PI,eACE,kBvEs9PN,CuEn9PI,eACE,oBvEq9PN,CuEl9PI,eACE,qBvEo9PN,CuE78PI,8BAHE,mBvEu9PN,CuEp9PI,eACE,oBvEm9PN,CuE/8PI,eACE,kBCjEA,CDkEA,qBvEi9PN,CuE78PI,cACE,qBAAA,CACA,qBvE+8PN,CuE58PI,eACE,qBvE88PN,CuE38PI,eACE,qBvE68PN,CuEz8PI,gBACE,UvE28PN,CuEx8PI,kBACE,iBvE08PN,CuEv8PI,kBACE,cvEy8PN,CuE7hQI,cACE,YvE+hQN,CuE5hQI,eACE,gBvE8hQN,CuE3hQI,eACE,kBvE6hQN,CuE1hQI,eACE,mBvE4hQN,CuErhQI,8BAHE,iBvE+hQN,CuE5hQI,eACE,kBvE2hQN,CuEvhQI,eACE,gBCnCA,CDoCA,mBvEyhQN,CuEthQI,cACE,avEwhQN,CuErhQI,eACE,iBvEuhQN,CuEphQI,eACE,mBvEshQN,CuEnhQI,eACE,oBvEqhQN,CuE9gQI,8BAHE,kBvEwhQN,CuErhQI,eACE,mBvEohQN,CuEhhQI,eACE,iBCjEA,CDkEA,oBvEkhQN,CuE9gQI,cACE,oBAAA,CACA,oBvEghQN,CuE7gQI,eACE,oBvE+gQN,CuE5gQI,eACE,oBvE8gQN,CuE1gQI,gBACE,SvE4gQN,CuEzgQI,kBACE,gBvE2gQN,CuExgQI,kBACE,avE0gQN,CuE9lQI,cACE,WvEgmQN,CuE7lQI,eACE,evE+lQN,CuE5lQI,eACE,iBvE8lQN,CuE3lQI,eACE,kBvE6lQN,CuEtlQI,8BAHE,gBvEgmQN,CuE7lQI,eACE,iBvE4lQN,CuExlQI,eACE,eCnCA,CDoCA,kBvE0lQN,CuEvlQI,cACE,YvEylQN,CuEtlQI,eACE,gBvEwlQN,CuErlQI,eACE,kBvEulQN,CuEplQI,eACE,mBvEslQN,CuE/kQI,8BAHE,iBvEylQN,CuEtlQI,eACE,kBvEqlQN,CuEjlQI,eACE,gBCjEA,CDkEA,mBvEmlQN,CuE/kQI,cACE,kBAAA,CACA,kBvEilQN,CuE9kQI,eACE,kBvEglQN,CuE7kQI,eACE,kBvE+kQN,CuE3kQI,gBACE,QvE6kQN,CuE1kQI,kBACE,evE4kQN,CuEzkQI,kBACE,YvE2kQN,CuE/pQI,cACE,avEiqQN,CuE9pQI,eACE,iBvEgqQN,CuE7pQI,eACE,mBvE+pQN,CuE5pQI,eACE,oBvE8pQN,CuEvpQI,8BAHE,kBvEiqQN,CuE9pQI,eACE,mBvE6pQN,CuEzpQI,eACE,iBCnCA,CDoCA,oBvE2pQN,CuExpQI,cACE,cvE0pQN,CuEvpQI,eACE,kBvEypQN,CuEtpQI,eACE,oBvEwpQN,CuErpQI,eACE,qBvEupQN,CuEhpQI,8BAHE,mBvE0pQN,CuEvpQI,eACE,oBvEspQN,CuElpQI,eACE,kBCjEA,CDkEA,qBvEopQN,CuEhpQI,cACE,oBAAA,CACA,oBvEkpQN,CuE/oQI,eACE,oBvEipQN,CuE9oQI,eACE,oBvEgpQN,CuE5oQI,gBACE,UvE8oQN,CuE3oQI,kBACE,iBvE6oQN,CuE1oQI,kBACE,cvE4oQN,CuEhuQI,cACE,WvEkuQN,CuE/tQI,eACE,evEiuQN,CuE9tQI,eACE,iBvEguQN,CuE7tQI,eACE,kBvE+tQN,CuExtQI,8BAHE,gBvEkuQN,CuE/tQI,eACE,iBvE8tQN,CuE1tQI,eACE,eCnCA,CDoCA,kBvE4tQN,CuEztQI,cACE,YvE2tQN,CuExtQI,eACE,gBvE0tQN,CuEvtQI,eACE,kBvEytQN,CuEttQI,eACE,mBvEwtQN,CuEjtQI,8BAHE,iBvE2tQN,CuExtQI,eACE,kBvEutQN,CuEntQI,eACE,gBCjEA,CDkEA,mBvEqtQN,CuEjtQI,cACE,kBAAA,CACA,kBvEmtQN,CuEhtQI,eACE,kBvEktQN,CuE/sQI,eACE,kBvEitQN,CuE7sQI,gBACE,QvE+sQN,CuE5sQI,kBACE,evE8sQN,CuE3sQI,kBACE,YvE6sQN,CuEzsQE,iBACE,WvE2sQJ,CuExsQE,kBACE,evE0sQJ,CuEvsQE,kBACE,iBvEysQJ,CuEtsQE,kBACE,kBvEwsQJ,CuErsQE,kBACE,gBvEusQJ,CuEpsQE,kBACE,iBAAA,CACA,gBvEssQJ,CuEnsQE,kBACE,eAAA,CACA,kBvEqsQJ,CACF,CU3yQE,0B6DdI,eACE,QvE4zQN,CuEzzQI,gBACE,YvE2zQN,CuExzQI,gBACE,cvE0zQN,CuEvzQI,gBACE,evEyzQN,CuEtzQI,gBACE,avEwzQN,CuErzQI,gBACE,cC9BA,CD+BA,avEuzQN,CuEpzQI,gBACE,YCnCA,CDoCA,evEszQN,CuEnzQI,eACE,SvEqzQN,CuElzQI,gBACE,avEozQN,CuEjzQI,gBACE,evEmzQN,CuEhzQI,gBACE,gBvEkzQN,CuE/yQI,gBACE,cvEizQN,CuE9yQI,gBACE,eC5DA,CD6DA,cvEgzQN,CuE7yQI,gBACE,aCjEA,CDkEA,gBvE+yQN,CuE3yQI,eACE,eAAA,CACA,evE6yQN,CuE1yQI,gBACE,evE4yQN,CuEzyQI,gBACE,evE2yQN,CuEvyQI,iBACE,KvEyyQN,CuEtyQI,mBACE,YvEwyQN,CuEryQI,mBACE,SvEuyQN,CuE33QI,eACE,avE63QN,CuE13QI,gBACE,iBvE43QN,CuEz3QI,gBACE,mBvE23QN,CuEx3QI,gBACE,oBvE03QN,CuEn3QI,gCAHE,kBvE63QN,CuE13QI,gBACE,mBvEy3QN,CuEr3QI,gBACE,iBCnCA,CDoCA,oBvEu3QN,CuEp3QI,eACE,cvEs3QN,CuEn3QI,gBACE,kBvEq3QN,CuEl3QI,gBACE,oBvEo3QN,CuEj3QI,gBACE,qBvEm3QN,CuE52QI,gCAHE,mBvEs3QN,CuEn3QI,gBACE,oBvEk3QN,CuE92QI,gBACE,kBCjEA,CDkEA,qBvEg3QN,CuE52QI,eACE,qBAAA,CACA,qBvE82QN,CuE32QI,gBACE,qBvE62QN,CuE12QI,gBACE,qBvE42QN,CuEx2QI,iBACE,UvE02QN,CuEv2QI,mBACE,iBvEy2QN,CuEt2QI,mBACE,cvEw2QN,CuE57QI,eACE,YvE87QN,CuE37QI,gBACE,gBvE67QN,CuE17QI,gBACE,kBvE47QN,CuEz7QI,gBACE,mBvE27QN,CuEp7QI,gCAHE,iBvE87QN,CuE37QI,gBACE,kBvE07QN,CuEt7QI,gBACE,gBCnCA,CDoCA,mBvEw7QN,CuEr7QI,eACE,avEu7QN,CuEp7QI,gBACE,iBvEs7QN,CuEn7QI,gBACE,mBvEq7QN,CuEl7QI,gBACE,oBvEo7QN,CuE76QI,gCAHE,kBvEu7QN,CuEp7QI,gBACE,mBvEm7QN,CuE/6QI,gBACE,iBCjEA,CDkEA,oBvEi7QN,CuE76QI,eACE,oBAAA,CACA,oBvE+6QN,CuE56QI,gBACE,oBvE86QN,CuE36QI,gBACE,oBvE66QN,CuEz6QI,iBACE,SvE26QN,CuEx6QI,mBACE,gBvE06QN,CuEv6QI,mBACE,avEy6QN,CuE7/QI,eACE,WvE+/QN,CuE5/QI,gBACE,evE8/QN,CuE3/QI,gBACE,iBvE6/QN,CuE1/QI,gBACE,kBvE4/QN,CuEr/QI,gCAHE,gBvE+/QN,CuE5/QI,gBACE,iBvE2/QN,CuEv/QI,gBACE,eCnCA,CDoCA,kBvEy/QN,CuEt/QI,eACE,YvEw/QN,CuEr/QI,gBACE,gBvEu/QN,CuEp/QI,gBACE,kBvEs/QN,CuEn/QI,gBACE,mBvEq/QN,CuE9+QI,gCAHE,iBvEw/QN,CuEr/QI,gBACE,kBvEo/QN,CuEh/QI,gBACE,gBCjEA,CDkEA,mBvEk/QN,CuE9+QI,eACE,kBAAA,CACA,kBvEg/QN,CuE7+QI,gBACE,kBvE++QN,CuE5+QI,gBACE,kBvE8+QN,CuE1+QI,iBACE,QvE4+QN,CuEz+QI,mBACE,evE2+QN,CuEx+QI,mBACE,YvE0+QN,CuE9jRI,eACE,avEgkRN,CuE7jRI,gBACE,iBvE+jRN,CuE5jRI,gBACE,mBvE8jRN,CuE3jRI,gBACE,oBvE6jRN,CuEtjRI,gCAHE,kBvEgkRN,CuE7jRI,gBACE,mBvE4jRN,CuExjRI,gBACE,iBCnCA,CDoCA,oBvE0jRN,CuEvjRI,eACE,cvEyjRN,CuEtjRI,gBACE,kBvEwjRN,CuErjRI,gBACE,oBvEujRN,CuEpjRI,gBACE,qBvEsjRN,CuE/iRI,gCAHE,mBvEyjRN,CuEtjRI,gBACE,oBvEqjRN,CuEjjRI,gBACE,kBCjEA,CDkEA,qBvEmjRN,CuE/iRI,eACE,oBAAA,CACA,oBvEijRN,CuE9iRI,gBACE,oBvEgjRN,CuE7iRI,gBACE,oBvE+iRN,CuE3iRI,iBACE,UvE6iRN,CuE1iRI,mBACE,iBvE4iRN,CuEziRI,mBACE,cvE2iRN,CuE/nRI,eACE,WvEioRN,CuE9nRI,gBACE,evEgoRN,CuE7nRI,gBACE,iBvE+nRN,CuE5nRI,gBACE,kBvE8nRN,CuEvnRI,gCAHE,gBvEioRN,CuE9nRI,gBACE,iBvE6nRN,CuEznRI,gBACE,eCnCA,CDoCA,kBvE2nRN,CuExnRI,eACE,YvE0nRN,CuEvnRI,gBACE,gBvEynRN,CuEtnRI,gBACE,kBvEwnRN,CuErnRI,gBACE,mBvEunRN,CuEhnRI,gCAHE,iBvE0nRN,CuEvnRI,gBACE,kBvEsnRN,CuElnRI,gBACE,gBCjEA,CDkEA,mBvEonRN,CuEhnRI,eACE,kBAAA,CACA,kBvEknRN,CuE/mRI,gBACE,kBvEinRN,CuE9mRI,gBACE,kBvEgnRN,CuE5mRI,iBACE,QvE8mRN,CuE3mRI,mBACE,evE6mRN,CuE1mRI,mBACE,YvE4mRN,CuExmRE,kBACE,WvE0mRJ,CuEvmRE,mBACE,evEymRJ,CuEtmRE,mBACE,iBvEwmRJ,CuErmRE,mBACE,kBvEumRJ,CuEpmRE,mBACE,gBvEsmRJ,CuEnmRE,mBACE,iBAAA,CACA,gBvEqmRJ,CuElmRE,mBACE,eAAA,CACA,kBvEomRJ,CACF,CACF,CyE/tRA,iBACE,iBACE,ezEiuRF,CyE9tRA,kBACE,iBzEguRF,CyE7tRA,eACE,gBzE+tRF,CyE5tRA,qBACE,wBzE8tRF,CyE3tRA,qBACE,wBzE6tRF,CyE1tRA,sBACE,yBzE4tRF,CyEztRA,oB/DiBA,eAAA,CACA,sBAAA,CACA,kBV2sRA,CyE1tRA,iBACE,ezE4tRF,CyEztRA,gBACE,ezE2tRF,CyExtRA,kBACE,ezE0tRF,CyEvtRA,cACE,ezEytRF,CyEttRA,YACE,kBzEwtRF,CyErtRA,YACE,gBzEutRF,CyEptRA,YACE,kBzEstRF,CyEntRA,YACE,czEqtRF,CyEltRA,YACE,iBzEotRF,CyEjtRA,YACE,iBzEmtRF,CyEhtRA,YACE,gBzEktRF,CyE/sRA,YACE,mBzEitRF,CyE9sRA,YACE,kBzEgtRF,CyE7sRA,YACE,czE+sRF,CyE5sRA,YACE,iBzE8sRF,CyE3sRA,gBACE,+BzE6sRF,CyE1sRA,gBACE,+BzE4sRF,C0E5yRA,cACE,kB1EgzRF,C0E7yRA,gBACE,iB1E+yRF,C0E5yRA,sDAEE,2BAAA,CACA,mBAAA,CACA,oBAAA,CACA,mBAAA,CACA,qBAAA,CACA,yBAAA,CACA,8BAAA,CACA,4BAAA,CACA,kB1E8yRF,C0E3yRA,mFAEE,yBAAA,CACA,oBAAA,CACA,qBAAA,CACA,kBAAA,CACA,0BAAA,CACA,wBAAA,CACA,4B1E6yRF,C2E10RA,+BACE,yDAAA,CACA,qCAAA,CACA,qE3E80RF,C2E30RA,kDAEE,kBAAA,CACA,kCAAA,CACA,mB3E60RF,CA1CF,C0E9yRA,iB1E40RA,C2E50RA,iBAcE,aACE,mBAAqB,sB3E60RrB,C2E50RA,oBAAsB,uB3E+0RtB,CACF,CACF,C4Ev1RA,iBAGM,oBAAuB,2F5Ew1R3B,C4Ev1RI,iBAAoB,sG5E01RxB,C4E31RI,sBAAuB,4F5E81R3B,C4E71RI,mBAAoB,uG5Eg2RxB,C4Ej2RI,oBAAuB,yF5Eo2R3B,C4En2RI,iBAAoB,oG5Es2RxB,C4Ev2RI,oBAAuB,0F5E02R3B,C4Ez2RI,iBAAoB,qG5E42RxB,C4E72RI,mBAAuB,yF5Eg3R3B,C4E/2RI,gBAAoB,oG5Ek3RxB,C4En3RI,iBAAuB,wF5Es3R3B,C4Er3RI,cAAoB,mG5Ew3RxB,C4El3RI,UAAmB,kB5Eq3RvB,C4Ep3RI,WAAoB,yB5Eu3RxB,C4Et3RI,WAAoB,wB5Ey3RxB,C4Ex3RI,UAAmB,mB5E23RvB,C4E13RI,WAAoB,0B5E63RxB,C4E53RI,WAAoB,yB5E+3RxB,C4Ep4RI,UAAmB,uB5Eu4RvB,C4Et4RI,WAAoB,8B5Ey4RxB,C4Ex4RI,WAAoB,6B5E24RxB,C4E14RI,UAAmB,wB5E64RvB,C4E54RI,WAAoB,+B5E+4RxB,C4E94RI,WAAoB,8B5Ei5RxB,C4Et5RI,UAAmB,sB5Ey5RvB,C4Ex5RI,WAAoB,6B5E25RxB,C4E15RI,WAAoB,4B5E65RxB,C4E55RI,UAAmB,uB5E+5RvB,C4E95RI,WAAoB,8B5Ei6RxB,C4Eh6RI,WAAoB,6B5Em6RxB,C4Ex6RI,UAAmB,qB5E26RvB,C4E16RI,WAAoB,4B5E66RxB,C4E56RI,WAAoB,2B5E+6RxB,C4E96RI,UAAmB,sB5Ei7RvB,C4Eh7RI,WAAoB,6B5Em7RxB,C4El7RI,WAAoB,4B5Eq7RxB,C4E17RI,UAAmB,uB5E67RvB,C4E57RI,WAAoB,8B5E+7RxB,C4E97RI,WAAoB,6B5Ei8RxB,C4Eh8RI,UAAmB,wB5Em8RvB,C4El8RI,WAAoB,+B5Eq8RxB,C4Ep8RI,WAAoB,8B5Eu8RxB,C4E58RI,UAAmB,qB5E+8RvB,C4E98RI,WAAoB,4B5Ei9RxB,C4Eh9RI,WAAoB,2B5Em9RxB,C4El9RI,UAAmB,sB5Eq9RvB,C4Ep9RI,WAAoB,6B5Eu9RxB,C4Et9RI,WAAoB,4B5Ey9RxB,C4En9RI,WAAmB,mB5Es9RvB,C4Er9RI,WAAmB,oB5Ew9RvB,C4Ez9RI,WAAmB,mB5E49RvB,C4E39RI,WAAmB,oB5E89RvB,C4E/9RI,WAAmB,mB5Ek+RvB,C4Ej+RI,WAAmB,oB5Eo+RvB,C4Er+RI,YAAmB,oB5Ew+RvB,C4Ev+RI,YAAmB,qB5E0+RvB,C4E3+RI,aAAmB,oB5E8+RvB,C4E7+RI,aAAmB,qB5Eg/R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","file":"fokus.min.css","sourcesContent":["@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","@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-contrast-border-width: var(--fs-border-width);\n --fs-contrast-focus-width: var(--fs-focus-width);\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 @media (prefers-contrast: more) {\n :root {\n --fs-contrast-border-width: 2px;\n --fs-contrast-focus-width: 3px;\n --fs-focus-width: var(--fs-contrast-focus-width);\n --fs-border-width: var(--fs-contrast-border-width);\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 button,\n [role=button],\n input,\n select,\n textarea,\n .fs-btn {\n border-color: ButtonText;\n forced-color-adjust: auto;\n }\n .fs-u-focus-ring:focus-visible {\n outline: 3px solid Highlight;\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 --fs-contrast-border-width: var(--fs-border-width);\n --fs-contrast-focus-width: var(--fs-focus-width);\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 @media (prefers-contrast: more) {\n :root {\n --fs-contrast-border-width: 2px;\n --fs-contrast-focus-width: 3px;\n --fs-focus-width: var(--fs-contrast-focus-width);\n --fs-border-width: var(--fs-contrast-border-width);\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 button,\n [role=\"button\"],\n input,\n select,\n textarea,\n .fs-btn {\n border-color: ButtonText;\n forced-color-adjust: auto;\n }\n\n .fs-u-focus-ring:focus-visible {\n outline: 3px solid Highlight;\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","@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// 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"]}