.st-sort-ascent:before{
    content: '\25B2';
}

.st-sort-descent:before{
    content: '\25BC';
}

.st-selected{
    background: #216eff !important;
    color: white !important;
}

.padding{
    padding: 0.8em;
}

.header {
    text-align: center;
    background-color: #0EA7EA;
    background-image: linear-gradient(rgba(255, 255, 255, .5) 1px, transparent 4px), linear-gradient(90deg, rgba(255, 255, 255, .5) 1px, transparent 4px), linear-gradient(rgba(255, 255, 255, .3) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .3) 1px, transparent 1px);
    background-size: 40px 40px, 40px 40px, 10px 10px, 10px 10px;
    background-position: -2px -2px, -2px -2px, -1px -1px, -1px -1px;
    box-shadow: 0px 3px 8px 2px rgba(80, 80, 80, 1);
}

.banner {
    padding: 2em 0;
    color: #ffffff;
    text-shadow: 0px 3px 30px #fafaff;
    z-index: 999;
}

#main-footer{
    margin-top: 3em;
    border-top: 1px solid #454545;
}

.loading-indicator {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    width: 100%;
    text-align: center;
    padding: 0.7em; }

.loading-indicator:before {
    display: inline-block;
    margin: 0 0.4em;
    min-width: 1em;
    min-height: 1em;
    border-top: 4px solid #646464;
    border-right: 4px solid #e6e6e6;
    border-left: 4px solid #e6e6e6;
    border-bottom: 4px solid #646464;
    content: "";
    -webkit-animation: halfspin 1s ease infinite;
    -moz-animation: halfspin 1s ease infinite;
    -o-animation: halfspin 1s ease infinite;
    animation: halfspin 1s ease infinite;
    border-radius: 100%; }

@-webkit-keyframes halfspin {
    to {
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        transform: rotate(180deg); } }

@-moz-keyframes halfspin {
    to {
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        transform: rotate(180deg); } }

@keyframes halfspin {
    to {
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        transform: rotate(180deg); } }

table {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

table * {
    box-sizing: inherit;
    -moz-box-sizing: inherit;
}

td {
  border: 0.5px dotted lightgrey;
  border-collapse: collapse;
  border-top-width: 0px;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-left-width: 0px;
  
  padding-top: 0px;
  padding-right: 2px;
  padding-bottom: 0px;
  padding-left: 4px;
}

table th {
  background-color: #0EA7EA;
  color: #FFFFFF;
  font-weight: bold;
}

table tr:nth-child(odd) {
  background-color: #ffffff;
}

table tr:nth-child(even) {
  background-color: #f1f1f1;
}

thead {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

tbody {
    overflow-y: scroll;
    display: inline-block;
}

thead > tr, tbody > tr, tfoot > tr {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

thead, tfoot {
    flex-shrink: 0;
}

th, tbody td {
    width: 20%;
    overflow-x: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}

tfoot {
    display: inline-block;
}

tfoot td {
    width: 100%;
    display: inline-block;
}

.scroll_table {
    overflow-x: auto; 
    overflow-y: auto;
}

.fixed_div {
    position: fixed;
    z-index: 1024;
    right: 10px;
    bottom: 1px;
}

.quick_item_active {
  background-color: #0EA7EA;
  color: #FFFFFF !important;
  font-weight: bold;
  border-bottom-color: #2EC9A7;
  border-bottom-style: solid;
  border-bottom-width: 2px;
}
