.tree-loader {
    width: 20px;
    height: 20px;
    margin: 2px;
    padding: 0;
    display: none;
    position: relative;
}

.tree-expandable.loading .tree-loader
{
    display: inline-block;
}

.tree-loader div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    margin: 2px;
    border: 2px solid #3abbff;
    border-radius: 50%;
    animation: tree-loader 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #3abbff transparent transparent transparent;
}

.activeA .tree-loader div,
.tree-expandable.loading:hover .tree-loader div
{
    border-color: #fff transparent transparent transparent;
}

.tree-loader div:nth-child(1) {
    animation-delay: -0.45s;
}

.tree-loader div:nth-child(2) {
    animation-delay: -0.3s;
}

.tree-loader div:nth-child(3) {
    animation-delay: -0.15s;
}

@keyframes tree-loader {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.tree-expandable:not(.loaded) .icon-collapse,
.tree-expandable.loading .tree-expander, 
.tree-expandable.loaded .tree-expander
{
    display: none;
}

.tree-expander:hover
{
    cursor: pointer;
}

.tree-expandable .tree-expander, 
.tree-expandable .tree-expander
{
    z-index: 1;
}

.tree-expander .material-icons
{
    color: #ddd;
}