ul {
	padding-left: 20px;
}

ul.tree li {
    list-style-type: none;
    position: relative;
}

ul.tree li.close ul {
    display: none;
}

ul.tree li > ul {
    display: block;
}

/*
ul.tree li a {
    color: black;
    text-decoration: none;
}

ul.tree li span:before {
    height: 1em;
    padding:0 .1em;
    font-size: .8em;
    display: block;
    position: absolute;
    left: -1.3em;
    top: .2em;
}
*/
ul.tree li span:before {
    padding:0 2px;
}

ul.tree li.close > span:is(:first-child):before {
    content: '+';
}

ul.tree li > span:is(:first-child):before {
    content: '-';
}