/* tables
----------------------------------------------------------*/
table {
    border-collapse: collapse;
    border-spacing: 0;
    /* margin-top: 0.75em; */
    border: 0 none;
}

td, th {
    padding: 0.5em 1em 0.5em 0em;
    /* margin: 0.3em 0.3em 0.3em 0; */
    vertical-align: top;
}

.noPadding td {
    padding: 0;
}

tr.baseline td {
    vertical-align: baseline !important;
}

td.groupHeader, th.groupHeader {
    font-weight: bold;
    font-size: 120%;
    page-break-before: always;
    padding-top: 2em;
    border-top: none;
}
 
td, tbody th {
    border-top: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
}

th.super {
    border-bottom: 1px solid #CCCCCC;
    white-space: nowrap
}

.noRules-above td, td.noRules-above, .noRules td, td.noRules {
    border-top: hidden;
}

.noRules-below td, td.noRules-below, .noRules td, td.noRules {
    border-bottom: hidden;
}



.footer td, td.footer {
    border-bottom: none;
}

tr.totals td {
    border-top-width: 4px;
    font-weight: bold;
}

.secondary {
    opacity: 0.7;
}

th {
    text-align: left;
    padding-left: 0;
    /*border-bottom: 2px solid grey;*/
}

th.groupHeading {
    vertical-align: bottom;
    font-weight: normal;
    border-bottom: 1px solid #DDD;
}

th.angled {
    position: relative;
    min-width: 1.5em;
    height: 5em;
}

th.angled span {
    position: absolute;
    top: 0;
    white-space: nowrap;
    -webkit-transform: translate(0, 4em) rotate(-55deg) ;
    -webkit-transform-origin: top left;
}

tr.headers, thead {
    border-bottom: 2px solid grey;
}

td.nobreak, th.nobreak {
    white-space: nowrap;
}

td.vertDivision, th.vertDivision {
    padding: 0;
    min-width: 0.5em;
    border-right: 1px dotted #AAAAAA;
}

td.vertDivision.gap, th.vertDivision.gap {
    border: none;
}

.vertDivision + td, .vertDivision + th {
    padding-left: 1em;
}

td.padding, th.padding {
    border: none;
}


th a {
    display: block;
    position: relative;
}

    th a:link, th a:visited, th a:active, th a:hover {
        color: #333;
        font-weight: 600;
        text-decoration: none;
        padding: 0;
    }

    th a:hover {
        color: #000;
    }

th.asc a, th.desc a {
    margin-right: .75em;
}

    th.asc a:after, th.desc a:after {
        display: block;
        position: absolute;
        right: 0em;
        top: 0;
        font-size: 0.75em;
    }

    th.asc a:after {
        content: 'Ã¢â€“Â²';
    }

    th.desc a:after {
        content: 'Ã¢â€“Â¼';
    }


td > table {
    position: relative;
    top: -0.55em;
}

td.actionLinks {
    white-space: nowrap;
}

tr.pager td {
    padding: 0 0.25em 0 0;
}

td.rightAligned, th.rightAligned {
    text-align: right;
    width: 3em;
}

.hyper-row:hover {
    background-color: hsl(60, 100%, 90%);
    cursor: pointer;
}

.hyper-row:hover .label-cell {
    background-color: white;
}

td:first-child, th:first-child, td.label-cell + td {
    padding-left: 0;
}