.bs-tree {
    width: 100%;
    list-style: none;
    padding: 0;
}

.bs-tree > li {
    width: 100%;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    position: relative;
}

.bs-tree > li:first-child {
    border-top: 1px solid #ccc;
}

.bs-tree > li span {
    display: block;
    padding: 10px 15px;
    width: 100%;
    font-size: 15px;
}

.bs-tree a {
    width: 100%;
    color: black;
    text-decoration: none;
}

.bs-tree > li span:hover {
    cursor: pointer;
    background-color: #f5f5f5;
}

.bs-close > span::after {
    content: '>';
    position: absolute;
    right: 15px;
}

.bs-open > span::after {
    content: '>';
    position: absolute;
    right: 15px;
    transform: rotate(90deg);
}

.bs-subtree {
    list-style: none;
    padding: 0;
    width: 100%;
}

.bs-subtree > li {
    width: 100%;
    font-size: 14px;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #ccc;
}

.bs-subtree > li:first-child {
    border-top: 1px solid #ccc;
}

.bs-subtree > li:last-child {
    border-bottom: none;
}

.bs-subtree > li > span {
    padding: 10px 20px;
    user-select: none;
}

.bs-subtree > li>span:hover {
    cursor: pointer;
    background-color: #f5f5f5;
}