@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');
}

@font-face {
    font-family: 'inter-bold';
    src: url('../fonts/inter_18pt-bold.ttf') format('truetype');
}

@font-face {
    font-family: 'inter-italic';
    src: url('../fonts/inter_18pt-italic.ttf') format('truetype');
}

@font-face {
    font-family: 'inter-regular';
    src: url('../fonts/inter_18pt-medium.ttf') format('truetype');
}

body {
    font-family: "inter-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 {
    border-bottom: 1px solid #D5DCDA;
}

.nav-tabs .nav-link {
    color: #004771;
}

label.error {
    color: red;
}

.navbar-logo {
    height: 28px;
    margin-left:20px;
}

.navbar-icon {
    font-size: 24px;
    color: rgba(0, 0, 0, 0.20);  
}


.footer-logo {
    height: 30px;
}

.footer a {
    color: #9DB8CE;
}

@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: 700px;
}

.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-navigation-panel {
    margin-bottom: 2em;
    padding: 1em 0em;
}

    .p20-navigation-panel hr {
        border-color: #D5DCDA;
    }

#divDashboardResults {
    border-left: 1px solid #D5DCDA;
    min-height:700px;
}

.p20-footer {
    background-color: #222D42;
    color: #ffffff;
    padding-top: 2em;
    padding-bottom: 2em;
    min-height: 200px;
}

.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-progress-wrapper {
    border-radius: 8px;
    border: 1px solid #D5DCDA;
    padding: 0.5em;
}

    .p20-progress-wrapper .progress-bar {
        background-color: #004771;
    }

.p20-avatar-icon {
    border-radius: 16px;
    background: #F2F2F3;
    color: #fff;
    position: relative;
    display: inline-block;
    width: 32px;
    height: 32px;
    text-align: center;
    font-size: 12pt;
    line-height:32px;
}

.p20-onboarding-step-item {
    padding: 0.5em;
    clear:both;
    min-height:54px;
}

.p20-onboarding-step-item > div {
    float:left;
    margin:5px;
}

    .p20-onboarding-step-item > div.end {
        float: right;
        margin: 5px;
    }

    .p20-onboarding-step-item .date {
        color: #ddd;
        line-height: 12px;
    }

.p20-onboarding-step-badge, .p20-onboarding-step-badge-last {
    border-radius: 14px;
    background-color: #C9C9CF;
    color: #fff;
    position: relative;
    display: inline-block;
    width: 28px;
    height: 28px;
    text-align: center;
    font-size: 12pt;
}
    .p20-onboarding-step-badge.completed, .p20-onboarding-step-badge-last.completed {
        background-color: #00A000;
    }

    .p20-onboarding-step-badge:after {
        content: '';
        width: 15px;
        border-right: solid 3px #C9C9CF;
        position: absolute;
        left: 0;
        top: 28px;
        height: 22px;
        z-index: 1;
    }

    .p20-onboarding-step-badge.completed:after {
        border-right: solid 3px #00A000;
    }



.btn-primary {
    color: #fff;
    background-color: #004771;
    border-color: #004771;
}

.btn-info {
    color: #004771;
    background-color: #FFC938;
    border-color: #FFC938;
}

.alert-info {
    color: #222D42;
    background-color: #9DB8CE;
    border-color: #9DB8CE;
}

.p20-card-callout {
    border-radius: 8px;
    background: #004771;
    border: 1px solid #D5DCDA;
    padding: 0.5em 1em;
}

    .p20-card-callout .p20-card-header {
        color: var(--Color-Dark-1, #ffffff);
        text-align: left;
        font-feature-settings: 'clig' off, 'liga' off;
        /* Headline/H5 */
        font-family: 'inter-regular';
        font-size: 14px;
        font-style: normal;
        font-weight: 500;
        line-height: 24px; /* 150% */
    }

    .p20-card-callout .p20-card-big-value {
        color: #ffffff;
        text-align: left;
        font-feature-settings: 'clig' off, 'liga' off;
        /* Number/Number2 */
        font-family: 'inter-regular';
        font-size: 32px;
        font-style: normal;
        font-weight: 600;
        line-height: normal;
    }

.p20-card-employee {
    border-radius: 8px;
    border: 1px solid #D5DCDA;
    background-color: #FFF;
    margin: 0.25em;
    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;
    font-size: 12px;
    
}

.p20-table-employee thead th a  {
    text-decoration: none;
    font-weight: normal;
}

.p20-table-employee tbody tr:last-child  {
    border-color: transparent;
}

    .p20-table-employee tr {
        border-bottom: 1px solid #D5DCDA;
    }

.p20-table-employee th {
    padding: 6px 2px;
    color: #939F9B;
}

.p20-table-employee td {
    padding: 6px 0px;
    line-height: 28px;
}

.p20-column-display-wrap {
    line-height: 16px;
}

    .p20-column-display-wrap.low-contrast {
        color: #D5DCDA;
    }

.p20-person-badge {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
}

.p20-person-badge .background {
    fill: #eee;
}

.p20-person-badge .initial-text {
    font: 14px "inter-bold";
    fill: #1B1B1B;
}

.p20-table-employee .name-field {
    color: #202020;
}

.p20-notes-container {
    overflow: auto;
}

.p20-notes-item {
    padding: 0.5em 1em;
    margin: 0.5em 0;
}

.p20-notes-item .date {
    font-size: 12px;
    color:#D5DCDA;
    
 }

.p20-notes-item .description {
    margin-left:30px;
    line-height: 16px;
}

.p20-notes-item .icon {
    font-size: 20px; 
}

    .p20-notes-item .icon.success {
        color: #00A000;
    }
    .p20-notes-item .icon.rejected {
        color: #F74135;
    }

.p20-badge {
    border-radius: 8px;
    background: #FFF;
    color: #797986;
    border: 1px solid #D5DCDA;
    font-size: 12px;
    padding: 6px 8px;
    display: inline-block;
    line-height: 14px;
}

    .p20-badge.initiated {
        background: #F2F2F3;
        color: #61616B;
        border: none;
    }

    .p20-badge.completed {
        background: #E5F8EA;
        color: #00731C;
        border: none;
    }

    .p20-badge.in-progress {
        background: #DBF2FF;
        color: #0081CC;
        border: none;
    }

    .p20-badge.withdrew {
        background: #FFEEE8;
        color: #F74135;
        border: none;
    }

.checkbox-text {
    font: 14px "inter-bold";
    fill: #1B1B1B;
}

.checkbox-wrapper-31:hover .check {
    stroke-dashoffset: 0;
}

.checkbox-wrapper-31 {
    position: relative;
    display: inline-block;
    width: 28px;
    height: 28px;
}

    .checkbox-wrapper-31 .background {
        fill: #eee;
        transition: ease all 0.6s;
        -webkit-transition: ease all 0.6s;
    }

    .checkbox-wrapper-31 .stroke {
        fill: none;
        stroke: #fff;
        stroke-miterlimit: 10;
        stroke-width: 2px;
        stroke-dashoffset: 100;
        stroke-dasharray: 100;
        transition: ease all 0.6s;
        -webkit-transition: ease all 0.6s;
    }

    .checkbox-wrapper-31 .check {
        fill: none;
        stroke: #fff;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2px;
        stroke-dashoffset: 22;
        stroke-dasharray: 22;
        transition: ease all 0.6s;
        -webkit-transition: ease all 0.6s;
    }

    .checkbox-wrapper-31 input[type=checkbox] {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        margin: 0;
        opacity: 0;
        -appearance: none;
        -webkit-appearance: none;
    }

        .checkbox-wrapper-31 input[type=checkbox]:hover {
            cursor: pointer;
        }

        .checkbox-wrapper-31 input[type=checkbox]:checked + svg .background {
            fill: #6cbe45;
        }

        .checkbox-wrapper-31 input[type=checkbox]:checked + svg .stroke {
            stroke-dashoffset: 0;
        }

        .checkbox-wrapper-31 input[type=checkbox]:checked + svg .check {
            stroke-dashoffset: 0;
        }

        .checkbox-wrapper-31 input[type=checkbox]:checked + svg .checkbox-text {
            fill: #fff;
        }

/*.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-state.htmx-request {
    display: block;
}

.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;
}

.offcanvas-header {
    border-bottom: 1px solid #D5DCDA;
    padding: 0.5em 1em 0.5em 1em;
    font-size:12pt;
}

.offcanvas-footer {
    position: absolute;
    bottom: 20px;
}