/* Width */
::-webkit-scrollbar {
  width: .5em;
}

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1; 
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #888; 
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #555; 
}

html {
  background-color: #2d2d2d;
  height: 100%;
}

body {
  font-family:  Calibri, sans-serif;
  font-size: 1em;
  color: #bfbfbf;
  overflow-y: auto;
  overflow-x: hidden;

  margin: 0;
  height: 100%;
}

h1 {
  color: #a9a9a9;
  margin: 0 0 0 5px;
}

h2 {
  font-size: 1.1em;
  color: #888;
  margin: 0 0 0 5px;
}

a {
  color:  inherit;
  text-decoration: none;
}

a.selected {
  color: #d3894a;
}

a:hover, a:active {
  color: #dfab7f;
}

ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
li {
  white-space: nowrap;
}
li a:only-child, li ul {
  margin-left: 1em;
}
li a {
  display: inline-block;
  white-space: initial;
  user-select: none;
  vertical-align: top;
}
li span::before {
  display: inline-block;
  content: "";
  width: 1em;
}
li span {
  background: no-repeat url("plus_bw.png") center center;
}
li span.open {
  background-image: url("minus_bw.png");
}
li span ~ ul {
  display: none;
}
li span.open ~ ul {
  display: block;
}

.flex {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.spacer {
  flex: 1;
}
.item {
  padding: 8px;
}