.node-menu {
    position: relative;
    width: 150px;
}

.node-menu .node-menu-content {
    width: 100%;
    padding: 5px;
    position: absolute;
    border: 1px solid #bdbdbd;
    border-radius: 5%;
    box-shadow: 0 0 5px #bdbdbd;
    background-color: #eee;
    color: #212121;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    z-index: 999;
}

.node-menu .node-menu-content li.node-menu-item {
    list-style: none;
    padding: 3px;
}

.node-menu .node-menu-content .node-menu-item:hover {
    border-radius: 5%;
    opacity: unset;
    cursor: pointer;
    background-color: #bdbdbd;
    transition: background-color 0.2s ease-out;
}

.node-menu .node-menu-content .node-menu-item .node-menu-item-icon {
    display: inline-block;
    width: 16px;
}

.node-menu .node-menu-content .node-menu-item .node-menu-item-icon.new-tag:before {
    content: '\25CF';
}

.node-menu .node-menu-content .node-menu-item .node-menu-item-icon.new-folder:before {
    content: '\25B6';
}

.node-menu .node-menu-content .node-menu-item .node-menu-item-icon.rename:before {
    content: '\270E';
}

.node-menu .node-menu-content .node-menu-item .node-menu-item-icon.remove:before {
    content: '\2716';
}

.node-menu .node-menu-content .node-menu-item .node-menu-item-value {
    margin-left: 5px;
}

tree-internal ul {
    padding: 3px 0 3px 25px;
}

tree-internal li {
    padding: 0;
    margin: 0;
    list-style: none;
}

tree-internal .over-drop-target {
    border: 4px solid #757575;
    transition: padding 0.2s ease-out;
    padding: 5px;
    border-radius: 5%;
}

tree-internal .tree {
    box-sizing: border-box;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

tree-internal .tree li {
    list-style: none;
    cursor: default;
}

tree-internal .tree li div {
    /* display: inline-block; */
    box-sizing: border-box;
}

tree-internal .tree .node-value {
    display: inline-block;
    color: #212121;
}

tree-internal .tree .node-value:after {
    display: block;
    padding-top: -3px;
    width: 0;
    height: 2px;
    background-color: #212121;
    content: '';
    transition: width 0.3s;
}

tree-internal .tree .node-value:hover:after {
    width: 100%;
}

tree-internal .tree .node-left-menu {
    display: inline-block;
    height: 100%;
    width: auto;
}

tree-internal .tree .node-left-menu span:before {
    content: '\2026';
    color: #757575;
}

tree-internal .tree .node-selected:after {
    width: 100%;
}

tree-internal .tree .folding {
    width: 25px;
    display: inline-block;
    line-height: 1px;
    padding: 0 5px;
    font-weight: bold;
}

tree-internal .tree .folding.node-collapsed {
    cursor: pointer;
}

tree-internal .tree .folding.node-collapsed:before {
    content: '\25B6';
    color: #757575;
}

tree-internal .tree .folding.node-expanded {
    cursor: pointer;
}

tree-internal .tree .folding.node-expanded:before {
    content: '\25BC';
    color: #757575;
}

tree-internal .tree .folding.node-empty {
    color: #212121;
    text-align: center;
    font-size: 0.89em;
}

tree-internal .tree .folding.node-empty:before {
    content: '\25B6';
    color: #757575;
}

tree-internal .tree .folding.node-leaf {
    color: #212121;
    text-align: center;
    font-size: 0.89em;
}

tree-internal .tree .folding.node-leaf:before {
    content: '\25CF';
    color: #757575;
}

tree-internal ul.rootless {
    padding: 0;
}

tree-internal div.rootless {
    display: none !important;
}

tree-internal .loading-children:after {
    content: ' loading ...';
    color: #6a1b9a;
    font-style: italic;
    font-size: 0.9em;
    animation-name: loading-children;
    animation-duration: 2s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

@keyframes loading-children {
    0% {
        color: #f3e5f5;
    }
    12.5% {
        color: #e1bee7;
    }
    25% {
        color: #ce93d8;
    }
    37.5% {
        color: #ba68c8;
    }
    50% {
        color: #ab47bc;
    }
    62.5% {
        color: #9c27b0;
    }
    75% {
        color: #8e24aa;
    }
    87.5% {
        color: #7b1fa2;
    }
    100% {
        color: #6a1b9a;
    }
}