ol.tree			{ padding-left: 0; }

li					{ color: #333; position: relative; list-style-type: none; }
li label		{ padding-left: 37px; background: url("i/folder-horizontal.png") no-repeat 15px 7px; display: block; cursor: pointer; }

li input						{ height: 1rem; width: 3rem; position: absolute; top: 7px; left: -5px; opacity: 0; cursor: pointer; }
li input + ol				{ margin: -16px 0 0 -44px; height: 1rem; background:url("i/toggle-small-expand.png") no-repeat 40px 0; }
li input + ol > li	{ margin-left: -14px !important; padding-left: 1px; display: none; }

li.file			{ margin-left: -1px !important; }
li.file a		{ color: #999; text-decoration: none; padding-left: 21px; background:url("i/document.png") no-repeat 0 5px; display: inline-block; }

li input:checked + ol				{ margin: -21px 0 0 -44px; padding: 25px 0 0 80px; height: auto; background: url("i/toggle-small.png") no-repeat 40px 5px; }
li input:checked + ol > li	{ margin: 0 0 0.063em; display: block; }
li input:checked + ol > li:first-child	{ margin: 0 0 0.125em; }
