:root {
    --icon-scroll: url('data:image/svg+xml,<svg width="40" height="40" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><path d="M10 50 L60 100 L70 90 L30 50 L70 10 L60 0 Z" /></svg>');
}

.scroller {
    position: relative;
    display: flex;
    overflow-x: scroll;
    flex-flow: row;
    width: max-content;
    max-width: 100%;
    margin: auto;
    padding: 0.5rem;
    gap: 1em;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    scroll-padding: 0.5rem;
}

.scroll-container {
    position: relative;
    z-index: 1;
    overflow: hidden;
    margin-bottom: 1rem;
    padding: 1.5rem 0;
}

.scroll-more {
    position: absolute;
    z-index: 200;
    top: 1.5rem;
    display: none;
    overflow: hidden;
    width: 2rem;
    height: 2rem;
    cursor: pointer;
    transition: opacity 0.5s ease;
    text-indent: 4rem;
    opacity: 0;
    border-radius: 100%;
    background: #ffffffbb var(--icon-scroll) no-repeat center;
    background-size: 1rem;
    aspect-ratio: 1 / 1;
}

.scroll-forward .forward {
    right: 1rem;
    display: block;
    opacity: 1;
    rotate: 180deg;
}

.scroll-back .back {
    left: 1rem;
    display: block;
    opacity: 1;
}

.scroller::-webkit-scrollbar {
    display: none;
}

.scroller > * {
    font-size: 1rem;
    position: relative;
    display: grid;
    scroll-snap-align: start;
}

