/*
 * ### 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 {
    left: 300px;
  }

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

/* 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 */
}