table.fp-tables thead th, table.fp-tables tbody td {
    padding        : 16px 20px;
    text-align     : center;
    border         : solid 2px #fff;
    vertical-align : middle;
}

table.fp-tables td [type="checkbox"]:checked + label:before {
    border-right  : 2px solid #3e7ac1;
    border-bottom : 2px solid #3e7ac1;
}

table.fp-tables thead th {
    background-color : #878788;
    font-weight      : bold;
    color            : #fff;
    border-bottom    : 3px solid #fff;
    text-transform   : uppercase;
}

table.fp-tables thead th, table.fp-tables tbody td {
    width : auto;
}

table.fp-tables thead th.input, table.fp-tables tbody td.input {
    width : 60px;
}

table.fp-tables thead th.points, table.fp-tables tbody td.points {
    width : 118px;
}

table.fp-tables thead th.date, table.fp-tables tbody td.date {
    width : 190px;
}

table.fp-tables td.rule, table.fp-tables tbody td.child {
    text-align : left;
}

table.fp-tables tbody tr:nth-child(odd) td {
    background-color : #e9edf0;
}

table.fp-tables tbody tr:nth-child(even) td {
    background-color : #f7f9fa;
}

table.fp-tables tbody tr.selected:nth-child(odd) td, table.fp-tables tbody tr.selected:nth-child(even) td {
    background-color : #d7eeff;
}

.no-js table.fp-tables thead th.input > input,
.no-js table.fp-tables thead th.input > label {
    display : none;
}

table.fp-tables [type="checkbox"] + label {
    padding-left  : 18px;
    width         : 18px;
    height        : 18px;
    line-height   : 18px;
    margin-bottom : 0;
}

table.fp-tables thead th [type="checkbox"] + label:before, table.fp-tables thead th [type="checkbox"]:not(.filled-in) + label:after {
    border : 2px solid #fff;
}

table.fp-tables thead th [type="checkbox"]:checked + label:before {
    border        : 0;
    border-right  : 2px solid #fff;
    border-bottom : 2px solid #fff;
}

table.fp-tables tbody td.points {
    font-weight : bold;
}

table.fp-tables tbody td.points.positive {
    color            : #3c763d;
    background-color : #dff0d8;
}

table.fp-tables tbody td.points.negative {
    color            : #a94442;
    background-color : #f2dede;
}

table.dataTable.fp-tables tr.clickable td {
    cursor : pointer;
}

.dataTables_wrapper .dataTables_length.input-field {
    display     : inline-block;
    float       : left;
    margin-top  : 0;
    margin-left : 2px;
}

.dataTables_wrapper .dataTables_length.input-field > label {
    display       : flex;
    align-items   : center;
    position      : relative;
    overflow      : visible;
    margin-bottom : 10px;
    margin-top    : 17px;
    font-size     : 12px;
}

.dataTables_wrapper .dataTables_length.input-field > label > .select-wrapper {
    display   : inline-block;
    max-width : 80px;
    margin    : 0 10px;
}

.dataTables_wrapper .dataTables_length.input-field > label > .select-wrapper input.select-dropdown {
    margin-bottom : 0;
}

.dataTables_wrapper .dataTables_length.input-field > label > select.no-js-select-field {
    display             : inline-block;
    width               : auto;
    margin-bottom       : 0;
    margin-left         : 5px;
    color               : #5d5d5d;
    border-bottom-color : #5d5d5d;
}

.dataTables_wrapper .dataTables_filter.input-field {
    display      : inline-block;
    float        : right;
    margin-right : 2px;
    margin-top   : 0;
}

.dataTables_wrapper .dataTables_filter.input-field > label {
    position      : relative;
    margin-bottom : 0;
    overflow      : visible;
    font-size     : 12px;
}

.dataTables_wrapper .dataTables_filter.input-field > label.focus {
    color : #3e7ac1;
}

.dataTables_wrapper .dataTables_filter.input-field > label > input {
    margin-bottom      : 10px;
    padding-left       : 0;
    min-width          : 200px;
    font-weight        : normal;
    border-radius      : 0;
    -webkit-appearance : none;
}

table.dataTable.fp-tables thead tr th.sorting,
table.dataTable.fp-tables thead tr th.sorting_asc,
table.dataTable.fp-tables thead tr th.sorting_desc {
    cursor : pointer;
}

table.dataTable.fp-tables thead tr th.sorting:after,
table.dataTable.fp-tables thead tr th.sorting_asc:after,
table.dataTable.fp-tables thead tr th.sorting_desc:after {
    content     : '\f175 \f176';
    font-family : 'fontawesome';
    margin-left : 5px;
    opacity     : 0.5;
}

table.dataTable.fp-tables thead tr th.sorting_asc:after {
    content : '\f160';
    opacity : 1;
}

table.dataTable.fp-tables thead tr th.sorting_desc:after {
    content : '\f161';
    opacity : 1;
}

.dataTables_wrapper .dataTables_paginate {
    float        : right;
    text-align   : right;
    padding-top  : 0.25em;
    margin-right : 2px;
}

.dataTables_wrapper .dataTables_paginate .ellipsis {
    padding : 0 5px;
}

.dataTables_paginate.paging_simple_numbers a.btn.btn-level-2 {
    margin     : 5px 3px;
    box-shadow : 0 1px 2px 0 rgba(0, 0, 0, 0.16), 0 2px 5px 0 rgba(0, 0, 0, 0.12);
}

.dataTables_paginate.paging_simple_numbers a.btn.btn-level-2:hover {
    box-shadow : 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
}

.dataTables_paginate.paging_simple_numbers a.btn.btn-level-2.previous,
.dataTables_paginate.paging_simple_numbers a.btn.btn-level-2.next {
    margin : 5px 10px;
}

.dataTables_paginate.paging_simple_numbers a.btn.btn-level-2.next {
    margin-right : 0;
}

.dataTables_paginate.paging_simple_numbers a.btn.btn-level-2.disabled {
    box-shadow       : none;
    background-color : transparent !important;
    padding          : 0;
    margin-top       : 7px;
}

.dataTables_paginate.paging_simple_numbers span a.btn.btn-level-2.current {
    pointer-events   : none;
    background-color : #dfdfdf !important;
    box-shadow       : none;
    cursor           : default;
    color            : #5d5d5d !important;
    font-size        : 14px;
    margin-top       : 7px;
}

@media screen and (max-width : 600px) {
    table.fp-tables, table.fp-tables thead, table.fp-tables tbody, table.fp-tables tfoot, table.fp-tables tr {
        display : block;
    }

    table.fp-tables thead {
        border-bottom : none;
    }

    table.fp-tables tbody tr {
        border        : 2px solid #fff;
        border-radius : 2px;
        margin-bottom : 10px;
    }

    table.fp-tables tbody tr.clickable {
        cursor : pointer;
    }

    table.fp-tables tbody tr.selected {
        border : 2px solid #3e7ac1;
    }

    table.fp-tables tbody td,
    table.fp-tables tbody td::before {
        display     : flex;
        height      : 100%;
        align-items : center;
    }

    table.fp-tables thead th {
        display  : none;
        position : absolute;
        top      : -9999px;
        left     : -9999px;
    }

    table.fp-tables tbody td {
        border        : 0;
        border-bottom : 1px solid #fff;
        position      : relative;
        padding-right : 5px;
        padding-left  : 100px;
        white-space   : normal;
        text-align    : left;
        width         : 100% !important;
        -ms-word-break: break-word;
        word-break: break-word;
    }

    table.fp-tables tbody td:last-child {
        border-bottom : 0;
    }

    table.fp-tables tbody td::before {
        content     : attr(data-title);
        font-size   : 11px;
        position    : absolute;
        top         : 0;
        left        : 0;
        width       : 100px;
        text-align  : left;
        font-weight : bold;
        padding     : 5px 6px;
        color       : #5d5d5d;
    }

    table.fp-tables tbody td.input {
        height          : 52px;
        justify-content : center;
    }

    table.fp-tables tbody td.input [type="checkbox"] + label {
        margin-top : -5px;
    }

    table.fp-tables tbody td.points {
        /* max-width: none; */
    }

    table.fp-tables tbody td.actions {
        /*width: 100% !important;*/
    }

    table.fp-tables tfoot td {
        justify-content : center;
    }

    table.fp-tables tfoot td:first-child {
        display  : none;
        position : absolute;
        top      : -9999px;
        left     : -9999px;
    }
}



