#datatable1 {
    border: 2px solid #dddddd;
    border-radius: 6px;
}

#datatable1_filter input {
    padding: 5px 23px;
    border: 1px solid #aaaaaa;
    margin: 0 10px;
    border-radius: 6px;
}

#datatable1_paginate, #datatable1_info {
    padding-top: 25px;
}

#datatable1_length select {
    border: 1px solid #aaaaaa;
    border-radius: 6px;
}

table.dataTable {
    width: 100%;
    margin: 0 auto;
    clear: both;
    border-collapse: separate;
    border-spacing: 0
}

    table.dataTable thead th, table.dataTable thead td {
        padding: 0.75rem;
        border-bottom: 1px solid #dee2e6;
        position: relative;
    }

        table.dataTable thead th.sorting::after, table.dataTable thead th.sorting_asc::after, table.dataTable thead th.sorting_desc::after, table.dataTable thead td.sorting::after, table.dataTable thead td.sorting_asc::after, table.dataTable thead td.sorting_desc::after {
            content: '';
            border: 4px solid transparent;
            border-top-color: #ced4da;
            position: absolute;
            z-index: 10;
            top: 22px;
            right: 8px;
        }

        table.dataTable thead th.sorting::before, table.dataTable thead th.sorting_asc::before, table.dataTable thead th.sorting_desc::before, table.dataTable thead td.sorting::before, table.dataTable thead td.sorting_asc::before, table.dataTable thead td.sorting_desc::before {
            content: '';
            border: 4px solid transparent;
            border-bottom-color: #ced4da;
            position: absolute;
            z-index: 10;
            top: 12px;
            right: 8px;
        }

        table.dataTable thead th.sorting_asc::before, table.dataTable thead td.sorting_asc::before {
            border-bottom-color: #17A2B8;
        }

        table.dataTable thead th.sorting_desc::after, table.dataTable thead td.sorting_desc::after {
            border-top-color: #17A2B8;
        }

    table.dataTable tbody th, table.dataTable tbody td {
        padding: 0.75rem;
    }

    table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td {
        border-top-color: #dee2e6;
    }

    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
    }

.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 {
            padding-top: 0.54rem;
            padding-bottom: 0.54rem;
            background-color: #e9ecef;
            border-color: transparent;
        }

            .dataTables_wrapper .dataTables_paginate .paginate_button:hover, .dataTables_wrapper .dataTables_paginate .paginate_button:focus {
                background-color: #ced4da;
                background-image: none;
                border-color: transparent;
                color: #343a40 !important;
            }

            .dataTables_wrapper .dataTables_paginate .paginate_button:active {
                box-shadow: none;
            }

            .dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.current:focus {
                background-color: #0089ff;
                background-image: none;
                border-color: transparent;
                color: #fff !important;
            }

            .dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:focus {
                background-color: #e9ecef;
                color: #adb5bd !important;
            }

    .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
    }
}
.dataTables_length {
    padding-bottom: 10px;
}

    .dataTables_length .select2-container {
        width: 60px;
        margin-left: 0;
        margin-right: 10px;
    }

.dataTables_filter {
    padding-bottom: 10px;
    padding-right: 5px;
}

.dataTables_wrapper .dataTables_paginate .paginate_button {
    padding-top: 0.54rem;
    padding-bottom: 0.54rem;
    background-color: #e9ecef;
    border-color: transparent;
}
table.dataTable.no-footer {
    border-bottom-color: #dee2e6;
}
