:root{color:#1c2438;font-synthesis:none;--green:#111c45;--green-2:#20356f;--lime:#a9c7ff;--line:#e1e5ee;--muted:#747c8e;background:#f3f5f9;font-family:Pretendard,Noto Sans KR,Apple SD Gothic Neo,Malgun Gothic,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}svg{stroke-width:1.8px;width:20px;height:20px}.app-shell{min-height:100vh}.sidebar{z-index:30;color:#eaf2ee;background:var(--green);flex-direction:column;width:244px;padding:30px 18px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-.3px;align-items:center;gap:11px;padding:0 10px;font:600 18px DM Sans;display:flex}.brand b{color:#bce2cc}.brand-mark{width:34px;height:34px;color:var(--green);background:var(--lime);border-radius:10px;place-items:center;font-weight:800;display:grid}.sidebar-brand{width:100%;height:42px;position:relative;overflow:hidden}.sidebar-brand img{mix-blend-mode:screen;width:250px;max-width:none;height:auto;position:absolute;transform:translate(-20px,-35px)}.sidebar nav{gap:8px;margin-top:48px;display:grid}.sidebar nav button,.bottom-nav button{background:0 0;border:0}.sidebar nav button{color:#a9bbb5;text-align:left;border-radius:10px;align-items:center;gap:13px;padding:12px 14px;display:flex}.sidebar nav button span{display:flex;position:relative}.sidebar nav button svg{width:19px}.sidebar nav button em{font-size:14px;font-style:normal;font-weight:500}.sidebar nav button.active{color:#fff;background:#ffffff17}.sidebar nav i,.bottom-nav i{color:#fff;text-align:center;background:#eb675c;border-radius:8px;min-width:16px;height:16px;padding:0 4px;font:700 10px/16px DM Sans;position:absolute;top:-7px;right:-9px}.sidebar-profile{border-top:1px solid #ffffff1f;grid-template-columns:36px 1fr 30px;align-items:center;gap:10px;margin-top:auto;padding:15px 10px 0;display:grid}.avatar{width:36px;height:36px;color:var(--green);background:#e9f3ee;border-radius:50%;place-items:center;font-weight:700;display:grid}.sidebar-profile strong,.sidebar-profile span{display:block}.sidebar-profile strong{font-size:13px}.sidebar-profile span{color:#91aaa2;margin-top:2px;font:11px DM Sans}.sidebar-profile button{color:#91aaa2;background:0 0;border:0;padding:5px}.sidebar-profile button svg{width:17px}.main{min-height:100vh;margin-left:244px}.topbar{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:16px;height:104px;padding:23px 38px 19px;display:flex}.topbar>div{flex:1}.eyebrow{color:#81918b;letter-spacing:1.6px;font:700 10px DM Sans}.topbar h1{letter-spacing:-.8px;margin:4px 0 0;font-size:23px}.icon-button{border:1px solid var(--line);color:#52605b;background:#fff;border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.refresh.spinning svg{animation:1s linear infinite spin}.content{max-width:1280px;margin:auto;padding:30px 38px 80px}.topbar .topbar-actions{flex:none;gap:8px;display:flex}.notification-button{position:relative}.notification-button>i{color:#fff;background:#b44b42;border:2px solid #fff;border-radius:10px;place-items:center;min-width:18px;height:18px;padding:0 4px;font:700 8px DM Sans;display:grid;position:absolute;top:-5px;right:-5px}.notification-scrim{z-index:39;background:0 0;border:0;position:fixed;inset:0}.notification-panel{z-index:40;border:1px solid var(--line);background:#fff;border-radius:16px;width:min(390px,100vw - 30px);max-height:min(570px,100vh - 105px);position:fixed;top:82px;right:35px;overflow:hidden;box-shadow:0 18px 55px #142e252e}.notification-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:17px 18px 13px;display:flex}.notification-panel h2{margin:2px 0 0;font-size:17px}.notification-panel .icon-button{width:34px;height:34px}.notification-list{max-height:490px;overflow-y:auto}.notification-list>button{text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0ed;grid-template-columns:34px 1fr 7px;gap:10px;width:100%;padding:13px 16px;display:grid}.notification-mark{color:#2f7157;background:#e4f2e9;border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.notification-mark svg{width:15px}.notification-list b,.notification-list p,.notification-list small{margin:0;display:block}.notification-list b{font-size:10px}.notification-list p{color:#68766f;margin:4px 0;font-size:9px;line-height:1.5}.notification-list small{color:#99a19d;font-size:8px}.notification-list>button>i{background:#3c8566;border-radius:50%;align-self:center;width:6px;height:6px}.error-banner{color:#9a3932;background:#fff2f0;border:1px solid #ffd9d5;border-radius:10px;align-items:center;gap:10px;margin:18px 38px 0;padding:12px 15px;font-size:13px;display:flex}.error-banner span{flex:1}.error-banner button{color:inherit;background:0 0;border:0}.error-banner svg{width:17px}.card,.panel{border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:0 4px 18px #12372f09}.hero-grid{grid-template-columns:1.75fr 1fr;gap:18px;display:grid}.clock-card{background:linear-gradient(145deg,#fff 55%,#f0f6f1);justify-content:space-between;align-items:center;min-height:205px;padding:30px 32px;display:flex}.card-kicker{color:var(--muted);font-size:12px;display:block}.clock-card strong{letter-spacing:-1.8px;color:#1b2824;margin:9px 0 8px;font:700 42px DM Sans;display:block}.clock-card p{color:#7b8782;align-items:center;gap:7px;margin:0;font-size:12px;display:flex}.clock-card p i{background:#b0b9b5;border-radius:50%;width:7px;height:7px}.clock-card p i.online{background:#46a673;box-shadow:0 0 0 4px #e1f4e8}.clock-card>button{color:#fff;background:var(--green);border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:9px;width:108px;height:108px;display:flex;box-shadow:0 9px 24px #12372f38}.clock-card>button.clock-out{background:#a94c43}.clock-card>button svg{width:25px;height:25px}.clock-card>button span{font-size:12px;font-weight:600}.dark-card{color:#eef6f2;background:var(--green);border:0}.leave-summary{padding:27px 28px;position:relative;overflow:hidden}.leave-summary:after{content:"";border:36px solid #d9f99d12;border-radius:50%;width:150px;height:150px;position:absolute;top:-71px;right:-78px}.leave-summary .card-kicker{color:#9db7ae}.leave-summary strong{margin:8px 0 0;font:700 38px DM Sans;display:block}.leave-summary>span:not(.card-kicker){color:#9db7ae;font-size:11px}.progress{background:#ffffff1f;border-radius:3px;height:5px;margin:21px 0 16px}.progress i{background:var(--lime);border-radius:3px;height:100%;display:block}.leave-summary button{color:#d7e6e0;background:0 0;border:0;align-items:center;gap:3px;padding:0;font-size:12px;display:flex}.leave-summary button svg{width:14px}.stat-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px;display:grid}.stat{text-align:left;border:1px solid var(--line);align-items:center;gap:14px;min-width:0;padding:18px;display:flex;position:relative}.stat:disabled{opacity:1}.stat-icon{border-radius:11px;flex:none;place-items:center;width:40px;height:40px;display:grid}.stat-icon.green{color:#287356;background:#e7f5ec}.stat-icon.amber{color:#9d6817;background:#fff2d9}.stat-icon.blue{color:#3b6c99;background:#e7f1fa}.stat span:nth-child(2){min-width:0}.stat small,.stat b,.stat em{display:block}.stat small{color:var(--muted);font-size:10px}.stat b{margin-top:2px;font-size:18px}.stat em{color:#9aa39f;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:normal;overflow:hidden}.stat-arrow{color:#a8b1ad;width:15px;position:absolute;right:14px}.section-grid{grid-template-columns:1.45fr 1fr;gap:18px;margin-top:22px;display:grid}.panel{padding:23px 25px}.section-head{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.section-head h2{letter-spacing:-.4px;margin:0;font-size:15px}.section-head button{color:#8a9691;background:0 0;border:0;align-items:center;font-size:10px;display:flex}.section-head button svg{width:13px}.request-list{display:grid}.request-row{border-top:1px solid #edf0ed;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:13px 0;display:grid}.request-row:first-child{border-top:0}.request-icon{color:#3c8468;background:#edf7f1;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.request-icon svg{width:17px}.request-row b{font-size:12px}.request-row p{color:#8b9591;margin:2px 0 0;font-size:10px}.status{color:#90681e;white-space:nowrap;background:#fff2d8;border-radius:10px;padding:5px 9px;font-size:9px;font-weight:600}.status.approved{color:#2e7456;background:#e8f5ed}.status.rejected{color:#9b4540;background:#fde9e7}.status.cancelled{color:#6f7774;background:#edf0ee}.notice-panel{background:#fbfcfa}.notice{border-top:1px solid #e9ede9;grid-template-columns:36px 1fr;gap:12px;padding:15px 0;display:grid}.notice:first-of-type{border:0}.notice>span{color:#94681d;background:#fff0cf;border-radius:10px;place-items:center;width:34px;height:34px;font:700 13px DM Sans;display:grid}.notice>span.mint{color:#277254;background:#e2f4e9}.notice b{font-size:11px}.notice p{color:#89938f;margin:3px 0 0;font-size:10px;line-height:1.5}.single-column{gap:20px;max-width:960px;display:grid}.single-column>.clock-card{min-height:190px}.timeline-item{border-top:1px solid #edf0ed;align-items:center;gap:14px;padding:15px 5px;display:flex}.timeline-item:first-child{border:0}.timeline-dot{background:#2c7658;border:3px solid #9bd6b8;border-radius:50%;width:10px;height:10px}.timeline-item div{flex:1}.timeline-item b{font-size:12px}.timeline-item p{color:#8b9591;margin:2px 0 0;font-size:10px}.attendance-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.attendance-actions button{border:1px solid var(--line);color:#355348;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:48px;font-size:11px;font-weight:600;display:flex}.attendance-actions button svg{color:#2d7658;width:17px}.correction-row small{color:#65716c;text-overflow:ellipsis;white-space:nowrap;max-width:580px;margin-top:4px;font-size:10px;display:block;overflow:hidden}.hr-page{max-width:1100px}.hr-summary{color:#fff;background:linear-gradient(115deg,#12372f,#23604f);border-radius:17px;justify-content:space-between;align-items:center;min-height:145px;padding:26px 31px;display:flex;box-shadow:0 9px 28px #12372f26}.hr-summary span{color:#b2c9c0;font-size:11px}.hr-summary strong{margin:2px 0;font:700 38px DM Sans;display:block}.hr-summary p{color:#9eb8ae;margin:0;font-size:10px}.hr-summary button{color:var(--green);background:var(--lime);border:0;border-radius:11px;align-items:center;gap:8px;padding:12px 17px;font-size:12px;font-weight:700;display:flex}.employee-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:8px;display:flex}.employee-toolbar .section-head{margin:0}.search-box{border:1px solid var(--line);background:#fafbfa;border-radius:9px;align-items:center;gap:8px;width:min(280px,100%);padding:0 11px;display:flex}.search-box svg{color:#89948f;flex:none;width:16px}.search-box input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:9px 0;font-size:11px}.employee-table{margin-top:14px}.employee-table-head,.employee-table-row{grid-template-columns:2fr 1fr .85fr .7fr;align-items:center;gap:18px;display:grid}.employee-table-head{color:#87918d;background:#f6f8f6;border-radius:8px;padding:9px 12px;font-size:9px;font-weight:700}.employee-table-row{border-bottom:1px solid #edf0ed;min-height:64px;padding:10px 12px;font-size:11px}.employee-name{align-items:center;gap:10px;min-width:0;display:flex}.employee-name>span{color:#2e7456;background:#e8f5ed;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.employee-name b,.employee-name small{display:block}.employee-name b{font-size:12px}.employee-name small{color:#89938f;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:9px;overflow:hidden}.employee-status{color:#7a641c;white-space:nowrap;background:#fff3d9;border-radius:9px;padding:5px 8px;font-size:9px;font-style:normal;font-weight:600;display:inline-block}.employee-status.active{color:#2e7456;background:#e8f5ed}.employee-status.resigned{color:#6f7774;background:#edf0ee}.employee-manage{justify-content:space-between;align-items:center;gap:7px;display:flex}.employee-manage button{border:1px solid var(--line);color:#476057;background:#fff;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.employee-manage button svg{width:15px;height:15px}.leave-banner{color:#fff;background:linear-gradient(115deg,#12372f,#23604f);border-radius:17px;justify-content:space-between;align-items:center;min-height:170px;padding:30px 34px;display:flex;box-shadow:0 9px 28px #12372f26}.leave-banner span{color:#b2c9c0;font-size:11px}.leave-banner strong{margin:4px 0 1px;font:700 40px DM Sans;display:block}.leave-banner p{color:#9eb8ae;margin:0;font-size:10px}.leave-banner button{color:var(--green);background:var(--lime);border:0;border-radius:11px;align-items:center;gap:8px;padding:12px 17px;font-size:12px;font-weight:700;display:flex}.approval-list{gap:10px;display:grid}.approval-row{border:1px solid var(--line);border-radius:12px;grid-template-columns:44px 1fr auto;align-items:center;gap:13px;padding:15px;display:grid}.doc-icon{color:#326e57;background:#e8f4ec;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.approval-copy span,.approval-copy b,.approval-copy small{display:block}.approval-copy span{color:#8a9591;font-size:9px}.approval-copy b{margin:2px 0;font:600 12px DM Sans}.approval-copy small{color:#8a9591;font-size:9px}.approval-actions{gap:7px;display:flex}.approval-actions button{color:#fff;background:var(--green);border:0;border-radius:8px;padding:8px 13px;font-size:10px;font-weight:600}.approval-actions button.reject{color:#7c554f;background:#f8eae8}.approval-toolbar{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.approval-tabs{background:#f2f5f2;border-radius:11px;gap:5px;padding:4px;display:flex}.approval-tabs button{color:#7b8782;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;min-height:36px;padding:0 13px;font-size:11px;font-weight:600;display:flex}.approval-tabs button b{background:#e4e9e5;border-radius:8px;min-width:18px;padding:2px 5px;font-size:9px}.approval-tabs button.active{color:#fff;background:var(--green);box-shadow:0 3px 9px #12372f29}.policy-explain{overflow:hidden}.policy-head{justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px;display:flex}.policy-head h2{margin:4px 0 0;font-size:17px}.policy-name{background:#eef6f1;border-radius:11px;align-items:flex-start;gap:11px;padding:14px;display:flex}.policy-name>svg{color:#2f7358;flex:none;width:18px}.policy-name b,.policy-name p{margin:0;display:block}.policy-name b{font-size:12px}.policy-name p{color:#6f7d77;margin-top:4px;font-size:9px}.policy-rule-grid{grid-template-columns:repeat(2,1fr);gap:9px;margin-top:13px;display:grid}.policy-rule-grid>div{border:1px solid var(--line);border-radius:10px;min-width:0;padding:12px 13px}.policy-rule-grid span,.policy-rule-grid b{display:block}.policy-rule-grid span{color:#84908b;font-size:9px}.policy-rule-grid b{overflow-wrap:anywhere;margin-top:3px;font-size:11px}.calculation-flow{align-items:center;gap:6px;margin-top:14px;padding-bottom:3px;display:flex;overflow-x:auto}.calculation-flow span{color:#52625b;flex:none;align-items:center;gap:5px;font-size:9px;display:flex}.calculation-flow span:not(:last-child):after{content:"›";color:#a5afaa;margin-left:1px;font-size:15px}.calculation-flow i{color:#2d6c53;background:#e3f2e8;border-radius:50%;place-items:center;width:20px;height:20px;font-size:8px;font-style:normal;font-weight:700;display:grid}.policy-foot{color:#8c9792;margin:13px 0 0;font-size:9px}.empty{color:#abb4b0;text-align:center;place-items:center;gap:8px;min-height:130px;display:grid}.empty svg{width:25px;height:25px}.empty p{margin:0;font-size:11px}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0d1f1a85;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:hidden}.modal{background:#fff;border-radius:18px;grid-template-rows:auto minmax(0,1fr) auto;width:min(480px,100%);max-height:calc(100dvh - 40px);display:grid;overflow:hidden;box-shadow:0 25px 70px #00000040}.modal>header{flex:none;justify-content:space-between;align-items:center;padding:23px 25px 16px;display:flex}.modal h2{margin:2px 0 0;font-size:20px}.modal-body{overscroll-behavior:contain;scrollbar-gutter:stable;gap:15px;min-width:0;min-height:0;padding:8px 25px 24px;display:grid;overflow:hidden auto}.modal label,.login-card label{color:#55625d;gap:6px;font-size:11px;font-weight:600;display:grid}.modal input,.modal textarea,.modal select,.login-card textarea{color:#24312c;background:#fff;border:1px solid #dce2de;border-radius:9px;outline:none;width:100%;min-width:0;padding:11px 12px}.modal input:focus,.modal textarea:focus,.login-card textarea:focus{border-color:#6c9f8b;box-shadow:0 0 0 3px #eaf4ef}.preview-box{background:#eff6f1;border-radius:12px;justify-content:space-between;align-items:center;padding:15px;display:flex}.preview-box div{gap:2px;display:grid}.preview-box span{color:#738079;font-size:9px}.preview-box b{font-size:15px}.preview-box svg{color:#9aa7a1;width:16px}.modal>footer{border-top:1px solid var(--line);background:#fafbfa;flex:none;justify-content:flex-end;gap:9px;padding:16px 25px;display:flex}.primary-button,.secondary-button{border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 18px;font-size:12px;font-weight:600;display:flex}.primary-button{color:#fff;background:var(--green);border:0}.secondary-button{border:1px solid var(--line);color:#54615c;background:#fff}.field-error{color:#9d413a;background:#fcebea;border-radius:8px;padding:9px 11px;font-size:10px}.field-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-note{color:#587064;background:#eef6f1;border-radius:9px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:10px;line-height:1.5;display:flex}.form-note svg{flex:none;width:15px;height:15px}.weekly-capacity{background:#f5faf7;border:1px solid #d8e7dd;border-radius:12px;padding:14px}.weekly-capacity>div:first-child{grid-template-columns:1fr auto;align-items:end;display:grid}.weekly-capacity span,.weekly-capacity b,.weekly-capacity small{display:block}.weekly-capacity span{color:#718078;font-size:9px}.weekly-capacity b{color:#23523f;font:700 17px DM Sans}.weekly-capacity small{color:#96a09b;grid-column:1/-1;margin-top:2px;font-size:8px}.capacity-track{background:#e5ebe7;border-radius:6px;height:9px;margin-top:12px;position:relative}.capacity-track>i{background:#4b9272;border-radius:6px;position:absolute;inset:0 auto 0 0}.capacity-track .warning-line{z-index:2;background:#dd9b35;width:2px;height:17px;position:absolute;top:-4px;left:96.15%}.capacity-track .limit-line{z-index:2;background:#b44b42;width:2px;height:17px;position:absolute;top:-4px;right:0}.capacity-labels{justify-content:space-between;margin-top:5px;display:flex}.capacity-labels span{font-size:7px}.weekly-capacity.special{background:#fffaf0;border-color:#efd6a8}.weekly-capacity.exceeded{background:#fff6f5;border-color:#efcac6}.overtime-decision{color:#436052;background:#eef6f1;border-radius:10px;align-items:flex-start;gap:9px;padding:12px;display:flex}.overtime-decision svg{flex:none;width:17px}.overtime-decision b,.overtime-decision p{margin:0;display:block}.overtime-decision b{font-size:10px}.overtime-decision p{margin-top:3px;font-size:9px;line-height:1.45}.overtime-decision.warn{color:#805912;background:#fff3d9}.overtime-decision.danger{color:#98463f;background:#fde9e7}.overtime-special-warning{color:#765313;background:#fff8e9;border:1px solid #ecd39f;border-radius:10px;align-items:flex-start;gap:9px;padding:12px;display:flex}.overtime-special-warning svg{flex:none;width:17px}.overtime-special-warning b,.overtime-special-warning p{margin:0}.overtime-special-warning b{font-size:10px}.overtime-special-warning p{margin-top:4px;font-size:9px;line-height:1.5}.secondary-button.danger{color:#98463f;background:#fff7f6;border-color:#efcbc7}.document-meta{grid-template-columns:1fr 1fr;gap:10px;display:grid}.document-meta>div{border:1px solid var(--line);border-radius:10px;padding:13px}.document-meta span,.document-meta b,.document-meta small{display:block}.document-meta span,.reason-box span{color:#87928d;font-size:9px}.document-meta b{margin:4px 0 2px;font-size:13px}.document-meta small{color:#87928d;font-size:9px}.correction-comparison{background:#eef6f1;border-radius:11px;grid-template-columns:1fr 1fr;gap:10px;padding:15px;display:grid}.correction-comparison div{gap:3px;display:grid}.correction-comparison span{color:#6d7b75;font-size:9px}.correction-comparison b{font:700 18px DM Sans}.reason-box{background:#f7f9f7;border-left:3px solid #87b49d;border-radius:4px 9px 9px 4px;padding:13px 14px}.reason-box p{color:#42524b;margin:5px 0 0;font-size:11px;line-height:1.55}.employee-create-modal{width:min(560px,100%)}.manage-modal{width:min(720px,100%)}.manage-modal .modal-body{align-content:start}.employee-context{background:#f4f7f4;border-radius:11px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;display:grid}.employee-context>span{color:#2e7456;background:#e2f2e8;border-radius:10px;place-items:center;width:40px;height:40px;font-weight:700;display:grid}.employee-context b,.employee-context small{display:block}.employee-context b{font-size:13px}.employee-context small{color:#84908b;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:9px;overflow:hidden}.employee-context i{color:#2e7456;white-space:nowrap;background:#e2f2e8;border-radius:9px;padding:5px 8px;font-size:9px;font-style:normal}.action-section{border-top:1px solid var(--line);gap:11px;min-width:0;padding-top:15px;display:grid}.action-section h3{margin:0;font-size:12px}.action-section p{color:#7b8782;margin:0;font-size:10px}.action-section>button{justify-self:end}.inline-actions{justify-content:flex-end;gap:8px;display:flex}.payslip-page{gap:16px;max-width:980px;display:grid}.payslip-hero{color:#fff;background:radial-gradient(circle at 88% 18%,#d9f99d2b,#0000 32%),linear-gradient(120deg,#12372f,#245f4f);border-radius:18px;justify-content:space-between;align-items:center;min-height:145px;padding:27px 31px;display:flex;box-shadow:0 9px 28px #12372f21}.payslip-hero h2{margin:6px 0 5px;font-size:22px}.payslip-hero p{color:#b7cbc3;margin:0;font-size:11px}.payslip-hero>svg{width:52px;height:52px;color:var(--lime);opacity:.92}.payslip-upload{gap:15px;display:grid}.preliminary-export{background:linear-gradient(120deg,#f7fbf8,#edf7f1);border-color:#d4e8dc;justify-content:space-between;align-items:center;gap:24px;display:flex}.preliminary-export h2{margin:5px 0 7px;font-size:20px}.preliminary-export p{max-width:700px;color:var(--muted);margin:0;line-height:1.55}.preliminary-export .secondary-button{flex:none;min-width:190px}.payslip-month{color:#63706b;align-items:center;gap:9px;font-size:10px;font-weight:600;display:flex}.payslip-month input{border:1px solid var(--line);border-radius:9px;min-height:40px;padding:0 11px}.payslip-upload-grid{grid-template-columns:1fr 1.25fr auto;align-items:end;gap:12px;display:grid}.payslip-upload-grid label{color:#58665f;gap:6px;font-size:10px;font-weight:600;display:grid}.payslip-upload-grid select,.payslip-upload-grid input{border:1px solid var(--line);background:#fafbfa;border-radius:9px;width:100%;min-height:42px;padding:0 11px}.payslip-upload-grid input[type=file]{padding:8px 10px;font-size:10px}.published-count{color:#2e7456;background:#e9f5ed;border-radius:10px;padding:6px 10px;font-size:10px;font-weight:700}.payslip-list{gap:9px;margin-top:13px;display:grid}.payslip-row{border:1px solid var(--line);border-radius:12px;grid-template-columns:46px 1fr auto auto;align-items:center;gap:13px;padding:14px;display:grid}.payslip-file{color:#2e7456;background:#e8f4ec;border-radius:11px;place-items:center;width:44px;height:44px;display:grid}.payslip-file svg{width:21px}.payslip-row b,.payslip-row p,.payslip-row small{margin:0;display:block}.payslip-row b{font-size:12px}.payslip-row p{color:#718078;margin:3px 0 2px;font-size:9px}.payslip-row small{color:#98a19d;font-size:8px}.payslip-row>.secondary-button{min-height:36px;padding:0 13px;font-size:10px}.payslip-row>.secondary-button svg{width:14px}.report-page{gap:16px;max-width:1180px;display:grid}.report-toolbar{align-items:flex-end;gap:12px;padding:20px 24px;display:flex}.report-toolbar>div{flex:1}.report-toolbar h2{margin:4px 0 2px;font-size:18px}.report-toolbar p{color:#7f8a85;margin:0;font-size:10px}.report-toolbar label{color:#63706b;gap:5px;font-size:10px;font-weight:600;display:grid}.report-toolbar input,.report-toolbar select{border:1px solid var(--line);color:#293730;background:#fafbfa;border-radius:9px;min-width:128px;min-height:42px;padding:0 11px}.report-kpis{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.report-kpis>div{border:1px solid var(--line);background:#fff;border-radius:13px;padding:16px 17px}.report-kpis span,.report-kpis b,.report-kpis small{display:block}.report-kpis span{color:#7d8984;font-size:9px}.report-kpis b{color:#1e3d33;margin:5px 0 2px;font:700 19px DM Sans}.report-kpis small{color:#9aa39f;font-size:9px}.report-kpis .warn{background:#fffaf0;border-color:#efd8b0}.report-kpis .warn b{color:#9b6814}.report-panel{min-width:0}.report-summary-table{margin-top:12px}.report-summary-head,.report-summary-row{grid-template-columns:minmax(150px,1.2fr) minmax(110px,1fr) repeat(4,minmax(85px,.75fr));align-items:center;gap:10px;display:grid}.report-summary-head{color:#87918d;background:#f6f8f6;border-radius:8px;padding:9px 12px;font-size:9px;font-weight:700}.report-summary-row{color:#4e5d56;border-bottom:1px solid #edf0ed;min-height:54px;padding:9px 12px;font-size:10px}.report-summary-row b,.report-summary-row small{display:block}.report-summary-row b{color:#26352f;font-size:11px}.report-summary-row small{color:#919b97;margin-top:2px;font-size:9px}.report-detail-wrap{margin-top:12px;overflow:auto}.report-detail{border-collapse:collapse;width:100%;min-width:850px;font-size:10px}.report-detail th{color:#7e8a85;text-align:right;white-space:nowrap;background:#f6f8f6;padding:10px 11px}.report-detail th:first-child,.report-detail th:nth-child(2),.report-detail th:nth-child(3){text-align:left}.report-detail td{text-align:right;white-space:nowrap;border-bottom:1px solid #edf0ed;padding:10px 11px}.report-detail td:first-child,.report-detail td:nth-child(2),.report-detail td:nth-child(3){text-align:left}.report-detail td b,.report-detail td small{display:block}.report-detail td small{color:#929c98;font-size:8px}.closing-page{gap:18px;max-width:1120px;display:grid}.closing-toolbar{align-items:center;gap:18px;padding:20px 24px;display:flex}.closing-toolbar>div{flex:1}.closing-toolbar h2,.accrual-panel h2{margin:4px 0 0;font-size:18px}.closing-toolbar label{color:#63706b;align-items:center;gap:9px;font-size:11px;font-weight:600;display:flex}.closing-toolbar input,.accrual-controls input{border:1px solid var(--line);color:#293730;background:#fafbfa;border-radius:9px;outline:none;min-height:42px;padding:0 12px}.closing-toolbar input:focus,.accrual-controls input:focus{border-color:#6c9f8b;box-shadow:0 0 0 3px #eaf4ef}.closing-stats{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.closing-stat{border:1px solid var(--line);background:#fff;border-radius:14px;padding:17px 18px;box-shadow:0 4px 18px #12372f06}.closing-stat span,.closing-stat b,.closing-stat small{display:block}.closing-stat span{color:#74817c;font-size:10px}.closing-stat b{margin-top:4px;font:700 25px DM Sans}.closing-stat small{color:#9aa39f;font-size:9px}.closing-stat.green{background:#f2faf5;border-color:#d6eadc}.closing-stat.green b{color:#2e7456}.closing-stat.blue{background:#f3f8fc;border-color:#d9e8f4}.closing-stat.blue b{color:#3b6c99}.closing-stat.amber{background:#fffaf0;border-color:#f1e2c1}.closing-stat.amber b{color:#986817}.closing-stat.red{background:#fff7f6;border-color:#f0d7d3}.closing-stat.red b{color:#a14c43}.exception-table{margin-top:12px}.exception-head,.exception-row{grid-template-columns:28px minmax(180px,1fr) 130px 90px;align-items:center;gap:12px;display:grid}.exception-head{color:#87918d;background:#f6f8f6;border-radius:8px;padding:9px 12px;font-size:9px;font-weight:700}.exception-row{cursor:pointer;border-bottom:1px solid #edf0ed;min-height:58px;padding:9px 12px}.exception-row:hover{background:#fafcfa}.exception-row input{width:15px;height:15px;accent-color:var(--green)}.exception-row b,.exception-row small{display:block}.exception-row b{font-size:11px}.exception-row small{color:#89938f;margin-top:2px;font-size:9px}.exception-row .employee-status{justify-self:start;font-style:normal}.employee-status.exception,.employee-status.correction_pending{color:#9b4540;background:#fde9e7}.accrual-panel{padding-top:21px}.accrual-controls{align-items:center;gap:8px;display:flex}.accrual-summary{color:#486157;background:#eef6f1;border-radius:10px;margin:14px 0 4px;padding:11px 13px;font-size:11px;font-weight:600}.inline-error{margin:0}.toast{z-index:80;color:#fff;background:#1b2e27;border-radius:12px;align-items:center;gap:8px;padding:12px 18px;font-size:12px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 35px #0003}.toast svg{width:16px;color:var(--lime)}.compliance-banner{color:#6f4b0b;background:#fff8e7;border:1px solid #ead49f;border-radius:11px;align-items:center;gap:11px;margin:14px 30px 0;padding:12px 15px;display:flex}.compliance-banner>svg{color:#a36e12;flex:none;width:18px;height:18px}.compliance-banner div{gap:2px;display:grid}.compliance-banner b{font-size:11px}.compliance-banner span{color:#806632;font-size:9px;line-height:1.45}.login-page{background:#fff;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-copy{color:#fff;background:radial-gradient(circle at 90% 15%,#d9f99d1f,#0000 30%),linear-gradient(145deg,#0f3029,#17483c);flex-direction:column;padding:42px 56px;display:flex}.brand.light{padding:0}.login-message{margin:auto 0}.login-message h1{letter-spacing:-2.5px;margin:16px 0 20px;font-size:48px;line-height:1.25}.login-message p{color:#a7bdb5;max-width:460px;font-size:14px;line-height:1.8}.login-foot{color:#7fa095;font:10px DM Sans}.login-panel{place-items:center;padding:40px;display:grid}.login-card{width:min(390px,100%)}.login-icon{color:#286d53;background:#e5f4ea;border-radius:14px;place-items:center;width:50px;height:50px;display:grid}.login-icon svg{width:25px;height:25px}.login-card h2{margin:22px 0 8px;font-size:24px}.login-card>p{color:#7a8581;margin:0 0 24px;font-size:12px;line-height:1.65}.login-card label{margin-bottom:12px}.login-card textarea{resize:vertical;font:10px/1.6 monospace}.login-card>.primary-button{width:100%;margin-top:8px}.token-help{background:#f4f6f4;border-radius:9px;margin-top:20px;padding:12px}.token-help span{color:#7c8883;margin-bottom:6px;font-size:9px;display:block}.token-help code{color:#46534e;white-space:nowrap;font-size:9px;display:block;overflow:auto}.login-logo{width:320px;height:44px;position:relative;overflow:hidden}.bottom-nav,.mobile-only,.scrim{display:none}.login-panel,.login-card,.login-card label,.login-card textarea,.token-help{min-width:0}.login-card>p{overflow-wrap:anywhere}.token-help{overflow:hidden}.token-help code{max-width:100%}@keyframes spin{to{transform:rotate(360deg)}}.leave-adjustment-history{gap:6px;margin-top:10px;display:grid}.leave-adjustment-history div{background:#f5f7fb;border-radius:8px;align-items:center;gap:9px;padding:8px 10px;font-size:11px;display:flex}.leave-adjustment-history b{color:#23498f;min-width:45px}.leave-adjustment-history b.negative{color:#b54747}.leave-adjustment-history span{color:#68738c}.holiday-settlement{background:#f8faff;border:1px solid #d9e2f4;border-radius:12px;margin-top:16px;padding:16px}.holiday-settlement h3{margin:0 0 4px;font-size:14px}.holiday-settlement p{color:#68738c;margin:0 0 12px;font-size:11px;line-height:1.5}.holiday-settlement-list{gap:8px;margin-top:10px;display:grid}.holiday-settlement-list article{background:#fff;border:1px solid #e2e7f0;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:11px;display:flex}.holiday-settlement-list article div:first-child{gap:3px;display:grid}.holiday-settlement-list small{color:#7a8499}.holiday-settlement-list .inline-actions{display:flex}.holiday-settled-action{align-items:center;gap:8px;display:flex}.holiday-settled-action .danger{min-height:32px}@media (width<=900px){.hero-grid,.section-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}.stat:last-child{grid-column:1/-1}.login-copy{padding:36px}.login-message h1{font-size:38px}}@media (width<=700px){body{background:#f5f6f4}.sidebar{transition:all .22s;transform:translate(-100%)}.sidebar.open{transform:none}.scrim{z-index:20;background:#00000059;border:0;display:block;position:fixed;inset:0}.main{margin-left:0}.mobile-only{display:grid}.topbar{height:83px;padding:15px 18px}.topbar h1{font-size:18px}.topbar .eyebrow{display:none}.content{padding:18px 15px 94px}.error-banner,.compliance-banner{margin:12px 15px 0}.bottom-nav{z-index:25;height:69px;padding:7px 8px max(7px,env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.bottom-nav button{color:#8b9692;place-items:center;gap:1px;display:grid}.bottom-nav button span{display:flex;position:relative}.bottom-nav button svg{width:20px}.bottom-nav button em{font-size:9px;font-style:normal}.bottom-nav button.active{color:var(--green)}.clock-card{min-height:168px;padding:23px 20px}.clock-card strong{font-size:33px}.clock-card>button{width:88px;height:88px}.hero-grid{gap:12px}.stat-grid{gap:9px;margin-top:12px}.stat{padding:14px}.section-grid{gap:12px;margin-top:15px}.panel{padding:20px 17px}.login-page{grid-template-columns:1fr}.login-copy{min-height:240px;padding:28px 25px}.login-message{margin:45px 0 20px}.login-message h1{margin:10px 0;font-size:31px}.login-message p{font-size:11px}.login-foot{display:none}.login-panel{padding:35px 24px}.approval-row{grid-template-columns:40px 1fr}.approval-actions{grid-column:1/-1}.approval-actions button{flex:1}.modal-backdrop{align-items:end;padding:0}.modal{border-radius:20px 20px 0 0;width:100%;max-height:calc(100dvh - 24px)}.modal>header{padding:20px 20px 14px}.modal-body{scrollbar-gutter:auto;padding:8px 20px 22px}.modal>footer{padding:13px 20px max(13px,env(safe-area-inset-bottom))}.manage-modal .action-section>button,.manage-modal .inline-actions{width:100%}.manage-modal .action-section>button{justify-self:stretch}.manage-modal .inline-actions>button{flex:1}.toast{white-space:nowrap;max-width:calc(100% - 30px);bottom:86px}.leave-banner{padding:25px 22px}.leave-banner strong{font-size:34px}.topbar .topbar-actions{gap:5px}.topbar-actions .icon-button{width:36px;height:36px}.notification-panel{width:calc(100vw - 20px);max-height:calc(100vh - 160px);top:72px;right:10px}.notification-list{max-height:calc(100vh - 230px)}.capacity-labels span{font-size:6px}.login-logo{width:280px;height:40px}.login-logo img{width:370px;transform:translate(-49px,-63px)}.employee-toolbar{flex-direction:column;align-items:stretch}.search-box{width:100%}.employee-table-head{display:none}.employee-table-row{grid-template-columns:1fr auto;gap:8px 12px;padding:14px 4px}.employee-table-row>span:nth-child(2),.employee-table-row>span:nth-child(3){color:#78847f;grid-column:1;padding-left:44px}.employee-table-row>span:last-child{grid-area:1/2}.hr-summary{padding:24px 21px}.field-pair{grid-template-columns:1fr}.approval-tabs{width:100%}.approval-tabs button{flex:1;justify-content:center}.policy-rule-grid{grid-template-columns:1fr}.calculation-flow{flex-direction:column;align-items:flex-start;overflow:visible}.calculation-flow span:not(:last-child):after{content:""}.policy-head{align-items:flex-start}.policy-name{padding:13px}.closing-page{gap:12px}.closing-toolbar{flex-direction:column;align-items:stretch;padding:19px 17px}.closing-toolbar label{justify-content:space-between}.closing-toolbar input{flex:1}.closing-toolbar>.primary-button{width:100%}.closing-stats{grid-template-columns:repeat(2,1fr);gap:8px}.closing-stat:first-child{grid-column:1/-1}.closing-stat{padding:14px 15px}.exception-head{display:none}.exception-row{grid-template-columns:24px 1fr auto;gap:8px;padding:12px 3px}.exception-row>span:nth-of-type(2){color:#77837e;grid-column:2;font-size:10px}.exception-row>i{grid-area:1/3}.accrual-controls{grid-template-columns:1fr 1fr;display:grid}.accrual-controls input{grid-column:1/-1;width:100%}.accrual-controls button{padding:0 12px}.accrual-panel .employee-toolbar{margin-bottom:13px}}@media (width<=390px){.clock-card strong{font-size:29px}.clock-card>button{width:80px;height:80px}.stat-grid{grid-template-columns:1fr}.stat:last-child{grid-column:auto}.leave-banner{flex-direction:column;align-items:flex-start;gap:18px}.leave-banner button{justify-content:center;width:100%}}@media (width<=900px){.report-toolbar{flex-wrap:wrap;align-items:stretch}.report-toolbar>div{flex-basis:100%}.report-kpis{grid-template-columns:repeat(2,1fr)}.report-kpis>div:first-child{grid-column:1/-1}.report-summary-head{display:none}.report-summary-row{grid-template-columns:1fr 1fr}.report-summary-row>span:first-child{grid-column:1/-1}.report-summary-row>span:nth-child(n+3){text-align:right}}@media (width<=700px){.report-toolbar{flex-flow:column;padding:19px 17px}.report-toolbar>div{flex-basis:auto;width:100%}.report-toolbar label,.report-toolbar input,.report-toolbar select,.report-toolbar>.primary-button{width:100%}.report-kpis{gap:8px}.report-kpis>div{padding:14px}.report-kpis b{font-size:16px}.report-summary-row{padding:12px 3px}.payslip-hero{min-height:125px;padding:23px 21px}.payslip-hero h2{font-size:19px}.payslip-hero>svg{width:38px}.preliminary-export{flex-direction:column;align-items:stretch}.preliminary-export .secondary-button{width:100%}.payslip-month{justify-content:space-between;width:100%}.payslip-month input{flex:1}.payslip-upload-grid{grid-template-columns:1fr}.payslip-upload-grid .primary-button{width:100%}.payslip-row{grid-template-columns:40px 1fr auto;padding:12px 10px}.payslip-file{width:38px;height:38px}.payslip-row>.secondary-button{grid-column:1/-1;width:100%}.payslip-row>.employee-status{align-self:start}}.login-page{background:radial-gradient(circle at 50% 30%,#4b69b43d,#0000 34%),linear-gradient(145deg,#080f26 0%,#101d43 55%,#182d61 100%);place-items:center;min-height:100vh;padding:32px;display:grid;overflow:hidden}.login-page:before{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 35%,#ffffff09 50%,#0000 65%);position:fixed;inset:0}.login-shell{z-index:1;flex-direction:column;align-items:center;width:min(380px,100%);display:flex;position:relative}.login-logo{width:360px;max-width:100%;height:52px;position:relative;overflow:hidden}.login-logo img{mix-blend-mode:screen;width:480px;max-width:none;height:auto;position:absolute;transform:translate(-63px,-84px)}.login-button{color:#17213c;background:#fff;border:1px solid #ffffff38;border-radius:12px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:54px;margin-top:52px;font-size:14px;font-weight:700;transition:transform .18s,box-shadow .18s,background .18s;display:flex;box-shadow:0 18px 45px #00000038}.login-button span{color:#3157a5;border:1px solid #dfe3eb;border-radius:50%;place-items:center;width:24px;height:24px;font:700 13px DM Sans,sans-serif;display:grid}.login-button:not(:disabled):hover{background:#f8faff;transform:translateY(-2px);box-shadow:0 22px 55px #00000047}.login-button:focus-visible{outline-offset:4px;outline:3px solid #8fb4ffa6}.login-button:disabled{cursor:wait;opacity:.65}.login-error{color:#ffd2d2;text-align:center;background:#7d182347;border:1px solid #ff9c9c40;border-radius:10px;width:100%;margin-top:14px;padding:11px 13px;font-size:11px;line-height:1.5}.developer-login{color:#aebadb;width:100%;margin-top:22px;font-size:10px}.developer-login summary{cursor:pointer;text-align:center}.developer-login label{gap:7px;margin-top:14px;display:grid}.developer-login textarea{color:#fff;resize:vertical;background:#ffffff12;border:1px solid #ffffff2e;border-radius:9px;width:100%;padding:10px}.developer-login .secondary-button{width:100%;margin-top:9px}@media (width<=700px){.login-page{background:radial-gradient(circle at 50% 30%,#4b69b433,#0000 40%),linear-gradient(160deg,#080f26,#182d61);padding:24px}.login-shell{width:min(340px,100%)}.login-logo{width:290px;height:44px}.login-logo img{width:387px;transform:translate(-51px,-68px)}.login-button{margin-top:42px}}.approval-actions{align-items:center}.completed-actions button{color:#315b4b;background:#eaf4ef}.profile-change-page{gap:16px;max-width:1000px;display:grid}.profile-hero{color:#fff;background:linear-gradient(120deg,#153b32,#286b58);border-radius:17px;align-items:center;gap:17px;padding:24px 27px;display:flex}.profile-avatar{color:#235c4c;background:#d9f99d;border-radius:16px;place-items:center;width:58px;height:58px;display:grid}.profile-avatar svg{width:30px;height:30px}.profile-hero h2{margin:4px 0;font-size:22px}.profile-hero p{color:#b8cec5;margin:0;font-size:10px}.profile-change-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:16px;display:grid}.profile-form{gap:13px;display:grid}.profile-form label{color:#56645e;gap:6px;font-size:10px;font-weight:600;display:grid}.profile-form input,.profile-form textarea{border:1px solid var(--line);color:#293730;background:#fafbfa;border-radius:9px;outline:none;width:100%;padding:11px 12px}.profile-form input:focus,.profile-form textarea:focus{border-color:#6c9f8b;box-shadow:0 0 0 3px #eaf4ef}.profile-submit{justify-self:end}.change-comparison{gap:9px;display:grid}.change-comparison>div{background:#f3f7f4;border-radius:10px;grid-template-columns:72px 1fr 18px 1fr;align-items:center;gap:8px;padding:11px 12px;display:grid}.change-comparison>div>span{color:#50635b;font-size:10px;font-weight:700}.change-comparison p{overflow-wrap:anywhere;color:#66756e;min-width:0;margin:0;font-size:10px}.change-comparison p small{color:#98a19d;margin-bottom:3px;font-size:8px;display:block}.change-comparison p b{color:#1e493a}.change-comparison svg{color:#83a293;width:15px}.policy-admin-page{gap:16px;max-width:1120px;display:grid}.policy-admin-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.policy-admin-head h2{margin:4px 0 5px;font-size:20px}.policy-admin-head p{color:#79857f;margin:0;font-size:10px}.policy-safety{color:#27664f;background:#e8f5ed;border-radius:10px;align-items:center;gap:7px;padding:9px 12px;font-size:10px;font-weight:700;display:flex}.policy-safety svg{width:15px}.policy-admin-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:16px;display:grid}.policy-editor{gap:13px;display:grid}.policy-editor>label,.policy-input-grid label{color:#56645e;gap:6px;font-size:10px;font-weight:600;display:grid;position:relative}.policy-editor input,.policy-editor select,.policy-input-grid input,.policy-input-grid select,.policy-version-action input{border:1px solid var(--line);color:#293730;background:#fafbfa;border-radius:9px;outline:none;width:100%;min-height:41px;padding:0 11px}.policy-input-grid{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.policy-input-grid label small{color:#89948f;font-size:9px;position:absolute;bottom:13px;right:10px}.policy-preview{background:#eef6f1;border-radius:11px;padding:14px}.policy-preview>b{margin-bottom:8px;font-size:11px;display:block}.policy-preview>div{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.policy-preview span{color:#315a4a;text-align:center;background:#fff;border-radius:7px;padding:8px;font-size:9px}.policy-preview small{color:#76847e;margin-top:8px;font-size:8px;display:block}.policy-version-list{gap:10px;margin-top:12px;display:grid}.policy-version-card{border:1px solid var(--line);border-radius:12px;gap:10px;padding:14px;display:grid}.policy-version-card.active{border-color:#acd4bb;box-shadow:inset 0 0 0 2px #edf7f1}.policy-version-card>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.policy-version-card b,.policy-version-card small{display:block}.policy-version-card b{font-size:11px}.policy-version-card small{color:#89948f;margin-top:3px;font-size:8px}.policy-version-card p{color:#69766f;margin:0;font-size:9px}.policy-version-rules{flex-wrap:wrap;gap:5px;display:flex}.policy-version-rules span{color:#486356;background:#f1f6f3;border-radius:7px;padding:5px 7px;font-size:8px}.policy-version-action{grid-template-columns:1fr auto;gap:7px;display:grid}.policy-version-action button{min-height:41px}.activate-policy{justify-self:end}.history-modal{width:min(720px,100%);max-height:calc(100vh - 40px)}.history-modal>.modal-body{overflow-y:auto}.history-meta b{overflow-wrap:anywhere}.final-comment{background:#f1f7f3;border-left:3px solid #76a88f;border-radius:5px 10px 10px 5px;padding:14px 15px}.final-comment span{color:#738079;font-size:9px}.final-comment p{color:#33463e;margin:5px 0 0;font-size:11px;line-height:1.55}.approval-rounds{gap:13px;display:grid}.approval-round{border:1px solid var(--line);border-radius:12px;overflow:hidden}.approval-round>header{background:#f6f8f6;padding:12px 14px}.approval-round>header div{gap:2px;display:grid}.approval-round>header b{font-size:12px}.approval-round>header small{color:#87918d;font-size:9px}.approval-round>header i{font-style:normal}.approval-timeline{padding:5px 14px 12px;display:grid}.approval-step{border-top:1px solid #edf0ed;grid-template-columns:26px 1fr;gap:10px;padding:12px 0;display:grid}.approval-step:first-child{border-top:0}.step-marker{color:#fff;background:#2e7358;border-radius:50%;place-items:center;width:24px;height:24px;font:700 10px DM Sans;display:grid}.step-content{gap:8px;min-width:0;display:grid}.step-title b,.step-title small{display:block}.step-title b{font-size:11px}.step-title small{color:#89938f;margin-top:2px;font-size:9px}.decision-record{background:#f7f9f7;border-radius:9px;padding:10px 11px}.decision-record>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.decision-record strong{color:#2f5144;font-size:10px}.decision-record time,.decision-record small{color:#8b9591;font-size:8px}.decision-record small{margin-top:3px;display:block}.decision-record p{color:#4f5e58;margin:6px 0 0;font-size:10px;line-height:1.5}.pending-record p{color:#8b9591;margin:0}@media (width<=700px){.history-modal{max-height:92vh}.history-modal>.modal-body{padding-left:17px;padding-right:17px}.history-meta{grid-template-columns:1fr}.approval-round>header{padding:11px 12px}.decision-record>div{flex-direction:column;align-items:flex-start;gap:2px}.completed-actions{justify-content:space-between}.profile-change-grid{grid-template-columns:1fr}.profile-hero{padding:20px}.profile-submit{justify-content:center;width:100%}.change-comparison>div{grid-template-columns:1fr 18px 1fr}.change-comparison>div>span{grid-column:1/-1}.change-comparison>div>svg{grid-area:2/2}}@media (width<=800px){.policy-admin-grid{grid-template-columns:1fr}.policy-input-grid{grid-template-columns:1fr 1fr}.policy-admin-head{flex-direction:column;align-items:flex-start}.policy-preview>div{grid-template-columns:1fr 1fr}}@media (width<=430px){.policy-input-grid,.policy-version-action{grid-template-columns:1fr}.activate-policy{justify-content:center;width:100%}}.login-card>.secondary-button{width:100%;margin-top:8px}.checkbox-row{border:1px solid var(--line);cursor:pointer;background:#f8f9fb;border-radius:10px;align-items:flex-start;padding:12px 13px;grid-template-columns:none!important;gap:10px!important;display:flex!important}.checkbox-row input{height:16px;accent-color:var(--green);margin-top:2px;width:16px!important;padding:0!important}.checkbox-row span{gap:3px;display:grid}.checkbox-row b{color:#26334d;font-size:11px}.checkbox-row small{color:#7a869d;font-size:9px}.role-picker{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:13px;display:grid}.role-picker>span{color:#596780;grid-column:1/-1;font-size:10px;font-weight:700}.role-picker label{color:#4e5c75;cursor:pointer;align-items:center;gap:7px;font-size:10px;display:flex}.role-picker input{height:14px;accent-color:var(--green);width:14px!important;padding:0!important}.login-divider{color:#9aa39f;align-items:center;gap:10px;margin:18px 0 12px;font-size:9px;display:flex}.login-divider:before,.login-divider:after{content:"";background:#e3e7e4;flex:1;height:1px}.connections-page{gap:16px;max-width:1080px;display:grid}.connections-hero{color:#fff;background:linear-gradient(125deg,#153b32,#286a57);border-radius:18px;justify-content:space-between;align-items:center;gap:24px;padding:27px 30px;display:flex}.connections-hero h2{margin:5px 0 6px;font-size:23px}.connections-hero p{color:#b9cec6;margin:0;font-size:10px}.connections-hero>div:last-child{background:#ffffff14;border:1px solid #ffffff26;border-radius:14px;place-items:center;min-width:130px;padding:16px;display:grid}.connections-hero>div:last-child b{font:700 25px DM Sans}.connections-hero>div:last-child span{color:#bdd1c9;font-size:9px}.connections-toolbar{justify-content:space-between;align-items:center;display:flex}.connections-toolbar p{color:#85908b;margin:0;font-size:9px}.connections-toolbar button svg{width:14px}.connection-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.connection-grid article{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:42px 1fr;gap:13px;padding:17px;display:grid}.connection-grid article>span{color:#8b9691;background:#f0f3f1;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.connection-grid article>span svg{width:19px}.connection-grid h3{margin:1px 0 4px;font-size:12px}.connection-grid p{color:#7d8983;margin:0 0 8px;font-size:9px}.connection-grid b{color:#9a6a22;align-items:center;gap:5px;font-size:9px;display:flex}.connection-grid b svg{width:12px}.connection-grid article.connected{background:#fbfefc;border-color:#cde4d5}.connection-grid article.connected>span{color:#2d7456;background:#e8f5ed}.connection-grid article.connected b{color:#2d7456}.connection-note{color:#31594a;background:#eef6f1;border-radius:12px;align-items:flex-start;gap:11px;padding:16px;display:flex}.connection-note>svg{width:18px}.connection-note b{font-size:10px}.connection-note p{color:#64746d;margin:4px 0 0;font-size:9px;line-height:1.5}@media (width<=700px){.connections-hero{flex-direction:column;align-items:stretch;padding:22px}.connections-hero>div:last-child{min-width:0}.connection-grid{grid-template-columns:1fr}.connections-toolbar{align-items:flex-start;gap:10px}.connections-toolbar button{min-height:36px;padding:0 11px}}body{background:#f4f6fa}.sidebar{background:linear-gradient(#111c45 0%,#0c1535 100%)}.sidebar nav button{color:#9ba7c9}.sidebar nav button.active{background:#9ab8ff24}.sidebar nav button.active svg{color:#9fc0ff}.sidebar-profile{border-top-color:#ffffff21}.sidebar-profile span,.sidebar-profile button{color:#8995ba}.avatar{color:#172451;background:#dfe8ff}.eyebrow{color:#74809d}.card,.panel{box-shadow:0 4px 18px #111c450a}.clock-card{background:linear-gradient(145deg,#fff 55%,#f0f3fb)}.clock-card strong{color:#1a2238}.clock-card>button{box-shadow:0 9px 24px #111c453b}.dark-card{color:#f3f6ff}.leave-summary .card-kicker,.leave-summary>span:not(.card-kicker){color:#aab7d8}.leave-summary button{color:#dbe4fa}.request-icon,.doc-icon,.payslip-file{color:#294788;background:#edf2ff}.attendance-actions button{color:#293b69}.attendance-actions button svg{color:#31569d}.notification-list>button.unread{background:#f3f6ff}.notification-list>button:hover{background:#edf2ff}.notification-mark{color:#2d4f95;background:#e8efff}.notification-list>button>i{background:#4168b5}.primary-button,.approval-actions button,.approval-tabs button.active{background:var(--green)}.approval-tabs button.active{box-shadow:0 3px 9px #111c452e}.approval-tabs button.active b{color:#111c45;background:#b8ceff}.policy-name,.form-note,.preview-box,.correction-comparison,.accrual-summary,.connection-note{color:#34466f;background:#f0f3fb}.policy-name>svg,.calculation-flow i{color:#31569d}.calculation-flow i{background:#e6edff}.modal input:focus,.modal textarea:focus,.login-card textarea:focus,.profile-form input:focus,.profile-form textarea:focus{border-color:#6d87c5;box-shadow:0 0 0 3px #e8edfa}.leave-kind-picker{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.leave-kind-picker button{color:#55617c;text-align:left;background:#f8f9fc;border:1px solid #dce2ee;border-radius:11px;gap:3px;padding:13px 8px;display:grid}.leave-kind-picker button b{font-size:12px}.leave-kind-picker button small{color:#8b94aa;font-size:9px}.leave-kind-picker button.active{color:#18336f;background:#eaf0ff;border-color:#2f4f96;box-shadow:0 0 0 2px #2f4f9614}.leave-calendar-panel{overflow:hidden}.calendar-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.calendar-toolbar h2{margin:3px 0 0;font-size:17px}.calendar-controls{align-items:center;gap:9px;display:flex}.calendar-controls input{border:1px solid var(--line);color:#25365e;background:#fff;border-radius:9px;min-height:37px;padding:0 10px}.calendar-connection{color:#75809a;background:#f1f3f8;border-radius:8px;align-items:center;gap:5px;padding:7px 9px;font-size:9px;display:flex}.calendar-connection svg{width:13px;height:13px}.calendar-connection.connected{color:#23498f;background:#e8efff}.calendar-sync-button{color:#23498f;cursor:pointer;background:#fff;border:1px solid #cbd8f2;border-radius:9px;align-items:center;gap:5px;min-height:37px;padding:0 10px;font-size:11px;display:flex}.calendar-sync-button:disabled{opacity:.55;cursor:wait}.calendar-sync-button svg{width:13px;height:13px}.calendar-sync-button .spinning{animation:.9s linear infinite spin}.calendar-sync-message{color:#23498f;background:#eef3ff;border-radius:8px;margin:10px 0;padding:9px 11px;font-size:12px}.leave-calendar-weekdays,.leave-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.leave-calendar-weekdays b{color:#8992a6;text-align:center;padding:8px 4px;font-size:9px}.leave-calendar-grid{border-top:1px solid #e4e8f0;border-left:1px solid #e4e8f0}.leave-calendar-day{background:#fff;border-bottom:1px solid #e4e8f0;border-right:1px solid #e4e8f0;min-height:108px;padding:7px}.leave-calendar-day:nth-child(7n),.leave-calendar-day:nth-child(7n-1){background:#fafbfe}.leave-calendar-day.blank{background:#f7f8fb}.leave-calendar-day time{color:#5f6a82;margin-bottom:5px;font:600 10px DM Sans;display:block}.calendar-leave{color:#294475;background:#eaf0fd;border-left:2px solid #5878bd;border-radius:4px;gap:1px;margin-top:4px;padding:5px 6px;display:grid;overflow:hidden}.calendar-leave b,.calendar-leave em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-leave b{font-size:9px}.calendar-leave em{color:#68799e;font-size:8px;font-style:normal}.calendar-leave.in_review,.calendar-leave.submitted{color:#70531c;background:#fff5de;border-color:#d3a242}.calendar-privacy{color:#7f899d;align-items:center;gap:6px;margin:12px 0 0;font-size:9px;display:flex}.calendar-privacy svg{width:13px}@media (width<=700px){.calendar-toolbar{flex-direction:column;align-items:flex-start}.calendar-controls{justify-content:space-between;width:100%}.leave-calendar-panel{padding-left:10px;padding-right:10px}.leave-calendar-day{min-height:78px;padding:4px}.calendar-leave{padding:4px}.calendar-leave em{display:none}.leave-kind-picker button{padding:11px 7px}}.weekly-capacity{background:#f5f7fc;border-color:#d8e0f1}.weekly-capacity b{color:#23386f}.capacity-track>i{background:#496db5}.login-copy{background:radial-gradient(circle at 90% 15%,#8fb4ff2e,#0000 30%),linear-gradient(145deg,#0d1738,#1e326b)}.login-message .eyebrow{color:#aab9df}.login-message p{color:#b5c0dc}.login-foot{color:#8493bb}.login-icon{color:#294788;background:#e8efff}.hr-summary,.leave-banner{background:linear-gradient(115deg,#111c45,#243c7b);box-shadow:0 9px 28px #111c452b}.hr-summary span,.leave-banner span{color:#b7c3e2}.hr-summary p,.leave-banner p{color:#9faed3}.profile-hero,.connections-hero{background:linear-gradient(120deg,#111c45,#294686)}.profile-avatar{color:#17306a;background:#b8ceff}.payslip-hero{background:radial-gradient(circle at 88% 18%,#a9c7ff33,#0000 32%),linear-gradient(120deg,#111c45,#27437f);box-shadow:0 9px 28px #111c4526}.preliminary-export{background:linear-gradient(120deg,#fafbff,#eef2fb);border-color:#d7dff0}.connections-hero>div:last-child.ready{color:#b8ceff}.payroll-settlement-panel{gap:18px;display:grid}.settlement-filters{align-items:end;gap:10px;display:flex}.settlement-filters label{color:#74809d;gap:5px;font-size:9px;font-weight:700;display:grid}.settlement-filters input,.settlement-filters select{color:#1b2948;background:#fff;border:1px solid #d7deeb;border-radius:8px;min-width:150px;padding:9px 10px}.settlement-status{border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.settlement-status svg{flex:none;width:18px}.settlement-status b,.settlement-status p{margin:0}.settlement-status p{margin-top:3px;font-size:10px}.settlement-status.ready{color:#245e46;background:#ebf7f0}.settlement-status.warning{color:#805912;background:#fff3d9}.settlement-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.settlement-kpis>div{background:#fafbfe;border:1px solid #dfe5f0;border-radius:11px;padding:14px}.settlement-kpis span,.settlement-kpis b,.settlement-kpis small{display:block}.settlement-kpis span{color:#74809d;font-size:9px}.settlement-kpis b{color:#172451;margin-top:5px;font-size:15px}.settlement-kpis small{color:#8a95ad;margin-top:4px;font-size:8px}.allowance-breakdown{border:1px solid #d9e0ee;border-radius:11px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.allowance-breakdown>div{border-right:1px solid #e2e7f0;padding:14px}.allowance-breakdown>div:last-child{border-right:0}.allowance-breakdown span,.allowance-breakdown b{display:block}.allowance-breakdown span{color:#74809d;font-size:9px}.allowance-breakdown b{color:#21345b;margin-top:5px;font-size:15px}.allowance-breakdown .gross{background:#edf2ff}.allowance-breakdown .gross b{color:#142f6b}.payroll-contract-form{background:#f4f6fb;border-radius:12px;gap:12px;padding:16px;display:grid}.payroll-contract-form h3,.payroll-contract-form p{margin:0}.payroll-contract-form h3{color:#1d2d51;font-size:13px}.payroll-contract-form p{color:#74809d;margin-top:3px;font-size:9px}.contract-input-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.contract-input-grid label{color:#687590;gap:5px;font-size:9px;font-weight:700;display:grid;position:relative}.contract-input-grid input{background:#fff;border:1px solid #d5ddeb;border-radius:8px;min-width:0;padding:10px 36px 10px 10px}.contract-input-grid small{color:#929db2;position:absolute;bottom:11px;right:10px}.payroll-contract-form>button{justify-self:end}@media (width<=900px){.settlement-kpis,.allowance-breakdown,.contract-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settlement-filters{flex-wrap:wrap}}@media (width<=700px){body{background:#f4f6fa}.settlement-kpis,.allowance-breakdown,.contract-input-grid{grid-template-columns:1fr}.allowance-breakdown>div{border-bottom:1px solid #e2e7f0;border-right:0}.settlement-filters,.settlement-filters label,.settlement-filters input,.settlement-filters select{width:100%}}.documents-page{gap:16px;max-width:1120px;display:grid}.documents-hero{color:#fff;background:radial-gradient(circle at 88% 16%,#a9c7ff38,#0000 31%),linear-gradient(120deg,#111c45,#294686);border-radius:18px;justify-content:space-between;align-items:center;gap:24px;padding:27px 30px;display:flex;box-shadow:0 9px 28px #111c4526}.documents-hero h2{margin:5px 0 6px;font-size:23px}.documents-hero p{color:#b9c6e4;margin:0;font-size:10px}.documents-hero>div:last-child{background:#ffffff14;border:1px solid #ffffff29;border-radius:13px;grid-template-columns:30px 1fr;align-items:center;gap:2px 10px;min-width:188px;padding:15px 17px;display:grid}.documents-hero>div:last-child svg{color:#b8ceff;grid-row:1/3;width:25px}.documents-hero>div:last-child b{font-size:11px}.documents-hero>div:last-child span{color:#afbddf;font-size:8px}.documents-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:16px;display:grid}.documents-grid.employee-only{grid-template-columns:minmax(320px,560px)}.document-issue-card,.document-settings-card{gap:12px;display:grid}.document-issue-card>label,.document-settings-card>label{color:#65718b;gap:6px;font-size:9px;font-weight:700;display:grid}.document-issue-card input,.document-issue-card select,.document-settings-card input{color:#1d2946;background:#fff;border:1px solid #d7deeb;border-radius:9px;outline:none;width:100%;min-height:41px;padding:0 11px}.document-issue-card input:focus,.document-issue-card select:focus,.document-settings-card input:focus{border-color:#6d87c5;box-shadow:0 0 0 3px #e8edfa}.document-issue-card>.primary-button,.document-settings-card>.primary-button{justify-self:end}.document-warning{color:#77551a;background:#fff3d9;border-radius:9px;align-items:flex-start;gap:8px;padding:11px 12px;font-size:9px;line-height:1.5;display:flex}.document-warning svg{flex:none;width:16px}.document-settings-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.document-settings-head>span{color:#9a6a22;background:#fff3d9;border-radius:7px;padding:5px 8px;font-size:8px;font-weight:700}.document-settings-head>span.configured{color:#275d47;background:#e9f6ef}.document-business-no{color:#65718b;background:#f4f6fb;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;font-size:9px;display:flex}.document-business-no b{color:#23345d}.seal-upload{background:#fafbfe;border:1px dashed #cfd7e7;border-radius:10px;grid-template-columns:1fr minmax(150px,220px) auto;align-items:end;gap:9px;padding:12px;display:grid}.seal-upload>div{gap:3px;display:grid}.seal-upload b{color:#263655;font-size:10px}.seal-upload span{color:#8691a8;font-size:8px}.seal-upload input{min-height:36px;padding:7px;font-size:8px}.seal-upload button{min-height:36px;padding:0 11px}.document-history{gap:12px;display:grid}.document-history-list{gap:8px;display:grid}.document-history-list article{background:#fff;border:1px solid #e0e5ef;border-radius:11px;grid-template-columns:38px minmax(180px,1fr) auto auto;align-items:center;gap:11px;padding:12px 13px;display:grid}.document-file-icon{color:#294788;background:#edf2ff;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.document-file-icon svg{width:17px}.document-history-list article>div:nth-child(2){min-width:0}.document-history-list b,.document-history-list p,.document-history-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.document-history-list b{color:#202c49;font-size:10px}.document-history-list p{color:#6f7b92;margin:3px 0;font-size:9px}.document-history-list small{color:#9aa3b5;font-size:8px}.document-row-actions{align-items:center;gap:5px;display:flex}.document-row-actions button{color:#294788;cursor:pointer;background:#fff;border:1px solid #d4ddec;border-radius:8px;align-items:center;gap:4px;min-height:32px;padding:0 9px;font-size:8px;font-weight:700;display:flex}.document-row-actions button svg{width:12px}.document-row-actions button.danger{color:#9a3d45;border-color:#eed2d6}.document-row-actions button:disabled{opacity:.45;cursor:not-allowed}@media (width<=850px){.documents-grid{grid-template-columns:1fr}.seal-upload{grid-template-columns:1fr auto}.seal-upload>div{grid-column:1/-1}.document-history-list article{grid-template-columns:38px 1fr auto}.document-row-actions{grid-column:2/-1;justify-content:flex-end}}@media (width<=600px){.documents-hero{flex-direction:column;align-items:stretch;padding:22px}.documents-hero>div:last-child{min-width:0}.seal-upload{grid-template-columns:1fr}.document-settings-card>.primary-button,.document-issue-card>.primary-button{justify-content:center;width:100%}.document-history-list article{grid-template-columns:34px 1fr}.document-history-list article>.status{grid-column:2}.document-row-actions{grid-column:1/-1;justify-content:stretch}.document-row-actions button{flex:1;justify-content:center}}
