.hub-datatable div.dt-buttons {
    margin-bottom: 0.5em;
}
.hub-datatable label {
    margin: 0;
}
.hub-datatable div.dataTables_scroll {
    margin-bottom: .5em;
}
.hub-datatable div.dataTables_scrollHead table {
    margin: 0!important;
}
.hub-datatable table td,
.hub-datatable table th {
    font-size: .875rem;
    vertical-align: middle;
}

.hub-datatable-nowrap table td,
.hub-datatable-nowrap table th {
    white-space: nowrap;
}

.hub-datatable table tbody tr:last-child td {
    border-bottom: 1px solid #dee2e6;
}
.hub-datatable table th {
    text-transform: uppercase;
}
.hub-datatable .dataTables_paginate .paginate_button {
    padding: 0.25rem 0.5rem;
    font-size: .875rem;
    line-height: 1.5;
    border-radius: 0.2rem;
    color: #6c757d!important;
}
.hub-datatable .dataTables_paginate .paginate_button.current {
    background: #f2f2f2!important;
    border-color: #dde2e5!important;
}
.hub-datatable .pull-left {
    float: left;
}

.hub-datatable div.dataTables_wrapper div.dataTables_info {
    color: #6c757d!important;
    font-size: 80%;
    font-weight: 400;
    padding: 0;
    margin: 0 0 0.5em 0;
}
.hub-datatable div.dataTables_filter {
    color: #6c757d!important;
    font-size: 80%;
    font-weight: 400;
}
.hub-datatable div.dataTables_wrapper div.dataTables_paginate {
    margin: 0;
}

.hub-datatable div.dtsb-searchBuilder {
    background: #f8f9fa;
    border-radius: .2rem;
    border: 1px solid #dee2e6;
    padding: 1em;
    margin: 0.5em 0;
}

.hub-datatable div.dataTables_wrapper div.dataTables_info {
    padding-top: 0;
}

.hub-datatable div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select,
.hub-datatable div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select,
.hub-datatable div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input,
.hub-datatable div.dtsb-searchBuilder button.dtsb-button,
.hub-datatable div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-logic,
.hub-datatable div.dtsb-searchBuilder div.dtsb-group div.dtsb-logicContainer button.dtsb-clearGroup {
    color: #6c757d!important;
    border: 1px solid #dee2e6!important;
    border-radius: .2rem;
    font-size: .875rem;
    line-height: 1.5;
}

.hub-datatable div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select,
.hub-datatable div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria select,
.hub-datatable div.dtsb-searchBuilder div.dtsb-group div.dtsb-criteria input {
    background-color: white!important;
    color: #343a40!important;
}

.hub-datatable .dtsb-searchBuilder .dtsb-group:last-child {
    margin: 0;
}

/* The DataTables bundle uses native styling. Restore the collapsed borders its
   Bootstrap integration gave every table, so adjacent cells share one line. */
.hub-datatable table.dataTable {
    border-collapse: collapse !important;
}
.hub-datatable table.dataTable > thead > tr > th,
.hub-datatable table.dataTable > thead > tr > td {
    border-bottom-color: #e5e7eb;
}
.hub-datatable table.dataTable.no-footer,
.hub-datatable .dataTables_wrapper.no-footer .dataTables_scrollBody {
    border-bottom: 0;
}
/* scrollX splits the header into its own table; its bottom border already
   separates it from the body's first row. */
.hub-datatable .dataTables_scrollBody > table > tbody > tr:first-child > td,
.hub-datatable .dataTables_scrollBody > table > tbody > tr:first-child > th {
    border-top: 0;
}
