
.menu
{
    left: 0;
    top: 62px;
    bottom: 0;
    width: 50px;
    z-index: 1002;
    overflow-y: auto;
    overflow-x: hidden;
    position: fixed;
    transition: all .3s ease;
    background-color: #2C3137;
}

.menu ul
{
    margin: 0;
    padding: 0;
    list-style: none;
}

.menu ul li a
{
    color: #fff;
    height: 44px;
    padding: 8px;
    display: block;
    font-size: 14px;
    font-weight: 400;
    position: relative;
    text-decoration: none;
    transition: all .3s ease;
}

.menu ul li a:hover,
.menu ul li a[data-status="opened"]
{
    padding-left: 15px;
}

.menu ul li a i
{
    width: 28px;
    height: 28px;
    padding: 5px 0;
    font-size: 16px;
    text-align: center;
    margin-right: 10px;
    display: inline-block;
}

.menu ul li a span
{
    width: 0;
    top: 12px;
    left: 46px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    display: inline-block;
    text-overflow: ellipsis;
}

.menu ul li a i.fa-caret-up,
.menu ul li a i.fa-caret-down
{
    right: 0;
    top: 8px;
    left: 220px;
    padding: 8px;
    margin: 0 4px;
    display: none;
    font-size: 12px;
    position: absolute;
}

.menu ul li a[data-status="closed"] i.fa-caret-up{ display: none !important; }
.menu ul li a[data-status="opened"] i.fa-caret-down{ display: none !important; }

.menu ul li .sub-menu
{
    height: 0;
    overflow: hidden;
    transition: all .3s ease;
}

.menu ul li .sub-menu-1{ height: 40px; }
.menu ul li .sub-menu-2{ height: 80px; }
.menu ul li .sub-menu-3{ height: 120px; }
.menu ul li .sub-menu-4{ height: 160px; }
.menu ul li .sub-menu-5{ height: 200px; }
.menu ul li .sub-menu-6{ height: 240px; }
.menu ul li .sub-menu-7{ height: 280px; }
.menu ul li .sub-menu-8{ height: 320px; }
.menu ul li .sub-menu-9{ height: 360px; }
.menu ul li .sub-menu-10{ height: 400px; }
.menu ul li .sub-menu-11{ height: 440px; }
.menu ul li .sub-menu-12{ height: 480px; }
.menu ul li .sub-menu-13{ height: 520px; }
.menu ul li .sub-menu-14{ height: 560px; }
.menu ul li .sub-menu-15{ height: 600px; }
.menu ul li .sub-menu-16{ height: 640px; }
.menu ul li .sub-menu-17{ height: 680px; }
.menu ul li .sub-menu-18{ height: 720px; }
.menu ul li .sub-menu-19{ height: 760px; }
.menu ul li .sub-menu-20{ height: 800px; }

.menu ul li .sub-menu-1,
.menu ul li .sub-menu-2,
.menu ul li .sub-menu-3,
.menu ul li .sub-menu-4,
.menu ul li .sub-menu-5,
.menu ul li .sub-menu-6,
.menu ul li .sub-menu-7,
.menu ul li .sub-menu-8,
.menu ul li .sub-menu-9,
.menu ul li .sub-menu-10,
.menu ul li .sub-menu-11,
.menu ul li .sub-menu-12,
.menu ul li .sub-menu-13,
.menu ul li .sub-menu-14,
.menu ul li .sub-menu-15,
.menu ul li .sub-menu-16,
.menu ul li .sub-menu-17,
.menu ul li .sub-menu-18,
.menu ul li .sub-menu-19,
.menu ul li .sub-menu-20
{
    margin-bottom: 10px;
}

.menu ul li .sub-menu a
{
    height: 40px;
    color: #b5b5b5;
    padding: 6px 20px;
}

.menu ul li .sub-menu a:hover
{
    color: #fff;
}

.menu ul li a.menu-bill{
    border-left: 4px solid #f44336;
}

.menu ul li a.menu-bill:hover,
.menu ul li a.menu-bill[data-status="opened"]
{
    background-color: #f44336;
    border-left: 4px solid #e02f22;
}
.menu ul li a.menu-company{
    border-left: 4px solid #009688;
}

.menu ul li a.menu-company:hover,
.menu ul li a.menu-company[data-status="opened"]
{
    background-color: #009688;
    border-left: 4px solid #008274;
}
.menu ul li a.menu-general{
    border-left: 4px solid #607d8b;
}

.menu ul li a.menu-general:hover,
.menu ul li a.menu-general[data-status="opened"]
{
    background-color: #607d8b;
    border-left: 4px solid #4c6977;
}
.menu ul li a.menu-financial{
    border-left: 4px solid #ff9800;
}

.menu ul li a.menu-financial:hover,
.menu ul li a.menu-financial[data-status="opened"]
{
    background-color: #ff9800;
    border-left: 4px solid #eb8400;
}
.menu ul li a.menu-person{
    border-left: 4px solid #795548;
}

.menu ul li a.menu-person:hover,
.menu ul li a.menu-person[data-status="opened"]
{
    background-color: #795548;
    border-left: 4px solid #654134;
}
.menu ul li a.menu-report{
    border-left: 4px solid #e91e63;
}

.menu ul li a.menu-report:hover,
.menu ul li a.menu-report[data-status="opened"]
{
    background-color: #e91e63;
    border-left: 4px solid #d50a4f;
}
.menu ul li a.menu-stock{
    border-left: 4px solid #2196f3;
}

.menu ul li a.menu-stock:hover,
.menu ul li a.menu-stock[data-status="opened"]
{
    background-color: #2196f3;
    border-left: 4px solid #0d82df;
}
.menu ul li a.menu-user{
    border-left: 4px solid #9c27b0;
}

.menu ul li a.menu-user:hover,
.menu ul li a.menu-user[data-status="opened"]
{
    background-color: #9c27b0;
    border-left: 4px solid #88139c;
}

.menu:hover
{
    width: 268px;
}

.menu:hover span
{
    width: 190px;
}

.menu:hover ul li a i.fa-caret-up,
.menu:hover ul li a i.fa-caret-down
{
    display: block;
}

.menu button
{
    width: 268px;
    height: 60px;
    text-align: left;
    position: absolute;
    padding-left: 50px;
}

.menu button i
{
    left: 0;
    top: -1px;
    width: 50px;
    height: 60px;
    font-size: 24px;
    padding: 18px 12px;
    position: absolute;
}

.menu button:nth-child(2)
{
    bottom: 0;
}

.menu button:nth-child(3)
{
    bottom: 60px;
}

@media(max-width:767px)
{
    .menu
    {
        bottom: 0;
        top: 114px;
        left: -100%;
        width: 100%;
    }

    .menu:hover
    {
        width: 100%;
    }

    .menu ul li a span
    {
        width: auto;
        overflow: visible;
    }

    .menu ul li a i.fa-caret-up,
    .menu ul li a i.fa-caret-down
    {
        left: auto;
        display: block;
    }

    .menu.visible
    {
        left: 0;
    }
}