@font-face {
    font-family: 'poppins-bold';
    src: url('../fonts/poppins-bold.ttf') format('truetype');
}

@font-face {
    font-family: 'poppins-italic';
    src: url('../fonts/poppins-italic.ttf') format('truetype');
}

@font-face {
    font-family: 'poppins-regular';
    src: url('../fonts/poppins-regular.ttf') format('truetype');
}

body {
    font-family: "poppins-regular",Sans-serif;
    font-size: 14px;
    background-color: #FFFFFF;
    /*overflow:hidden;*/
}

a {
    color: rgba(var(--bs-dark-rgb),var(--bs-text-opacity));
}

a:hover {
    color: #111;
}

.navbar-logo {
    height: 40px;
}

.navbar-icon {
    font-size: 24px;
    color: rgba(0, 0, 0, 0.20);
    
}

.footer-logo {
    height: 30px;
}

@media (min-width: 576px) {
    .h-sm-100 {
        height: 100%;
    }
}

.navbar-user-container {
    border-radius: 12px;
    border: 1px solid #F2F2F3;
    background: #FFF;
    padding: 0.5em;
    font-size: 14px;
    line-height: 32px;
}

.p20-container {
    min-height: 500px;
}

.p20-navbar {
    padding-left: 1em;
    padding-right: 1em;
}

.p20-navigation-header {
    border-radius: 12px;
    background: #F4F4F6;
    padding: 1em;
}

.p20-navigation-option {
    padding: 1em;
    margin: 0.5em;
}

    .p20-navigation-option a {
        color: #47464A;
        text-decoration: none;
    }

    .p20-navigation-option.selected {
        font-weight:bold;
        background-color: #F6F6F6;
        border-radius: 12px;
    }

.p20-navigation-filter-container {
    padding: 1em;
    margin: 0.5em;
    border-radius: 12px;
    border: 1px solid #f6f6f6;
    min-height: 250px;
}

.p20-footer {
    background-color: #222D42;
    color: #ffffff;
    padding-top: 2em;
    padding-bottom: 2em;
}

.p20-table-header th {
    background-color: #037F9A;
    color: #ffffff;
}

.btn.p20-collapse {
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: 400 !important;
    font-variant: normal;
    text-decoration: none;
    font-size: 1.3em;
    color: #ffffff;
    padding: 0;
    margin: 0;
}

    .btn.p20-collapse > span.icon-placeholder::before {
        content: "\f229";
    }

    .btn.p20-collapse.collapsed > span.icon-placeholder::before {
        content: "\f231";
    }


.p20-card-dropshadow {
    filter: drop-shadow(#ddd 3px 3px 3px)
}

.p20-card-callout {
    border-radius: 32px;
    background: #FBFCFC;
    padding: 1.5em 0em;
    border: none;
}


.btn-primary {
    color: #fff;
    background-color: #3B71CA;
    border-color: #3B71CA;
}

.btn-danger {
    color: #fff;
    background-color: #DC4C64;
    border-color: #DC4C64;
}

    .p20-card-callout .p20-card-header {
        color: var(--Color-Dark-1, #202020);
        text-align: center;
        font-feature-settings: 'clig' off, 'liga' off;
        /* Headline/H5 */
        font-family: 'poppins-regular';
        font-size: 16px;
        font-style: normal;
        font-weight: 500;
        line-height: 24px; /* 150% */
    }

    .p20-card-callout .p20-card-big-value {
        color: #202020;
        text-align: center;
        font-feature-settings: 'clig' off, 'liga' off;
        /* Number/Number2 */
        font-family: 'poppins-regular';
        font-size: 32px;
        font-style: normal;
        font-weight: 600;
        line-height: normal;
    }

.p20-card-employee {
    border-radius: 16px;
    border: 1px solid #F2F2F3;
    background-color: #FFF;
    margin: 0 1em 0.5em 1em;
    padding: 0.5em;
}

    .p20-card-employee .card-header {
        background-color: #FFF;
        border-bottom: none;
    }

    .p20-card-employee .card-body {
        padding: 0.25em;
    }

    .p20-card-employee .list-group-item {
        border:none;
    }

.p20-table-employee {
    border-radius: 16px;
    border-collapse: separate;
    background: #FFF;
    border: 1px solid #E0E7ED;
    font-size: 12px;
    
}

.p20-table-employee tbody tr:last-child  {
    border-color: transparent;
}

.p20-table-employee th {
    padding: 16px 12px;
    background: #F9F9F9;
}

.p20-table-employee td {
    padding: 16px 12px;
    color: #828282;
}

.p20-table-employee .name-field {
    color: #202020;
}

.p20-badge {
    border-radius: 8px;
    background: #F4F7F7;
    color: #333;
    font-size: 12px;
    font-weight: 600;
    padding: 10px 8px;
    display: inline-block;
}

.htmx-indicator {
    opacity: 0;
    transition: opacity 250ms ease-in;
}

.htmx-request .htmx-indicator {
    opacity: 1
}

.htmx-request.htmx-indicator {
    opacity: 1
}

.loading-state {
    display:none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 9999;
    justify-content: center;
    align-items: center;
}

.loading {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -30px;
    margin-top: -30px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 10px solid #ddd;
    border-top-color: orange;
    animation: loading 1s linear infinite;
}

@keyframes loading {
    to {
        transform: rotate(360deg);
    }
}

.page-link {
    position: relative;
    display: block;
    color: #333333;
    text-decoration: none;
    background-color: #F9F9F9;
    border: none;
    margin-right: 10px;
    border-radius: 8px;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-color: #828282;
    border: none;
}

.page-item:first-child .page-link {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.page-item:last-child .page-link {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    margin-right: 0px;
}

.page-item .page-link:hover {
    color: #828282;
}