.ScrollAreaRoot {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: transparent;
    --scrollbar-size: 4px;
    box-sizing: border-box;
    padding-right: 0px;
    display: flex;
}

.ScrollAreaViewport {
    width: 100%;
    height: auto;
    border-radius: inherit;
    box-sizing: border-box;
    // > div {
    //     display: flex !important;
    //     width: 100%;
    //     height: fit-content;
    //     min-height: 100%;
    // }
}

div[role="dialog"] {
    .ScrollAreaViewport {
        > div {
            min-height: auto;
        }
    }
}

.ScrollAreaScrollbar {
    display: flex;
    /* ensures no selection */
    user-select: none;
    /* disable browser handling of all panning and zooming gestures on touch devices */
    touch-action: none;
    background: transparent;
    transition: background 160ms ease-out;
}
.ScrollAreaScrollbar:hover {
    background: transparent;
}
.ScrollAreaScrollbar[data-orientation="vertical"] {
    width: var(--scrollbar-size);
}
.ScrollAreaScrollbar[data-orientation="horizontal"] {
    flex-direction: column;
    height: var(--scrollbar-size);
}

.ScrollAreaThumb {
    flex: 1;
    background: var(--background-neutral-hover);
    border-radius: var(--scrollbar-size);
    position: relative;
    &:hover {
        background: var(--background-neutral-active);
    }
}
/* increase target size for touch devices https://www.w3.org/WAI/WCAG21/Understanding/target-size.html */
.ScrollAreaThumb::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    min-width: 44px;
    min-height: 44px;
}

.ScrollAreaCorner {
    background: transparent;
}
