admin-lte 4.0.2 → 4.1.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 (146) hide show
  1. package/ACCESSIBILITY-COMPLIANCE.md +60 -339
  2. package/CHANGELOG.md +66 -0
  3. package/README.md +15 -2
  4. package/dist/css/adminlte-docs.css +878 -0
  5. package/dist/css/adminlte-docs.css.map +1 -0
  6. package/dist/css/adminlte-docs.min.css +7 -0
  7. package/dist/css/adminlte-docs.min.css.map +1 -0
  8. package/dist/css/adminlte-docs.rtl.css +877 -0
  9. package/dist/css/adminlte-docs.rtl.css.map +1 -0
  10. package/dist/css/adminlte-docs.rtl.min.css +7 -0
  11. package/dist/css/adminlte-docs.rtl.min.css.map +1 -0
  12. package/dist/css/adminlte.css +1176 -2718
  13. package/dist/css/adminlte.css.map +1 -1
  14. package/dist/css/adminlte.min.css +2 -2
  15. package/dist/css/adminlte.min.css.map +1 -1
  16. package/dist/css/adminlte.rtl.css +1176 -2718
  17. package/dist/css/adminlte.rtl.css.map +1 -1
  18. package/dist/css/adminlte.rtl.min.css +2 -2
  19. package/dist/css/adminlte.rtl.min.css.map +1 -1
  20. package/dist/js/adminlte.esm.js +1365 -0
  21. package/dist/js/adminlte.esm.js.map +1 -0
  22. package/dist/js/adminlte.esm.min.js +7 -0
  23. package/dist/js/adminlte.esm.min.js.map +1 -0
  24. package/dist/js/adminlte.js +606 -310
  25. package/dist/js/adminlte.js.map +1 -1
  26. package/dist/js/adminlte.min.js +2 -2
  27. package/dist/js/adminlte.min.js.map +1 -1
  28. package/dist/js/types/accessibility.d.ts +46 -0
  29. package/dist/js/types/adminlte.d.ts +9 -0
  30. package/dist/js/types/base-component.d.ts +36 -0
  31. package/dist/js/types/card-widget.d.ts +30 -0
  32. package/dist/js/types/color-mode.d.ts +56 -0
  33. package/dist/js/types/direct-chat.d.ts +19 -0
  34. package/dist/js/types/fullscreen.d.ts +21 -0
  35. package/dist/js/types/layout.d.ts +19 -0
  36. package/dist/js/types/push-menu.d.ts +102 -0
  37. package/dist/js/types/treeview.d.ts +27 -0
  38. package/dist/js/types/util/index.d.ts +42 -0
  39. package/package.json +60 -21
  40. package/src/scss/_app-header.scss +3 -1
  41. package/src/scss/_app-main.scss +4 -0
  42. package/src/scss/_app-sidebar.scss +3 -1
  43. package/src/scss/_bootstrap-overrides.scss +60 -0
  44. package/src/scss/_callouts.scss +13 -3
  45. package/src/scss/_dropdown.scss +3 -1
  46. package/src/scss/_info-box.scss +3 -1
  47. package/src/scss/_progress-bars.scss +3 -1
  48. package/src/scss/_table.scss +4 -2
  49. package/src/scss/adminlte-docs.scss +25 -0
  50. package/src/scss/adminlte.scss +5 -4
  51. package/src/scss/pages/_login_and_register.scss +3 -1
  52. package/src/scss/parts/_core.scss +0 -1
  53. package/src/ts/accessibility.ts +129 -69
  54. package/src/ts/adminlte.ts +3 -1
  55. package/src/ts/base-component.ts +84 -0
  56. package/src/ts/card-widget.ts +134 -85
  57. package/src/ts/color-mode.ts +174 -0
  58. package/src/ts/direct-chat.ts +38 -32
  59. package/src/ts/fullscreen.ts +78 -63
  60. package/src/ts/layout.ts +2 -1
  61. package/src/ts/push-menu.ts +93 -44
  62. package/src/ts/treeview.ts +107 -47
  63. package/src/ts/util/index.ts +114 -29
  64. package/.browserslistrc +0 -17
  65. package/.prettierrc +0 -6
  66. package/CODE_OF_CONDUCT.md +0 -43
  67. package/SECURITY.md +0 -99
  68. package/dist/UI/general.html +0 -2317
  69. package/dist/UI/icons.html +0 -1126
  70. package/dist/UI/timeline.html +0 -1212
  71. package/dist/docs/browser-support.html +0 -826
  72. package/dist/docs/color-mode.html +0 -1142
  73. package/dist/docs/components/main-header.html +0 -1209
  74. package/dist/docs/components/main-sidebar.html +0 -924
  75. package/dist/docs/customization.html +0 -1080
  76. package/dist/docs/deployment.html +0 -1145
  77. package/dist/docs/faq.html +0 -1392
  78. package/dist/docs/getting-started.html +0 -991
  79. package/dist/docs/how-to-contribute.html +0 -890
  80. package/dist/docs/index.html +0 -16
  81. package/dist/docs/integrations.html +0 -1231
  82. package/dist/docs/introduction.html +0 -1008
  83. package/dist/docs/javascript/accessibility.html +0 -949
  84. package/dist/docs/javascript/card-widget.html +0 -1019
  85. package/dist/docs/javascript/direct-chat.html +0 -896
  86. package/dist/docs/javascript/fullscreen.html +0 -905
  87. package/dist/docs/javascript/layout.html +0 -908
  88. package/dist/docs/javascript/plugins-overview.html +0 -1144
  89. package/dist/docs/javascript/pushmenu.html +0 -1045
  90. package/dist/docs/javascript/treeview.html +0 -1024
  91. package/dist/docs/layout-blueprint.html +0 -1087
  92. package/dist/docs/layout.html +0 -842
  93. package/dist/docs/license.html +0 -807
  94. package/dist/docs/migration.html +0 -1149
  95. package/dist/docs/recipes.html +0 -1185
  96. package/dist/docs/rtl.html +0 -957
  97. package/dist/examples/lockscreen.html +0 -249
  98. package/dist/examples/login-v2.html +0 -282
  99. package/dist/examples/login.html +0 -272
  100. package/dist/examples/register-v2.html +0 -291
  101. package/dist/examples/register.html +0 -277
  102. package/dist/forms/elements.html +0 -1405
  103. package/dist/forms/layout.html +0 -1267
  104. package/dist/forms/validation.html +0 -1275
  105. package/dist/forms/wizard.html +0 -1410
  106. package/dist/generate/theme.html +0 -1082
  107. package/dist/index.html +0 -1745
  108. package/dist/index2.html +0 -2277
  109. package/dist/index3.html +0 -1532
  110. package/dist/layout/collapsed-sidebar-without-hover.html +0 -1144
  111. package/dist/layout/collapsed-sidebar.html +0 -1137
  112. package/dist/layout/fixed-complete.html +0 -1138
  113. package/dist/layout/fixed-footer.html +0 -1136
  114. package/dist/layout/fixed-header.html +0 -1136
  115. package/dist/layout/fixed-sidebar.html +0 -1138
  116. package/dist/layout/layout-custom-area.html +0 -1177
  117. package/dist/layout/layout-rtl.html +0 -1137
  118. package/dist/layout/logo-switch.html +0 -683
  119. package/dist/layout/sidebar-mini.html +0 -1137
  120. package/dist/layout/unfixed-sidebar.html +0 -1136
  121. package/dist/mailbox/compose.html +0 -1151
  122. package/dist/mailbox/inbox.html +0 -1509
  123. package/dist/mailbox/read.html +0 -1202
  124. package/dist/pages/404.html +0 -239
  125. package/dist/pages/500.html +0 -227
  126. package/dist/pages/calendar.html +0 -1266
  127. package/dist/pages/chat.html +0 -1427
  128. package/dist/pages/faq.html +0 -1383
  129. package/dist/pages/file-manager.html +0 -1835
  130. package/dist/pages/invoice.html +0 -1199
  131. package/dist/pages/kanban.html +0 -1439
  132. package/dist/pages/maintenance.html +0 -230
  133. package/dist/pages/pricing.html +0 -1279
  134. package/dist/pages/profile.html +0 -1382
  135. package/dist/pages/projects.html +0 -1644
  136. package/dist/pages/settings.html +0 -1387
  137. package/dist/tables/data.html +0 -1319
  138. package/dist/tables/simple.html +0 -1435
  139. package/dist/widgets/cards.html +0 -1356
  140. package/dist/widgets/info-box.html +0 -1429
  141. package/dist/widgets/small-box.html +0 -1225
  142. package/eslint.config.js +0 -82
  143. package/github-issue-response.md +0 -40
  144. package/index.html +0 -12
  145. package/netlify.toml +0 -16
  146. package/src/scss/_bootstrap-variables.scss +0 -1766
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["adminlte-docs.css","../../src/scss/adminlte-docs.scss","../../src/scss/mixins/_animations.scss","../../src/scss/_docs.scss","../../node_modules/bootstrap/scss/mixins/_border-radius.scss","../../node_modules/bootstrap/scss/mixins/_breakpoints.scss","../../node_modules/bootstrap/scss/mixins/_transition.scss"],"names":[],"mappings":"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","file":"adminlte-docs.css","sourcesContent":["@charset \"UTF-8\";\n/*!\n * AdminLTE v4.0.4 — documentation styles\n * Styles for the documentation and FAQ pages only (body.docs-page /\n * body.faq-page). Applications never need this file; it is loaded by the\n * docs pages in addition to adminlte.css.\n */\n@keyframes flipInX {\n 0% {\n opacity: 0;\n transition-timing-function: ease-in;\n transform: perspective(400px) rotate3d(1, 0, 0, 90deg);\n }\n 40% {\n transition-timing-function: ease-in;\n transform: perspective(400px) rotate3d(1, 0, 0, -20deg);\n }\n 60% {\n opacity: 1;\n transform: perspective(400px) rotate3d(1, 0, 0, 10deg);\n }\n 80% {\n transform: perspective(400px) rotate3d(1, 0, 0, -5deg);\n }\n 100% {\n transform: perspective(400px);\n }\n}\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes shake {\n 0% {\n transform: translate(2px, 1px) rotate(0deg);\n }\n 10% {\n transform: translate(-1px, -2px) rotate(-2deg);\n }\n 20% {\n transform: translate(-3px, 0) rotate(3deg);\n }\n 30% {\n transform: translate(0, 2px) rotate(0deg);\n }\n 40% {\n transform: translate(1px, -1px) rotate(1deg);\n }\n 50% {\n transform: translate(-1px, 2px) rotate(-1deg);\n }\n 60% {\n transform: translate(-3px, 1px) rotate(0deg);\n }\n 70% {\n transform: translate(2px, 1px) rotate(-2deg);\n }\n 80% {\n transform: translate(-1px, -1px) rotate(4deg);\n }\n 90% {\n transform: translate(2px, 2px) rotate(0deg);\n }\n 100% {\n transform: translate(1px, -2px) rotate(-1deg);\n }\n}\n@keyframes wobble {\n 0% {\n transform: none;\n }\n 15% {\n transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);\n }\n 30% {\n transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);\n }\n 45% {\n transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);\n }\n 60% {\n transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);\n }\n 75% {\n transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);\n }\n 100% {\n transform: none;\n }\n}\n.astro-code {\n padding: 0.75rem;\n border-radius: 0.375rem;\n}\n\n.docs-page .app-content > .container-fluid {\n max-width: 60rem;\n}\n@media (min-width: 1400px) {\n .docs-page .app-content > .container-fluid {\n max-width: 64rem;\n }\n}\n.docs-page .card > .card-body {\n padding: 1.5rem;\n font-size: 1rem;\n line-height: 1.7;\n color: var(--bs-body-color);\n}\n@media (min-width: 768px) {\n .docs-page .card > .card-body {\n padding: 2.5rem;\n }\n}\n.docs-page .card > .card-body h1,\n.docs-page .card > .card-body h2,\n.docs-page .card > .card-body h3,\n.docs-page .card > .card-body h4,\n.docs-page .card > .card-body h5,\n.docs-page .card > .card-body h6,\n.docs-page .card > .card-body .h1,\n.docs-page .card > .card-body .h2,\n.docs-page .card > .card-body .h3,\n.docs-page .card > .card-body .h4,\n.docs-page .card > .card-body .h5,\n.docs-page .card > .card-body .h6 {\n margin-top: 2em;\n margin-bottom: 0.5em;\n font-weight: 600;\n line-height: 1.3;\n color: var(--bs-emphasis-color);\n scroll-margin-top: 4rem;\n}\n.docs-page .card > .card-body h1:first-child,\n.docs-page .card > .card-body h2:first-child,\n.docs-page .card > .card-body h3:first-child,\n.docs-page .card > .card-body h4:first-child,\n.docs-page .card > .card-body h5:first-child,\n.docs-page .card > .card-body h6:first-child,\n.docs-page .card > .card-body .h1:first-child,\n.docs-page .card > .card-body .h2:first-child,\n.docs-page .card > .card-body .h3:first-child,\n.docs-page .card > .card-body .h4:first-child,\n.docs-page .card > .card-body .h5:first-child,\n.docs-page .card > .card-body .h6:first-child {\n margin-top: 0;\n}\n.docs-page .card > .card-body h2,\n.docs-page .card > .card-body .h2 {\n padding-bottom: 0.35em;\n font-size: 1.75rem;\n border-bottom: 1px solid var(--bs-border-color);\n}\n.docs-page .card > .card-body h3,\n.docs-page .card > .card-body .h3 {\n font-size: 1.4rem;\n}\n.docs-page .card > .card-body h4,\n.docs-page .card > .card-body .h4 {\n font-size: 1.2rem;\n}\n.docs-page .card > .card-body h5,\n.docs-page .card > .card-body .h5 {\n padding-top: 1.5em;\n margin-top: 2.5em;\n font-size: 1.3rem;\n border-top: 1px solid var(--bs-border-color);\n}\n.docs-page .card > .card-body h5:first-child,\n.docs-page .card > .card-body .h5:first-child {\n padding-top: 0;\n border-top: 0;\n}\n.docs-page .card > .card-body h6,\n.docs-page .card > .card-body .h6 {\n margin-top: 1.75em;\n font-size: 1.08rem;\n color: var(--bs-emphasis-color);\n}\n.docs-page .card > .card-body p,\n.docs-page .card > .card-body ul,\n.docs-page .card > .card-body ol,\n.docs-page .card > .card-body dl,\n.docs-page .card > .card-body blockquote,\n.docs-page .card > .card-body table {\n margin-bottom: 1.1rem;\n}\n.docs-page .card > .card-body ul,\n.docs-page .card > .card-body ol {\n padding-left: 1.5rem;\n}\n.docs-page .card > .card-body ul li,\n.docs-page .card > .card-body ol li {\n margin-bottom: 0.35rem;\n}\n.docs-page .card > .card-body ul ul,\n.docs-page .card > .card-body ul ol,\n.docs-page .card > .card-body ol ul,\n.docs-page .card > .card-body ol ol {\n margin-top: 0.35rem;\n margin-bottom: 0;\n}\n.docs-page .card > .card-body h2 + p,\n.docs-page .card > .card-body h3 + p,\n.docs-page .card > .card-body h5 + p {\n margin-top: 0;\n}\n.docs-page .card > .card-body p code,\n.docs-page .card > .card-body li code,\n.docs-page .card > .card-body td code,\n.docs-page .card > .card-body th code,\n.docs-page .card > .card-body h2 code,\n.docs-page .card > .card-body h3 code,\n.docs-page .card > .card-body h4 code,\n.docs-page .card > .card-body h5 code,\n.docs-page .card > .card-body h6 code {\n padding: 0.15em 0.4em;\n font-size: 0.875em;\n color: var(--bs-emphasis-color);\n background: var(--bs-tertiary-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 0.25rem;\n}\n.docs-page .card > .card-body pre.astro-code,\n.docs-page .card > .card-body pre {\n padding: 1rem 1.25rem;\n margin-top: 1.25rem;\n margin-bottom: 1.5rem;\n overflow-x: auto;\n font-size: 0.875rem;\n line-height: 1.6;\n border-radius: 0.375rem;\n}\n.docs-page .card > .card-body pre.astro-code code,\n.docs-page .card > .card-body pre code {\n padding: 0;\n background: transparent;\n border: 0;\n}\n.docs-page .card > .card-body table {\n width: 100%;\n margin-top: 1.25rem;\n margin-bottom: 1.5rem;\n overflow: hidden;\n font-size: 0.95rem;\n border-collapse: collapse;\n border: 1px solid var(--bs-border-color);\n border-radius: 0.25rem;\n}\n.docs-page .card > .card-body table th,\n.docs-page .card > .card-body table td {\n padding: 0.65rem 0.9rem;\n text-align: left;\n vertical-align: top;\n border-bottom: 1px solid var(--bs-border-color);\n}\n.docs-page .card > .card-body table th {\n font-weight: 600;\n color: var(--bs-emphasis-color);\n background: var(--bs-tertiary-bg);\n}\n.docs-page .card > .card-body table tr:last-child td {\n border-bottom: 0;\n}\n.docs-page .card > .card-body table code {\n white-space: nowrap;\n}\n.docs-page .card > .card-body blockquote {\n padding: 0.85rem 1.1rem;\n margin-top: 1.25rem;\n color: var(--bs-emphasis-color);\n background: var(--bs-info-bg-subtle);\n border-left: 4px solid var(--bs-info-border-subtle);\n border-radius: 0.25rem;\n}\n.docs-page .card > .card-body blockquote p:last-child {\n margin-bottom: 0;\n}\n.docs-page .card > .card-body blockquote code {\n background: rgba(0, 0, 0, 0.05);\n}\n.docs-page .card > .card-body a:not(.btn):not(.nav-link) {\n color: var(--bs-primary);\n text-decoration: underline;\n text-decoration-thickness: 1px;\n text-underline-offset: 3px;\n}\n.docs-page .card > .card-body a:not(.btn):not(.nav-link):hover {\n text-decoration-thickness: 2px;\n}\n.docs-page .card > .card-body hr {\n margin: 2.5rem 0;\n border: 0;\n border-top: 1px solid var(--bs-border-color);\n opacity: 1;\n}\n.docs-page .card > .card-body > p:first-child,\n.docs-page .card > .card-body > p:first-of-type {\n margin-bottom: 2rem;\n font-size: 1.125rem;\n line-height: 1.6;\n color: var(--bs-body-color);\n}\n.docs-page .card > .card-body details.faq-item {\n margin-bottom: 0.5rem;\n overflow: hidden;\n background: var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 0.375rem;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .docs-page .card > .card-body details.faq-item {\n transition: none;\n }\n}\n.docs-page .card > .card-body details.faq-item:hover {\n border-color: var(--bs-primary-border-subtle);\n}\n.docs-page .card > .card-body details.faq-item[open] {\n background: var(--bs-body-bg);\n border-color: var(--bs-primary-border-subtle);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n}\n.docs-page .card > .card-body details.faq-item summary {\n position: relative;\n padding: 0.9rem 3rem 0.9rem 1.1rem;\n font-size: 1rem;\n font-weight: 600;\n color: var(--bs-emphasis-color);\n list-style: none;\n cursor: pointer;\n user-select: none;\n transition: color 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .docs-page .card > .card-body details.faq-item summary {\n transition: none;\n }\n}\n.docs-page .card > .card-body details.faq-item summary::-webkit-details-marker {\n display: none;\n}\n.docs-page .card > .card-body details.faq-item summary::marker {\n content: \"\";\n}\n.docs-page .card > .card-body details.faq-item summary:hover {\n color: var(--bs-primary);\n}\n.docs-page .card > .card-body details.faq-item summary::after {\n position: absolute;\n top: 50%;\n right: 1.1rem;\n display: inline-block;\n width: 0.55rem;\n height: 0.55rem;\n margin-top: -0.4rem;\n content: \"\";\n border-right: 2px solid currentcolor;\n border-bottom: 2px solid currentcolor;\n opacity: 0.55;\n transform: rotate(45deg);\n transition: transform 0.2s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .docs-page .card > .card-body details.faq-item summary::after {\n transition: none;\n }\n}\n.docs-page .card > .card-body details.faq-item[open] > summary {\n color: var(--bs-primary);\n border-bottom: 1px solid var(--bs-border-color);\n}\n.docs-page .card > .card-body details.faq-item[open] > summary::after {\n margin-top: -0.15rem;\n opacity: 1;\n transform: rotate(-135deg);\n}\n.docs-page .card > .card-body details.faq-item > *:not(summary) {\n padding-right: 1.1rem;\n padding-left: 1.1rem;\n}\n.docs-page .card > .card-body details.faq-item > *:not(summary):first-of-type {\n padding-top: 1rem;\n}\n.docs-page .card > .card-body details.faq-item > *:not(summary):last-child {\n padding-bottom: 1rem;\n}\n.docs-page .card > .card-body details.faq-item p,\n.docs-page .card > .card-body details.faq-item ul,\n.docs-page .card > .card-body details.faq-item ol {\n margin-bottom: 0.65rem;\n}\n.docs-page .card > .card-body details.faq-item > *:last-child p:last-child,\n.docs-page .card > .card-body details.faq-item > p:last-child,\n.docs-page .card > .card-body details.faq-item > ul:last-child,\n.docs-page .card > .card-body details.faq-item > ol:last-child {\n margin-bottom: 0;\n}\n.docs-page .card > .card-body details.faq-item pre.astro-code,\n.docs-page .card > .card-body details.faq-item pre {\n margin-right: 0;\n margin-left: 0;\n}\n.docs-page[data-bs-theme=dark] .card > .card-body blockquote code, [data-bs-theme=dark] .docs-page .card > .card-body blockquote code {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.faq-page .app-content > .container-fluid {\n max-width: 64rem;\n}\n@media (min-width: 1400px) {\n .faq-page .app-content > .container-fluid {\n max-width: 72rem;\n }\n}\n.faq-page .faq-hero {\n position: relative;\n padding: 3rem 1.5rem 2.5rem;\n margin-top: 1rem;\n overflow: hidden;\n background: radial-gradient(ellipse at top left, rgba(var(--bs-primary-rgb), 0.12), transparent 60%), radial-gradient(ellipse at bottom right, rgba(var(--bs-info-rgb), 0.1), transparent 65%), var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 1rem;\n}\n.faq-page .faq-hero-eyebrow {\n display: inline-flex;\n gap: 0.4rem;\n align-items: center;\n padding: 0.35rem 0.85rem;\n margin-bottom: 1rem;\n font-size: 0.75rem;\n font-weight: 600;\n color: var(--bs-primary);\n text-transform: uppercase;\n letter-spacing: 0.08em;\n background: var(--bs-primary-bg-subtle);\n border: 1px solid var(--bs-primary-border-subtle);\n border-radius: 50rem;\n}\n.faq-page .faq-hero-eyebrow .bi {\n font-size: 0.9rem;\n}\n.faq-page .faq-hero-title {\n margin: 0 0 0.5rem;\n font-size: 2.25rem;\n font-weight: 700;\n line-height: 1.15;\n color: var(--bs-emphasis-color);\n}\n@media (min-width: 768px) {\n .faq-page .faq-hero-title {\n font-size: 2.75rem;\n }\n}\n.faq-page .faq-hero-lead {\n max-width: 36rem;\n margin: 0 auto 1.75rem;\n font-size: 1.05rem;\n line-height: 1.55;\n color: var(--bs-secondary-color);\n}\n.faq-page .faq-search {\n position: relative;\n max-width: 32rem;\n margin: 0 auto;\n}\n.faq-page .faq-search .form-control {\n height: 3rem;\n padding-right: 3rem;\n padding-left: 3rem;\n font-size: 1rem;\n background: var(--bs-body-bg);\n border-radius: 50rem;\n transition: box-shadow 0.15s ease, border-color 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-search .form-control {\n transition: none;\n }\n}\n.faq-page .faq-search .form-control:focus {\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.15);\n}\n.faq-page .faq-search-icon {\n position: absolute;\n top: 50%;\n left: 1.2rem;\n color: var(--bs-secondary-color);\n pointer-events: none;\n transform: translateY(-50%);\n}\n.faq-page .faq-search-clear {\n position: absolute;\n top: 50%;\n right: 0.65rem;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n padding: 0;\n color: var(--bs-secondary-color);\n background: var(--bs-tertiary-bg);\n border: 0;\n transform: translateY(-50%);\n border-radius: 50%;\n transition: background 0.15s ease, color 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-search-clear {\n transition: none;\n }\n}\n.faq-page .faq-search-clear:hover {\n color: var(--bs-body-color);\n background: var(--bs-secondary-bg);\n}\n.faq-page .faq-empty-state {\n max-width: 32rem;\n padding: 1rem;\n margin: 1.5rem auto 0;\n font-size: 0.95rem;\n color: var(--bs-secondary-color);\n background: var(--bs-tertiary-bg);\n border-radius: 0.375rem;\n}\n.faq-page .faq-empty-state .bi {\n margin-right: 0.35rem;\n}\n.faq-page .faq-chips {\n display: flex;\n flex-wrap: wrap;\n gap: 0.5rem;\n justify-content: center;\n}\n.faq-page .faq-chip {\n display: inline-flex;\n gap: 0.45rem;\n align-items: center;\n padding: 0.45rem 0.85rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: var(--bs-body-color);\n text-decoration: none;\n background: var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 50rem;\n transition: transform 0.15s ease, border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-chip {\n transition: none;\n }\n}\n.faq-page .faq-chip:hover {\n color: var(--bs-emphasis-color);\n background: var(--bs-tertiary-bg);\n transform: translateY(-1px);\n}\n.faq-page .faq-chip .bi {\n font-size: 1rem;\n}\n.faq-page .faq-chip-count {\n padding: 0 0.45rem;\n font-size: 0.7rem;\n font-weight: 600;\n color: var(--bs-secondary-color);\n background: var(--bs-tertiary-bg);\n border-radius: 50rem;\n}\n.faq-page .faq-chip-primary:hover {\n color: var(--bs-primary-text-emphasis);\n background: var(--bs-primary-bg-subtle);\n border-color: var(--bs-primary-border-subtle);\n}\n.faq-page .faq-chip-primary:hover .faq-chip-count {\n color: var(--bs-primary-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-info:hover {\n color: var(--bs-info-text-emphasis);\n background: var(--bs-info-bg-subtle);\n border-color: var(--bs-info-border-subtle);\n}\n.faq-page .faq-chip-info:hover .faq-chip-count {\n color: var(--bs-info-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-warning:hover {\n color: var(--bs-warning-text-emphasis);\n background: var(--bs-warning-bg-subtle);\n border-color: var(--bs-warning-border-subtle);\n}\n.faq-page .faq-chip-warning:hover .faq-chip-count {\n color: var(--bs-warning-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-success:hover {\n color: var(--bs-success-text-emphasis);\n background: var(--bs-success-bg-subtle);\n border-color: var(--bs-success-border-subtle);\n}\n.faq-page .faq-chip-success:hover .faq-chip-count {\n color: var(--bs-success-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-danger:hover {\n color: var(--bs-danger-text-emphasis);\n background: var(--bs-danger-bg-subtle);\n border-color: var(--bs-danger-border-subtle);\n}\n.faq-page .faq-chip-danger:hover .faq-chip-count {\n color: var(--bs-danger-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-secondary:hover {\n color: var(--bs-secondary-text-emphasis);\n background: var(--bs-secondary-bg-subtle);\n border-color: var(--bs-secondary-border-subtle);\n}\n.faq-page .faq-chip-secondary:hover .faq-chip-count {\n color: var(--bs-secondary-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-section {\n margin-bottom: 2.5rem;\n scroll-margin-top: 5rem;\n}\n.faq-page .faq-section-header {\n display: flex;\n gap: 1rem;\n align-items: center;\n padding: 1rem 1.25rem;\n margin-bottom: 1rem;\n background: var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-left: 4px solid var(--bs-primary);\n border-radius: 0.375rem;\n}\n.faq-page .faq-section-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 2.75rem;\n height: 2.75rem;\n font-size: 1.35rem;\n color: var(--bs-primary);\n background: var(--bs-primary-bg-subtle);\n border-radius: 0.375rem;\n}\n.faq-page .faq-section-title {\n margin: 0;\n font-size: 1.4rem;\n font-weight: 600;\n line-height: 1.2;\n color: var(--bs-emphasis-color);\n}\n.faq-page .faq-section-count {\n margin: 0.1rem 0 0;\n font-size: 0.8rem;\n color: var(--bs-secondary-color);\n}\n.faq-page .faq-section-primary {\n border-left-color: var(--bs-primary);\n}\n.faq-page .faq-section-primary .faq-section-icon {\n color: var(--bs-primary-text-emphasis);\n background: var(--bs-primary-bg-subtle);\n}\n.faq-page .faq-section-info {\n border-left-color: var(--bs-info);\n}\n.faq-page .faq-section-info .faq-section-icon {\n color: var(--bs-info-text-emphasis);\n background: var(--bs-info-bg-subtle);\n}\n.faq-page .faq-section-warning {\n border-left-color: var(--bs-warning);\n}\n.faq-page .faq-section-warning .faq-section-icon {\n color: var(--bs-warning-text-emphasis);\n background: var(--bs-warning-bg-subtle);\n}\n.faq-page .faq-section-success {\n border-left-color: var(--bs-success);\n}\n.faq-page .faq-section-success .faq-section-icon {\n color: var(--bs-success-text-emphasis);\n background: var(--bs-success-bg-subtle);\n}\n.faq-page .faq-section-danger {\n border-left-color: var(--bs-danger);\n}\n.faq-page .faq-section-danger .faq-section-icon {\n color: var(--bs-danger-text-emphasis);\n background: var(--bs-danger-bg-subtle);\n}\n.faq-page .faq-section-secondary {\n border-left-color: var(--bs-secondary);\n}\n.faq-page .faq-section-secondary .faq-section-icon {\n color: var(--bs-secondary-text-emphasis);\n background: var(--bs-secondary-bg-subtle);\n}\n.faq-page .faq-section-items .faq-item {\n margin-bottom: 0.5rem;\n overflow: hidden;\n background: var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 0.375rem;\n transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-section-items .faq-item {\n transition: none;\n }\n}\n.faq-page .faq-section-items .faq-item:hover {\n border-color: var(--bs-primary-border-subtle);\n transform: translateX(2px);\n}\n.faq-page .faq-section-items .faq-item[open] {\n border-color: var(--bs-primary-border-subtle);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\n transform: none;\n}\n.faq-page .faq-section-items .faq-item summary {\n display: flex;\n gap: 0.85rem;\n align-items: center;\n padding: 1rem 1.25rem;\n font-size: 1rem;\n font-weight: 500;\n color: var(--bs-emphasis-color);\n list-style: none;\n cursor: pointer;\n user-select: none;\n}\n.faq-page .faq-section-items .faq-item summary::-webkit-details-marker {\n display: none;\n}\n.faq-page .faq-section-items .faq-item summary::marker {\n content: \"\";\n}\n.faq-page .faq-section-items .faq-item summary::after {\n content: none;\n}\n.faq-page .faq-section-items .faq-item .faq-q-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n font-size: 0.85rem;\n color: var(--bs-primary);\n background: var(--bs-primary-bg-subtle);\n border-radius: 50%;\n}\n.faq-page .faq-section-items .faq-item .faq-q-text {\n flex-grow: 1;\n}\n.faq-page .faq-section-items .faq-item .faq-q-chevron {\n flex-shrink: 0;\n color: var(--bs-secondary-color);\n transition: transform 0.2s ease, color 0.2s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-section-items .faq-item .faq-q-chevron {\n transition: none;\n }\n}\n.faq-page .faq-section-items .faq-item[open] .faq-q-chevron {\n color: var(--bs-primary);\n transform: rotate(180deg);\n}\n.faq-page .faq-section-items .faq-item[open] summary {\n color: var(--bs-primary);\n border-bottom: 1px solid var(--bs-border-color);\n}\n.faq-page .faq-section-items .faq-item .faq-answer {\n padding: 1.1rem 1.25rem 1.1rem 3.85rem;\n font-size: 0.95rem;\n line-height: 1.65;\n color: var(--bs-body-color);\n}\n.faq-page .faq-section-items .faq-item .faq-answer p:last-child,\n.faq-page .faq-section-items .faq-item .faq-answer ul:last-child,\n.faq-page .faq-section-items .faq-item .faq-answer ol:last-child,\n.faq-page .faq-section-items .faq-item .faq-answer pre:last-child {\n margin-bottom: 0;\n}\n.faq-page .faq-section-items .faq-item .faq-answer a {\n color: var(--bs-primary);\n text-decoration: underline;\n text-underline-offset: 2px;\n}\n.faq-page .faq-section-items .faq-item .faq-answer a:hover {\n text-decoration-thickness: 2px;\n}\n.faq-page .faq-section-items .faq-item .faq-answer code {\n padding: 0.12em 0.35em;\n font-size: 0.875em;\n color: var(--bs-emphasis-color);\n background: var(--bs-tertiary-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 0.25rem;\n}\n.faq-page .faq-section-items .faq-item .faq-answer pre.astro-code,\n.faq-page .faq-section-items .faq-item .faq-answer pre {\n padding: 0.85rem 1rem;\n margin-top: 0.75rem;\n margin-bottom: 0.75rem;\n overflow-x: auto;\n font-size: 0.85rem;\n line-height: 1.55;\n border-radius: 0.25rem;\n}\n.faq-page .faq-section-items .faq-item .faq-answer pre.astro-code code,\n.faq-page .faq-section-items .faq-item .faq-answer pre code {\n padding: 0;\n background: transparent;\n border: 0;\n}\n.faq-page .faq-cta {\n padding: 2.5rem 1.5rem;\n text-align: center;\n background: radial-gradient(ellipse at top, rgba(var(--bs-primary-rgb), 0.08), transparent 60%), var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 1rem;\n}\n.faq-page .faq-cta-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 3.5rem;\n height: 3.5rem;\n margin-bottom: 1rem;\n font-size: 1.6rem;\n color: var(--bs-primary);\n background: var(--bs-primary-bg-subtle);\n border-radius: 50%;\n}\n.faq-page .faq-cta h2 {\n margin: 0 0 0.5rem;\n font-size: 1.5rem;\n font-weight: 600;\n color: var(--bs-emphasis-color);\n}\n.faq-page .faq-cta p {\n max-width: 32rem;\n margin: 0 auto 1.5rem;\n color: var(--bs-secondary-color);\n}\n.faq-page .faq-cta-actions {\n display: inline-flex;\n flex-wrap: wrap;\n gap: 0.5rem;\n justify-content: center;\n}\n\n/*# sourceMappingURL=adminlte-docs.css.map */\n","/*!\n * AdminLTE v4.0.4 — documentation styles\n * Styles for the documentation and FAQ pages only (body.docs-page /\n * body.faq-page). Applications never need this file; it is loaded by the\n * docs pages in addition to adminlte.css.\n */\n\n// Bootstrap Configuration\n// ---------------------------------------------------\n@import \"bootstrap/scss/functions\";\n@import \"bootstrap-overrides\";\n@import \"bootstrap/scss/variables\";\n@import \"bootstrap/scss/variables-dark\";\n@import \"bootstrap/scss/maps\";\n@import \"bootstrap/scss/mixins\";\n\n// AdminLTE Configuration\n// ---------------------------------------------------\n@import \"variables\";\n@import \"variables-dark\";\n@import \"mixins\";\n\n// Documentation styles\n// ---------------------------------------------------\n@import \"docs\";\n","//\n// Mixins: Animation\n//\n\n\n@keyframes flipInX {\n 0% {\n opacity: 0;\n transition-timing-function: ease-in;\n transform: perspective(400px) rotate3d(1, 0, 0, 90deg);\n }\n\n 40% {\n transition-timing-function: ease-in;\n transform: perspective(400px) rotate3d(1, 0, 0, -20deg);\n }\n\n 60% {\n opacity: 1;\n transform: perspective(400px) rotate3d(1, 0, 0, 10deg);\n }\n\n 80% {\n transform: perspective(400px) rotate3d(1, 0, 0, -5deg);\n }\n\n 100% {\n transform: perspective(400px);\n }\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n }\n}\n\n@keyframes shake {\n 0% {\n transform: translate(2px, 1px) rotate(0deg);\n }\n 10% {\n transform: translate(-1px, -2px) rotate(-2deg);\n }\n 20% {\n transform: translate(-3px, 0) rotate(3deg);\n }\n 30% {\n transform: translate(0, 2px) rotate(0deg);\n }\n 40% {\n transform: translate(1px, -1px) rotate(1deg);\n }\n 50% {\n transform: translate(-1px, 2px) rotate(-1deg);\n }\n 60% {\n transform: translate(-3px, 1px) rotate(0deg);\n }\n 70% {\n transform: translate(2px, 1px) rotate(-2deg);\n }\n 80% {\n transform: translate(-1px, -1px) rotate(4deg);\n }\n 90% {\n transform: translate(2px, 2px) rotate(0deg);\n }\n 100% {\n transform: translate(1px, -2px) rotate(-1deg);\n }\n}\n\n@keyframes wobble {\n 0% {\n transform: none;\n }\n\n 15% {\n transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);\n }\n\n 30% {\n transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);\n }\n\n 45% {\n transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);\n }\n\n 60% {\n transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);\n }\n\n 75% {\n transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);\n }\n\n 100% {\n transform: none;\n }\n}\n","//\n// Component: Docs\n//\n// Visual treatment for documentation pages. Body class `.docs-page` opts in.\n// Demo pages are not affected.\n//\n\n// Inline code blocks rendered by MDX (Astro highlight default class)\n.astro-code {\n padding: .75rem;\n @include border-radius($border-radius);\n}\n\n.docs-page {\n // Constrain the docs card to a comfortable reading width.\n // Tables and code blocks inside can still scroll horizontally if needed.\n .app-content > .container-fluid {\n max-width: 60rem; // ~960px\n\n @include media-breakpoint-up(xxl) {\n max-width: 64rem;\n }\n }\n\n //\n // Card body — breathing room + prose typography.\n // Only applied inside docs content cards so demo-page card content\n // stays unchanged.\n //\n .card > .card-body {\n padding: 1.5rem;\n font-size: 1rem;\n line-height: 1.7;\n color: var(--#{$prefix}body-color);\n\n @include media-breakpoint-up(md) {\n padding: 2.5rem;\n }\n\n //\n // Heading hierarchy. The MDX content in src/html/components/docs/ uses\n // ##### (h5) as the dominant section heading and ###### (h6) as a\n // sub-heading (most visible in FAQ.mdx, where h5 is a topic and h6 is\n // a question). Style h5 as a major section and h6 as a sub-section so\n // the visual hierarchy matches the semantic one.\n //\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n .h1,\n .h2,\n .h3,\n .h4,\n .h5,\n .h6 {\n margin-top: 2em;\n margin-bottom: .5em;\n font-weight: 600;\n line-height: 1.3;\n color: var(--#{$prefix}emphasis-color);\n scroll-margin-top: 4rem; // anchor-link friendly\n\n &:first-child {\n margin-top: 0;\n }\n }\n\n h2,\n .h2 {\n padding-bottom: .35em;\n font-size: 1.75rem;\n border-bottom: 1px solid var(--#{$prefix}border-color);\n }\n\n h3,\n .h3 {\n font-size: 1.4rem;\n }\n\n h4,\n .h4 {\n font-size: 1.2rem;\n }\n\n // h5 is the dominant section heading across docs MDX files. Give it\n // a visible separator above so sections are easy to scan.\n h5,\n .h5 {\n padding-top: 1.5em;\n margin-top: 2.5em;\n font-size: 1.3rem;\n border-top: 1px solid var(--#{$prefix}border-color);\n\n &:first-child {\n padding-top: 0;\n border-top: 0;\n }\n }\n\n // h6 is the sub-section / FAQ question style. Smaller than h5 but\n // still distinctly heading-like, with a touch of accent colour to\n // separate from body text.\n h6,\n .h6 {\n margin-top: 1.75em;\n font-size: 1.08rem;\n color: var(--#{$prefix}emphasis-color);\n }\n\n //\n // Paragraphs and lists.\n //\n p,\n ul,\n ol,\n dl,\n blockquote,\n table {\n margin-bottom: 1.1rem;\n }\n\n ul,\n ol {\n padding-left: 1.5rem;\n\n li {\n margin-bottom: .35rem;\n }\n\n // Tighter nested lists\n ul,\n ol {\n margin-top: .35rem;\n margin-bottom: 0;\n }\n }\n\n // Lead-style first paragraph (just after a heading)\n h2 + p,\n h3 + p,\n h5 + p {\n margin-top: 0;\n }\n\n //\n // Inline code — pill style that complements MDX's syntax-highlighted blocks.\n //\n p code,\n li code,\n td code,\n th code,\n h2 code,\n h3 code,\n h4 code,\n h5 code,\n h6 code {\n padding: .15em .4em;\n font-size: .875em;\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}tertiary-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-sm);\n }\n\n //\n // Code blocks.\n //\n pre.astro-code,\n pre {\n padding: 1rem 1.25rem;\n margin-top: 1.25rem;\n margin-bottom: 1.5rem;\n overflow-x: auto;\n font-size: .875rem;\n line-height: 1.6;\n @include border-radius($border-radius);\n\n code {\n padding: 0;\n background: transparent;\n border: 0;\n }\n }\n\n //\n // Tables — reference-doc styling with hairline borders.\n //\n table {\n width: 100%;\n margin-top: 1.25rem;\n margin-bottom: 1.5rem;\n overflow: hidden;\n font-size: .95rem;\n border-collapse: collapse;\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-sm);\n\n th,\n td {\n padding: .65rem .9rem;\n text-align: left;\n vertical-align: top;\n border-bottom: 1px solid var(--#{$prefix}border-color);\n }\n\n th {\n font-weight: 600;\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}tertiary-bg);\n }\n\n tr:last-child td {\n border-bottom: 0;\n }\n\n code {\n white-space: nowrap;\n }\n }\n\n //\n // Blockquotes used as info callouts.\n //\n blockquote {\n padding: .85rem 1.1rem;\n margin-top: 1.25rem;\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}info-bg-subtle);\n border-left: 4px solid var(--#{$prefix}info-border-subtle);\n @include border-radius($border-radius-sm);\n\n p:last-child {\n margin-bottom: 0;\n }\n\n code {\n background: rgba(0, 0, 0, .05);\n }\n }\n\n //\n // Prose links — stand out more than Bootstrap defaults.\n //\n a:not(.btn):not(.nav-link) {\n color: var(--#{$prefix}primary);\n text-decoration: underline;\n text-decoration-thickness: 1px;\n text-underline-offset: 3px;\n\n &:hover {\n text-decoration-thickness: 2px;\n }\n }\n\n //\n // Horizontal rule — used as additional section separator.\n //\n hr {\n margin: 2.5rem 0;\n border: 0;\n border-top: 1px solid var(--#{$prefix}border-color);\n opacity: 1;\n }\n\n //\n // Lead paragraph — the first paragraph in any doc is a summary.\n // Visually heavier so it functions as a deck.\n //\n > p:first-child,\n > p:first-of-type {\n margin-bottom: 2rem;\n font-size: 1.125rem;\n line-height: 1.6;\n color: var(--#{$prefix}body-color);\n }\n\n //\n // FAQ / disclosure accordion — uses native <details>/<summary>.\n // Add `.faq-item` to <details> to opt in.\n //\n details.faq-item {\n margin-bottom: .5rem;\n overflow: hidden;\n background: var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius);\n @include transition(border-color .15s ease, box-shadow .15s ease);\n\n &:hover {\n border-color: var(--#{$prefix}primary-border-subtle);\n }\n\n &[open] {\n background: var(--#{$prefix}body-bg);\n border-color: var(--#{$prefix}primary-border-subtle);\n box-shadow: 0 1px 3px rgba(0, 0, 0, .04);\n }\n\n summary {\n position: relative;\n padding: .9rem 3rem .9rem 1.1rem;\n font-size: 1rem;\n font-weight: 600;\n color: var(--#{$prefix}emphasis-color);\n list-style: none;\n cursor: pointer;\n user-select: none;\n @include transition(color .15s ease);\n\n // Hide the default disclosure triangle in Webkit/Blink\n &::-webkit-details-marker {\n display: none;\n }\n\n // Hide the marker in modern Firefox too\n &::marker {\n content: \"\";\n }\n\n &:hover {\n color: var(--#{$prefix}primary);\n }\n\n // Right-side chevron, rotates on open\n &::after {\n position: absolute;\n top: 50%;\n right: 1.1rem;\n display: inline-block;\n width: .55rem;\n height: .55rem;\n margin-top: -.4rem;\n content: \"\";\n border-right: 2px solid currentcolor;\n border-bottom: 2px solid currentcolor;\n opacity: .55;\n transform: rotate(45deg);\n @include transition(transform .2s ease);\n }\n }\n\n &[open] > summary {\n color: var(--#{$prefix}primary);\n border-bottom: 1px solid var(--#{$prefix}border-color);\n\n &::after {\n margin-top: -.15rem;\n opacity: 1;\n transform: rotate(-135deg);\n }\n }\n\n // Content (everything after <summary>) gets the inner padding\n > *:not(summary) {\n padding-right: 1.1rem;\n padding-left: 1.1rem;\n }\n\n > *:not(summary):first-of-type {\n padding-top: 1rem;\n }\n\n > *:not(summary):last-child {\n padding-bottom: 1rem;\n }\n\n // Tighten paragraphs/lists inside an FAQ answer\n p,\n ul,\n ol {\n margin-bottom: .65rem;\n }\n\n > *:last-child p:last-child,\n > p:last-child,\n > ul:last-child,\n > ol:last-child {\n margin-bottom: 0;\n }\n\n // Code blocks inside an FAQ answer get a less-distracting bg\n pre.astro-code,\n pre {\n margin-right: 0;\n margin-left: 0;\n }\n }\n }\n\n // Dark-mode tweak: blockquote info bg needs more contrast on dark\n &[data-bs-theme=\"dark\"],\n [data-bs-theme=\"dark\"] & {\n .card > .card-body blockquote code {\n background: rgba(255, 255, 255, .08);\n }\n }\n}\n\n//\n// FAQ page — custom layout that breaks out of the standard docs card\n// to give the FAQ a more distinctive visual identity. Opt in via\n// body.faq-page (set in pages/docs/faq.astro).\n//\n\n.faq-page {\n // The FAQ doesn't use the standard card wrapper used by other docs,\n // so the container can stretch wider for the chip strip and section\n // grid.\n .app-content > .container-fluid {\n max-width: 64rem;\n\n @include media-breakpoint-up(xxl) {\n max-width: 72rem;\n }\n }\n\n // --- Hero -------------------------------------------------------------\n .faq-hero {\n position: relative;\n padding: 3rem 1.5rem 2.5rem;\n margin-top: 1rem;\n overflow: hidden;\n background: radial-gradient(ellipse at top left, rgba(var(--#{$prefix}primary-rgb), .12), transparent 60%), radial-gradient(ellipse at bottom right, rgba(var(--#{$prefix}info-rgb), .1), transparent 65%), var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-xl);\n }\n\n .faq-hero-eyebrow {\n display: inline-flex;\n gap: .4rem;\n align-items: center;\n padding: .35rem .85rem;\n margin-bottom: 1rem;\n font-size: .75rem;\n font-weight: 600;\n color: var(--#{$prefix}primary);\n text-transform: uppercase;\n letter-spacing: .08em;\n background: var(--#{$prefix}primary-bg-subtle);\n border: 1px solid var(--#{$prefix}primary-border-subtle);\n @include border-radius(50rem);\n\n .bi {\n font-size: .9rem;\n }\n }\n\n .faq-hero-title {\n margin: 0 0 .5rem;\n font-size: 2.25rem;\n font-weight: 700;\n line-height: 1.15;\n color: var(--#{$prefix}emphasis-color);\n\n @include media-breakpoint-up(md) {\n font-size: 2.75rem;\n }\n }\n\n .faq-hero-lead {\n max-width: 36rem;\n margin: 0 auto 1.75rem;\n font-size: 1.05rem;\n line-height: 1.55;\n color: var(--#{$prefix}secondary-color);\n }\n\n .faq-search {\n position: relative;\n max-width: 32rem;\n margin: 0 auto;\n\n .form-control {\n height: 3rem;\n padding-right: 3rem;\n padding-left: 3rem;\n font-size: 1rem;\n background: var(--#{$prefix}body-bg);\n @include border-radius(50rem);\n @include transition(box-shadow .15s ease, border-color .15s ease);\n\n &:focus {\n box-shadow: 0 0 0 .25rem rgba(var(--#{$prefix}primary-rgb), .15);\n }\n }\n }\n\n .faq-search-icon {\n position: absolute;\n top: 50%;\n left: 1.2rem;\n color: var(--#{$prefix}secondary-color);\n pointer-events: none;\n transform: translateY(-50%);\n }\n\n .faq-search-clear {\n position: absolute;\n top: 50%;\n right: .65rem;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n padding: 0;\n color: var(--#{$prefix}secondary-color);\n background: var(--#{$prefix}tertiary-bg);\n border: 0;\n transform: translateY(-50%);\n @include border-radius(50%);\n @include transition(background .15s ease, color .15s ease);\n\n &:hover {\n color: var(--#{$prefix}body-color);\n background: var(--#{$prefix}secondary-bg);\n }\n }\n\n .faq-empty-state {\n max-width: 32rem;\n padding: 1rem;\n margin: 1.5rem auto 0;\n font-size: .95rem;\n color: var(--#{$prefix}secondary-color);\n background: var(--#{$prefix}tertiary-bg);\n @include border-radius($border-radius);\n\n .bi {\n margin-right: .35rem;\n }\n }\n\n // --- Section nav chips ------------------------------------------------\n .faq-chips {\n display: flex;\n flex-wrap: wrap;\n gap: .5rem;\n justify-content: center;\n }\n\n .faq-chip {\n display: inline-flex;\n gap: .45rem;\n align-items: center;\n padding: .45rem .85rem;\n font-size: .875rem;\n font-weight: 500;\n color: var(--#{$prefix}body-color);\n text-decoration: none;\n background: var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius(50rem);\n @include transition(transform .15s ease, border-color .15s ease, background-color .15s ease, color .15s ease);\n\n &:hover {\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}tertiary-bg);\n transform: translateY(-1px);\n }\n\n .bi {\n font-size: 1rem;\n }\n }\n\n .faq-chip-count {\n padding: 0 .45rem;\n font-size: .7rem;\n font-weight: 600;\n color: var(--#{$prefix}secondary-color);\n background: var(--#{$prefix}tertiary-bg);\n @include border-radius(50rem);\n }\n\n // Per-section chip accent on hover/active\n @each $tone in (primary, info, warning, success, danger, secondary) {\n .faq-chip-#{$tone}:hover {\n color: var(--#{$prefix}#{$tone}-text-emphasis);\n background: var(--#{$prefix}#{$tone}-bg-subtle);\n border-color: var(--#{$prefix}#{$tone}-border-subtle);\n\n .faq-chip-count {\n color: var(--#{$prefix}#{$tone}-text-emphasis);\n background: rgba(0, 0, 0, .06);\n }\n }\n }\n\n // --- Sections ---------------------------------------------------------\n .faq-section {\n margin-bottom: 2.5rem;\n scroll-margin-top: 5rem;\n }\n\n .faq-section-header {\n display: flex;\n gap: 1rem;\n align-items: center;\n padding: 1rem 1.25rem;\n margin-bottom: 1rem;\n background: var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n border-left: 4px solid var(--#{$prefix}primary);\n @include border-radius($border-radius);\n }\n\n .faq-section-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 2.75rem;\n height: 2.75rem;\n font-size: 1.35rem;\n color: var(--#{$prefix}primary);\n background: var(--#{$prefix}primary-bg-subtle);\n @include border-radius($border-radius);\n }\n\n .faq-section-title {\n margin: 0;\n font-size: 1.4rem;\n font-weight: 600;\n line-height: 1.2;\n color: var(--#{$prefix}emphasis-color);\n }\n\n .faq-section-count {\n margin: .1rem 0 0;\n font-size: .8rem;\n color: var(--#{$prefix}secondary-color);\n }\n\n // Per-section tone accents\n @each $tone in (primary, info, warning, success, danger, secondary) {\n .faq-section-#{$tone} {\n border-left-color: var(--#{$prefix}#{$tone});\n\n .faq-section-icon {\n color: var(--#{$prefix}#{$tone}-text-emphasis);\n background: var(--#{$prefix}#{$tone}-bg-subtle);\n }\n }\n }\n\n // --- FAQ items (override the generic .docs-page details styling) ------\n .faq-section-items .faq-item {\n margin-bottom: .5rem;\n overflow: hidden;\n background: var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius);\n @include transition(border-color .15s ease, box-shadow .15s ease, transform .15s ease);\n\n &:hover {\n border-color: var(--#{$prefix}primary-border-subtle);\n transform: translateX(2px);\n }\n\n &[open] {\n border-color: var(--#{$prefix}primary-border-subtle);\n box-shadow: 0 2px 8px rgba(0, 0, 0, .04);\n transform: none;\n }\n\n summary {\n display: flex;\n gap: .85rem;\n align-items: center;\n padding: 1rem 1.25rem;\n font-size: 1rem;\n font-weight: 500;\n color: var(--#{$prefix}emphasis-color);\n list-style: none;\n cursor: pointer;\n user-select: none;\n\n &::-webkit-details-marker {\n display: none;\n }\n\n &::marker {\n content: \"\";\n }\n\n &::after {\n content: none; // disable the generic chevron, we use our own\n }\n }\n\n .faq-q-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n font-size: .85rem;\n color: var(--#{$prefix}primary);\n background: var(--#{$prefix}primary-bg-subtle);\n @include border-radius(50%);\n }\n\n .faq-q-text {\n flex-grow: 1;\n }\n\n .faq-q-chevron {\n flex-shrink: 0;\n color: var(--#{$prefix}secondary-color);\n @include transition(transform .2s ease, color .2s ease);\n }\n\n &[open] .faq-q-chevron {\n color: var(--#{$prefix}primary);\n transform: rotate(180deg);\n }\n\n &[open] summary {\n color: var(--#{$prefix}primary);\n border-bottom: 1px solid var(--#{$prefix}border-color);\n }\n\n .faq-answer {\n padding: 1.1rem 1.25rem 1.1rem 3.85rem; // align with the question text (icon + gap)\n font-size: .95rem;\n line-height: 1.65;\n color: var(--#{$prefix}body-color);\n\n p:last-child,\n ul:last-child,\n ol:last-child,\n pre:last-child {\n margin-bottom: 0;\n }\n\n a {\n color: var(--#{$prefix}primary);\n text-decoration: underline;\n text-underline-offset: 2px;\n\n &:hover {\n text-decoration-thickness: 2px;\n }\n }\n\n code {\n padding: .12em .35em;\n font-size: .875em;\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}tertiary-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-sm);\n }\n\n pre.astro-code,\n pre {\n padding: .85rem 1rem;\n margin-top: .75rem;\n margin-bottom: .75rem;\n overflow-x: auto;\n font-size: .85rem;\n line-height: 1.55;\n @include border-radius($border-radius-sm);\n\n code {\n padding: 0;\n background: transparent;\n border: 0;\n }\n }\n }\n }\n\n // --- CTA footer -------------------------------------------------------\n .faq-cta {\n padding: 2.5rem 1.5rem;\n text-align: center;\n background: radial-gradient(ellipse at top, rgba(var(--#{$prefix}primary-rgb), .08), transparent 60%), var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-xl);\n }\n\n .faq-cta-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 3.5rem;\n height: 3.5rem;\n margin-bottom: 1rem;\n font-size: 1.6rem;\n color: var(--#{$prefix}primary);\n background: var(--#{$prefix}primary-bg-subtle);\n @include border-radius(50%);\n }\n\n .faq-cta h2 {\n margin: 0 0 .5rem;\n font-size: 1.5rem;\n font-weight: 600;\n color: var(--#{$prefix}emphasis-color);\n }\n\n .faq-cta p {\n max-width: 32rem;\n margin: 0 auto 1.5rem;\n color: var(--#{$prefix}secondary-color);\n }\n\n .faq-cta-actions {\n display: inline-flex;\n flex-wrap: wrap;\n gap: .5rem;\n justify-content: center;\n }\n}\n","// stylelint-disable property-disallowed-list\n// Single side border-radius\n\n// Helper function to replace negative values with 0\n@function valid-radius($radius) {\n $return: ();\n @each $value in $radius {\n @if type-of($value) == number {\n $return: append($return, max($value, 0));\n } @else {\n $return: append($return, $value);\n }\n }\n @return $return;\n}\n\n// scss-docs-start border-radius-mixins\n@mixin border-radius($radius: $border-radius, $fallback-border-radius: false) {\n @if $enable-rounded {\n border-radius: valid-radius($radius);\n }\n @else if $fallback-border-radius != false {\n border-radius: $fallback-border-radius;\n }\n}\n\n@mixin border-top-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-left-radius: valid-radius($radius);\n border-top-right-radius: valid-radius($radius);\n }\n}\n\n@mixin border-end-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-right-radius: valid-radius($radius);\n border-bottom-right-radius: valid-radius($radius);\n }\n}\n\n@mixin border-bottom-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-bottom-right-radius: valid-radius($radius);\n border-bottom-left-radius: valid-radius($radius);\n }\n}\n\n@mixin border-start-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-left-radius: valid-radius($radius);\n border-bottom-left-radius: valid-radius($radius);\n }\n}\n\n@mixin border-top-start-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-left-radius: valid-radius($radius);\n }\n}\n\n@mixin border-top-end-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-right-radius: valid-radius($radius);\n }\n}\n\n@mixin border-bottom-end-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-bottom-right-radius: valid-radius($radius);\n }\n}\n\n@mixin border-bottom-start-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-bottom-left-radius: valid-radius($radius);\n }\n}\n// scss-docs-end border-radius-mixins\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl xxl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @if not $n {\n @error \"breakpoint `#{$name}` not found in `#{$breakpoints}`\";\n }\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $next: breakpoint-next($name, $breakpoints);\n $max: breakpoint-max($next, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($next, $breakpoints) {\n @content;\n }\n }\n}\n","// stylelint-disable property-disallowed-list\n@mixin transition($transition...) {\n @if length($transition) == 0 {\n $transition: $transition-base;\n }\n\n @if length($transition) > 1 {\n @each $value in $transition {\n @if $value == null or $value == none {\n @warn \"The keyword 'none' or 'null' must be used as a single argument.\";\n }\n }\n }\n\n @if $enable-transitions {\n @if nth($transition, 1) != null {\n transition: $transition;\n }\n\n @if $enable-reduced-motion and nth($transition, 1) != null and nth($transition, 1) != none {\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n }\n}\n"]}
@@ -0,0 +1,7 @@
1
+ @charset "UTF-8";/*!
2
+ * AdminLTE v4.0.4 — documentation styles
3
+ * Styles for the documentation and FAQ pages only (body.docs-page /
4
+ * body.faq-page). Applications never need this file; it is loaded by the
5
+ * docs pages in addition to adminlte.css.
6
+ */@keyframes flipInX{0%{opacity:0;transition-timing-function:ease-in;transform:perspective(400px) rotate3d(1,0,0,90deg)}40%{transition-timing-function:ease-in;transform:perspective(400px) rotate3d(1,0,0,-20deg)}60%{opacity:1;transform:perspective(400px) rotate3d(1,0,0,10deg)}80%{transform:perspective(400px) rotate3d(1,0,0,-5deg)}100%{transform:perspective(400px)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{from{opacity:1}to{opacity:0}}@keyframes shake{0%{transform:translate(2px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-2deg)}20%{transform:translate(-3px,0) rotate(3deg)}30%{transform:translate(0,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(2px,1px) rotate(-2deg)}80%{transform:translate(-1px,-1px) rotate(4deg)}90%{transform:translate(2px,2px) rotate(0)}100%{transform:translate(1px,-2px) rotate(-1deg)}}@keyframes wobble{0%{transform:none}15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}100%{transform:none}}.astro-code{padding:.75rem;border-radius:.375rem}.docs-page .app-content>.container-fluid{max-width:60rem}@media (min-width:1400px){.docs-page .app-content>.container-fluid{max-width:64rem}}.docs-page .card>.card-body{padding:1.5rem;font-size:1rem;line-height:1.7;color:var(--bs-body-color)}@media (min-width:768px){.docs-page .card>.card-body{padding:2.5rem}}.docs-page .card>.card-body .h1,.docs-page .card>.card-body .h2,.docs-page .card>.card-body .h3,.docs-page .card>.card-body .h4,.docs-page .card>.card-body .h5,.docs-page .card>.card-body .h6,.docs-page .card>.card-body h1,.docs-page .card>.card-body h2,.docs-page .card>.card-body h3,.docs-page .card>.card-body h4,.docs-page .card>.card-body h5,.docs-page .card>.card-body h6{margin-top:2em;margin-bottom:.5em;font-weight:600;line-height:1.3;color:var(--bs-emphasis-color);scroll-margin-top:4rem}.docs-page .card>.card-body .h1:first-child,.docs-page .card>.card-body .h2:first-child,.docs-page .card>.card-body .h3:first-child,.docs-page .card>.card-body .h4:first-child,.docs-page .card>.card-body .h5:first-child,.docs-page .card>.card-body .h6:first-child,.docs-page .card>.card-body h1:first-child,.docs-page .card>.card-body h2:first-child,.docs-page .card>.card-body h3:first-child,.docs-page .card>.card-body h4:first-child,.docs-page .card>.card-body h5:first-child,.docs-page .card>.card-body h6:first-child{margin-top:0}.docs-page .card>.card-body .h2,.docs-page .card>.card-body h2{padding-bottom:.35em;font-size:1.75rem;border-bottom:1px solid var(--bs-border-color)}.docs-page .card>.card-body .h3,.docs-page .card>.card-body h3{font-size:1.4rem}.docs-page .card>.card-body .h4,.docs-page .card>.card-body h4{font-size:1.2rem}.docs-page .card>.card-body .h5,.docs-page .card>.card-body h5{padding-top:1.5em;margin-top:2.5em;font-size:1.3rem;border-top:1px solid var(--bs-border-color)}.docs-page .card>.card-body .h5:first-child,.docs-page .card>.card-body h5:first-child{padding-top:0;border-top:0}.docs-page .card>.card-body .h6,.docs-page .card>.card-body h6{margin-top:1.75em;font-size:1.08rem;color:var(--bs-emphasis-color)}.docs-page .card>.card-body blockquote,.docs-page .card>.card-body dl,.docs-page .card>.card-body ol,.docs-page .card>.card-body p,.docs-page .card>.card-body table,.docs-page .card>.card-body ul{margin-bottom:1.1rem}.docs-page .card>.card-body ol,.docs-page .card>.card-body ul{padding-left:1.5rem}.docs-page .card>.card-body ol li,.docs-page .card>.card-body ul li{margin-bottom:.35rem}.docs-page .card>.card-body ol ol,.docs-page .card>.card-body ol ul,.docs-page .card>.card-body ul ol,.docs-page .card>.card-body ul ul{margin-top:.35rem;margin-bottom:0}.docs-page .card>.card-body h2+p,.docs-page .card>.card-body h3+p,.docs-page .card>.card-body h5+p{margin-top:0}.docs-page .card>.card-body h2 code,.docs-page .card>.card-body h3 code,.docs-page .card>.card-body h4 code,.docs-page .card>.card-body h5 code,.docs-page .card>.card-body h6 code,.docs-page .card>.card-body li code,.docs-page .card>.card-body p code,.docs-page .card>.card-body td code,.docs-page .card>.card-body th code{padding:.15em .4em;font-size:.875em;color:var(--bs-emphasis-color);background:var(--bs-tertiary-bg);border:1px solid var(--bs-border-color);border-radius:.25rem}.docs-page .card>.card-body pre,.docs-page .card>.card-body pre.astro-code{padding:1rem 1.25rem;margin-top:1.25rem;margin-bottom:1.5rem;overflow-x:auto;font-size:.875rem;line-height:1.6;border-radius:.375rem}.docs-page .card>.card-body pre code,.docs-page .card>.card-body pre.astro-code code{padding:0;background:0 0;border:0}.docs-page .card>.card-body table{width:100%;margin-top:1.25rem;margin-bottom:1.5rem;overflow:hidden;font-size:.95rem;border-collapse:collapse;border:1px solid var(--bs-border-color);border-radius:.25rem}.docs-page .card>.card-body table td,.docs-page .card>.card-body table th{padding:.65rem .9rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--bs-border-color)}.docs-page .card>.card-body table th{font-weight:600;color:var(--bs-emphasis-color);background:var(--bs-tertiary-bg)}.docs-page .card>.card-body table tr:last-child td{border-bottom:0}.docs-page .card>.card-body table code{white-space:nowrap}.docs-page .card>.card-body blockquote{padding:.85rem 1.1rem;margin-top:1.25rem;color:var(--bs-emphasis-color);background:var(--bs-info-bg-subtle);border-left:4px solid var(--bs-info-border-subtle);border-radius:.25rem}.docs-page .card>.card-body blockquote p:last-child{margin-bottom:0}.docs-page .card>.card-body blockquote code{background:rgba(0,0,0,.05)}.docs-page .card>.card-body a:not(.btn):not(.nav-link){color:var(--bs-primary);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.docs-page .card>.card-body a:not(.btn):not(.nav-link):hover{text-decoration-thickness:2px}.docs-page .card>.card-body hr{margin:2.5rem 0;border:0;border-top:1px solid var(--bs-border-color);opacity:1}.docs-page .card>.card-body>p:first-child,.docs-page .card>.card-body>p:first-of-type{margin-bottom:2rem;font-size:1.125rem;line-height:1.6;color:var(--bs-body-color)}.docs-page .card>.card-body details.faq-item{margin-bottom:.5rem;overflow:hidden;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:.375rem;transition:border-color .15s ease,box-shadow .15s ease}@media (prefers-reduced-motion:reduce){.docs-page .card>.card-body details.faq-item{transition:none}}.docs-page .card>.card-body details.faq-item:hover{border-color:var(--bs-primary-border-subtle)}.docs-page .card>.card-body details.faq-item[open]{background:var(--bs-body-bg);border-color:var(--bs-primary-border-subtle);box-shadow:0 1px 3px rgba(0,0,0,.04)}.docs-page .card>.card-body details.faq-item summary{position:relative;padding:.9rem 3rem .9rem 1.1rem;font-size:1rem;font-weight:600;color:var(--bs-emphasis-color);list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}@media (prefers-reduced-motion:reduce){.docs-page .card>.card-body details.faq-item summary{transition:none}}.docs-page .card>.card-body details.faq-item summary::-webkit-details-marker{display:none}.docs-page .card>.card-body details.faq-item summary::marker{content:""}.docs-page .card>.card-body details.faq-item summary:hover{color:var(--bs-primary)}.docs-page .card>.card-body details.faq-item summary::after{position:absolute;top:50%;right:1.1rem;display:inline-block;width:.55rem;height:.55rem;margin-top:-.4rem;content:"";border-right:2px solid currentcolor;border-bottom:2px solid currentcolor;opacity:.55;transform:rotate(45deg);transition:transform .2s ease}@media (prefers-reduced-motion:reduce){.docs-page .card>.card-body details.faq-item summary::after{transition:none}}.docs-page .card>.card-body details.faq-item[open]>summary{color:var(--bs-primary);border-bottom:1px solid var(--bs-border-color)}.docs-page .card>.card-body details.faq-item[open]>summary::after{margin-top:-.15rem;opacity:1;transform:rotate(-135deg)}.docs-page .card>.card-body details.faq-item>:not(summary){padding-right:1.1rem;padding-left:1.1rem}.docs-page .card>.card-body details.faq-item>:not(summary):first-of-type{padding-top:1rem}.docs-page .card>.card-body details.faq-item>:not(summary):last-child{padding-bottom:1rem}.docs-page .card>.card-body details.faq-item ol,.docs-page .card>.card-body details.faq-item p,.docs-page .card>.card-body details.faq-item ul{margin-bottom:.65rem}.docs-page .card>.card-body details.faq-item>:last-child p:last-child,.docs-page .card>.card-body details.faq-item>ol:last-child,.docs-page .card>.card-body details.faq-item>p:last-child,.docs-page .card>.card-body details.faq-item>ul:last-child{margin-bottom:0}.docs-page .card>.card-body details.faq-item pre,.docs-page .card>.card-body details.faq-item pre.astro-code{margin-right:0;margin-left:0}.docs-page[data-bs-theme=dark] .card>.card-body blockquote code,[data-bs-theme=dark] .docs-page .card>.card-body blockquote code{background:rgba(255,255,255,.08)}.faq-page .app-content>.container-fluid{max-width:64rem}@media (min-width:1400px){.faq-page .app-content>.container-fluid{max-width:72rem}}.faq-page .faq-hero{position:relative;padding:3rem 1.5rem 2.5rem;margin-top:1rem;overflow:hidden;background:radial-gradient(ellipse at top left,rgba(var(--bs-primary-rgb),.12),transparent 60%),radial-gradient(ellipse at bottom right,rgba(var(--bs-info-rgb),.1),transparent 65%),var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:1rem}.faq-page .faq-hero-eyebrow{display:inline-flex;gap:.4rem;align-items:center;padding:.35rem .85rem;margin-bottom:1rem;font-size:.75rem;font-weight:600;color:var(--bs-primary);text-transform:uppercase;letter-spacing:.08em;background:var(--bs-primary-bg-subtle);border:1px solid var(--bs-primary-border-subtle);border-radius:50rem}.faq-page .faq-hero-eyebrow .bi{font-size:.9rem}.faq-page .faq-hero-title{margin:0 0 .5rem;font-size:2.25rem;font-weight:700;line-height:1.15;color:var(--bs-emphasis-color)}@media (min-width:768px){.faq-page .faq-hero-title{font-size:2.75rem}}.faq-page .faq-hero-lead{max-width:36rem;margin:0 auto 1.75rem;font-size:1.05rem;line-height:1.55;color:var(--bs-secondary-color)}.faq-page .faq-search{position:relative;max-width:32rem;margin:0 auto}.faq-page .faq-search .form-control{height:3rem;padding-right:3rem;padding-left:3rem;font-size:1rem;background:var(--bs-body-bg);border-radius:50rem;transition:box-shadow .15s ease,border-color .15s ease}@media (prefers-reduced-motion:reduce){.faq-page .faq-search .form-control{transition:none}}.faq-page .faq-search .form-control:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.15)}.faq-page .faq-search-icon{position:absolute;top:50%;left:1.2rem;color:var(--bs-secondary-color);pointer-events:none;transform:translateY(-50%)}.faq-page .faq-search-clear{position:absolute;top:50%;right:.65rem;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;color:var(--bs-secondary-color);background:var(--bs-tertiary-bg);border:0;transform:translateY(-50%);border-radius:50%;transition:background .15s ease,color .15s ease}@media (prefers-reduced-motion:reduce){.faq-page .faq-search-clear{transition:none}}.faq-page .faq-search-clear:hover{color:var(--bs-body-color);background:var(--bs-secondary-bg)}.faq-page .faq-empty-state{max-width:32rem;padding:1rem;margin:1.5rem auto 0;font-size:.95rem;color:var(--bs-secondary-color);background:var(--bs-tertiary-bg);border-radius:.375rem}.faq-page .faq-empty-state .bi{margin-right:.35rem}.faq-page .faq-chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.faq-page .faq-chip{display:inline-flex;gap:.45rem;align-items:center;padding:.45rem .85rem;font-size:.875rem;font-weight:500;color:var(--bs-body-color);text-decoration:none;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:50rem;transition:transform .15s ease,border-color .15s ease,background-color .15s ease,color .15s ease}@media (prefers-reduced-motion:reduce){.faq-page .faq-chip{transition:none}}.faq-page .faq-chip:hover{color:var(--bs-emphasis-color);background:var(--bs-tertiary-bg);transform:translateY(-1px)}.faq-page .faq-chip .bi{font-size:1rem}.faq-page .faq-chip-count{padding:0 .45rem;font-size:.7rem;font-weight:600;color:var(--bs-secondary-color);background:var(--bs-tertiary-bg);border-radius:50rem}.faq-page .faq-chip-primary:hover{color:var(--bs-primary-text-emphasis);background:var(--bs-primary-bg-subtle);border-color:var(--bs-primary-border-subtle)}.faq-page .faq-chip-primary:hover .faq-chip-count{color:var(--bs-primary-text-emphasis);background:rgba(0,0,0,.06)}.faq-page .faq-chip-info:hover{color:var(--bs-info-text-emphasis);background:var(--bs-info-bg-subtle);border-color:var(--bs-info-border-subtle)}.faq-page .faq-chip-info:hover .faq-chip-count{color:var(--bs-info-text-emphasis);background:rgba(0,0,0,.06)}.faq-page .faq-chip-warning:hover{color:var(--bs-warning-text-emphasis);background:var(--bs-warning-bg-subtle);border-color:var(--bs-warning-border-subtle)}.faq-page .faq-chip-warning:hover .faq-chip-count{color:var(--bs-warning-text-emphasis);background:rgba(0,0,0,.06)}.faq-page .faq-chip-success:hover{color:var(--bs-success-text-emphasis);background:var(--bs-success-bg-subtle);border-color:var(--bs-success-border-subtle)}.faq-page .faq-chip-success:hover .faq-chip-count{color:var(--bs-success-text-emphasis);background:rgba(0,0,0,.06)}.faq-page .faq-chip-danger:hover{color:var(--bs-danger-text-emphasis);background:var(--bs-danger-bg-subtle);border-color:var(--bs-danger-border-subtle)}.faq-page .faq-chip-danger:hover .faq-chip-count{color:var(--bs-danger-text-emphasis);background:rgba(0,0,0,.06)}.faq-page .faq-chip-secondary:hover{color:var(--bs-secondary-text-emphasis);background:var(--bs-secondary-bg-subtle);border-color:var(--bs-secondary-border-subtle)}.faq-page .faq-chip-secondary:hover .faq-chip-count{color:var(--bs-secondary-text-emphasis);background:rgba(0,0,0,.06)}.faq-page .faq-section{margin-bottom:2.5rem;scroll-margin-top:5rem}.faq-page .faq-section-header{display:flex;gap:1rem;align-items:center;padding:1rem 1.25rem;margin-bottom:1rem;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-left:4px solid var(--bs-primary);border-radius:.375rem}.faq-page .faq-section-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;font-size:1.35rem;color:var(--bs-primary);background:var(--bs-primary-bg-subtle);border-radius:.375rem}.faq-page .faq-section-title{margin:0;font-size:1.4rem;font-weight:600;line-height:1.2;color:var(--bs-emphasis-color)}.faq-page .faq-section-count{margin:.1rem 0 0;font-size:.8rem;color:var(--bs-secondary-color)}.faq-page .faq-section-primary{border-left-color:var(--bs-primary)}.faq-page .faq-section-primary .faq-section-icon{color:var(--bs-primary-text-emphasis);background:var(--bs-primary-bg-subtle)}.faq-page .faq-section-info{border-left-color:var(--bs-info)}.faq-page .faq-section-info .faq-section-icon{color:var(--bs-info-text-emphasis);background:var(--bs-info-bg-subtle)}.faq-page .faq-section-warning{border-left-color:var(--bs-warning)}.faq-page .faq-section-warning .faq-section-icon{color:var(--bs-warning-text-emphasis);background:var(--bs-warning-bg-subtle)}.faq-page .faq-section-success{border-left-color:var(--bs-success)}.faq-page .faq-section-success .faq-section-icon{color:var(--bs-success-text-emphasis);background:var(--bs-success-bg-subtle)}.faq-page .faq-section-danger{border-left-color:var(--bs-danger)}.faq-page .faq-section-danger .faq-section-icon{color:var(--bs-danger-text-emphasis);background:var(--bs-danger-bg-subtle)}.faq-page .faq-section-secondary{border-left-color:var(--bs-secondary)}.faq-page .faq-section-secondary .faq-section-icon{color:var(--bs-secondary-text-emphasis);background:var(--bs-secondary-bg-subtle)}.faq-page .faq-section-items .faq-item{margin-bottom:.5rem;overflow:hidden;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:.375rem;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}@media (prefers-reduced-motion:reduce){.faq-page .faq-section-items .faq-item{transition:none}}.faq-page .faq-section-items .faq-item:hover{border-color:var(--bs-primary-border-subtle);transform:translateX(2px)}.faq-page .faq-section-items .faq-item[open]{border-color:var(--bs-primary-border-subtle);box-shadow:0 2px 8px rgba(0,0,0,.04);transform:none}.faq-page .faq-section-items .faq-item summary{display:flex;gap:.85rem;align-items:center;padding:1rem 1.25rem;font-size:1rem;font-weight:500;color:var(--bs-emphasis-color);list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none}.faq-page .faq-section-items .faq-item summary::-webkit-details-marker{display:none}.faq-page .faq-section-items .faq-item summary::marker{content:""}.faq-page .faq-section-items .faq-item summary::after{content:none}.faq-page .faq-section-items .faq-item .faq-q-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;font-size:.85rem;color:var(--bs-primary);background:var(--bs-primary-bg-subtle);border-radius:50%}.faq-page .faq-section-items .faq-item .faq-q-text{flex-grow:1}.faq-page .faq-section-items .faq-item .faq-q-chevron{flex-shrink:0;color:var(--bs-secondary-color);transition:transform .2s ease,color .2s ease}@media (prefers-reduced-motion:reduce){.faq-page .faq-section-items .faq-item .faq-q-chevron{transition:none}}.faq-page .faq-section-items .faq-item[open] .faq-q-chevron{color:var(--bs-primary);transform:rotate(180deg)}.faq-page .faq-section-items .faq-item[open] summary{color:var(--bs-primary);border-bottom:1px solid var(--bs-border-color)}.faq-page .faq-section-items .faq-item .faq-answer{padding:1.1rem 1.25rem 1.1rem 3.85rem;font-size:.95rem;line-height:1.65;color:var(--bs-body-color)}.faq-page .faq-section-items .faq-item .faq-answer ol:last-child,.faq-page .faq-section-items .faq-item .faq-answer p:last-child,.faq-page .faq-section-items .faq-item .faq-answer pre:last-child,.faq-page .faq-section-items .faq-item .faq-answer ul:last-child{margin-bottom:0}.faq-page .faq-section-items .faq-item .faq-answer a{color:var(--bs-primary);text-decoration:underline;text-underline-offset:2px}.faq-page .faq-section-items .faq-item .faq-answer a:hover{text-decoration-thickness:2px}.faq-page .faq-section-items .faq-item .faq-answer code{padding:.12em .35em;font-size:.875em;color:var(--bs-emphasis-color);background:var(--bs-tertiary-bg);border:1px solid var(--bs-border-color);border-radius:.25rem}.faq-page .faq-section-items .faq-item .faq-answer pre,.faq-page .faq-section-items .faq-item .faq-answer pre.astro-code{padding:.85rem 1rem;margin-top:.75rem;margin-bottom:.75rem;overflow-x:auto;font-size:.85rem;line-height:1.55;border-radius:.25rem}.faq-page .faq-section-items .faq-item .faq-answer pre code,.faq-page .faq-section-items .faq-item .faq-answer pre.astro-code code{padding:0;background:0 0;border:0}.faq-page .faq-cta{padding:2.5rem 1.5rem;text-align:center;background:radial-gradient(ellipse at top,rgba(var(--bs-primary-rgb),.08),transparent 60%),var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:1rem}.faq-page .faq-cta-icon{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;margin-bottom:1rem;font-size:1.6rem;color:var(--bs-primary);background:var(--bs-primary-bg-subtle);border-radius:50%}.faq-page .faq-cta h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:var(--bs-emphasis-color)}.faq-page .faq-cta p{max-width:32rem;margin:0 auto 1.5rem;color:var(--bs-secondary-color)}.faq-page .faq-cta-actions{display:inline-flex;flex-wrap:wrap;gap:.5rem;justify-content:center}
7
+ /*# sourceMappingURL=adminlte-docs.min.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/scss/adminlte-docs.scss","../../src/scss/mixins/_animations.scss","../../src/scss/_docs.scss","../../node_modules/bootstrap/scss/mixins/_border-radius.scss","../../node_modules/bootstrap/scss/mixins/_breakpoints.scss","dist/css/adminlte-docs.css","../../node_modules/bootstrap/scss/mixins/_transition.scss"],"names":[],"mappings":"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","sourcesContent":["/*!\n * AdminLTE v4.0.4 — documentation styles\n * Styles for the documentation and FAQ pages only (body.docs-page /\n * body.faq-page). Applications never need this file; it is loaded by the\n * docs pages in addition to adminlte.css.\n */\n\n// Bootstrap Configuration\n// ---------------------------------------------------\n@import \"bootstrap/scss/functions\";\n@import \"bootstrap-overrides\";\n@import \"bootstrap/scss/variables\";\n@import \"bootstrap/scss/variables-dark\";\n@import \"bootstrap/scss/maps\";\n@import \"bootstrap/scss/mixins\";\n\n// AdminLTE Configuration\n// ---------------------------------------------------\n@import \"variables\";\n@import \"variables-dark\";\n@import \"mixins\";\n\n// Documentation styles\n// ---------------------------------------------------\n@import \"docs\";\n","//\n// Mixins: Animation\n//\n\n\n@keyframes flipInX {\n 0% {\n opacity: 0;\n transition-timing-function: ease-in;\n transform: perspective(400px) rotate3d(1, 0, 0, 90deg);\n }\n\n 40% {\n transition-timing-function: ease-in;\n transform: perspective(400px) rotate3d(1, 0, 0, -20deg);\n }\n\n 60% {\n opacity: 1;\n transform: perspective(400px) rotate3d(1, 0, 0, 10deg);\n }\n\n 80% {\n transform: perspective(400px) rotate3d(1, 0, 0, -5deg);\n }\n\n 100% {\n transform: perspective(400px);\n }\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n }\n}\n\n@keyframes shake {\n 0% {\n transform: translate(2px, 1px) rotate(0deg);\n }\n 10% {\n transform: translate(-1px, -2px) rotate(-2deg);\n }\n 20% {\n transform: translate(-3px, 0) rotate(3deg);\n }\n 30% {\n transform: translate(0, 2px) rotate(0deg);\n }\n 40% {\n transform: translate(1px, -1px) rotate(1deg);\n }\n 50% {\n transform: translate(-1px, 2px) rotate(-1deg);\n }\n 60% {\n transform: translate(-3px, 1px) rotate(0deg);\n }\n 70% {\n transform: translate(2px, 1px) rotate(-2deg);\n }\n 80% {\n transform: translate(-1px, -1px) rotate(4deg);\n }\n 90% {\n transform: translate(2px, 2px) rotate(0deg);\n }\n 100% {\n transform: translate(1px, -2px) rotate(-1deg);\n }\n}\n\n@keyframes wobble {\n 0% {\n transform: none;\n }\n\n 15% {\n transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);\n }\n\n 30% {\n transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);\n }\n\n 45% {\n transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);\n }\n\n 60% {\n transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);\n }\n\n 75% {\n transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);\n }\n\n 100% {\n transform: none;\n }\n}\n","//\n// Component: Docs\n//\n// Visual treatment for documentation pages. Body class `.docs-page` opts in.\n// Demo pages are not affected.\n//\n\n// Inline code blocks rendered by MDX (Astro highlight default class)\n.astro-code {\n padding: .75rem;\n @include border-radius($border-radius);\n}\n\n.docs-page {\n // Constrain the docs card to a comfortable reading width.\n // Tables and code blocks inside can still scroll horizontally if needed.\n .app-content > .container-fluid {\n max-width: 60rem; // ~960px\n\n @include media-breakpoint-up(xxl) {\n max-width: 64rem;\n }\n }\n\n //\n // Card body — breathing room + prose typography.\n // Only applied inside docs content cards so demo-page card content\n // stays unchanged.\n //\n .card > .card-body {\n padding: 1.5rem;\n font-size: 1rem;\n line-height: 1.7;\n color: var(--#{$prefix}body-color);\n\n @include media-breakpoint-up(md) {\n padding: 2.5rem;\n }\n\n //\n // Heading hierarchy. The MDX content in src/html/components/docs/ uses\n // ##### (h5) as the dominant section heading and ###### (h6) as a\n // sub-heading (most visible in FAQ.mdx, where h5 is a topic and h6 is\n // a question). Style h5 as a major section and h6 as a sub-section so\n // the visual hierarchy matches the semantic one.\n //\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n .h1,\n .h2,\n .h3,\n .h4,\n .h5,\n .h6 {\n margin-top: 2em;\n margin-bottom: .5em;\n font-weight: 600;\n line-height: 1.3;\n color: var(--#{$prefix}emphasis-color);\n scroll-margin-top: 4rem; // anchor-link friendly\n\n &:first-child {\n margin-top: 0;\n }\n }\n\n h2,\n .h2 {\n padding-bottom: .35em;\n font-size: 1.75rem;\n border-bottom: 1px solid var(--#{$prefix}border-color);\n }\n\n h3,\n .h3 {\n font-size: 1.4rem;\n }\n\n h4,\n .h4 {\n font-size: 1.2rem;\n }\n\n // h5 is the dominant section heading across docs MDX files. Give it\n // a visible separator above so sections are easy to scan.\n h5,\n .h5 {\n padding-top: 1.5em;\n margin-top: 2.5em;\n font-size: 1.3rem;\n border-top: 1px solid var(--#{$prefix}border-color);\n\n &:first-child {\n padding-top: 0;\n border-top: 0;\n }\n }\n\n // h6 is the sub-section / FAQ question style. Smaller than h5 but\n // still distinctly heading-like, with a touch of accent colour to\n // separate from body text.\n h6,\n .h6 {\n margin-top: 1.75em;\n font-size: 1.08rem;\n color: var(--#{$prefix}emphasis-color);\n }\n\n //\n // Paragraphs and lists.\n //\n p,\n ul,\n ol,\n dl,\n blockquote,\n table {\n margin-bottom: 1.1rem;\n }\n\n ul,\n ol {\n padding-left: 1.5rem;\n\n li {\n margin-bottom: .35rem;\n }\n\n // Tighter nested lists\n ul,\n ol {\n margin-top: .35rem;\n margin-bottom: 0;\n }\n }\n\n // Lead-style first paragraph (just after a heading)\n h2 + p,\n h3 + p,\n h5 + p {\n margin-top: 0;\n }\n\n //\n // Inline code — pill style that complements MDX's syntax-highlighted blocks.\n //\n p code,\n li code,\n td code,\n th code,\n h2 code,\n h3 code,\n h4 code,\n h5 code,\n h6 code {\n padding: .15em .4em;\n font-size: .875em;\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}tertiary-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-sm);\n }\n\n //\n // Code blocks.\n //\n pre.astro-code,\n pre {\n padding: 1rem 1.25rem;\n margin-top: 1.25rem;\n margin-bottom: 1.5rem;\n overflow-x: auto;\n font-size: .875rem;\n line-height: 1.6;\n @include border-radius($border-radius);\n\n code {\n padding: 0;\n background: transparent;\n border: 0;\n }\n }\n\n //\n // Tables — reference-doc styling with hairline borders.\n //\n table {\n width: 100%;\n margin-top: 1.25rem;\n margin-bottom: 1.5rem;\n overflow: hidden;\n font-size: .95rem;\n border-collapse: collapse;\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-sm);\n\n th,\n td {\n padding: .65rem .9rem;\n text-align: left;\n vertical-align: top;\n border-bottom: 1px solid var(--#{$prefix}border-color);\n }\n\n th {\n font-weight: 600;\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}tertiary-bg);\n }\n\n tr:last-child td {\n border-bottom: 0;\n }\n\n code {\n white-space: nowrap;\n }\n }\n\n //\n // Blockquotes used as info callouts.\n //\n blockquote {\n padding: .85rem 1.1rem;\n margin-top: 1.25rem;\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}info-bg-subtle);\n border-left: 4px solid var(--#{$prefix}info-border-subtle);\n @include border-radius($border-radius-sm);\n\n p:last-child {\n margin-bottom: 0;\n }\n\n code {\n background: rgba(0, 0, 0, .05);\n }\n }\n\n //\n // Prose links — stand out more than Bootstrap defaults.\n //\n a:not(.btn):not(.nav-link) {\n color: var(--#{$prefix}primary);\n text-decoration: underline;\n text-decoration-thickness: 1px;\n text-underline-offset: 3px;\n\n &:hover {\n text-decoration-thickness: 2px;\n }\n }\n\n //\n // Horizontal rule — used as additional section separator.\n //\n hr {\n margin: 2.5rem 0;\n border: 0;\n border-top: 1px solid var(--#{$prefix}border-color);\n opacity: 1;\n }\n\n //\n // Lead paragraph — the first paragraph in any doc is a summary.\n // Visually heavier so it functions as a deck.\n //\n > p:first-child,\n > p:first-of-type {\n margin-bottom: 2rem;\n font-size: 1.125rem;\n line-height: 1.6;\n color: var(--#{$prefix}body-color);\n }\n\n //\n // FAQ / disclosure accordion — uses native <details>/<summary>.\n // Add `.faq-item` to <details> to opt in.\n //\n details.faq-item {\n margin-bottom: .5rem;\n overflow: hidden;\n background: var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius);\n @include transition(border-color .15s ease, box-shadow .15s ease);\n\n &:hover {\n border-color: var(--#{$prefix}primary-border-subtle);\n }\n\n &[open] {\n background: var(--#{$prefix}body-bg);\n border-color: var(--#{$prefix}primary-border-subtle);\n box-shadow: 0 1px 3px rgba(0, 0, 0, .04);\n }\n\n summary {\n position: relative;\n padding: .9rem 3rem .9rem 1.1rem;\n font-size: 1rem;\n font-weight: 600;\n color: var(--#{$prefix}emphasis-color);\n list-style: none;\n cursor: pointer;\n user-select: none;\n @include transition(color .15s ease);\n\n // Hide the default disclosure triangle in Webkit/Blink\n &::-webkit-details-marker {\n display: none;\n }\n\n // Hide the marker in modern Firefox too\n &::marker {\n content: \"\";\n }\n\n &:hover {\n color: var(--#{$prefix}primary);\n }\n\n // Right-side chevron, rotates on open\n &::after {\n position: absolute;\n top: 50%;\n right: 1.1rem;\n display: inline-block;\n width: .55rem;\n height: .55rem;\n margin-top: -.4rem;\n content: \"\";\n border-right: 2px solid currentcolor;\n border-bottom: 2px solid currentcolor;\n opacity: .55;\n transform: rotate(45deg);\n @include transition(transform .2s ease);\n }\n }\n\n &[open] > summary {\n color: var(--#{$prefix}primary);\n border-bottom: 1px solid var(--#{$prefix}border-color);\n\n &::after {\n margin-top: -.15rem;\n opacity: 1;\n transform: rotate(-135deg);\n }\n }\n\n // Content (everything after <summary>) gets the inner padding\n > *:not(summary) {\n padding-right: 1.1rem;\n padding-left: 1.1rem;\n }\n\n > *:not(summary):first-of-type {\n padding-top: 1rem;\n }\n\n > *:not(summary):last-child {\n padding-bottom: 1rem;\n }\n\n // Tighten paragraphs/lists inside an FAQ answer\n p,\n ul,\n ol {\n margin-bottom: .65rem;\n }\n\n > *:last-child p:last-child,\n > p:last-child,\n > ul:last-child,\n > ol:last-child {\n margin-bottom: 0;\n }\n\n // Code blocks inside an FAQ answer get a less-distracting bg\n pre.astro-code,\n pre {\n margin-right: 0;\n margin-left: 0;\n }\n }\n }\n\n // Dark-mode tweak: blockquote info bg needs more contrast on dark\n &[data-bs-theme=\"dark\"],\n [data-bs-theme=\"dark\"] & {\n .card > .card-body blockquote code {\n background: rgba(255, 255, 255, .08);\n }\n }\n}\n\n//\n// FAQ page — custom layout that breaks out of the standard docs card\n// to give the FAQ a more distinctive visual identity. Opt in via\n// body.faq-page (set in pages/docs/faq.astro).\n//\n\n.faq-page {\n // The FAQ doesn't use the standard card wrapper used by other docs,\n // so the container can stretch wider for the chip strip and section\n // grid.\n .app-content > .container-fluid {\n max-width: 64rem;\n\n @include media-breakpoint-up(xxl) {\n max-width: 72rem;\n }\n }\n\n // --- Hero -------------------------------------------------------------\n .faq-hero {\n position: relative;\n padding: 3rem 1.5rem 2.5rem;\n margin-top: 1rem;\n overflow: hidden;\n background: radial-gradient(ellipse at top left, rgba(var(--#{$prefix}primary-rgb), .12), transparent 60%), radial-gradient(ellipse at bottom right, rgba(var(--#{$prefix}info-rgb), .1), transparent 65%), var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-xl);\n }\n\n .faq-hero-eyebrow {\n display: inline-flex;\n gap: .4rem;\n align-items: center;\n padding: .35rem .85rem;\n margin-bottom: 1rem;\n font-size: .75rem;\n font-weight: 600;\n color: var(--#{$prefix}primary);\n text-transform: uppercase;\n letter-spacing: .08em;\n background: var(--#{$prefix}primary-bg-subtle);\n border: 1px solid var(--#{$prefix}primary-border-subtle);\n @include border-radius(50rem);\n\n .bi {\n font-size: .9rem;\n }\n }\n\n .faq-hero-title {\n margin: 0 0 .5rem;\n font-size: 2.25rem;\n font-weight: 700;\n line-height: 1.15;\n color: var(--#{$prefix}emphasis-color);\n\n @include media-breakpoint-up(md) {\n font-size: 2.75rem;\n }\n }\n\n .faq-hero-lead {\n max-width: 36rem;\n margin: 0 auto 1.75rem;\n font-size: 1.05rem;\n line-height: 1.55;\n color: var(--#{$prefix}secondary-color);\n }\n\n .faq-search {\n position: relative;\n max-width: 32rem;\n margin: 0 auto;\n\n .form-control {\n height: 3rem;\n padding-right: 3rem;\n padding-left: 3rem;\n font-size: 1rem;\n background: var(--#{$prefix}body-bg);\n @include border-radius(50rem);\n @include transition(box-shadow .15s ease, border-color .15s ease);\n\n &:focus {\n box-shadow: 0 0 0 .25rem rgba(var(--#{$prefix}primary-rgb), .15);\n }\n }\n }\n\n .faq-search-icon {\n position: absolute;\n top: 50%;\n left: 1.2rem;\n color: var(--#{$prefix}secondary-color);\n pointer-events: none;\n transform: translateY(-50%);\n }\n\n .faq-search-clear {\n position: absolute;\n top: 50%;\n right: .65rem;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n padding: 0;\n color: var(--#{$prefix}secondary-color);\n background: var(--#{$prefix}tertiary-bg);\n border: 0;\n transform: translateY(-50%);\n @include border-radius(50%);\n @include transition(background .15s ease, color .15s ease);\n\n &:hover {\n color: var(--#{$prefix}body-color);\n background: var(--#{$prefix}secondary-bg);\n }\n }\n\n .faq-empty-state {\n max-width: 32rem;\n padding: 1rem;\n margin: 1.5rem auto 0;\n font-size: .95rem;\n color: var(--#{$prefix}secondary-color);\n background: var(--#{$prefix}tertiary-bg);\n @include border-radius($border-radius);\n\n .bi {\n margin-right: .35rem;\n }\n }\n\n // --- Section nav chips ------------------------------------------------\n .faq-chips {\n display: flex;\n flex-wrap: wrap;\n gap: .5rem;\n justify-content: center;\n }\n\n .faq-chip {\n display: inline-flex;\n gap: .45rem;\n align-items: center;\n padding: .45rem .85rem;\n font-size: .875rem;\n font-weight: 500;\n color: var(--#{$prefix}body-color);\n text-decoration: none;\n background: var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius(50rem);\n @include transition(transform .15s ease, border-color .15s ease, background-color .15s ease, color .15s ease);\n\n &:hover {\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}tertiary-bg);\n transform: translateY(-1px);\n }\n\n .bi {\n font-size: 1rem;\n }\n }\n\n .faq-chip-count {\n padding: 0 .45rem;\n font-size: .7rem;\n font-weight: 600;\n color: var(--#{$prefix}secondary-color);\n background: var(--#{$prefix}tertiary-bg);\n @include border-radius(50rem);\n }\n\n // Per-section chip accent on hover/active\n @each $tone in (primary, info, warning, success, danger, secondary) {\n .faq-chip-#{$tone}:hover {\n color: var(--#{$prefix}#{$tone}-text-emphasis);\n background: var(--#{$prefix}#{$tone}-bg-subtle);\n border-color: var(--#{$prefix}#{$tone}-border-subtle);\n\n .faq-chip-count {\n color: var(--#{$prefix}#{$tone}-text-emphasis);\n background: rgba(0, 0, 0, .06);\n }\n }\n }\n\n // --- Sections ---------------------------------------------------------\n .faq-section {\n margin-bottom: 2.5rem;\n scroll-margin-top: 5rem;\n }\n\n .faq-section-header {\n display: flex;\n gap: 1rem;\n align-items: center;\n padding: 1rem 1.25rem;\n margin-bottom: 1rem;\n background: var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n border-left: 4px solid var(--#{$prefix}primary);\n @include border-radius($border-radius);\n }\n\n .faq-section-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 2.75rem;\n height: 2.75rem;\n font-size: 1.35rem;\n color: var(--#{$prefix}primary);\n background: var(--#{$prefix}primary-bg-subtle);\n @include border-radius($border-radius);\n }\n\n .faq-section-title {\n margin: 0;\n font-size: 1.4rem;\n font-weight: 600;\n line-height: 1.2;\n color: var(--#{$prefix}emphasis-color);\n }\n\n .faq-section-count {\n margin: .1rem 0 0;\n font-size: .8rem;\n color: var(--#{$prefix}secondary-color);\n }\n\n // Per-section tone accents\n @each $tone in (primary, info, warning, success, danger, secondary) {\n .faq-section-#{$tone} {\n border-left-color: var(--#{$prefix}#{$tone});\n\n .faq-section-icon {\n color: var(--#{$prefix}#{$tone}-text-emphasis);\n background: var(--#{$prefix}#{$tone}-bg-subtle);\n }\n }\n }\n\n // --- FAQ items (override the generic .docs-page details styling) ------\n .faq-section-items .faq-item {\n margin-bottom: .5rem;\n overflow: hidden;\n background: var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius);\n @include transition(border-color .15s ease, box-shadow .15s ease, transform .15s ease);\n\n &:hover {\n border-color: var(--#{$prefix}primary-border-subtle);\n transform: translateX(2px);\n }\n\n &[open] {\n border-color: var(--#{$prefix}primary-border-subtle);\n box-shadow: 0 2px 8px rgba(0, 0, 0, .04);\n transform: none;\n }\n\n summary {\n display: flex;\n gap: .85rem;\n align-items: center;\n padding: 1rem 1.25rem;\n font-size: 1rem;\n font-weight: 500;\n color: var(--#{$prefix}emphasis-color);\n list-style: none;\n cursor: pointer;\n user-select: none;\n\n &::-webkit-details-marker {\n display: none;\n }\n\n &::marker {\n content: \"\";\n }\n\n &::after {\n content: none; // disable the generic chevron, we use our own\n }\n }\n\n .faq-q-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n font-size: .85rem;\n color: var(--#{$prefix}primary);\n background: var(--#{$prefix}primary-bg-subtle);\n @include border-radius(50%);\n }\n\n .faq-q-text {\n flex-grow: 1;\n }\n\n .faq-q-chevron {\n flex-shrink: 0;\n color: var(--#{$prefix}secondary-color);\n @include transition(transform .2s ease, color .2s ease);\n }\n\n &[open] .faq-q-chevron {\n color: var(--#{$prefix}primary);\n transform: rotate(180deg);\n }\n\n &[open] summary {\n color: var(--#{$prefix}primary);\n border-bottom: 1px solid var(--#{$prefix}border-color);\n }\n\n .faq-answer {\n padding: 1.1rem 1.25rem 1.1rem 3.85rem; // align with the question text (icon + gap)\n font-size: .95rem;\n line-height: 1.65;\n color: var(--#{$prefix}body-color);\n\n p:last-child,\n ul:last-child,\n ol:last-child,\n pre:last-child {\n margin-bottom: 0;\n }\n\n a {\n color: var(--#{$prefix}primary);\n text-decoration: underline;\n text-underline-offset: 2px;\n\n &:hover {\n text-decoration-thickness: 2px;\n }\n }\n\n code {\n padding: .12em .35em;\n font-size: .875em;\n color: var(--#{$prefix}emphasis-color);\n background: var(--#{$prefix}tertiary-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-sm);\n }\n\n pre.astro-code,\n pre {\n padding: .85rem 1rem;\n margin-top: .75rem;\n margin-bottom: .75rem;\n overflow-x: auto;\n font-size: .85rem;\n line-height: 1.55;\n @include border-radius($border-radius-sm);\n\n code {\n padding: 0;\n background: transparent;\n border: 0;\n }\n }\n }\n }\n\n // --- CTA footer -------------------------------------------------------\n .faq-cta {\n padding: 2.5rem 1.5rem;\n text-align: center;\n background: radial-gradient(ellipse at top, rgba(var(--#{$prefix}primary-rgb), .08), transparent 60%), var(--#{$prefix}body-bg);\n border: 1px solid var(--#{$prefix}border-color);\n @include border-radius($border-radius-xl);\n }\n\n .faq-cta-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 3.5rem;\n height: 3.5rem;\n margin-bottom: 1rem;\n font-size: 1.6rem;\n color: var(--#{$prefix}primary);\n background: var(--#{$prefix}primary-bg-subtle);\n @include border-radius(50%);\n }\n\n .faq-cta h2 {\n margin: 0 0 .5rem;\n font-size: 1.5rem;\n font-weight: 600;\n color: var(--#{$prefix}emphasis-color);\n }\n\n .faq-cta p {\n max-width: 32rem;\n margin: 0 auto 1.5rem;\n color: var(--#{$prefix}secondary-color);\n }\n\n .faq-cta-actions {\n display: inline-flex;\n flex-wrap: wrap;\n gap: .5rem;\n justify-content: center;\n }\n}\n","// stylelint-disable property-disallowed-list\n// Single side border-radius\n\n// Helper function to replace negative values with 0\n@function valid-radius($radius) {\n $return: ();\n @each $value in $radius {\n @if type-of($value) == number {\n $return: append($return, max($value, 0));\n } @else {\n $return: append($return, $value);\n }\n }\n @return $return;\n}\n\n// scss-docs-start border-radius-mixins\n@mixin border-radius($radius: $border-radius, $fallback-border-radius: false) {\n @if $enable-rounded {\n border-radius: valid-radius($radius);\n }\n @else if $fallback-border-radius != false {\n border-radius: $fallback-border-radius;\n }\n}\n\n@mixin border-top-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-left-radius: valid-radius($radius);\n border-top-right-radius: valid-radius($radius);\n }\n}\n\n@mixin border-end-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-right-radius: valid-radius($radius);\n border-bottom-right-radius: valid-radius($radius);\n }\n}\n\n@mixin border-bottom-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-bottom-right-radius: valid-radius($radius);\n border-bottom-left-radius: valid-radius($radius);\n }\n}\n\n@mixin border-start-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-left-radius: valid-radius($radius);\n border-bottom-left-radius: valid-radius($radius);\n }\n}\n\n@mixin border-top-start-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-left-radius: valid-radius($radius);\n }\n}\n\n@mixin border-top-end-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-top-right-radius: valid-radius($radius);\n }\n}\n\n@mixin border-bottom-end-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-bottom-right-radius: valid-radius($radius);\n }\n}\n\n@mixin border-bottom-start-radius($radius: $border-radius) {\n @if $enable-rounded {\n border-bottom-left-radius: valid-radius($radius);\n }\n}\n// scss-docs-end border-radius-mixins\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl xxl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @if not $n {\n @error \"breakpoint `#{$name}` not found in `#{$breakpoints}`\";\n }\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $next: breakpoint-next($name, $breakpoints);\n $max: breakpoint-max($next, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($next, $breakpoints) {\n @content;\n }\n }\n}\n","@charset \"UTF-8\";\n/*!\n * AdminLTE v4.0.4 — documentation styles\n * Styles for the documentation and FAQ pages only (body.docs-page /\n * body.faq-page). Applications never need this file; it is loaded by the\n * docs pages in addition to adminlte.css.\n */\n@keyframes flipInX {\n 0% {\n opacity: 0;\n transition-timing-function: ease-in;\n transform: perspective(400px) rotate3d(1, 0, 0, 90deg);\n }\n 40% {\n transition-timing-function: ease-in;\n transform: perspective(400px) rotate3d(1, 0, 0, -20deg);\n }\n 60% {\n opacity: 1;\n transform: perspective(400px) rotate3d(1, 0, 0, 10deg);\n }\n 80% {\n transform: perspective(400px) rotate3d(1, 0, 0, -5deg);\n }\n 100% {\n transform: perspective(400px);\n }\n}\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n@keyframes shake {\n 0% {\n transform: translate(2px, 1px) rotate(0deg);\n }\n 10% {\n transform: translate(-1px, -2px) rotate(-2deg);\n }\n 20% {\n transform: translate(-3px, 0) rotate(3deg);\n }\n 30% {\n transform: translate(0, 2px) rotate(0deg);\n }\n 40% {\n transform: translate(1px, -1px) rotate(1deg);\n }\n 50% {\n transform: translate(-1px, 2px) rotate(-1deg);\n }\n 60% {\n transform: translate(-3px, 1px) rotate(0deg);\n }\n 70% {\n transform: translate(2px, 1px) rotate(-2deg);\n }\n 80% {\n transform: translate(-1px, -1px) rotate(4deg);\n }\n 90% {\n transform: translate(2px, 2px) rotate(0deg);\n }\n 100% {\n transform: translate(1px, -2px) rotate(-1deg);\n }\n}\n@keyframes wobble {\n 0% {\n transform: none;\n }\n 15% {\n transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);\n }\n 30% {\n transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);\n }\n 45% {\n transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);\n }\n 60% {\n transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);\n }\n 75% {\n transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);\n }\n 100% {\n transform: none;\n }\n}\n.astro-code {\n padding: 0.75rem;\n border-radius: 0.375rem;\n}\n\n.docs-page .app-content > .container-fluid {\n max-width: 60rem;\n}\n@media (min-width: 1400px) {\n .docs-page .app-content > .container-fluid {\n max-width: 64rem;\n }\n}\n.docs-page .card > .card-body {\n padding: 1.5rem;\n font-size: 1rem;\n line-height: 1.7;\n color: var(--bs-body-color);\n}\n@media (min-width: 768px) {\n .docs-page .card > .card-body {\n padding: 2.5rem;\n }\n}\n.docs-page .card > .card-body h1,\n.docs-page .card > .card-body h2,\n.docs-page .card > .card-body h3,\n.docs-page .card > .card-body h4,\n.docs-page .card > .card-body h5,\n.docs-page .card > .card-body h6,\n.docs-page .card > .card-body .h1,\n.docs-page .card > .card-body .h2,\n.docs-page .card > .card-body .h3,\n.docs-page .card > .card-body .h4,\n.docs-page .card > .card-body .h5,\n.docs-page .card > .card-body .h6 {\n margin-top: 2em;\n margin-bottom: 0.5em;\n font-weight: 600;\n line-height: 1.3;\n color: var(--bs-emphasis-color);\n scroll-margin-top: 4rem;\n}\n.docs-page .card > .card-body h1:first-child,\n.docs-page .card > .card-body h2:first-child,\n.docs-page .card > .card-body h3:first-child,\n.docs-page .card > .card-body h4:first-child,\n.docs-page .card > .card-body h5:first-child,\n.docs-page .card > .card-body h6:first-child,\n.docs-page .card > .card-body .h1:first-child,\n.docs-page .card > .card-body .h2:first-child,\n.docs-page .card > .card-body .h3:first-child,\n.docs-page .card > .card-body .h4:first-child,\n.docs-page .card > .card-body .h5:first-child,\n.docs-page .card > .card-body .h6:first-child {\n margin-top: 0;\n}\n.docs-page .card > .card-body h2,\n.docs-page .card > .card-body .h2 {\n padding-bottom: 0.35em;\n font-size: 1.75rem;\n border-bottom: 1px solid var(--bs-border-color);\n}\n.docs-page .card > .card-body h3,\n.docs-page .card > .card-body .h3 {\n font-size: 1.4rem;\n}\n.docs-page .card > .card-body h4,\n.docs-page .card > .card-body .h4 {\n font-size: 1.2rem;\n}\n.docs-page .card > .card-body h5,\n.docs-page .card > .card-body .h5 {\n padding-top: 1.5em;\n margin-top: 2.5em;\n font-size: 1.3rem;\n border-top: 1px solid var(--bs-border-color);\n}\n.docs-page .card > .card-body h5:first-child,\n.docs-page .card > .card-body .h5:first-child {\n padding-top: 0;\n border-top: 0;\n}\n.docs-page .card > .card-body h6,\n.docs-page .card > .card-body .h6 {\n margin-top: 1.75em;\n font-size: 1.08rem;\n color: var(--bs-emphasis-color);\n}\n.docs-page .card > .card-body p,\n.docs-page .card > .card-body ul,\n.docs-page .card > .card-body ol,\n.docs-page .card > .card-body dl,\n.docs-page .card > .card-body blockquote,\n.docs-page .card > .card-body table {\n margin-bottom: 1.1rem;\n}\n.docs-page .card > .card-body ul,\n.docs-page .card > .card-body ol {\n padding-left: 1.5rem;\n}\n.docs-page .card > .card-body ul li,\n.docs-page .card > .card-body ol li {\n margin-bottom: 0.35rem;\n}\n.docs-page .card > .card-body ul ul,\n.docs-page .card > .card-body ul ol,\n.docs-page .card > .card-body ol ul,\n.docs-page .card > .card-body ol ol {\n margin-top: 0.35rem;\n margin-bottom: 0;\n}\n.docs-page .card > .card-body h2 + p,\n.docs-page .card > .card-body h3 + p,\n.docs-page .card > .card-body h5 + p {\n margin-top: 0;\n}\n.docs-page .card > .card-body p code,\n.docs-page .card > .card-body li code,\n.docs-page .card > .card-body td code,\n.docs-page .card > .card-body th code,\n.docs-page .card > .card-body h2 code,\n.docs-page .card > .card-body h3 code,\n.docs-page .card > .card-body h4 code,\n.docs-page .card > .card-body h5 code,\n.docs-page .card > .card-body h6 code {\n padding: 0.15em 0.4em;\n font-size: 0.875em;\n color: var(--bs-emphasis-color);\n background: var(--bs-tertiary-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 0.25rem;\n}\n.docs-page .card > .card-body pre.astro-code,\n.docs-page .card > .card-body pre {\n padding: 1rem 1.25rem;\n margin-top: 1.25rem;\n margin-bottom: 1.5rem;\n overflow-x: auto;\n font-size: 0.875rem;\n line-height: 1.6;\n border-radius: 0.375rem;\n}\n.docs-page .card > .card-body pre.astro-code code,\n.docs-page .card > .card-body pre code {\n padding: 0;\n background: transparent;\n border: 0;\n}\n.docs-page .card > .card-body table {\n width: 100%;\n margin-top: 1.25rem;\n margin-bottom: 1.5rem;\n overflow: hidden;\n font-size: 0.95rem;\n border-collapse: collapse;\n border: 1px solid var(--bs-border-color);\n border-radius: 0.25rem;\n}\n.docs-page .card > .card-body table th,\n.docs-page .card > .card-body table td {\n padding: 0.65rem 0.9rem;\n text-align: left;\n vertical-align: top;\n border-bottom: 1px solid var(--bs-border-color);\n}\n.docs-page .card > .card-body table th {\n font-weight: 600;\n color: var(--bs-emphasis-color);\n background: var(--bs-tertiary-bg);\n}\n.docs-page .card > .card-body table tr:last-child td {\n border-bottom: 0;\n}\n.docs-page .card > .card-body table code {\n white-space: nowrap;\n}\n.docs-page .card > .card-body blockquote {\n padding: 0.85rem 1.1rem;\n margin-top: 1.25rem;\n color: var(--bs-emphasis-color);\n background: var(--bs-info-bg-subtle);\n border-left: 4px solid var(--bs-info-border-subtle);\n border-radius: 0.25rem;\n}\n.docs-page .card > .card-body blockquote p:last-child {\n margin-bottom: 0;\n}\n.docs-page .card > .card-body blockquote code {\n background: rgba(0, 0, 0, 0.05);\n}\n.docs-page .card > .card-body a:not(.btn):not(.nav-link) {\n color: var(--bs-primary);\n text-decoration: underline;\n text-decoration-thickness: 1px;\n text-underline-offset: 3px;\n}\n.docs-page .card > .card-body a:not(.btn):not(.nav-link):hover {\n text-decoration-thickness: 2px;\n}\n.docs-page .card > .card-body hr {\n margin: 2.5rem 0;\n border: 0;\n border-top: 1px solid var(--bs-border-color);\n opacity: 1;\n}\n.docs-page .card > .card-body > p:first-child,\n.docs-page .card > .card-body > p:first-of-type {\n margin-bottom: 2rem;\n font-size: 1.125rem;\n line-height: 1.6;\n color: var(--bs-body-color);\n}\n.docs-page .card > .card-body details.faq-item {\n margin-bottom: 0.5rem;\n overflow: hidden;\n background: var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 0.375rem;\n transition: border-color 0.15s ease, box-shadow 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .docs-page .card > .card-body details.faq-item {\n transition: none;\n }\n}\n.docs-page .card > .card-body details.faq-item:hover {\n border-color: var(--bs-primary-border-subtle);\n}\n.docs-page .card > .card-body details.faq-item[open] {\n background: var(--bs-body-bg);\n border-color: var(--bs-primary-border-subtle);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n}\n.docs-page .card > .card-body details.faq-item summary {\n position: relative;\n padding: 0.9rem 3rem 0.9rem 1.1rem;\n font-size: 1rem;\n font-weight: 600;\n color: var(--bs-emphasis-color);\n list-style: none;\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n transition: color 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .docs-page .card > .card-body details.faq-item summary {\n transition: none;\n }\n}\n.docs-page .card > .card-body details.faq-item summary::-webkit-details-marker {\n display: none;\n}\n.docs-page .card > .card-body details.faq-item summary::marker {\n content: \"\";\n}\n.docs-page .card > .card-body details.faq-item summary:hover {\n color: var(--bs-primary);\n}\n.docs-page .card > .card-body details.faq-item summary::after {\n position: absolute;\n top: 50%;\n right: 1.1rem;\n display: inline-block;\n width: 0.55rem;\n height: 0.55rem;\n margin-top: -0.4rem;\n content: \"\";\n border-right: 2px solid currentcolor;\n border-bottom: 2px solid currentcolor;\n opacity: 0.55;\n transform: rotate(45deg);\n transition: transform 0.2s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .docs-page .card > .card-body details.faq-item summary::after {\n transition: none;\n }\n}\n.docs-page .card > .card-body details.faq-item[open] > summary {\n color: var(--bs-primary);\n border-bottom: 1px solid var(--bs-border-color);\n}\n.docs-page .card > .card-body details.faq-item[open] > summary::after {\n margin-top: -0.15rem;\n opacity: 1;\n transform: rotate(-135deg);\n}\n.docs-page .card > .card-body details.faq-item > *:not(summary) {\n padding-right: 1.1rem;\n padding-left: 1.1rem;\n}\n.docs-page .card > .card-body details.faq-item > *:not(summary):first-of-type {\n padding-top: 1rem;\n}\n.docs-page .card > .card-body details.faq-item > *:not(summary):last-child {\n padding-bottom: 1rem;\n}\n.docs-page .card > .card-body details.faq-item p,\n.docs-page .card > .card-body details.faq-item ul,\n.docs-page .card > .card-body details.faq-item ol {\n margin-bottom: 0.65rem;\n}\n.docs-page .card > .card-body details.faq-item > *:last-child p:last-child,\n.docs-page .card > .card-body details.faq-item > p:last-child,\n.docs-page .card > .card-body details.faq-item > ul:last-child,\n.docs-page .card > .card-body details.faq-item > ol:last-child {\n margin-bottom: 0;\n}\n.docs-page .card > .card-body details.faq-item pre.astro-code,\n.docs-page .card > .card-body details.faq-item pre {\n margin-right: 0;\n margin-left: 0;\n}\n.docs-page[data-bs-theme=dark] .card > .card-body blockquote code, [data-bs-theme=dark] .docs-page .card > .card-body blockquote code {\n background: rgba(255, 255, 255, 0.08);\n}\n\n.faq-page .app-content > .container-fluid {\n max-width: 64rem;\n}\n@media (min-width: 1400px) {\n .faq-page .app-content > .container-fluid {\n max-width: 72rem;\n }\n}\n.faq-page .faq-hero {\n position: relative;\n padding: 3rem 1.5rem 2.5rem;\n margin-top: 1rem;\n overflow: hidden;\n background: radial-gradient(ellipse at top left, rgba(var(--bs-primary-rgb), 0.12), transparent 60%), radial-gradient(ellipse at bottom right, rgba(var(--bs-info-rgb), 0.1), transparent 65%), var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 1rem;\n}\n.faq-page .faq-hero-eyebrow {\n display: inline-flex;\n gap: 0.4rem;\n align-items: center;\n padding: 0.35rem 0.85rem;\n margin-bottom: 1rem;\n font-size: 0.75rem;\n font-weight: 600;\n color: var(--bs-primary);\n text-transform: uppercase;\n letter-spacing: 0.08em;\n background: var(--bs-primary-bg-subtle);\n border: 1px solid var(--bs-primary-border-subtle);\n border-radius: 50rem;\n}\n.faq-page .faq-hero-eyebrow .bi {\n font-size: 0.9rem;\n}\n.faq-page .faq-hero-title {\n margin: 0 0 0.5rem;\n font-size: 2.25rem;\n font-weight: 700;\n line-height: 1.15;\n color: var(--bs-emphasis-color);\n}\n@media (min-width: 768px) {\n .faq-page .faq-hero-title {\n font-size: 2.75rem;\n }\n}\n.faq-page .faq-hero-lead {\n max-width: 36rem;\n margin: 0 auto 1.75rem;\n font-size: 1.05rem;\n line-height: 1.55;\n color: var(--bs-secondary-color);\n}\n.faq-page .faq-search {\n position: relative;\n max-width: 32rem;\n margin: 0 auto;\n}\n.faq-page .faq-search .form-control {\n height: 3rem;\n padding-right: 3rem;\n padding-left: 3rem;\n font-size: 1rem;\n background: var(--bs-body-bg);\n border-radius: 50rem;\n transition: box-shadow 0.15s ease, border-color 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-search .form-control {\n transition: none;\n }\n}\n.faq-page .faq-search .form-control:focus {\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.15);\n}\n.faq-page .faq-search-icon {\n position: absolute;\n top: 50%;\n left: 1.2rem;\n color: var(--bs-secondary-color);\n pointer-events: none;\n transform: translateY(-50%);\n}\n.faq-page .faq-search-clear {\n position: absolute;\n top: 50%;\n right: 0.65rem;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2rem;\n height: 2rem;\n padding: 0;\n color: var(--bs-secondary-color);\n background: var(--bs-tertiary-bg);\n border: 0;\n transform: translateY(-50%);\n border-radius: 50%;\n transition: background 0.15s ease, color 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-search-clear {\n transition: none;\n }\n}\n.faq-page .faq-search-clear:hover {\n color: var(--bs-body-color);\n background: var(--bs-secondary-bg);\n}\n.faq-page .faq-empty-state {\n max-width: 32rem;\n padding: 1rem;\n margin: 1.5rem auto 0;\n font-size: 0.95rem;\n color: var(--bs-secondary-color);\n background: var(--bs-tertiary-bg);\n border-radius: 0.375rem;\n}\n.faq-page .faq-empty-state .bi {\n margin-right: 0.35rem;\n}\n.faq-page .faq-chips {\n display: flex;\n flex-wrap: wrap;\n gap: 0.5rem;\n justify-content: center;\n}\n.faq-page .faq-chip {\n display: inline-flex;\n gap: 0.45rem;\n align-items: center;\n padding: 0.45rem 0.85rem;\n font-size: 0.875rem;\n font-weight: 500;\n color: var(--bs-body-color);\n text-decoration: none;\n background: var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 50rem;\n transition: transform 0.15s ease, border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-chip {\n transition: none;\n }\n}\n.faq-page .faq-chip:hover {\n color: var(--bs-emphasis-color);\n background: var(--bs-tertiary-bg);\n transform: translateY(-1px);\n}\n.faq-page .faq-chip .bi {\n font-size: 1rem;\n}\n.faq-page .faq-chip-count {\n padding: 0 0.45rem;\n font-size: 0.7rem;\n font-weight: 600;\n color: var(--bs-secondary-color);\n background: var(--bs-tertiary-bg);\n border-radius: 50rem;\n}\n.faq-page .faq-chip-primary:hover {\n color: var(--bs-primary-text-emphasis);\n background: var(--bs-primary-bg-subtle);\n border-color: var(--bs-primary-border-subtle);\n}\n.faq-page .faq-chip-primary:hover .faq-chip-count {\n color: var(--bs-primary-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-info:hover {\n color: var(--bs-info-text-emphasis);\n background: var(--bs-info-bg-subtle);\n border-color: var(--bs-info-border-subtle);\n}\n.faq-page .faq-chip-info:hover .faq-chip-count {\n color: var(--bs-info-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-warning:hover {\n color: var(--bs-warning-text-emphasis);\n background: var(--bs-warning-bg-subtle);\n border-color: var(--bs-warning-border-subtle);\n}\n.faq-page .faq-chip-warning:hover .faq-chip-count {\n color: var(--bs-warning-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-success:hover {\n color: var(--bs-success-text-emphasis);\n background: var(--bs-success-bg-subtle);\n border-color: var(--bs-success-border-subtle);\n}\n.faq-page .faq-chip-success:hover .faq-chip-count {\n color: var(--bs-success-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-danger:hover {\n color: var(--bs-danger-text-emphasis);\n background: var(--bs-danger-bg-subtle);\n border-color: var(--bs-danger-border-subtle);\n}\n.faq-page .faq-chip-danger:hover .faq-chip-count {\n color: var(--bs-danger-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-chip-secondary:hover {\n color: var(--bs-secondary-text-emphasis);\n background: var(--bs-secondary-bg-subtle);\n border-color: var(--bs-secondary-border-subtle);\n}\n.faq-page .faq-chip-secondary:hover .faq-chip-count {\n color: var(--bs-secondary-text-emphasis);\n background: rgba(0, 0, 0, 0.06);\n}\n.faq-page .faq-section {\n margin-bottom: 2.5rem;\n scroll-margin-top: 5rem;\n}\n.faq-page .faq-section-header {\n display: flex;\n gap: 1rem;\n align-items: center;\n padding: 1rem 1.25rem;\n margin-bottom: 1rem;\n background: var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-left: 4px solid var(--bs-primary);\n border-radius: 0.375rem;\n}\n.faq-page .faq-section-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 2.75rem;\n height: 2.75rem;\n font-size: 1.35rem;\n color: var(--bs-primary);\n background: var(--bs-primary-bg-subtle);\n border-radius: 0.375rem;\n}\n.faq-page .faq-section-title {\n margin: 0;\n font-size: 1.4rem;\n font-weight: 600;\n line-height: 1.2;\n color: var(--bs-emphasis-color);\n}\n.faq-page .faq-section-count {\n margin: 0.1rem 0 0;\n font-size: 0.8rem;\n color: var(--bs-secondary-color);\n}\n.faq-page .faq-section-primary {\n border-left-color: var(--bs-primary);\n}\n.faq-page .faq-section-primary .faq-section-icon {\n color: var(--bs-primary-text-emphasis);\n background: var(--bs-primary-bg-subtle);\n}\n.faq-page .faq-section-info {\n border-left-color: var(--bs-info);\n}\n.faq-page .faq-section-info .faq-section-icon {\n color: var(--bs-info-text-emphasis);\n background: var(--bs-info-bg-subtle);\n}\n.faq-page .faq-section-warning {\n border-left-color: var(--bs-warning);\n}\n.faq-page .faq-section-warning .faq-section-icon {\n color: var(--bs-warning-text-emphasis);\n background: var(--bs-warning-bg-subtle);\n}\n.faq-page .faq-section-success {\n border-left-color: var(--bs-success);\n}\n.faq-page .faq-section-success .faq-section-icon {\n color: var(--bs-success-text-emphasis);\n background: var(--bs-success-bg-subtle);\n}\n.faq-page .faq-section-danger {\n border-left-color: var(--bs-danger);\n}\n.faq-page .faq-section-danger .faq-section-icon {\n color: var(--bs-danger-text-emphasis);\n background: var(--bs-danger-bg-subtle);\n}\n.faq-page .faq-section-secondary {\n border-left-color: var(--bs-secondary);\n}\n.faq-page .faq-section-secondary .faq-section-icon {\n color: var(--bs-secondary-text-emphasis);\n background: var(--bs-secondary-bg-subtle);\n}\n.faq-page .faq-section-items .faq-item {\n margin-bottom: 0.5rem;\n overflow: hidden;\n background: var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 0.375rem;\n transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-section-items .faq-item {\n transition: none;\n }\n}\n.faq-page .faq-section-items .faq-item:hover {\n border-color: var(--bs-primary-border-subtle);\n transform: translateX(2px);\n}\n.faq-page .faq-section-items .faq-item[open] {\n border-color: var(--bs-primary-border-subtle);\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\n transform: none;\n}\n.faq-page .faq-section-items .faq-item summary {\n display: flex;\n gap: 0.85rem;\n align-items: center;\n padding: 1rem 1.25rem;\n font-size: 1rem;\n font-weight: 500;\n color: var(--bs-emphasis-color);\n list-style: none;\n cursor: pointer;\n -webkit-user-select: none;\n user-select: none;\n}\n.faq-page .faq-section-items .faq-item summary::-webkit-details-marker {\n display: none;\n}\n.faq-page .faq-section-items .faq-item summary::marker {\n content: \"\";\n}\n.faq-page .faq-section-items .faq-item summary::after {\n content: none;\n}\n.faq-page .faq-section-items .faq-item .faq-q-icon {\n display: inline-flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n font-size: 0.85rem;\n color: var(--bs-primary);\n background: var(--bs-primary-bg-subtle);\n border-radius: 50%;\n}\n.faq-page .faq-section-items .faq-item .faq-q-text {\n flex-grow: 1;\n}\n.faq-page .faq-section-items .faq-item .faq-q-chevron {\n flex-shrink: 0;\n color: var(--bs-secondary-color);\n transition: transform 0.2s ease, color 0.2s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .faq-page .faq-section-items .faq-item .faq-q-chevron {\n transition: none;\n }\n}\n.faq-page .faq-section-items .faq-item[open] .faq-q-chevron {\n color: var(--bs-primary);\n transform: rotate(180deg);\n}\n.faq-page .faq-section-items .faq-item[open] summary {\n color: var(--bs-primary);\n border-bottom: 1px solid var(--bs-border-color);\n}\n.faq-page .faq-section-items .faq-item .faq-answer {\n padding: 1.1rem 1.25rem 1.1rem 3.85rem;\n font-size: 0.95rem;\n line-height: 1.65;\n color: var(--bs-body-color);\n}\n.faq-page .faq-section-items .faq-item .faq-answer p:last-child,\n.faq-page .faq-section-items .faq-item .faq-answer ul:last-child,\n.faq-page .faq-section-items .faq-item .faq-answer ol:last-child,\n.faq-page .faq-section-items .faq-item .faq-answer pre:last-child {\n margin-bottom: 0;\n}\n.faq-page .faq-section-items .faq-item .faq-answer a {\n color: var(--bs-primary);\n text-decoration: underline;\n text-underline-offset: 2px;\n}\n.faq-page .faq-section-items .faq-item .faq-answer a:hover {\n text-decoration-thickness: 2px;\n}\n.faq-page .faq-section-items .faq-item .faq-answer code {\n padding: 0.12em 0.35em;\n font-size: 0.875em;\n color: var(--bs-emphasis-color);\n background: var(--bs-tertiary-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 0.25rem;\n}\n.faq-page .faq-section-items .faq-item .faq-answer pre.astro-code,\n.faq-page .faq-section-items .faq-item .faq-answer pre {\n padding: 0.85rem 1rem;\n margin-top: 0.75rem;\n margin-bottom: 0.75rem;\n overflow-x: auto;\n font-size: 0.85rem;\n line-height: 1.55;\n border-radius: 0.25rem;\n}\n.faq-page .faq-section-items .faq-item .faq-answer pre.astro-code code,\n.faq-page .faq-section-items .faq-item .faq-answer pre code {\n padding: 0;\n background: transparent;\n border: 0;\n}\n.faq-page .faq-cta {\n padding: 2.5rem 1.5rem;\n text-align: center;\n background: radial-gradient(ellipse at top, rgba(var(--bs-primary-rgb), 0.08), transparent 60%), var(--bs-body-bg);\n border: 1px solid var(--bs-border-color);\n border-radius: 1rem;\n}\n.faq-page .faq-cta-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 3.5rem;\n height: 3.5rem;\n margin-bottom: 1rem;\n font-size: 1.6rem;\n color: var(--bs-primary);\n background: var(--bs-primary-bg-subtle);\n border-radius: 50%;\n}\n.faq-page .faq-cta h2 {\n margin: 0 0 0.5rem;\n font-size: 1.5rem;\n font-weight: 600;\n color: var(--bs-emphasis-color);\n}\n.faq-page .faq-cta p {\n max-width: 32rem;\n margin: 0 auto 1.5rem;\n color: var(--bs-secondary-color);\n}\n.faq-page .faq-cta-actions {\n display: inline-flex;\n flex-wrap: wrap;\n gap: 0.5rem;\n justify-content: center;\n}\n\n/*# sourceMappingURL=adminlte-docs.css.map */","// stylelint-disable property-disallowed-list\n@mixin transition($transition...) {\n @if length($transition) == 0 {\n $transition: $transition-base;\n }\n\n @if length($transition) > 1 {\n @each $value in $transition {\n @if $value == null or $value == none {\n @warn \"The keyword 'none' or 'null' must be used as a single argument.\";\n }\n }\n }\n\n @if $enable-transitions {\n @if nth($transition, 1) != null {\n transition: $transition;\n }\n\n @if $enable-reduced-motion and nth($transition, 1) != null and nth($transition, 1) != none {\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n }\n}\n"]}