ol.tree
{
  padding: 0 0 0 30px;
  width: 300px;
}
ol.tree li
{
  position: relative;
  margin-left: -15px;
  list-style: none;
}
ol.tree li.file
{
  margin-left: -1px !important;
  height: 1.5em;
}
ol.tree li.file a
{
  color: #fff;
  text-decoration: none;
  display: inline-block;
}
ol.tree li.file a span.icon
{
  width: 14px;
  height: 18px;
  background: url(images/fileview/document.png) 0 0 no-repeat;
  display: inline-block;
  margin-right: 7px;
  vertical-align: text-top;
}
ol.tree li.file a[href *= '.pdf'] span.icon { background: url(images/fileview/document.png) 0 0 no-repeat; }
ol.tree li.file a[href *= '.html'] span.icon { background: url(images/fileview/document.png) 0 0 no-repeat; }
ol.tree li.file a[href $= '.css'] span.icon { background: url(images/fileview/document.png) 0 0 no-repeat; }
ol.tree li.file a[href $= '.js']  span.icon { background: url(images/fileview/document.png) 0 0 no-repeat; }
ol.tree li input
{
  position: absolute;
  left: 0;
  margin-left: 0;
  opacity: 0;
  z-index: 2;
  cursor: pointer;
  height: 1em;
  width: 1em;
  top: 0;
}
ol.tree li input + ol
{
  background: url(../images/fileview/toggle-small-expand.png) 40px 0 no-repeat;
  margin: -1.188em 0 0 -44px; /* 15px */
  height: 1.5em;
}
ol.tree li input + ol > li { display: none; margin-left: -14px !important; padding-left: 1px; }
ol.tree li label
{
  background: url(../images/fileview/folder-horizontal.png) 15px 1px no-repeat;
  cursor: pointer;
  display: block;
  padding-left: 37px;
}

ol.tree li input:checked + ol
{
  background: url(../images/fileview/toggle-small.png) 40px 5px no-repeat;
  margin: -1.5em 0 0 -44px; /* 20px */
  padding: 1.563em 0 0 80px;
  height: auto;
}
ol.tree li input:checked + ol > li { display: block; margin: 0 0 0.125em;  /* 2px */}
ol.tree li input:checked + ol > li:last-child { margin: 0 0 0.063em; /* 1px */ }
