/*

    Infinite Dropdown

    data-divider: add li with boolean attribute data-divider to add a space between li
    data-sub: add attribute data-sub to add the angle icon for sub ul

    <div class="dropdown">
        <div tabindex="-1">
            Example text
        </div>
        <ul>
            <li> A level 0 </li>
            <li> B level 0 </li>
            <li data-divider></li>
            <li data-sub> C level 0
                <ul>
                   <li> D level 1 </li>
                   <li> E level </li>
                   <li data-divider></li>
                </ul>
            </li>
        </ul>
    </div>

*/

* /deep/ div.dropdown {
    position: relative;
    display: block;
    color: #333;
    cursor: pointer;
}

* /deep/ div.dropdown ul {
    box-sizing: border-box;
    visibility: hidden;
    opacity: 0;
    position: absolute;
    list-style: none;
    text-decoration: none;
    z-index: 100000;
    border: 1px solid #afafaf;
    background-color: #fff;
    line-height: 22px;
    min-width: 100%;
    margin: 1px 0 0 0;
    padding: 5px 0;
    box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2);
    /*box-shadow: 0px 1px 6px 0px rgb(136, 136, 136);*/
    transition: all 0.35s;
}

* /deep/ ul.context {
    box-sizing: border-box;
    visibility: hidden;
    opacity: 0;
    position: fixed;
    list-style: none;
    text-decoration: none;
    z-index: 100000;
    border: 1px solid #afafaf;
    background-color: #fff;
    line-height: 22px;
    margin: 1px 0 0 0;
    padding: 5px 0;
    box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2);
    transition: all 0.1s;
}

* /deep/ div.dropdown ul, ul.context ul {
    left: 0;
    top: 100%;
}

* /deep/ div.dropdown ul[data-upward] {
    top: inherit;
    bottom: 100%;
    margin-bottom: 2px;
    left: 0;
}

* /deep/ div.dropdown ul ul {
    top: 0px;
    left: 100%;
}

* /deep/ div.dropdown ul li,
* /deep/ ul.context li {
    position: relative;
    text-align: left;
    padding: 2px 30px 2px 10px;
    white-space: nowrap;
    color: #333;
}

* /deep/ div.dropdown ul li[data-divider],
* /deep/ ul.context li[data-divider] {
    height: 1px;
    margin: 3px 0;
    padding: 0;
    overflow: hidden;
    background-color: #DEDEDE;
}

* /deep/ div.dropdown ul li[data-sub]:after,
* /deep/ ul.context li[data-sub]:after {
    font-family: 'FontAwesome';
    content: '\f105'; /* > */
    /*content:'\f0da';*/
    position: absolute;
    right: 10px;
}

* /deep/ div.dropdown ul li.active,
* /deep/ div.dropdown ul li:active,
* /deep/ ul.context li:active {
    background-color: #DEDEDE;
}

* /deep/ div.dropdown ul li:hover,
* /deep/ ul.context li:hover {
    background-color: #445D76;
    color: #fff;
}

* /deep/ div.dropdown ul li[data-text]:hover,
* /deep/ ul.context li[data-text]:hover {
    background-color: inherit;
    color: inherit;
}

* /deep/ div.dropdown ul li[data-divider]:hover,
* /deep/ ul.context li[data-divider]:hover {
    background-color: #DEDEDE;
}

* /deep/ div.dropdown > div.button:focus + ul,
* /deep/ div.dropdown > div.button:focus + ul li:hover > ul {
    visibility: visible;
    opacity: 1;
}

/* dropdown button combination */
* /deep/ div.dropdown > div.button::after {
    font-family: 'FontAwesome';
    content: '\f107';
    float: right;
    line-height: 21px;
    padding: 0 2px 0 4px;
}