
.sidebar.active {
    right: -4000000px;
}

.sidebar {
    position: fixed;
    top: 60px;
    right: -454px;
    bottom: 0;
    -webkit-transition: .2s ease-in-out;
    -moz-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    width: 400px;
    z-index: 2;
}

.sidebar-menu-icon {
    position: absolute;
    top: 40%;
    left: -54px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1;
}

.sidebar-menu-icon .sidebar-menu-list {
    -webkit-transition: .2s ease-in-out;
    -moz-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    background: #bac5c6;
    cursor: pointer;
    padding: .5rem 1rem .5rem .5rem;
    position: relative;
    left: 0;
}

.sidebar-menu-icon .sidebar-menu-list.open,.sidebar-menu-icon .sidebar-menu-list:hover {
    background: #2b87c2;
    left: calc(-100% + 60px);
}

.sidebar-menu-icon .sidebar-menu-list i {
    font-size: 1.3rem;
    color: #4a4a4a;
    padding: 10px 10px 4px 10px;
    margin-right: 5px;
}

.sidebar-menu-icon .sidebar-menu-list span {
    line-height: 42px;
    vertical-align: top;
}


@media (max-width:991px) {
    .sidebar-menu-icon {
        -webkit-transform: initial;
        -moz-transform: initial;
        -ms-transform: initial;
        -o-transform: initial;
        transform: initial;
        display: block;
        width: 100%;
        font-size: 0;
        letter-spacing: 0;
        text-align: left;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        top: initial;
        bottom: 0;
        left: 0;
        right: 0;
        background: #eee;
        -webkit-box-shadow: 0 0 5px 0 rgba(0,0,0,.2);
        -moz-box-shadow: 0 0 5px 0 rgba(0,0,0,.2);
        box-shadow: 0 0 5px 0 rgba(0,0,0,.2);
    }

    .sidebar-menu-icon>* {
        display: inline-block;
        vertical-align: top;
    }

    .sidebar-menu-icon .sidebar-menu-list {
        -webkit-transition-duration: 0;
        -moz-transition-duration: 0;
        transition-duration: 0;
        min-height: 1px;
        font-size: 1rem;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 25%;
        height: 3.6rem;
        padding: .1rem 0 0 0;
        text-align: center;
    }

    .sidebar-menu-icon .sidebar-menu-list.open,.sidebar-menu-icon .sidebar-menu-list:hover {
        left: 0;
    }

    .sidebar-menu-icon .sidebar-menu-list.open:last-child,.sidebar-menu-icon .sidebar-menu-list:hover:last-child {
        left: 0;
    }

    .sidebar-menu-icon .sidebar-menu-list:nth-child(odd) {
        background: rgba(0,0,0,.05);
    }

    .sidebar-menu-icon .sidebar-menu-list:nth-child(odd).open {
        background: #900;
    }

    .sidebar-menu-icon .sidebar-menu-list:nth-child(even) {
        background: rgba(0,0,0,.05);
    }

    .sidebar-menu-icon .sidebar-menu-list:nth-child(even).open {
        background: #900;
    }

    .sidebar-menu-icon .sidebar-menu-list>i {
        display: block;
        margin: 0 auto;
    }

    .sidebar-menu-icon .sidebar-menu-list>span {
        font-size: 12px;
        line-height: 1;
        color: #4a4a4a;
    }

    
}

@media (max-width:991px) {
    body {
        overflow-x: hidden;
    }

    .sidebar {
        background: #fff;
        right: initial;
        bottom: 0;
        top: initial;
        width: 100%;
        z-index: 3;
    }

    .sidebar.active {
        right: initial;
    }

    .sidebar.open {
        top: calc(60px + 4.5rem);
        z-index: 6;
    }

    .sidebar.open .sidebar-menu-icon {
        top: -4.5rem;
    };
}

