.vtree ul.vtree-subtree, .vtree li.vtree-leaf {
	margin: 0;
	padding: 0;
	list-style-type: none;
	position: relative;
}

.vtree li.vtree-leaf {
	background-position: -90px 0;
	background-repeat: repeat-y;
	min-height: 18px;
	line-height: 18px;
}

.vtree li.vtree-leaf::before {
	content: '';
	width: 18px;
	height: 18px;
	position: absolute;
	background-position: -36px 0;
}

.vtree li.vtree-leaf li.vtree-leaf {
	margin-left: 18px;
}

.vtree li.vtree-leaf:last-child {
	background-image: none;
}

.vtree li.vtree-leaf.closed ul.vtree-subtree {	
	display: none;
}

.vtree li.vtree-leaf.vtree-has-children > span.vtree-toggle {
	display: block;
	width: 18px;
	height: 18px;
	background-position: -72px 0;
	position: absolute;
	left: 0;
	top: 0;
}

.vtree li.vtree-leaf.vtree-has-children.closed > span.vtree-toggle {
	background-position: -54px 0;
}

.vtree a.vtree-leaf-label {
	line-height: 18px;
	display: inline-block;
	vertical-align: top;
	cursor: pointer;
	max-width: 100%;
	margin-left: 18px;
	padding: 0 2px;
}

.vtree li.vtree-leaf a.vtree-leaf-label:hover {
	background-color: #e7f4f9;
	outline: 1px solid #d8f0fa;
}

.vtree li.vtree-leaf.vtree-selected > a.vtree-leaf-label {
	background-color: #beebff;
	outline: 1px solid #99defd;
}

.vtree-contextmenu {
	position: absolute;
	z-index: 9999999;
	border: solid 1px #ccc;
	background: #eee;
	padding: 0px;
	margin: 0px;
	display: none;
}

.vtree-contextmenu li {
	list-style: none;
	padding: 1px 5px;
	margin: 0px;
	color: #333;
	line-height: 20px;
	height: 20px;
	cursor: default;
}

.vtree-contextmenu li:hover {
	color: #fff;
	background-color: #3399ff;
}

.vtree li.vtree-leaf, .vtree li.vtree-leaf::before, .vtree li.vtree-leaf.vtree-has-children > span.vtree-toggle {
	background-image: url(data:image/png;base64,[encoded data, 4100 characters]);
}
