{"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.rtl.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-right: 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: right;\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-right: 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 1.1rem 0.9rem 3rem;\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  left: 1.1rem;\n  display: inline-block;\n  width: 0.55rem;\n  height: 0.55rem;\n  margin-top: -0.4rem;\n  content: \"\";\n  border-left: 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-left: 1.1rem;\n  padding-right: 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-left: 0;\n  margin-right: 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 right, rgba(var(--bs-primary-rgb), 0.12), transparent 60%), radial-gradient(ellipse at bottom left, 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-left: 3rem;\n  padding-right: 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  right: 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  left: 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-left: 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-right: 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-right-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-right-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-right-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-right-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-right-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-right-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 3.85rem 1.1rem 1.25rem;\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/*# sourceMappingURL=adminlte-docs.rtl.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"]}