/* GLOBAL CSS */
* {
    font-family: 'Poppins', sans-serif !important;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
}

/* DEBUGGING CSS */
/* * {
    background: #000 !important;
    color: #0f0 !important;
    outline: solid #f00 1px !important;
} */

body {
    background-color: #fafafa;
    height: 100%;
    width: 100%;
    max-width: 100%;
    max-width: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

ol,
ul {
    list-style: none;
}

a:hover {
    text-decoration: none !important;
}

/* STYLE FORM */
.f-field {
    border-radius: 7px;
}

.f-field-invalid {
    border-color: red;
}

.f-helper {
    display: none;
}

.f-btn-submit {
    background-color: #E42313;
    color: #fff;
    width: 100%;
    font-weight: 600;
    padding: 10px 0px;
    border-radius: 7px;
    font-size: 15px;
}

.f-btn-submit:hover,
.f-btn-submit:active,
.f-btn-submit:focus {
    background-color: #bf1707;
    color: #fff;
}

.f-field-password {
    position: relative;
}

.f-icon-password {
    cursor: pointer;
    position: absolute;
    transform: translateX(-50%) translateY(-50%);
    right: 0px;
    top: 50%;
}

.ds-field-margin {
    margin-bottom: 1.5rem;
}

.ds-radio-item {
    display: inline-block;
    position: relative;
}

.ds-radio-item input[type='radio'] {
    display: none;
}

.ds-radio-item label {
    color: #666;
    font-weight: normal;
}

.ds-radio-item label:before {
    content: " ";
    display: inline-block;
    position: relative;
    top: 5px;
    margin: 0 5px 0 0;
    width: 18px;
    height: 18px;
    border-radius: 11px;
    border: 1px solid #E42313;
    background-color: transparent;
}

.ds-radio-item input[type=radio]:checked+label:after {
    border-radius: 11px;
    width: 12px;
    height: 12px;
    position: absolute;
    top: 8px;
    left: 3px;
    content: " ";
    display: block;
    background: #E42313;
}


/* DASHBOARD LAYOUT STYLE */
.ds-sidebar {
    box-shadow: 3px 3px 19px rgba(0, 0, 0, 0.3);
    background: var(--color-gray-100, #EFEFEF);
    color: #fff;
}

.ds-sidebar a {
    font-weight: 600;
}

.ds-box-logo {
    background-color: #fff;
}

.ds-header {
    border-width: 0 0 2px 0;
    border-style: solid;
    border-color: #D9D9D9;
    position: sticky;
    top: 0;
    z-index: 1000;
}

.ds-header-title {
    margin-bottom: 0;
    margin-left: 2rem;
    color: #545454
}

.ds-link {
    /* color: black !important; */
    color: #464646 ;
}

.ds-nav-item {
    padding: 0.5rem 0 0.5rem 0.3rem;
    margin-left: 1rem;
    color: #464646 ;
}

.ds-nav-item-none {
    padding: 0.5rem 0 0.5rem 0.3rem;
    margin-left: 1rem;
    color: #464646 !important;
}

.ds-nav-item-none:hover {
    background: rgba(4, 4, 4, 0.34);
    border-radius: 10px 0px 0px 10px;
}

.ds-nav-item-active {
    border-radius: 8px;
    background: var(--color-button-active, #125467);
    color: #FCFCFC !important;
}

.ds-box-profile {
    margin-right: 2rem;
}

.ds-role-text {
    color: #E42313
}

.ds-username {
    font-weight: 600;
}

.ds-box-modal-profile {
    min-width: 200px;
    border-radius: 10px;
}

.ds-box-modal-notif {
    border-radius: 15px;
}

.ds-modal-header-notif {
    background-color: #E42313;
}

.ds-bold-white {
    color: #fff;
    font-weight: 600;
}

.ds-red {
    color: #E42313
}

.ds-none:hover,
.ds-none:focus {
    text-decoration: none;
}

.navbar .navbar-brand:hover,
.navbar .navbar-brand:focus {
    opacity: 1;
}

.navbar .navbar-nav .nav-link {
    fill: #464646;
    min-width: 1.3rem;
    min-height: 1.3rem;
}

.ds-box-icon-notif {
    margin-right: 2rem !important;
}

.ds-text-bold {
    font-weight: 600;
}

.ds-mid-checkbox {
    width: 1.25rem;
    height: 1.25rem;
    margin-top: 0;
}

.badge:empty {
    width: 0.7rem;
    height: 0.7rem;
}

.navbar .navbar-nav .nav-link .badge {
    border: 2px solid #fff;
    top: 0.7rem;
    right: 0.2rem;
}

.page-body {
    margin: 1.25rem 1rem
}

/* TABLE STYLE */
.ds-card-table {
    box-shadow: 3px 3px 19px rgba(0, 0, 0, 0.1);
}

.ds-header-table {
    height: 60px;
    width: 100%;
    display: flex;
    align-items: center;
    padding: 0 1rem
}

.ds-header-table-btn {
    padding: 0.2rem 0.5rem !important;
    border-radius: 8px;
    border-color: #9E9E9E;
}

.table-responsive{
    overflow: auto; height: 500px;
}
.ds-thead {
    height: 40px !important;
    position: sticky; top: 0; z-index: 1;
    
}

.table-responsive th{
    position: sticky; top: 0; z-index: 1;
}


.ds-th-text {
    color: black !important;
    font-size: 12px !important;
    background-color: #d9d9d9 !important;
    text-transform: capitalize !important;
    border: none;
}

.ds-td-number {
    width: 70px;
}

.ds-td-action {
    width: 120px;
}

.ds-btn-edit {
    background-color: #D37609;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
}

.ds-btn-delete {
    background-color: #DE4841;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
}

/* PAGINATION STYLE */
.ds-table-footer {
    display: flex;
    justify-content: flex-end;
    padding: 0.8rem 3rem;
    background-color: #fff;
    border-radius: 0 0 15px 15px;
    border-top: 1px solid #d9d9d9
}

.ds-text-mini {
    font-size: 13px;
}

.ds-btn-pagination {
    background-color: #fff;
}

@media only screen and (min-width: 992px) {
    .ds-box-logo {
        height: 90px;
    }

    .ds-logo {
        width: 100%;
        height: auto;
    }

    .navbar-vertical.navbar-expand-lg {
        width: 17rem;
    }

    .navbar-expand-lg.navbar-vertical~.navbar {
        margin-left: 17rem;
    }

    .navbar-expand-lg.navbar-vertical~.page-wrapper {
        margin-left: 17rem;
    }
}

/* MODAL STYLE */
.ds-modal {
    border-radius: 15px;
    height: 100%;
    width: 100%;
    aspect-ratio: 2/1;
}

.ds-modal-bold {
    font-weight: bold;
}

.ds-modal-btn-cancel {
    background: #9E9E9E;
    border-radius: 7px;
    width: 48%;
    padding: 0.5rem 1rem;
    color: #fff;
    font-weight: 600;
}

.ds-modal-btn-delete {
    background: #E42313;
    border-radius: 7px;
    width: 48%;
    padding: 0.5rem 1rem;
    color: #fff;
    font-weight: 600;
}