/* -------------------------------- 
Accordion Menu 
-------------------------------- */
.cd-accordion-menu {
    width: 100%;
    margin: 0px 0px 20px 0px;
    padding: 0px;
}

    .cd-accordion-menu ul {
        /* by default hide all sub menus */
        display: none;
        list-style: none;
        padding: 0px;
        margin: 0px;
    }

    .cd-accordion-menu li {
        margin: 0px;
        padding: 0px;
        list-style: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    .cd-accordion-menu input[type=checkbox] {
        /* hide native checkbox */
        position: absolute;
        opacity: 0;
    }

    .cd-accordion-menu label, .cd-accordion-menu a.last {
        position: relative;
        display: block;
        padding: 10px 5px 5px 48px;
        background: #eee;
        margin-bottom: 0px;
        font-weight: normal;
    }

    .cd-accordion-menu .has-children label a {
        color: #111;
    }

.cd-accordion-menu label::before, .cd-accordion-menu label::after, .cd-accordion-menu a.last::after {
    /* icons */
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.cd-accordion-menu label {
    cursor: pointer;
}

    .cd-accordion-menu label::before, .cd-accordion-menu label::after {
        background-image: url(cd-icons.svg);
        background-repeat: no-repeat;
    }

    .cd-accordion-menu label::before {
        /* arrow icon */
        left: 5px;
        background-position: 0 0;
        -webkit-transform: translateY(-50%) rotate(-90deg);
        -moz-transform: translateY(-50%) rotate(-90deg);
        -ms-transform: translateY(-50%) rotate(-90deg);
        -o-transform: translateY(-50%) rotate(-90deg);
        transform: translateY(-50%) rotate(-90deg);
        border-radius: 3px;
        background-color: rgba(255, 255, 255, 0.5);
    }

    .cd-accordion-menu label.active::before {
        /*background-color: rgba(234, 67, 53, 1);*/
        background-color: rgba(52, 168, 83, 1);
    }

    .cd-accordion-menu label::after {
        /* folder icons */
        left: 27px;
        background-position: -16px 0;
    }

.cd-accordion-menu a.last::after {
    /* image icon */
    left: 36px;
    background: url(cd-icons.svg) no-repeat -48px 0;
}

.cd-accordion-menu input[type=checkbox]:checked + label::before {
    /* rotate arrow */
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.cd-accordion-menu input[type=checkbox]:checked + label::after {
    /* show open folder icon if item is checked */
    background-position: -32px 0;
}

.cd-accordion-menu input[type=checkbox]:checked + label + ul,
.cd-accordion-menu input[type=checkbox]:checked + label:nth-of-type(n) + ul {
    /* use label:nth-of-type(n) to fix a bug on safari (<= 8.0.8) with multiple adjacent-sibling selectors*/
    /* show children when item is checked */
    display: block;
}

.cd-accordion-menu ul label,
.cd-accordion-menu ul a.last {
    background: #f3f3f3;
    padding-left: 70px;
    /*color: #555;*/
}

    .cd-accordion-menu a.active {
        color: #ff6a00;
    }

.cd-accordion-menu > li:last-of-type > label,
.cd-accordion-menu > li:last-of-type > a.last,
.cd-accordion-menu > li > ul > li:last-of-type label,
.cd-accordion-menu > li > ul > li:last-of-type a {
    box-shadow: none;
}

.cd-accordion-menu ul label::before {
    left: 27px;
}

.cd-accordion-menu ul label::after,
.cd-accordion-menu ul a.last::after {
    left: 50px;
}

.cd-accordion-menu ul ul label,
.cd-accordion-menu ul ul a.last {
    padding-left: 100px;
}

    .cd-accordion-menu ul ul label::before {
        left: 54px;
    }

    .cd-accordion-menu ul ul label::after,
    .cd-accordion-menu ul ul a.last::after {
        left: 77px;
    }

.cd-accordion-menu ul ul ul label,
.cd-accordion-menu ul ul ul a.last {
    padding-left: 118px;
}

    .cd-accordion-menu ul ul ul label::before {
        left: 72px;
    }

    .cd-accordion-menu ul ul ul label::after,
    .cd-accordion-menu ul ul ul a.last::after {
        left: 95px;
    }

.cd-accordion-menu ul ul ul ul label,
.cd-accordion-menu ul ul ul ul a.last {
    padding-left: 140px;
}

    .cd-accordion-menu ul ul ul ul label::before {
        left: 90px;
    }

    .cd-accordion-menu ul ul ul ul label::after,
    .cd-accordion-menu ul ul ul ul a.last::after {
        left: 113px;
    }

.cd-accordion-menu.animated label::before {
    /* this class is used if you're using jquery to animate the accordion */
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;
}
