.carousel{-webkit-user-select:none;user-select:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;--carousel-thumb-bg:#a0a0a0;--carousel-thumb-text:#111827;--carousel-thumb-active:#2563eb;--carousel-thumb-img-bg:#0000000a;--carousel-scroll-thumb:#0000001f;border-radius:8px;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}@media (prefers-color-scheme:dark){.carousel{--carousel-thumb-bg:#0000005c;--carousel-thumb-text:#fff;--carousel-thumb-active:var(--primaryButtonColor,#60a5fa);--carousel-thumb-img-bg:#ffffff0a;--carousel-scroll-thumb:#ffffff1f}}.carousel--minimal{flex-direction:column;justify-content:center;align-items:center;display:flex}.carousel--fullscreen{z-index:1000;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;inset:0}.carousel__track{will-change:transform;flex:auto;height:auto;transition:transform .5s;display:flex;position:relative}.carousel__track:hover~.carousel__button{opacity:.7}.carousel__slide{background:0 0;flex:0 0 100%;justify-content:center;align-items:center;height:100%;display:flex}.carousel__image{object-fit:cover;background:0 0;width:100%;height:100%;display:block}.carousel__image--fullscreen{object-fit:contain;background:#000000b3}.carousel--minimal .carousel__slide{background:#fff}.carousel--minimal .carousel__image{object-fit:contain;background:#fff;width:auto;max-width:100%;height:auto;max-height:100%;margin:0 auto;display:block}.carousel__overlay{z-index:999;background:#000c;position:fixed;inset:0}.carousel__close{color:#fff;cursor:pointer;z-index:1001;opacity:.9;background:#ffffff0f;border:2px solid #000000f2;border-radius:8px;padding:6px 8px;font-size:32px;position:absolute;top:20px;right:20px}.carousel__close:hover{opacity:1}.carousel__button{z-index:10;color:#fff;cursor:pointer;opacity:0;background:#00000047;border:2px solid #000000f2;border-radius:10px;justify-content:center;align-items:center;width:64px;height:64px;font-size:28px;transition:opacity .3s,transform .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel__button--prev{left:12px}.carousel__button--next{right:12px}.carousel__side-control{z-index:8;background:0 0;width:18%;position:absolute;top:0;bottom:0}.carousel__side-control--left{left:0}.carousel__side-control--right{right:0}.carousel__dots{z-index:30;pointer-events:auto;justify-content:center;gap:10px;width:100%;display:flex;position:absolute;bottom:0}.carousel__dot{cursor:pointer;background:#ffffff80;border-radius:50%;width:12px;height:12px;display:inline-block}.carousel__dot.is-active{background:#fff}.carousel__thumbnails{-webkit-backdrop-filter:none;z-index:2;pointer-events:auto;background:0 0;justify-content:center;align-items:center;width:100%;margin-top:8px;padding:12px;display:flex;position:static;left:auto;right:auto}.carousel__thumbnails-track{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--carousel-scroll-thumb)#0000;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.carousel__thumbnails-track::-webkit-scrollbar{height:6px}.carousel__thumbnails-track::-webkit-scrollbar-track{background:0 0}.carousel__thumbnails-track::-webkit-scrollbar-thumb{background:var(--carousel-scroll-thumb);border-radius:3px}.carousel__thumb{all:unset;cursor:pointer;background:var(--carousel-thumb-bg);width:64px;height:64px;color:var(--carousel-thumb-text);border:none;border-radius:12px;justify-content:center;align-items:center;padding:8px;font-size:20px;display:inline-flex}.carousel__thumb img{object-fit:cover;width:100%;height:100%;display:block}.carousel__thumb--natural img,.carousel__thumb .carousel__thumb--natural img{object-fit:contain;width:auto;height:100%;margin:0 auto;display:block}.carousel__thumb--overflow{position:relative}.carousel__thumb--overflow img{filter:brightness(.6)}.carousel__thumb .carousel__thumb-overlay{color:#fff;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex;position:absolute;inset:0}.carousel__thumb.is-active{border:2px solid var(--carousel-thumb-active);box-shadow:0 2px 8px #00000014}@media (max-width:768px){.carousel__thumb{width:96px;height:64px}.carousel__dots{bottom:0}.carousel .carousel__button{width:44px;height:44px;font-size:20px}.carousel .carousel:not(.carousel--fullscreen) .carousel__button{opacity:0!important;pointer-events:none!important;display:none!important}}.carousel--fullscreen .carousel__thumbnails{-webkit-backdrop-filter:blur(6px);z-index:20;position:absolute;bottom:0;left:0;right:0}.carousel--fullscreen .carousel__dots{z-index:30;bottom:12px}.carousel--fullscreen{box-sizing:border-box;z-index:1000;background-clip:padding-box;position:fixed;inset:0}.carousel .carousel__close,.carousel .carousel__button{-webkit-backdrop-filter:blur(6px);color:#fff;background:#00000059;font-weight:800}.carousel .carousel__close{background:#0000009e;border-width:2px;border-color:#000000f2;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;font-size:24px;display:flex}.carousel .carousel__button{background:#0000009e;border-width:2px;border-color:#000000f2;border-radius:50%;width:72px;height:72px;padding:8px;font-size:22px}.carousel .carousel__button:hover{opacity:1;transform:translateY(-50%)scale(1.06)}.carousel .carousel__close:hover{opacity:1;transform:scale(1.06)}.carousel .carousel__close{transition:transform .15s,opacity .15s}@media (min-width:1024px){.carousel .carousel__button{opacity:1!important}}
