div.dataTables_length label {
    font-weight: normal;
    text-align: left;
    white-space: nowrap;
}

div.dataTables_length select {
    display: inline-block;
    width: 75px;
}

div.dataTables_filter { text-align: right; }

div.dataTables_filter label {
    font-weight: normal;
    text-align: left;
    white-space: nowrap;
}

div.dataTables_filter input {
    display: inline-block;
    margin-left: 0.5em;
    width: auto;
}

div.dataTables_info {
    padding-top: 8px;
    white-space: nowrap;
}

div.dataTables_paginate {
    margin: 0;
    text-align: right;
    white-space: nowrap;
}

div.dataTables_paginate ul.pagination {
    margin: 2px 0;
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
    div.dataTables_wrapper > div.row > div,
    div.dataTables_length,
    div.dataTables_filter,
    div.dataTables_info,
    div.dataTables_paginate { text-align: center; }

    div.DTTT { margin-bottom: 0.5em; }
}

table.dataTable td,
table.dataTable th {
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

table.dataTable {
    clear: both;
    margin-bottom: 6px !important;
    margin-top: 6px !important;
    max-width: none !important;
}

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;
    position: relative;
}

table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after {
    display: block;
    font-family: 'Glyphicons Halflings';
    opacity: 0.5;
    position: absolute;
    right: 8px;
    top: 8px;
}

table.dataTable thead .sorting:after {
    content: "\e150"; /* sort */
    opacity: 0.2;
}

table.dataTable thead .sorting_asc:after {
    content: "\e155"; /* sort-by-attributes */
}

table.dataTable thead .sorting_desc:after {
    content: "\e156"; /* sort-by-attributes-alt */
}

div.dataTables_scrollBody table.dataTable thead .sorting:after,
div.dataTables_scrollBody table.dataTable thead .sorting_asc:after,
div.dataTables_scrollBody table.dataTable thead .sorting_desc:after { display: none; }

table.dataTable thead .sorting_asc_disabled:after,
table.dataTable thead .sorting_desc_disabled:after { color: #eee; }

table.dataTable thead > tr > th { padding-right: 30px; }

table.dataTable th:active { outline: none; }

/* Condensed */

table.dataTable.table-condensed thead > tr > th { padding-right: 20px; }

table.dataTable.table-condensed thead .sorting:after,
table.dataTable.table-condensed thead .sorting_asc:after,
table.dataTable.table-condensed thead .sorting_desc:after {
    right: 6px;
    top: 6px;
}

/* Scrolling */

div.dataTables_scrollHead table {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    margin-bottom: 0 !important;
}

div.dataTables_scrollHead table thead tr:last-child th:first-child,
div.dataTables_scrollHead table thead tr:last-child td:first-child {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

div.dataTables_scrollBody table {
    border-top: none;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
}

div.dataTables_scrollBody tbody tr:first-child th,
div.dataTables_scrollBody tbody tr:first-child td { border-top: none; }

div.dataTables_scrollFoot table {
    border-top: none;
    margin-top: 0 !important;
}

/* Frustratingly the border-collapse:collapse used by Bootstrap makes the column
   width calculations when using scrolling impossible to align columns. We have
   to use separate
 */

table.table-bordered.dataTable { border-collapse: separate !important; }

table.table-bordered thead th,
table.table-bordered thead td {
    border-left-width: 0;
    border-top-width: 0;
}

table.table-bordered tbody th,
table.table-bordered tbody td {
    border-bottom-width: 0;
    border-left-width: 0;
}

table.table-bordered tfoot th,
table.table-bordered tfoot td {
    border-bottom-width: 0;
    border-left-width: 0;
}

table.table-bordered th:last-child,
table.table-bordered td:last-child { border-right-width: 0; }

div.dataTables_scrollHead table.table-bordered { border-bottom-width: 0; }

/*
 * TableTools styles
 */

.table.dataTable tbody tr.active td,
.table.dataTable tbody tr.active th {
    background-color: #08C;
    color: white;
}

.table.dataTable tbody tr.active:hover td,
.table.dataTable tbody tr.active:hover th { background-color: #0075b0 !important; }

.table.dataTable tbody tr.active th > a,
.table.dataTable tbody tr.active td > a { color: white; }

.table-striped.dataTable tbody tr.active:nth-child(odd) td,
.table-striped.dataTable tbody tr.active:nth-child(odd) th { background-color: #017ebc; }

table.DTTT_selectable tbody tr { cursor: pointer; }

div.DTTT .btn:hover { text-decoration: none !important; }

ul.DTTT_dropdown.dropdown-menu { z-index: 2003; }

ul.DTTT_dropdown.dropdown-menu a {
    color: #333 !important; /* needed only when demo_page.css is included */
}

ul.DTTT_dropdown.dropdown-menu li { position: relative; }

ul.DTTT_dropdown.dropdown-menu li:hover a {
    background-color: #0088cc;
    color: white !important;
}

div.DTTT_collection_background { z-index: 2002; }

/* TableTools information display */

div.DTTT_print_info {
    -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.5);
    background-color: white;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    box-shadow: 0 3px 7px rgba(0, 0, 0, 0.5);
    color: #333;
    height: 150px;
    left: 50%;
    margin-left: -200px;
    margin-top: -75px;
    opacity: 0.95;

    padding: 10px 30px;
    position: fixed;
    text-align: center;

    top: 50%;
    width: 400px;
}

div.DTTT_print_info h6 {
    font-size: 28px;
    font-weight: normal;
    line-height: 28px;
    margin: 1em;
}

div.DTTT_print_info p {
    font-size: 14px;
    line-height: 20px;
}

div.dataTables_processing {
    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%);
    background-color: white;
    font-size: 1.2em;
    height: 60px;
    left: 50%;
    margin-left: -50%;
    margin-top: -25px;
    padding-bottom: 20px;
    padding-top: 20px;
    position: absolute;
    text-align: center;
    top: 50%;
    width: 100%;
}

/*
 * FixedColumns styles
 */

div.DTFC_LeftHeadWrapper table,
div.DTFC_LeftFootWrapper table,
div.DTFC_RightHeadWrapper table,
div.DTFC_RightFootWrapper table,
table.DTFC_Cloned tr.even {
    background-color: white;
    margin-bottom: 0;
}

div.DTFC_RightHeadWrapper table,
div.DTFC_LeftHeadWrapper table {
    border-bottom: none !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-top-right-radius: 0 !important;
    margin-bottom: 0 !important;
}

div.DTFC_RightHeadWrapper table thead tr:last-child th:first-child,
div.DTFC_RightHeadWrapper table thead tr:last-child td:first-child,
div.DTFC_LeftHeadWrapper table thead tr:last-child th:first-child,
div.DTFC_LeftHeadWrapper table thead tr:last-child td:first-child {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

div.DTFC_RightBodyWrapper table,
div.DTFC_LeftBodyWrapper table {
    border-top: none;
    margin: 0 !important;
}

div.DTFC_RightBodyWrapper tbody tr:first-child th,
div.DTFC_RightBodyWrapper tbody tr:first-child td,
div.DTFC_LeftBodyWrapper tbody tr:first-child th,
div.DTFC_LeftBodyWrapper tbody tr:first-child td { border-top: none; }

div.DTFC_RightFootWrapper table,
div.DTFC_LeftFootWrapper table {
    border-top: none;
    margin-top: 0 !important;
}

div.DTFC_LeftBodyWrapper table.dataTable thead .sorting:after,
div.DTFC_LeftBodyWrapper table.dataTable thead .sorting_asc:after,
div.DTFC_LeftBodyWrapper table.dataTable thead .sorting_desc:after,
div.DTFC_RightBodyWrapper table.dataTable thead .sorting:after,
div.DTFC_RightBodyWrapper table.dataTable thead .sorting_asc:after,
div.DTFC_RightBodyWrapper table.dataTable thead .sorting_desc:after { display: none; }

/*
 * FixedHeader styles
 */

div.FixedHeader_Cloned table { margin: 0 !important }