/*
 * ### Start sticky footer ###
 * Force the footer to always stay on the bottom of the page regardless of how
 * little content is on the page.
*/
body {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

main {
  flex: 1 0 auto;
}
/* ### End sticky footer ### */


/*
 * ### Start sidenav-fixed offset ###
 * The sidenav-fixed class is used which causes the sidenav to be fixed and open
 * on large screens and hides to the regular functionality on smaller screens.
 * In order to prevent the sidenav to overlap the content, the content (in our
 * case header, main and footer) gets an offset equal to the width of the
 * sidenav.
*/
@media only screen and (min-width : 993px) {
  header, main, footer {
    padding-left: 300px;
  }

  .modal:not(.bottom-sheet) {
    left: 300px;
  }

  .navbar-fixed > nav {
    width: calc(100% - 300px)
  }
}
/* ### End sidenav-fixed offset ### */

/* add custom bold class */
.bold {
  font-weight: bold;
}

/* CSS for clickable th elements in tables. Needed for sortable table data with
list js. On click on th header elements will be sorted accordingly. Also a caret
indicator will show up how the column is sorted right now.; */
.sort {
  cursor: pointer;
}
.sort:after {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid transparent;
  content:"";
  position: relative;
  top:-10px;
  right:-5px;
}
.sort.asc:after {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #000000;
  content:"";
  position: relative;
  top:13px;
  right:-5px;
}
.sort.desc:after {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #000000;
  content:"";
  position: relative;
  top:-10px;
  right:-5px;
}

/* Sticy side elements */
.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 80px;
  padding: 50px;
  z-index: 999; /* tmp fix */
}

/* styles for resource lists */
.service[data-service]:before {
  content: "help";
}
.service[data-service="corpus"]:before {
  content: "book";
}
.service[data-service="merge_images"]:before {
  content: "burst_mode";
}
.service[data-service="nlp"]:before {
  content: "format_textdirection_l_to_r";
}
.service[data-service="ocr"]:before {
  content: "find_in_page";
}
.status[data-status]:before {
  content: attr(data-status);
}
.status[data-status] {
  background-color: #f44336 !important; /* ~materialize "red" */
}
.status[data-status="analysing"] {
  background-color: #4caf50 !important; /* ~materialize green */
}
.status[data-status="complete"] {
  background-color: #4caf50 !important; /* ~materialize green */
}
.status[data-status="pending"] {
  background-color: #ff9800 !important; /* ~materialize orange */
}
.status[data-status="preparable"] {
  background-color: #ff9800 !important; /* ~materialize orange */
}
.status[data-status="prepared"] {
  background-color: #4caf50 !important; /* ~materialize green */
}
.status[data-status="preparing"] {
  background-color: #03a9f4 !important; /* ~materialize light-blue */
}
.status[data-status="removing"] {
  background-color: #ff5722 !important; /* ~materialize deep-orange */
}
.status[data-status="running"] {
  background-color: #ffc107 !important; /* ~materialize amber */
}
.status[data-status="start analysis"] {
  background-color: #ffeb3b !important; /* ~materialize yellow */
}
.status[data-status="stopping"] {
  background-color: #ff5722 !important; /* ~materialize deep-orange */
}
.status[data-status="stop analysis"] {
  background-color: #ff5722 !important; /* ~materialize deep-orange */
}
.status[data-status="submitted"] {
  background-color: #2196f3 !important; /* ~materialize blue */
}
.status[data-status="unprepared"] {
  background-color: #9e9e9e !important; /* ~materialize grey */
}