.fadein {
    -webkit-animation: fadein 3s;
    /* Safari, Chrome and Opera > 12.1 */
    -moz-animation: fadein 3s;
    /* Firefox < 16 */
    -ms-animation: fadein 3s;
    /* Internet Explorer */
    -o-animation: fadein 3s;
    /* Opera < 12.1 */
    animation: fadein 3s;
}

@keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Firefox < 16 */
@-moz-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Opera < 12.1 */
@-o-keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.loading {
    background-color: transparent url('img/loader.gif') center / no-repeat;
    background-image: url('img/loader.gif');
    background-size: 25px;
    background-position: center;
    background-repeat: no-repeat;
}

.img-sm {
    width: 150px;
    height: auto;
}

.dt-table>tbody>tr>td,
.dt-table>tfoot>tr>td,
.dt-table>thead>tr>td,
.dt-table>tbody>tr>th,
.dt-table>tfoot>tr>th,
.dt-table>thead>tr>th {
    vertical-align: middle;
    padding: 8px 10px;
    white-space: normal;
}

::-webkit-scrollbar {
    width: 1rem;
}
::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 100vw;
    margin-block: .5em;
}
::-webkit-scrollbar-thumb {
    background: #999;
    border-radius: 100vw;
}
::-webkit-scrollbar-thumb:hover {
    background: #555;
}

@supports (scrollbar-color: #999 #fff) {
    * {
        scrollbar-color: #999 #fff;
        scrollbar-width: thin;
    }
}