﻿/*
 * Table styles
 */
table.dataTable {
    width: 100%;
    margin: 0 auto;
    clear: both;
    border-collapse: separate;
    border-spacing: 0;
    /*
   * Header and footer styles
   */
    /*
   * Body styles
   */
}

    table.dataTable thead th,
    table.dataTable tfoot th {
        font-weight: bold;
    }

    table.dataTable thead th,
    table.dataTable thead td {
        padding: 10px 18px;
        border-bottom: 1px solid #111111;
    }

        table.dataTable thead th:active,
        table.dataTable thead td:active {
            outline: none;
        }

    table.dataTable tfoot th,
    table.dataTable tfoot td {
        padding: 10px 18px 6px 18px;
        border-top: 1px solid #111111;
    }

    table.dataTable thead .sorting,
    table.dataTable thead .sorting_asc,
    table.dataTable thead .sorting_desc,
    table.dataTable thead .sorting_asc_disabled,
    table.dataTable thead .sorting_desc_disabled {
        cursor: pointer;
        *cursor: hand;
        background-repeat: no-repeat;
        background-position: center right;
    }

    table.dataTable thead .sorting {
        background-image: url("../images/sort_both.png");
    }

    table.dataTable thead .sorting_asc {
        background-image: url("../images/sort_asc.png");
    }

    table.dataTable thead .sorting_desc {
        background-image: url("../images/sort_desc.png");
    }

    table.dataTable thead .sorting_asc_disabled {
        background-image: url("../images/sort_asc_disabled.png");
    }

    table.dataTable thead .sorting_desc_disabled {
        background-image: url("../images/sort_desc_disabled.png");
    }

    table.dataTable tbody tr {
        background-color: white;
    }

        table.dataTable tbody tr.selected {
            background-color: #b0bed9;
        }

    table.dataTable tbody th,
    table.dataTable tbody td {
        padding: 8px 10px;
    }

    table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td {
        border-top: 1px solid #dddddd;
    }

    table.dataTable.row-border tbody tr:first-child th,
    table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th,
    table.dataTable.display tbody tr:first-child td {
        border-top: none;
    }

    table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td {
        border-top: 1px solid #dddddd;
        border-right: 1px solid #dddddd;
    }

    table.dataTable.cell-border tbody tr th:first-child,
    table.dataTable.cell-border tbody tr td:first-child {
        border-left: 1px solid #dddddd;
    }

    table.dataTable.cell-border tbody tr:first-child th,
    table.dataTable.cell-border tbody tr:first-child td {
        border-top: none;
    }

    table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd {
        background-color: #f9f9f9;
    }

        table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected {
            background-color: #abb9d3;
        }

    table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover {
        background-color: whitesmoke;
    }

        table.dataTable.hover tbody tr:hover.selected, table.dataTable.display tbody tr:hover.selected {
            background-color: #a9b7d1;
        }

    table.dataTable.order-column tbody tr > .sorting_1,
    table.dataTable.order-column tbody tr > .sorting_2,
    table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1,
    table.dataTable.display tbody tr > .sorting_2,
    table.dataTable.display tbody tr > .sorting_3 {
        background-color: #f9f9f9;
    }

    table.dataTable.order-column tbody tr.selected > .sorting_1,
    table.dataTable.order-column tbody tr.selected > .sorting_2,
    table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1,
    table.dataTable.display tbody tr.selected > .sorting_2,
    table.dataTable.display tbody tr.selected > .sorting_3 {
        background-color: #acbad4;
    }

    table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 {
        background-color: #f1f1f1;
    }

    table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 {
        background-color: #f3f3f3;
    }

    table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 {
        background-color: whitesmoke;
    }

    table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 {
        background-color: #a6b3cd;
    }

    table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 {
        background-color: #a7b5ce;
    }

    table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 {
        background-color: #a9b6d0;
    }

    table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 {
        background-color: #f9f9f9;
    }

    table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 {
        background-color: #fbfbfb;
    }

    table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 {
        background-color: #fdfdfd;
    }

    table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 {
        background-color: #acbad4;
    }

    table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 {
        background-color: #adbbd6;
    }

    table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 {
        background-color: #afbdd8;
    }

    table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
        background-color: #eaeaea;
    }

    table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
        background-color: #ebebeb;
    }

    table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
        background-color: #eeeeee;
    }

    table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
        background-color: #a1aec7;
    }

    table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
        background-color: #a2afc8;
    }

    table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
        background-color: #a4b2cb;
    }

    table.dataTable.no-footer {
        border-bottom: 1px solid #111111;
    }

    table.dataTable.nowrap th, table.dataTable.nowrap td {
        white-space: nowrap;
    }

    table.dataTable.compact thead th,
    table.dataTable.compact thead td {
        padding: 4px 17px 4px 4px;
    }

    table.dataTable.compact tfoot th,
    table.dataTable.compact tfoot td {
        padding: 4px;
    }

    table.dataTable.compact tbody th,
    table.dataTable.compact tbody td {
        padding: 4px;
    }

    table.dataTable th.dt-left,
    table.dataTable td.dt-left {
        text-align: left;
    }

    table.dataTable th.dt-center,
    table.dataTable td.dt-center,
    table.dataTable td.dataTables_empty {
        text-align: center;
    }

    table.dataTable th.dt-right,
    table.dataTable td.dt-right {
        text-align: right;
    }

    table.dataTable th.dt-justify,
    table.dataTable td.dt-justify {
        text-align: justify;
    }

    table.dataTable th.dt-nowrap,
    table.dataTable td.dt-nowrap {
        white-space: nowrap;
    }

    table.dataTable thead th.dt-head-left,
    table.dataTable thead td.dt-head-left,
    table.dataTable tfoot th.dt-head-left,
    table.dataTable tfoot td.dt-head-left {
        text-align: left;
    }

    table.dataTable thead th.dt-head-center,
    table.dataTable thead td.dt-head-center,
    table.dataTable tfoot th.dt-head-center,
    table.dataTable tfoot td.dt-head-center {
        text-align: center;
    }

    table.dataTable thead th.dt-head-right,
    table.dataTable thead td.dt-head-right,
    table.dataTable tfoot th.dt-head-right,
    table.dataTable tfoot td.dt-head-right {
        text-align: right;
    }

    table.dataTable thead th.dt-head-justify,
    table.dataTable thead td.dt-head-justify,
    table.dataTable tfoot th.dt-head-justify,
    table.dataTable tfoot td.dt-head-justify {
        text-align: justify;
    }

    table.dataTable thead th.dt-head-nowrap,
    table.dataTable thead td.dt-head-nowrap,
    table.dataTable tfoot th.dt-head-nowrap,
    table.dataTable tfoot td.dt-head-nowrap {
        white-space: nowrap;
    }

    table.dataTable tbody th.dt-body-left,
    table.dataTable tbody td.dt-body-left {
        text-align: left;
    }

    table.dataTable tbody th.dt-body-center,
    table.dataTable tbody td.dt-body-center {
        text-align: center;
    }

    table.dataTable tbody th.dt-body-right,
    table.dataTable tbody td.dt-body-right {
        text-align: right;
    }

    table.dataTable tbody th.dt-body-justify,
    table.dataTable tbody td.dt-body-justify {
        text-align: justify;
    }

    table.dataTable tbody th.dt-body-nowrap,
    table.dataTable tbody td.dt-body-nowrap {
        white-space: nowrap;
    }

    table.dataTable,
    table.dataTable th,
    table.dataTable td {
        box-sizing: content-box;
    }

/*
 * Control feature layout
 */
.dataTables_wrapper {
    position: relative;
    clear: both;
    *zoom: 1;
    zoom: 1;
}

    .dataTables_wrapper .dataTables_length {
        float: left;
    }

    .dataTables_wrapper .dataTables_filter {
        float: right;
        text-align: right;
    }

        .dataTables_wrapper .dataTables_filter input {
            margin-left: 0.5em;
        }

    .dataTables_wrapper .dataTables_info {
        clear: both;
        float: left;
        padding-top: 0.755em;
    }

    .dataTables_wrapper .dataTables_paginate {
        float: right;
        text-align: right;
        padding-top: 0.25em;
    }

        .dataTables_wrapper .dataTables_paginate .paginate_button {
            box-sizing: border-box;
            display: inline-block;
            min-width: 1.5em;
            padding: 0.5em 1em;
            margin-left: 2px;
            text-align: center;
            text-decoration: none !important;
            cursor: pointer;
            *cursor: hand;
            color: #333333 !important;
            border: 1px solid transparent;
            border-radius: 2px;
        }

            .dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
                color: #333333 !important;
                border: 1px solid #979797;
                background-color: white;
                background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, gainsboro));
                /* Chrome,Safari4+ */
                background: -webkit-linear-gradient(top, white 0%, gainsboro 100%);
                /* Chrome10+,Safari5.1+ */
                background: -moz-linear-gradient(top, white 0%, gainsboro 100%);
                /* FF3.6+ */
                background: -ms-linear-gradient(top, white 0%, gainsboro 100%);
                /* IE10+ */
                background: -o-linear-gradient(top, white 0%, gainsboro 100%);
                /* Opera 11.10+ */
                background: linear-gradient(to bottom, white 0%, gainsboro 100%);
                /* W3C */
            }

            .dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
                cursor: default;
                color: #666 !important;
                border: 1px solid transparent;
                background: transparent;
                box-shadow: none;
            }

            .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
                color: white !important;
                border: 1px solid #111111;
                background-color: #585858;
                background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111111));
                /* Chrome,Safari4+ */
                background: -webkit-linear-gradient(top, #585858 0%, #111111 100%);
                /* Chrome10+,Safari5.1+ */
                background: -moz-linear-gradient(top, #585858 0%, #111111 100%);
                /* FF3.6+ */
                background: -ms-linear-gradient(top, #585858 0%, #111111 100%);
                /* IE10+ */
                background: -o-linear-gradient(top, #585858 0%, #111111 100%);
                /* Opera 11.10+ */
                background: linear-gradient(to bottom, #585858 0%, #111111 100%);
                /* W3C */
            }

            .dataTables_wrapper .dataTables_paginate .paginate_button:active {
                outline: none;
                background-color: #2b2b2b;
                background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c));
                /* Chrome,Safari4+ */
                background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
                /* Chrome10+,Safari5.1+ */
                background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
                /* FF3.6+ */
                background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
                /* IE10+ */
                background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
                /* Opera 11.10+ */
                background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);
                /* W3C */
                box-shadow: inset 0 0 3px #111;
            }

        .dataTables_wrapper .dataTables_paginate .ellipsis {
            padding: 0 1em;
        }

    .dataTables_wrapper .dataTables_processing {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 40px;
        margin-left: -50%;
        margin-top: -25px;
        padding-top: 20px;
        text-align: center;
        font-size: 1.2em;
        background-color: white;
        background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0)));
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
        background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
        background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
        background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
        background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
    }

    .dataTables_wrapper .dataTables_length,
    .dataTables_wrapper .dataTables_filter,
    .dataTables_wrapper .dataTables_info,
    .dataTables_wrapper .dataTables_processing,
    .dataTables_wrapper .dataTables_paginate {
        color: #333333;
    }

    .dataTables_wrapper .dataTables_scroll {
        clear: both;
    }

        .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
            *margin-top: -1px;
            -webkit-overflow-scrolling: touch;
        }

            .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {
                vertical-align: middle;
            }

                .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th > div.dataTables_sizing,
                .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td > div.dataTables_sizing, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th > div.dataTables_sizing,
                .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td > div.dataTables_sizing {
                    height: 0;
                    overflow: hidden;
                    margin: 0 !important;
                    padding: 0 !important;
                }

    .dataTables_wrapper.no-footer .dataTables_scrollBody {
        border-bottom: 1px solid #111111;
    }

    .dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,
    .dataTables_wrapper.no-footer div.dataTables_scrollBody > table {
        border-bottom: none;
    }

    .dataTables_wrapper:after {
        visibility: hidden;
        display: block;
        content: "";
        clear: both;
        height: 0;
    }

@media screen and (max-width: 767px) {
    .dataTables_wrapper .dataTables_info,
    .dataTables_wrapper .dataTables_paginate {
        float: none;
        text-align: center;
    }

    .dataTables_wrapper .dataTables_paginate {
        margin-top: 0.5em;
    }
}

@media screen and (max-width: 640px) {
    .dataTables_wrapper .dataTables_length,
    .dataTables_wrapper .dataTables_filter {
        float: none;
        text-align: center;
    }

    .dataTables_wrapper .dataTables_filter {
        margin-top: 0.5em;
    }
}

//
// Colour customisation
//
// `!default` allows overriding variables that are defined before @import
//

// Border between the header (and footer) and the table body
$table-header-border: 1px solid #111111 !default;

// Border of rows / cells
$table-body-border: 1px solid #dddddd !default;

// Row background colour (hover, striping etc are all based on this colour and
// calculated automatically)
$table-row-background: #ffffff !default;

// Row colour, when selected (tr.selected)
$table-row-selected: #b0bed9 !default;

// Text colour of the interaction control elements (info, filter, paging etc)
$table-control-color: #333333 !default;

// Highlight colour of the paging button for the current page
$table-paging-button-active: #dcdcdc !default;

// Hover colour of paging buttons on mouse over
$table-paging-button-hover: #111111 !default;

// Colour to use when shading
$table-shade: black !default;

// jQuery UI stylesheet imports this one - there are just two places where we
// don't want DataTabels default styles assigned for jQuery UI, so rather than
// duplicating the whole file, this is the best option
$jqueryui: false !default;


//
// Functions / mixins
//
@function tint( $color, $percent ) {
    @return mix(white, $color, $percent);
}

@function shade( $color, $percent ) {
    @return mix($table-shade, $color, $percent);
}

@mixin gradient( $from, $to ) {
    background-color: $from;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,$from), color-stop(100%,$to)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, $from 0%, $to 100%); /* Chrome10+,Safari5.1+ */
    background: -moz-linear-gradient(top, $from 0%, $to 100%); /* FF3.6+ */
    background: -ms-linear-gradient(top, $from 0%, $to 100%); /* IE10+ */
    background: -o-linear-gradient(top, $from 0%, $to 100%); /* Opera 11.10+ */
    background: linear-gradient(to bottom, $from 0%, $to 100%); /* W3C */
}

/*
 * Table styles
 */
table.dataTable {
    width: 100%;
    margin: 0 auto;
    clear: both;
    border-collapse: separate;
    border-spacing: 0;
    /*
     * Header and footer styles
     */
    thead, tfoot

{
    th

{
    font-weight: bold;
}

}

thead th,
thead td {
    padding: 10px 18px;

    @if not $jqueryui {
        // jQuery UI defines its own border border-bottom: $table-header-border;
    }

    &:active

{
    outline: none;
}

}

tfoot th,
tfoot td {
    padding: 10px 18px 6px 18px;

    @if not $jqueryui {
        // jQuery UI defines its own border border-top: $table-header-border;
    }
}

// Sorting
@if not $jqueryui {
    // jQuery UI defines its own sort icons thead

{
    .sorting, .sorting_asc, .sorting_desc, .sorting_asc_disabled, .sorting_desc_disabled

{
    cursor: pointer;
    *cursor: hand;
    background-repeat: no-repeat;
    background-position: center right;
}

.sorting {
    background-image: url('../images/sort_both.png');
}

.sorting_asc {
    background-image: url('../images/sort_asc.png');
}

.sorting_desc {
    background-image: url('../images/sort_desc.png');
}

.sorting_asc_disabled {
    background-image: url('../images/sort_asc_disabled.png');
}

.sorting_desc_disabled {
    background-image: url('../images/sort_desc_disabled.png');
}

}
}


/*
     * Body styles
     */
tbody {
    tr

{
    background-color: $table-row-background;
    &.selected

{
    background-color: $table-row-selected;
}

}

th,
td {
    padding: 8px 10px;
}

}


// Stripe classes - add "row-border" class to the table to activate
&.row-border tbody,
&.display tbody {
    th, td

{
    border-top: $table-body-border;
}

tr:first-child th,
tr:first-child td {
    border-top: none;
}

}


// Stripe classes - add "cell-border" class to the table to activate
&.cell-border tbody {
    th, td

{
    border-top: $table-body-border;
    border-right: $table-body-border;
}

tr th:first-child,
tr td:first-child {
    border-left: $table-body-border;
}

tr:first-child th,
tr:first-child td {
    border-top: none;
}

}


// Stripe classes - add "stripe" class to the table to activate
&.stripe tbody,
&.display tbody {
    tr .odd

{
    background-color: shade($table-row-background, 2.35%);
    // shade by f9 &.selected

{
    background-color: shade($table-row-selected, 2.35%);
}

}
}


// Hover classes - add "hover" class to the table to activate
&.hover tbody,
&.display tbody {
    tr: hover

{
    background-color: shade($table-row-background, 3.6%);
    // shade by f5 &.selected

{
    background-color: shade($table-row-selected, 3.6%);
}

}
}


// Sort column highlighting - add "order-column" class to the table to activate
&.order-column,
&.display {
    tbody

{
    tr >.sorting_1, tr>.sorting_2, tr>.sorting_3

{
    background-color: shade($table-row-background, 2%);
    // shade by fa
}

tr.selected > .sorting_1,
tr.selected > .sorting_2,
tr.selected > .sorting_3 {
    background-color: shade($table-row-selected, 2%);
}

}
}

&.display tbody,
&.order-column.stripe tbody {
    tr .odd

{
    >.sorting_1

{
    background-color: shade($table-row-background, 5.4%);
}

// shade by f1 > .sorting_2 {
    background-color: shade($table-row-background, 4.7%);
}

// shade by f3 > .sorting_3 {
    background-color: shade($table-row-background, 3.9%);
}

// shade by f5

&.selected {
    >.sorting_1

{
    background-color: shade($table-row-selected, 5.4%);
}

> .sorting_2 {
    background-color: shade($table-row-selected, 4.7%);
}

> .sorting_3 {
    background-color: shade($table-row-selected, 3.9%);
}

}
}

tr.even {
    >.sorting_1

{
    background-color: shade($table-row-background, 2%);
}

// shade by fa > .sorting_2 {
    background-color: shade($table-row-background, 1.2%);
}

// shade by fc > .sorting_3 {
    background-color: shade($table-row-background, 0.4%);
}

// shade by fe

&.selected {
    >.sorting_1

{
    background-color: shade($table-row-selected, 2%);
}

> .sorting_2 {
    background-color: shade($table-row-selected, 1.2%);
}

> .sorting_3 {
    background-color: shade($table-row-selected, 0.4%);
}

}
}
}

&.display tbody,
&.order-column.hover tbody {
    tr: hover

{
    >.sorting_1

{
    background-color: shade($table-row-background, 8.2%);
}

// shade by ea > .sorting_2 {
    background-color: shade($table-row-background, 7.5%);
}

// shade by ec > .sorting_3 {
    background-color: shade($table-row-background, 6.3%);
}

// shade by ef

&.selected {
    >.sorting_1

{
    background-color: shade($table-row-selected, 8.2%);
}

> .sorting_2 {
    background-color: shade($table-row-selected, 7.5%);
}

> .sorting_3 {
    background-color: shade($table-row-selected, 6.3%);
}

}
}
}

&.no-footer {
    border-bottom: $table-header-border;
}

&.nowrap {
    th, td

{
    white-space: nowrap;
}

}

&.compact {
    thead th, thead td

{
    padding: 4px 17px 4px 4px;
}

tfoot th,
tfoot td {
    padding: 4px;
}

tbody th,
tbody td {
    padding: 4px;
}

}


// Typography
th.dt-left,
td.dt-left {
    text-align: left;
}

th.dt-center,
td.dt-center,
td.dataTables_empty {
    text-align: center;
}

th.dt-right,
td.dt-right {
    text-align: right;
}

th.dt-justify,
td.dt-justify {
    text-align: justify;
}

th.dt-nowrap,
td.dt-nowrap {
    white-space: nowrap;
}

thead,
tfoot {
    th .dt-head-left, td.dt-head-left

{
    text-align: left;
}

th.dt-head-center,
td.dt-head-center {
    text-align: center;
}

th.dt-head-right,
td.dt-head-right {
    text-align: right;
}

th.dt-head-justify,
td.dt-head-justify {
    text-align: justify;
}

th.dt-head-nowrap,
td.dt-head-nowrap {
    white-space: nowrap;
}

}

tbody {
    th .dt-body-left, td.dt-body-left

{
    text-align: left;
}

th.dt-body-center,
td.dt-body-center {
    text-align: center;
}

th.dt-body-right,
td.dt-body-right {
    text-align: right;
}

th.dt-body-justify,
td.dt-body-justify {
    text-align: justify;
}

th.dt-body-nowrap,
td.dt-body-nowrap {
    white-space: nowrap;
}

}
}

// Its not uncommon to use * {
    border-box
}

now, but it messes up the column width
// calculations, so use content-box for the table and cells
table.dataTable,
table.dataTable th,
table.dataTable td {
    box-sizing: content-box;
}


/*
 * Control feature layout
 */
.dataTables_wrapper {
    position: relative;
    clear: both;
    *zoom: 1;
    // Page length options .dataTables_length

{
    float: left;
}

// Filtering input
.dataTables_filter {
    float: right;
    text-align: right;
    input

{
    margin-left: 0.5em;
}

}

// Table info
.dataTables_info {
    clear: both;
    float: left;
    padding-top: 0.755em;
}

// Paging
.dataTables_paginate {
    float: right;
    text-align: right;
    padding-top: 0.25em;
    .paginate_button

{
    box-sizing: border-box;
    display: inline-block;
    min-width: 1.5em;
    padding: 0.5em 1em;
    margin-left: 2px;
    text-align: center;
    text-decoration: none !important;
    cursor: pointer;
    *cursor: hand;
    color: $table-control-color !important;
    border: 1px solid transparent;
    border-radius: 2px;
    &.current, &.current:hover

{
    color: $table-control-color !important;
    border: 1px solid darken( $table-paging-button-active, 27% );
    @include gradient( lighten($table-paging-button-active, 28%), $table-paging-button-active );
}

&.disabled,
&.disabled:hover,
&.disabled:active {
    cursor: default;
    color: #666 !important;
    border: 1px solid transparent;
    background: transparent;
    box-shadow: none;
}

&:hover {
    color: white !important;
    border: 1px solid $table-paging-button-hover;
    @include gradient( lighten($table-paging-button-hover, 28%), $table-paging-button-hover );
}

&:active {
    outline: none;
    @include gradient( lighten($table-paging-button-hover, 10%), darken($table-paging-button-hover, 2%) );
    box-shadow: inset 0 0 3px #111;
}

}

.ellipsis {
    padding: 0 1em;
}

}

// Processing
.dataTables_processing {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 40px;
    margin-left: -50%;
    margin-top: -25px;
    padding-top: 20px;
    text-align: center;
    font-size: 1.2em;
    background-color: white;
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba($table-row-background, 0)), color-stop(25%,rgba($table-row-background, 0.9)), color-stop(75%,rgba($table-row-background, 0.9)), color-stop(100%,rgba(255,255,255,0)));
    background: -webkit-linear-gradient(left, rgba($table-row-background, 0) 0%, rgba($table-row-background, 0.9) 25%, rgba($table-row-background, 0.9) 75%, rgba($table-row-background, 0) 100%);
    background: -moz-linear-gradient(left, rgba($table-row-background, 0) 0%, rgba($table-row-background, 0.9) 25%, rgba($table-row-background, 0.9) 75%, rgba($table-row-background, 0) 100%);
    background: -ms-linear-gradient(left, rgba($table-row-background, 0) 0%, rgba($table-row-background, 0.9) 25%, rgba($table-row-background, 0.9) 75%, rgba($table-row-background, 0) 100%);
    background: -o-linear-gradient(left, rgba($table-row-background, 0) 0%, rgba($table-row-background, 0.9) 25%, rgba($table-row-background, 0.9) 75%, rgba($table-row-background, 0) 100%);
    background: linear-gradient(to right, rgba($table-row-background, 0) 0%, rgba($table-row-background, 0.9) 25%, rgba($table-row-background, 0.9) 75%, rgba($table-row-background, 0) 100%);
}

.dataTables_length,
.dataTables_filter,
.dataTables_info,
.dataTables_processing,
.dataTables_paginate {
    color: $table-control-color;
}

// Scrolling
.dataTables_scroll {
    clear: both;
    div .dataTables_scrollBody

{
    *margin-top: -1px;
    -webkit-overflow-scrolling: touch;
    > table > thead > tr, > table > tbody > tr

{
    > th, > td

{
    // Setting v-align baseline can cause the headers to be visible vertical-align: middle;
}

> th > div.dataTables_sizing,
> td > div.dataTables_sizing {
    // Hide the element used to wrap the content in the header for // the body scrolling table height: 0;
    overflow: hidden;
    margin: 0 !important;
    padding: 0 !important;
}

}
}
}

&.no-footer {
    .dataTables_scrollBody

{
    border-bottom: $table-header-border;
}

div.dataTables_scrollHead table.dataTable,
div.dataTables_scrollBody > table {
    border-bottom: none;
}

}

// Self clear the wrapper
&:after {
    visibility: hidden;
    display: block;
    content: "";
    clear: both;
    height: 0;
}

zoom: 1; // Poor old IE
}


// Collapse the two column display of the control elements when the screen is
// small - the info and paging control get collapsed first as they are wider,
// and then the length and filter controls
@media screen and (max-width: 767px) {
    .dataTables_wrapper

{
    .dataTables_info, .dataTables_paginate

{
    float: none;
    text-align: center;
}

.dataTables_paginate {
    margin-top: 0.5em;
}

}
}

@media screen and (max-width: 640px) {
    .dataTables_wrapper {
        .dataTables_length, .dataTables_filter

{
    float: none;
    text-align: center;
}

.dataTables_filter {
    margin-top: 0.5em;
}

}
}

.my-custom-scrollbar {
    position: relative;
    height: 400px;
    overflow: auto; 
}

.table-wrapper-scroll-y {
    display: block;
}