.css-treeview ul,
.css-treeview li
{
	padding: 0;
	margin: 0;
	list-style: none;
}

.css-treeview input
{
	position: absolute;
	opacity: 0;
}

.css-treeview
{
	font: normal 11px Arial, Sans-serif;
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}

.css-treeview a
{
	color: #00f;
	text-decoration: none;
}

.css-treeview a:hover
{
	text-decoration: underline;
}

.css-treeview input + label + ul
{
	margin: 0 0 0 22px;
}

.css-treeview input ~ ul
{
	display: none;
}

.css-treeview label,
.css-treeview label::before
{
	cursor: pointer;
}

.css-treeview input:disabled + label
{
	cursor: default;
	opacity: .6;
}

.css-treeview input:checked:not(:disabled) ~ ul
{
	display: block;
}

.css-treeview label,
.css-treeview label::before
{
	background: url("treeview_icons.png") no-repeat;
}

.css-treeview label,
.css-treeview a,
.css-treeview label::before
{
	display: inline-block;
	height: 16px;
	line-height: 16px;,
	vertical-align: middle;
}

.css-treeview label
{
	background-position: 18px 0;
}

.css-treeview label::before
{
	content: "";
	width: 16px;
	margin: 0 22px 0 0;
	vertical-align: middle;
	background-position: 0 -32px;
}

.css-treeview input:checked + label::before
{
	background-position: 0 -16px;
}

.css-treeview input.new + label::before
{
	background-position: 0 -48px;
}

/* webkit adjacent element selector bugfix */
@media screen and (-webkit-min-device-pixel-ratio:0)
{
	.css-treeview 
	{
		-webkit-animation: webkit-adjacent-element-selector-bugfix infinite 1s;
	}
	
	@-webkit-keyframes webkit-adjacent-element-selector-bugfix 
	{
		from 
		{ 
			padding: 0;
		} 
		to 
		{ 
			padding: 0;
		}
	}
}