﻿#table-wrapper {
    position: relative;
    height: 100%;
    margin-top: 50px;

    transition: margin-top .3s;
    -moz-transition: margin-top .3s;
    -webkit-transition: margin-top .3s;
}
#table-scroller {
    overflow-y: auto;
    overflow-x: hidden;
    height: 100%;
}

.elements-table thead {
    position: absolute;
    top: -52px;
    
    transition: top .3s;
    -moz-transition: top .3s;
    -webkit-transition: top .3s;
}

.elements-table {
    width: 100%;
    border-spacing: 0px;
}
.elements-table tr {
    height: 52px;
}
.elements-table tr.headers {
    border-bottom: 1px solid #dedede;
}
.elements-table th,
.elements-table td {
    text-align: left;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding-right: 4px; /* Prevent the ellipsis to be too much to the next field*/
    overflow: hidden;
    
    background: none;
    border: 0px;    
    font-weight: normal;      
    
    min-width: 30px;
    box-sizing: content-box;
}
.elements-table th {
    text-transform: uppercase;
    font-size: 0.75em;
    border-bottom: 1px solid #DDDDDD;
}
.elements-table th a,
.elements-table th label {
    text-overflow: ellipsis;
    display: block;
    overflow: hidden;
}
.elements-table th a {
    position: relative;
    box-sizing: border-box;
    padding-right: 10px;
}
.elements-table th a .order-asc,
.elements-table th a .order-desc {
    position: absolute;
    top: 5px;
    right: 2px;
}

/*  Hide the table headers, and show when hovering. 
    Turned off by default, below is the css to turn it on.
.elements-table th:not(:first-child):not(.sorting) {
    opacity: 0;
    transition: opacity .3s;
    -moz-transition: opacity .3s;
    -webkit-transition: opacity .3s;
}
.elements-table tr.headers:hover th {
    opacity: 1;
}*/

.elements-table th .order-asc,
.elements-table th .order-desc {        
    background: url(../images/Portal/order.svg) no-repeat;
    width: 6px;
    height: 3px;
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
    margin-bottom: 2px;

    transition: transform .3s;    
    -moz-transition: transform .3s;
    -webkit-transition: transform .3s;    
}
.elements-table th a:hover .order-desc,
.elements-table th a:not(:hover) .order-asc,
.elements-table th .order-asc.inactive {
    transform: scaleY(-1);
    -ms-transform: scaleY(-1);
    -moz-transform: scaleY(-1);
    -webkit-transform: scaleY(-1);
}
.elements-table th a:not(:hover) .order-asc.inactive {
    background: none;
}
.elements-table th.can-sort a:hover {
    background: white;
}


.elements-table tr.item {
    background: white;
    position: relative;
}
.elements-table tr.item td {
    border-bottom: 1px solid #f3f3f3;   
}
.elements-table tr.item td:first-child {
    font-weight: bold;
    font-size: 12px;/* Hover is flipping 1.1em; */
}
.compact .elements-table tr.item td:first-child {
    font-size: 12px;/* Hover is flipping 1.1em; */
}
.elements-table th:first-child,
.elements-table td:first-child {
    padding-left: 20px;    
}
.elements-table td:first-child a {
    color: #3a4763;
}
.elements-table th:last-child,
.elements-table td:last-child {
    padding-right: 10px;
}

.elements-table tr.item:nth-last-of-type(2) td {
    border-bottom: 1px solid #DDDDDD;
}

.elements-table tr.page-row td {
    text-align: center;
    font-size: 0.8em;
}
.elements-table tr.page-row:not(:last-child) {
    display: none;
}


.elements-table th.buttons-headercell,
.elements-table td.buttons-cell {
    width: 40px;
    position: relative;
    overflow: visible;
}
.elements-table .buttons-container {
    position: absolute;
    display: block;
    white-space: nowrap;
    right: 15px;
    vertical-align: middle;
    background: white;
    top: 0px;
    bottom: 0px;
    line-height: 51px;
    height: 51px;
    -webkit-box-shadow: -5px 0px 6px -2px rgba(0,0,0,.15);
    box-shadow: -5px 0px 6px -2px rgba(0,0,0,.15);
}
.elements-table .buttons-container a {
    padding: 0px 15px;
    display: inline-block;
}
.elements-table .buttons-container a:hover {
    background: #ebecef;
    
    -webkit-box-shadow: 0px 0px 6px -2px rgba(0,0,0,.15);
    box-shadow: 0px 0px 6px -2px rgba(0,0,0,.15);
}
.elements-table .buttons-container a img {
    vertical-align: middle;
}
#scroll-to-top {
    position: fixed;
    right: 10px;
    bottom: 10px;
    background: white;
    padding: 5px;
    display: none;
    opacity: 0;

    box-shadow: 0 3px 10px 0 rgba(0,0,0,.2);
    transition: box-shadow 150ms cubic-bezier(.4,0,1,1), opacity .3s;
    -moz-transition: box-shadow 150ms cubic-bezier(.4,0,1,1), opacity .3s;
    -webkit-transition: box-shadow 150ms cubic-bezier(.4,0,1,1), opacity .3s;
}

#progressbar {
    position: absolute;
    top: 0px;
    bottom: 0px;
    
    left: 0px;
    right: 0px;    
}

#table-wrapper.compact {
    margin-top: 25px;
}

.compact .elements-table thead {
    top: -26px;
}

.compact .elements-table tr {
    height: 26px;
    font-size: 0.9em;
}
.compact .elements-table .buttons-container {    
    line-height: 25px;
    height: 25px;
}


/* When column has a fixed width and shows ellipsis, show full value when hovering */
.elements-table td[data-fixed-width="True"]:hover {
    position: relative;
    overflow: visible;
}
.elements-table td[data-fixed-width='True']:hover a {
    overflow: visible;
    z-index: 999;
    background: white;
    padding-right: 10px;
}

.elements-table td[data-fixed-width="True"]:hover a:not(:empty) {
    -webkit-box-shadow: 4px 0px 6px -2px rgba(0,0,0,0.15);
}
.elements-table a:empty {
    cursor: inherit;
}