.custom-header-login {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 28px;
    color: #374151;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 12px;
    background-color: white;
    box-shadow: 0px 1px 2px rgb(16 24 40 / 12%);
    padding-bottom: 10px;
}

.custom-header-no-login {
    padding: 14.5px
}

.background-profile {
    display: flex;
    padding: var(--spacing-md, 16px);
    align-items: center;
    gap: var(--spacing-xl, 24px);
    align-self: stretch;
    background: linear-gradient(180deg, #FFF 0%, #E8F7E6 100%);
}

.text-header {
    font-family: 'Rubik';
    font-weight: 600;
    font-size: 18px;
    line-height: 28px;
    color: #374151;
}

.button-login-profile {
    background-color: white;
    border: 1px solid #3CA038;
    border-radius: 8px !important;
    flex: none;
    flex-grow: 0;
    width: 100%;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.button-login-profile span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    color: #3CA038;
}

.text-custom-register {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */

    text-align: center;

    /* Neutral/N500 */

    color: #6B7280;
}

.section-custom {
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 16px
}

.menu-container-cus {
    border-bottom: 1px solid #E5E7EB;
    overflow: hidden;
    padding-top: 16px;
    padding-bottom: 16px;
}

.menu-icon-cus {
    width: 40px;
    height: 40px;
    margin-right: 16px
}

.icon-row-right {
    width: 20px;
    height: 20px;
    margin-right: 6px;

}

.text-menu {
    color: var(--Color-Grey-Grey-900, #111827);
    font-family: Rubik;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
}

.text-title {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */


    /* Neutral/N700 */

    color: #374151;

}

.input-title {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */


    /* Neutral/N900 */

    color: #111827;

}

.button-change-photo {
    padding: 6px 10px !important;
    background: #FFFFFF;
    width: 50%;
    border: 1px solid #D1D5DB;
    border-radius: 8px !important;
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    color: #374151;
}

.img-photo-profile {
    border: 1px solid #E5E7EB;
    border-radius: 64px;
    width: 64px;
    height: 64px;
    object-fit: contain;
}

.input-data {
    padding: 6px 10px;
    gap: 4px;
    height: 40px;
    background: #FFFFFF;
    border: 1px solid #D1D5DB;
    border-radius: 8px;
}

.button-change-photo span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */

    text-align: center;

    /* Neutral/N700 */

    color: #374151;


}

.btn-blue {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 2px 12px;
    gap: 10px;

    width: 55px;
    height: 20px;

    /* Primary/P100 */

    background: #C0D8E6;
    border-radius: 16px;
}

.btn-blue span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 16px;
    /* identical to box height, or 133% */


    /* Primary/P500 */

    color: #3CA038;
}

.toggle-active {
    background: #3CA038;
    border-radius: 64px;
    height: 24px;
    width: 44px;
    padding: 1px;
}

.circle-white {
    height: 21px;
    width: 21px;
    border-radius: 10.5px;
    background: #FFFFFF;
    /* Drop Shadow/XSmall */

    box-shadow: 0px 1px 2px rgba(16, 24, 40, 0.05);

}

.section-popup {
    width: auto;
    max-width: 411px;
    padding: 20px;
    height: 100%;
    background-color: black;
    position: absolute;
    border: none;

}

.modal-custom {
    width: 100%;
    height: 148px;
    background-color: white;
    padding: 16px;
    border-radius: 16px;
}

.modal-custom-header span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
}

.modal-custom-body span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */


    /* Neutral/N500 */

    color: #6B7280;

}

.modal-custom-action-main {
    flex: 1;
    background: #3CA038;
    border-radius: 8px;
    height: 40px;
}

.modal-custom-action-sub {
    flex: 1;
    border: 1px solid #D1D5DB;
    border-radius: 8px;
    height: 40px;
}

.modal-custom-footer {
    margin-top: 16px
}

.modal-custom-action-sub span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    color: #6B7280;
}

.modal-custom-action-main span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */

    text-align: center;

    color: #FFFFFF;
}

.button-down-main {
    width: 100%;
    height: 48px;
    background: #3CA038;
    border-radius: 8px !important;
    padding: 0px;
    margin-bottom: 12px;
    margin-top: 12px;
    bottom: 0;
    border: unset;
}

.button-down-main span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */

    text-align: center;

    color: #FFFFFF;

}

.info-section {
    flex: 1;
    height: 50px
}

.info-section-items {
    flex: 1;
    height: 50px;
}

.cursor-pointer {
    cursor: pointer;
}

.info-count {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */

    display: flex;
    align-items: center;
    text-align: center;
}

.info-desc {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 10px;
    line-height: 12px;
    /* identical to box height, or 120% */

    display: flex;
    align-items: center;
    text-align: center;

    /* Neutral/N500 */

    color: #6B7280;

}

.label-tab {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    /* or 143% */


    /* Neutral/N500 */

    color: #6B7280;

}

.desc-section {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 12px;
    padding-bottom: 12px;
}

.icon-section {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 12px;
    padding-bottom: 12px;
}

.desc-section span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    /* or 143% */


    /* Neutral/N500 */

    color: #6B7280;

}

.icon-section-item {
    width: 24px;
    height: 24px;
    margin-right: 24px
}

.span-custom-1 {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
    /* identical to box height, or 133% */


    /* Neutral/N500 */

    color: #6B7280;

}

.section-info {
    padding-left: 20px;
    padding-right: 20px;
    margin-top: 8px;
}

.custom-search {
    box-sizing: border-box;

    /* Auto layout */

    padding: 10px 12px;
    gap: 12px;

    /* width: 371px; */
    height: 40px;

    background: #FFFFFF;
    /* Neutral/N300
    
    💡 For Stroke, Divider, Border
    */
    border: 1px solid #D1D5DB;
    /* Drop Shadow/XSmall */

    box-shadow: 0px 1px 2px rgba(16, 24, 40, 0.05);
    border-radius: 8px;

    /* Inside auto layout */

    flex: 1;
    /* order: 1; */
    align-self: stretch;
    /* flex-grow: 0; */

}

.span-custom-search {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */


    /* Neutral/N400 */

    color: #9CA3AF;
}

.text-custom-sort {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 16px;
    /* identical to box height, or 133% */


    /* Neutral/N500 */

    color: #6B7280;
}

.container-program {
    width: 46%;
    /* height: 206px; */
    margin-right: 10px;
    border: 1px solid #E5E7EB;
    /* padding-top: 8px; */
    padding-bottom: 8px;
    margin-bottom: 10px;
    border-radius: 8px;
    overflow: hidden;
}

.content-span-program {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    font-size: 12px;
    line-height: 16px;
    color: #374151;
    margin: 8px 8px 0;

}

.content-owner-span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 10px;
    line-height: 12px;
    /* identical to box height, or 120% */


    /* Primary/P500 */

    color: #3CA038;

}

.program-progressbar-container {
    width: 90%;
    height: 3px;
    background: #E5E7EB;
    border-radius: 3px;
    margin-left: 8px;
    margin-right: 8px;
}

.program-progressbar-value {
    width: 131.31px;
    height: 3px;
    left: calc(50% - 131.31px/2 - 17.1px);
    top: 0px;

    /* Primary/P500 */

    background: #3CA038;
    border-radius: 3px;

}

.dana-terkumpul-span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    font-size: 10px;
    line-height: 12px;
    /* identical to box height, or 120% */

    font-feature-settings: 'liga' off;

    /* Neutral/N500 */

    color: #6B7280;


}

.ket-span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 10px;
    line-height: 12px;
    /* identical to box height, or 120% */

    font-feature-settings: 'liga' off;

    /* Neutral/N400 */

    color: #9CA3AF;


}

.container-cus-2 {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 10px;
    padding-bottom: 10px
}

.text-custom-title-dis {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    /* identical to box height, or 150% */


    /* Neutral/N700 */

    color: #374151;
}

.button-tanya {
    flex-direction: row;
    padding: 8px 20px;
    gap: 4px;

    width: 112px;
    height: 40px;

    /* Primary/P500 */

    background: #3CA038;
    border-radius: 8px;
}

.button-tanya span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */

    text-align: center;

    color: #FFFFFF;
}

.flex-1 {
    flex: 1;
}

.flex-2 {
    flex: 2;
}

.flex-3 {
    flex: 3;
}

.flex-4 {
    flex: 4;
}

.custom-text-2 {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    font-size: 12px;
    line-height: 16px;
    /* identical to box height, or 133% */


    /* Primary/P500 */

    color: #3CA038;

}

.custom-text-3 {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
    /* identical to box height, or 133% */


    /* Neutral/N400 */

    color: #9CA3AF;
    margin-left: 8px;
}

.custom-text-4 {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    /* identical to box height, or 143% */


    /* Neutral/N500 */

    color: #6B7280;
    margin-top: 10px;
}

.span-balas {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    /* identical to box height, or 150% */


    /* Neutral/N700 */

    color: #374151;
}

.button-login {
    background: #3CA038;
    border-radius: 8px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    margin-top: 24px;
}

.button-login span {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    /* identical to box height, or 150% */

    text-align: center;

    color: #FFFFFF;

}

.margin-top-16 {
    margin-top: 16px;
}

.title-news {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 28px;
    /* identical to box height, or 156% */
    margin-top: 16px;

    /* Neutral/N700 */

    color: #374151;
}

.desc-news {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    /* or 143% */


    /* Neutral/N500 */

    color: #6B7280;

}

.title-2-news {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    /* identical to box height, or 150% */


    /* Neutral/N700 */

    color: #374151;
}