.scrollable.is-enabled {
    overflow: hidden !important;
}

.is-enabled .scrollable-container {
    box-sizing: content-box !important;
    overflow: hidden !important;
}

.is-enabled .scrollable-container::-webkit-scrollbar {
    width: 0;
    height: 0;
    -webkit-appearance: none;
}

.scrollable-vertical.is-enabled .scrollable-container {
    overflow-y: scroll !important;
}

.scrollable-horizontal.is-enabled .scrollable-container {
    overflow-x: scroll !important;
}

.is-enabled .scrollable-content {
    position: relative !important;
    box-sizing: border-box;
    overflow: visible !important;
}

.is-enabled .scrollable-content::before, .is-enabled .scrollable-content::after {
    display: table;
    content: " ";
}

.is-enabled .scrollable-content::after {
    clear: both;
}

.scrollable-bar {
    position: absolute;
    right: 0;
    bottom: 0;
    box-sizing: border-box;
    overflow: hidden;
    line-height: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border-radius: 2px;
    transition: opacity .5s;
    -webkit-touch-callout: none;
    user-input: disabled;
    user-focus: ignore;
}

.is-disabled .scrollable-bar {
    display: none;
}

.scrollable-bar-hide {
    opacity: 0;
    transition-delay: 400ms;
}

.scrollable-bar.is-hovering {
    background: transparent;
}

.scrollable-bar.is-dragging {
    background: transparent !important;
    opacity: 1;
}

.scrollable-bar.is-disabled {
    display: none;
}

.scrollable-bar-handle {
    position: absolute;
    top: 0;
    left: 0;
    line-height: 0;
    cursor: pointer;
    background: rgba(163, 175, 183, .6);
    border-radius: 2px;
    transition: width, height .5s;
}

.scrollable-bar.is-dragging .scrollable-bar-handle {
    background: rgba(163, 175, 183, .8) !important;
}

.scrollable-bar.is-dragging, .scrollable-bar.is-hovering {
    border-radius: 4px;
}

.scrollable-bar.is-dragging .scrollable-bar-handle, .scrollable-bar.is-hovering .scrollable-bar-handle {
    border-radius: 4px;
}

.scrollable-bar-vertical {
    width: 4px;
    height: 100%;
    height: calc(100% - 8px);
    margin: 4px 2px;
}

.scrollable-bar-vertical.is-dragging, .scrollable-bar-vertical.is-hovering {
    width: 8px;
    margin: 4px 1px;
}

.scrollable-bar-vertical .scrollable-bar-handle {
    width: 100%;
}

.scrollable-bar-horizontal {
    width: 100%;
    width: calc(100% - 8px);
    height: 4px;
    margin: 2px 4px;
}

.scrollable-bar-horizontal.is-dragging, .scrollable-bar-horizontal.is-hovering {
    height: 8px;
    margin: 1px 4px;
}

.scrollable-bar-horizontal .scrollable-bar-handle {
    height: 100%;
}

.scrollable.is-scrolling .scrollable-bar {
    opacity: 1;
    transition: opacity 0;
}

.scrollable.is-hovering .scrollable-bar-handle {
    background: rgba(163, 175, 183, .8);
}

.scrollable.is-dragging {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    user-input: disabled;
    user-focus: ignore;
}

.scrollable-inverse.scrollable .scrollable-bar-handle {
    background: rgba(228, 234, 236, .6);
}

.scrollable-inverse.scrollable.is-dragging .scrollable-bar-handle {
    background: rgba(228, 234, 236, .8) !important;
}

.scrollable-shadow.scrollable.is-dragging .scrollable-bar, .scrollable-shadow.scrollable.is-hovering .scrollable-bar {
    background: rgba(228, 234, 236, .5);
}

.scrollable-inverse.scrollable-shadow.scrollable.is-dragging .scrollable-bar, .scrollable-inverse.scrollable-shadow.scrollable.is-hovering .scrollable-bar {
    background: rgba(228, 234, 236, .4);
}
