/* PWA UPDATER START */
body .pwa-updater[b-pwa-updater] {
    --pwa-updater-bar-z-index: 99999;
}
/* PWA UPDATER END */

.utvi-headline-h1 {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 96px;
    line-height: 90px;
}

.utvi-headline-h2 {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 76px;
    line-height: 80px;
}

.utvi-headline-h3 {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 62px;
    line-height: 68px;
}

.utvi-headline-h4 {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 32px;
    line-height: 48px;
}

.utvi-title-large {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 40px;
    line-height: 52px;
}

.utvi-title-regular {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 32px;
    line-height: 40px;
}

.utvi-title-small {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-size: 24px;
    line-height: 33.6px;
}

.utvi-title-extrasmall {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 20px;
    line-height: 24px;
}
.utvi-title-xxsmall {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
}
.utvi-title-xxxsmall {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 14px;
    line-height: 24px;
}
.utvi-body-large {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
}

.utvi-body-regular {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
}

.utvi-body-small {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
}

.utvi-body-extrasmall {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
}

.utvi-label-large {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
}

.utvi-label-regular {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
}

.utvi-label-small {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
}

.utvi-label-extrasmall {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-size: 12px;
    line-height: 16px;
}

.utvi-text-primary-50 {
    color: #F0ECF8;
}

.utvi-text-primary-100 {
    color: #E1DAF1;
}

.utvi-text-primary-200 {
    color: #C2B4E4;
}

.utvi-text-primary-300 {
    color: #A48FD6;
}

.utvi-text-primary-400 {
    color: #8669C9;
}

.utvi-text-primary-500 {
    color: #432C7A;
}

.utvi-text-primary-600 {
    color: #533696;
}

.utvi-text-primary-700 {
    color: #3E2970;
}

.utvi-text-primary-800 {
    color: #291B4B;
}

.utvi-text-primary-900 {
    color: #150E25;
}

.utvi-text-primary-950 {
    color: #0A0713;
}

.utvi-text-secondary-50 {
    color: #FEF7E6;
}

.utvi-text-secondary-100 {
    color: #FEEFCD;
}

.utvi-text-secondary-200 {
    color: #FDDF9B;
}

.utvi-text-secondary-300 {
    color: #FBD06A;
}

.utvi-text-secondary-400 {
    color: #FAC038;
}

.utvi-text-secondary-500 {
    color: #FABD30;
}

.utvi-text-secondary-600 {
    color: #C78D05;
}

.utvi-text-secondary-700 {
    color: #3E2970;
}

.utvi-text-secondary-800 {
    color: #291B4B;
}

.utvi-text-secondary-900 {
    color: #150E25;
}

.utvi-text-secondary-950 {
    color: #0A0713;
}

.utvi-text-secondary-980 {
    color: #CA0202;
}

.utvi-text-secondary-990 {
    color: #11BB5E;
}

.utvi-bg-grey{
    color: #6C757D;
}

.utvi-bg-primary-50 {
    background-color: #F0ECF8;
}

.utvi-bg-primary-100 {
    background-color: #E1DAF1;
}

.utvi-bg-primary-200 {
    background-color: #C2B4E4;
}

.utvi-bg-primary-300 {
    background-color: #A48FD6;
}

.utvi-bg-primary-400 {
    background-color: #8669C9;
}

.utvi-bg-primary-500 {
    background-color: #432C7A;
}

.utvi-bg-primary-600 {
    background-color: #533696;
}

.utvi-bg-primary-700 {
    background-color: #3E2970;
}

.utvi-bg-primary-800 {
    background-color: #291B4B;
}

.utvi-bg-primary-900 {
    background-color: #150E25;
}

.utvi-bg-primary-950 {
    background-color: #0A0713;
}

.utvi-bg-secondary-50 {
    background-color: #FEF7E6;
}

.utvi-bg-secondary-100 {
    background-color: #FEEFCD;
}

.utvi-bg-secondary-200 {
    background-color: #FDDF9B;
}

.utvi-bg-secondary-300 {
    background-color: #FBD06A;
}

.utvi-bg-secondary-400 {
    background-color: #FAC038;
}

.utvi-bg-secondary-500 {
    background-color: #FABD30;
}

.utvi-bg-secondary-600 {
    background-color: #C78D05;
}

.utvi-bg-secondary-700 {
    background-color: #956A04;
}

.utvi-bg-secondary-800 {
    background-color: #644602;
}

.utvi-bg-secondary-900 {
    background-color: #322301;
}

.utvi-bg-secondary-950 {
    background-color: #0A0713;
}
.utvi-bg-full {
    background-color: #F8F9FA;
}

.utvi-bg-secondary-980 {
    background-color: #FFE6E6;
}

.utvi-bg-secondary-990 {
    background-color: #E8FDF1;
}

.utvi-bg-secondary-970 {
    background-color: #11BB5E;
}

.utvi-bg-secondary-960 {
    background-color: #CA0202;
}

.utvi-bg-success {
    background-color: #2FBF71;
}
.utvi-bg-warning {
    background-color: #F4C430;
}
.utvi-bg-danger {
    background-color: #E5533D;
}

.border-form {
    border: 1px solid #DEE2E6;
    border-radius: 4px;
}
.step-line {
    flex-grow: 1;
    height: 2px;
    background-color: #E5E5E5;
    margin-left: 4px;
    width: 80px;
}
.step-label {
    margin-right: auto;
}
.gradient-background {
    background: transparent;
}
.progresswidth{
    width: 50%;
}
.custom-file-input::-webkit-file-upload-button {
    visibility: hidden;
}
.custom-file-input::before {
    display: none;
}
.custom-upload-button {
    /* background-color: #FABD30; */
    background-color: #ffc107;
}
.progress-menu{
    justify-content:center;
}
.modal-content{
    border-radius: 1rem !important;
}
.modal-header {
    border-bottom: none !important;
}
.modal-footer {
    border-top: none !important;
}
@media (max-width: 992px) {
    .gradient-background {
        background: radial-gradient(130.98% 78.71% at 97.21% 21.29%, #432C7A 0%, #FABD30 52.08%, #FFFFFF 100%);
        /* max-height: 15vh; */
        margin-top: -6%;
        object-fit: cover;
    }
    .utvi-title-regular{
        font-family: "Plus Jakarta Sans", sans-serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-size: 20px;
        line-height: 40px;
        word-spacing: -1%;
    }
    .progresswidth{
        width: 100%;
    }
    .step-line {
        flex-grow: 1;
        height: 2px;
        background-color: #E5E5E5;
        margin-left: 4px;
        width: 30px;
    }
}

.dot {
    position: absolute;
    right: 0px;
    top: 15px;
    z-index: 100;
}

.dot-image {
    position: absolute;
    right: 10px;
    top: 40px;
    z-index: 100;
}

.dot-left {
    position: absolute;
    left: -13px;
    top: 7px;
    z-index: 100;
}

.bordered-card {
    border-left: 4px solid #ffc107;
    /* Warna dan ketebalan garis */
    padding-left: 16px;
    /* Jarak antara garis dan konten */
}

/* border card detail innovation */
.rounded-card-detail {
    border-radius: var(--12, 12px);
}
.rounded-card-row {
    border-radius: var(--12, 16px);
}
.rounded-field {
    border-radius: var(--12, 100px);
}
.rounded-8px {
    border-radius: var(--8, 8px);
}
.rounded-12px {
    border-radius: var(--12, 12px);
}
.rounded-top-12px {
    border-top-left-radius: var(--12, 12px);
    border-top-right-radius: var(--12, 12px);
}
.rounded-bottom-12px {
    border-bottom-left-radius: var(--12, 12px);
    border-bottom-right-radius: var(--12, 12px);
}

/* innovation image */
.fullscreen-zoom {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    object-fit: contain;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 9999;
    cursor: zoom-out;
}
.utvi-label-extrasmall-finish {
    font-family: "Plus Jakarta Sans", sans-serif;
    font-optical-sizing: auto;
    color: #02BC7D;
    font-weight: 600;
    font-size: 12px;
    line-height: 16px;
    word-spacing: -0.4%;
}
.fixed-button {
    position: fixed;
    bottom: 100px;
    right: 20px;
    z-index: 1000;
}
.search-box-custom {
    display: flex;
    border-radius: var(--Corner-Small, 8px);
    border: 1px solid var(--Gray-300, #DEE2E6);
    background: var(--Gray-White, #FFF);
    padding: 2px;
    width: 250px;
    position: sticky;
}
.search-box-custom:hover {
    border: 1px solid var(--Yellow-Light-8, #FFC107) !important;
}
.filter-button {
    border-color: rgba(255, 255, 255, 0.08) !important;
    color: #424242 !important;
    background-color: #ffffff !important;
    background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(255, 253, 253, 0.02)) !important;
    margin-left: -10% !important;
    border: 0;
}

.text-justify{
    text-align: justify;
}
.k-input-solid.k-valid{
    border-color: #DEE2E6 !important;
}
.range-bredcrumb{
    margin-bottom: .75rem;
}

.custom-rounded {
    padding-left: .75rem !important;
    padding-bottom: .25rem !important;
    padding-right: .75rem !important;
    padding-top: .25rem !important;
    margin-bottom: .40rem !important;
}

.range-bredcrumb-detail{
    padding-bottom: .75rem;
}

.padding-top-bar{
    padding: 12px 12px !important;
}

@media (max-width: 768px) {
    .menu-item {
        display: none; /* Sembunyikan semua menu secara default */
    }

    .menu-item.active {
        display: block; /* Tampilkan menu yang aktif */
    }
}

.custom-card{
    cursor: pointer;
}

.custom-card:hover{
    transform: scale(1.01);
    border: 2px solid #FABD30;
}

.custom-texbox{
    border: solid 1px #FDDF9B !important;
    background-color: #FEF7E6 !important;
}

.notification-dropdown {
    position: absolute;
    background-color: white;
    border: 1px solid #ccc;
    right: 10%;
    top: 100%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    width: 450px;
    max-height: 400px;
    display: flex;
    flex-direction: column; 
}

.notification-header {
    flex-shrink: 0;
}

.notification-content {
    flex-grow: 1;
    overflow-y: auto;
    padding: 10px;
    border-bottom: 1px solid #eee;
}

/* FORM CONTROL BOOTSTRAP START */
.form-control:focus {
    border-color: #FDDF9B;
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #FDDF9B;
}
/* FORM CONTROL BOOTSTRAP END */

/* CUSTOM BORDER INPUT FILE START */
.custom-file-input {
    border: 1px solid #DEE2E6;
    border-right: none;
    border-radius: 4px;
}
/* CUSTOM BORDER INPUT FILE END */

/* CLAMP TEXT */
.clamp-2 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;  /* number of lines */
  overflow: hidden;       /* required for clipping */
}

.card-document-library-item {
    transition: transform 0.2s, box-shadow 0.2s;
}

.card-document-library-item:hover {
    /* transform: translateY(-5px); */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.card-document-library-item-dot-image {
    position: absolute;
    right: 12px;
    top: 24px;
    padding: 0 !important;
    z-index: 100;
    height: auto !important;
}