/*!
 * @be-partner-labs/ds v1.8.0 — components/carousel
 * © 2026 Be Partner Labs. MIT License.
 *
 * CDN:  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@be-partner-labs/ds@1.8.0/dist/components/carousel.min.css">
 * npm:  @import "@be-partner-labs/ds/components/carousel";
 * Docs: https://ds.bepartnerlabs.com/components/carousel/
 */
@layer bp-tokens,bp-reset,bp-grid;@layer bp-components{.bp-carousel{--_gap:var(--carousel-gap,var(--bp-space-4));--_slide-min:var(--carousel-slide-min,100%);--_radius:var(--carousel-radius,var(--bp-radius-lg));--_background:var(--carousel-slide-background,transparent);--_padding:var(--carousel-slide-padding,0px);--_height:var(--carousel-slide-min-height,auto);gap:var(--bp-space-4);flex-direction:column;display:flex}.bp-carousel__track{gap:var(--_gap);scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;padding-bottom:var(--bp-space-1);display:flex;overflow-x:auto}.bp-carousel__track::-webkit-scrollbar{display:none}.bp-carousel__slide{flex:0 0 var(--_slide-min);min-height:var(--_height);padding:var(--_padding);scroll-snap-align:start;scroll-snap-stop:always;border-radius:var(--_radius);background-color:var(--_background);position:relative;overflow:hidden}.bp-carousel__slide:focus-visible{box-shadow:var(--bp-focus-ring);outline:none}.bp-carousel__dots{justify-content:center;gap:var(--bp-space-2);padding:0;list-style:none;display:flex}.bp-carousel__dot{border-radius:var(--bp-radius-full);background-color:var(--bp-color-border);cursor:pointer;width:.5rem;height:.5rem;transition:width var(--bp-duration-normal) var(--bp-ease), background-color var(--bp-duration-fast) var(--bp-ease);border:none;padding:0}.bp-carousel__dot.is-active,.bp-carousel__dot[aria-current=true]{background-color:var(--bp-primary);width:1.5rem}.bp-carousel__dot:focus-visible{box-shadow:var(--bp-focus-ring);outline:none}.bp-carousel__controls{justify-content:center;gap:var(--bp-space-3);display:flex}@supports selector(::scroll-marker){.bp-carousel__dots,.bp-carousel__controls{display:none}.bp-carousel__track{scroll-marker-group:after}.bp-carousel__slide::scroll-marker{content:"";border-radius:var(--bp-radius-full);background-color:var(--bp-color-border);width:.5rem;height:.5rem;transition:width var(--bp-duration-normal) var(--bp-ease), background-color var(--bp-duration-fast) var(--bp-ease);border:2px solid #0000;display:block}.bp-carousel__slide::scroll-marker:target-current{background-color:var(--bp-primary);border-radius:var(--bp-radius-full);width:1.5rem}.bp-carousel__slide::scroll-marker:focus-visible{border-color:var(--bp-primary);box-shadow:var(--bp-focus-ring);outline:none}.bp-carousel__track::scroll-marker-group{justify-content:center;align-items:center;gap:var(--bp-space-2);padding-block:var(--bp-space-2);display:flex}.bp-carousel{anchor-scope:--bp-carousel-track;isolation:isolate;position:relative}.bp-carousel__track{anchor-name:--bp-carousel-track}.bp-carousel__track::scroll-button(*){border-radius:var(--bp-radius-full);background:var(--bp-color-bg-elevated);border:1px solid var(--bp-color-border);width:2rem;height:2rem;color:var(--bp-color-text);cursor:pointer;z-index:1;transition:background-color var(--bp-duration-fast) var(--bp-ease), border-color var(--bp-duration-fast) var(--bp-ease), opacity var(--bp-duration-fast) var(--bp-ease);position-anchor:--bp-carousel-track;justify-content:center;align-items:center;font-size:1rem;display:flex;position:absolute}.bp-carousel__track::scroll-button(inline-start){content:"←" / "Previous slide";position-area:inline-start center;translate:-50%}.bp-carousel__track::scroll-button(inline-end){content:"→" / "Next slide";position-area:inline-end center;translate:50%}.bp-carousel__track::scroll-button(*):hover{background-color:var(--bp-color-bg-subtle);border-color:var(--bp-color-border)}.bp-carousel__track::scroll-button(*):focus-visible{box-shadow:var(--bp-focus-ring);outline:none}.bp-carousel__track::scroll-button(*):disabled{opacity:.3;cursor:default}}.bp-carousel--multi .bp-carousel__track{padding-inline:var(--bp-space-4)}.bp-carousel--multi .bp-carousel__slide{flex:0 0 calc(var(--_slide-min) - var(--bp-space-8))}.bp-carousel{container-type:inline-size}@container (inline-size>0){.bp-carousel__slide{font-size:clamp(var(--bp-text-sm), 3cqi, var(--bp-text-base))}}.bp-carousel--peek{& .bp-carousel__track{padding-inline:var(--bp-space-4)}}@container (inline-size<30rem){.bp-carousel--peek .bp-carousel__slide{--carousel-slide-min:calc(100% / 1.2 - var(--bp-space-4))}}@container (30rem<=inline-size<50rem){.bp-carousel--peek .bp-carousel__slide{--carousel-slide-min:calc(100% / 1.8 - var(--bp-space-4))}}@container (inline-size>=50rem){.bp-carousel--peek .bp-carousel__slide{--carousel-slide-min:calc(100% / 2.2 - var(--bp-space-4))}}}@layer bp-utilities;