table.dataTable
{
    clear: both;

    width: 100%;
    margin: 0 auto;

    border-spacing: 0; 
    border-collapse: separate;
}

table.dataTable thead th,
table.dataTable tfoot th
{
    font-weight: 400;
}

table.dataTable thead th,
table.dataTable thead td
{
    padding: 10px 18px;

    border-bottom: 1px solid #e0e0e0;
}

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 #e0e0e0;
}

table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc
{
    cursor: pointer;

    *cursor: hand;
}

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
{
    background-repeat: no-repeat;
    background-position: center right;
}

table.dataTable thead .sorting
{
    background: url('sort_both.png') no-repeat center right;
}

table.dataTable thead .sorting_asc
{
    background: url('sort_asc.png') no-repeat center right;
}

table.dataTable thead .sorting_desc
{
    background: url('sort_desc.png') no-repeat center right;
}

table.dataTable thead .sorting_asc_disabled
{
    background: url('sort_asc_disabled.png') no-repeat center right;
}

table.dataTable thead .sorting_desc_disabled
{
    background: url('sort_desc_disabled.png') no-repeat center right;
}

table.dataTable tbody tr
{
    background-color: #fff;
}

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 #e0e0e0;
}

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 #e0e0e0;
    border-right: 1px solid #e0e0e0;
}

table.dataTable.cell-border tbody tr th:first-child,
table.dataTable.cell-border tbody tr td:first-child
{
    border-left: 1px solid #e0e0e0;
}

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: #f6f6f6;
}

table.dataTable.hover tbody tr:hover.selected,
table.dataTable.display tbody tr:hover.selected
{
    background-color: #aab7d1;
}

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: #ececec;
}

table.dataTable.display tbody tr:hover > .sorting_3,
table.dataTable.order-column.hover tbody tr:hover > .sorting_3
{
    background-color: #efefef;
}

table.dataTable.display tbody tr:hover.selected > .sorting_1,
table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1
{
    background-color: #a2aec7;
}

table.dataTable.display tbody tr:hover.selected > .sorting_2,
table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2
{
    background-color: #a3b0c9;
}

table.dataTable.display tbody tr:hover.selected > .sorting_3,
table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3
{
    background-color: #a5b2cb;
}

table.dataTable.no-footer
{
    border-bottom: 1px solid #e0e0e0;
}

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
{
    -webkit-box-sizing: content-box;
       -moz-box-sizing: content-box;
            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: .5em;
}

.dataTables_wrapper .dataTables_info
{
    float: left;
    clear: both;

    padding-top: .755em;
}

.dataTables_wrapper .dataTables_paginate
{
    float: right;

    padding-top: .25em; 

    text-align: right;
}

.dataTables_wrapper .dataTables_paginate .paginate_button
{
    display: inline-block;

    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    min-width: 1.5em;
    margin-left: 2px;
    padding: .5em 1em;

    cursor: pointer;
    text-align: center;
    text-decoration: none !important;

    color: #333 !important;
    border: 1px solid transparent; 

    *cursor: hand;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover
{
    color: #333 !important;
    border: 1px solid #cacaca;
    background-color: white;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#dcdcdc));
    background-image: -webkit-linear-gradient(top, #fff 0%, #dcdcdc 100%);
    background-image:      -o-linear-gradient(top, #fff 0%, #dcdcdc 100%);
    background-image:         linear-gradient(to bottom, #fff 0%, #dcdcdc 100%);
    background-repeat: repeat-x;

    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFDCDCDC', GradientType=0);
}

.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;
    -webkit-box-shadow: none;
            box-shadow: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover
{
    color: white !important;
    border: 1px solid #e0e0e0;
    background-color: #585858;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#585858), to(#e3e6ea));
    background-image: -webkit-linear-gradient(top, #585858 0%, #e3e6ea 100%);
    background-image:      -o-linear-gradient(top, #585858 0%, #e3e6ea 100%);
    background-image:         linear-gradient(to bottom, #585858 0%, #e3e6ea 100%);
    background-repeat: repeat-x;

    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF585858', endColorstr='#FFE3E6EA', GradientType=0);
}

.dataTables_wrapper .dataTables_paginate .paginate_button:active
{
    outline: none;
    background-color: #2b2b2b;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#2b2b2b), to(#0c0c0c));
    background-image: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
    background-image:      -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
    background-image:         linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);
    background-repeat: repeat-x;
    /* W3C */
    -webkit-box-shadow: inset 0 0 3px #111;
            box-shadow: inset 0 0 3px #111; 

    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF2B2B2B', endColorstr='#FF0C0C0C', GradientType=0);
}

.dataTables_wrapper .dataTables_paginate .ellipsis
{
    padding: 0 1em;
}

.dataTables_wrapper .dataTables_processing
{
    font-size: 1.2em;

    position: absolute;
    top: 50%;
    left: 50%;

    width: 100%;
    height: 40px;
    margin-top: -25px;
    margin-left: -50%;
    padding-top: 20px;

    text-align: center;

    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, .9)), color-stop(75%, rgba(255, 255, 255, .9)), color-stop(100%, rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .9) 25%, rgba(255, 255, 255, .9) 75%, rgba(255, 255, 255, 0) 100%);
    background:      -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .9) 25%, rgba(255, 255, 255, .9) 75%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, .9)), color-stop(75%, rgba(255, 255, 255, .9)), to(rgba(255, 255, 255, 0)));
    background:         linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .9) 25%, rgba(255, 255, 255, .9) 75%, rgba(255, 255, 255, 0) 100%); 
    background-color: white;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_processing,
.dataTables_wrapper .dataTables_paginate
{
    color: #333;
}

.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 th,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td
{
    vertical-align: middle;
}

.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th > div.dataTables_sizing,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td > div.dataTables_sizing
{
    overflow: hidden;

    height: 0;
    margin: 0 !important;
    padding: 0 !important;
}

.dataTables_wrapper.no-footer .dataTables_scrollBody
{
    border-bottom: 1px solid #e0e0e0;
}

.dataTables_wrapper.no-footer div.dataTables_scrollHead table,
.dataTables_wrapper.no-footer div.dataTables_scrollBody table
{
    border-bottom: none;
}

.dataTables_wrapper:after
{
    display: block;
    visibility: hidden;
    clear: both;

    height: 0; 

    content: '';
}

@media (max-width: 767px)
{
    .dataTables_wrapper .dataTables_info,
    .dataTables_wrapper .dataTables_paginate
    {
        float: none;

        text-align: center;
    }
    .dataTables_wrapper .dataTables_paginate
    {
        margin-top: .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: .5em;
    }
}
