.carousel{position:relative;width:100%;max-width:100%}.carousel-track{display:flex;gap:1.5rem;padding:1.5rem 2rem;max-width:100%;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-padding-inline:2rem;overscroll-behavior-x:contain;overscroll-behavior-y:auto;-webkit-overflow-scrolling:touch;user-select:none;touch-action:pan-x pan-y}.carousel-track:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.carousel-track>*{flex:0 0 auto}.carousel-track .card{cursor:pointer;touch-action:pan-x pan-y}.carousel-controls{position:absolute;top:-.25rem;right:2rem;z-index:2;display:flex;gap:.5rem}.carousel-button{width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:color-mix(in srgb,var(--surface-2) 88%,transparent);color:var(--text-primary);font-size:1.5rem;line-height:1;box-shadow:var(--shadow-sm)}.carousel-button:hover:not(:disabled){background:var(--surface-3);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.carousel-button:disabled{cursor:default;opacity:.35}.carousel-track.can-scroll{cursor:grab}.carousel-track.can-scroll.is-dragging,.carousel-track.can-scroll.is-dragging .card{cursor:grabbing}.carousel-track.centered{justify-content:center;cursor:default;overflow-x:hidden}.carousel-track.can-scroll{scrollbar-width:thin;scrollbar-color:var(--surface-3) var(--surface-1)}.carousel-track.can-scroll::-webkit-scrollbar{height:8px}.carousel-track.can-scroll::-webkit-scrollbar-track{background:var(--surface-1);border-radius:4px}.carousel-track.can-scroll::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:4px}.carousel-track.can-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.carousel-track.centered::-webkit-scrollbar{display:none}.carousel-track.centered{scrollbar-width:none}@media (max-width: 768px){.carousel-track{gap:1rem;padding:1rem;scroll-padding-inline:1rem}.carousel-controls{position:static;justify-content:flex-end;padding:0 1rem .25rem}.carousel-button{width:2rem;height:2rem;font-size:1.25rem}}@media (hover: none) and (pointer: coarse){.carousel-track.can-scroll,.carousel-track.can-scroll .card{cursor:default}}@media (prefers-reduced-motion: reduce){.carousel-track{scroll-behavior:auto}}.slider-item{flex:0 0 auto}
