@import url(//fonts.googleapis.com/css?family=Roboto);
.ng-leave {
  opacity: 1;
}
.ng-leave.ng-leave-active {
  opacity: 0;
}
.ng-enter {
  opacity: 0;
}
.ng-enter.ng-enter-active {
  opacity: 1;
}
.ng-hide-add {
  opacity: 1;
}
.ng-hide-add.ng-hide-add-active {
  opacity: 0;
}
.ng-hide-remove {
  opacity: 0;
}
.ng-hide-remove.ng-hide-remove-active {
  opacity: 1;
}
.contextMenu {
  position: absolute;
  float: left;
  background: #fafafa;
  border: 1px solid #9e9e9e;
  border-radius: 3px;
  padding: 3px 0;
  box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.5);
  -webkit-user-select: none;
  /* Chrome all / Safari all */
  -moz-user-select: none;
  /* Firefox all */
  -ms-user-select: none;
  /* IE 10+ */
  user-select: none;
  cursor: default;
  z-index: 10000;
}
.contextMenu .menuItem {
  padding: 0 5px;
  position: relative;
  white-space: nowrap;
}
.contextMenu .menuItem:hover {
  background: #80cbc4;
}
.contextMenu .menuItem:not(:last-child) {
  border-bottom: 1px solid #eeeeee;
}
.contextMenu .menuItem .arrow {
  text-align: right;
}
* {
  box-sizing: border-box;
  outline: none;
  transition: all 0.2s ease;
}
html {
  width: 100%;
  height: 100%;
}
html,
body,
h1,
h2,
button {
  padding: 0;
  margin: 0;
}
html,
button,
input,
textarea {
  font-family: 'Roboto', sans-serif;
}
body {
  width: 100%;
  height: 100%;
  background: #fafafa;
  display: flex;
}
a {
  color: #26a69a;
}
nav img {
  vertical-align: middle;
  margin-right: 5px;
}
nav dt:hover,
nav dd:hover,
nav dt.active,
nav dd.active {
  background: #eeeeee;
  cursor: pointer;
  cursor: hand;
}
nav dt {
  padding: 10px 10px;
}
nav dd {
  margin: 0;
  padding: 10px 10px 10px 40px;
}
nav a {
  color: black;
  text-decoration: none;
}
h2 {
  margin-bottom: 10px;
}
h2 a {
  color: inherit;
}
h3 {
  margin-bottom: 10px;
}
h3:first-child {
  margin-top: 0px;
}
hr {
  border: 1px solid #eeeeee;
}
table {
  border-collapse: collapse;
}
table input[type=text],
table textarea {
  width: 100%;
}
th {
  text-align: left;
}
td,
th {
  padding: 0 10px 5px 0;
  vertical-align: top;
}
button {
  border: none;
  background: #eeeeee;
}
form button,
form input[type=submit] {
  border: none;
  background: #eeeeee;
}
form button:hover,
form input[type=submit]:hover {
  background: #e0e0e0;
}
button:hover {
  cursor: pointer;
  cursor: hand;
}
img {
  max-width: 100%;
}
p:first-child {
  margin-top: 0;
}
p:last-child {
  margin-bottom: 0;
}
#menu {
  background: #fafafa;
  width: 280px;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  box-shadow: -2px 0px 0px 0px #eeeeee inset;
  z-index: 400;
  overflow-x: hidden;
}
#menu #nav-container {
  overflow: auto;
  width: 100%;
  flex: 1 1 auto;
}
#menu #nav-container dl {
  margin: 5px 0 0 0;
}
#menu .header {
  z-index: 401;
  flex: 0 0 auto;
  overflow: auto;
}
#main {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 100%;
  position: relative;
}
#main .header {
  flex: 0 0 auto;
  z-index: 1;
}
#main .header #menu-button {
  display: none;
}
#main .header > * {
  padding-left: 20px !important;
}
#main #content {
  flex: 1 1 auto;
  overflow: auto;
  z-index: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
}
#main #content #body {
  padding: 20px;
  flex: 1;
}
#buttons-left,
#buttons-right {
  position: absolute;
  padding: 10px;
  bottom: 0px;
}
#buttons-left button,
#buttons-right button {
  margin: 10px;
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.25);
  vertical-align: middle;
  border: none;
  background: #26a69a;
  width: 40px;
  height: 40px;
  color: white;
  font-size: 24px;
  line-height: 24px;
}
#buttons-left {
  left: 0px;
}
#buttons-right {
  right: 0px;
}
#cookiePopup {
  position: absolute;
  background: black;
  top: 50%;
  left: 50%;
  padding: 20px;
  border-radius: 30px;
  width: 230px;
  height: 230px;
  margin-top: -115px;
  margin-left: -115px;
  color: white;
}
#cookiePopup > div {
  margin-top: 40px;
  text-align: center;
}
#spinner {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  align-items: center;
  text-align: center;
  display: flex;
  z-index: 1000;
  transition: all ease-in-out 0.5s;
}
#spinner.ng-hide {
  opacity: 0;
}
#spinner > img {
  margin: auto;
}
.scrollLock {
  overflow: hidden;
}
.header {
  height: 64px;
  background: #e53935;
  color: white;
  white-space: nowrap;
  padding: 0 !important;
  overflow: hidden;
  box-shadow: 0 -9px 5px 10px rgba(50, 50, 50, 0.8);
}
.header > * {
  line-height: 64px;
  font-size: 24px;
  font-weight: 400;
  padding-left: 10px;
  white-space: nowrap;
  display: inline;
  vertical-align: middle;
}
.header > h2 > span {
  display: inline-block;
}
.header > img {
  height: 50%;
}
.header span {
  display: inline-block;
}
.header span:not(:first-child):before {
  margin: 2px 10px 0 10px;
  width: 6px;
  float: left;
  height: 62px;
  background: url("/images/chevron.png") no-repeat scroll right center / contain rgba(0, 0, 0, 0);
  content: "";
}
.circle {
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  overflow: hidden;
}
.go,
.expand {
  display: none;
  float: right;
}
.backdrop {
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  display: none;
  transition: all ease-in-out 0.5s;
}
.backdrop.ng-hide {
  opacity: 0;
}
.errors {
  background: url(/images/error.svg) no-repeat scroll 10px 10px #424242;
  padding: 10px;
  padding-left: 40px;
  color: #fff;
}
.errors ul {
  margin: 0;
  list-style: square;
}
.row {
  width: 100%;
  clear: both;
}
.row > .col {
  width: 100%;
  float: left;
}
.row.col-lg-1 > .col,
.row.col-md-1 > .col,
.row.col-sm-1 > .col {
  width: 100%;
}
.row.col-lg-2 > .col,
.row.col-md-2 > .col,
.row.col-sm-2 > .col {
  width: 50%;
}
.row.col-lg-3 > .col,
.row.col-md-3 > .col,
.row.col-sm-3 > .col {
  width: 33.3333%;
}
.row.col-lg-4 > .col,
.row.col-md-4 > .col,
.row.col-sm-4 > .col {
  width: 25%;
}
table.alternatingRows tr:nth-child(1n) {
  background: #eeeeee;
}
table.alternatingRows tr:nth-child(2n) {
  background: #e0e0e0;
}
td,
th {
  padding: 3px;
}
td.number,
th.number {
  text-align: right;
}
div.percentageBar {
  width: 100%;
  height: 20px;
  background: #9ccc65;
  overflow: hidden;
}
div.percentageBar > div {
  background: #ef5350;
  height: 100%;
  transition: all 500ms ease-in-out;
}
