:root{color:#18332d;font-synthesis:none;text-rendering:optimizelegibility;background:#f3f5ef;font-family:Inter,Microsoft YaHei,system-ui,sans-serif}.monthly-page{color:#18231f;background:#f5f7f6;min-height:100vh;padding:28px}.monthly-context{background:#fff;border:1px solid #dbe3df;border-radius:14px;flex-wrap:wrap;align-items:end;gap:16px;padding:16px 18px;display:flex}.monthly-context label{color:#53615b;gap:5px;font-size:13px;display:grid}.monthly-context select,.monthly-context input,.month-create{min-height:38px}.month-create{align-items:center;gap:8px;display:flex}.status-pill{background:#e9eeeb;border-radius:999px;align-self:center;padding:6px 11px;font-size:13px}.status-pill--draft{color:#755800;background:#fff1c7}.status-pill--locked,.status-pill--archived{color:#176244;background:#ddefe7}.workspace-tabs{border-bottom:1px solid #ccd8d2;gap:4px;margin-top:18px;display:flex}.workspace-tabs button{background:0 0;border:0;border-radius:8px 8px 0 0;padding:12px 18px}.workspace-tabs button.active{color:#116149;background:#fff;box-shadow:inset 0 -3px #1e7d60}.monthly-sheet{background:#fff;border:1px solid #dbe3df;border-top:0;min-height:420px}.sheet-toolbar{z-index:5;background:#fffffff7;border-bottom:1px solid #e1e7e4;flex-wrap:wrap;align-items:center;gap:8px;padding:12px;display:flex;position:sticky;top:0}.sheet-toolbar input,.sheet-toolbar select{min-height:36px}.file-button{cursor:pointer;background:#fff;border:1px solid #aab8b1;border-radius:7px;align-items:center;min-height:36px;padding:0 12px;display:inline-flex}.preview-strip{background:#f0f6f3;border-left:4px solid #2f7e62;flex-wrap:wrap;align-items:center;gap:18px;margin:12px;padding:12px 15px;display:flex}.supplement-panel{background:#fafcfb;border:1px solid #cddad4;border-radius:10px;flex-wrap:wrap;align-items:end;gap:10px;margin:12px;padding:15px;display:flex}.supplement-panel h3{flex-basis:100%;margin:0}.supplement-panel label{gap:4px;font-size:12px;display:grid}.wide-table{max-height:62vh;overflow:auto}.wide-table table{border-collapse:separate;border-spacing:0;width:100%;min-width:1250px}.wide-table th,.wide-table td{white-space:nowrap;background:#fff;border-bottom:1px solid #e5eae8;border-right:1px solid #e5eae8;padding:9px 10px}.wide-table th{z-index:2;text-align:center;background:#eef3f0;position:sticky;top:0}.wide-table .sticky-left{z-index:3;min-width:150px;position:sticky;left:0}.wide-table th.sticky-left{z-index:4;background:#e6efeb}.wide-table td small,.allocation-row small{color:#6a7771;margin-top:3px;display:block}.money-cell{text-align:right;font-variant-numeric:tabular-nums}.money-cell input{text-align:right;width:92px}.row-actions{gap:6px;margin-top:5px;display:flex}.allocation-list{gap:12px;padding:12px;display:grid}.allocation-row{border:1px solid #d8e1dc;border-radius:10px;overflow:hidden}.allocation-row>header{background:#f4f7f5;grid-template-columns:minmax(170px,1fr) repeat(3,auto);align-items:center;gap:18px;padding:12px 14px;display:grid}.allocation-groups{overflow-x:auto}.allocation-group{border-top:1px solid #e4e9e6;grid-template-columns:minmax(190px,1.3fr) 110px 130px 150px auto;align-items:center;gap:8px;min-width:760px;padding:9px 14px;display:grid}.allocation-row footer{border-top:1px solid #e4e9e6;gap:8px;padding:9px 14px;display:flex}@media (width<=760px){.monthly-page{padding:14px}.allocation-row>header{grid-template-columns:1fr 1fr}}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.login-page{grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr);min-height:100vh;display:grid}.login-intro{color:#fff;background:radial-gradient(circle at 20% 20%,#327e68 0,#0000 35%),linear-gradient(145deg,#173f37,#0e2925);flex-direction:column;justify-content:space-between;padding:clamp(44px,7vw,96px);display:flex}.brand-mark{color:#9ed0b8;letter-spacing:.2em;margin:0 0 26px;font-size:13px;font-weight:700}.login-intro h1{max-width:720px;margin:0;font-size:clamp(48px,6vw,86px);line-height:1.05}.login-lead{color:#c5dcd1;max-width:600px;margin:28px 0 0;font-size:clamp(17px,2vw,21px);line-height:1.8}.platform-login{color:#fff;background:#ffffff14;border:1px solid #ffffff42;border-radius:12px;justify-content:space-between;align-items:center;width:min(100%,430px);margin-top:70px;padding:17px 20px;text-decoration:none;display:flex}.platform-login:hover,.platform-login:focus-visible{background:#ffffff24;border-color:#ffffff8c}.login-panel{background:#f3f5ef;place-items:center;padding:36px;display:grid}.login-card{background:#fff;border:1px solid #e0e6de;border-radius:22px;width:100%;max-width:430px;padding:40px;box-shadow:0 18px 55px #26443a12}.eyebrow{color:#628176;letter-spacing:.1em;text-transform:uppercase;margin:0 0 9px;font-size:13px;font-weight:700}.login-card h2,.session-card h1{margin:0;font-size:32px;line-height:1.2}.muted{color:#65776f;line-height:1.65}.login-error{color:#962d2d;background:#fff3f3;border:1px solid #efc4c4;border-radius:9px;margin:24px 0 0;padding:12px 14px;line-height:1.5}form{margin-top:28px;display:grid}label{margin:0 0 8px;font-size:14px;font-weight:650}input{color:#18352c;background:#fff;border:1px solid #c9d5cf;border-radius:9px;outline:none;width:100%;height:46px;margin:0 0 20px;padding:0 13px}input:focus{border-color:#2e7b5c;box-shadow:0 0 0 3px #2e7b5c24}input:disabled{background:#edf1ef}.button{cursor:pointer;border:0;border-radius:9px;min-height:44px;padding:0 18px;font-weight:700}.button:disabled{cursor:not-allowed;opacity:.58}.button--primary{color:#fff;background:#1d5b4d;margin-top:6px}.button--primary:hover:not(:disabled){background:#164b40}.button--secondary{color:#194d39;background:#e5eee9;margin-top:22px}.page-state,.session-page,.password-page{place-items:center;min-height:100vh;padding:24px;display:grid}.password-card{background:#fff;border:1px solid #d7e1dc;border-radius:16px;width:min(100%,760px);padding:44px;box-shadow:0 18px 48px #1b41341a}.password-card h1{margin:0;font-size:34px}.form-actions,.session-actions{justify-content:flex-end;gap:12px;display:flex}.form-actions .button{margin-top:6px}.session-card{background:#fff;border:1px solid #d7e1dc;border-radius:16px;width:min(100%,680px);padding:44px;box-shadow:0 18px 48px #1b41341a}.session-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0;display:grid}.session-facts div{background:#f1f5f2;border-radius:10px;padding:15px}.session-facts dt{color:#687b72;font-size:13px}.session-facts dd{margin:5px 0 0;font-weight:700}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-intro{min-height:46vh;padding:38px 26px}.login-intro h1{font-size:clamp(38px,11vw,58px)}.platform-login{margin-top:42px}.login-panel{padding:48px 24px 64px}}@media (width<=560px){.session-card,.password-card{padding:28px 22px}.session-facts{grid-template-columns:1fr}}.admin-page{max-width:1180px;margin:0 auto;padding:36px 28px 72px}.admin-page--embedded{max-width:none;padding:28px 0 72px}.page-header,.header-actions,.search-row,.row-actions{align-items:center;gap:12px;display:flex}.page-header{justify-content:space-between}.page-header h1{margin:0}.page-description{color:#697973;max-width:880px;margin:8px 0 0;line-height:1.65}.header-actions .button,.search-row .button,.row-actions button{margin:0}.search-row{margin:28px 0 18px}.search-row input{max-width:420px;margin:0}.table-wrap{background:#fff;border:1px solid #d8e2dd;border-radius:12px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:900px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e4eae7;padding:14px 12px}th{color:#596f65;background:#f5f8f6;font-size:13px}td small{color:#718079;margin-top:4px;display:block}.row-actions{flex-wrap:wrap}.row-actions button{color:#176344;cursor:pointer;background:0 0;border:0;padding:4px 7px}.link-button{color:#176344;cursor:pointer;background:0 0;border:0;margin-top:5px;padding:0;display:block}.empty-state{text-align:center;color:#687970;border:1px dashed #cad6d0;border-radius:12px;padding:36px}.modal-backdrop{z-index:10;background:#0921198c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:min(100%,620px);max-height:calc(100vh - 48px);padding:30px;overflow:auto;box-shadow:0 22px 70px #0000003d}.modal h2{margin-top:0}.credential-modal dl{background:#f2f5f3;border-radius:10px;grid-template-columns:90px 1fr;gap:12px;padding:18px;display:grid}.credential-modal dd{margin:0}.temporary-password{word-break:break-all;font-family:ui-monospace,Consolas,monospace;font-weight:700}.role-options{border:1px solid #d8e2dd;border-radius:10px;gap:10px;margin:12px 0 24px;padding:16px;display:grid}.role-options legend{padding:0 6px;font-weight:700}.role-options label{grid-template-columns:22px 1fr;margin:0;display:grid}.role-options input{width:17px;height:17px;margin:2px 0 0}.role-options small{color:#718079;grid-column:2;font-weight:400}.role-layout{grid-template-columns:minmax(280px,.85fr) minmax(460px,1.15fr);gap:24px;margin-top:24px;display:grid}.role-list{gap:10px;display:grid}.role-card{cursor:pointer;background:#fff;border:1px solid #d8e2dd;border-radius:11px;padding:16px}.role-card--selected{border-color:#176344;box-shadow:0 0 0 2px #1763441f}.role-card strong{margin-right:8px}.role-card code{color:#176344;margin-top:6px;display:block}.role-card p{color:#65776f;margin:8px 0}.role-card small{color:#718079}.tag{color:#355e4d;background:#e5eee9;border-radius:99px;padding:2px 7px;font-size:12px}.role-editor{background:#fff;border:1px solid #d8e2dd;border-radius:12px;align-self:start;margin:28px 0 0;padding:24px}.role-editor h2{margin-top:0}.role-editor textarea{resize:vertical;border:1px solid #c9d5cf;border-radius:9px;min-height:84px;margin-bottom:22px;padding:12px}.permission-group{border:1px solid #d8e2dd;border-radius:10px;gap:14px;margin-bottom:18px;padding:16px;display:grid}.permission-group legend{padding:0 7px;font-weight:750}.permission-item>label{grid-template-columns:22px 1fr;margin:0;display:grid}.permission-item input{width:17px;height:17px;margin:2px 0 0}.permission-item span small{color:#718079;margin-top:3px;font-weight:400;display:block}.scope-editor{background:#f5f8f6;border-radius:8px;flex-wrap:wrap;gap:12px;margin:9px 0 0 24px;padding:10px;display:flex}.scope-editor label{gap:6px;margin:0;display:flex}.revision-history{color:#355e4d;min-width:220px;margin-top:8px}.revision-history summary{cursor:pointer;font-size:12px;font-weight:750}.revision-history div{background:#f1f5f2;border-radius:7px;margin-top:8px;padding:9px}.revision-history strong,.revision-history small{display:block}.company-options{flex-basis:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}@media (width<=880px){.role-layout{grid-template-columns:1fr}.role-editor{margin-top:0}}.dashboard-shell{background:#f3f5ef;grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.dashboard-sidebar{color:#fff;background:#123b34;flex-direction:column;height:100vh;padding:28px 18px;display:flex;position:sticky;top:0}.dashboard-brand{align-items:center;gap:12px;padding:0 8px;display:flex}.dashboard-brand>span{color:#173f37;background:#d5efa9;border-radius:12px;flex:0 0 40px;place-items:center;width:40px;height:40px;font-weight:900;display:grid}.dashboard-brand strong,.dashboard-brand small,.dashboard-profile strong,.dashboard-profile small{display:block}.dashboard-brand small,.dashboard-profile small{color:#9eb9b1;margin-top:3px;font-size:12px}.dashboard-nav{gap:5px;margin-top:26px;display:grid}.dashboard-nav button{color:#bdd0ca;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;width:100%;padding:12px 14px}.dashboard-nav button:hover,.dashboard-nav button.active{color:#fff;background:#ffffff14}.dashboard-sidebar-bottom{border-top:1px solid #ffffff18;margin-top:auto;padding-top:18px}.dashboard-settings{flex-wrap:wrap;gap:5px;margin-bottom:16px;display:flex}.dashboard-settings button,.dashboard-profile-actions button{color:#bdd0ca;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 9px}.dashboard-settings button:hover,.dashboard-profile-actions button:hover{color:#fff;background:#ffffff12}.dashboard-settings button.active{color:#fff;background:#ffffff14;box-shadow:inset 3px 0 #8bc3b2}.dashboard-profile{align-items:center;gap:10px;min-width:0;display:flex}.dashboard-profile>div:last-child{min-width:0}.dashboard-profile strong,.dashboard-profile small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-avatar{color:#173f37;background:#d5efa9;border-radius:50%;flex:0 0 38px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.dashboard-profile-actions{gap:4px;margin:9px 0 0 40px;display:flex}.settings-shell{background:#f3f5ef;grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.settings-main{min-width:0;padding:30px clamp(28px,4vw,62px) 0}.settings-tabs,.settings-subtabs{border-bottom:1px solid #cbd6d1;gap:24px;display:flex}.settings-tabs button,.settings-subtabs button{color:#19352e;cursor:pointer;background:0 0;border:0;padding:12px 2px 13px;font-size:15px;font-weight:750;position:relative}.settings-tabs button.active,.settings-subtabs button.active{color:#0d624b}.settings-tabs button.active:after,.settings-subtabs button.active:after{content:"";background:#0d624b;height:2px;position:absolute;bottom:-1px;left:0;right:0}.settings-subtabs{gap:22px;margin-top:18px}.settings-subtabs button{padding-block:10px;font-size:14px}.module-page{background:#f3f5ef;min-height:100vh;padding:34px clamp(28px,4vw,62px) 0}.module-page-header{justify-content:space-between;align-items:center;gap:24px;max-width:1180px;margin:0 auto 18px;display:flex}.module-page-header h1{margin:5px 0 0}.module-page-header p:last-child{color:#697973;margin:8px 0 0}.module-tabs{max-width:1180px;margin-inline:auto}.module-page>.admin-page{padding-inline:0}.dashboard-content{min-width:0;padding:54px clamp(30px,5vw,78px);overflow:hidden}.dashboard-module-content{background:#f3f5ef;min-width:0;overflow:hidden}.dashboard-module-content>:is(.module-page,.admin-page,.settings-main,.password-page){max-width:none}.settings-main--embedded{min-height:100vh;padding:34px clamp(28px,4vw,62px) 72px}.dashboard-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;display:flex}.dashboard-heading h1{letter-spacing:-.035em;margin:8px 0 0;font-size:36px}.dashboard-heading p:last-child{color:#697973;margin:10px 0 0}.dashboard-heading-actions{align-items:center;gap:10px;display:flex}.dashboard-heading-actions button{color:#fff;cursor:pointer;background:#1d5b4d;border:0;border-radius:10px;padding:12px 16px;font-weight:800}.dashboard-heading-actions button:disabled{opacity:.55;cursor:default}.dashboard-status{color:#477165;background:#e3ecde;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:800}.dashboard-status--bad{color:#8c3b35;background:#f4e2df}.dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.dashboard-metrics article,.work-card,.dashboard-summary{background:#fff;border:1px solid #e0e6de;border-radius:16px;padding:24px;box-shadow:0 10px 30px #26443a08}.dashboard-metrics span,.dashboard-metrics small{color:#72817c;display:block}.dashboard-metrics strong{margin:16px 0 8px;font-size:25px;display:block}.status-ok{color:#176344}.status-bad{color:#962d2d}.success-message{color:#15563c;background:#eff9f3;border:1px solid #b9dacb;border-radius:9px;margin-top:18px;padding:12px 14px}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.work-card{min-height:226px;position:relative}.work-number{color:#76a08d;letter-spacing:.12em;font:800 13px/1 ui-monospace,monospace}.work-card h2{margin:26px 0 8px;font-size:20px}.work-card p{color:#697973;min-height:72px;margin:0 0 20px;line-height:1.7}.work-card button{color:#1d5b4d;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.work-card-actions{flex-wrap:wrap;gap:14px;display:flex}.dashboard-summary{grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);align-items:center;gap:30px;margin-top:24px;display:grid}.dashboard-summary h2{margin:7px 0 0;font-size:22px}.dashboard-summary dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;display:grid}.dashboard-summary dl div{min-width:0}.dashboard-summary dt{color:#72817c;font-size:12px}.dashboard-summary dd{overflow-wrap:anywhere;margin:7px 0 0;font-weight:750}.workspace-placeholder{place-items:center;min-height:100vh;padding:24px;display:grid}.workspace-placeholder section{background:#fff;border:1px solid #d8e2dd;border-radius:14px;width:min(100%,680px);padding:40px}@media (width<=1120px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-summary{grid-template-columns:1fr}}@media (width<=900px){.dashboard-shell,.settings-shell{grid-template-columns:1fr}.dashboard-sidebar{height:auto;position:static}.dashboard-nav{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.dashboard-sidebar-bottom{margin-top:24px}.dashboard-profile-actions{margin-left:40px}.dashboard-content{padding:38px 24px 64px}.settings-main{padding:22px 24px 0}.dashboard-metrics,.work-grid,.dashboard-summary dl{grid-template-columns:1fr}}@media (width<=620px){.settings-tabs{gap:14px;overflow-x:auto}.settings-tabs button{flex:none}.module-page{padding-inline:18px}.module-page-header,.dashboard-heading{flex-direction:column;align-items:flex-start}.dashboard-heading-actions{flex-wrap:wrap}.dashboard-content{padding-inline:18px}}.item-filters{flex-wrap:wrap;gap:12px;margin:26px 0;display:flex}.item-filters input{width:min(420px,100%);margin:0}.item-filters select,.item-editor select{color:#18352c;background:#fff;border:1px solid #c9d5cf;border-radius:9px;min-height:46px;padding:0 12px}.item-section{margin-top:28px}.item-section h2{align-items:baseline;gap:10px;font-size:20px;display:flex}.item-section h2 small{color:#718079;font-size:13px;font-weight:500}.payroll-item-table{min-width:1040px}.row-actions button:disabled{color:#9ba8a2;cursor:not-allowed}.inline-check{align-items:center;gap:7px;margin:0;font-weight:500;display:flex}.inline-check input{width:17px;height:17px;margin:0}.item-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.item-editor label{display:grid}.item-editor input,.item-editor select{margin-top:7px}.metric-options{grid-column:1/-1;grid-template-columns:repeat(2,1fr);gap:12px;margin:4px 0 22px;display:grid}.metric-options label{border:1px solid #d8e2dd;border-radius:9px;align-items:center;gap:9px;padding:14px;display:flex}.metric-options input{width:17px;height:17px;margin:0}.item-editor .form-actions{grid-column:1/-1}@media (width<=620px){.item-editor,.metric-options{grid-template-columns:1fr}}.format-tabs{border-bottom:1px solid #d8e2dd;gap:8px;margin:28px 0 18px;display:flex}.format-tab{color:#65776f;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:11px 18px;font-weight:750}.format-tab--active{color:#176344;border-bottom-color:#176344}.applicable-format{background:#edf4f0;border-radius:11px;justify-content:space-between;align-items:end;gap:18px;margin-bottom:22px;padding:16px 18px;display:flex}.applicable-format label{gap:6px;margin:0;display:grid}.applicable-format input{width:180px;margin:0}.applicable-format p{color:#355e4d;margin:0 0 12px;font-weight:700}.format-table{min-width:820px}.field-sequence{flex-wrap:wrap;gap:7px;display:flex}.field-chip{color:#355e4d;background:#e5eee9;border-radius:99px;padding:4px 8px;font-size:12px}.field-chip--legacy{color:#765b2d;background:#f6eddb}.format-modal{width:min(100%,980px)}.format-field-options{border:1px solid #d8e2dd;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 22px;padding:16px;display:grid}.format-field-options legend{padding:0 7px;font-weight:750}.format-field-options label{align-items:flex-start;gap:8px;margin:0;font-weight:500;display:flex}.format-field-options input{width:17px;height:17px;margin:1px 0 0}.format-order{gap:7px;margin-bottom:22px;display:grid}.format-order h3,.format-preview h3{margin:0 0 8px;font-size:16px}.format-order>div{border:1px solid #e0e7e3;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;display:flex}.format-order button{color:#176344;cursor:pointer;background:0 0;border:0;margin-left:6px;padding:3px 6px}.format-order button:disabled{color:#9ba8a2;cursor:not-allowed}.format-preview{margin-bottom:20px}.format-preview table{min-width:max-content}@media (width<=620px){.applicable-format{display:grid}}.profile-page h1 small{color:#718079;font-size:16px;font-weight:500}.profile-page select,.standard-form select{color:#18352c;background:#fff;border:1px solid #c9d5cf;border-radius:9px;min-height:46px;padding:0 12px}.profile-page textarea{resize:vertical;border:1px solid #c9d5cf;border-radius:9px;min-height:86px;padding:11px}.file-button{cursor:pointer;align-items:center;display:inline-flex}.file-button input{display:none}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f4f8f6}.profile-facts{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:26px 0 18px;display:grid}.profile-facts div{background:#fff;border:1px solid #d8e2dd;border-radius:10px;padding:15px}.profile-facts span{color:#718079;margin-bottom:6px;font-size:12px;display:block}.profile-facts strong{line-height:1.45}.profile-actions{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.profile-actions button,.check-card button,.technical-details button{color:#176344;cursor:pointer;background:#e5eee9;border:0;border-radius:7px;padding:8px 11px}.profile-actions button:disabled{color:#9ba8a2;cursor:not-allowed}.check-card{background:#eff9f3;border:1px solid #b9dacb;border-radius:11px;margin:16px 0;padding:18px}.check-card h2{margin:0 0 8px;font-size:17px}.technical-details{border:1px solid #d8e2dd;border-radius:9px;margin:14px 0 26px;padding:12px 16px}.technical-details summary{cursor:pointer;font-weight:700}.detail-section{margin-top:34px}.section-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.section-heading .button{margin:0}.standard-modal{width:min(100%,880px)}.standard-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.standard-form label{display:grid}.standard-form input,.standard-form select{margin-top:7px}.standard-form .wide-field{grid-column:1/-1}@media (width<=840px){.profile-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.profile-facts,.standard-form{grid-template-columns:1fr}.standard-form .wide-field{grid-column:auto}}.payroll-standards-shell{padding-top:30px;padding-bottom:72px}.module-navigation{border-bottom:1px solid #cbd6d1;justify-content:space-between;align-items:flex-start;gap:18px;max-width:1180px;margin:0 auto;display:flex}.module-navigation .module-tabs{border-bottom:0;flex:1;margin:0}.module-navigation .module-back-button{flex:none;margin-top:1px}.payroll-standards-shell>.admin-page{padding-top:24px}.payroll-standards-shell :is(.payroll-item-page,.output-format-page) .header-actions>button:first-child{display:none}.primary-button,.secondary-button,.payroll-panel button:not(.payroll-row-link):not(.danger-text-button),.payroll-profile-detail button:not(.payroll-row-link):not(.danger-text-button){min-height:36px;font:inherit;cursor:pointer;border:1px solid #d5ddd8;border-radius:7px;padding:7px 11px;font-weight:700}.primary-button{color:#fff;background:#1d5b4d;border-color:#1d5b4d}.secondary-button,.payroll-panel button:not(.primary-button):not(.payroll-row-link):not(.danger-text-button),.payroll-profile-detail button:not(.primary-button):not(.payroll-row-link):not(.danger-text-button){color:#315e50;background:#fff}.primary-button:not(:disabled):hover{background:#164b40}.secondary-button:not(:disabled):hover,.payroll-panel button:not(.primary-button):not(.payroll-row-link):not(.danger-text-button):not(:disabled):hover,.payroll-profile-detail button:not(.primary-button):not(.payroll-row-link):not(.danger-text-button):not(:disabled):hover{background:#f3f7f5;border-color:#93aaa2}.primary-button:disabled,.secondary-button:disabled,.danger-text-button:disabled{opacity:.5;cursor:not-allowed}.danger-text-button{color:#8a342d;min-height:32px;font:inherit;cursor:pointer;background:#fff;border:1px solid #e3c4bf;border-radius:7px;padding:5px 8px;font-weight:700}.page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.page-heading h2{letter-spacing:-.02em;margin:5px 0 0;font-size:28px;line-height:1.25}.page-summary{color:#697973;margin:6px 0 0}.heading-actions,.payroll-section-actions,.dialog-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.table-card,.payroll-panel{background:#fff;border:1px solid #d8e2dd;border-radius:10px;padding:14px}.payroll-panel{margin-bottom:12px}.payroll-section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.payroll-section-heading h3,.payroll-section-heading p{margin:0}.payroll-section-heading h3{font-size:18px}.payroll-section-heading p{color:#697973;margin-top:5px;font-size:13px;line-height:1.5}.payroll-list-filters{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:12px;display:flex}.payroll-list-filters label,.payroll-drawer label{color:#52645e;gap:6px;margin:0;font-size:13px;font-weight:600;display:grid}.payroll-list-filters input,.payroll-list-filters select,.payroll-drawer input:not([type=checkbox]):not([type=radio]):not([type=file]),.payroll-drawer select,.payroll-drawer textarea{color:#18332d;background:#fff;border:1px solid #c9d5cf;border-radius:7px;min-width:0;height:auto;min-height:36px;margin:0;padding:8px 10px}.payroll-list-filters input{width:min(340px,100%)}.payroll-profile-layout{align-items:start;gap:12px;display:grid}.payroll-profile-list tbody tr{cursor:pointer}.payroll-profile-list tbody tr:hover{background:#edf5ef}.payroll-profile-list table{font-size:13px}.payroll-profile-list th{font-size:12px}.payroll-profile-list :is(th,td){padding:10px 12px}.table-scroll{border:1px solid #d8e2dd;border-radius:8px;min-width:0;max-width:100%;overflow:auto}.table-scroll table{border:0}.table-scroll tr:last-child td{border-bottom:0}.payroll-row-link{color:#1d5b4d;min-height:auto;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.payroll-empty-row{color:#697973;text-align:center;padding:30px!important}.profile-status-badge{color:#586b64;background:#eef2ef;border-radius:7px;padding:4px 7px;font-size:12px;font-weight:700;display:inline-block}.profile-status-badge--current{color:#276352;background:#e3ecde}.profile-status-badge--updated,.profile-status-badge--incomplete{color:#8a4b1b;background:#f8ead7}.payroll-selected-context{z-index:4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border:1px solid #cfdcd5;border-radius:9px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;padding:10px 14px;display:flex;position:sticky;top:0;box-shadow:0 5px 16px #2045380f}.payroll-selected-context strong,.payroll-selected-context span{display:block}.payroll-selected-context span{color:#697973;margin-top:3px;font-size:13px}.payroll-selected-context>span{color:#315e50;margin:0;font-weight:700}.payroll-profile-facts{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0;display:grid}.payroll-profile-facts div{background:#f7f9f6;border:1px solid #e2e7e9;border-radius:7px;padding:9px 10px}.payroll-profile-facts dt{color:#71807a;font-size:12px;font-weight:700}.payroll-profile-facts dd{overflow-wrap:anywhere;margin:5px 0 0}.payroll-profile-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.payroll-profile-actions-grid article{background:#f7f9f6;border:1px solid #d8e2dd;border-radius:7px;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:10px 12px;display:flex}.payroll-profile-actions-grid article.danger{background:#fffaf8;border-color:#e9c6c1}.payroll-profile-actions-grid strong,.payroll-profile-actions-grid small{display:block}.payroll-profile-actions-grid small{color:#697973;margin-top:2px;font-size:12px;line-height:1.45}.payroll-technical-details{color:#65746f;margin-top:14px}.payroll-technical-details summary{color:#315e50;cursor:pointer;font-weight:700}.payroll-technical-details dl{gap:8px;margin-bottom:0;display:grid}.payroll-technical-details dd{overflow-wrap:anywhere;margin:3px 0 0}.payroll-standards-table{table-layout:fixed;min-width:1050px}.payroll-standards-table :is(th,td):first-child,.payroll-standards-table :is(th,td):nth-child(2),.payroll-standards-table :is(th,td):nth-child(3){width:14%}.payroll-standards-table :is(th,td):nth-child(4){width:18%}.payroll-standards-table :is(th,td):nth-child(5),.payroll-standards-table :is(th,td):nth-child(6){width:14%}.payroll-standards-table :is(th,td):nth-child(7){width:12%}.payroll-standard-actions{flex-wrap:wrap;gap:6px;display:flex}.payroll-standard-actions button:not(.danger-text-button){color:#315e50;background:#fff;border:1px solid #d5ddd8;border-radius:7px;min-height:32px;padding:5px 8px;font-weight:700}.payroll-initial-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.payroll-initial-actions .button{margin:0}.payroll-drawer-backdrop{z-index:20;background:#10261f80;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.payroll-drawer{color:#18332d;background:#fff;border:1px solid #c9d5cf;border-radius:10px;flex-direction:column;width:min(720px,100vw - 48px);max-height:calc(100dvh - 48px);display:flex;overflow:hidden;box-shadow:0 18px 48px #0e211b2e}.payroll-drawer-header{border-bottom:1px solid #e2e8e4;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px;display:flex}.payroll-drawer-header h2,.payroll-drawer-header p{margin:0}.payroll-drawer-header p{color:#71807a;margin-top:7px;line-height:1.5}.payroll-drawer-body{flex:1;min-height:0;padding:16px 18px 22px;overflow:auto}.payroll-drawer-form{gap:15px;margin:0;display:grid}.payroll-form-grid{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;display:grid}.payroll-form-grid .wide{grid-column:1/-1}.payroll-drawer textarea{resize:vertical;min-height:100px}.payroll-drawer label small{color:#71807a;font-weight:400}.icon-button{color:#52645e;cursor:pointer;background:#fff;border:1px solid #d5ddd8;border-radius:7px;flex:0 0 38px;min-height:38px;font-size:22px}@media (width<=840px){.payroll-profile-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.module-navigation,.page-heading,.payroll-section-heading{flex-direction:column;align-items:stretch}.module-navigation{border-bottom:0}.module-navigation .module-tabs{border-bottom:1px solid #cbd6d1}.module-navigation .module-back-button{align-self:flex-start}.heading-actions{flex-wrap:wrap;width:100%}.heading-actions button{flex:1}.payroll-selected-context{position:static}.payroll-profile-actions-grid,.payroll-profile-facts,.payroll-form-grid{grid-template-columns:1fr}.payroll-form-grid .wide{grid-column:auto}.payroll-drawer{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}}.monthly-payroll-page{color:#18332d;background:#f3f5ef;width:100%;min-width:0;max-width:1480px;min-height:100vh;padding:36px clamp(24px,4vw,58px) 72px}.payroll-context-bar{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border:1px solid #d8e2dd;border-radius:7px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin-bottom:12px;padding:9px 12px;display:flex;position:sticky;top:10px}.payroll-context-bar label{color:#52645e;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;display:flex}.payroll-context-bar select{color:#18332d;background:#fff;border:1px solid #c9d5cf;border-radius:7px;min-width:190px;min-height:36px;padding:7px 30px 7px 10px}.payroll-context-summary{flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.payroll-context-bar span{color:#64736d;font-size:13px}.payroll-status-pill{background:#fff0c7;border-radius:999px;padding:4px 8px;font-weight:700;color:#715817!important}.payroll-status-pill.locked,.payroll-status-pill.archived{background:#e3ecde;color:#276352!important}.payroll-tabs{border-bottom:1px solid #d8e2dd;gap:20px;margin-bottom:16px;padding:0;display:flex;overflow-x:auto}.payroll-tabs button{color:#52645e;min-height:40px;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;padding:0 2px;font-weight:600}.payroll-tabs button.active{color:#1d5b4d;border-bottom-color:#1d5b4d}.payroll-empty-state{color:#697973;text-align:center;background:#fff;border:1px dashed #c8d5cf;border-radius:10px;justify-items:center;gap:8px;padding:42px 24px;display:grid}.payroll-empty-state strong{color:#18332d;font-size:18px}.payroll-empty-state .primary-button{margin-top:8px}.payroll-empty-state.compact{margin:12px;padding:28px}.monthly-rows-card{min-width:0;padding:16px}.monthly-rows-card>.payroll-section-heading{align-items:center;min-height:44px;margin-bottom:12px}.monthly-sheet-count{color:#697973;margin:3px 0 0;font-size:13px}.payroll-table-filters{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.payroll-table-filters input,.payroll-table-filters select{color:#18332d;background:#fff;border:1px solid #c9d5cf;border-radius:7px;min-height:36px;margin:0;padding:7px 10px}.payroll-table-filters .payroll-search{width:240px}.payroll-table-filters select{width:150px}.monthly-sheet-toolbar{border-top:1px solid #e5ebe7;border-bottom:1px solid #e5ebe7;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 12px;padding:12px 0;display:flex}.monthly-action-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.monthly-primary-action{margin-left:auto}.monthly-payroll-page .monthly-sheet-toolbar button,.monthly-payroll-page .monthly-sheet-toolbar .file-button,.monthly-payroll-page .allocation-row button{color:#315e50;min-height:34px;font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d5ddd8;border-radius:7px;justify-content:center;align-items:center;margin:0;padding:6px 12px;font-size:13px;font-weight:600;line-height:20px;display:inline-flex}.monthly-payroll-page .monthly-sheet-toolbar .primary-button{color:#fff;background:#176b55;border-color:#176b55}.monthly-payroll-page .monthly-sheet-toolbar .danger-text-button,.monthly-payroll-page .allocation-row .danger-text-button{color:#886057;background:0 0;border-color:#0000}.monthly-payroll-page button:disabled{cursor:not-allowed;opacity:.5}.personnel-preview{color:#315e50;background:#eff9f3;border:1px solid #b9dacb;border-radius:7px;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:12px;padding:11px 13px;display:flex}.personnel-preview button{margin-left:auto}.payroll-table-scroll{border:1px solid #d8e2dd;border-radius:8px;min-width:0;max-width:100%;max-height:min(62vh,720px);overflow:auto}.payroll-table-scroll table{border-collapse:separate;border-spacing:0;min-width:1180px;font-size:13px}.payroll-table-scroll th,.payroll-table-scroll td{white-space:nowrap;background:#fff;border-bottom:1px solid #e5eae8;border-right:1px solid #e5eae8;padding:9px 10px}.payroll-table-scroll th{z-index:2;color:#52645e;text-align:center;background:#eef3f0;position:sticky;top:0}.payroll-table-scroll .sticky-left{z-index:3;background:#fff;min-width:155px;position:sticky;left:0}.payroll-table-scroll th.sticky-left{z-index:4;background:#e6efeb}.payroll-table-scroll tbody tr:hover td,.payroll-table-scroll tbody tr:hover td.sticky-left{background:#f7faf9}.payroll-table-scroll td small{color:#6a7771;margin-top:3px;display:block}.monthly-earnings-sheet .money-column{text-align:right;font-variant-numeric:tabular-nums}.payroll-cell-input{text-align:right;width:92px;height:32px;min-height:32px;margin:0;padding:4px 8px}.monthly-row-actions{min-width:96px;margin-top:5px}.payroll-inline-actions{white-space:nowrap;align-items:center;display:flex}.payroll-inline-actions button,.monthly-payroll-page .payroll-inline-actions button{color:#1d5b4d;background:0 0;border:0;border-radius:0;min-height:28px;margin:0;padding:3px 9px;font-weight:600}.payroll-inline-actions button:first-child{padding-left:0}.payroll-inline-actions button+button{border-left:1px solid #d9e0dc}.monthly-allocation-card .allocation-list{padding:0}.monthly-allocation-card .allocation-row{background:#fff;border-radius:7px}.monthly-allocation-card .allocation-row>header{background:#f7f9f6}.monthly-allocation-card :is(select,input){background:#fff;border:1px solid #c9d5cf;border-radius:7px;min-height:36px;margin:0;padding:7px 9px}.monthly-form-grid{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;display:grid}.monthly-form-grid label{color:#52645e;gap:6px;margin:0;font-size:13px;font-weight:600;display:grid}.monthly-form-grid .wide{grid-column:1/-1}.monthly-small-drawer{width:min(520px,100vw - 48px)}@media (width<=900px){.monthly-payroll-page{padding:28px 20px 60px}.monthly-rows-card>.payroll-section-heading{flex-direction:column;align-items:stretch}.payroll-table-filters{flex-wrap:wrap}.payroll-table-filters .payroll-search{width:min(240px,100%)}.monthly-primary-action{margin-left:0}.allocation-row>header{grid-template-columns:1fr 1fr}}@media (width<=620px){.payroll-context-bar{flex-direction:column;align-items:stretch;position:static}.payroll-context-bar label{flex-direction:column;align-items:stretch}.payroll-context-bar select{width:100%}.payroll-context-summary{display:grid}.monthly-form-grid{grid-template-columns:1fr}.monthly-form-grid .wide{grid-column:auto}}.payroll-results-page{color:#18332d;background:#f3f5ef;width:100%;min-width:0;max-width:1320px;min-height:100vh;padding:36px clamp(24px,4vw,58px) 72px}.payroll-result-panel{padding:16px}.payroll-result-table{min-width:820px}.result-detail-table{min-width:1050px}.payroll-result-table td{font-variant-numeric:tabular-nums}.payroll-result-table td small{color:#6a7771;margin-top:3px;display:block}.payroll-result-table .money-column{text-align:right;white-space:nowrap}.result-search{color:#18332d;background:#fff;border:1px solid #c9d5cf;border-radius:7px;width:min(320px,100%);min-height:36px;margin:0;padding:7px 10px}.payroll-archive-proof{color:#52645e;background:#fff;border:1px solid #d8e2dd;border-radius:7px;margin:0 0 12px;padding:10px 12px}.payroll-archive-proof summary{color:#315e50;cursor:pointer;font-weight:700}.payroll-archive-proof code{overflow-wrap:anywhere;margin-top:8px;display:block}.payroll-output-preview{border-top:1px solid #e1e7e3;margin-top:16px;padding-top:16px}.payroll-output-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.payroll-output-actions .secondary-button{min-height:34px}.payroll-payslip-panel>.payroll-section-heading,.payroll-payslip-workspace,.payroll-payslip-panel>.payroll-output-preview{width:min(920px,100%);margin-left:auto;margin-right:auto}.payroll-payslip-workspace{background:#f7f9f6;border:1px solid #d8e2dd;border-radius:10px;overflow:hidden}.payroll-payslip-scope{border:0;margin:0;padding:18px 20px 20px}.payroll-payslip-scope legend{color:#18332d;padding:0;font-size:14px;font-weight:700}.payroll-payslip-scope>p{color:#697973;margin:2px 0 14px;font-size:13px;line-height:1.5}.payroll-payslip-selectors{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.payroll-payslip-selectors label{color:#52645e;gap:6px;margin:0;font-size:13px;font-weight:600;display:grid}.payroll-payslip-selectors select{color:#18332d;background:#fff;border:1px solid #c9d5cf;border-radius:7px;width:100%;min-width:0;min-height:36px;padding:7px 10px}.payroll-payslip-account-option{color:#18332d;cursor:pointer;background:#fff;border-top:1px solid #d8e2dd;grid-template-columns:auto 1fr;align-items:flex-start;gap:10px;margin:0;padding:14px 20px;display:grid}.payroll-payslip-account-option input{grid-row:1/3;width:16px;height:16px;margin:2px 0 0}.payroll-payslip-account-option small,.payroll-payslip-ready span{color:#697973;font-size:13px;font-weight:500;line-height:1.45}.payroll-payslip-ready{background:#f0f4f1;border-top:1px solid #d8e2dd;justify-content:space-between;align-items:center;gap:20px;padding:16px 20px;display:flex}.payroll-payslip-ready>div{gap:2px;min-width:0;display:grid}.payroll-payslip-ready small{color:#697973;font-size:12px}.payroll-payslip-ready strong{color:#18332d;font-size:15px}.payroll-payslip-ready.selected{background:#edf5f0}.payroll-payslip-ready .primary-button{flex:none;min-width:112px}.payroll-danger-zone{background:#fffaf8;border-color:#e9c6c1}.payroll-management-actions{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;display:grid}.payroll-management-actions article{background:#fff;border:1px solid #e5c8c4;border-radius:7px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:12px;min-height:140px;padding:14px;display:flex}.payroll-management-actions h3,.payroll-management-actions p{margin:0}.payroll-management-actions p{color:#71807a;margin-top:7px;line-height:1.55}.danger-button{color:#fff;min-height:36px;font:inherit;cursor:pointer;background:#9c4037;border:1px solid #9c4037;border-radius:7px;padding:7px 11px;font-weight:700}@media (width<=900px){.payroll-results-page{padding:28px 20px 60px}.payroll-result-panel>.payroll-section-heading{flex-direction:column;align-items:stretch}}@media (width<=700px){.payroll-payslip-selectors{grid-template-columns:1fr}.payroll-payslip-ready{flex-direction:column;align-items:stretch}.payroll-payslip-ready button,.payroll-output-actions{width:100%}.payroll-output-actions button{flex:1}}.payroll-cost-page{color:#18332d;background:#f3f5ef;width:100%;min-width:0;max-width:1320px;min-height:100vh;padding:36px clamp(24px,4vw,58px) 72px}.cost-filter-panel{padding:16px}.payroll-filter-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.payroll-filter-grid label{color:#52645e;gap:6px;margin:0;font-size:13px;font-weight:600;display:grid}.payroll-filter-grid input,.payroll-filter-grid select{color:#18332d;background:#fff;border:1px solid #c9d5cf;border-radius:7px;width:100%;min-width:0;min-height:36px;margin:0;padding:7px 10px}.cost-filter-grid{grid-template-columns:repeat(3,minmax(180px,1fr))}.payroll-primary-actions{flex-wrap:wrap;align-items:center;gap:9px;margin-top:16px;display:flex}.form-error{color:#802e25;margin:10px 0 0}.cost-result-context>.secondary-button{flex:none}.query-warning{color:#72591c;background:#fff9e9;border:1px solid #ead8a9;border-radius:7px;margin:0 0 12px;padding:9px 12px}.payroll-cost-results{padding:16px}.cost-result-search{color:#18332d;background:#fff;border:1px solid #c9d5cf;border-radius:7px;width:min(280px,100%);min-height:36px;margin:0;padding:7px 10px}.cost-summary-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px;margin-bottom:12px;display:grid}.cost-summary-grid article{background:#f7f9f6;border:1px solid #d8e2dd;border-radius:7px;padding:11px 12px}.cost-summary-grid span,.cost-summary-grid strong{display:block}.cost-summary-grid span{color:#71807a;font-size:12px}.cost-summary-grid strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin-top:5px;font-size:17px}.payroll-cost-table{min-width:1080px}.payroll-cost-table td{font-variant-numeric:tabular-nums}.payroll-cost-table td small{color:#6a7771;margin-top:3px;display:block}.payroll-cost-table .money-column{text-align:right;white-space:nowrap}.payroll-cost-table tfoot :is(th,td){z-index:1;background:#eef3f0;border-top:2px solid #cbd9d2;font-weight:700;position:sticky;bottom:0}@media (width<=900px){.payroll-cost-page{padding:28px 20px 60px}.cost-filter-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}.payroll-cost-results>.payroll-section-heading{flex-direction:column;align-items:stretch}.cost-summary-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media (width<=620px){.cost-filter-grid,.cost-summary-grid{grid-template-columns:1fr}.cost-result-context>.secondary-button{width:100%}}.result-toolbar,.result-actions,.cost-query{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.result-toolbar{background:#fff;border:1px solid #d8e2dd;border-radius:11px;justify-content:space-between;margin:26px 0 12px;padding:16px}.result-toolbar label,.cost-query label{color:#596f65;gap:6px;margin:0;font-size:13px;font-weight:700;display:grid}.result-toolbar select,.output-panel select,.cost-query select{background:#fff;border:1px solid #c9d5cf;border-radius:8px;min-height:42px;padding:0 11px}.result-actions button{color:#176344;cursor:pointer;background:#e5eee9;border:0;border-radius:7px;min-height:38px;padding:0 12px;font-weight:700}.result-actions button:disabled{opacity:.5;cursor:not-allowed}.archive-proof{overflow-wrap:anywhere;color:#355e4d;background:#edf4f0;border-radius:8px;padding:11px 14px}.output-panel{gap:18px;display:grid}.selection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.selection-grid fieldset{border:1px solid #d8e2dd;border-radius:10px;align-content:start;gap:9px;max-height:260px;padding:16px;display:grid;overflow:auto}.selection-grid legend{padding:0 7px;font-weight:700}.cost-query{background:#fff;border:1px solid #d8e2dd;border-radius:12px;margin:28px 0 14px;padding:18px}.cost-query input,.cost-query select{width:180px;margin:0}.query-warning{color:#72591c;background:#fff9e9;border:1px solid #ead8a9;border-radius:8px;padding:10px 13px}.hash-cell{overflow-wrap:anywhere;max-width:250px;font-size:11px;display:block}tfoot th{background:#edf4f0}@media print{body *{visibility:hidden}.printable-result,.printable-result *{visibility:visible}.printable-result{border:0;position:absolute;inset:0}}@media (width<=700px){.selection-grid{grid-template-columns:1fr}.cost-query{display:grid}}.utility-entries{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.upload-controls{align-items:end;gap:10px;display:flex}.upload-controls select,td select,.filter-grid select{background:#fff;border:1px solid #c9d5cf;border-radius:8px;min-height:42px;padding:0 10px}.plain-cell-button{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.attachment-preview{width:min(96vw,1200px);height:min(90vh,900px)}.attachment-preview img,.attachment-preview iframe{object-fit:contain;border:0;width:100%;height:calc(100% - 54px)}.pager{justify-content:center;align-items:center;gap:14px;margin:20px 0;display:flex}.pager button{color:#176344;background:#e5eee9;border:0;border-radius:7px;padding:7px 11px}.filter-grid{background:#fff;border:1px solid #d8e2dd;border-radius:12px;grid-template-columns:minmax(240px,1.5fr) repeat(2,minmax(160px,.7fr)) auto;align-items:end;gap:12px;margin:26px 0 18px;padding:18px;display:grid}.filter-grid label{color:#596f65;gap:6px;margin:0;font-size:13px;display:grid}.filter-grid input{margin:0}.filter-grid>button{color:#fff;background:#176344;border:0;border-radius:8px;min-height:42px;padding:0 16px;font-weight:700}.recycle-filters{grid-template-columns:repeat(4,minmax(150px,1fr)) auto}.audit-detail{background:#fff;border:1px solid #d8e2dd;border-radius:12px;margin-top:20px;padding:22px}.audit-detail h2{margin-top:0}.audit-detail dl{grid-template-columns:110px 1fr;gap:9px 14px;display:grid}.audit-detail dt{color:#65776f}.audit-detail dd{overflow-wrap:anywhere;margin:0}.audit-detail pre{color:#d8eee4;white-space:pre-wrap;overflow-wrap:anywhere;background:#13231d;border-radius:8px;max-height:320px;padding:14px;overflow:auto}.danger-button{color:#fff;cursor:pointer;background:#a12e2e;border:0;border-radius:8px;margin:10px 0;padding:9px 13px;font-weight:700}.danger-button:disabled{opacity:.5;cursor:not-allowed}.danger-modal label{gap:7px;margin-bottom:14px;display:grid}.danger-modal textarea{border:1px solid #c9d5cf;border-radius:8px;min-height:90px;padding:10px}@media (width<=780px){.attachment-toolbar,.upload-controls{display:grid}.filter-grid,.recycle-filters{grid-template-columns:1fr}}.attachment-management-page{color:#18332d;background:#f3f5ef;width:100%;min-width:0;max-width:1380px;min-height:100vh;padding:36px clamp(24px,4vw,58px) 72px}.attachment-count{color:#477165;white-space:nowrap;background:#e3ecde;border-radius:999px;padding:6px 10px;font-size:13px;font-weight:700}.attachment-control-panel,.attachment-list-panel{padding:16px}.attachment-toolbar{justify-content:space-between;align-items:end;gap:18px;margin:0;display:flex}.attachment-search,.upload-controls{flex-wrap:wrap;align-items:end;gap:9px;display:flex}.attachment-search{flex:420px}.upload-controls{flex:390px;justify-content:flex-end}.attachment-search label,.upload-controls label:not(.file-button),.attachment-reason-label{color:#52645e;gap:6px;margin:0;font-size:13px;font-weight:600;display:grid}.attachment-search label{flex:260px}.upload-controls label:not(.file-button){flex:240px;max-width:420px}.attachment-search input,.upload-controls select,.attachment-owner-editor,.attachment-reason-label textarea{color:#18332d;width:100%;min-width:0;min-height:36px;font:inherit;background:#fff;border:1px solid #c9d5cf;border-radius:7px;margin:0;padding:7px 10px}.attachment-management-page .file-button{color:#fff;white-space:nowrap;background:#1d5b4d;border-color:#1d5b4d;justify-content:center;min-height:36px;font-weight:700}.attachment-management-page .file-button.disabled{opacity:.5;cursor:not-allowed}.attachment-rules{color:#65746f;background:#f4f7f4;border-radius:7px;flex-wrap:wrap;align-items:center;gap:7px 16px;margin-top:14px;padding:10px 12px;font-size:12px;display:flex}.attachment-rules strong{color:#315e50}.attachment-rules span:before{content:"·";color:#8da199;margin-right:9px}.attachment-list-panel{min-width:0}.attachment-table-scroll{max-height:min(64vh,720px)}.attachment-table{table-layout:fixed;min-width:1120px}.attachment-table :is(th,td){padding:11px 12px}.attachment-table :is(th,td):first-child{width:58px}.attachment-table :is(th,td):nth-child(2){width:25%}.attachment-table :is(th,td):nth-child(3){width:90px}.attachment-table :is(th,td):nth-child(4){width:110px}.attachment-table :is(th,td):nth-child(5){width:20%}.attachment-table :is(th,td):nth-child(6){width:168px}.attachment-table :is(th,td):nth-child(7){width:220px}.attachment-table thead th{z-index:2;background:#eef3f0;position:sticky;top:0}.attachment-sequence{color:#71807a;font-variant-numeric:tabular-nums}.attachment-file-cell{overflow-wrap:anywhere}.attachment-file-meta{align-items:center;gap:7px;min-width:0;margin-top:7px;display:flex}.attachment-file-meta small{white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;overflow:hidden}.attachment-type-badge{color:#477165;background:#e3ecde;border-radius:5px;flex:none;padding:2px 5px;font:700 10px/1.4 ui-monospace,monospace}.attachment-owner strong,.attachment-owner small{display:block}.attachment-owner small{color:#718079;margin-top:3px}.attachment-owner:disabled{cursor:default}.attachment-row-actions{flex-wrap:wrap;align-items:center;gap:4px;min-width:190px;margin:0;display:flex}.attachment-row-actions button{min-height:28px;padding:4px 6px}.attachment-row-actions .danger-text-button{color:#8a342d}.attachment-pager{margin:14px 0 0}.attachment-pager button:disabled{opacity:.45;cursor:not-allowed}.attachment-dialog{width:min(620px,100vw - 48px)}.attachment-dialog-actions,.attachment-preview-footer{border-top:1px solid #e2e8e4;justify-content:flex-end;align-items:center;gap:9px;padding:13px 18px;display:flex}.attachment-duplicate-facts{gap:8px;margin:0;display:grid}.attachment-duplicate-facts div{background:#f5f7f5;border-radius:7px;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:10px 12px;display:grid}.attachment-duplicate-facts dt{color:#718079}.attachment-duplicate-facts dd{overflow-wrap:anywhere;margin:0;font-weight:700}.attachment-dialog-note{color:#697973;margin:14px 0 0;line-height:1.65}.attachment-reason-label textarea{resize:vertical;min-height:110px}.attachment-preview-backdrop{z-index:20}.attachment-preview{flex-direction:column;width:min(1200px,100vw - 48px);height:min(900px,100dvh - 48px);padding:0;display:flex;overflow:hidden}.attachment-preview-header{border-bottom:1px solid #e2e8e4;justify-content:space-between;align-items:flex-start;gap:16px;padding:15px 18px;display:flex}.attachment-preview-header>div{min-width:0}.attachment-preview-header h2,.attachment-preview-header p{overflow-wrap:anywhere;margin:0}.attachment-preview-header h2{font-size:18px}.attachment-preview-header p{color:#718079;margin-top:5px;font-size:12px}.attachment-preview-body{background:#eef1ef;flex:1;place-items:center;min-height:0;padding:14px;display:grid;overflow:auto}.attachment-preview-body img,.attachment-preview-body iframe{object-fit:contain;background:#fff;border:0;width:100%;height:100%;display:block}@media (width<=900px){.attachment-management-page{padding:28px 20px 60px}.attachment-toolbar{flex-direction:column;align-items:stretch}.upload-controls{justify-content:flex-start}}@media (width<=620px){.attachment-search,.upload-controls{grid-template-columns:1fr;width:100%;display:grid}.upload-controls label:not(.file-button){max-width:none}.attachment-management-page .file-button,.attachment-search button{width:100%}.attachment-rules{flex-direction:column;align-items:flex-start}.attachment-rules span:before{content:none}.attachment-dialog{width:calc(100vw - 24px)}.attachment-dialog-actions{flex-direction:column-reverse;align-items:stretch}.attachment-dialog-actions button{width:100%}.attachment-duplicate-facts div{grid-template-columns:1fr;gap:4px}.attachment-preview{width:calc(100vw - 16px);height:calc(100dvh - 16px)}}.payroll-payslip-selectors select[multiple]{min-height:150px;padding:8px}.payroll-payslip-selectors select[multiple] option{padding:6px 8px}.monthly-payroll-page .plain-cell-button:focus-visible{outline-offset:3px;outline:2px solid #247354}.monthly-payroll-page .allocation-group .plain-cell-button:disabled{opacity:1;cursor:default}.initialization-page{background:#f3f5ef;min-height:100vh;padding:48px clamp(20px,4vw,64px) 64px}.initialization-content{gap:28px;width:100%;max-width:1120px;margin:0 auto;display:grid}.initialization-heading h1{letter-spacing:-.03em;margin:0;font-size:clamp(28px,3vw,38px);line-height:1.3}.initialization-heading>p:last-child{color:#65776f;margin:12px 0 0;line-height:1.7}.initialization-banner{background:#f3f5ef;border-bottom:1px solid #d7e2db;justify-content:space-between;align-items:center;gap:24px;padding:24px clamp(20px,5vw,72px);display:flex}.initialization-banner h2{margin:0;font-size:22px}.initialization-banner p:last-child{color:#65776f;margin:8px 0 0;line-height:1.7}.initialization-banner>.button{flex-shrink:0;margin:0}.initialization-error{margin:24px!important}.initialization-guidance h2,.initialization-auth h2{margin:0;font-size:20px}.initialization-auth{max-width:640px}.initialization-auth form{margin-top:24px}.initialization-auth form .button{justify-self:start}.initialization-footer{border-top:1px solid #dbe4dd;padding-top:8px}.platform-access{gap:24px;width:100%;min-width:0;max-width:1120px;margin:0 auto;line-height:1.7;display:grid}.access-heading h2{margin:0;font-size:26px}.access-heading p{color:#65776f;margin:8px 0 0}.access-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.access-steps li{align-items:center;gap:10px;font-size:14px;font-weight:650;display:flex}.access-steps span{color:#1d5b4d;background:#e1eae4;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.access-card{background:#fff;border:1px solid #dce5df;border-radius:16px;min-width:0;padding:28px;line-height:1.7}.access-card h3{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:18px;line-height:1.6;display:flex}.access-card p{margin:12px 0}.access-card>:last-child{margin-bottom:0}.access-muted{color:#65776f}.access-hint{color:#65776f;font-size:13px;margin-top:16px!important}.access-file{gap:10px;margin:20px 0;font-size:14px;display:grid}.access-file input[type=file]{color:#65776f;background:#f8faf8;min-width:0;height:auto;min-height:54px;margin:0;padding:10px;font-size:14px;font-weight:400}.access-file input::file-selector-button{color:#1d5b4d;font:inherit;cursor:pointer;background:#fff;border:1px solid #cddbd3;border-radius:6px;margin-right:12px;padding:7px 12px}.access-file input:disabled::file-selector-button{cursor:not-allowed}.access-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.access-actions .button{margin:0;padding:10px 18px}.platform-access button:focus-visible,.initialization-page button:focus-visible,.initialization-banner button:focus-visible,.access-technical summary:focus-visible{outline-offset:3px;outline:3px solid #6d9d85}.access-message{color:#435b50;overflow-wrap:anywhere;background:#f3f7f4;border:1px solid #dce5df;border-radius:10px;margin:16px 0;padding:16px 18px;line-height:1.75}.access-message p{margin:6px 0}.access-message small{font-size:12px;display:block}.access-message--success{color:#23604b;background:#f0f8f3;border-color:#cfe5d7}.access-message--warning{color:#7a571e;background:#fff9ed;border-color:#eddcb8}.access-message--error{color:#9b3333;background:#fff4f3;border-color:#edcaca}.access-configurations{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;display:grid}.access-badge{color:#62756b;background:#f0f3f1;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.access-badge--active{color:#1d684b;background:#e6f3eb}.access-details{grid-template-columns:110px minmax(0,1fr);gap:14px 16px;margin:24px 0 0;font-size:14px;display:grid}.access-details dt{color:#6c7d74}.access-details dd{overflow-wrap:anywhere;min-width:0;margin:0}.access-details small{color:#7a887f;margin-top:4px;font-size:12px;display:block}.access-technical{color:#65776f;border-top:1px solid #e6ece8;margin-top:24px;padding-top:16px;font-size:13px}.access-technical summary{cursor:pointer;color:#38624f}.access-technical .access-details{margin-top:16px;font-size:12px}.access-evidence{margin:20px 0;padding:0;list-style:none}.access-evidence li{border-bottom:1px solid #e9eeeb;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;padding:14px 0;font-size:14px;display:flex}.access-evidence li:first-child{padding-top:0}.access-evidence strong{font-weight:600}.access-evidence span{color:#6c7d74;overflow-wrap:anywhere}@media (width<=900px){.access-configurations{grid-template-columns:minmax(0,1fr)}.access-details{grid-template-columns:140px minmax(0,1fr)}}@media (width<=600px){.initialization-page{padding:28px 16px 40px}.initialization-content,.platform-access{gap:20px}.initialization-banner{flex-direction:column;align-items:start;gap:16px;padding:24px 20px}.access-card{border-radius:12px;padding:20px}.access-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.access-steps li{gap:6px;font-size:12px}.access-steps span{width:26px;height:26px}.access-details{grid-template-columns:minmax(0,1fr);gap:4px}.access-details dd{margin-bottom:12px}.access-details dd:last-child{margin-bottom:0}.access-actions{gap:10px}.access-actions .button{padding:10px 14px;font-size:14px}.access-message{padding:14px;font-size:14px}}
