html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  min-width: 650px;
  background-image: url(../background.jpg);
  background-size: cover;
  background-attachment: fixed;
}

body#body {}

.sidebar {
  height: 100%;
  max-height: 100%;
  overflow: auto;
}

.fail {
  color: red;
}

.sucess {
  color: green;
}

.subnav {
  display: none;
  max-height: 500px;
  overflow: auto;
  margin-left: 15px;
  border-left: gray 3px solid;
}

.autoComplete .list-group {
  margin-bottom: 0;
  border: none;
}

.pager {
  /* margin: 0; */
}

#searchBar {
  display: inline-block;
}

#filters {
  margin-bottom: 10px;
  visibility: visible;
  opacity: 1;
  transition: visibility 1s ease-out, opacity 1s ease-out, margin-bottom 1s ease-out;
}

#filters .label {
  /* display: none; */
  font-size: inherit;
  transition: background-color 1s, 
  
  border-color 2s;
  cursor: pointer;
}

#filters .label::after {
  content: " \2716";
}

#filters .label:hover {
  /* font-size: 0; */
  background-color: red;
  border-color: red;
}

#filters .label:hover::before {
  content: "Remove ";
}

#filters .label:hover::after {
  content: "?";
}

#filters .label:not(:last-child) {
  margin-right: 5px;
}

#filters:empty {
  visibility: hidden;
  opacity: 0;
  margin-bottom: 0;
}

/* Magic filters text that won't get picked up in jquery.text */
#filters:not(:empty)::before {
  content: "Filters: ";
}

#search {
  min-width: 500px;
}

.autoComplete {
  max-height: 0;
  overflow-y: auto;
  position: absolute;
  left: 0;
  transition: max-height 1s;
}

*:focus ~ .autoComplete { /* If the parent detects focus on any subelement or itself */
  max-height: 500px;
}

.pager li > div {
  display: inline-block;
}
