UNPKG

@roadtrip/css

Version:

CSS framework for Roadtrip Design System

190 lines (156 loc) 3.53 kB
/* * Carousel * * Index * - Container * - Bullets * - Arrows * - Slide * - Image * */ /* CONTAINER -------------------- */ .carousel.swiper-container { position: relative; z-index: 1; display: block; padding: 0; margin-right: auto; margin-left: auto; overflow: hidden; list-style: none; user-select: none; } .carousel .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .carousel .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet { margin: 0 0.125rem; } .carousel.swiper-container-horizontal > .swiper-pagination-bullets { bottom: 0.5rem; } /* BULLETS -------------------- */ .carousel .swiper-pagination-bullets { right: 0; display: inline-table; width: auto !important; padding: 0 0.75rem; margin: 0 auto; vertical-align: middle; background-color: var(--road-overlay-inverse); border-radius: 40px; backdrop-filter: blur(4px); } .carousel .swiper-pagination-bullet { width: 1.5rem; height: 0.25rem; vertical-align: middle; background: var(--road-overlay); border-radius: 0; opacity: 1; } .carousel .swiper-pagination-bullet-active { background: var(--road-primary); } .carousel .swiper-pagination-progressbar { background: var(--road-grey-70); } .carousel .swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: var(--road-grey-10); } .carousel .swiper-scrollbar { background: var(--road-grey-70); } .carousel .swiper-scrollbar-drag { background: var(--road-grey-10); } /* ARROWS -------------------- */ .carousel .swiper-button-prev, .carousel .swiper-button-next { display: none; } @media (min-width: 768px) { .carousel .swiper-button-prev, .carousel .swiper-button-next { display: flex; width: 3rem; height: 3rem; background: var(--road-overlay); border: 1px solid var(--road-overlay-inverse); border-radius: 3rem; } .carousel .swiper-button-prev { transform: rotate(180deg); } .carousel .swiper-button-prev .swiper-icon, .carousel .swiper-button-next .swiper-icon { width: 2rem; height: 2rem; fill: var(--road-on-overlay); } } .swiper-button-prev::after, .swiper-button-next::after { display: none; } /** * Hover state */ @media (hover: hover) { .carousel .swiper-button-prev:hover, .carousel .swiper-button-next:hover { background: var(--road-surface); } .carousel .swiper-button-prev:hover .swiper-icon, .carousel .swiper-button-next:hover .swiper-icon { fill: var(--road-on-surface); } } .carousel .swiper-button-prev, .carousel .swiper-container-rtl .swiper-button-next { left: 1rem; } .carousel .swiper-button-next, .carousel .swiper-container-rtl .swiper-button-prev { right: 1rem; } @media (min-width: 768px) { .carousel .swiper-button-prev, .carousel .swiper-container-rtl .swiper-button-next { left: 1.5rem; } .carousel .swiper-button-next, .carousel .swiper-container-rtl .swiper-button-prev { right: 1.5rem; } } /* SLIDE -------------------- */ .carousel .slide-zoom { display: block; width: 100%; text-align: center; } .carousel .swiper-slide { position: relative; box-sizing: border-box; display: flex; flex-shrink: 0; align-items: center; justify-content: center; width: 100%; height: 100%; font-size: 18px; text-align: center; } /* IMAGE -------------------- */ .carousel .swiper-slide img { width: auto; max-width: 100%; height: auto; max-height: 100%; pointer-events: none; }