/* Progressive enhancement: without JavaScript, every complete case is readable. */
.rc-carousel { min-width:0; }
.rc-carousel__track { min-width:0; }
.rc-carousel__slide { min-width:0; }
.rc-carousel [hidden] { display:none !important; }
.rc-carousel__controls { display:flex; justify-content:flex-end; align-items:center; gap:1.5rem; padding-bottom:1.2rem; }
.rc-carousel__position { font-size:.8rem; color:var(--wc-muted); font-variant-numeric:tabular-nums; }
.rc-carousel__buttons { display:flex; gap:.45rem; }
.rc-carousel__buttons button { display:grid; place-items:center; flex:none; width:48px; height:48px; border:1px solid var(--wc-rule); border-radius:0; background:transparent; color:var(--wd-dark); transition:background-color .18s,color .18s; }
.rc-carousel__buttons button svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.2; stroke-linecap:round; stroke-linejoin:round; }
.rc-carousel__buttons button:disabled { opacity:.3; cursor:default; }
.rc-carousel__buttons button:focus-visible,.rc-carousel__track:focus-visible { outline:2px solid var(--wd-dark); outline-offset:4px; }
.rc-carousel[data-case-ready] .rc-carousel__track { display:flex; align-items:flex-start; gap:2rem; overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:none; }
.rc-carousel[data-case-ready] .rc-carousel__track::-webkit-scrollbar { display:none; }
.rc-carousel[data-case-ready] .rc-carousel__slide { flex:0 0 100%; width:100%; scroll-snap-align:start; scroll-snap-stop:always; }
.rc-carousel[data-case-count="1"] .rc-carousel__track { overflow:visible; }
@media (hover:hover) {
  .rc-carousel__buttons button:not(:disabled):hover { background:var(--wd-lilac); }
}
@media (max-width:760px) {
  .rc-carousel__controls { gap:1rem; padding-bottom:1rem; }
  .rc-carousel__buttons button { width:46px; height:46px; }
}
@media (prefers-reduced-motion:reduce) {
  .rc-carousel__buttons button { transition:none; }
  .rc-carousel__track { scroll-behavior:auto; }
}
