/*************** SCROLLBAR BASE CSS ***************/

.scroll-wrapper {
    overflow: hidden !important;
    padding: 0 !important;
    position: relative;
    height: inherit;
    width: inherit;
    max-height: inherit;
    max-width: inherit;
    min-height: inherit;
    min-width: inherit;
}

    .scroll-wrapper > .scroll-content {
        border: none !important;
        box-sizing: border-box !important;
        left: 0;
        margin: 0;
        max-height: none;
        max-width: none !important;
        overflow: scroll !important;
        padding: 0;
        position: relative !important;
        top: 0;
        /*width: inherit !important;
        height: inherit !important;*/
    }

        .scroll-wrapper > .scroll-content::-webkit-scrollbar {
            height: 0;
            width: 0;
        }

.scroll-element {
    display: none;
}

    .scroll-element, .scroll-element div {
        box-sizing: content-box;
    }

        .scroll-element.scroll-x.scroll-scrollx_visible,
        .scroll-element.scroll-y.scroll-scrolly_visible {
            display: block;
        }

        .scroll-element .scroll-bar,
        .scroll-element .scroll-arrow {
            cursor: default;
        }

.scroll-textarea {
    border: 1px solid #cccccc;
    border-top-color: #999999;
}

    .scroll-textarea > .scroll-content {
        overflow: hidden !important;
    }

        .scroll-textarea > .scroll-content > textarea {
            border: none !important;
            box-sizing: border-box;
            height: 100% !important;
            margin: 0;
            max-height: none !important;
            max-width: none !important;
            overflow: scroll !important;
            outline: none;
            padding: 2px;
            position: relative !important;
            top: 0;
            width: 100% !important;
        }

            .scroll-textarea > .scroll-content > textarea::-webkit-scrollbar {
                height: 0;
                width: 0;
            }




/*************** SCROLLBAR A2B ***************/

.scrollbar-a2b > .scroll-element,
.scrollbar-a2b > .scroll-element div {
    background: none;
    border: none;
    margin: 0;
    padding: 0;
    position: absolute;
    z-index: 10;
}

    .scrollbar-a2b > .scroll-element div {
        display: block;
        height: 100%;
        left: 0;
        top: 0;
        width: 100%;
    }

    .scrollbar-a2b > .scroll-element.scroll-x {
        bottom: 2px;
        height: 5px;
        left: 0;
        min-width: 100%;
        width: 100%;
    }

    .scrollbar-a2b > .scroll-element.scroll-y {
        height: 100%;
        min-height: 100%;
        right: 2px;
        top: 0;
        width: 5px;
    }

    .scrollbar-a2b > .scroll-element .scroll-element_outer {
        opacity: 0.4;
        -webkit-border-radius: 12px;
        -moz-border-radius: 12px;
        border-radius: 12px;
    }

    .scrollbar-a2b > .scroll-element .scroll-element_size {
        background-color: #60656b;
        opacity: 0;
        -webkit-border-radius: 12px;
        -moz-border-radius: 12px;
        border-radius: 12px;
        -webkit-transition: opacity 0.2s;
        -moz-transition: opacity 0.2s;
        -o-transition: opacity 0.2s;
        -ms-transition: opacity 0.2s;
        transition: opacity 0.2s;
    }

    .scrollbar-a2b > .scroll-element .scroll-bar {
        background-color: #60656b;
        -webkit-border-radius: 7px;
        -moz-border-radius: 7px;
        border-radius: 7px;
    }

    /* scrollbar height/width & offset from container borders */

    .scrollbar-a2b > .scroll-element.scroll-x .scroll-bar {
        bottom: 0;
        height: 5px;
        min-width: 8px;
        top: auto;
    }

    .scrollbar-a2b > .scroll-element.scroll-y .scroll-bar {
        left: auto;
        min-height: 24px;
        right: 0;
        width: 5px;
    }

    .scrollbar-a2b > .scroll-element.scroll-x .scroll-element_outer {
        bottom: 0;
        top: auto;
        left: 2px;
        -webkit-transition: height 0.2s;
        -moz-transition: height 0.2s;
        -o-transition: height 0.2s;
        -ms-transition: height 0.2s;
        transition: height 0.2s;
    }

    .scrollbar-a2b > .scroll-element.scroll-y .scroll-element_outer {
        left: auto;
        right: 0;
        top: 2px;
        -webkit-transition: width 0.2s;
        -moz-transition: width 0.2s;
        -o-transition: width 0.2s;
        -ms-transition: width 0.2s;
        transition: width 0.2s;
    }

    .scrollbar-a2b > .scroll-element.scroll-x .scroll-element_size {
        left: -4px;
    }

    .scrollbar-a2b > .scroll-element.scroll-y .scroll-element_size {
        top: -4px;
    }


    /* update scrollbar offset if both scrolls are visible */

    .scrollbar-a2b > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size {
        left: -11px;
    }

    .scrollbar-a2b > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size {
        top: -11px;
    }


    /* hover & drag */

    .scrollbar-a2b > .scroll-element:hover .scroll-element_outer,
    .scrollbar-a2b > .scroll-element.scroll-draggable .scroll-element_outer {
        overflow: hidden;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
        filter: alpha(opacity=70);
        opacity: 0.55;
    }

        /*.scrollbar-a2b > .scroll-element:hover .scroll-element_outer .scroll-element_size,
        .scrollbar-a2b > .scroll-element.scroll-draggable .scroll-element_outer .scroll-element_size {
            opacity: 1;
        }*/

        .scrollbar-a2b > .scroll-element:hover .scroll-element_outer .scroll-bar,
        .scrollbar-a2b > .scroll-element.scroll-draggable .scroll-element_outer .scroll-bar {
            height: 100%;
            width: 100%;
            -webkit-border-radius: 12px;
            -moz-border-radius: 12px;
            border-radius: 12px;
        }

    .scrollbar-a2b > .scroll-element.scroll-x:hover .scroll-element_outer,
    .scrollbar-a2b > .scroll-element.scroll-x.scroll-draggable .scroll-element_outer {
        height: 8px;
        min-height: 5px;
    }

    .scrollbar-a2b > .scroll-element.scroll-y:hover .scroll-element_outer,
    .scrollbar-a2b > .scroll-element.scroll-y.scroll-draggable .scroll-element_outer {
        min-width: 5px;
        width: 8px;
    }
