.slshow{--slshow-arrow-bg:rgba(0,0,0,.5);--slshow-arrow-color:#fff;--slshow-arrow-size:40px;--slshow-dot-color:rgba(255,255,255,.5);--slshow-dot-active:#fff;--slshow-dot-size:8px;--slshow-gap:0px;contain:layout paint;container-type:inline-size}
.slshow--single{container-type:normal;contain:none}
.slshow__track{transition:transform .4s ease;gap:var(--slshow-gap)}
.slshow:not(.slshow--fade) .slshow__slide{opacity:1;visibility:visible}
.slshow__slide[aria-hidden=true]{visibility:hidden}
.slshow--fade .slshow__track{display:block}
.slshow--fade .slshow__slide{position:absolute;inset:0;opacity:0;transition:opacity .4s ease}
.slshow--fade .slshow__slide[aria-hidden=false]{opacity:1;visibility:visible}
.slshow__prev,.slshow__next,.slshow__dots{position:absolute;z-index:2}
.slshow__prev,.slshow__next{top:50%;transform:translateY(-50%);width:var(--slshow-arrow-size);height:var(--slshow-arrow-size);background:var(--slshow-arrow-bg);color:var(--slshow-arrow-color);border:0;border-radius:50%;cursor:pointer;font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s}
.slshow__prev{left:16px}.slshow__next{right:16px}
.slshow__prev:hover,.slshow__next:hover,.slshow__prev:focus-visible,.slshow__next:focus-visible{opacity:1;outline:2px solid var(--slshow-arrow-color);outline-offset:2px}
.slshow__prev[disabled],.slshow__next[disabled]{opacity:.3;cursor:default}
.slshow__dots{bottom:16px;left:50%;transform:translateX(-50%);display:flex;gap:8px;padding:6px 10px;background:rgba(0,0,0,.3);border-radius:999px}
.slshow__dot{width:var(--slshow-dot-size);height:var(--slshow-dot-size);padding:0;background:var(--slshow-dot-color);border:0;border-radius:50%;cursor:pointer;transition:background .2s,transform .2s}
.slshow__dot:hover,.slshow__dot[aria-selected=true]{transform:scale(1.2)}
.slshow__dot[aria-selected=true]{background:var(--slshow-dot-active)}
.slshow__dot:focus-visible{outline:2px solid var(--slshow-dot-active);outline-offset:2px}
@container (max-width: 640px){
.slshow__prev,.slshow__next{--slshow-arrow-size:32px;font-size:18px}
.slshow__prev{left:8px}.slshow__next{right:8px}
.slshow__dots{bottom:8px;padding:4px 8px}
.slshow__dot{--slshow-dot-size:6px}
}
@media (prefers-reduced-motion: reduce){.slshow__track,.slshow--fade .slshow__slide{transition:none !important}}
.slshow:focus-visible{outline:2px solid currentColor;outline-offset:4px}
