:root{



    --nv-biosort:#2f2d2a;
    --nv-biosort-soft:rgba(47,45,42,.74);
    --nv-paper:#f7f4ee;
    --nv-paper-2:#fffaf1;
    --nv-green:#667a2d;
    --nv-green-dark:#42541b;
    --nv-line:rgba(47,45,42,.22);
    --nv-error:#b42318;
    --nv-white:#ffffff;
    --nv-shadow:0 24px 70px rgba(0,0,0,.20);
    --nv-font:Helvetica, sans-serif, Arial;
	
	  /* Status Colors */
    --nv-status-draft-bg:#f1ece2;
    --nv-status-draft-text:#5d5548;
    --nv-status-draft-border:#d8cbbb;

    --nv-status-under-review-bg:#e9f0f5;
    --nv-status-under-review-text:#28536b;
    --nv-status-under-review-border:#b7cbd9;

    --nv-status-reviewed-bg:#edf3e6;
    --nv-status-reviewed-text:#4f6b23;
    --nv-status-reviewed-border:#c8d8ad;

    --nv-status-approved-bg:#e5f2df;
    --nv-status-approved-text:#2f641f;
    --nv-status-approved-border:#afd29e;

    --nv-status-rejected-bg:#f7e6e3;
    --nv-status-rejected-text:#b42318;
    --nv-status-rejected-border:#e1aaa3;

    --nv-status-cancelled-bg:#ece8e4;
    --nv-status-cancelled-text:#6a6258;
    --nv-status-cancelled-border:#c9beb3;

    --nv-status-posted-bg:#e7edf0;
    --nv-status-posted-text:#334f5c;
    --nv-status-posted-border:#b9c8cf;
	
}

*{box-sizing:border-box}
html{min-height:100%;background:var(--nv-paper)}
body{
    margin:0;
    min-height:100vh;
    font-family:var(--nv-font);
    color:var(--nv-biosort);
    background:var(--nv-paper);
}

.Header{
    position:absolute;
    top:0;
    left:0;
    right:0;
    z-index:30;
    padding:28px 48px;
}
.Header--overlay{background:transparent;}
.Header--bottom{border-bottom:0;}
.Header-inner{
    width:min(1180px, 100%);
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.Header-brand{
    display:inline-flex;
    align-items:center;
    text-decoration:none;
}
.Header-brand-logo{
    width:152px;
    height:auto;
    display:block;
}

.nvIntro{
    position:relative;
    min-height:calc(100vh - 168px);
    overflow:hidden;
}
.nvIntro__background{
    position:absolute;
    inset:0;
    background-image:url("../img/landingBG.jpg");
    background-size:cover;
    background-position:center center;
    transform:scale(1.02);
}
.nvIntro__shade{
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(28,27,24,.78) 0%, rgba(28,27,24,.48) 43%, rgba(28,27,24,.18) 100%),
        linear-gradient(0deg, rgba(47,45,42,.18), rgba(47,45,42,.18));
}
.nvIntro__content{
    position:relative;
    z-index:5;
    width:min(1180px, calc(100% - 48px));
    min-height:calc(100vh - 168px);
    margin:0 auto;
    padding:148px 0 72px;
    display:grid;
    grid-template-columns:minmax(280px, 1fr) minmax(320px, 430px);
    gap:56px;
    align-items:center;
}
.nvIntro__eyebrow{
    margin:0 0 22px;
    color:rgba(255,255,255,.82);
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:12px;
    font-weight:700;
}
.nvIntro__copy h1{
    margin:0;
    max-width:720px;
    color:var(--nv-white);
    font-size:clamp(42px, 6vw, 82px);
    line-height:.95;
    letter-spacing:-.055em;
    font-weight:700;
}



.nvIntro__lead{
    margin:24px 0 0;
    max-width:520px;
    color:rgba(255,255,255,.88);
    font-size:18px;
    line-height:1.6;
}

.nvLoginCard{
    position:relative;
    width:100%;
    padding:38px 36px 36px;
    background:rgba(255,250,241,.94);
    border:1px solid rgba(255,255,255,.52);
    box-shadow:var(--nv-shadow);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}
.nvLoginCard__topline{
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:5px;
    background:var(--panita-green);
}
.nvLoginCard__title{
    margin:0;
    font-size:28px;
    line-height:1.1;
    letter-spacing:-.035em;
    font-weight:700;
    color:var(--nv-biosort);
}
.nvLoginCard__note{
    margin:10px 0 28px;
    color:var(--nv-biosort-soft);
    font-size:14px;
    line-height:1.5;
}

.nvField{margin:0 0 22px;}
.nvField__label{
    display:block;
    margin:0 0 9px;
    font-size:13px;
    line-height:1.3;
    font-weight:700;
    color:var(--nv-biosort);
}
.nvField__required{
    color:var(--nv-biosort-soft);
    font-weight:400;
}
.nvField__input{
    width:100%;
    min-height:52px;
    padding:13px 14px;
    border:1px solid var(--nv-line);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:15px;
    line-height:1.4;
    outline:none;
    transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.nvField__input:focus{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.16);
}
.nvField__message{
    min-height:18px;
    margin-top:7px;
    font-size:12px;
    line-height:1.4;
    color:var(--nv-error);
    opacity:0;
    transform:translateY(-2px);
    transition:opacity .16s ease, transform .16s ease;
}
.nvField.is-invalid .nvField__input{
    border-color:var(--nv-error);
    box-shadow:0 0 0 3px rgba(180,35,24,.14);
}
.nvField.is-invalid .nvField__required{color:var(--nv-error);font-weight:700;}
.nvField.is-invalid .nvField__message{opacity:1;transform:translateY(0);}

.button.sqs-system-button.sqs-editable-button.form-submit-button.sqs-button-element--primary.none.vj3vrvqNhcUOo_Bm,
.nvLoginButton{
    width:70%;
    min-height:52px;
    margin:4px auto 0;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid var(--panita-green-dark);
    border-radius:3px;
    
	    background:var(--nv-biosort);
    color:var(--nv-white);
    cursor:pointer;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:12px;
    font-weight:700;
    transform:none;
    transform-origin:center center;
    transition:
        width .58s cubic-bezier(.22, 1, .36, 1),
        background-color .26s ease-out,
        border-color .26s ease-out,
        box-shadow .26s ease-out;
}

.button.sqs-system-button.sqs-editable-button.form-submit-button.sqs-button-element--primary.none.vj3vrvqNhcUOo_Bm:hover,
.button.sqs-system-button.sqs-editable-button.form-submit-button.sqs-button-element--primary.none.vj3vrvqNhcUOo_Bm:focus,
.nvLoginButton:hover,
.nvLoginButton:focus{
    width:99%;
	background:var(--panita-green-dark);
    border-color:var(--nv-biosort);
    box-shadow:0 14px 30px rgba(47,45,42,.18);
    transform:none;
}

.nvFooter{
    background:var(--nv-paper-2);
    border-top:1px solid rgba(47,45,42,.14);
    padding: 15px;
}
.nvFooter__inner{
    width:min(1180px, 100%);
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
}
.nvFooter__brandBlock{
    display:flex;
    align-items:center;
    gap:30px;
}
.nvFooter__logo{
    width:132px;
    height:auto;
    display:block;
}
.nvFooter__social{
    display:flex;
    align-items:center;
    gap:10px;
}
.nvFooter__social a{
    width:34px;
    height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.24);
    border-radius:50%;
    color:var(--nv-biosort);
    text-decoration:none;
    font-size:13px;
    font-weight:700;
    transition:background .18s ease, color .18s ease, border-color .18s ease;
}
.nvFooter__social a:hover{
    background:var(--nv-biosort);
    color:var(--nv-white);
    border-color:var(--nv-biosort);
}
.nvFooter__credit{
    text-align:right;
    color:var(--nv-biosort-soft);
    font-size:.7em;
    line-height:1.6;
}
.nvFooter__credit a{
    color:var(--nv-biosort);
    font-weight:700;
    text-decoration:underline;
    text-underline-offset:3px;
}


/* Login authentication states */
.nvLoginCard.is-login-success .nvLoginCard__topline{
    background:var(--panita-green);
}

.nvLoginCard.is-login-success .nvLoginCard__title,
.nvLoginCard.is-login-success .nvLoginCard__note{
    color:var(--panita-green);
}

.nvLoginCard.is-login-error .nvLoginCard__topline{
    background:var(--nv-error);
}

.nvLoginCard.is-login-error .nvLoginCard__title,
.nvLoginCard.is-login-error .nvLoginCard__note{
    color:var(--nv-error);
}

/* Disabled and loading button state */
.nvLoginButton:disabled,
.nvLoginButton.is-loading{
    cursor:not-allowed;
    opacity:.92;
    width:99%;
    background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    box-shadow:none;
}

.nvLoginButton__text{
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.nvLoginButton__loader{
    position:relative;
    display:none;
    width:24px;
    height:24px;
}

.nvLoginButton.is-loading .nvLoginButton__text{
    display:none;
}

.nvLoginButton.is-loading .nvLoginButton__loader{
    display:inline-block;
    animation:nvLoginLoaderRotate 1s linear infinite;
}

.nvLoginButton__loader span{
    position:absolute;
    left:10px;
    top:1px;
    width:4px;
    height:4px;
    border-radius:50%;
    background:rgba(255,255,255,.96);
    transform-origin:2px 11px;
}

.nvLoginButton__loader span:nth-child(1){transform:rotate(0deg);opacity:1;}
.nvLoginButton__loader span:nth-child(2){transform:rotate(45deg);opacity:.85;}
.nvLoginButton__loader span:nth-child(3){transform:rotate(90deg);opacity:.72;}
.nvLoginButton__loader span:nth-child(4){transform:rotate(135deg);opacity:.60;}
.nvLoginButton__loader span:nth-child(5){transform:rotate(180deg);opacity:.48;}
.nvLoginButton__loader span:nth-child(6){transform:rotate(225deg);opacity:.38;}
.nvLoginButton__loader span:nth-child(7){transform:rotate(270deg);opacity:.30;}
.nvLoginButton__loader span:nth-child(8){transform:rotate(315deg);opacity:.22;}

@keyframes nvLoginLoaderRotate{
    from{transform:rotate(0deg);}
    to{transform:rotate(360deg);}
}





/* =========================================================
   PANITA SYSTEM HOME / MENU / FOOTER - V1
   Unique prefix: nvSysMenuV1, nvHomeV1, nvSysFooterV1
   ========================================================= */

.nvHomePageV1{
    min-height:100vh;
    background:var(--nv-paper);
}

.nvHomePageV1 .Header{
    position:relative;
    background:var(--nv-paper-2);
    border-bottom:1px solid rgba(47,45,42,.14);
}

.nvSysMenuV1{
    padding:22px 48px;
}

.nvSysMenuV1__inner{
    align-items:center;
    gap:34px;
}

.nvSysMenuV1__brand{
    flex:0 0 auto;
}

.nvSysMenuV1__nav{
    flex:1 1 auto;
    display:flex;
    justify-content:flex-end;
}

.nvSysMenuV1__list{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:32px;
}

.nvSysMenuV1__item{
    position:relative;
}

.nvSysMenuV1__link{
    display:inline-flex;
    align-items:center;
    min-height:42px;
    color:var(--nv-biosort);
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.11em;
    font-size:12px;
    line-height:1;
    font-weight:700;
    transition:color .18s ease;
}

.nvSysMenuV1__link:hover,
.nvSysMenuV1__item:focus-within > .nvSysMenuV1__link,
.nvSysMenuV1__item.is-active > .nvSysMenuV1__link{
    color:var(--panita-green-dark);
    border-bottom:3px solid var(--panita-green);
}

.nvSysMenuV1__sub{
    position:absolute;
    top:100%;
    left:50%;
    min-width:230px;
    margin:0;
    padding:12px 0;
    list-style:none;
    background:var(--nv-paper-2);
    border:1px solid rgba(47,45,42,.16);
    box-shadow:0 22px 44px rgba(47,45,42,.16);
    transform:translate(-50%, 8px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
    z-index:80;
}

.nvSysMenuV1__item:hover > .nvSysMenuV1__sub,
.nvSysMenuV1__item:focus-within > .nvSysMenuV1__sub{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%, 0);
}

.nvSysMenuV1__sub a{
    display:block;
    padding:11px 18px;
    color:var(--nv-biosort);
    text-decoration:none;
    font-size:13px;
    line-height:1.35;
    font-weight:600;
    transition:background-color .16s ease, color .16s ease;
}

.nvSysMenuV1__sub a:hover,
.nvSysMenuV1__sub a:focus{
    background:rgba(1,134,63,.12);
    color:var(--panita-green-dark);
}

.nvSysMenuV1__toggle{
    display:none;
    border:1px solid rgba(47,45,42,.22);
    background:var(--nv-biosort);
    color:var(--nv-white);
    border-radius:3px;
    padding:10px 14px;
    text-transform:uppercase;
    letter-spacing:.1em;
    font-size:11px;
    font-weight:700;
    cursor:pointer;
}

.nvHomeMainV1{
    min-height:calc(100vh - 167px);
}

.nvHomeIntroV1{
    min-height:calc(100vh - 167px);
    background:var(--nv-paper);
    overflow:visible;
}

.nvHomeContentV1{
    min-height:calc(100vh - 167px);
    padding:30px 0;
    display:block;
}

.nvHomeContentV1__panel{
    min-height:420px;
    padding:20px;
    background:var(--nv-white);
    border:1px solid rgba(47,45,42,.14);
    box-shadow:0 18px 48px rgba(47,45,42,.08);
}

.nvHomeContentV1__title{
    margin:0;
    color:var(--nv-biosort);
    font-size:clamp(32px, 4vw, 56px);
    line-height:1;
    letter-spacing:-.045em;
    font-weight:700;
}

.nvSysFooterV1{
    padding:34px 48px;
}

.nvSysFooterV1__inner{
    align-items:center;
}

.nvSysFooterV1__credit{
    max-width:760px;
    font-size:.75em;
    text-transform:uppercase;
    letter-spacing:.02em;
}





/* =========================================================
   PANITA LOGOUT OVERLAY - V1
   Unique prefix: nvLogoutOverlayV1
   ========================================================= */

.nvLogoutOverlayV1{
    position:fixed;
    inset:0;
    z-index:99999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:rgba(47,45,42,.42);
    backdrop-filter:blur(9px);
    -webkit-backdrop-filter:blur(9px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .22s ease, visibility .22s ease;
}

.nvLogoutOverlayV1.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

.nvLogoutOverlayV1__card{
    width:min(420px, 100%);
    padding:34px 32px 32px;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    background:rgba(255,250,241,.96);
    border:1px solid rgba(255,255,255,.56);
    box-shadow:0 28px 80px rgba(0,0,0,.26);
}

.nvLogoutOverlayV1__loader{
    position:relative;
    display:inline-block;
    width:42px;
    height:42px;
    margin-bottom:22px;
    animation:nvLoginLoaderRotate 1s linear infinite;
}

.nvLogoutOverlayV1__loader span{
    position:absolute;
    left:18px;
    top:2px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--nv-green-dark);
    transform-origin:3px 19px;
}

.nvLogoutOverlayV1__loader span:nth-child(1){transform:rotate(0deg);opacity:1;}
.nvLogoutOverlayV1__loader span:nth-child(2){transform:rotate(45deg);opacity:.86;}
.nvLogoutOverlayV1__loader span:nth-child(3){transform:rotate(90deg);opacity:.74;}
.nvLogoutOverlayV1__loader span:nth-child(4){transform:rotate(135deg);opacity:.62;}
.nvLogoutOverlayV1__loader span:nth-child(5){transform:rotate(180deg);opacity:.50;}
.nvLogoutOverlayV1__loader span:nth-child(6){transform:rotate(225deg);opacity:.40;}
.nvLogoutOverlayV1__loader span:nth-child(7){transform:rotate(270deg);opacity:.30;}
.nvLogoutOverlayV1__loader span:nth-child(8){transform:rotate(315deg);opacity:.22;}

.nvLogoutOverlayV1__title{
    color:var(--nv-biosort);
    font-size:22px;
    line-height:1.15;
    letter-spacing:-.035em;
    font-weight:700;
}

.nvLogoutOverlayV1__note{
    margin-top:10px;
    color:var(--nv-biosort-soft);
    font-size:14px;
    line-height:1.55;
}

body.nvLogoutOverlayV1IsActive{
    overflow:hidden;
}








/* =========================================================
   PANITA PASSWORD RESET OVERLAY - V1
   Unique prefix: nvPasswordReset
   ========================================================= */

.nvPasswordResetOverlayV1{
    position:fixed;
    inset:0;
    z-index:99998;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
    background:rgba(47,45,42,.42);
    backdrop-filter:blur(9px);
    -webkit-backdrop-filter:blur(9px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .22s ease, visibility .22s ease;
}

.nvPasswordResetOverlayV1.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

body.nvPasswordResetOverlayV1IsActive{
    overflow:hidden;
}

.nvPasswordResetCardV1{
    width:min(360px, 100%);
    padding:0;
    background:rgba(255,250,241,.97);
    border:1px solid rgba(255,255,255,.56);
    box-shadow:0 24px 64px rgba(0,0,0,.24);
    overflow:hidden;
}

.nvPasswordResetCardV1__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 16px 12px;
    border-bottom:1px solid rgba(47,45,42,.14);
    background:rgba(255,255,255,.34);
}

.nvPasswordResetCardV1__title{
    margin:0;
    color:var(--nv-biosort);
    font-size:17px;
    line-height:1.15;
    letter-spacing:-.025em;
    font-weight:700;
}

.nvPasswordResetCardV1__close{
    width:28px;
    height:28px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0 rgba(180,35,24,.28);
    border-radius:3px;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
    font-size:15px;
    line-height:1;
    font-weight:700;
    cursor:pointer;
    
}

.nvPasswordResetCardV1__close:hover,
.nvPasswordResetCardV1__close:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}

.nvPasswordResetCardV1__status{
    min-height:17px;
    margin:10px 16px 0;
    padding:0;
    color:var(--nv-biosort-soft);
    font-size:11px;
    line-height:1.35;
    font-weight:700;
}

.nvPasswordResetCardV1__status.is-success{
    padding:9px 10px;
    border:1px solid rgba(102,122,45,.24);
    background:rgba(102,122,45,.10);
    color:var(--nv-green-dark);
}

.nvPasswordResetCardV1__status.is-error{
    padding:9px 10px;
    border:1px solid rgba(180,35,24,.24);
    background:rgba(180,35,24,.10);
    color:var(--nv-error);
}

#nvPasswordResetFormV1{
    padding:12px 16px 16px;
}

.nvPasswordResetFieldV1{
    margin:0 0 10px;
}

.nvPasswordResetFieldV1__label{
    display:block;
    margin:0 0 5px;
    color:var(--nv-biosort);
    font-size:11px;
    line-height:1.25;
    font-weight:700;
}

.nvPasswordResetFieldV1__label span{
    color:var(--nv-biosort-soft);
    font-size:10px;
    font-weight:700;
    text-transform:lowercase;
}

.nvPasswordResetInputWrapV1{
    position:relative;
}

.nvPasswordResetFieldV1__input{
    width:100%;
    min-height:38px;
    padding:9px 54px 9px 10px;
    border:1px solid var(--nv-line);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:13px;
    line-height:1.3;
    outline:none;
    transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.nvPasswordResetFieldV1__input:focus{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.14);
}

.nvPasswordResetFieldV1__input:disabled{
    background:rgba(247,244,238,.72);
    color:rgba(47,45,42,.52);
    cursor:not-allowed;
}

.nvPasswordResetToggleV1{
    position:absolute;
    top:50%;
    right:6px;
    min-width:42px;
    height:26px;
    padding:0 8px;
    border:0 rgba(47,45,42,.16);
    border-radius:3px;
    background:rgba(247,244,238,.9);
    color:var(--nv-biosort-soft);
    text-transform:uppercase;
    letter-spacing:.04em;
    font-size:9px;
    line-height:1;
    font-weight:800;
    cursor:pointer;
    transform:translateY(-50%);
    transition:background-color .16s ease, color .16s ease, border-color .16s ease;
}

.nvPasswordResetToggleV1:hover,
.nvPasswordResetToggleV1:focus{
    background:var(--panita-green);
    color:var(--nv-white);
    border-color:var(--panita-green);
}

.nvPasswordResetFieldV1__input:disabled + .nvPasswordResetToggleV1{
    opacity:.45;
    cursor:not-allowed;
}

.nvPasswordResetFieldV1__message{
    min-height:14px;
    margin-top:4px;
    color:var(--nv-biosort-soft);
    font-size:10px;
    line-height:1.3;
}

.nvPasswordResetFieldV1.is-invalid .nvPasswordResetFieldV1__input{
    border-color:var(--nv-error);
    box-shadow:0 0 0 3px rgba(180,35,24,.12);
}

.nvPasswordResetFieldV1.is-invalid .nvPasswordResetFieldV1__message{
    color:var(--nv-error);
    font-weight:700;
}

.nvPasswordResetFieldV1.is-valid .nvPasswordResetFieldV1__input{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.13);
}

.nvPasswordResetFieldV1.is-valid .nvPasswordResetFieldV1__message{
    color:var(--panita-green-dark);
    font-weight:700;
}

.nvPasswordResetChecklistV1{
    margin:2px 0 12px;
    padding:9px 10px;
    border:1px solid rgba(47,45,42,.12);
    border-radius:3px;
    background:rgba(255,255,255,.46);
}

.nvPasswordResetRuleV1{
    display:flex;
    align-items:center;
    gap:6px;
    color:var(--nv-biosort-soft);
    font-size:10px;
    line-height:1.55;
    font-weight:700;
}

.nvPasswordResetRuleV1 span{
    width:15px;
    display:inline-flex;
    justify-content:center;
    color:rgba(47,45,42,.48);
    font-size:11px;
    font-weight:900;
}

.nvPasswordResetRuleV1.is-passed{
    color:var(--panita-green-dark);
}

.nvPasswordResetRuleV1.is-passed span{
    color:var(--panita-green-dark);
}

.nvPasswordResetBtnV1{
    min-height:40px;
    margin-top:4px;
    font-size:10px;
}

.nvPasswordResetBtnV1:disabled{
    cursor:not-allowed;
    opacity:.62;
    box-shadow:none;
}

.nvPasswordResetSuccessV1{
    min-height:230px;
    display:none;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:34px 24px;
    text-align:center;
    background:rgba(255,250,241,.97);
}

.nvPasswordResetSuccessV1__icon{
    width:68px;
    height:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:14px;
    border-radius:50%;
    background:rgba(102,122,45,.14);
    color:var(--nv-green-dark);
    font-size:36px;
    line-height:1;
    box-shadow:0 16px 34px rgba(102,122,45,.14);
}

.nvPasswordResetSuccessV1__title{
    color:var(--panita-green-dark);
    font-size:19px;
    line-height:1.15;
    letter-spacing:-.02em;
    font-weight:800;
}

.nvPasswordResetSuccessV1__note{
    max-width:250px;
    margin-top:8px;
    color:var(--nv-biosort-soft);
    font-size:12px;
    line-height:1.45;
    font-weight:700;
}

.nvPasswordResetOverlayV1.is-success-mode .nvPasswordResetCardV1{
    width:min(300px, 100%);
}












/* =========================================================
   PANITA USER ALL TABLE - V1
   Unique prefix: nvUsrAll
   ========================================================= */
.nvUsrAllPageV1 .nvHomeIntroV1{
    min-height:calc(100vh - 167px);
}

.nvUsrAllShellV1{
    display:block;
    padding-top:34px;
}

.nvUsrAllPanelV1{
    width:100%;
    min-height:520px;
}

.nvUsrAllHeadV1{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:22px;
    padding-bottom:16px;
    border-bottom:1px solid rgba(47,45,42,.14);
}

.nvUsrAllEyebrowV1{
    margin:0 0 6px;
    color:var(--panita-green-dark);
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:11px;
    line-height:1.2;
    font-weight:800;
}

.nvUsrAllTitleV1{
    margin:0;
    color:var(--nv-biosort);
    font-size:1.6rem;
    line-height:1;
    letter-spacing:.02em;
    font-weight:500;
}

.nvUsrAllNoticeV1{
    min-width:260px;
    max-width:420px;
    display:none;
    padding:11px 14px;
    border-radius:3px;
    font-size:0.7rem;
    line-height:1.4;
    font-weight:600;
}

.nvUsrAllNoticeV1.is-visible{
    display:block;
}

.nvUsrAllNoticeV1.is-success{
    border:1px solid rgba(1,134,63,.26);
    background:rgba(1,134,63,.11);
    color:var(--panita-green-dark);
}

.nvUsrAllNoticeV1.is-error{
    border:1px solid rgba(180,35,24,.26);
    background:rgba(180,35,24,.10);
    color:var(--nv-error);
}

.nvUsrAllTableWrapV1{
    width:100%;
    /* overflow-x:auto; */
    border:1px solid rgba(47,45,42,.13);
    background:#fff;
}

.nvUsrAllTableV1{
    width:100%;
    border-collapse:collapse;
    min-width:760px;
}

.nvUsrAllTableV1 th,
.nvUsrAllTableV1 td{
    padding:5px;
    border-bottom:1px solid rgba(47,45,42,.10);
    text-align:center;
    color:var(--nv-biosort);
    font-size:0.8rem;
    line-height:1.35;
    vertical-align:middle;
}

.nvUsrAllTableV1 th{
    background:rgba(247,244,238,.78);
    text-transform:uppercase;
    letter-spacing:.07em;
    font-size:0.9em;
    font-weight:500;
    color:var(--nv-biosort-soft);
}

.nvUsrAllTableV1 tbody tr:hover{
    background:rgba(1,134,63,.06);
}

.nvUsrAllNameV1{
    font-weight:600;
}

.nvUsrAllResetColV1{
    width:96px;
    text-align:center !important;
}

.nvUsrAllEmptyV1{
    padding:15px 8px !important;
    text-align:center !important;
    color:var(--nv-biosort-soft) !important;
    font-weight:500;
}

.nvUsrAllStatusV1{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:82px;
    padding:8px;
    border-radius:3px;
    background:rgba(47,45,42,.08);
    color:var(--nv-biosort-soft);
    font-size:0.6rem;
    line-height:1;
    letter-spacing:.06em;
    font-weight:700;
}

.nvUsrAllStatusV1--active{
    background:rgba(102,122,45,.14);
    color:var(--nv-green-dark);
}

.nvUsrAllStatusV1--locked,
.nvUsrAllStatusV1--disabled{
    background:rgba(180,35,24,.10);
    color:var(--nv-error);
}

.nvUsrAllResetBtnV1{
    width:30px;
    height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    font-size:18px;
    line-height:1;
    font-weight:900;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, transform .18s ease, opacity .18s ease;
}

.nvUsrAllResetBtnV1:hover,
.nvUsrAllResetBtnV1:focus{
    background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    transform:scale(1.05);
}

.nvUsrAllResetBtnV1:disabled{
    opacity:.62;
    cursor:not-allowed;
    transform:none;
}

.nvUsrAllResetBtnV1.is-loading{
    animation:nvLoginLoaderRotate .8s linear infinite;
}

.nvUsrAllPagerV1{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px;
    margin-top:16px;
}

.nvUsrAllPagerBtnV1{
    
    padding:8px;
    border:1px solid var(--panita-green-dark);
    border-radius:3px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    text-transform:uppercase;

    font-size:0.7em;
    line-height:1;
    font-weight:600;
    cursor:pointer;
}

.nvUsrAllPagerBtnV1:disabled{
    opacity:.45;
    cursor:not-allowed;
}

.nvUsrAllPageInfoV1{
    color:var(--nv-biosort-soft);
    font-size:0.7em;
    line-height:1;
    font-weight:600;
	text-transform:uppercase;
}










/* =========================================================
   PANITA USER ALL FILTERS / ICON PAGER - V1
   Unique prefix: nvUsrAllFilter
   ========================================================= */

.nvUsrAllTableWrapV1{
    position:relative;
}

.nvUsrAllFilterBarV1{
    display:flex;
    align-items:flex-end;
    justify-content:flex-end;
    gap:8px;
    padding:10px;

}

.nvUsrAllFilterFieldV1{
    width:145px;
    display:flex;
    flex-direction:column;
    gap:4px;
}

.nvUsrAllFilterFieldV1--name{
    width:190px;
}

.nvUsrAllFilterFieldV1 label{
    color:var(--nv-biosort-soft);
    text-transform:uppercase;
    letter-spacing:.07em;
    font-size:0.58rem;
    line-height:1;
    font-weight:700;
}

.nvUsrAllFilterFieldV1 input,
.nvUsrAllFilterFieldV1 select{
    width:100%;
    min-height:30px;
    padding:5px 8px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:0.68rem;
    line-height:1.2;
    outline:none;
    transition:border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.nvUsrAllFilterFieldV1 input:focus,
.nvUsrAllFilterFieldV1 select:focus{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.12);
}

.nvUsrAllFilterClearV1{
    width:28px;
    height:28px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0 rgba(180,35,24,.28);
    border-radius:3px;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
    font-size:15px;
    line-height:1;
    font-weight:700;
    cursor:pointer;
}

.nvUsrAllFilterClearV1:hover,
.nvUsrAllFilterClearV1:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}





.nvUsrAllPagerV1{
    justify-content:flex-end;
    gap:6px;
}

.nvUsrAllPagerBtnV1{
    width:30px;
    height:30px;
    padding:0;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:3px;
    font-size:1rem;
    line-height:1;
    transition:background-color .16s ease, border-color .16s ease, transform .16s ease, opacity .16s ease;
}

.nvUsrAllPagerBtnV1:hover:not(:disabled),
.nvUsrAllPagerBtnV1:focus:not(:disabled){
    background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    transform:translateY(-1px);
}

.nvUsrAllPageInfoV1{
    min-width:54px;
    text-align:center;
}




/* =========================================================
   PANITA USER ADD / EDIT OVERLAY - V2
   Unique prefix: nvUsrAllUser
   ========================================================= */

.nvUsrAllActionBarV1{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding:0 10px 10px;
    background:#fff;
}

.nvUsrAllAddBtnV1,
.nvUsrAllSaveBtnV1{
    min-height:32px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px solid var(--panita-green-dark);
    border-radius:3px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    padding:0 14px;
    text-decoration:none;
    text-transform:normal;
    letter-spacing:.08em;
    font-size:.68rem;
    line-height:1;
    font-weight:600;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease, opacity .18s ease;
}

.nvUsrAllAddBtnV1:hover,
.nvUsrAllAddBtnV1:focus,
.nvUsrAllSaveBtnV1:hover,
.nvUsrAllSaveBtnV1:focus{
	background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    transform:scale(1.05);
}

.nvUsrAllSaveBtnV1{
    min-width:138px;
    min-height:40px;
}

.nvUsrAllSaveBtnV1.is-loading .nvUsrAllSaveBtnV1__text{
    display:none;
}

.nvUsrAllSaveBtnV1 .nvLoginButton__loader{
    display:none;
}

.nvUsrAllSaveBtnV1.is-loading .nvLoginButton__loader{
    display:inline-block;
    animation:nvLoginLoaderRotate 1s linear infinite;
}

.nvUsrAllSaveBtnV1:disabled{
    opacity:.72;
    cursor:not-allowed;
    transform:none;
}

.nvUsrAllEditColV1{
    width:70px;
    text-align:center !important;
}

.nvUsrAllEditBtnV1{
    width:30px;
    height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--panita-green-dark);
    font-size:15px;
    line-height:1;
    font-weight:900;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, transform .18s ease, color .18s ease;
}

.nvUsrAllEditBtnV1:hover,
.nvUsrAllEditBtnV1:focus{
    background:rgba(1,134,63,.12);
    border-color:var(--panita-green-dark);
    transform:scale(1.05);
}

.nvUsrAllUserOverlayV1{
    position:fixed;
    inset:0;
    z-index:99997;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
    background:rgba(47,45,42,.42);
    backdrop-filter:blur(9px);
    -webkit-backdrop-filter:blur(9px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .22s ease, visibility .22s ease;
}

.nvUsrAllUserOverlayV1.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

body.nvUsrAllUserOverlayV1IsActive{
    overflow:hidden;
}

.nvUsrAllUserCardV1{
    width:min(1180px, 100%);
    max-height:calc(100vh - 36px);
    display:grid;
    grid-template-rows:auto 1fr auto;
    background:rgba(255,255,255,.98);
    border:1px solid rgba(255,255,255,.58);
    border-radius:3px;
    box-shadow:0 28px 80px rgba(0,0,0,.26);
    overflow:hidden;
}

.nvUsrAllUserHeadV1{
    display:flex;
    align-items:center;
    gap:14px;
    padding:16px 20px;
    border-bottom:1px solid rgba(47,45,42,.14);
    background:rgba(255,255,255,.82);
}

.nvUsrAllUserHeadV1__icon{
    width:44px;
    height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.20);
    border-radius:50%;
    color:var(--nv-green-dark);
    font-size:21px;
    line-height:1;
}

.nvUsrAllUserHeadV1__title{
    margin:0;
    color:var(--nv-biosort);
    font-size:1.2rem;
    line-height:1.15;
    letter-spacing:-.025em;
    font-weight:700;
}

.nvUsrAllUserHeadV1__note{
    margin:5px 0 0;
    color:var(--nv-biosort-soft);
    font-size:.75rem;
    line-height:1.4;
    font-weight:600;
}

.nvUsrAllUserCloseV1{
    width:28px;
    height:28px;
    margin-left:auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0 rgba(180,35,24,.28);
    border-radius:3px;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
    font-size:15px;
    line-height:1;
    font-weight:700;
    cursor:pointer;
}

.nvUsrAllUserCloseV1:hover,
.nvUsrAllUserCloseV1:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}

.nvUsrAllUserBodyV1{
    min-height:0;
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    overflow:hidden;
}

.nvUsrAllUserSideV1{
    padding:22px 18px;
    border-right:1px solid rgba(47,45,42,.14);
    background:rgba(247,244,238,.30);
}

.nvUsrAllUserTabV1{
    width:100%;
    min-height:58px;
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:10px;
    padding:10px 12px;
    border:1px solid transparent;
    border-radius:3px;
    background:transparent;
    color:var(--nv-biosort);
    text-align:left;
    cursor:pointer;
    transition:background-color .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.nvUsrAllUserTabV1__icon{
    width:28px;
    display:inline-flex;
    justify-content:center;
    color:var(--panita-green-dark);
    font-size:18px;
    line-height:1;
    font-weight:900;
}

.nvUsrAllUserTabV1 strong{
    display:block;
    color:var(--nv-biosort);
    font-size:.78rem;
    line-height:1.2;
}

.nvUsrAllUserTabV1 small{
    display:block;
    margin-top:3px;
    color:var(--nv-biosort-soft);
    font-size:.66rem;
    line-height:1.2;
    font-weight:600;
}

.nvUsrAllUserTabV1.is-active{
    border-color:rgba(1,134,63,.24);
    background:rgba(1,134,63,.08);
    box-shadow:inset 3px 0 0 var(--panita-green);
}

.nvUsrAllUserFormV1{
    min-height:0;
    padding:22px 28px;
    overflow:auto;
}

.nvUsrAllFormSectionV1{
    margin-bottom:20px;
}

.nvUsrAllFormSectionV1__title{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 0 12px;
    padding-bottom:9px;
    border-bottom:1px solid rgba(47,45,42,.14);
    color:var(--nv-biosort);
    font-size:.82rem;
    line-height:1.2;
    font-weight:800;
}

.nvUsrAllFormSectionV1__title span{
    color:var(--panita-green-dark);
    font-size:16px;
}

.nvUsrAllFormGridV1{
    display:grid;
    grid-template-columns:repeat(2, minmax(180px, 1fr));
    gap:12px 18px;
}

.nvUsrAllFieldV1{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.nvUsrAllFieldV1 label{
    color:var(--nv-biosort-soft);
    font-size:.68rem;
    line-height:1.2;
    font-weight:700;
}

.nvUsrAllFieldV1 label span{
    color:var(--nv-error);
}

.nvUsrAllInputV1,
.nvUsrAllSelectV1{
    width:100%;
    min-height:34px;
    padding:7px 10px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:.74rem;
    line-height:1.3;
    outline:none;
    transition:border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.nvUsrAllInputV1:focus,
.nvUsrAllSelectV1:focus{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.12);
}

.nvUsrAllFieldMsgV1{
    min-height:13px;
    color:var(--nv-error);
    font-size:.62rem;
    line-height:1.25;
    font-weight:700;
}

.nvUsrAllFieldV1.is-invalid .nvUsrAllInputV1,
.nvUsrAllFieldV1.is-invalid .nvUsrAllSelectV1{
    border-color:var(--nv-error);
    box-shadow:0 0 0 3px rgba(180,35,24,.12);
}

.nvUsrAllFormHintV1{
    grid-column:1 / -1;
    padding:8px 10px;
    border:1px solid rgba(1,134,63,.18);
    border-radius:3px;
    background:rgba(1,134,63,.07);
    color:var(--panita-green-dark);
    font-size:.66rem;
    line-height:1.35;
    font-weight:700;
}

.nvUsrAllUserStatusV1{
    min-height:18px;
    margin-top:4px;
    color:var(--nv-biosort-soft);
    font-size:.68rem;
    line-height:1.35;
    font-weight:700;
}

.nvUsrAllUserStatusV1.is-success{
    padding:9px 10px;
    border:1px solid rgba(102,122,45,.24);
    border-radius:3px;
    background:rgba(102,122,45,.10);
    color:var(--nv-green-dark);
}

.nvUsrAllUserStatusV1.is-error{
    padding:9px 10px;
    border:1px solid rgba(180,35,24,.24);
    border-radius:3px;
    background:rgba(180,35,24,.10);
    color:var(--nv-error);
}

.nvUsrAllUserFootV1{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:18px;
    padding:14px 20px;
    border-top:1px solid rgba(47,45,42,.14);
    background:rgba(255,255,255,.90);
}

.nvUsrAllRequiredNoteV1{
    color:var(--nv-biosort-soft);
    font-size:.66rem;
    line-height:1.4;
    font-weight:600;
}

@media (max-width: 820px){
    .nvUsrAllUserBodyV1{
        grid-template-columns:1fr;
    }

    .nvUsrAllUserSideV1{
        display:flex;
        gap:8px;
        overflow:auto;
        border-right:0;
        border-bottom:1px solid rgba(47,45,42,.14);
    }

    .nvUsrAllUserTabV1{
        min-width:180px;
    }

    .nvUsrAllFormGridV1{
        grid-template-columns:1fr;
    }

    .nvUsrAllUserFootV1{
        align-items:stretch;
        flex-direction:column;
    }
}




/* =========================================================
   PANITA SELF PROFILE UPDATE - V1
   Unique prefix: nvSelfProf
   ========================================================= */

.nvSelfProfOverlayV1{
    position:fixed;
    inset:0;
    z-index:99998;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
    background:rgba(47,45,42,.42);
    backdrop-filter:blur(9px);
    -webkit-backdrop-filter:blur(9px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .22s ease, visibility .22s ease;
}

.nvSelfProfOverlayV1.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

body.nvSelfProfOverlayV1IsActive{
    overflow:hidden;
}

.nvSelfProfCardV1{
    width:min(1040px, 100%);
    max-height:calc(100vh - 36px);
    display:grid;
    grid-template-rows:auto 1fr auto;
    background:rgba(255,255,255,.98);
    border:1px solid rgba(255,255,255,.58);
    border-radius:3px;
    box-shadow:0 28px 80px rgba(0,0,0,.26);
    overflow:hidden;
}

.nvSelfProfHeadV1{
    display:flex;
    align-items:center;
    gap:14px;
    padding:16px 20px;
    border-bottom:1px solid rgba(47,45,42,.14);
    background:rgba(255,255,255,.82);
}

.nvSelfProfHeadV1__icon{
    width:44px;
    height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.20);
    border-radius:50%;
    color:var(--nv-green-dark);
    font-size:21px;
    line-height:1;
}

.nvSelfProfHeadV1__title{
    margin:0;
    color:var(--nv-biosort);
    font-size:1.2rem;
    line-height:1.15;
    letter-spacing:-.025em;
    font-weight:700;
}

.nvSelfProfHeadV1__note{
    margin:5px 0 0;
    color:var(--nv-biosort-soft);
    font-size:.75rem;
    line-height:1.4;
    font-weight:600;
}

.nvSelfProfCloseV1{
    width:28px;
    height:28px;
    margin-left:auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:3px;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
    font-size:15px;
    line-height:1;
    font-weight:700;
    cursor:pointer;
}

.nvSelfProfCloseV1:hover,
.nvSelfProfCloseV1:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}

.nvSelfProfBodyV1{
    min-height:0;
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    overflow:hidden;
}

.nvSelfProfSideV1{
    padding:22px 18px;
    border-right:1px solid rgba(47,45,42,.14);
    background:rgba(247,244,238,.30);
}

.nvSelfProfTabV1{
    width:100%;
    min-height:58px;
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:10px;
    padding:10px 12px;
    border:1px solid transparent;
    border-radius:3px;
    background:transparent;
    color:var(--nv-biosort);
    text-align:left;
    cursor:pointer;
    transition:background-color .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.nvSelfProfTabV1__icon{
    width:28px;
    display:inline-flex;
    justify-content:center;
    color:var(--panita-green-dark);
    font-size:18px;
    line-height:1;
    font-weight:900;
}

.nvSelfProfTabV1 strong{
    display:block;
    color:var(--nv-biosort);
    font-size:.78rem;
    line-height:1.2;
}

.nvSelfProfTabV1 small{
    display:block;
    margin-top:3px;
    color:var(--nv-biosort-soft);
    font-size:.66rem;
    line-height:1.2;
    font-weight:600;
}

.nvSelfProfTabV1.is-active{
    border-color:rgba(1,134,63,.24);
    background:rgba(1,134,63,.08);
    box-shadow:inset 3px 0 0 var(--panita-green);
}

.nvSelfProfFormV1{
    min-height:0;
    padding:22px 28px;
    overflow:auto;
}

.nvSelfProfSectionV1{
    margin-bottom:20px;
}

.nvSelfProfSectionV1__title{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 0 12px;
    padding-bottom:9px;
    border-bottom:1px solid rgba(47,45,42,.14);
    color:var(--nv-biosort);
    font-size:.82rem;
    line-height:1.2;
    font-weight:800;
}

.nvSelfProfSectionV1__title span{
    color:var(--panita-green-dark);
    font-size:16px;
}

.nvSelfProfGridV1{
    display:grid;
    grid-template-columns:repeat(2, minmax(180px, 1fr));
    gap:12px 18px;
}

.nvSelfProfFieldV1{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.nvSelfProfFieldV1 label{
    color:var(--nv-biosort-soft);
    font-size:.68rem;
    line-height:1.2;
    font-weight:700;
}

.nvSelfProfFieldV1 label span{
    color:var(--nv-error);
}

.nvSelfProfInputV1,
.nvSelfProfSelectV1{
    width:100%;
    min-height:34px;
    padding:7px 10px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:.74rem;
    line-height:1.3;
    outline:none;
    transition:border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.nvSelfProfInputV1:focus,
.nvSelfProfSelectV1:focus{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.12);
}

.nvSelfProfFieldMsgV1{
    min-height:13px;
    color:var(--nv-error);
    font-size:.62rem;
    line-height:1.25;
    font-weight:700;
}

.nvSelfProfFieldV1.is-invalid .nvSelfProfInputV1,
.nvSelfProfFieldV1.is-invalid .nvSelfProfSelectV1{
    border-color:var(--nv-error);
    box-shadow:0 0 0 3px rgba(180,35,24,.12);
}

.nvSelfProfStatusV1{
    min-height:18px;
    margin-top:4px;
    color:var(--nv-biosort-soft);
    font-size:.68rem;
    line-height:1.35;
    font-weight:700;
}

.nvSelfProfStatusV1.is-success{
    padding:9px 10px;
    border:1px solid rgba(102,122,45,.24);
    border-radius:3px;
    background:rgba(102,122,45,.10);
    color:var(--nv-green-dark);
}

.nvSelfProfStatusV1.is-error{
    padding:9px 10px;
    border:1px solid rgba(180,35,24,.24);
    border-radius:3px;
    background:rgba(180,35,24,.10);
    color:var(--nv-error);
}

.nvSelfProfFootV1{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:18px;
    padding:14px 20px;
    border-top:1px solid rgba(47,45,42,.14);
    background:rgba(255,255,255,.90);
}

.nvSelfProfSaveBtnV1{
    min-width:148px;
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px solid var(--panita-green-dark);
    border-radius:3px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    padding:0 14px;
    text-decoration:none;
    letter-spacing:.08em;
    font-size:.68rem;
    line-height:1;
    font-weight:600;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease, opacity .18s ease;
}

.nvSelfProfSaveBtnV1:hover,
.nvSelfProfSaveBtnV1:focus{
    background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    transform:scale(1.05);
}

.nvSelfProfSaveBtnV1.is-loading .nvSelfProfSaveBtnV1__text{
    display:none;
}

.nvSelfProfSaveBtnV1 .nvLoginButton__loader{
    display:none;
}

.nvSelfProfSaveBtnV1.is-loading .nvLoginButton__loader{
    display:inline-block;
    animation:nvLoginLoaderRotate 1s linear infinite;
}

.nvSelfProfSaveBtnV1:disabled{
    opacity:.72;
    cursor:not-allowed;
    transform:none;
}

@media (max-width: 820px){
    .nvSelfProfBodyV1{
        grid-template-columns:1fr;
    }

    .nvSelfProfSideV1{
        display:flex;
        gap:8px;
        overflow:auto;
        padding:12px;
        border-right:0;
        border-bottom:1px solid rgba(47,45,42,.14);
    }

    .nvSelfProfTabV1{
        min-width:180px;
        margin-bottom:0;
    }

    .nvSelfProfGridV1{
        grid-template-columns:1fr;
    }

    .nvSelfProfFootV1{
        justify-content:center;
    }
}








/* =========================================================
   PANITA BUDGET LINES MANAGEMENT - V1
   Unique prefix: nvBgtLnAll
   ========================================================= */

.nvBgtLnAllShellV1{
    display:block;
}

.nvBgtLnAllFilterBarV1{
    justify-content:flex-end;
}

.nvBgtLnAllActionBarV1{
    justify-content:flex-start;
}

.nvBgtLnAllTableV1{
    min-width:720px;
}

.nvBgtLnAllSnColV1{
    width:70px;
    text-align:center !important;
}

.nvBgtLnAllEditColV1{
    width:92px;
    text-align:center !important;
}

.nvBgtLnAllNameV1{
    min-width:240px;
	font-weight:400;
}

.nvBgtLnAllStatusV1--active{
    background:rgba(102,122,45,.14);
    color:var(--nv-green-dark);
}

.nvBgtLnAllStatusV1--inactive{
    background:rgba(180,35,24,.10);
    color:var(--nv-error);
}

.nvBgtLnAllEditorRowV1{
    background:rgba(1,134,63,.055);
}

.nvBgtLnAllEditorRowV1:hover{
    background:rgba(1,134,63,.075) !important;
}

.nvBgtLnAllFieldV1{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.nvBgtLnAllInputV1,
.nvBgtLnAllSelectV1{
    width:100%;
    min-height:30px;
    padding:5px 8px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:.72rem;
    line-height:1.25;
    outline:none;
    transition:border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.nvBgtLnAllInputV1:focus,
.nvBgtLnAllSelectV1:focus{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.12);
}

.nvBgtLnAllFieldMsgV1{
    min-height:12px;
    color:var(--nv-error);
    font-size:.58rem;
    line-height:1.2;
    font-weight:700;
}

.nvBgtLnAllFieldV1.is-invalid .nvBgtLnAllInputV1,
.nvBgtLnAllFieldV1.is-invalid .nvBgtLnAllSelectV1{
    border-color:var(--nv-error);
    box-shadow:0 0 0 3px rgba(180,35,24,.12);
}

.nvBgtLnAllRowActionsV1{
    white-space:nowrap;
}

.nvBgtLnAllRowSaveBtnV1,
.nvBgtLnAllRowCloseBtnV1{
    width:30px;
    height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    font-size:15px;
    line-height:1;
    font-weight:900;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, transform .18s ease, opacity .18s ease;
}

.nvBgtLnAllRowSaveBtnV1{
    margin-right:5px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    border-color:var(--panita-green-dark);
}

.nvBgtLnAllRowSaveBtnV1:hover,
.nvBgtLnAllRowSaveBtnV1:focus{
    background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    transform:scale(1.05);
}

.nvBgtLnAllRowCloseBtnV1{
    border:0;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
}

.nvBgtLnAllRowCloseBtnV1:hover,
.nvBgtLnAllRowCloseBtnV1:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}

.nvBgtLnAllRowSaveBtnV1:disabled,
.nvBgtLnAllRowCloseBtnV1:disabled{
    opacity:.62;
    cursor:not-allowed;
    transform:none;
}

.nvBgtLnAllRowSaveBtnV1.is-loading{
    animation:nvLoginLoaderRotate .8s linear infinite;
}












/* =========================================================
   PANITA PROJECT NAME MANAGEMENT - V1
   Unique prefix: nvPrjNmAll
   ========================================================= */

.nvPrjNmAllShellV1{
    display:block;
}

.nvPrjNmAllFilterBarV1{
    justify-content:flex-end;
}

.nvPrjNmAllActionBarV1{
    justify-content:flex-start;
}

.nvPrjNmAllTableV1{
    min-width:880px;
}

.nvPrjNmAllSnColV1{
    width:70px;
    text-align:center !important;
}

.nvPrjNmAllEditColV1{
    width:92px;
    text-align:center !important;
}

.nvPrjNmAllNameV1{
    min-width:240px;
    font-weight:400;
}

.nvPrjNmAllPreviewV1{
    min-width:190px;
    font-family:Consolas, Monaco, monospace;
    font-size:.72rem !important;
    font-weight:700;
    color:var(--panita-green-dark) !important;
}

.nvPrjNmAllStatusV1--active{
    background:rgba(102,122,45,.14);
    color:var(--nv-green-dark);
}

.nvPrjNmAllStatusV1--inactive{
    background:rgba(180,35,24,.10);
    color:var(--nv-error);
}

.nvPrjNmAllEditorRowV1{
    background:rgba(1,134,63,.055);
}

.nvPrjNmAllEditorRowV1:hover{
    background:rgba(1,134,63,.075) !important;
}

.nvPrjNmAllFieldV1{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.nvPrjNmAllInputV1,
.nvPrjNmAllSelectV1{
    width:100%;
    min-height:30px;
    padding:5px 8px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:.72rem;
    line-height:1.25;
    outline:none;
    transition:border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.nvPrjNmAllInputV1:focus,
.nvPrjNmAllSelectV1:focus{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.12);
}

.nvPrjNmAllFieldMsgV1{
    min-height:12px;
    color:var(--nv-error);
    font-size:.58rem;
    line-height:1.2;
    font-weight:700;
}

.nvPrjNmAllFieldV1.is-invalid .nvPrjNmAllInputV1,
.nvPrjNmAllFieldV1.is-invalid .nvPrjNmAllSelectV1{
    border-color:var(--nv-error);
    box-shadow:0 0 0 3px rgba(180,35,24,.12);
}

.nvPrjNmAllRowActionsV1{
    white-space:nowrap;
}

.nvPrjNmAllRowSaveBtnV1,
.nvPrjNmAllRowCloseBtnV1{
    width:30px;
    height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    font-size:15px;
    line-height:1;
    font-weight:900;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, transform .18s ease, opacity .18s ease;
}

.nvPrjNmAllRowSaveBtnV1{
    margin-right:5px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    border-color:var(--panita-green-dark);
}

.nvPrjNmAllRowSaveBtnV1:hover,
.nvPrjNmAllRowSaveBtnV1:focus{
    background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    transform:scale(1.05);
}

.nvPrjNmAllRowCloseBtnV1{
    border:0;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
}

.nvPrjNmAllRowCloseBtnV1:hover,
.nvPrjNmAllRowCloseBtnV1:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}

.nvPrjNmAllRowSaveBtnV1:disabled,
.nvPrjNmAllRowCloseBtnV1:disabled{
    opacity:.62;
    cursor:not-allowed;
    transform:none;
}

.nvPrjNmAllRowSaveBtnV1.is-loading{
    animation:nvLoginLoaderRotate .8s linear infinite;
}





/* =========================================================
   PANITA SYSTEM PATH TITLE / BREADCRUMB - V1
   Unique prefix: nvSysPathTitle
   ========================================================= */

.nvSysPathTitleV1{
    /* display:flex; */
    align-items:center;
    flex-wrap:wrap;
    gap:9px;
    margin:0;
}

.nvSysPathTitleV1__home{
    width:20px;
    height:20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    opacity:.50;
    text-decoration:none;
    transition:opacity .16s ease, transform .16s ease;
}

.nvSysPathTitleV1__home img{
    width:13px;
    height:13px;
    display:block;
    object-fit:contain;
}

.nvSysPathTitleV1__home:hover,
.nvSysPathTitleV1__home:focus{
    opacity:1;
    transform:scale(1.04);
}

.nvSysPathTitleV1__parent,
.nvSysPathTitleV1__sep{
    color:var(--nv-biosort);
    font-size:40%;
    line-height:1;
    letter-spacing:.02em;
    font-weight:500;
    opacity:.50;
}

.nvSysPathTitleV1__parent{
    cursor:default;
    text-transform:uppercase;
}

.nvSysPathTitleV1__sep{
    user-select:none;
}

.nvSysPathTitleV1__current{
    color:var(--nv-biosort);
    font-size:100%;
    line-height:1;
    letter-spacing:-.035em;
    font-weight:500;
    opacity:1;
}

.nvSysPathTitleV1__link{
    color:var(--nv-biosort);
    text-decoration:none;
	font-size:40%;
	text-transform:uppercase;
    opacity:.50;
    transition:opacity .16s ease;
}

.nvSysPathTitleV1__link:hover,
.nvSysPathTitleV1__link:focus{
    opacity:1;
}









/* =========================================================
   PANITA PAYMENT VOUCHER LIST - V1
   Unique prefix: nvPvAll
   ========================================================= */
.nvPvAllShellV1{display:block;}
.nvPvAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvPvAllActionBarV1{justify-content:flex-start;}
.nvPvAllTableV1{min-width:980px;}
.nvPvAllSnColV1{width:70px;text-align:center !important;}
.nvPvAllEditColV1{width:92px;text-align:center !important;}
.nvPvAllNoV1{min-width:170px;font-family:Consolas, Monaco, monospace;font-weight:700;color:var(--panita-green-dark) !important;}
.nvPvAllNoV1 a{color:var(--panita-green-dark);text-decoration:none;}
.nvPvAllNoV1 a:hover,.nvPvAllNoV1 a:focus{text-decoration:underline;text-underline-offset:3px;}
.nvPvAllPayeeV1{min-width:180px;font-weight:600;}
.nvPvAllStatusV1{
    min-width:96px;
    border:1px solid transparent;
    background:rgba(47,45,42,.08);
    color:var(--nv-biosort-soft);
}

.nvPvAllStatusV1--draft{
    background:var(--nv-status-draft-bg);
    color:var(--nv-status-draft-text);
    border-color:var(--nv-status-draft-border);
}

.nvPvAllStatusV1--under-review,
.nvPvAllStatusV1--under_review{
    background:var(--nv-status-under-review-bg);
    color:var(--nv-status-under-review-text);
    border-color:var(--nv-status-under-review-border);
}

.nvPvAllStatusV1--reviewed{
    background:var(--nv-status-reviewed-bg);
    color:var(--nv-status-reviewed-text);
    border-color:var(--nv-status-reviewed-border);
}

.nvPvAllStatusV1--approved{
    background:var(--nv-status-approved-bg);
    color:var(--nv-status-approved-text);
    border-color:var(--nv-status-approved-border);
}

.nvPvAllStatusV1--rejected{
    background:var(--nv-status-rejected-bg);
    color:var(--nv-status-rejected-text);
    border-color:var(--nv-status-rejected-border);
}

.nvPvAllStatusV1--cancelled{
    background:var(--nv-status-cancelled-bg);
    color:var(--nv-status-cancelled-text);
    border-color:var(--nv-status-cancelled-border);
}

.nvPvAllStatusV1--posted{
    background:var(--nv-status-posted-bg);
    color:var(--nv-status-posted-text);
    border-color:var(--nv-status-posted-border);
}
.nvPvAllOpenBtnV1{text-decoration:none;}
.nvPvAllFilterFieldV1--pvno{width:170px;}









/* =========================================================
   PANITA PAYMENT VOUCHER CREATE / EDIT / VIEW - V1
   Unique prefix: nvPv
   ========================================================= */
.nvPvFormShellV1,.nvPvViewShellV1{display:block;padding-top:34px;}
.nvPvFormPanelV1,.nvPvViewPanelV1{width:100%;min-height:520px;background:#fff;border:1px solid rgba(47,45,42,.14);box-shadow:0 18px 48px rgba(47,45,42,.08);}
.nvPvFormV1,.nvPvViewCardV1{padding:18px;}
.nvPvFormHeadV1,{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid var(--panita-green-dark);}
.nvPvFormHeadV1__left,.nvPvViewHeadV1__left,.nvPvViewHeadV1__right{display:flex;align-items:center;gap:12px;}
.nvPvFormHeadV1__icon,.nvPvViewHeadV1__icon{color:var(--panita-green-dark);font-size:1.05rem;line-height:1;}
.nvPvFormTitleV1,.nvPvViewTitleV1{margin:0;color:var(--nv-biosort);font-size:1.08rem;line-height:1.15;font-weight:700;letter-spacing:-.015em;}
.nvPvFormStatusV1,.nvPvViewStatusV1{min-height:18px;color:var(--nv-biosort-soft);font-size:.7rem;line-height:1.35;font-weight:700;}
.nvPvFormStatusV1.is-success,.nvPvViewStatusV1.is-success{padding:8px 10px;border:1px solid rgba(102,122,45,.24);border-radius:3px;background:rgba(102,122,45,.10);color:var(--nv-green-dark);}
.nvPvFormStatusV1.is-error,.nvPvViewStatusV1.is-error{padding:8px 10px;border:1px solid rgba(180,35,24,.24);border-radius:3px;background:rgba(180,35,24,.10);color:var(--nv-error);}
.nvPvFormGridV1{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin-bottom:12px;}
.nvPvFieldV1,.nvPvLineFieldV1{display:flex;flex-direction:column;gap:5px;}
.nvPvFieldV1 label{color:var(--nv-biosort);font-size:.75rem;line-height:1.2;font-weight:700;}
.nvPvFieldV1 label span,.nvPvLinesTableV1 th span{color:var(--nv-error);}
.nvPvInputV1,.nvPvLineInputV1{width:100%;min-height:34px;padding:7px 9px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.72rem;line-height:1.3;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;}
.nvPvInputV1:focus,.nvPvLineInputV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12);}
.nvPvTextareaV1{min-height:74px;resize:vertical;}
.nvPvFieldV1--wide{margin:4px 0 14px;}
.nvPvFieldMsgV1,.nvPvLineMsgV1{min-height:12px;color:var(--nv-error);font-size:.58rem;line-height:1.2;font-weight:700;}
.nvPvFieldV1.is-invalid .nvPvInputV1,.nvPvLineFieldV1.is-invalid .nvPvLineInputV1,.nvPvFieldV1.is-invalid input[type=file]{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12);}
.nvPvSectionTitleV1,.nvPvViewSectionTitleV1{margin:14px 0 8px;color:var(--nv-biosort);font-size:.8rem;line-height:1.2;font-weight:600;}
.nvPvLinesWrapV1{border:1px solid rgba(47,45,42,.13);border-radius:3px;background:#fff;overflow-x:auto;padding-bottom:10px;}
.nvPvLinesTableV1,.nvPvViewLinesTableV1{width:100%;min-width:860px;border-collapse:collapse; border-radius:3px;}
.nvPvLinesTableV1 th,.nvPvLinesTableV1 td,.nvPvViewLinesTableV1 th,.nvPvViewLinesTableV1 td{padding:7px;border:1px solid rgba(47,45,42,.10);text-align:left;vertical-align:middle;font-size:.75rem;line-height:1.35;color:var(--nv-biosort);}


.nvPvLinesTableV1 th,.nvPvViewLinesTableV1 th{background:rgba(247,244,238,.88);font-size:.7rem;font-weight:700;}
.nvPvLineNoV1{width:42px;text-align:center!important;}
.nvPvLineActionV1{width:74px;text-align:center!important;}
.nvPvLineRemoveBtnV1{width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:3px;background:rgba(180,35,24,.08);color:var(--nv-error);font-size:15px;font-weight:900;cursor:pointer;}
.nvPvLineRemoveBtnV1:hover,.nvPvLineRemoveBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}



.nvPvAddLineBtnV1{min-height:28px;margin:10px auto 0;display:flex;align-items:center;justify-content:center;border:1px solid var(--panita-green-dark);border-radius:3px;background:var(--panita-green-dark);color:#fff;padding:0 14px;font-size:.62rem;font-weight:700;cursor:pointer;}



.nvPvAttachmentGridV1{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(47,45,42,.10);}
.nvPvAttachmentItemV1 label{display:flex;align-items:center;gap:5px;color:var(--nv-biosort);font-size:.7rem;font-weight:700;white-space:nowrap;}
.nvPvAttachmentItemV1 input[type=file]{width:100%;min-height:30px;padding:5px;border:1px solid rgba(47,45,42,.16);border-radius:3px;background:#fff;font-size:.58rem;}
.nvPvAttachmentItemV1 input[type=file]:disabled{opacity:.48;background:rgba(247,244,238,.72);}
.nvPvExistingAttachmentsV1{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px;}
.nvPvExistingAttachmentsV1__title{width:100%;color:var(--nv-biosort-soft);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.nvPvExistingAttachmentV1{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(47,45,42,.12);border-radius:3px;background:rgba(247,244,238,.45);padding:5px 7px;font-size:.64rem;font-weight:700;}
.nvPvExistingAttachmentV1 a{color:var(--panita-green-dark);text-decoration:none;}
.nvPvDeleteAttachmentBtnV1{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border:0;background:rgba(180,35,24,.08);color:var(--nv-error);border-radius:3px;font-weight:900;cursor:pointer;}
.nvPvFormFootV1{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:18px;padding-top:12px;border-top:1px solid rgba(47,45,42,.12);}
.nvPvCancelBtnV1,.nvPvSaveBtnV1,.nvPvPrintBtnV1{min-height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;padding:0 20px;text-decoration:none;font-size:.68rem;line-height:1;font-weight:700;cursor:pointer;}
.nvPvCancelBtnV1{border:1px solid rgba(47,45,42,.24);background:#fff;color:var(--nv-biosort);}
.nvPvSaveBtnV1{min-width:130px;border:1px solid var(--panita-green-dark);background:var(--nv-biosort);color:#fff;}
.nvPvSaveBtnV1:hover,.nvPvSaveBtnV1:focus,.nvPvPrintBtnV1:hover,.nvPvPrintBtnV1:focus{background:var(--panita-green-dark);border-color:var(--panita-green-dark);transform:scale(1.03);}
.nvPvSaveBtnV1.is-loading .nvPvSaveBtnV1__text{display:none;}
.nvPvSaveBtnV1 .nvLoginButton__loader{display:none;}
.nvPvSaveBtnV1.is-loading .nvLoginButton__loader{display:inline-block;animation:nvLoginLoaderRotate 1s linear infinite;}
.nvPvSaveBtnV1:disabled{opacity:.70;cursor:not-allowed;transform:none;}
.nvPvEditMetaV1{display:flex;align-items:center;gap:10px;margin:-4px 0 14px;padding:8px 10px;border:1px solid rgba(1,134,63,.18);border-radius:3px;background:rgba(1,134,63,.07);font-size:.68rem;color:var(--panita-green-dark);font-weight:700;}


.nvPvViewNoV1{font-family:Consolas, Monaco, monospace;color:var(--nv-biosort);font-size:.82rem;}
.nvPvViewBadgeV1{display:inline-flex;align-items:center;justify-content:center;min-width:78px;padding:6px 10px;border-radius:999px;background:rgba(47,45,42,.08);color:var(--nv-biosort-soft);font-size:.58rem;font-weight:900;text-transform:uppercase;}
.nvPvViewBadgeV1--approved,.nvPvViewBadgeV1--reviewed,.nvPvViewBadgeV1--under_review{background:rgba(102,122,45,.14);color:var(--nv-green-dark);}
.nvPvViewBadgeV1--rejected,.nvPvViewBadgeV1--cancelled{background:rgba(180,35,24,.10);color:var(--nv-error);}
.nvPvViewBadgeV1--posted{background:rgba(47,45,42,.14);color:var(--nv-biosort);}
.nvPvPrintBtnV1{border:1px solid rgba(47,45,42,.20);background:#fff;color:var(--nv-biosort);}
.nvPvViewMetaGridV1{
    display:grid;
    grid-template-columns:1fr 1.5fr 1.5fr 1.1fr .8fr;
    border:1px solid rgba(47,45,42,.16);
    border-radius:3px;
}
.nvPvViewMetaGridV1 div{padding:10px 12px;border-right:1px solid rgba(47,45,42,.08);}
.nvPvViewMetaGridV1 div:last-child{border-right:0;}
.nvPvViewMetaGridV1 span,.nvPvViewPurposeV1 span,.nvPvViewPostingV1 span,.nvPvViewSignBoxV1 span{display:block;color:var(--nv-biosort-soft);font-size:.8rem;line-height:1.2;font-weight:700;}
.nvPvViewMetaGridV1 strong{display:block;margin-top:4px;color:var(--nv-biosort);font-size:.8rem;line-height:1.3;font-weight:550;}
.nvPvViewPurposeV1,.nvPvViewPostingV1{padding:10px 12px;border:1px solid rgba(47,45,42,.14);border-radius:3px;background:#fff;}
.nvPvViewPurposeV1 p,.nvPvViewPostingV1 p{margin:5px 0 0;color:var(--nv-biosort);font-size:.72rem;line-height:1.45;font-weight:600;}




.nvPvViewLinesTableV1 tfoot td{font-weight:700;background:rgba(247,244,238,.76); font-size: .9rem;}
.nvPvViewLinesTableV1 tfoot td{text-align:right; text-decoration:underline double; text-underline-offset:2px;}
.nvPvViewLinesTableV1 tfoot td:first-child{text-align:right; text-decoration:none;}


.nvPvTooltipCodeV1{position:relative;display:inline-flex;align-items:center;color:var(--panita-green-dark);font-family:Consolas, Monaco, monospace;font-weight:900;cursor:help;}
.nvPvTooltipCodeV1:hover::after,.nvPvTooltipCodeV1:focus::after{content:attr(data-tip);position:absolute;left:0;top:150%;z-index:50;min-width:160px;max-width:300px;padding:8px 10px;border-radius:3px;background:var(--panita-green);color:#fff;font-family:var(--nv-font);font-size:.7rem;line-height:1.35;white-space:normal; font-weight:500;}
#nvPvViewDebitTotalV1.is-unbalanced,#nvPvViewCreditTotalV1.is-unbalanced{color:var(--nv-error)!important;}
#nvPvViewDebitTotalV1.is-balanced,#nvPvViewCreditTotalV1.is-balanced{color:var(--panita-green-dark)!important;}
.nvPvViewAttachmentsV1{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:8px;
    padding:5px 0 8px;
}

.nvPvViewAttachmentsV1 .nvPvExistingAttachmentsV1__title{
    width:100%;
    color:var(--nv-biosort-soft);
    font-size:.62rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.nvPvViewAttachmentsV1 .nvPvExistingAttachmentV1{
    display:inline-flex;
    align-items:center;
    gap:6px;
    border:1px solid rgba(47,45,42,.12);
    border-radius:3px;
    background:rgba(247,244,238,.45);
    padding:5px 7px;
    font-size:.64rem;
    font-weight:700;
}

.nvPvViewAttachmentsV1 .nvPvExistingAttachmentV1 a{
    color:var(--panita-green-dark);
    text-decoration:none;
}

.nvPvViewAttachmentsV1 .nvPvExistingAttachmentV1 a:hover,
.nvPvViewAttachmentsV1 .nvPvExistingAttachmentV1 a:focus{
    text-decoration:underline;
    text-underline-offset:3px;
}

.nvPvViewNoAttachmentV1{
    display:inline-flex;
    align-items:center;
    border:1px solid rgba(47,45,42,.12);
    border-radius:3px;
    background:rgba(247,244,238,.45);
    padding:5px 7px;
    color:var(--nv-biosort-soft);
    font-size:.64rem;
    font-weight:700;
}
.nvPvViewSignGridV1{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border:1px solid rgba(47,45,42,.14);
    border-right:0;
	border-radius: 3px;
    margin-top:8px;
}

.nvPvViewSignBoxV1{
    min-height:74px;
    padding:9px 12px;
    border-right:1px solid rgba(47,45,42,.14);
    text-align:center;
}

.nvPvViewSignBoxV1 span,
.nvPvViewSignBoxV1 strong,
.nvPvViewSignBoxV1 small,
.nvPvViewSignBoxV1 em{
    text-align:center;
	font-size:.75rem;
	
}

.nvPvViewSignBoxV1 strong{
    display:block;
    margin-top:5px;
    color:var(--nv-biosort);
    font-size:.7rem;
    line-height:1.25;
    font-weight:700;
	text-transform:uppercase;
}

.nvPvViewSignBoxV1 small{
    display:block;
    margin-top:3px;
    min-height:14px;
    color:var(--nv-biosort-soft);
    font-size:.6rem;
    line-height:1.25;
    font-weight:500;
	text-transform:uppercase;
}

.nvPvViewSignBoxV1 em{
    display:block;
    margin-top:4px;
    color:var(--nv-biosort-soft);
    font-size:.55rem;
    line-height:1.25;
    font-style:normal;
    font-weight:600;
}













/* =========================================================
   PAYMENT VOUCHER CREATE FORM PATCH - V2
   Align create form actions with pvAll and line remove styling
   ========================================================= */

#nvPvAddLineBtnV1,
.nvPvSaveBtnV1{
    min-height:32px;
    /* display:inline-flex; */
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px solid var(--panita-green-dark);
    border-radius:3px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    padding:0 14px;
    text-decoration:none;
    text-transform:normal;
    letter-spacing:.08em;
    font-size:.68rem;
    line-height:1;
    font-weight:600;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease, opacity .18s ease;
}

#nvPvAddLineBtnV1:hover,
#nvPvAddLineBtnV1:focus,
.nvPvSaveBtnV1:hover,
.nvPvSaveBtnV1:focus{
    background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    transform:scale(1.05);
}

#nvPvAddLineBtnV1{
    width:auto;
    margin:10px auto 0;
}

.nvPvSaveBtnV1{
    min-width:138px;
    min-height:40px;
}

.nvPvSaveBtnV1.is-loading .nvPvSaveBtnV1__text{
    display:none;
}

.nvPvSaveBtnV1 .nvLoginButton__loader{
    display:none;
}

.nvPvSaveBtnV1.is-loading .nvLoginButton__loader{
    display:inline-block;
    animation:nvLoginLoaderRotate 1s linear infinite;
}

#nvPvAddLineBtnV1:disabled,
.nvPvSaveBtnV1:disabled{
    opacity:.72;
    cursor:not-allowed;
    transform:none;
}

/* Make Cancel look exactly like the payment-line remove button */
.nvPvCancelBtnV1{
    min-width:138px;
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:3px;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
    padding:0;
    text-decoration:none;
	font-size:.7rem;
    line-height:1;
    font-weight:0;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, transform .18s ease, opacity .18s ease, box-shadow .18s ease;
}

.nvPvCancelBtnV1::before{
    /* content:"Cancel"; */
    font-size:.7rem;
    line-height:1;
    font-weight:700;
}

.nvPvCancelBtnV1:hover,
.nvPvCancelBtnV1:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}

.nvPvBudgetSearchV1{
    padding-right:9px;
}


/* =========================================================
   PAYMENT VOUCHER CREATE TITLE HEADER ALIGNMENT - V1
   ========================================================= */

.nvPvFormHeadTitleV1{
    margin-bottom:25px;
}

.nvPvFormHeadTitleV1 .nvPvFormStatusV1:not(:empty){
    display:block;
}










/* =========================================================
   PAYMENT VOUCHER EDIT HEADER / LOCKED PROJECT / META - V1
   ========================================================= */

.nvPvFormHeadTitleV1{
    margin-bottom:18px;
}

.nvPvFormHeadTitleV1 .nvPvFormStatusV1:not(:empty){
    display:block;
}

.nvPvLockedInputV1,
.nvPvLockedInputV1:focus{
    background:rgba(247,244,238,.72);
    color:var(--nv-biosort-soft);
    cursor:not-allowed;
    border-color:rgba(47,45,42,.14);
    box-shadow:none;
    font-weight:700;
}

.nvPvEditMetaV1{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    margin:-4px 0 14px;
    padding:8px 10px;
    border:1px solid rgba(1,134,63,.18);
    border-radius:3px;
    background:rgba(1,134,63,.07);
    color:var(--panita-green-dark);
    font-size:.68rem;
    line-height:1.3;
    font-weight:700;
    text-align:right;
}

.nvPvEditMetaV1__status{
    text-transform:uppercase;
    letter-spacing:.06em;
}

.nvPvEditMetaV1__number{
    font-family:Consolas, Monaco, monospace;
    color:var(--nv-biosort);
}

.nvPvEditMetaV1__date{
    color:var(--nv-biosort-soft);
    font-size:.68rem;
    font-weight:700;
}

.nvPvEditMetaV1__sep{
    color:rgba(47,45,42,.35);
    font-weight:700;
}


/* =========================================================
   PAYMENT VOUCHER VIEW HEADER STANDARD - V1
   ========================================================= */

.nvPvViewHeadV1{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    align-items:center;
    gap:18px;
    margin-bottom:18px;
    padding:4px 10px 16px;
    /* border-bottom:2px solid var(--panita-green-dark); */
}

.nvPvViewHeadV1__left{
    display:flex;
    align-items:center;
    justify-content:flex-start;
	padding-top:20px;
}

.nvPvViewHeadV1__middle{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
}

.nvPvViewHeadV1__right{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    justify-content:center;
    gap:7px;
    text-align:right;
	
}

.nvPvViewLogoV1{
    width:148px;
    max-width:100%;
    height:auto;
    display:block;
}

.nvPvViewTitleV1{
    margin:0;
    color:var(--nv-biosort);
    text-transform:uppercase;
    letter-spacing:.07em;
    font-size:1.7rem;
    line-height:1.15;
    font-weight:700;
}

.nvPvViewNoV1{
    display:block;
    color:var(--panita-green-dark);
    font-family:Consolas, Monaco, monospace;
    font-size:.92rem;
    line-height:1.2;
    font-weight:700;
    text-align:right;
}

.nvPvViewBadgeV1{
    align-self:center;
    min-width:96px;
}

/* =========================================================
   PAYMENT VOUCHER VIEW PAYMENT DETAILS ALIGNMENT - V1
   ========================================================= */

/* # column */
.nvPvViewLinesTableV1 th:nth-child(1),
.nvPvViewLinesTableV1 td:nth-child(1){
    text-align:center;
}

/* Project and Budget Line */
.nvPvViewLinesTableV1 th:nth-child(3),
.nvPvViewLinesTableV1 td:nth-child(3),
.nvPvViewLinesTableV1 th:nth-child(4),
.nvPvViewLinesTableV1 td:nth-child(4){
    text-align:center;
}

/* Debit and Credit */
.nvPvViewLinesTableV1 th:nth-child(5),
.nvPvViewLinesTableV1 td:nth-child(5),
.nvPvViewLinesTableV1 th:nth-child(6),
.nvPvViewLinesTableV1 td:nth-child(6){
    text-align:right;
}

/* Total row */
.nvPvViewLinesTableV1 tfoot td{
    font-weight:700;
}

.nvPvViewLinesTableV1 tfoot td:first-child{
    text-align:right;
}

.nvPvViewLinesTableV1 tfoot td:nth-child(2),
.nvPvViewLinesTableV1 tfoot td:nth-child(3){
    text-align:right;
}


/* =========================================================
   PAYMENT VOUCHER VIEW STATUS CONTROL - V1
   Master workflow controller for PV approvals/posting
   ========================================================= */

.nvPvViewPostingV1[hidden]{
    display:none !important;
}

.nvPvViewSignGridV1{
    position:relative;
    overflow:hidden;
}

.nvPvViewSignBoxV1{
    min-height:92px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}

.nvPvViewActionBoxV1{
    min-height:92px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:10px 12px;
    border-right:1px solid rgba(47,45,42,.14);
    background:rgba(247,244,238,.42);
    text-align:center;
}

.nvPvViewActionBoxV1--span1{grid-column:span 1;}
.nvPvViewActionBoxV1--span2{grid-column:span 2;}
.nvPvViewActionBoxV1--span3{grid-column:span 3;}
.nvPvViewActionBoxV1--span4{grid-column:span 4;}

.nvPvViewActionBoxV1__message{
    max-width:620px;
    margin:0;
    color:var(--nv-biosort);
    font-size:.74rem;
    line-height:1.45;
    font-weight:700;
}

.nvPvViewActionBoxV1__buttons,
.nvPvViewConfirmV1__buttons{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
}

.nvPvViewActionBoxV1 .nvPvSaveBtnV1,
.nvPvViewConfirmV1 .nvPvSaveBtnV1,
.nvPvViewConfirmV1 .nvPvCancelBtnV1{
    min-height:32px;
    padding:0 14px;
    font-size:.62rem;
    letter-spacing:.04em;
}

.nvPvViewActionBoxV1 .nvPvCancelBtnV1{
    min-height:32px;
    padding:0 14px;
    border:0;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
    font-size:.62rem;
    letter-spacing:.04em;
}

.nvPvViewActionBoxV1 .nvPvCancelBtnV1:hover,
.nvPvViewActionBoxV1 .nvPvCancelBtnV1:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}

.nvPvViewConfirmV1{
    position:absolute;
    inset:0;
    z-index:8;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:18px;
    background:rgba(255,250,241,.68);
    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px);
    text-align:center;
}

.nvPvViewConfirmV1__question{
    margin:0;
    color:var(--nv-biosort);
    font-size:.75rem;
    line-height:1.4;
    font-weight:700;
}

.nvPvViewPostBoxV1{
    width:min(720px, 100%);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
}

.nvPvViewPostLayoutV1{
    display:grid;
    grid-template-columns:minmax(0, 70%) minmax(190px, 30%);
    gap:12px;
    align-items:center;
}

.nvPvViewPostBoxV1 textarea{
    width:100%;
    height:44px;
    min-height:44px;
    max-height:44px;
    padding:6px 9px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:.72rem;
    line-height:1.35;
    font-family:var(--nv-font);
    outline:none;
    resize:none;
}

.nvPvViewPostButtonsV1{
    width:100%;
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
}

.nvPvViewPostButtonsV1 .nvPvSaveBtnV1,
.nvPvViewPostButtonsV1 .nvPvCancelBtnV1{
    width:auto;
    min-width:0;
    min-height:34px;
    padding:0 12px;
    white-space:nowrap;
}

.nvPvViewPostBoxV1 textarea:focus{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.12);
}

.nvPvViewSignGridV1.is-confirming .nvPvViewSignBoxV1,
.nvPvViewSignGridV1.is-confirming .nvPvViewActionBoxV1{
    filter:blur(3px);
    opacity:.66;
}

.nvPvViewSignGridV1.is-saving{
    pointer-events:none;
}

.nvPvViewSignGridV1.is-saving::after{
    content:"Updating voucher status...";
    position:absolute;
    inset:0;
    z-index:10;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,250,241,.78);
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
    color:var(--panita-green-dark);
    font-size:.76rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}















/* =========================================================
   PANITA TRAVEL ADVANCE LIST - V1
   Unique prefix: nvTaAll
   Append this block at the bottom of assets/css/panita.css
   ========================================================= */
.nvTaAllShellV1{display:block;}
.nvTaAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvTaAllActionBarV1{justify-content:flex-start;}
.nvTaAllTableV1{min-width:980px;}
.nvTaAllSnColV1{text-align:center !important;}
.nvTaAllEditColV1{width:92px;text-align:center !important;}
.nvTaAllNoV1{min-width:170px;font-family:Consolas, Monaco, monospace;font-weight:700;color:var(--panita-green-dark) !important;}
.nvTaAllNoV1 a{color:var(--panita-green-dark);text-decoration:none;}
.nvTaAllNoV1 a:hover,.nvTaAllNoV1 a:focus{text-decoration:underline;text-underline-offset:3px;}
.nvTaAllClaimantV1{min-width:180px;font-weight:600;}
.nvTaAllStatusV1{min-width:96px;border:1px solid transparent;background:rgba(47,45,42,.08);color:var(--nv-biosort-soft);}
.nvTaAllStatusV1--draft{background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);border-color:var(--nv-status-draft-border);}
.nvTaAllStatusV1--under-check{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvTaAllStatusV1--checked{background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text);border-color:var(--nv-status-reviewed-border);}
.nvTaAllStatusV1--authorised{background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);border-color:var(--nv-status-approved-border);}
.nvTaAllStatusV1--rejected{background:var(--nv-status-rejected-bg);color:var(--nv-status-rejected-text);border-color:var(--nv-status-rejected-border);}
.nvTaAllStatusV1--canceled,.nvTaAllStatusV1--cancelled{background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text);border-color:var(--nv-status-cancelled-border);}
.nvTaAllOpenBtnV1{text-decoration:none;}
.nvTaAllFilterFieldV1--tano{width:170px;}
.nvTaPlaceholderV1{padding:28px;border:1px solid rgba(47,45,42,.12);background:#fff;}
.nvTaPlaceholderV1 h2{margin:0 0 8px;color:var(--nv-biosort);font-size:1.1rem;line-height:1.2;}
.nvTaPlaceholderV1 p{margin:0 0 18px;color:var(--nv-biosort-soft);font-size:.78rem;line-height:1.5;font-weight:600;}












/* =========================================================
   PANITA TRAVEL ADVANCE CREATE / EDIT - V1
   Unique prefix: nvTa
   ========================================================= */
.nvTaFormShellV1{display:block;padding-top:34px;}
.nvTaFormPanelV1{width:100%;min-height:520px;background:#fff;border:1px solid rgba(47,45,42,.14);box-shadow:0 18px 48px rgba(47,45,42,.08);}
.nvTaFormV1{padding:18px;}
.nvTaFormHeadTitleV1,.nvRtFormHeadTitleV1{margin-bottom:18px;}
.nvTaFormGridV1{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;margin-bottom:12px;}
.nvTaFieldV1,.nvTaLineFieldV1{display:flex;flex-direction:column;gap:5px;}
.nvTaFieldV1 label{color:var(--nv-biosort);font-size:.75rem;line-height:1.2;font-weight:700;}
.nvTaFieldV1 label span{color:var(--nv-error);}
.nvTaInputV1,.nvTaLineInputV1{width:100%;min-height:34px;padding:7px 9px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.72rem;line-height:1.3;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;}
.nvTaInputV1:focus,.nvTaLineInputV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12);}
.nvTaInputV1:disabled,.nvTaLineInputV1:disabled{background:rgba(247,244,238,.72);color:rgba(47,45,42,.56);cursor:not-allowed;}
.nvTaTextareaV1{min-height:74px;resize:vertical;}
.nvTaFieldV1--wide{margin:4px 0 14px;}
.nvTaFieldMsgV1,.nvTaLineMsgV1{min-height:12px;color:var(--nv-error);font-size:.58rem;line-height:1.2;font-weight:700;}
.nvTaFieldV1.is-invalid .nvTaInputV1,.nvTaLineFieldV1.is-invalid .nvTaLineInputV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12);}
.nvTaSectionTitleV1{margin:14px 0 8px;color:var(--nv-biosort);font-size:.8rem;line-height:1.2;font-weight:600;}
.nvTaLinesWrapV1{/* border:1px solid rgba(47,45,42,.13); */border-radius:3px;background:#fff;overflow-x:auto;padding-bottom:10px;margin-bottom:10px;}
.nvTaLinesTableV1{width:100%;min-width:860px;border-collapse:collapse;border-radius:3px;}
.nvTaLinesTableV1 th,.nvTaLinesTableV1 td{padding:7px;border:1px solid rgba(47,45,42,.10);text-align:left;vertical-align:middle;font-size:.75rem;line-height:1.35;color:var(--nv-biosort);}
.nvTaLinesTableV1 th{background:rgba(247,244,238,.88);font-size:.7rem;font-weight:700;}
.nvTaLineNoV1{width:42px;text-align:center!important;font-weight:700;color:var(--nv-biosort-soft)!important;}
.nvTaLineActionV1{width:74px;text-align:center!important;}
.nvTaLineRemoveBtnV1{width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:3px;background:rgba(180,35,24,.08);color:var(--nv-error);font-size:15px;font-weight:900;cursor:pointer;}
.nvTaLineRemoveBtnV1:hover,.nvTaLineRemoveBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}




.nvTaFormFootV1{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:14px;
    margin-top:18px;
    padding-top:12px;
    border-top:1px solid rgba(47,45,42,.12);
}

/* Match PV Add Line and Save button styling */
.nvTaAddLineBtnV1,
.nvTaSaveBtnV1{
    min-height:32px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px solid var(--panita-green-dark);
    border-radius:3px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    padding:0 14px;
    text-decoration:none;
    text-transform:normal;
    letter-spacing:.08em;
    font-size:.68rem;
    line-height:1;
    font-weight:600;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease, opacity .18s ease;
}

.nvTaAddLineBtnV1:hover,
.nvTaAddLineBtnV1:focus,
.nvTaSaveBtnV1:hover,
.nvTaSaveBtnV1:focus{
    background:var(--panita-green-dark);
    border-color:var(--panita-green-dark);
    transform:scale(1.05);
}

.nvTaAddLineBtnV1{
    width:max-content;
    min-width:120px;
    margin:10px auto 0;
    display:flex;
}

.nvTaSaveBtnV1{
    min-width:138px;
    min-height:40px;
}

.nvTaSaveBtnV1.is-loading .nvTaSaveBtnV1__text{
    display:none;
}

.nvTaSaveBtnV1 .nvLoginButton__loader{
    display:none;
}

.nvTaSaveBtnV1.is-loading .nvLoginButton__loader{
    display:inline-block;
    animation:nvLoginLoaderRotate 1s linear infinite;
}

.nvTaAddLineBtnV1:disabled,
.nvTaSaveBtnV1:disabled{
    opacity:.72;
    cursor:not-allowed;
    transform:none;
}

/* Match PV Cancel button styling */
.nvTaCancelBtnV1{
    min-width:138px;
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:3px;
    background:rgba(180,35,24,.08);
    color:var(--nv-error);
    padding:0;
    text-decoration:none;
    font-size:.7rem;
    line-height:1;
    font-weight:700;
    cursor:pointer;
    transition:background-color .18s ease, border-color .18s ease, transform .18s ease, opacity .18s ease, box-shadow .18s ease;
}

.nvTaCancelBtnV1::before{
    font-size:.7rem;
    line-height:1;
    font-weight:700;
}

.nvTaCancelBtnV1:hover,
.nvTaCancelBtnV1:focus{
    background:rgba(180,35,24,.15);
    box-shadow:0 8px 18px rgba(180,35,24,.16);
    transform:scale(1.04);
}
/* =========================================================
   TRAVEL ADVANCE EDIT META - MATCH PV SYSTEM STYLE
   ========================================================= */

.nvTaEditMetaV1{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    margin:-4px 0 14px;
    padding:8px 10px;
    border:1px solid rgba(1,134,63,.18);
    border-radius:3px;
    background:rgba(1,134,63,.07);
    color:var(--panita-green-dark);
    font-size:.68rem;
    line-height:1.3;
    font-weight:700;
    text-align:right;
}

.nvTaEditMetaV1__status{
    text-transform:uppercase;
    letter-spacing:.06em;
}

.nvTaEditMetaV1__number{
    font-family:Consolas, Monaco, monospace;
    color:var(--nv-biosort);
}

.nvTaEditMetaV1__date{
    color:var(--nv-biosort-soft);
    font-size:.68rem;
    font-weight:700;
}

.nvTaEditMetaV1__sep{
    color:rgba(47,45,42,.35);
    font-weight:700;
}
@media (max-width:900px){.nvTaFormGridV1{grid-template-columns:repeat(2,minmax(130px,1fr));}.nvTaFormFootV1{align-items:stretch;flex-direction:column;}.nvTaCancelBtnV1,.nvTaSaveBtnV1{width:100%;}}










/* =========================================================
   PANITA TRAVEL ADVANCE VIEW - V1
   Mirrors Payment Voucher view styling
   ========================================================= */

.nvTaViewShellV1{
    display:block;
    padding-top:34px;
}

.nvTaViewPanelV1{
    width:100%;
    min-height:520px;
    background:#fff;
    border:1px solid rgba(47,45,42,.14);
    box-shadow:0 18px 48px rgba(47,45,42,.08);
}

.nvTaViewMetaGridV1{
    grid-template-columns:1fr 1.35fr 1.45fr 1fr 1.3fr .75fr;
    margin-bottom:12px;
}

.nvTaViewPurposeV1{
    margin-bottom:2px;
}

.nvTaViewSectionBlockV1[hidden]{
    display:none !important;
}

.nvTaViewSectionBlockV1{
    margin-top:12px;
}

.nvTaViewLinesTableV1 th:nth-child(1),
.nvTaViewLinesTableV1 td:nth-child(1){
    text-align:center;
}

.nvTaViewLinesTableV1 th:nth-child(3),
.nvTaViewLinesTableV1 td:nth-child(3),
.nvTaViewLinesTableV1 th:nth-child(4),
.nvTaViewLinesTableV1 td:nth-child(4),
.nvTaViewLinesTableV1 th:nth-child(5),
.nvTaViewLinesTableV1 td:nth-child(5){
    text-align:right;
}

#nvTaViewRoutesSectionV1 .nvTaViewLinesTableV1 th:nth-child(2),
#nvTaViewRoutesSectionV1 .nvTaViewLinesTableV1 td:nth-child(2),
{
    text-align:right;
}





#nvTaViewRoutesSectionV1 .nvTaViewLinesTableV1 th:nth-child(3),
#nvTaViewRoutesSectionV1 .nvTaViewLinesTableV1 td:nth-child(3){
    text-align:left;
}

#nvTaViewRoutesSectionV1 .nvTaViewLinesTableV1 th:nth-child(4),
#nvTaViewRoutesSectionV1 .nvTaViewLinesTableV1 td:nth-child(4){
    text-align:center;
}

.nvTaViewLinesTableV1 tfoot td{
    font-weight:700;
    background:rgba(247,244,238,.76);
    font-size:.75rem;
    text-align:right;
    text-decoration:underline double;
    text-underline-offset:2px;
}

.nvTaViewLinesTableV1 tfoot td:first-child{
    text-decoration:none;
}

.nvTaViewSummaryWrapV1{
    margin-bottom:8px;
}

.nvTaViewSummaryTableV1{
    min-width:0;
}

.nvTaViewSummaryTableV1 td{
    font-weight:500;
}

.nvTaViewSummaryTableV1 td:first-child{
    width:80%;
    color:var(--nv-biosort);
}

.nvTaViewSummaryTableV1 td:last-child{
    width:20%;
    text-align:right;

}


#nvTaViewBalanceAmountV1 {
	
	
	font-weight:700;
    font-size:.9rem;
    text-align:right;
    text-decoration:underline double;
    text-underline-offset:3px; 
}

.nvTaViewSignGridV1{
    grid-template-columns:repeat(3,1fr);
}

.nvTaViewSignGridV1.is-saving::after{
    content:"Updating travel request status...";
}

.nvPvAllStatusV1--under-check{
    background:var(--nv-status-under-review-bg);
    color:var(--nv-status-under-review-text);
    border-color:var(--nv-status-under-review-border);
}

.nvPvAllStatusV1--checked,
.nvPvAllStatusV1--authorised{
    background:var(--nv-status-approved-bg);
    color:var(--nv-status-approved-text);
    border-color:var(--nv-status-approved-border);
}

.nvPvAllStatusV1--canceled{
    background:var(--nv-status-cancelled-bg);
    color:var(--nv-status-cancelled-text);
    border-color:var(--nv-status-cancelled-border);
}








/* =========================================================
   PANITA RETIREMENT MODULE - V1
   Add this file or append to assets/css/panita.css
   ========================================================= */
.nvRtAllShellV1,.nvRtFormShellV1{display:block;padding-top:34px;}
.nvRtAllTableV1{min-width:1120px;}
.nvRtAllTableV1 th,.nvRtAllTableV1 td{font-size:.74rem;}
.nvRtAllNoV1,.nvRtAllTaNoV1{font-family:Consolas, Monaco, monospace;font-weight:700;color:var(--panita-green-dark)!important;white-space:nowrap;}
.nvRtAllNoV1 a,.nvRtAllTaNoV1 a{color:var(--panita-green-dark);text-decoration:none;}
.nvRtAllNoV1 a:hover,.nvRtAllTaNoV1 a:hover{text-decoration:underline;text-underline-offset:3px;}
.nvRtAllWaitV1{padding:8px 10px;background:rgba(47,45,42,.06);border:1px solid rgba(47,45,42,.12);border-radius:3px;color:var(--nv-biosort-soft);font-weight:700;text-align:center!important;}
.nvRtDueNormalV1{color:var(--nv-biosort);font-weight:800;text-decoration:none;}
.nvRtDueAttentionV1{color:#b56a00!important;font-weight:900;text-decoration:none;}
.nvRtDueLateV1{color:var(--nv-error)!important;font-weight:900;text-decoration:none;}
.nvRtRequiredV1{font-size:.64rem;color:var(--nv-error);font-weight:700;}
.nvRtAttachmentGridV1{grid-template-columns:repeat(4,minmax(160px,1fr));}
/* Retirement attachment grid uses the existing PV attachment style, but divides the row into four equal upload boxes. */
.nvPvAttachmentGridV1.nvRtAttachmentGridV1{
    grid-template-columns:repeat(4,minmax(160px,1fr));
}

.nvRtFormPanelV1{width:100%;min-height:520px;background:#fff;border:1px solid rgba(47,45,42,.14);box-shadow:0 18px 48px rgba(47,45,42,.08);}
.nvRtViewAttachmentsV1 a{color:var(--panita-green-dark);font-weight:700;text-decoration:none;}
.nvRtViewAttachmentsV1 a:hover{text-decoration:underline;text-underline-offset:3px;}
.nvRtBalanceNegativeV1{font-weight:900;color:var(--nv-error)!important;}
.nvRtBalancePositiveV1{font-weight:900;color:var(--panita-green-dark)!important;}

/* =========================================================
   PANITA RETIREMENT VIEW ALIGNMENT - V1
   Mirrors Travel Advance view title, tables, summary and workflow
   ========================================================= */
.nvRtViewHeadTitleV1{
    margin-bottom:22px;
}

.nvRtViewMetaGridV1{
    grid-template-columns:1fr 1.35fr 1.45fr 1fr 1.3fr .75fr;
}

#nvRtViewRoutesSectionV1 .nvTaViewLinesTableV1 th:nth-child(2),
#nvRtViewRoutesSectionV1 .nvTaViewLinesTableV1 td:nth-child(2){
    text-align:left;
}

#nvRtViewRoutesSectionV1 .nvTaViewLinesTableV1 th:nth-child(3),
#nvRtViewRoutesSectionV1 .nvTaViewLinesTableV1 td:nth-child(3){
    text-align:left;
}


#nvRtViewRoutesTotalV1 {
    text-align:right !important;
}

#nvRtViewRoutesSectionV1 .nvTaViewLinesTableV1 th:nth-child(4),
#nvRtViewRoutesSectionV1 .nvTaViewLinesTableV1 td:nth-child(4){
    text-align:center;
}

#nvRtBalanceV1{
    font-weight:700;
    font-size:.9rem;
    text-align:right;
    text-decoration:underline double;
    text-underline-offset:3px;
}

.nvRtViewPageV1 .nvTaViewSignGridV1.is-saving::after{
    content:"Updating retirement status...";
}






















/* =========================================================
   PANITA LEAVE APPLICATION LIST - V1
   Unique prefix: nvLaAll
   Append this block at the bottom of assets/css/panita.css
   ========================================================= */
.nvLaAllShellV1{display:block;}
.nvLaAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvLaAllActionBarV1{justify-content:flex-start;}
.nvLaAllTableV1{min-width:980px;}
.nvLaAllSnColV1{text-align:center !important;}
.nvLaAllEditColV1{width:92px;text-align:center !important;}
.nvLaAllNoV1{min-width:170px;font-family:Consolas, Monaco, monospace;font-weight:700;color:var(--panita-green-dark) !important;}
.nvLaAllNoV1 a{color:var(--panita-green-dark);text-decoration:none;}
.nvLaAllNoV1 a:hover,.nvLaAllNoV1 a:focus{text-decoration:underline;text-underline-offset:3px;}
.nvLaAllApplicantV1{min-width:190px;font-weight:600;}
.nvLaAllTypeV1{min-width:130px;font-weight:600;}
.nvLaAllStatusV1{min-width:96px;border:1px solid transparent;background:rgba(47,45,42,.08);color:var(--nv-biosort-soft);}
.nvLaAllStatusV1--draft{background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);border-color:var(--nv-status-draft-border);}
.nvLaAllStatusV1--under-review{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvLaAllStatusV1--reviewed{background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text);border-color:var(--nv-status-reviewed-border);}
.nvLaAllStatusV1--approved{background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);border-color:var(--nv-status-approved-border);}
.nvLaAllStatusV1--rejected{background:var(--nv-status-rejected-bg);color:var(--nv-status-rejected-text);border-color:var(--nv-status-rejected-border);}
.nvLaAllStatusV1--canceled,.nvLaAllStatusV1--cancelled{background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text);border-color:var(--nv-status-cancelled-border);}
.nvLaAllOpenBtnV1{text-decoration:none;}
.nvLaAllFilterFieldV1--lano{width:170px;}
.nvLaPlaceholderV1{padding:28px;border:1px solid rgba(47,45,42,.12);background:#fff;}
.nvLaPlaceholderV1 h2{margin:0 0 8px;color:var(--nv-biosort);font-size:1.1rem;line-height:1.2;}
.nvLaPlaceholderV1 p{margin:0 0 18px;color:var(--nv-biosort-soft);font-size:.78rem;line-height:1.5;font-weight:600;}








/* =========================================================
   PANITA LEAVE APPLICATION CREATE / EDIT - V1
   Unique prefix: nvLaForm
   ========================================================= */
.nvLaFormShellV1{display:block;padding-top:34px;}
.nvLaFormPanelV1{width:100%;min-height:520px;background:#fff;border:1px solid rgba(47,45,42,.14);box-shadow:0 18px 48px rgba(47,45,42,.08);}
.nvLaFormV1{padding:18px;}
.nvLaFormHeadTitleV1{margin-bottom:18px;}
.nvLaFormGridV1{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:12px;}
.nvLaFieldV1,.nvLaLineFieldV1{display:flex;flex-direction:column;gap:5px;}
.nvLaFieldV1 label{color:var(--nv-biosort);font-size:.75rem;line-height:1.2;font-weight:700;}
.nvLaFieldV1 label span{color:var(--nv-error);}
.nvLaInputV1,.nvLaLineInputV1,.nvLaLineSelectV1,.nvLaLineTextareaV1{width:100%;min-height:34px;padding:7px 9px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.72rem;line-height:1.3;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;}
.nvLaInputV1:focus,.nvLaLineInputV1:focus,.nvLaLineSelectV1:focus,.nvLaLineTextareaV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12);}
.nvLaInputV1:disabled,.nvLaLineInputV1:disabled,.nvLaLineSelectV1:disabled,.nvLaLineTextareaV1:disabled{background:rgba(247,244,238,.72);color:rgba(47,45,42,.56);cursor:not-allowed;}
.nvLaTextareaV1{min-height:74px;resize:vertical;}
.nvLaLineTextareaV1{min-height:34px;resize:vertical;}
.nvLaFieldV1--wide{margin:4px 0 14px;}
.nvLaFieldMsgV1,.nvLaLineMsgV1{min-height:12px;color:var(--nv-error);font-size:.58rem;line-height:1.2;font-weight:700;}
.nvLaFieldV1.is-invalid .nvLaInputV1,.nvLaLineFieldV1.is-invalid .nvLaLineInputV1,.nvLaLineFieldV1.is-invalid .nvLaLineSelectV1,.nvLaLineFieldV1.is-invalid .nvLaLineTextareaV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12);}
.nvLaSectionTitleV1{margin:14px 0 8px;color:var(--nv-biosort);font-size:.8rem;line-height:1.2;font-weight:600;}
.nvLaLinesWrapV1{border-radius:3px;background:#fff;overflow-x:auto;padding-bottom:10px;margin-bottom:10px;}
.nvLaLinesTableV1{width:100%;min-width:980px;border-collapse:collapse;border-radius:3px;}
.nvLaLinesTableV1 th,.nvLaLinesTableV1 td{padding:7px;border:1px solid rgba(47,45,42,.10);text-align:left;vertical-align:middle;font-size:.75rem;line-height:1.35;color:var(--nv-biosort);}
.nvLaLinesTableV1 th{background:rgba(247,244,238,.88);font-size:.7rem;font-weight:700;}
.nvLaLineNoV1{width:42px;text-align:center!important;font-weight:700;color:var(--nv-biosort-soft)!important;}
.nvLaLineActionV1{width:74px;text-align:center!important;}
.nvLaLineRemoveBtnV1{width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:3px;background:rgba(180,35,24,.08);color:var(--nv-error);font-size:15px;font-weight:900;cursor:pointer;}
.nvLaLineRemoveBtnV1:hover,.nvLaLineRemoveBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}
.nvLaFormFootV1{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:18px;padding-top:12px;border-top:1px solid rgba(47,45,42,.12);}
.nvLaAddLineBtnV1,.nvLaSaveBtnV1{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--panita-green-dark);border-radius:3px;background:var(--nv-biosort);color:var(--nv-white);padding:0 14px;text-decoration:none;text-transform:normal;letter-spacing:.08em;font-size:.68rem;line-height:1;font-weight:600;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease;}
.nvLaAddLineBtnV1:hover,.nvLaAddLineBtnV1:focus,.nvLaSaveBtnV1:hover,.nvLaSaveBtnV1:focus{background:var(--panita-green-dark);border-color:var(--panita-green-dark);transform:scale(1.05);}
.nvLaAddLineBtnV1{width:max-content;min-width:120px;margin:10px auto 0;display:flex;}
.nvLaSaveBtnV1{min-width:138px;min-height:40px;}
.nvLaSaveBtnV1.is-loading .nvLaSaveBtnV1__text{display:none;}
.nvLaSaveBtnV1 .nvLoginButton__loader{display:none;}
.nvLaSaveBtnV1.is-loading .nvLoginButton__loader{display:inline-block;animation:nvLoginLoaderRotate 1s linear infinite;}
.nvLaAddLineBtnV1:disabled,.nvLaSaveBtnV1:disabled{opacity:.72;cursor:not-allowed;transform:none;}
.nvLaCancelBtnV1{min-width:138px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:3px;background:rgba(180,35,24,.08);color:var(--nv-error);padding:0;text-decoration:none;font-size:.7rem;line-height:1;font-weight:700;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease,box-shadow .18s ease;}
.nvLaCancelBtnV1:hover,.nvLaCancelBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}
.nvLaEditMetaV1{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:-4px 0 14px;padding:8px 10px;border:1px solid rgba(1,134,63,.18);border-radius:3px;background:rgba(1,134,63,.07);color:var(--panita-green-dark);font-size:.68rem;line-height:1.3;font-weight:700;text-align:right;}
.nvLaEditMetaV1__status{text-transform:uppercase;letter-spacing:.06em;}
.nvLaEditMetaV1__number{font-family:Consolas, Monaco, monospace;color:var(--nv-biosort);}
@media (max-width:900px){.nvLaFormGridV1{grid-template-columns:1fr 1fr;}.nvLaFormFootV1{align-items:stretch;flex-direction:column;}.nvLaCancelBtnV1,.nvLaSaveBtnV1{width:100%;}}
@media (max-width:620px){.nvLaFormGridV1{grid-template-columns:1fr;}}












/* =========================================================
   PANITA LEAVE APPLICATION VIEW - V1
   Reuses Payment Voucher / Travel Advance view styling
   ========================================================= */
.nvLaViewShellV1,
.nvLaViewPanelV1,
.nvLaViewCardV1,
.nvLaViewHeadV1,
.nvLaViewMetaGridV1,
.nvLaViewPurposeV1,
.nvLaViewTableWrapV1,
.nvLaViewLinesTableV1,
.nvLaViewSummaryWrapV1,
.nvLaViewSummaryTableV1,
.nvLaViewSignGridV1{
    /* Keep the Leave Application view visually tied to the TA/PV design system. */
}

.nvLaViewLinesTableV1 td,
.nvLaViewSummaryTableV1 td{
    vertical-align:top;
}

.nvLaViewLinesTableV1 td:nth-child(3){
    font-weight:700;
    color:var(--panita-green-dark);
}

.nvLaViewSummaryTableV1 td{
    padding:12px 14px !important;
    text-align:left !important;
    font-size:.78rem !important;
    line-height:1.65 !important;
}

.nvLaViewSummaryTableV1 em{
    display:block;
    margin-top:5px;
    color:var(--nv-biosort-soft);
    font-size:.72rem;
}

.nvPvAllStatusV1--canceled{
    background:var(--nv-status-cancelled-bg);
    color:var(--nv-status-cancelled-text);
    border-color:var(--nv-status-cancelled-border);
}

.nvLaViewNoV1{
    font-family:Consolas, Monaco, monospace;
}


/* =========================================================
   VIEW LA DISPLAY ADJUSTMENT - requested meta/table layout
   ========================================================= */
.nvLaViewMetaWideV1{
    grid-column:span 3;
}

.nvLaViewReasonHeadV1,
.nvLaViewLineReasonV1{
    text-align:left !important;
}

.nvLaViewLineDetailsV1{
    color:var(--nv-biosort) !important;
    font-weight:400 !important;
    font-size:.76rem !important;
    line-height:1.55 !important;
    text-align:left !important;
}

.nvLaViewLinesTableV1 td:nth-child(3){
    font-weight:400;
    color:var(--nv-biosort);
}

/* =========================================================
   VIEW LA ONLY - align Dates & Details title left
   This affects only the Leave Application view table
   ========================================================= */
.nvLaViewPageV1 .nvLaViewLinesTableV1 thead th:nth-child(4){
    text-align:left !important;
}



/* =========================================================
   VIEW LA RECORDS TABLE / BALANCE CONTROL - V1
   Scoped only to Leave Application view
   ========================================================= */
.nvLaViewPageV1 .nvLaViewRecordsTitleV1{
    margin-top:14px;
}

.nvLaViewPageV1 .nvLaViewRecordsWrapV1{
    margin-bottom:14px;
}

.nvLaViewPageV1 .nvLaViewRecordsTableV1{
    min-width:920px;
}

.nvLaViewPageV1 .nvLaViewRecordsTableV1 th,
.nvLaViewPageV1 .nvLaViewRecordsTableV1 td{
    text-align:center !important;
    white-space:nowrap;
}

.nvLaViewPageV1 .nvLaViewRecordsTableV1 th:first-child,
.nvLaViewPageV1 .nvLaViewRecordsTableV1 td:first-child{
    text-align:left !important;
    min-width:230px;
}

.nvLaViewPageV1 .nvLaViewRecordsMetricV1{
    color:var(--nv-biosort);
    font-weight:700;
}

.nvLaViewPageV1 .nvLaViewRecordsValueV1{
    color:var(--nv-biosort);
    font-weight:400;
}

.nvLaViewPageV1 .nvLaViewRecordsNegativeV1{
    color:var(--nv-error) !important;
    font-weight:700;
}






/* =========================================================
   VIEW LA RECORDS TABLE HOVER MATRIX - V1
   Scoped only to Leave Application RECORDS table
   ========================================================= */
.nvLaViewPageV1 .nvLaViewRecordsTableV1 tbody tr.is-nv-record-row-hover > td{
    background:rgba(1,134,63,.06) !important;
}

.nvLaViewPageV1 .nvLaViewRecordsTableV1 th.is-nv-record-col-hover,
.nvLaViewPageV1 .nvLaViewRecordsTableV1 td.is-nv-record-col-hover{
    background:rgba(1,134,63,.06) !important;
}

.nvLaViewPageV1 .nvLaViewRecordsTableV1 tbody td.is-nv-record-cell-hover{
    background:rgba(1,134,63,.16) !important;
    color:var(--nv-biosort) !important;
     font-weight:700 !important;
    box-shadow:inset 0 0 0 1px rgba(1,134,63,.28);
}

.nvLaViewPageV1 .nvLaViewRecordsTableV1 tbody td.is-nv-record-cell-hover.nvLaViewRecordsNegativeV1{
    color:var(--nv-error) !important;
    font-weight:700 !important; 
}

.nvLaViewPageV1 .nvLaViewRecordsTableV1 th.is-nv-record-col-hover{
    color:var(--panita-green-dark) !important;
     font-weight:700 !important; 
}

.nvLaViewPageV1 .nvLaViewRecordsTableV1 tbody tr.is-nv-record-row-hover .nvLaViewRecordsMetricV1{
    color:var(--panita-green-dark) !important;
    font-weight:700 !important;
}








/* =========================================================
   PANITA ANNUAL WHEEL AUTOMATION LIST - V1
   Unique prefix: nvAwaAll
   Append this block at the bottom of assets/css/panita.css
   ========================================================= */

.nvAwaAllShellV1{display:block;}
.nvAwaAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvAwaAllActionBarV1{justify-content:flex-start;}
.nvAwaAllTableV1{min-width:980px;}
.nvAwaAllSnColV1{width:70px;text-align:center !important;}
.nvAwaAllEditColV1{width:92px;text-align:center !important;}
.nvAwaAllNameV1{min-width:250px;font-weight:600;text-align:center !important;}
.nvAwaAllNameLinkV1{position:relative;color:var(--nv-biosort);text-decoration:none;font-weight:600;}
.nvAwaAllNameLinkV1:hover,.nvAwaAllNameLinkV1:focus{text-decoration:underline;text-underline-offset:3px;}
.nvAwaAllNameLinkV1[data-tooltip]:hover::after,
.nvAwaAllNameLinkV1[data-tooltip]:focus::after{
    content:attr(data-tooltip);
    position:absolute;
    left:0;
    bottom:calc(100% + 8px);
    z-index:70;
    width:max-content;
    max-width:320px;
    padding:8px 10px;
    border:1px solid rgba(47,45,42,.16);
    border-radius:3px;
    background:var(--nv-biosort);
    color:var(--nv-white);
    box-shadow:0 14px 30px rgba(47,45,42,.18);
    font-size:.66rem;
    line-height:1.35;
    font-weight:600;
    text-decoration:none;
    white-space:normal;
}
.nvAwaAllTypeV1{min-width:150px;font-size:.68rem !important;font-weight:700;color:var(--nv-biosort-soft) !important;text-transform:uppercase;}
.nvAwaAllStatusV1{min-width:92px;border:1px solid transparent;}
.nvAwaAllStatusV1--open{background:rgba(102,122,45,.14);color:var(--nv-green-dark);border-color:rgba(102,122,45,.24);}
.nvAwaAllStatusV1--closed{background:rgba(47,45,42,.08);color:var(--nv-biosort-soft);border-color:rgba(47,45,42,.14);}
.nvAwaAllStatusV1--inactive{background:rgba(180,35,24,.10);color:var(--nv-error);border-color:rgba(180,35,24,.20);}
.nvAwaAllEditorRowV1{background:rgba(1,134,63,.055);}
.nvAwaAllEditorRowV1:hover{background:rgba(1,134,63,.075) !important;}
.nvAwaAllFieldV1{display:flex;flex-direction:column;gap:3px;}
.nvAwaAllInputV1,.nvAwaAllSelectV1,.nvAwaAllTextareaV1{
    width:100%;
    min-height:30px;
    padding:5px 8px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    font-size:.72rem;
    line-height:1.25;
    outline:none;
    transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;
}
.nvAwaAllTextareaV1{min-height:54px;resize:vertical;}
.nvAwaAllInputV1:focus,.nvAwaAllSelectV1:focus,.nvAwaAllTextareaV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12);}
.nvAwaAllFieldMsgV1{min-height:12px;color:var(--nv-error);font-size:.58rem;line-height:1.2;font-weight:700;}
.nvAwaAllFieldV1.is-invalid .nvAwaAllInputV1,
.nvAwaAllFieldV1.is-invalid .nvAwaAllSelectV1,
.nvAwaAllFieldV1.is-invalid .nvAwaAllTextareaV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12);}
.nvAwaAllRowActionsV1{white-space:nowrap;}
.nvAwaAllRowSaveBtnV1,.nvAwaAllRowCloseBtnV1{
    width:30px;
    height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    font-size:15px;
    line-height:1;
    font-weight:900;
    cursor:pointer;
    transition:background-color .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease;
}
.nvAwaAllRowSaveBtnV1{margin-right:5px;background:var(--nv-biosort);color:var(--nv-white);border-color:var(--panita-green-dark);}
.nvAwaAllRowSaveBtnV1:hover,.nvAwaAllRowSaveBtnV1:focus{background:var(--panita-green-dark);border-color:var(--panita-green-dark);transform:scale(1.05);}
.nvAwaAllRowCloseBtnV1{border:0;background:rgba(180,35,24,.08);color:var(--nv-error);}
.nvAwaAllRowCloseBtnV1:hover,.nvAwaAllRowCloseBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}
.nvAwaAllRowSaveBtnV1:disabled,.nvAwaAllRowCloseBtnV1:disabled{opacity:.62;cursor:not-allowed;transform:none;}
.nvAwaAllRowSaveBtnV1.is-loading{animation:nvLoginLoaderRotate .8s linear infinite;}



/* =========================================================
   PANITA FIELD VISIT / MAIN ACTIVITIES LIST - V1
   Unique prefixes: nvFvAll, nvMaAll
   Append this block at the bottom of assets/css/panita.css
   ========================================================= */
.nvFvAllShellV1,.nvMaAllShellV1{display:block;}
.nvFvAllFilterBarV1,.nvMaAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvFvAllActionBarV1,.nvMaAllActionBarV1{justify-content:flex-start;}
.nvFvAllTableV1,.nvMaAllTableV1{min-width:1120px;}
.nvFvAllSnColV1,.nvMaAllSnColV1{width:70px;text-align:center !important;}
.nvFvAllEditColV1,.nvMaAllEditColV1{width:92px;text-align:center !important;}
.nvFvAllFilterFieldV1--wheel,.nvMaAllFilterFieldV1--wheel{width:240px;}
.nvFvAllFilterFieldV1--task,.nvMaAllFilterFieldV1--task{width:220px;}
.nvFvAllTaskV1,.nvMaAllTaskV1{min-width:260px;text-align:left !important;font-weight:500;}
.nvFvAllProjectV1,.nvMaAllProjectV1{min-width:220px;text-align:center !important;}
.nvFvAllResponsibleV1,.nvMaAllResponsibleV1{min-width:210px;text-align:center !important;}
.nvFvAllDeadlineV1,.nvMaAllDeadlineV1{min-width:160px;}
.nvFvAllSubNoteV1,.nvMaAllSubNoteV1{display:block;margin-top:4px;color:var(--nv-biosort-soft);font-size:.66rem;line-height:1.35;font-style:italic;font-weight:500;white-space:pre-line;}
.nvFvAllSubTitleV1,.nvMaAllSubTitleV1{display:block;margin-top:7px;color:var(--panita-green-dark);font-size:.56rem;line-height:1.2;text-transform:uppercase;letter-spacing:.08em;font-style:normal;font-weight:700;}
.nvFvAllStatusV1,.nvMaAllStatusV1{min-width:104px;border:1px solid transparent;}
.nvFvAllStatusV1--draft,.nvMaAllStatusV1--draft{background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);border-color:var(--nv-status-draft-border);}
.nvFvAllStatusV1--planned,.nvMaAllStatusV1--planned{background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text);border-color:var(--nv-status-reviewed-border);}
.nvFvAllStatusV1--assigned,.nvMaAllStatusV1--assigned{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvFvAllStatusV1--in-progress,.nvMaAllStatusV1--in-progress{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvFvAllStatusV1--on-hold,.nvMaAllStatusV1--on-hold{background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text);border-color:var(--nv-status-cancelled-border);}
.nvFvAllStatusV1--under-review,.nvMaAllStatusV1--under-review{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvFvAllStatusV1--completed,.nvMaAllStatusV1--completed{background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);border-color:var(--nv-status-approved-border);}
.nvFvAllStatusV1--closed,.nvMaAllStatusV1--closed{background:var(--nv-status-posted-bg);color:var(--nv-status-posted-text);border-color:var(--nv-status-posted-border);}
.nvFvAllRecordStatusV1,.nvMaAllRecordStatusV1{display:block;margin-top:5px;color:var(--nv-biosort-soft);font-size:.58rem;font-style:italic;font-weight:700;text-transform:uppercase;}
.nvFvAllRecordStatusV1--inactive,.nvMaAllRecordStatusV1--inactive{color:var(--nv-error);}
.nvFvAllWheelStateV1,.nvMaAllWheelStateV1{padding:0 10px 10px;color:var(--nv-biosort-soft);font-size:.7rem;line-height:1.35;font-weight:650;}
.nvFvAllWheelStateV1 strong,.nvMaAllWheelStateV1 strong{color:var(--panita-green-dark);}
.nvFvAllEditorRowV1,.nvMaAllEditorRowV1{background:rgba(1,134,63,.055);}
.nvFvAllEditorRowV1:hover,.nvMaAllEditorRowV1:hover{background:rgba(1,134,63,.075) !important;}
.nvFvAllFieldV1,.nvMaAllFieldV1{display:flex;flex-direction:column;gap:3px;}
.nvFvAllInputV1,.nvFvAllSelectV1,.nvFvAllTextareaV1,.nvMaAllInputV1,.nvMaAllSelectV1,.nvMaAllTextareaV1{width:100%;min-height:30px;padding:5px 8px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.72rem;line-height:1.25;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;}
.nvFvAllTextareaV1,.nvMaAllTextareaV1{min-height:48px;resize:vertical;}
.nvFvAllSelectV1[multiple],.nvMaAllSelectV1[multiple]{min-height:82px;}
.nvFvAllInputV1:focus,.nvFvAllSelectV1:focus,.nvFvAllTextareaV1:focus,.nvMaAllInputV1:focus,.nvMaAllSelectV1:focus,.nvMaAllTextareaV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12);}
.nvFvAllFieldMsgV1,.nvMaAllFieldMsgV1{min-height:12px;color:var(--nv-error);font-size:.58rem;line-height:1.2;font-weight:700;}
.nvFvAllFieldHintV1,.nvMaAllFieldHintV1{color:var(--nv-biosort-soft);font-size:.56rem;font-style:italic;font-weight:600;}
.nvFvAllFieldV1.is-invalid .nvFvAllInputV1,.nvFvAllFieldV1.is-invalid .nvFvAllSelectV1,.nvFvAllFieldV1.is-invalid .nvFvAllTextareaV1,.nvMaAllFieldV1.is-invalid .nvMaAllInputV1,.nvMaAllFieldV1.is-invalid .nvMaAllSelectV1,.nvMaAllFieldV1.is-invalid .nvMaAllTextareaV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12);}
.nvFvAllRowActionsV1,.nvMaAllRowActionsV1{white-space:nowrap;}
.nvFvAllRowSaveBtnV1,.nvFvAllRowCloseBtnV1,.nvMaAllRowSaveBtnV1,.nvMaAllRowCloseBtnV1{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(47,45,42,.18);border-radius:3px;font-size:15px;line-height:1;font-weight:900;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease;}
.nvFvAllRowSaveBtnV1,.nvMaAllRowSaveBtnV1{margin-right:5px;background:var(--nv-biosort);color:var(--nv-white);border-color:var(--panita-green-dark);}
.nvFvAllRowSaveBtnV1:hover,.nvFvAllRowSaveBtnV1:focus,.nvMaAllRowSaveBtnV1:hover,.nvMaAllRowSaveBtnV1:focus{background:var(--panita-green-dark);border-color:var(--panita-green-dark);transform:scale(1.05);}
.nvFvAllRowCloseBtnV1,.nvMaAllRowCloseBtnV1{border:0;background:rgba(180,35,24,.08);color:var(--nv-error);}
.nvFvAllRowCloseBtnV1:hover,.nvFvAllRowCloseBtnV1:focus,.nvMaAllRowCloseBtnV1:hover,.nvMaAllRowCloseBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}
.nvFvAllRowSaveBtnV1:disabled,.nvFvAllRowCloseBtnV1:disabled,.nvMaAllRowSaveBtnV1:disabled,.nvMaAllRowCloseBtnV1:disabled{opacity:.62;cursor:not-allowed;transform:none;}
.nvFvAllRowSaveBtnV1.is-loading,.nvMaAllRowSaveBtnV1.is-loading{animation:nvLoginLoaderRotate .8s linear infinite;}




/* =========================================================
   PANITA FIELD VISIT / MAIN ACTIVITIES LIST - V1
   Unique prefixes: nvFvAll, nvMaAll
   Append this block at the bottom of assets/css/panita.css
   ========================================================= */
.nvFvAllShellV1,.nvMaAllShellV1{display:block;}
.nvFvAllFilterBarV1,.nvMaAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvFvAllActionBarV1,.nvMaAllActionBarV1{justify-content:flex-start;}
.nvFvAllTableV1,.nvMaAllTableV1{min-width:1120px;}
.nvFvAllSnColV1,.nvMaAllSnColV1{width:70px;text-align:center !important;}
.nvFvAllEditColV1,.nvMaAllEditColV1{width:92px;text-align:center !important;}
.nvFvAllFilterFieldV1--wheel,.nvMaAllFilterFieldV1--wheel{width:240px;}
.nvFvAllFilterFieldV1--task,.nvMaAllFilterFieldV1--task{width:220px;}
.nvFvAllTaskV1,.nvMaAllTaskV1{min-width:260px;text-align:left !important;font-weight:500;}
.nvFvAllProjectV1,.nvMaAllProjectV1{min-width:220px;text-align:center !important;}
.nvFvAllResponsibleV1,.nvMaAllResponsibleV1{min-width:210px;text-align:center !important;}
.nvFvAllDeadlineV1,.nvMaAllDeadlineV1{min-width:160px;}
.nvFvAllSubNoteV1,.nvMaAllSubNoteV1{display:block;margin-top:4px;color:var(--nv-biosort-soft);font-size:.66rem;line-height:1.35;font-style:italic;font-weight:500;white-space:pre-line;}
.nvFvAllSubTitleV1,.nvMaAllSubTitleV1{display:block;margin-top:7px;color:var(--panita-green-dark);font-size:.56rem;line-height:1.2;text-transform:uppercase;letter-spacing:.08em;font-style:normal;font-weight:700;}
.nvFvAllStatusV1,.nvMaAllStatusV1{min-width:104px;border:1px solid transparent;}
.nvFvAllStatusV1--draft,.nvMaAllStatusV1--draft{background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);border-color:var(--nv-status-draft-border);}
.nvFvAllStatusV1--planned,.nvMaAllStatusV1--planned{background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text);border-color:var(--nv-status-reviewed-border);}
.nvFvAllStatusV1--assigned,.nvMaAllStatusV1--assigned{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvFvAllStatusV1--in-progress,.nvMaAllStatusV1--in-progress{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvFvAllStatusV1--on-hold,.nvMaAllStatusV1--on-hold{background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text);border-color:var(--nv-status-cancelled-border);}
.nvFvAllStatusV1--under-review,.nvMaAllStatusV1--under-review{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvFvAllStatusV1--completed,.nvMaAllStatusV1--completed{background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);border-color:var(--nv-status-approved-border);}
.nvFvAllStatusV1--closed,.nvMaAllStatusV1--closed{background:var(--nv-status-posted-bg);color:var(--nv-status-posted-text);border-color:var(--nv-status-posted-border);}
.nvFvAllRecordStatusV1,.nvMaAllRecordStatusV1{display:block;margin-top:5px;color:var(--nv-biosort-soft);font-size:.58rem;font-style:italic;font-weight:700;text-transform:uppercase;}
.nvFvAllRecordStatusV1--inactive,.nvMaAllRecordStatusV1--inactive{color:var(--nv-error);}
.nvFvAllWheelStateV1,.nvMaAllWheelStateV1{padding:0 10px 10px;color:var(--nv-biosort-soft);font-size:.7rem;line-height:1.35;font-weight:600;}
.nvFvAllWheelStateV1 strong,.nvMaAllWheelStateV1 strong{color:var(--panita-green-dark);}
.nvFvAllEditorRowV1,.nvMaAllEditorRowV1{background:rgba(1,134,63,.055);}
.nvFvAllEditorRowV1:hover,.nvMaAllEditorRowV1:hover{background:rgba(1,134,63,.075) !important;}
.nvFvAllFieldV1,.nvMaAllFieldV1{display:flex;flex-direction:column;gap:3px;}
.nvFvAllInputV1,.nvFvAllSelectV1,.nvFvAllTextareaV1,.nvMaAllInputV1,.nvMaAllSelectV1,.nvMaAllTextareaV1{width:100%;min-height:30px;padding:5px 8px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.72rem;line-height:1.25;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;}
.nvFvAllTextareaV1,.nvMaAllTextareaV1{min-height:48px;resize:vertical;}
.nvFvAllSelectV1[multiple],.nvMaAllSelectV1[multiple]{min-height:82px;}
.nvFvAllInputV1:focus,.nvFvAllSelectV1:focus,.nvFvAllTextareaV1:focus,.nvMaAllInputV1:focus,.nvMaAllSelectV1:focus,.nvMaAllTextareaV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12);}
.nvFvAllFieldMsgV1,.nvMaAllFieldMsgV1{min-height:12px;color:var(--nv-error);font-size:.58rem;line-height:1.2;font-weight:700;}
.nvFvAllFieldHintV1,.nvMaAllFieldHintV1{color:var(--nv-biosort-soft);font-size:.56rem;font-style:italic;font-weight:600;}
.nvFvAllFieldV1.is-invalid .nvFvAllInputV1,.nvFvAllFieldV1.is-invalid .nvFvAllSelectV1,.nvFvAllFieldV1.is-invalid .nvFvAllTextareaV1,.nvMaAllFieldV1.is-invalid .nvMaAllInputV1,.nvMaAllFieldV1.is-invalid .nvMaAllSelectV1,.nvMaAllFieldV1.is-invalid .nvMaAllTextareaV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12);}
.nvFvAllRowActionsV1,.nvMaAllRowActionsV1{white-space:nowrap;}
.nvFvAllRowSaveBtnV1,.nvFvAllRowCloseBtnV1,.nvMaAllRowSaveBtnV1,.nvMaAllRowCloseBtnV1{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(47,45,42,.18);border-radius:3px;font-size:15px;line-height:1;font-weight:900;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease;}
.nvFvAllRowSaveBtnV1,.nvMaAllRowSaveBtnV1{margin-right:5px;background:var(--nv-biosort);color:var(--nv-white);border-color:var(--panita-green-dark);}
.nvFvAllRowSaveBtnV1:hover,.nvFvAllRowSaveBtnV1:focus,.nvMaAllRowSaveBtnV1:hover,.nvMaAllRowSaveBtnV1:focus{background:var(--panita-green-dark);border-color:var(--panita-green-dark);transform:scale(1.05);}
.nvFvAllRowCloseBtnV1,.nvMaAllRowCloseBtnV1{border:0;background:rgba(180,35,24,.08);color:var(--nv-error);}
.nvFvAllRowCloseBtnV1:hover,.nvFvAllRowCloseBtnV1:focus,.nvMaAllRowCloseBtnV1:hover,.nvMaAllRowCloseBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}
.nvFvAllRowSaveBtnV1:disabled,.nvFvAllRowCloseBtnV1:disabled,.nvMaAllRowSaveBtnV1:disabled,.nvMaAllRowCloseBtnV1:disabled{opacity:.62;cursor:not-allowed;transform:none;}
.nvFvAllRowSaveBtnV1.is-loading,.nvMaAllRowSaveBtnV1.is-loading{animation:nvLoginLoaderRotate .8s linear infinite;}


/* =========================================================
   FV / MA project filter, support picker and deadline labels - V2
   ========================================================= */
.nvFvAllFilterFieldV1--project,
.nvMaAllFilterFieldV1--project{
    width:190px;
}

.nvFvAllMiniLabelV1,
.nvMaAllMiniLabelV1{
    display:block;
    margin:0 0 3px;
    color:var(--nv-biosort-soft);
    font-size:.58rem;
    line-height:1.1;
    font-style:italic;
    font-weight:700;
}

.nvFvAllMiniLabelV1 span,
.nvMaAllMiniLabelV1 span{
    color:var(--nv-error);
    font-style:normal;
}

.nvFvAllSupportPickerV1,
.nvMaAllSupportPickerV1{
    position:relative;
    width:100%;
}

.nvFvAllSupportToggleV1,
.nvMaAllSupportToggleV1{
    width:100%;
    min-height:30px;
    padding:5px 8px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    color:var(--nv-biosort);
    text-align:left;
    font-size:.72rem;
    line-height:1.25;
    cursor:pointer;
}

.nvFvAllSupportToggleV1:after,
.nvMaAllSupportToggleV1:after{
    content:'▾';
    float:right;
    color:var(--nv-biosort-soft);
    font-size:.65rem;
}

.nvFvAllSupportPickerV1.is-open .nvFvAllSupportToggleV1,
.nvMaAllSupportPickerV1.is-open .nvMaAllSupportToggleV1{
    border-color:var(--panita-green);
    box-shadow:0 0 0 3px rgba(1,134,63,.12);
}

.nvFvAllSupportMenuV1,
.nvMaAllSupportMenuV1{
    position:absolute;
    z-index:120;
    top:calc(100% + 4px);
    left:0;
    right:0;
    max-height:190px;
    overflow:auto;
    display:none;
    padding:6px;
    border:1px solid rgba(47,45,42,.18);
    border-radius:3px;
    background:#fff;
    box-shadow:0 18px 38px rgba(47,45,42,.16);
}

.nvFvAllSupportPickerV1.is-open .nvFvAllSupportMenuV1,
.nvMaAllSupportPickerV1.is-open .nvMaAllSupportMenuV1{
    display:block;
}

.nvFvAllSupportOptionV1,
.nvMaAllSupportOptionV1{
    display:flex;
    align-items:center;
    gap:7px;
    padding:6px 5px;
    color:var(--nv-biosort);
    font-size:.7rem;
    line-height:1.25;
    font-weight:500;
    cursor:pointer;
}

.nvFvAllSupportOptionV1:hover,
.nvMaAllSupportOptionV1:hover{
    background:rgba(1,134,63,.08);
}

.nvFvAllSupportOptionV1 input,
.nvMaAllSupportOptionV1 input{
    width:13px;
    height:13px;
    accent-color:var(--panita-green-dark);
}

.nvFvAllSupportEmptyV1,
.nvMaAllSupportEmptyV1{
    padding:8px 6px;
    color:var(--nv-biosort-soft);
    font-size:.66rem;
    line-height:1.25;
    font-style:italic;
}

/* =========================================================
   PANITA KNOWLEDGE PLAN LIST - V1
   Unique prefix: nvKpAll
   Append this block at the bottom of assets/css/panita.css
   ========================================================= */
.nvKpAllShellV1{display:block;}
.nvKpAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvKpAllActionBarV1{justify-content:flex-start;}
.nvKpAllTableV1{min-width:1080px;}
.nvKpAllSnColV1{width:70px;text-align:center !important;}
.nvKpAllEditColV1{width:92px;text-align:center !important;}
.nvKpAllFilterFieldV1--wheel{width:240px;}
.nvKpAllFilterFieldV1--product{width:220px;}
.nvKpAllFilterFieldV1--project{width:190px;}
.nvKpAllProductV1{min-width:250px;text-align:left !important;font-weight:600;}
.nvKpAllDetailsV1{min-width:360px;text-align:center !important;}
.nvKpAllBudgetV1{min-width:130px;text-align:center !important;font-weight:700;color:var(--biosort) !important;}
.nvKpAllSubNoteV1{display:block;margin-top:4px;color:var(--nv-biosort-soft);font-size:.66rem;line-height:1.35;font-style:italic;font-weight:500;white-space:pre-line;}
.nvKpAllDetailLineV1{display:block;color:var(--nv-biosort);font-size:.7rem;line-height:1.55;font-weight:700;}
.nvKpAllDetailLineV1 strong{color:var(--panita-green-dark);font-weight:700;}
.nvKpAllCommentRuleV1{display:block;height:1px;margin:7px 0 6px;background:rgba(47,45,42,.12);}
.nvKpAllCommentsV1{display:block;color:var(--nv-biosort-soft);font-size:.66rem;line-height:1.35;font-style:italic;font-weight:500;white-space:pre-line;}
.nvKpAllStatusV1{min-width:104px;border:1px solid transparent;}
.nvKpAllStatusV1--draft{background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);border-color:var(--nv-status-draft-border);}
.nvKpAllStatusV1--planned{background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text);border-color:var(--nv-status-reviewed-border);}
.nvKpAllStatusV1--assigned{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvKpAllStatusV1--in-progress{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvKpAllStatusV1--on-hold{background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text);border-color:var(--nv-status-cancelled-border);}
.nvKpAllStatusV1--under-review{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvKpAllStatusV1--completed{background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);border-color:var(--nv-status-approved-border);}
.nvKpAllStatusV1--closed{background:var(--nv-status-posted-bg);color:var(--nv-status-posted-text);border-color:var(--nv-status-posted-border);}
.nvKpAllRecordStatusV1{display:block;margin-top:5px;color:var(--nv-biosort-soft);font-size:.58rem;font-style:italic;font-weight:700;text-transform:uppercase;}
.nvKpAllRecordStatusV1--inactive{color:var(--nv-error);}
.nvKpAllWheelStateV1{padding:0 10px 10px;color:var(--nv-biosort-soft);font-size:.68rem;line-height:1.35;font-weight:700;}
.nvKpAllWheelStateV1 strong{color:var(--panita-green-dark);}
.nvKpAllEditorRowV1{background:rgba(1,134,63,.055);}
.nvKpAllEditorRowV1:hover{background:rgba(1,134,63,.075) !important;}
.nvKpAllFieldV1{display:flex;flex-direction:column;gap:3px;}
.nvKpAllInputV1,.nvKpAllSelectV1,.nvKpAllTextareaV1{width:100%;min-height:30px;padding:5px 8px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.72rem;line-height:1.25;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;}
.nvKpAllTextareaV1{min-height:48px;resize:vertical;}
.nvKpAllInputV1:focus,.nvKpAllSelectV1:focus,.nvKpAllTextareaV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12);}
.nvKpAllFieldMsgV1{min-height:12px;color:var(--nv-error);font-size:.58rem;line-height:1.2;font-weight:700;}
.nvKpAllFieldHintV1{color:var(--nv-biosort-soft);font-size:.56rem;font-style:italic;font-weight:600;}
.nvKpAllFieldV1.is-invalid .nvKpAllInputV1,.nvKpAllFieldV1.is-invalid .nvKpAllSelectV1,.nvKpAllFieldV1.is-invalid .nvKpAllTextareaV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12);}
.nvKpAllMiniLabelV1{display:block;margin:0 0 3px;color:var(--nv-biosort-soft);font-size:.58rem;line-height:1.1;font-style:italic;font-weight:700;}
.nvKpAllMiniLabelV1 span{color:var(--nv-error);font-style:normal;}
.nvKpAllRowActionsV1{white-space:nowrap;}
.nvKpAllRowSaveBtnV1,.nvKpAllRowCloseBtnV1{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(47,45,42,.18);border-radius:3px;font-size:15px;line-height:1;font-weight:900;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease;}
.nvKpAllRowSaveBtnV1{margin-right:5px;background:var(--nv-biosort);color:var(--nv-white);border-color:var(--panita-green-dark);}
.nvKpAllRowSaveBtnV1:hover,.nvKpAllRowSaveBtnV1:focus{background:var(--panita-green-dark);border-color:var(--panita-green-dark);transform:scale(1.05);}
.nvKpAllRowCloseBtnV1{border:0;background:rgba(180,35,24,.08);color:var(--nv-error);}
.nvKpAllRowCloseBtnV1:hover,.nvKpAllRowCloseBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}
.nvKpAllRowSaveBtnV1:disabled,.nvKpAllRowCloseBtnV1:disabled{opacity:.62;cursor:not-allowed;transform:none;}
.nvKpAllRowSaveBtnV1.is-loading{animation:nvLoginLoaderRotate .8s linear infinite;}


/* =========================================================
   PANITA LEAVE PLAN - V1
   Unique prefix: nvLpAll
   ========================================================= */
.nvLpAllShellV1{display:block;}
.nvLpAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvLpAllActionBarV1{justify-content:flex-start;}
.nvLpAllTableWrapV1{overflow-x:auto;}
.nvLpAllTableV1{min-width:780px;}
.nvLpAllSnColV1{width:70px;text-align:center !important;}
.nvLpAllEditColV1{width:92px;text-align:center !important;}
.nvLpAllFilterFieldV1--wheel{width:260px;}
.nvLpAllFilterFieldV1--status{width:145px;}
.nvLpAllWheelStateV1{min-height:18px;margin:0 10px 8px;color:var(--nv-biosort-soft);font-size:.66rem;line-height:1.35;font-weight:700;}
.nvLpAllWheelStateV1 strong{color:var(--panita-green-dark);}
.nvLpAllNameV1{font-weight:600;}
.nvLpAllSubNoteV1{display:block;margin-top:4px;color:var(--nv-biosort-soft);font-size:.66rem;line-height:1.35;font-style:italic;font-weight:500;}
.nvLpAllDaysV1{font-size:.9rem;font-weight:700;color:var(--nv-biosort);}
.nvLpAllStatusV1{min-width:88px;border:1px solid transparent;background:rgba(47,45,42,.08);color:var(--nv-biosort-soft);}
.nvLpAllStatusV1--active{background:rgba(102,122,45,.14);color:var(--nv-green-dark);border-color:rgba(102,122,45,.24);}
.nvLpAllStatusV1--inactive{background:rgba(180,35,24,.10);color:var(--nv-error);border-color:rgba(180,35,24,.22);}
.nvLpAllEditorRowV1{background:rgba(1,134,63,.055);}
.nvLpAllEditorRowV1:hover{background:rgba(1,134,63,.075) !important;}
.nvLpAllFieldV1{display:flex;flex-direction:column;gap:3px;text-align:left;}
.nvLpAllInputV1,.nvLpAllSelectV1,.nvLpAllTextareaV1{width:100%;min-height:30px;padding:5px 8px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.72rem;line-height:1.25;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;}
.nvLpAllTextareaV1{min-height:58px;resize:vertical;}
.nvLpAllInputV1:focus,.nvLpAllSelectV1:focus,.nvLpAllTextareaV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12);}
.nvLpAllFieldMsgV1{min-height:12px;color:var(--nv-error);font-size:.58rem;line-height:1.2;font-weight:700;}
.nvLpAllFieldV1.is-invalid .nvLpAllInputV1,.nvLpAllFieldV1.is-invalid .nvLpAllSelectV1,.nvLpAllFieldV1.is-invalid .nvLpAllTextareaV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12);}
.nvLpAllHelpV1{display:block;margin:0 0 5px;color:var(--nv-biosort-soft);font-size:.62rem;line-height:1.3;font-style:italic;font-weight:700;}
.nvLpAllDaysPreviewV1{display:block;margin-bottom:6px;color:var(--panita-green-dark);font-size:.7rem;line-height:1.25;font-weight:700; text-align: center;}
.nvLpAllRowActionsV1{white-space:nowrap;text-align:center !important;}
.nvLpAllRowSaveBtnV1,.nvLpAllRowCloseBtnV1{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(47,45,42,.18);border-radius:3px;font-size:15px;line-height:1;font-weight:900;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease;}
.nvLpAllRowSaveBtnV1{margin-right:5px;background:var(--nv-biosort);color:var(--nv-white);border-color:var(--panita-green-dark);}
.nvLpAllRowSaveBtnV1:hover,.nvLpAllRowSaveBtnV1:focus{background:var(--panita-green-dark);border-color:var(--panita-green-dark);transform:scale(1.05);}
.nvLpAllRowCloseBtnV1{border:0;background:rgba(180,35,24,.08);color:var(--nv-error);}
.nvLpAllRowCloseBtnV1:hover,.nvLpAllRowCloseBtnV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04);}
.nvLpAllRowSaveBtnV1:disabled,.nvLpAllRowCloseBtnV1:disabled{opacity:.62;cursor:not-allowed;transform:none;}
.nvLpAllRowSaveBtnV1.is-loading{animation:nvLoginLoaderRotate .8s linear infinite;}


/* =========================================================
   PANITA LEAVE APPLICATION BALANCE DASHBOARD - V1
   Unique prefix: nvLaAllDash
   Append this block at the bottom of assets/css/panita.css
   ========================================================= */
.nvLaAllDashV1{
    width:100%;
    display:grid;
    grid-template-columns:repeat(5, minmax(0, 1fr));
    gap:18px;
    margin:0 0 14px;
    padding:0 50px 15px 50px ;
}
.nvLaAllDashLoadingV1,
.nvLaAllDashEmptyV1{
    grid-column:1 / -1;
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.13);
    border-radius:8px;
    background:#fff;
    color:var(--nv-biosort-soft);
    font-size:.72rem;
    line-height:1.35;
    font-weight:700;
}
.nvLaAllDashCardV1{
    position:relative;
    min-width:0;
    min-height:180px;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid rgba(47,45,42,.12);
    border-radius:8px;
    background:#fff;
    box-shadow:0 12px 30px rgba(47,45,42,.09);
}
.nvLaAllDashCardV1::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:3px;
    background:var(--panita-green-dark);
}
.nvLaAllDashCardV1__head{
    min-height:42px;
    display:flex;
    align-items:center;
    gap:14px;
    padding:8px 9px;
    background:linear-gradient(180deg, rgba(247,244,238,.72), rgba(255,255,255,.42));
}
.nvLaAllDashIconV1{
    width:20px;
    height:20px;
    flex:0 0 20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(102,122,45,.12);
    color:var(--nv-green-dark);
    font-size:13px;
    line-height:1;
    font-weight:500;
}
.nvLaAllDashTitleV1{
    min-width:0;
    color:var(--nv-biosort);
    font-size:.75rem;
    line-height:1.2;
    font-weight:600;
}
.nvLaAllDashBodyV1{
    flex:1 1 auto;
    display:flex;
    flex-direction:column;
    gap:12px;
    padding:10px;
}
.nvLaAllDashLineV1{
    display:grid;
    grid-template-columns:auto minmax(34px, auto);
    align-items:end;
    gap:8px;
    color:var(--nv-biosort);
    font-size:.7rem;
    line-height:1.15;
    font-weight:600;
}
.nvLaAllDashLineV1 span:first-child{
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
}
.nvLaAllDashLineV1 span:first-child::after{
    content:"";
    height:1px;
    flex:1 1 auto;
    border-bottom:1px dotted rgba(47,45,42,.18);
    transform:translateY(-2px);
}
.nvLaAllDashLineV1 strong{
    color:var(--nv-biosort);
    text-align:right;
    font-size:.7rem;
    line-height:1;
    font-weight:600;
}
.nvLaAllDashDividerV1{
    height:1px;
    margin:2px 0 3px;
    background:rgba(47,45,42,.18);
}
.nvLaAllDashBalanceV1{
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:12px;
    /* margin-top:auto; */
    color:var(--nv-biosort);
    font-size:.7rem;
    line-height:1.1;
    font-weight:600;
}
.nvLaAllDashBalanceV1 strong{
    font-size:.8rem;
    line-height:1;
    letter-spacing:-.04em;
    font-weight:700;
}
.nvLaAllDashCardV1--annual::before{background:#9b6b28;}
.nvLaAllDashCardV1--annual .nvLaAllDashIconV1{background:rgba(155,107,40,.12);color:#7b4d15;}
.nvLaAllDashCardV1--annual .nvLaAllDashBalanceV1 strong{color:#7b4d15;}
.nvLaAllDashCardV1--sick::before{background:#174f7b;}
.nvLaAllDashCardV1--sick .nvLaAllDashIconV1{background:rgba(23,79,123,.12);color:#174f7b;}
.nvLaAllDashCardV1--sick .nvLaAllDashBalanceV1 strong{color:#123c61;}
.nvLaAllDashCardV1--maternity::before{background:var(--panita-green-dark);}
.nvLaAllDashCardV1--maternity .nvLaAllDashIconV1{background:rgba(1,134,63,.13);color:var(--panita-green-dark);}
.nvLaAllDashCardV1--maternity .nvLaAllDashBalanceV1 strong{color:var(--panita-green-dark);}
.nvLaAllDashCardV1--paternity::before{background:var(--nv-error);}
.nvLaAllDashCardV1--paternity .nvLaAllDashIconV1{background:rgba(180,35,24,.12);color:var(--nv-error);}
.nvLaAllDashCardV1--paternity .nvLaAllDashBalanceV1,
.nvLaAllDashCardV1--paternity .nvLaAllDashBalanceV1 strong{color:#9b160d;}
.nvLaAllDashCardV1--compassionate::before{background:#334f5c;}
.nvLaAllDashCardV1--compassionate .nvLaAllDashIconV1{background:rgba(51,79,92,.12);color:#334f5c;}
.nvLaAllDashCardV1--compassionate .nvLaAllDashBalanceV1 strong{color:#213b48;}
@media (max-width: 1180px){
    .nvLaAllDashV1{grid-template-columns:repeat(3, minmax(0, 1fr));}
}
@media (max-width: 760px){
    .nvLaAllDashV1{grid-template-columns:1fr;}
    .nvLaAllDashCardV1{min-height:0;}
}

/* =========================================================
   PANITA AWA CONSOLIDATED VIEW - V2
   Unique prefix: nvViewAwa, nvLpViewAwa, nvKpViewAwa, nvMaViewAwa, nvFvViewAwa
   Purpose: reuse original module table/card language and keep all content inside its container
   ========================================================= */
.nvViewAwaShellV1{display:block;padding-top:34px;}
.nvViewAwaPanelV1{width:100%;min-height:520px;}
.nvViewAwaHeadV1{margin-bottom:16px;}
.nvViewAwaFilterBarV1{justify-content:flex-end;flex-wrap:wrap;}
.nvViewAwaFilterFieldV1--user{width:210px;}
.nvViewAwaFilterFieldV1--project{width:230px;}
.nvViewAwaFilterFieldV1--status{width:145px;}
.nvViewAwaStandaloneErrorV1{border:1px solid rgba(180,35,24,.18);background:rgba(180,35,24,.08);color:var(--nv-error)!important;}

/* Leave Plan AWA cards: inherit exact nvLaAllDash card standard */
.nvViewAwaLpCardsV1{
    margin-top:0;
}
.nvViewAwaLpCardsV1 .nvLaAllDashCardV1{
    min-height:0;
}
.nvViewAwaLpCardsV1 .nvLaAllDashBodyV1{
    gap:8px;
    min-width:0;
}
.nvViewAwaLpCardV1__name{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.nvViewAwaLpPlanWrapV1{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    border:1px solid rgba(47,45,42,.10);
    border-radius:3px;
    background:#fff;
}
.nvViewAwaLpMiniTableV1{
    width:100%;
    min-width:0;
    table-layout:fixed;
    border-collapse:collapse;
}
.nvViewAwaLpMiniTableV1 th,
.nvViewAwaLpMiniTableV1 td{
    padding:5px 4px;
    border-bottom:1px solid rgba(47,45,42,.10);
    color:var(--nv-biosort);
    font-size:.7rem;
    line-height:1.2;
    text-align:right;
    vertical-align:middle;
    white-space:normal;
    word-break:normal;
    overflow-wrap:anywhere;
}
.nvViewAwaLpMiniTableV1 th{
    background:rgba(247,244,238,.78);
    color:var(--nv-biosort-soft);
    text-transform:uppercase;
    letter-spacing:.05em;
    font-weight:550;
}
.nvViewAwaLpMiniTableV1 th:nth-child(1),
.nvViewAwaLpMiniTableV1 td:nth-child(1),
.nvViewAwaLpMiniTableV1 th:nth-child(2),
.nvViewAwaLpMiniTableV1 td:nth-child(2){
    width:39%;
}
.nvViewAwaLpMiniTableV1 th:nth-child(3),
.nvViewAwaLpMiniTableV1 td:nth-child(3){
    width:22%;
    text-align:right;
}
.nvViewAwaLpMiniTableV1 tbody tr:last-child td{
    background:rgba(1,134,63,.055);
    font-weight:500;
}
.nvViewAwaLpEmptyV1{
    grid-column:1/-1;
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(47,45,42,.13);
    border-radius:8px;
    background:#fff;
    color:var(--nv-biosort-soft);
    font-size:.72rem;
    line-height:1.35;
    font-weight:700;
}
.nvViewAwaLpLineV1{
    margin:0;
}

/* Table based views: keep exact table language, with controlled overflow only on wrapper */
.nvViewAwaTableWrapV1{
    width:100%;
    overflow-x:auto;
    border:1px solid rgba(47,45,42,.13);
    background:#fff;
}
.nvViewAwaTableV1{
    width:100%;
    table-layout:fixed;
}
.nvViewAwaTableV1 th,
.nvViewAwaTableV1 td{
    overflow-wrap:anywhere;
    word-break:normal;
    white-space:normal;
    vertical-align:top;
}
.nvKpViewAwaTableV1{min-width:1180px;}
.nvMaViewAwaTableV1,.nvFvViewAwaTableV1{min-width:1120px;}
.nvKpViewAwaSnColV1,.nvMaViewAwaSnColV1,.nvFvViewAwaSnColV1{width:58px;text-align:center!important;}
.nvKpViewAwaProductColV1{width:29%;}
.nvKpViewAwaOtherColV1{width:36%;}
.nvKpViewAwaBudgetColV1{width:10%;}
.nvKpViewAwaStatusColV1{width:11%;}
.nvKpViewAwaResponsibleColV1{width:14%;}
.nvMaViewAwaTaskColV1,.nvFvViewAwaTaskColV1{width:38%;}
.nvMaViewAwaProjectColV1,.nvFvViewAwaProjectColV1{width:18%;}
.nvMaViewAwaResponsibleColV1,.nvFvViewAwaResponsibleColV1{width:15%;}
.nvMaViewAwaDeadlineColV1,.nvFvViewAwaDeadlineColV1{width:17%;}
.nvMaViewAwaStatusColV1,.nvFvViewAwaStatusColV1{width:12%;}
.nvViewAwaPrimaryTextV1{
    display:block;
    color:var(--nv-biosort);
    font-weight:700;
    line-height:1.35;
    text-align:left;
}
.nvViewAwaSubTextV1{
    display:block;
    margin-top:5px;
    color:var(--nv-biosort-soft);
    font-size:.66rem;
    line-height:1.4;
    font-weight:500;
    text-align:left;
}
.nvViewAwaMetaGridV1{
    display:grid;
    gap:5px;
    text-align:left;
}
.nvViewAwaMetaGridV1 div{
    color:var(--nv-biosort);
    font-size:.68rem;
    line-height:1.35;
    font-weight:500;
}
.nvViewAwaMetaGridV1 span{
    color:var(--nv-biosort-soft);
    font-weight:700;
    text-transform:uppercase;
    font-size:.55rem;
    letter-spacing:.05em;
}
.nvViewAwaStatusV1{
    min-width:96px;
    border:1px solid transparent;
}
.nvViewAwaStatusV1--draft{background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);border-color:var(--nv-status-draft-border);}
.nvViewAwaStatusV1--planned,.nvViewAwaStatusV1--assigned,.nvViewAwaStatusV1--in-progress,.nvViewAwaStatusV1--under-review{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border);}
.nvViewAwaStatusV1--completed,.nvViewAwaStatusV1--closed{background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);border-color:var(--nv-status-approved-border);}
.nvViewAwaStatusV1--on-hold{background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text);border-color:var(--nv-status-cancelled-border);}
.nvViewAwaResponsibleV1{
    color:var(--nv-biosort);
    font-weight:700;
    text-align:center!important;
}
.nvViewAwaBudgetV1{
    color:var(--panita-green-dark)!important;
    font-family:Consolas, Monaco, monospace;
    font-weight:700;
    white-space:nowrap!important;
}
@media(max-width:1180px){
    .nvViewAwaLpCardsV1{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
    .nvViewAwaLpCardsV1{grid-template-columns:1fr;}
    .nvViewAwaFilterBarV1{justify-content:flex-start;}
    .nvViewAwaFilterFieldV1--user,.nvViewAwaFilterFieldV1--project,.nvViewAwaFilterFieldV1--status{width:100%;}
}


/* =========================================================
   AWA LEAVE PLAN VIEW REFINEMENT - V3
   Purpose: remove status-filter spacing, center cards, 3 cards per page, initials badge
   ========================================================= */
.nvLpViewAwaFilterBarV1{
    justify-content:flex-end;
}
.nvLpViewAwaFilterBarV1 .nvViewAwaFilterFieldV1--status{
    display:none!important;
}
.nvViewAwaLpCardsV1{
    display:flex!important;
    flex-wrap:wrap;
    justify-content:center;
    align-items:flex-start;
    gap:18px;
    padding:0 50px 15px 50px;
    margin:0 0 14px;
}
.nvViewAwaLpCardsV1 .nvLaAllDashCardV1{
    flex:0 1 calc((100% - 36px) / 3);
    max-width:calc((100% - 36px) / 3);
    min-width:0;
    min-height:180px;
    height:auto;
    align-self:flex-start;
}
.nvViewAwaLpCardsV1[data-card-count="1"] .nvLaAllDashCardV1{
    flex-basis:50%;
    max-width:50%;
}
.nvViewAwaLpCardsV1[data-card-count="2"] .nvLaAllDashCardV1{
    flex-basis:calc((100% - 18px) / 2);
    max-width:calc((100% - 18px) / 2);
}
.nvViewAwaLpCardsV1[data-card-count="3"] .nvLaAllDashCardV1{
    flex-basis:calc((100% - 36px) / 3);
    max-width:calc((100% - 36px) / 3);
}
.nvViewAwaLpInitialsV1{
    width:28px;
    height:28px;
    flex:0 0 28px;
    font-size:.62rem;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.nvViewAwaLpCardV1 .nvLaAllDashBodyV1{
    flex:0 0 auto;
}
.nvViewAwaLpMiniTableV1 td,
.nvViewAwaLpMiniTableV1 th{
    overflow-wrap:break-word;
}
@media(max-width:1180px){
    .nvViewAwaLpCardsV1 .nvLaAllDashCardV1,
    .nvViewAwaLpCardsV1[data-card-count="1"] .nvLaAllDashCardV1,
    .nvViewAwaLpCardsV1[data-card-count="2"] .nvLaAllDashCardV1,
    .nvViewAwaLpCardsV1[data-card-count="3"] .nvLaAllDashCardV1{
        flex-basis:calc((100% - 18px) / 2);
        max-width:calc((100% - 18px) / 2);
    }
    .nvViewAwaLpCardsV1[data-card-count="1"] .nvLaAllDashCardV1{
        flex-basis:70%;
        max-width:70%;
    }
}
@media(max-width:760px){
    .nvViewAwaLpCardsV1{
        padding:0 10px 15px 10px;
    }
    .nvViewAwaLpCardsV1 .nvLaAllDashCardV1,
    .nvViewAwaLpCardsV1[data-card-count="1"] .nvLaAllDashCardV1,
    .nvViewAwaLpCardsV1[data-card-count="2"] .nvLaAllDashCardV1,
    .nvViewAwaLpCardsV1[data-card-count="3"] .nvLaAllDashCardV1{
        flex-basis:100%;
        max-width:100%;
    }
}


/* =========================================================
   AWA KNOWLEDGE PLAN VIEW TABLE WIDTH FIX - V3
   Purpose: mimic kpAll.php table styling but force viewKPawa.php to stay inside 100% width.
   ========================================================= */
.nvKpViewAwaTableWrapV1{
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
    border:1px solid rgba(47,45,42,.13);
    background:#fff;
}

.nvKpViewAwaTableV1{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
    border-collapse:collapse;
}

.nvKpViewAwaTableV1 th,
.nvKpViewAwaTableV1 td{
    min-width:0 !important;
    max-width:none !important;
    padding:5px !important;
    border-bottom:1px solid rgba(47,45,42,.10);
    text-align:center;
    vertical-align:middle !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
}

.nvKpViewAwaTableV1 th{
    background:rgba(247,244,238,.78);
    color:var(--nv-biosort-soft);
    text-transform:uppercase;
    letter-spacing:.07em;
    font-size:.9em;
    font-weight:500;
}

.nvKpViewAwaSnColV1{
    width:5% !important;
    text-align:center !important;
}

.nvKpViewAwaProductColV1,
.nvKpViewAwaProductCellV1{
    width:30% !important;
}

.nvKpViewAwaOtherColV1,
.nvKpViewAwaOtherCellV1{
    width:28% !important;
}

.nvKpViewAwaBudgetColV1,
.nvKpViewAwaBudgetCellV1{
    width:13% !important;
}

.nvKpViewAwaStatusColV1,
.nvKpViewAwaStatusCellV1{
    width:12% !important;
}

.nvKpViewAwaResponsibleColV1,
.nvKpViewAwaResponsibleCellV1{
    width:12% !important;
}

.nvKpViewAwaProductCellV1{
    text-align:left !important;
    font-weight:600;
}

.nvKpViewAwaOtherCellV1{
    text-align:center !important;
}

.nvKpViewAwaBudgetCellV1{
    text-align:center !important;
    font-weight:700;
    color:var(--nv-biosort) !important;
}

.nvKpViewAwaResponsibleCellV1{
    text-align:center !important;
    color:var(--nv-biosort);
    font-size:.7rem;
    line-height:1.35;
    font-weight:700;
}

.nvKpViewAwaTableV1 .nvKpAllSubNoteV1,
.nvKpViewAwaTableV1 .nvKpAllCommentsV1{
    overflow-wrap:anywhere;
    word-break:normal;
}

@media (max-width: 820px){
    .nvKpViewAwaTableWrapV1{
        overflow-x:auto !important;
    }

    .nvKpViewAwaTableV1{
        min-width:760px !important;
    }
}

/* =========================================================
   AWA FIELD VISIT VIEW WIDTH / STYLE FIX - V1
   Purpose: mimic fvAll table display, remove horizontal growth, active-line view only
   ========================================================= */
.nvFvViewAwaTableWrapV1{
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
}
.nvFvViewAwaTableV1{
    width:100%!important;
    min-width:0!important;
    table-layout:fixed!important;
    border-collapse:collapse;
}
.nvFvViewAwaTableV1 th,
.nvFvViewAwaTableV1 td{
    white-space:normal!important;
    overflow-wrap:anywhere;
    word-break:normal;
    vertical-align:middle;
}
.nvFvViewAwaColSnV1{width:5%;}
.nvFvViewAwaColTaskV1{width:35%;}
.nvFvViewAwaColProjectV1{width:18%;}
.nvFvViewAwaColResponsibleV1{width:15%;}
.nvFvViewAwaColDeadlineV1{width:14%;}
.nvFvViewAwaColStatusV1{width:13%;}
.nvFvViewAwaSnColV1,
.nvFvViewAwaTableV1 td.nvFvViewAwaSnColV1{
    text-align:center!important;
}
.nvFvViewAwaTableV1 .nvFvAllTaskV1,
.nvFvViewAwaTableV1 .nvFvAllProjectV1,
.nvFvViewAwaTableV1 .nvFvAllResponsibleV1,
.nvFvViewAwaTableV1 .nvFvAllDeadlineV1{
    min-width:0!important;
}
.nvFvViewAwaTableV1 .nvFvAllTaskV1,
.nvFvViewAwaTableV1 .nvFvAllProjectV1{
    text-align:left!important;
}




.nvFvViewAwaTableV1 .nvFvAllProjectV1{
    text-align:center !important;
}

.nvFvViewAwaTableV1 .nvFvAllResponsibleV1,
.nvFvViewAwaTableV1 .nvFvAllDeadlineV1,
.nvFvViewAwaTableV1 .nvFvViewAwaStatusCellV1{
    text-align:center!important;
}
.nvFvViewAwaTableV1 .nvFvAllSubNoteV1,
.nvFvViewAwaTableV1 .nvFvAllSubTitleV1{
    display:block;
    max-width:100%;
    white-space:normal!important;
    overflow-wrap:anywhere;
}
.nvFvViewAwaTableV1 .nvViewAwaStatusV1{
    min-width:0!important;
    max-width:100%;
    padding-left:6px;
    padding-right:6px;
}
@media(max-width:900px){
    .nvFvViewAwaTableWrapV1{
        overflow-x:auto!important;
    }
    .nvFvViewAwaTableV1{
        min-width:760px!important;
    }
}


/* =========================================================
   AWA MAIN ACTIVITIES VIEW WIDTH / STYLE FIX - V1
   Purpose: mimic field visit AWA table display, fixed 100% width, active-line view only
   ========================================================= */
.nvMaViewAwaTableWrapV1{
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
}
.nvMaViewAwaTableV1{
    width:100%!important;
    min-width:0!important;
    table-layout:fixed!important;
    border-collapse:collapse;
}
.nvMaViewAwaTableV1 th,
.nvMaViewAwaTableV1 td{
    white-space:normal!important;
    overflow-wrap:anywhere;
    word-break:normal;
    vertical-align:middle;
}
.nvMaViewAwaColSnV1{width:5%;}
.nvMaViewAwaColTaskV1{width:35%;}
.nvMaViewAwaColProjectV1{width:18%;}
.nvMaViewAwaColResponsibleV1{width:15%;}
.nvMaViewAwaColDeadlineV1{width:14%;}
.nvMaViewAwaColStatusV1{width:13%;}
.nvMaViewAwaSnColV1,
.nvMaViewAwaTableV1 td.nvMaViewAwaSnColV1{
    text-align:center!important;
}
.nvMaViewAwaTableV1 .nvMaAllTaskV1,
.nvMaViewAwaTableV1 .nvMaAllProjectV1,
.nvMaViewAwaTableV1 .nvMaAllResponsibleV1,
.nvMaViewAwaTableV1 .nvMaAllDeadlineV1{
    min-width:0!important;
}
.nvMaViewAwaTableV1 .nvMaAllTaskV1{
    text-align:left!important;
}
.nvMaViewAwaTableV1 .nvMaAllProjectV1{
    text-align:center!important;
}
.nvMaViewAwaTableV1 .nvMaAllResponsibleV1,
.nvMaViewAwaTableV1 .nvMaAllDeadlineV1,
.nvMaViewAwaTableV1 .nvMaViewAwaStatusCellV1{
    text-align:center!important;
}
.nvMaViewAwaTableV1 .nvMaAllSubNoteV1,
.nvMaViewAwaTableV1 .nvMaAllSubTitleV1{
    display:block;
    max-width:100%;
    white-space:normal!important;
    overflow-wrap:anywhere;
}
.nvMaViewAwaTableV1 .nvViewAwaStatusV1{
    min-width:0!important;
    max-width:100%;
    padding-left:6px;
    padding-right:6px;
}
@media(max-width:900px){
    .nvMaViewAwaTableWrapV1{
        overflow-x:auto!important;
    }
    .nvMaViewAwaTableV1{
        min-width:760px!important;
    }
}









/* =========================================================
   PANITA LEAVE TYPES MANAGEMENT - V1
   Unique prefix: nvLtypAll
   ========================================================= */

.nvLtypAllShellV1{
    display:block;
}

.nvLtypAllFilterBarV1{
    justify-content:flex-end;
}

.nvLtypAllActionBarV1{
    justify-content:flex-start;
}

.nvLtypAllTableV1{
    width:100%;
    min-width:760px;
    table-layout:fixed;
}

.nvLtypAllSnColV1{
    width:70px;
    text-align:center !important;
}

.nvLtypAllEditColV1{
    width:92px;
    text-align:center !important;
}

.nvLtypAllNameV1{
    font-weight:600;
    text-align:left !important;
}

.nvLtypAllDescV1{
    text-align:left !important;
    color:var(--nv-biosort-soft) !important;
    font-size:.72rem !important;
    line-height:1.45 !important;
    word-break:break-word;
}

.nvLtypAllCodeV1{
    font-family:Consolas, Monaco, monospace;
    font-weight:700;
    color:var(--panita-green-dark) !important;
}

.nvLtypAllStatusV1--active{
    background:rgba(102,122,45,.14);
    color:var(--nv-green-dark);
}

.nvLtypAllStatusV1--inactive{
    background:rgba(180,35,24,.10);
    color:var(--nv-error);
}

.nvLtypAllPolicyHintV1{
    grid-column:1 / -1;
    padding:8px 10px;
    border:1px solid rgba(1,134,63,.18);
    border-radius:3px;
    background:rgba(1,134,63,.07);
    color:var(--panita-green-dark);
    font-size:.66rem;
    line-height:1.35;
    font-weight:700;
}

.nvLtypAllInputV1[type="number"]{
    -moz-appearance:textfield;
}

.nvLtypAllInputV1[type="number"]::-webkit-inner-spin-button,
.nvLtypAllInputV1[type="number"]::-webkit-outer-spin-button{
    margin:0;
}

.nvLtypAllFormGridV1{
    grid-template-columns:repeat(3, minmax(160px, 1fr));
}

.nvLtypAllFieldV1--wide{
    grid-column:span 2;
}

.nvLtypAllFieldV1--full{
    grid-column:1 / -1;
}

.nvLtypAllTextAreaV1{
    min-height:68px;
    resize:vertical;
}

@media (max-width: 960px){
    .nvLtypAllFormGridV1{
        grid-template-columns:repeat(2, minmax(160px, 1fr));
    }

    .nvLtypAllFieldV1--wide{
        grid-column:1 / -1;
    }
}

@media (max-width: 720px){
    .nvLtypAllFormGridV1{
        grid-template-columns:1fr;
    }

    .nvLtypAllTableV1{
        min-width:760px;
    }

    .nvLtypAllTableWrapV1{
        overflow-x:auto;
    }
}











/* =========================================================
   PANITA CRITERIAS MANAGEMENT - V1
   Append to: /assets/css/panita.css
   Unique prefix: nvCrtAll
   ========================================================= */

.nvCrtAllColSnV1{width:7%}
.nvCrtAllColTitleV1{width:27%}
.nvCrtAllColDescV1{width:45%}
.nvCrtAllColStatusV1{width:14%}
.nvCrtAllColEditV1{width:7%}

.nvCrtAllTitleCellV1{font-weight:700;color:var(--nv-biosort)}
.nvCrtAllDescCellV1{color:var(--nv-biosort-soft);line-height:1.45}
.nvCrtAllMetaV1{display:block;margin-top:5px;color:var(--nv-biosort-soft);font-size:11px;font-weight:600}

.nvCrtAllStatusV1--draft{background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);border-color:var(--nv-status-draft-border)}
.nvCrtAllStatusV1--active{background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);border-color:var(--nv-status-approved-border)}
.nvCrtAllStatusV1--inactive{background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text);border-color:var(--nv-status-cancelled-border)}

.nvCrtAllCardV1{width:min(1180px,calc(100vw - 32px));max-height:calc(100vh - 34px)}
.nvCrtAllFormV1{min-width:0;padding:22px 28px}
.nvCrtAllFormGridV1{grid-template-columns:repeat(2,minmax(0,1fr))}
.nvCrtAllFieldV1--full{grid-column:1/-1}
.nvCrtAllTextAreaV1{resize:vertical}

.nvCrtAllLockNoteV1{
    display:none;
    grid-column:1/-1;
    padding:6px 7px;
    border:1px solid var(--nv-status-draft-border);
    background:var(--nv-status-draft-bg);
    color:var(--nv-status-draft-text);
    font-size:12px;
    line-height:1.5;
}
.nvCrtAllOverlayV1.is-structure-locked .nvCrtAllLockNoteV1{display:block}
.nvCrtAllOverlayV1.is-structure-locked .nvCrtAllStructuralV1{background:#f2efe9;color:#777;cursor:not-allowed}

.nvCrtAllDetailsIntroV1{margin:0 0 10px;color:var(--nv-biosort-soft);font-size:12px;line-height:1.5}
.nvCrtAllLinesWrapV1{margin-bottom:0}
.nvCrtAllLinesTableV1{min-width:760px}
.nvCrtAllLineNoColV1{width:52px}
.nvCrtAllPercentageColV1{width:155px}
.nvCrtAllActionColV1{width:66px}
.nvCrtAllLinesTableV1 th:nth-child(2){width:30%}
.nvCrtAllLinesTableV1 th:nth-child(4){width:42%}
.nvCrtAllAddDetailBtnV1{margin-top:10px}
.nvCrtAllAddDetailBtnV1:disabled{opacity:.48;cursor:not-allowed}
.nvCrtAllDetailCommentsV1{min-height:32px;height:32px;resize:vertical;line-height:1.35}
.nvCrtAllDetailMsgV1{min-height:0}
.nvCrtAllDetailRowV1.is-invalid td{background:rgba(180,35,24,.025)}
.nvCrtAllRemoveDetailBtnV1:disabled{opacity:.35;cursor:not-allowed}

.nvCrtAllTotalBarV1{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-top:10px;
    padding:10px 12px;
    border:1px solid var(--nv-status-rejected-border);
    background:var(--nv-status-rejected-bg);
    color:var(--nv-status-rejected-text);
    font-size:12px;
    font-weight:700;
}
.nvCrtAllTotalBarV1.is-complete{border-color:var(--nv-status-approved-border);background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text)}
.nvCrtAllTotalValueV1{font-size:16px;letter-spacing:-.02em}

.nvCrtAllEmptyDetailsV1{
    padding:22px!important;
    color:var(--nv-biosort-soft);
    text-align:center;
    font-size:13px;
}

@media (max-width:820px){
    .nvCrtAllFormGridV1{grid-template-columns:1fr}
    .nvCrtAllFieldV1--full{grid-column:auto}
    .nvCrtAllFormV1{padding:18px}
}

@media (max-width:620px){
    .nvCrtAllTableV1 th:nth-child(3),.nvCrtAllTableV1 td:nth-child(3){display:none}
}










/* =========================================================
   PANITA PROCUREMENT ASSESSMENT MODULE - V1
   Unique prefix: nvProc
   Append to assets/css/panita.css
   ========================================================= */
.nvProcAllShellV1{display:block}.nvProcAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap}.nvProcAllActionBarV1{justify-content:flex-start}.nvProcAllTableV1{min-width:980px}.nvProcAllFilterFieldV1--number{width:190px}.nvProcAllFilterFieldV1--title{width:250px}.nvProcAllTitleColV1{font-weight:600;color:var(--nv-biosort)}
.nvProcStatusV1{min-width:105px;border:1px solid transparent}.nvProcStatusV1--draft{background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);border-color:var(--nv-status-draft-border)}.nvProcStatusV1--under-review{background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);border-color:var(--nv-status-under-review-border)}.nvProcStatusV1--reviewed{background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text);border-color:var(--nv-status-reviewed-border)}.nvProcStatusV1--approved{background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);border-color:var(--nv-status-approved-border)}.nvProcStatusV1--rejected{background:var(--nv-status-rejected-bg);color:var(--nv-status-rejected-text);border-color:var(--nv-status-rejected-border)}.nvProcStatusV1--cancelled{background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text);border-color:var(--nv-status-cancelled-border)}
.nvProcFormGridV1{grid-template-columns:minmax(250px,2fr) minmax(180px,1fr) 130px}.nvProcCriteriaPreviewWrapV1{overflow:visible}.nvProcCriteriaPreviewTableV1{min-width:0}.nvProcCriteriaPreviewTableV1 th:first-child,.nvProcCriteriaPreviewTableV1 td:first-child{width:65%}.nvProcCriteriaPreviewTableV1 th:last-child,.nvProcCriteriaPreviewTableV1 td:last-child{width:35%;text-align:center}.nvProcCriteriaPercentageV1,.nvProcCriteriaPercentageTipV1{font-family:Consolas,Monaco,monospace;font-weight:900;color:var(--nv-green-dark)}.nvProcCriteriaPercentageTipV1:focus{outline:2px solid rgba(102,122,45,.25);outline-offset:3px}.nvProcSupplierTableV1{min-width:900px}.nvProcSupplierExplanationV1{min-height:34px;resize:vertical}.nvProcTeamFieldV1{position:relative;max-width:520px;margin:0 0 18px}.nvProcTeamPickerV1{width:100%}.nvProcTeamToggleV1{min-height:36px}.nvProcTeamMenuV1{z-index:180;max-height:260px}.nvProcTeamOptionV1 span{display:flex;min-width:0;flex-direction:column;gap:1px}.nvProcTeamOptionV1 strong{font-size:.7rem}.nvProcTeamOptionV1 small{color:var(--nv-biosort-soft);font-size:.58rem;font-weight:500}.nvProcTeamHintV1{margin-top:5px;color:var(--nv-biosort-soft);font-size:.62rem;line-height:1.35;font-weight:600}.nvProcTeamFieldV1.is-invalid .nvProcTeamToggleV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12)}
.nvProcViewMetaGridV1{grid-template-columns:repeat(5,minmax(100px,1fr))}.nvProcScoreLegendV1{margin:-2px 0 8px;color:var(--nv-biosort-soft);font-size:.64rem;line-height:1.4;font-style:italic}.nvProcScoreTableWrapV1{width:100%;overflow-x:auto; padding-bottom: 10px;}.nvProcScoreTableV1{width:100%;min-width:1180px;border-collapse:collapse}.nvProcScoreTableV1 th,.nvProcScoreTableV1 td{min-width:96px;white-space:normal}.nvProcScoreTableV1 th:first-child,.nvProcScoreTableV1 td:first-child{min-width:44px;width:44px;text-align:center}.nvProcScoreTableV1 th:nth-child(2),.nvProcScoreTableV1 td:nth-child(2){min-width:190px}.nvProcScoreTableV1 th:nth-child(3),.nvProcScoreTableV1 td:nth-child(3){min-width:145px;text-align:right}.nvProcScoreTableV1 th small{display:block;margin-top:2px;color:var(--nv-biosort-soft);font-size:.56rem;font-weight:600}.nvProcScoreTableV1 td>small{display:block;margin-top:3px;color:var(--nv-biosort-soft);font-size:.58rem;font-weight:500}.nvProcScoreCellV1,.nvProcWeightedCellV1{text-align:center!important;font-variant-numeric:tabular-nums}.nvProcWeightedCellV1{font-weight:800;color:var(--panita-green-dark)!important}.nvProcCommentsCellV1{min-width:190px!important;font-size:.64rem!important;line-height:1.45!important}.nvProcScoreTableV1 tr.is-winning td{background:rgba(1,134,63,.09)}.nvProcScoreTableV1 tr.is-winning td:nth-child(2) strong:after{content:'  • Recommended';color:var(--panita-green-dark);font-size:.58rem;font-weight:800}
.nvProcTeamAccordionV1{display:flex;flex-direction:column;gap:7px;margin:0 0 18px}.nvProcTeamMemberV1{border:1px solid rgba(47,45,42,.13);border-radius:3px;background:#fff;overflow:hidden}.nvProcTeamMemberBtnV1{width:100%;display:grid;grid-template-columns:minmax(180px,1fr) auto 18px;align-items:center;gap:10px;padding:10px 12px;border:0;background:rgba(247,244,238,.68);color:var(--nv-biosort);text-align:left;cursor:pointer}.nvProcTeamMemberBtnV1:hover,.nvProcTeamMemberBtnV1:focus{background:rgba(1,134,63,.08)}.nvProcTeamMemberBtnV1 span{font-size:.75rem;font-weight:750}.nvProcTeamMemberBtnV1 small{padding:3px 7px;border:1px solid var(--nv-status-under-review-border);border-radius:999px;background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);font-size:.56rem;font-weight:800}.nvProcTeamMemberBtnV1 small.is-complete{border-color:var(--nv-status-reviewed-border);background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text)}.nvProcTeamMemberBtnV1 i{font-style:normal;transition:transform .16s ease}.nvProcTeamMemberBtnV1[aria-expanded="true"] i{transform:rotate(180deg)}.nvProcTeamMemberPanelV1{padding:10px;border-top:1px solid rgba(47,45,42,.1);background:#fff}.nvProcMemberToolbarV1{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px}.nvProcMemberToolbarV1 strong{font-size:.72rem;color:var(--nv-biosort)}.nvProcMemberToolbarV1 button{min-height:30px;padding:6px 12px;font-size:.64rem}.nvProcScoreSelectV1{width:72px;min-height:31px;padding:5px 7px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.7rem;outline:none}.nvProcScoreSelectV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12)}.nvProcScoreCommentsV1,.nvProcWorkflowCommentsV1{width:100%;min-height:54px;padding:7px 8px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.66rem;line-height:1.35;resize:vertical;outline:none}.nvProcScoreCommentsV1:focus,.nvProcWorkflowCommentsV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12)}.nvProcScoreSaveBarV1{display:flex;justify-content:flex-end;padding-top:10px}.nvProcScoreSaveBarV1 .nvTaSaveBtnV1{width:auto;min-width:190px}


.nvProcReviewBoxV1 strong{line-height:1.55;}

.nvProcViewConfirmV1{grid-column:1/-1}.nvProcWorkflowCommentsV1{margin:8px 0;min-height:70px}

/* Procurement assessment view/workflow refinement */
.nvProcViewSignGridV1{grid-template-columns:repeat(3,minmax(0,1fr))}
.nvProcWorkflowStageV1--wide{grid-column:span 2}
.nvProcReviewInProgressV1{display:flex;flex-direction:column;align-items:center;gap:4px;max-width:100%;color:var(--nv-biosort);text-align:center}
.nvProcReviewInProgressV1 span{color:var(--nv-biosort-soft);font-size:.62rem;line-height:1.2;font-weight:700;text-transform:uppercase}
.nvProcReviewInProgressV1 strong{color:var(--nv-biosort);font-size:.7rem;line-height:1.45;font-weight:700;text-transform:uppercase}
.nvProcMemberToolbarV1 .nvProcScoreToolbarActionsV1{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.nvProcMemberToolbarV1 .nvProcEditScoresBtnV1,.nvProcMemberToolbarV1 .nvProcScoreToolbarActionsV1 button{min-height:30px;height:30px;padding:0 10px;font-size:.62rem;line-height:1}
.nvProcMemberToolbarV1 .nvProcCancelScoreEditBtnV1{min-width:0;background:rgba(180,35,24,.10);color:var(--nv-error);border:1px solid rgba(180,35,24,.16)}
.nvProcRecommendationTagV1,.nvProcSelectedTagV1{display:block;width:max-content;margin-top:3px;font-size:.58rem!important;font-weight:800!important;line-height:1.2!important}
.nvProcRecommendationTagV1{color:var(--nv-green-dark)!important}.nvProcSelectedTagV1{color:var(--nv-biosort-soft)!important;font-style:italic}
.nvProcScoreTableV1 tr.is-winning td:nth-child(2) strong:after{content:none}
.nvProcTieNoticeV1{margin:7px 0 8px;padding:7px 8px;border:1px solid rgba(181,106,0,.22);border-radius:3px;background:rgba(181,106,0,.08);color:#7b4d15;font-size:.65rem;line-height:1.38;font-weight:700}
.nvProcWinnerSelectV1{display:flex;flex-direction:column;gap:4px;margin:0 0 8px;color:var(--nv-biosort);font-size:.64rem;font-weight:700}.nvProcWinnerSelectV1 select{min-height:31px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);padding:5px 7px;font-size:.68rem;outline:none}.nvProcWinnerSelectV1 select:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12)}
@media (max-width:760px){.nvProcWorkflowStageV1--wide{grid-column:1/-1}.nvProcMemberToolbarV1{align-items:flex-start;flex-direction:column}.nvProcMemberToolbarV1 .nvProcScoreToolbarActionsV1{justify-content:flex-start}}







/* ================================================================
   PANITA - SERVICE SURVEY MODULE
   Append this complete block to /assets/css/panita.css
   Unique namespace: nvSs
================================================================ */
.nvSsAllFilterBarV1{justify-content:flex-end;flex-wrap:wrap}.nvSsAllActionBarV1{justify-content:space-between}.nvSsFilterNumberV1{width:190px}.nvSsFilterTitleV1{width:250px}.nvSsHistoryLinkV1{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid rgba(47,45,42,.16);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.66rem;font-weight:750;text-decoration:none}.nvSsHistoryLinkV1:hover{border-color:var(--panita-green);color:var(--panita-green-dark)}
.nvSsQueueTableV1{min-width:1050px}.nvSsQueueTableV1 td{vertical-align:middle}.nvSsQueueTableV1 tbody tr+tr td{border-top:1px solid rgba(47,45,42,.08)}.nvSsPaSourceV1{vertical-align:middle!important;font-weight:700; letter-spacing:.08em;}.nvSsPaSourceV1 a{color:var(--panita-green-dark);text-decoration:none}.nvSsPaSourceV1 small,.nvSsPaSnapshotV1{display:block;margin-top:4px;color:var(--nv-biosort-soft);font-size:.58rem;font-weight:600}.nvSsPrepareRowV1 td{padding:8px!important;border-top:1px solid rgba(1,134,63,.18)!important;border-bottom:1px solid rgba(1,134,63,.18);text-align:center}.nvSsPrepareBtnV1{display:inline-flex!important;width:auto!important;min-width:210px!important;margin:0 auto!important; font-weight: 700;}.nvSsFlatTableV1{min-width:1050px}
.nvSsFormGridV1{grid-template-columns:minmax(250px,2fr) minmax(180px,1fr) 130px}.nvSsCriteriaPreviewWrapV1{overflow:visible}.nvSsCriteriaPreviewTableV1{min-width:0}.nvSsCriteriaPreviewTableV1 th:first-child,.nvSsCriteriaPreviewTableV1 td:first-child{width:65%}.nvSsCriteriaPreviewTableV1 th:last-child,.nvSsCriteriaPreviewTableV1 td:last-child{width:35%;text-align:center}.nvSsCriteriaPercentageV1{font-family:Consolas,Monaco,monospace;font-weight:900;color:var(--nv-green-dark)}
.nvSsSourceFieldV1{position:relative;max-width:100%;margin:0 0 18px}.nvSsSourceFieldV1>label{display:block;margin-bottom:5px;color:var(--nv-biosort);font-size:.66rem;font-weight:750}.nvSsSourceFieldV1>label span{color:var(--nv-error)}.nvSsSourcePickerV1{position:relative;max-width:720px}.nvSsSourceResultsV1{position:absolute;z-index:190;top:calc(100% + 3px);left:0;right:0;max-height:280px;overflow:auto;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;box-shadow:0 12px 30px rgba(32,35,31,.14)}.nvSsSourceResultsV1 button{display:grid;width:100%;grid-template-columns:145px minmax(180px,1fr);gap:2px 10px;padding:9px 11px;border:0;border-bottom:1px solid rgba(47,45,42,.08);background:#fff;color:var(--nv-biosort);text-align:left;cursor:pointer}.nvSsSourceResultsV1 button:hover,.nvSsSourceResultsV1 button:focus{background:rgba(1,134,63,.08)}.nvSsSourceResultsV1 button:disabled{opacity:.58;cursor:not-allowed}.nvSsSourceResultsV1 strong{grid-row:1/3;font-size:.67rem;color:var(--panita-green-dark)}.nvSsSourceResultsV1 span{font-size:.68rem;font-weight:700}.nvSsSourceResultsV1 small{font-size:.58rem;color:var(--nv-biosort-soft)}.nvSsSourceSelectedV1{position:relative;display:grid;grid-template-columns:150px 1fr;gap:3px 10px;max-width:720px;margin-top:7px;padding:10px 38px 10px 11px;border:1px solid var(--nv-status-approved-border);border-radius:3px;background:var(--nv-status-approved-bg)}.nvSsSourceSelectedV1[hidden]{display:none}.nvSsSourceSelectedV1 strong{grid-row:1/3;color:var(--nv-status-approved-text);font-size:.7rem}.nvSsSourceSelectedV1 span{font-size:.7rem;font-weight:750;color:var(--nv-biosort)}.nvSsSourceSelectedV1 small{color:var(--nv-biosort-soft);font-size:.6rem}.nvSsSourceRemoveV1{position:absolute;top:6px;right:7px;width:24px;height:24px;border:0;border-radius:50%;background:rgba(180,35,24,.09);color:var(--nv-error);font-size:1rem;cursor:pointer}.nvSsSourceFieldV1.is-invalid .nvSsSourcePickerV1 input{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12)}
.nvSsTeamFieldV1{position:relative;max-width:520px;margin:0 0 18px}.nvSsTeamPickerV1{width:100%}.nvSsTeamToggleV1{min-height:36px}.nvSsTeamMenuV1{z-index:180;max-height:260px}.nvSsTeamMenuV1.is-open{display:block}.nvSsTeamOptionV1 span{display:flex;min-width:0;flex-direction:column;gap:1px}.nvSsTeamOptionV1 strong{font-size:.7rem}.nvSsTeamOptionV1 small{color:var(--nv-biosort-soft);font-size:.58rem;font-weight:500}.nvSsTeamHintV1{margin-top:5px;color:var(--nv-biosort-soft);font-size:.62rem;line-height:1.35;font-weight:600}.nvSsTeamFieldV1.is-invalid .nvSsTeamToggleV1{border-color:var(--nv-error);box-shadow:0 0 0 3px rgba(180,35,24,.12)}
.nvSsViewMetaGridV1{grid-template-columns:repeat(6,minmax(100px,1fr))}.nvSsScoreLegendV1{margin:-2px 0 8px;color:var(--nv-biosort-soft);font-size:.64rem;line-height:1.4;font-style:italic}.nvSsScoreTableWrapV1{width:100%;overflow-x:auto;padding-bottom:10px}.nvSsScoreTableV1{width:100%;min-width:1180px;border-collapse:collapse}.nvSsScoreTableV1 th,.nvSsScoreTableV1 td{min-width:96px;white-space:normal}.nvSsScoreTableV1 th:first-child,.nvSsScoreTableV1 td:first-child{min-width:44px;width:44px;text-align:center}.nvSsScoreTableV1 th:nth-child(2),.nvSsScoreTableV1 td:nth-child(2){min-width:190px}.nvSsScoreTableV1 th:nth-child(3),.nvSsScoreTableV1 td:nth-child(3){min-width:175px}.nvSsScoreTableV1 th small{display:block;margin-top:2px;color:var(--nv-biosort-soft);font-size:.56rem;font-weight:600}.nvSsScoreCellV1,.nvSsWeightedCellV1{text-align:center!important;font-variant-numeric:tabular-nums}.nvSsWeightedCellV1{font-weight:800;color:var(--panita-green-dark)!important}.nvSsCommentsCellV1{min-width:350px!important;font-size:.64rem!important;line-height:1.45!important}
.nvSsTeamAccordionV1{display:flex;flex-direction:column;gap:7px;margin:0 0 18px}.nvSsTeamMemberV1{overflow:hidden;border:1px solid rgba(47,45,42,.13);border-radius:3px;background:#fff}.nvSsTeamMemberBtnV1{display:grid;width:100%;grid-template-columns:minmax(180px,1fr) auto 18px;align-items:center;gap:10px;padding:10px 12px;border:0;background:rgba(247,244,238,.68);color:var(--nv-biosort);text-align:left;cursor:pointer}.nvSsTeamMemberBtnV1:hover{background:rgba(1,134,63,.08)}.nvSsTeamMemberBtnV1 span{font-size:.75rem;font-weight:750}.nvSsTeamMemberBtnV1 small{padding:3px 7px;border:1px solid var(--nv-status-under-review-border);border-radius:999px;background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text);font-size:.56rem;font-weight:800}.nvSsTeamMemberBtnV1 small.is-complete{border-color:var(--nv-status-reviewed-border);background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text)}.nvSsTeamMemberBtnV1 i{font-style:normal;transition:transform .16s}.nvSsTeamMemberBtnV1[aria-expanded=true] i{transform:rotate(180deg)}.nvSsTeamMemberPanelV1{padding:10px;border-top:1px solid rgba(47,45,42,.1);background:#fff}.nvSsMemberToolbarV1{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.nvSsMemberToolbarV1 strong{font-size:.72rem;color:var(--nv-biosort)}.nvSsScoreToolbarActionsV1{display:flex;gap:6px}.nvSsMemberToolbarV1 button{min-height:30px;padding:6px 12px;font-size:.64rem}.nvSsScoreSelectV1{width:72px;min-height:31px;padding:5px 7px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.7rem}.nvSsScoreSelectV1:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12)}.nvSsScoreCommentsV1,.nvSsWorkflowCommentsV1{width:100%;min-height:54px;padding:7px 8px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.66rem;resize:vertical}.nvSsViewSignGridV1{grid-template-columns:repeat(3,minmax(0,1fr))}.nvSsWorkflowStageV1--wide{grid-column:span 2}.nvSsReviewInProgressV1{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--nv-biosort);text-align:center}.nvSsReviewInProgressV1 span{color:var(--nv-biosort-soft);font-size:.62rem;font-weight:700;text-transform:uppercase}.nvSsReviewInProgressV1 strong{font-size:.7rem;line-height:1.45;text-transform:uppercase}.nvSsReviewBoxV1 strong{line-height:1.55}.nvSsViewConfirmV1{grid-column:1/-1}
@media(max-width:900px){.nvSsViewMetaGridV1{grid-template-columns:repeat(3,minmax(100px,1fr))}.nvSsFormGridV1{grid-template-columns:1fr 1fr}.nvSsFieldV1--title{grid-column:1/-1}}@media(max-width:760px){.nvSsWorkflowStageV1--wide{grid-column:1/-1}.nvSsMemberToolbarV1{align-items:flex-start;flex-direction:column}.nvSsSourceSelectedV1{grid-template-columns:1fr}.nvSsSourceSelectedV1 strong{grid-row:auto}}@media(max-width:560px){.nvSsFormGridV1,.nvSsViewMetaGridV1{grid-template-columns:1fr}.nvSsSourceResultsV1 button{grid-template-columns:1fr}.nvSsSourceResultsV1 strong{grid-row:auto}}
.nvSsQueueSurveyNoV1{color:var(--panita-green-dark);font-family:Consolas,Monaco,monospace;font-weight:700;text-decoration:none!important;}
.nvSsQueueSurveyNoV1:hover,.nvSsQueueSurveyNoV1:focus{text-decoration:underline!important;text-underline-offset:3px;}
.nvSsQueueEditBtnV1,.nvSsQueueEditBtnV1:hover,.nvSsQueueEditBtnV1:focus{text-decoration:none!important;}


/* ================================================================
   PANITA MANAGEMENT REPORTS MODULE - V1
   Append-only namespace: nvRpt
================================================================ */
.nvRptPageV1{min-height:100vh;background:var(--nv-paper)}
.nvRptPageV1 .Header{position:relative;background:var(--nv-paper-2);border-bottom:1px solid rgba(47,45,42,.14)}
.nvRptMainV1,.nvRptIntroV1{min-height:calc(100vh - 167px)}
.nvRptIntroV1{position:relative;overflow:visible;background:var(--nv-paper)}
.nvRptShellV1{position:relative;z-index:5;display:block;width:calc(100% - 32px);min-height:calc(100vh - 167px);margin:0 auto;padding:34px 0 30px}
.nvRptPanelV1{width:100%;min-height:520px;padding:10px;background:var(--nv-white);border:1px solid rgba(47,45,42,.14);box-shadow:0 18px 48px rgba(47,45,42,.08)}
.nvRptHeadV1{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid rgba(47,45,42,.14)}
.nvRptTitleV1{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:0;color:var(--nv-biosort);font-size:1.6rem;line-height:1;letter-spacing:.02em;font-weight:500}
.nvRptTitleHomeV1{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;opacity:.5;text-decoration:none;transition:opacity .16s ease,transform .16s ease}
.nvRptTitleHomeV1 img{display:block;width:13px;height:13px;object-fit:contain}
.nvRptTitleHomeV1:hover,.nvRptTitleHomeV1:focus{opacity:1;transform:scale(1.04)}
.nvRptTitleParentV1,.nvRptTitleSepV1{color:var(--nv-biosort);font-size:40%;line-height:1;letter-spacing:.02em;font-weight:500;opacity:.5}
.nvRptTitleParentV1{cursor:default;text-transform:uppercase}.nvRptTitleSepV1{user-select:none}
.nvRptTitleCurrentV1{color:var(--nv-biosort);font-size:100%;line-height:1;letter-spacing:-.035em;font-weight:500;opacity:1}
.nvRptNoticeV1{min-width:260px;max-width:420px;padding:11px 14px;border-radius:3px;font-size:.7rem;line-height:1.4;font-weight:600}
.nvRptNoticeV1:empty{display:none}
.nvRptNoticeV1.is-error{display:block;border:1px solid rgba(180,35,24,.26);background:rgba(180,35,24,.10);color:var(--nv-error)}
.nvRptFilterBarV1{display:flex;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-bottom:10px;padding:10px}
.nvRptFilterFieldV1{display:flex;width:150px;min-width:130px;flex-direction:column;gap:4px}
.nvRptFilterFieldV1--search{width:205px}
.nvRptFilterFieldV1 label{color:var(--nv-biosort-soft);text-transform:uppercase;letter-spacing:.07em;font-size:.58rem;line-height:1;font-weight:700}
.nvRptFilterFieldV1 input,.nvRptFilterFieldV1 select{width:100%;min-height:30px;padding:5px 8px;border:1px solid rgba(47,45,42,.18);border-radius:3px;background:#fff;color:var(--nv-biosort);font-size:.68rem;line-height:1.2;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
.nvRptFilterFieldV1 input:focus,.nvRptFilterFieldV1 select:focus{border-color:var(--panita-green);box-shadow:0 0 0 3px rgba(1,134,63,.12)}
.nvRptFilterClearV1{display:inline-flex;width:28px;height:28px;flex:0 0 auto;align-items:center;justify-content:center;border:0;border-radius:3px;background:rgba(180,35,24,.08);color:var(--nv-error);font-size:15px;line-height:1;font-weight:700;cursor:pointer}
.nvRptFilterClearV1:hover,.nvRptFilterClearV1:focus{background:rgba(180,35,24,.15);box-shadow:0 8px 18px rgba(180,35,24,.16);transform:scale(1.04)}
.nvRptResultMetaV1{display:flex;align-items:center;min-height:30px;margin:0 0 8px;padding:7px 10px;border:1px solid rgba(47,45,42,.10);border-radius:3px;background:rgba(247,244,238,.60);color:var(--nv-biosort-soft);font-size:.64rem;font-weight:700}
.nvRptTableWrapV1{position:relative;width:100%;max-width:100%;max-height:calc(100vh - 120px);overflow:auto;padding-bottom:12px;border:1px solid rgba(47,45,42,.13);border-radius:3px;background:#fff;scrollbar-gutter:stable;overscroll-behavior:contain;cursor:grab;touch-action:none}
.nvRptTableWrapV1.is-dragging{cursor:grabbing;user-select:none}
.nvRptTableWrapV1:focus-visible{outline:2px solid rgba(1,134,63,.42);outline-offset:2px}
.nvRptTableV1{width:max-content;min-width:100%;border-collapse:collapse}
.nvRptTableV1 .nvRptHeadCellV1,.nvRptTableV1 .nvRptCellV1{min-width:132px;max-width:310px;padding:9px 10px;border:1px solid rgba(47,45,42,.10);white-space:normal;vertical-align:top;color:var(--nv-biosort);font-size:.75rem;line-height:1.35}
.nvRptTableV1 .nvRptWidthV1--serial{width:56px!important;min-width:56px!important;max-width:56px!important}
.nvRptTableV1 .nvRptWidthV1--currency{width:76px!important;min-width:76px!important;max-width:76px!important}
.nvRptTableV1 .nvRptWidthV1--days{width:100px!important;min-width:100px!important;max-width:110px!important}
.nvRptTableV1 .nvRptWidthV1--date{width:132px!important;min-width:132px!important;max-width:132px!important}
.nvRptTableV1 .nvRptWidthV1--period{width:190px!important;min-width:190px!important;max-width:210px!important}
.nvRptTableV1 .nvRptWidthV1--amount{width:145px!important;min-width:145px!important;max-width:160px!important}
.nvRptTableV1 .nvRptWidthV1--score{width:125px!important;min-width:125px!important;max-width:145px!important}
.nvRptTableV1 .nvRptWidthV1--flag{width:105px!important;min-width:105px!important;max-width:115px!important}
.nvRptTableV1 .nvRptWidthV1--status{width:145px!important;min-width:145px!important;max-width:170px!important}
.nvRptTableV1 .nvRptWidthV1--reference{width:165px!important;min-width:165px!important;max-width:185px!important}
.nvRptTableV1 .nvRptWidthV1--person{width:195px!important;min-width:195px!important;max-width:220px!important}
.nvRptTableV1 .nvRptWidthV1--name{width:205px!important;min-width:205px!important;max-width:240px!important}
.nvRptTableV1 .nvRptWidthV1--standard{width:175px!important;min-width:175px!important;max-width:220px!important}
.nvRptTableV1 .nvRptWidthV1--wide{width:270px!important;min-width:270px!important;max-width:330px!important}
.nvRptTableV1 .nvRptWidthV1--detail{width:330px!important;min-width:330px!important;max-width:400px!important}
.nvRptTableV1 > thead > tr > .nvRptHeadCellV1{position:sticky;z-index:12;top:0;background:var(--nv-biosort);color:#fff;font-size:.7rem;font-weight:700;text-align:center!important;box-shadow:0 1px 0 rgba(255,255,255,.12),0 2px 4px rgba(32,35,31,.08)}
.nvRptTableV1 > tbody > tr > .nvRptCellV1--center{text-align:center!important}
.nvRptTableV1 > tbody > tr > .nvRptCellV1--right{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}
.nvRptTableV1 > tbody > tr > .nvRptCellV1--left{min-width:230px;text-align:left!important;line-height:1.45}
.nvRptTableV1 > tbody > tr > .nvRptCellV1--date{white-space:nowrap}
.nvRptTableV1 > tbody > tr{transition:background-color .14s ease,box-shadow .14s ease}
.nvRptTableV1 > tbody > tr:hover > .nvRptCellV1,.nvRptTableV1 > tbody > tr:focus-within > .nvRptCellV1{background:rgba(1,134,63,.075)}
.nvRptEmptyV1{padding:15px 8px!important;color:var(--nv-biosort-soft)!important;font-weight:500;text-align:center!important}
.nvRptBooleanV1{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:3px 7px;border:1px solid var(--nv-status-approved-border);border-radius:999px;background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text);font-size:.58rem;font-weight:800}
.nvRptBooleanV1.is-no{border-color:var(--nv-status-rejected-border);background:var(--nv-status-rejected-bg);color:var(--nv-status-rejected-text)}
.nvRptStatusV1{display:inline-flex;align-items:center;justify-content:center;min-width:92px;padding:4px 7px;border:1px solid var(--nv-status-draft-border);border-radius:999px;background:var(--nv-status-draft-bg);color:var(--nv-status-draft-text);font-size:.57rem;line-height:1.2;font-weight:800;text-align:center}
.nvRptStatusV1--under-review,.nvRptStatusV1--under-check{border-color:var(--nv-status-under-review-border);background:var(--nv-status-under-review-bg);color:var(--nv-status-under-review-text)}
.nvRptStatusV1--reviewed,.nvRptStatusV1--checked{border-color:var(--nv-status-reviewed-border);background:var(--nv-status-reviewed-bg);color:var(--nv-status-reviewed-text)}
.nvRptStatusV1--approved,.nvRptStatusV1--authorised,.nvRptStatusV1--posted,.nvRptStatusV1--fully-accounted,.nvRptStatusV1--cleared{border-color:var(--nv-status-approved-border);background:var(--nv-status-approved-bg);color:var(--nv-status-approved-text)}
.nvRptStatusV1--rejected,.nvRptStatusV1--return-due,.nvRptStatusV1--reimbursement-due,.nvRptStatusV1--not-prepared,.nvRptStatusV1--not-cleared{border-color:var(--nv-status-rejected-border);background:var(--nv-status-rejected-bg);color:var(--nv-status-rejected-text)}
.nvRptStatusV1--cancelled,.nvRptStatusV1--canceled{border-color:var(--nv-status-cancelled-border);background:var(--nv-status-cancelled-bg);color:var(--nv-status-cancelled-text)}
.nvRptPersonDateV1{display:flex;min-width:150px;flex-direction:column;align-items:center;gap:2px;text-align:center}.nvRptPersonDateV1 small{color:var(--nv-biosort-soft);font-size:.57rem;font-weight:650}
@media(max-width:900px){.nvRptHeadV1{flex-direction:column}.nvRptNoticeV1{min-width:0;width:100%}.nvRptFilterBarV1{justify-content:flex-start}.nvRptFilterFieldV1,.nvRptFilterFieldV1--search{width:calc(50% - 6px)}}
@media(max-width:560px){.nvRptShellV1{width:calc(100% - 20px);padding-top:20px}.nvRptTitleV1{font-size:1.3rem}.nvRptFilterFieldV1,.nvRptFilterFieldV1--search{width:100%}.nvRptTableWrapV1{max-height:calc(100vh - 90px)}.nvRptTableV1 .nvRptHeadCellV1,.nvRptTableV1 .nvRptCellV1{min-width:125px}}
/* ================================================================
   PANITA ROLES AND ACCESS CONTROL - V1
================================================================ */
.nvHomeAccessNoticeV1{
    margin:0 0 18px;
    padding:12px 15px;
    border:1px solid var(--nv-status-rejected-border, #dfaaa3);
    border-radius:6px;
    background:var(--nv-status-rejected-bg, #f7e6e3);
    color:var(--nv-status-rejected-text, #b42318);
    font-size:14px;
    font-weight:650;
}
.nvUsrAccessSectionV1 .nvUsrAllFormGridV1{display:block;}
.nvUsrAccessIntroV1{margin:0 0 16px;color:#5d5548;font-size:13px;line-height:1.55;}
.nvUsrAccessGroupsV1{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.nvUsrAccessGroupV1{border:1px solid #d8cbbb;border-radius:8px;background:#fff;overflow:hidden;}
.nvUsrAccessGroupHeadV1{display:flex;align-items:center;gap:10px;padding:6px 7px;background:#f6f2ea;border-bottom:1px solid #e3d9ca;font-weight:550;color:#2f4935;}
.nvUsrAccessGroupHeadV1 input,.nvUsrAccessItemV1 input{width:13px;height:13px;accent-color:#557a3b;flex:0 0 auto;}
.nvUsrAccessListV1{display:grid;padding:6px 14px;}
.nvUsrAccessItemV1{display:grid;grid-template-columns:15px minmax(0,1fr);gap:10px;padding:5px 0;border-bottom:1px solid #eee8df;cursor:pointer;}
.nvUsrAccessItemV1:last-child{border-bottom:0;}
.nvUsrAccessItemV1 strong{display:block;color:#30362f;font-size:.71em;line-height:1.35;}
.nvUsrAccessItemV1 small{display:block;margin-top:3px;color:#756e63;font-size:11px;line-height:1.4;}
.nvUsrAccessItemV1.is-action{padding-left:16px;}
.nvUsrAccessLoadingV1,.nvUsrAccessEmptyV1{padding:22px;border:1px dashed #d8cbbb;border-radius:8px;text-align:center;color:#756e63;}
@media(max-width:860px){.nvUsrAccessGroupsV1{grid-template-columns:1fr;}}



/* ================================================================
   PANITA DOCUMENT PDF DOWNLOAD - V1
   Shared control used only on the six approved document view pages
================================================================ */
.nvPdfDownloadBarV1{
    display:flex;
    align-items:center;
    justify-content:center;
    margin:4px 18px 22px;
/*     padding-top:14px;
    border-top:1px solid rgba(47,45,42,.12); */
}
.nvPdfDownloadBarV1[hidden]{display:none!important;}
.nvPdfDownloadBtnV1{
    width:auto;
    min-width:190px;
    gap:8px;
}
.nvPdfDownloadBtnV1__icon{
    font-size:1rem;
    line-height:1;
    font-weight:700;
}
.nvPdfDownloadBtnV1.is-loading{
    opacity:.72;
    cursor:wait;
    transform:none!important;
}
.nvPdfCardHtmlV1{display:none!important;}

/* ================================================================
   PANITA EXCEL EXPORT CONTROLS - V1
================================================================ */
.nvDocumentExportActionsV1{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
    width:100%;
    margin:22px 0 0;
}
.nvDocumentExportActionsV1 .nvPdfDownloadBarV1,
.nvDocumentExportActionsV1 .nvXlsDownloadBarV1{
    width:auto;
    margin:0;
}
.nvXlsDownloadBarV1,
.nvRptExcelDownloadBarV1{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    margin:22px 0 0;
}
.nvXlsDownloadBarV1[hidden]{display:none!important;}
.nvXlsDownloadBtnV1{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-width:176px;
}
.nvXlsDownloadBtnV1__icon{
    display:inline-block;
    font-size:1rem;
    font-weight:800;
    line-height:1;
}
.nvXlsDownloadBtnV1.is-loading{
    opacity:.72;
    cursor:wait;
}
.nvRptExcelDownloadBarV1{
    margin-top:18px;
    padding-bottom:2px;
}
@media (max-width:640px){
    .nvDocumentExportActionsV1{align-items:stretch;flex-direction:column;}
    .nvDocumentExportActionsV1 .nvPdfDownloadBarV1,
    .nvDocumentExportActionsV1 .nvXlsDownloadBarV1{width:100%;}
    .nvDocumentExportActionsV1 button{width:100%;}
}

/* ================================================================
   ANNUAL WHEEL TIMELINES - V1
   Unique prefixes: nvKpAll, nvMaAll, nvFvAll, nvViewAwa
================================================================ */
.nvKpAllTimelineFieldsV1,
.nvMaAllTimelineFieldsV1,
.nvFvAllTimelineFieldsV1{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    margin-top:4px;
}

.nvViewAwaMonthRowV1,
.nvViewAwaMonthRowV1:hover{
    background:rgba(1,134,63,.11)!important;
}

.nvViewAwaMonthRowV1 td{
    padding:8px 14px!important;
    border-top:1px solid rgba(1,134,63,.28)!important;
    border-bottom:1px solid rgba(1,134,63,.28)!important;
    text-align:left!important;
}

.nvViewAwaMonthLabelV1{
    color:var(--panita-green-dark);
    font-size:.7rem;
    line-height:1.2;
    font-weight:500;
    letter-spacing:.08em;
	text-transform:uppercase;
    
}

@media (max-width:760px){
    .nvKpAllTimelineFieldsV1,
    .nvMaAllTimelineFieldsV1,
    .nvFvAllTimelineFieldsV1{
        grid-template-columns:1fr;
    }
}

/* ================================================================
   PERMISSION-AWARE HOME DASHBOARD - V1
   Unique prefix: nvDash
================================================================ */
.nvDashV1{
    --nv-dash-ink:#2f2d2a;
    --nv-dash-muted:#787167;
    --nv-dash-line:rgba(47,45,42,.12);
    --nv-dash-soft:#f4f1e9;
    --nv-dash-green:#01863f;
    --nv-dash-green-dark:#006b32;
    --nv-dash-shadow:0 16px 44px rgba(47,45,42,.065);
    min-height:calc(100vh - 167px);
    background:
        radial-gradient(circle at 96% 2%, rgba(1,134,63,.09), transparent 24rem),
        var(--nv-paper);
}
.nvDashV1[aria-busy="true"]{cursor:progress;}
.nvDashV1__shell{
    width:min(1440px, calc(100% - 48px));
    margin:0 auto;
    padding:34px 0 52px;
}
.nvDashV1__accessNotice{margin:0 0 20px;}
.nvDashHeroV1{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    margin:0 0 24px;
    padding:2px 4px 0;
}
.nvDashHeroV1__eyebrow,
.nvDashCardV1__kicker{
    margin:0 0 7px;
    color:var(--nv-dash-green);
    font-size:.7rem;
    font-weight:750;
    line-height:1.2;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.nvDashHeroV1__title{
    margin:0;
    color:var(--nv-dash-ink);
    font-size:clamp(.75rem,3vw,1.7rem);
    line-height:1.05;
    letter-spacing:-.045em;
}
.nvDashHeroV1__copy{
    margin:9px 0 0;
    color:var(--nv-dash-muted);
    font-size:.75rem;
    line-height:1.55;
}
.nvDashHeroV1__date{
    flex:0 0 auto;
    min-width:150px;
    padding:11px 15px 12px;
    display:flex;
    align-items:center;
    gap:11px;
    border-left:3px solid var(--nv-dash-green);
    background:rgba(255,255,255,.58);
}
.nvDashHeroV1__dateDay{
    color:var(--nv-dash-ink);
    font-size:2rem;
    font-weight:800;
    line-height:1;
}
.nvDashHeroV1__dateMeta{
    max-width:90px;
    color:var(--nv-dash-muted);
    font-size:.68rem;
    font-weight:700;
    line-height:1.35;
    text-transform:uppercase;
}
.nvDashCardV1{
    position:relative;
    min-width:0;
    padding:21px 22px;
    background:rgba(255,255,255,.94);
    border:1px solid var(--nv-dash-line);
    box-shadow:var(--nv-dash-shadow);
}
.nvDashCardV1::before{
    position:absolute;
    top:-1px;
    left:-1px;
    width:62px;
    height:3px;
    content:"";
    background:var(--nv-dash-green);
}
.nvDashCardV1__head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin:0 0 18px;
}
.nvDashCardV1__head h2{
    margin:0;
    color:var(--nv-dash-ink);
    font-size:.9rem;
    line-height:1.25;
    letter-spacing:-.02em;
}
.nvDashCardV1__actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:13px;
}
.nvDashScopeV1,
.nvDashPeriodV1,
.nvDashCountV1{
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:4px 8px;
    color:var(--nv-dash-green-dark);
    background:rgba(1,134,63,.11);
    border:1px solid rgba(1,134,63,.18);
    font-size:.61rem;
    font-weight:700;
    line-height:1;
    letter-spacing:.06em;
    text-transform:uppercase;
    white-space:nowrap;
}
.nvDashTextLinkV1{
    color:var(--nv-dash-ink);
    font-size:.69rem;
    font-weight:800;
    text-decoration:none;
    white-space:nowrap;
}
.nvDashTextLinkV1:hover,
.nvDashTextLinkV1:focus{color:var(--nv-dash-green-dark);text-decoration:underline;text-underline-offset:3px;}
.nvDashTopGridV1,
.nvDashStatusRowV1{
    display:grid;
    grid-template-columns:minmax(0,9fr) minmax(190px,1fr);
    gap:18px;
    align-items:stretch;
}
.nvDashExposureV1,
.nvDashAttentionV1,
.nvDashStatusRowV1,
.nvDashReportsV1{margin-top:18px;}
.nvDashWheelV1{min-height:335px;}
.nvDashWheelV1__viewport{
    position:relative;
    width:100%;
    overflow-x:auto;
    scrollbar-width:thin;
    scrollbar-color:rgba(1,134,63,.35) transparent;
}
.nvDashWheelV1__months,
.nvDashWheelV1__grid{min-width:900px;}
.nvDashWheelV1__months{
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    border-bottom:1px solid var(--nv-dash-line);
}
.nvDashWheelV1__months span{
    padding:0 4px 8px;
    color:var(--nv-dash-muted);
    border-left:1px solid rgba(47,45,42,.08);
    font-size:.58rem;
    font-weight:800;
    line-height:1;
    letter-spacing:.07em;
    text-align:center;
    text-transform:uppercase;
}
.nvDashWheelV1__months span:first-child{border-left:0;}
.nvDashWheelV1__grid{
    position:relative;
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    grid-auto-rows:34px;
    gap:5px 0;
    min-height:162px;
    padding:12px 0 8px;
    background-image:repeating-linear-gradient(
        90deg,
        transparent 0,
        transparent calc(8.333333% - 1px),
        rgba(47,45,42,.065) calc(8.333333% - 1px),
        rgba(47,45,42,.065) 8.333333%
    );
}
.nvDashWheelItemV1{
    position:relative;
    z-index:1;
    min-width:16px;
    height:27px;
    margin:2px 3px;
    padding:0 9px;
    display:flex;
    align-items:center;
    border:0;
    border-left:3px solid rgba(0,0,0,.2);
    border-radius:2px;
    color:#fff;
    box-shadow:0 6px 13px rgba(47,45,42,.13);
    font:inherit;
    text-align:left;
    text-decoration:none;
    cursor:help;
    overflow:hidden;
    transition:transform .16s ease, box-shadow .16s ease, filter .16s ease;
}
.nvDashWheelItemV1:hover,
.nvDashWheelItemV1:focus{
    z-index:8;
    outline:0;
    transform:translateY(-2px);
    box-shadow:0 10px 20px rgba(47,45,42,.22);
    filter:saturate(1.08);
}
.nvDashWheelItemV1 span{
    overflow:hidden;
    font-size:.62rem;
    font-weight:800;
    line-height:1;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.nvDashWheelItemV1--0{background:#01863f;}
.nvDashWheelItemV1--1{background:#466a6c;}
.nvDashWheelItemV1--2{background:#936b2f;}
.nvDashWheelItemV1--3{background:#695987;}
.nvDashWheelItemV1--4{background:#34705b;}
.nvDashWheelItemV1--5{background:#8b5353;}
.nvDashWheelItemV1--6{background:#4f668d;}
.nvDashWheelItemV1--7{background:#78633d;}
.nvDashWheelItemV1--8{background:#536d3f;}
.nvDashWheelItemV1--9{background:#496578;}
.nvDashWheelV1__hint{
    margin:8px 0 0;
    color:var(--nv-dash-muted);
    font-size:.62rem;
    line-height:1.4;
}
.nvDashFloatingTipV1{
    position:fixed;
    z-index:100000;
    width:min(270px,calc(100vw - 24px));
    padding:11px 13px;
    color:#fff;
    background:rgba(47,45,42,.97);
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 14px 34px rgba(0,0,0,.23);
    pointer-events:none;
    opacity:0;
    transform:translateY(5px);
    transition:opacity .12s ease,transform .12s ease;
}
.nvDashFloatingTipV1.is-visible{opacity:1;transform:translateY(0);}
.nvDashFloatingTipV1 strong{
    display:block;
    margin:0 0 4px;
    font-size:.73rem;
    line-height:1.35;
}
.nvDashFloatingTipV1 span{
    display:block;
    color:rgba(255,255,255,.72);
    font-size:.62rem;
    line-height:1.35;
}
.nvDashFloatingTipV1 em{
    display:block;
    margin-top:6px;
    color:#d8e1c4;
    font-size:.65rem;
    line-height:1.3;
}
.nvDashLeaveV1{
    min-height:335px;
    padding-left:16px;
    padding-right:16px;
}
.nvDashLeaveV1__head{margin-bottom:10px;}
.nvDashLeaveV1__chart{
    --nv-leave-used:0deg;
    position:relative;
    width:116px;
    aspect-ratio:1;
    margin:8px auto 9px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:conic-gradient(var(--nv-dash-green) 0 var(--nv-leave-used), #ebe6dc var(--nv-leave-used) 360deg);
}
.nvDashLeaveV1__chart::after{
    position:absolute;
    inset:12px;
    content:"";
    border-radius:50%;
    background:#fff;
    box-shadow:inset 0 0 0 1px rgba(47,45,42,.06);
}
.nvDashLeaveV1__chartInner{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    align-items:center;
}
.nvDashLeaveV1__chartInner strong{
    color:var(--nv-dash-ink);
    font-size:1.75rem;
    line-height:1;
    letter-spacing:-.05em;
}
.nvDashLeaveV1__chartInner span{
    margin-top:3px;
    color:var(--nv-dash-muted);
    font-size:.57rem;
    font-weight:800;
    text-transform:uppercase;
}
.nvDashLeaveV1__cycle{
    margin:0 0 10px;
    color:var(--nv-dash-muted);
    font-size:.59rem;
    line-height:1.3;
    text-align:center;
}
.nvDashLeaveV1__stats{margin:0;}
.nvDashLeaveV1__stats div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    padding:6px 0;
    border-top:1px solid var(--nv-dash-line);
}
.nvDashLeaveV1__stats dt{
    color:var(--nv-dash-muted);
    font-size:.61rem;
    line-height:1.2;
}
.nvDashLeaveV1__stats dd{
    margin:0;
    color:var(--nv-dash-ink);
    font-size:.71rem;
    font-weight:800;
}
.nvDashExposureV1__grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:10px;
}
.nvDashExposureItemV1{
    position:relative;
    min-height:104px;
    padding:15px;
    overflow:hidden;
    background:var(--nv-dash-soft);
    border:1px solid rgba(47,45,42,.08);
}
.nvDashExposureItemV1::after{
    position:absolute;
    right:-19px;
    bottom:-24px;
    width:72px;
    height:72px;
    content:"";
    border:16px solid currentColor;
    border-radius:50%;
    opacity:.06;
}
.nvDashExposureItemV1__icon{
    display:inline-flex;
    min-width:31px;
    min-height:23px;
    align-items:center;
    justify-content:center;
    margin-bottom:10px;
    color:inherit;
    border:1px solid currentColor;
    font-size:.57rem;
    font-weight:900;
    letter-spacing:.05em;
}
.nvDashExposureItemV1 strong{
    display:block;
    color:var(--nv-dash-ink);
    font-size:clamp(.9rem,1.35vw,1.18rem);
    line-height:1.15;
    letter-spacing:-.03em;
    overflow-wrap:anywhere;
}
.nvDashExposureItemV1 small{
    display:block;
    margin-top:5px;
    color:var(--nv-dash-muted);
    font-size:.59rem;
    font-weight:700;
    line-height:1.3;
}
.nvDashExposureItemV1--amber{color:#936b2f;background:#f5eee1;}
.nvDashExposureItemV1--green{color:#4e6c25;background:#eef2e6;}
.nvDashExposureItemV1--blue{color:#41667c;background:#eaf0f3;}
.nvDashExposureItemV1--teal{color:#34705b;background:#e8f1ed;}
.nvDashExposureItemV1--purple{color:#695987;background:#efecf4;}
.nvDashExposureItemV1--navy{color:#4f668d;background:#e9edf4;}
.nvDashAttentionV1__grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:10px;
}
.nvDashAttentionV1__item{
    position:relative;
    min-width:0;
    min-height:118px;
    padding:14px 14px 13px;
    display:flex;
    flex-direction:column;
    color:var(--nv-dash-ink);
    background:#faf8f3;
    border:1px solid var(--nv-dash-line);
    text-decoration:none;
    transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.nvDashAttentionV1__item:hover,
.nvDashAttentionV1__item:focus{
    border-color:rgba(1,134,63,.48);
    box-shadow:0 12px 25px rgba(47,45,42,.11);
    outline:0;
    transform:translateY(-2px);
}
.nvDashAttentionV1__top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:7px;
}
.nvDashAttentionV1__module{
    display:inline-flex;
    min-width:29px;
    min-height:22px;
    align-items:center;
    justify-content:center;
    color:#fff;
    background:var(--nv-dash-ink);
    font-size:.55rem;
    font-weight:900;
}
.nvDashAttentionV1__age{
    color:#9b5c32;
    font-size:.55rem;
    font-weight:800;
    text-transform:uppercase;
}
.nvDashAttentionV1__item strong{
    margin:10px 0 3px;
    overflow:hidden;
    font-size:.7rem;
    line-height:1.35;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.nvDashAttentionV1__item p{
    display:-webkit-box;
    margin:0;
    overflow:hidden;
    color:var(--nv-dash-muted);
    font-size:.61rem;
    line-height:1.35;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}
.nvDashAttentionV1__action{
    margin-top:auto;
    padding-top:9px;
    color:var(--nv-dash-green-dark);
    font-size:.59rem;
    font-weight:900;
    letter-spacing:.05em;
    text-transform:uppercase;
}
.nvDashAttentionV1__more{
    min-width:88px;
    margin:14px auto -4px;
    padding:5px 12px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    color:var(--nv-dash-green-dark);
    background:transparent;
    border:0;
    cursor:pointer;
    font-size:.63rem;
    font-weight:800;
}
.nvDashAttentionV1__more:hover,
.nvDashAttentionV1__more:focus{background:rgba(1,134,63,.09);outline:0;}
.nvDashAttentionV1__more span:first-child{font-size:1.1rem;transition:transform .2s ease;}
.nvDashAttentionV1__more[aria-expanded="true"] span:first-child{transform:rotate(45deg);}
.nvDashEmptyV1{
    grid-column:1 / -1;
    min-height:108px;
    padding:28px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    color:var(--nv-dash-muted);
    background:#faf8f3;
    border:1px dashed rgba(47,45,42,.18);
    text-align:center;
}
.nvDashEmptyV1 strong{color:var(--nv-dash-ink);font-size:.76rem;}
.nvDashEmptyV1 span{margin-top:5px;font-size:.64rem;line-height:1.4;}
.nvDashStatusV1__legend{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px 17px;
    margin:18px 0 0;
    padding-top:13px;
    border-top:1px solid var(--nv-dash-line);
}
.nvDashStatusLegendV1{
    display:flex;
    align-items:center;
    gap:7px;
    color:var(--nv-dash-muted);
    font-size:.6rem;
    font-weight:700;
}
.nvDashStatusLegendV1 i{
    width:10px;
    height:10px;
    display:block;
    flex:0 0 10px;
    border-radius:3px;
}
.nvDashStatusV1__chart{display:grid;gap:13px;}
.nvDashStatusRowItemV1{
    display:grid;
    grid-template-columns:minmax(126px,1.15fr) minmax(220px,5fr) 36px;
    align-items:center;
    gap:12px;
}
.nvDashStatusRowItemV1__label{
    overflow:hidden;
    color:var(--nv-dash-ink);
    font-size:.65rem;
    font-weight:800;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.nvDashStatusRowItemV1__bar{
    height:24px;
    display:flex;
    overflow:hidden;
    background:#eeeae2;
    border:1px solid rgba(47,45,42,.08);
}
.nvDashStatusRowItemV1__segment{
    position:relative;
    min-width:0;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    color:#fff;
    transition:width .45s cubic-bezier(.22,1,.36,1);
}
.nvDashStatusRowItemV1__segment b{
    padding:0 3px;
    color:inherit;
    font-size:.6rem;
    font-weight:900;
    line-height:1;
    text-shadow:0 1px 1px rgba(0,0,0,.28);
}
.nvDashStatusRowItemV1__segment:hover{filter:brightness(.92);}
.nvDashStatusRowItemV1__segment[data-count="0"]{display:none;}
.nvDashStatusRowItemV1__total{
    color:var(--nv-dash-ink);
    font-size:.72rem;
    font-weight:900;
    text-align:right;
}
.nvDashStatusToneV1--draft{background:#b8aa93;}
.nvDashStatusToneV1--under{background:#6d91a5;}
.nvDashStatusToneV1--reviewed{background:#91aa67;}
.nvDashStatusToneV1--approved{background:#548044;}
.nvDashStatusToneV1--posted{background:#4d6d7b;}
.nvDashStatusToneV1--rejected{background:#bb6f64;}
.nvDashStatusToneV1--cancelled{background:#8e877e;}
.nvDashQuickV1{padding-left:14px;padding-right:14px;}
.nvDashQuickV1__head{margin-bottom:11px;}
.nvDashQuickV1__links{display:grid;gap:7px;}
.nvDashQuickLinkV1{
    min-height:45px;
    padding:7px 7px;
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--nv-dash-ink);
    background:#faf8f3;
    border:1px solid var(--nv-dash-line);
    text-decoration:none;
    transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.nvDashQuickLinkV1:hover,
.nvDashQuickLinkV1:focus{
    background:rgba(1,134,63,.1);
    border-color:rgba(1,134,63,.35);
    outline:0;
    transform:translateX(2px);
}
.nvDashQuickLinkV1__icon{
    flex:0 0 26px;
    height:26px;
    display:grid;
    place-items:center;
    color:#fff;
    background:var(--nv-dash-green-dark);
    font-size:.48rem;
    font-weight:900;
}
.nvDashQuickLinkV1 span:last-child{
    min-width:0;
    overflow:hidden;
    font-size:.58rem;
    font-weight:800;
    line-height:1.25;
    text-overflow:ellipsis;
}
.nvDashReportsV1__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.nvDashReportV1{
    min-width:0;
    padding:15px;
    display:grid;
    grid-template-columns:38px minmax(0,1fr) 18px;
    align-items:center;
    gap:11px;
    color:var(--nv-dash-ink);
    background:#faf8f3;
    border:1px solid var(--nv-dash-line);
    text-decoration:none;
    transition:border-color .16s ease,background .16s ease,transform .16s ease;
}
.nvDashReportV1:hover,
.nvDashReportV1:focus{
    background:#f2f5ec;
    border-color:rgba(1,134,63,.4);
    outline:0;
    transform:translateY(-2px);
}
.nvDashReportV1__code{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    color:#fff;
    background:var(--nv-dash-ink);
    font-size:.6rem;
    font-weight:900;
}
.nvDashReportV1 strong{
    display:block;
    overflow:hidden;
    font-size:.7rem;
    line-height:1.3;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.nvDashReportV1 small{
    display:block;
    margin-top:3px;
    color:var(--nv-dash-muted);
    font-size:.59rem;
    line-height:1.35;
}
.nvDashReportV1__arrow{color:var(--nv-dash-green-dark);font-weight:900;}
.nvDashErrorV1{
    margin-top:18px;
    padding:18px;
    display:flex;
    align-items:center;
    gap:10px;
    color:#7f251c;
    background:#f9e9e6;
    border:1px solid #e4b7b0;
    font-size:.72rem;
}
.nvDashErrorV1[hidden]{display:none!important;}
.nvDashErrorV1 button{
    margin-left:auto;
    padding:7px 12px;
    color:#fff;
    background:#7f251c;
    border:0;
    cursor:pointer;
    font:inherit;
    font-weight:800;
}
.nvDashSkeletonV1{
    position:relative;
    overflow:hidden;
    background:#eeeae2;
}
.nvDashSkeletonV1::after{
    position:absolute;
    inset:0;
    content:"";
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.68),transparent);
    transform:translateX(-100%);
    animation:nvDashShimmerV1 1.25s infinite;
}
.nvDashSkeletonV1--timeline{grid-column:1 / span 4;height:26px;margin:3px;}
.nvDashSkeletonV1--timeline:nth-child(2){grid-column:5 / span 5;}
.nvDashSkeletonV1--timeline:nth-child(3){grid-column:9 / span 3;}
.nvDashSkeletonV1--attention{min-height:112px;}
.nvDashSkeletonV1--bar{height:24px;}
@keyframes nvDashShimmerV1{to{transform:translateX(100%);}}
.nvDashSrOnlyV1{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}


.nvpssFormV1 { padding:0 ; }


@media (max-width:1180px){
    .nvDashExposureV1__grid{grid-template-columns:repeat(3,minmax(0,1fr));}
    .nvDashAttentionV1__grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:860px){
    .nvDashV1__shell{width:min(100% - 30px,1440px);padding-top:25px;}
    .nvDashTopGridV1,
    .nvDashStatusRowV1{grid-template-columns:1fr;}
    .nvDashLeaveV1{min-height:auto;}
    .nvDashLeaveV1__chart{width:130px;}
    .nvDashQuickV1__links{grid-template-columns:repeat(3,minmax(0,1fr));}
    .nvDashReportsV1__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:620px){
    .nvDashHeroV1{align-items:flex-start;flex-direction:column;}
    .nvDashHeroV1__date{display:none;}
    .nvDashCardV1{padding:18px 15px;}
    .nvDashCardV1__head{align-items:flex-start;flex-direction:column;margin-bottom:14px;}
    .nvDashCardV1__actions{width:100%;justify-content:space-between;}
    .nvDashExposureV1__grid,
    .nvDashAttentionV1__grid,
    .nvDashReportsV1__grid{grid-template-columns:1fr;}
    .nvDashQuickV1__links{grid-template-columns:repeat(2,minmax(0,1fr));}
    .nvDashStatusRowItemV1{grid-template-columns:1fr 34px;gap:6px 10px;}
    .nvDashStatusRowItemV1__bar{grid-column:1 / -1;grid-row:2;}
    .nvDashStatusRowItemV1__total{grid-column:2;grid-row:1;}
    .nvDashErrorV1{align-items:flex-start;flex-direction:column;}
    .nvDashErrorV1 button{margin-left:0;}
}
@media (prefers-reduced-motion:reduce){
    .nvDashV1 *,
    .nvDashV1 *::before,
    .nvDashV1 *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
}



/* Workflow additions use the existing document and control styling. */
.nvSignatureImageV1{display:block;width:auto;height:48px;max-width:100%;object-fit:contain;margin:7px auto;}
.nvBlankPostingV1{min-height:150px;justify-content:flex-start;}
.nvDashAttentionV1__item[hidden],
.nvDashAttentionV1__more[hidden]{display:none!important;}
#nvTaViewSignGridV1,#nvRtViewSignGridV1{grid-template-columns:repeat(4,minmax(0,1fr));}
.nvDirectActivitiesV1{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:12px 0;}
.nvDirectActivitiesViewV1 p{
	
	margin:6px 0;
  text-align: left;
  vertical-align: middle;
  font-size: .75rem;
  line-height: 1.35;
  color: var(--nv-biosort);
  
  
  
  }
.nvRtClearanceV1{text-align:center;margin:16px 0;position:relative;}
.nvRtClearConfirmV1{position:relative;inset:auto;}
.nvSysInitialsV1{font-weight:700;letter-spacing:.06em;}
.nvTaAllStatusV1--reviewed{background:#e9f0f5;color:#28536b;}
@media(max-width:680px){.nvDirectActivitiesV1{grid-template-columns:1fr;}#nvTaViewSignGridV1,#nvRtViewSignGridV1{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* PANITA brand palette; original status palette remains fixed. */
:root{--panita-green:#01863f;--panita-green-dark:#006b32;}

/* The same complete logo appears in headers, footers and document views. */
.Header-brand-logo{width:140px;height:auto;object-fit:contain;}
.nvFooter__logo{width:70px;height:auto;object-fit:contain;}
.nvSysMenuV1 .Header-brand-logo{width:112px;height:auto;max-height:82px;object-fit:contain;}
.nvPvViewLogoV1{object-fit:contain;}
#nvLoginSubmitBtn{background:var(--panita-green);border-color:var(--panita-green);}
#nvLoginSubmitBtn:hover,#nvLoginSubmitBtn:focus{background:var(--panita-green-dark);border-color:var(--panita-green-dark);}
