.section-tabs.settings-tabs{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;gap:28px;width:100%;margin:0 0 12px;padding:0;overflow-x:auto}.section-tabs.settings-tabs button{background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;min-height:44px;padding:0 1px}.section-tabs.settings-tabs button.active,.section-tabs.settings-tabs button:hover{color:var(--teal-dark);border-bottom-color:var(--teal);background:0 0}.map-picker{gap:10px;min-width:0}.clock-location-card{justify-self:start;width:min(100%,1180px);padding:20px}.clock-location-header{justify-content:space-between;align-items:start;gap:20px;margin-bottom:18px;display:flex}.clock-location-header h2,.clock-location-header p{margin:0}.clock-location-header p{margin-top:5px}.clock-location-modal{width:min(920px,100vw - 32px);max-height:calc(100vh - 32px);overflow:auto}.clock-location-form{gap:14px;min-width:0}.clock-location-fields{grid-template-columns:minmax(0,1fr) minmax(220px,.62fr);gap:12px;display:grid}.location-list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;min-width:0;display:grid}.location-item{border:1px solid var(--line);background:#fbfdfe;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.location-item strong{margin-bottom:8px;display:block}.location-item-actions{justify-items:end;gap:10px;display:grid}.location-item-actions .button{min-height:34px;padding:0 10px}.map-toolbar{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding:8px;display:flex}.map-toolbar .button{white-space:nowrap;min-height:36px;padding:0 11px}.map-toolbar>.button:not(.icon-button){flex:auto}.map-toolbar .danger-text:not(:disabled){color:var(--danger,#b42318)}.map-toolbar .icon-button{flex:0 0 36px;width:36px;min-height:36px;padding:0}.map-canvas{touch-action:none;-webkit-user-select:none;user-select:none;background:#dbe7ec;border:1px solid #c8d5de;border-radius:8px;width:100%;max-width:none;height:clamp(340px,36vw,470px);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff5c}.map-canvas-direct{cursor:grab}.map-canvas-direct:active{cursor:grabbing}.map-tile{-webkit-user-select:none;user-select:none;pointer-events:none;width:256px;height:256px;position:absolute}.map-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.map-overlay polygon{fill:#0f8b8d38;stroke:var(--teal);stroke-width:2px}.map-overlay polyline{fill:none;stroke:var(--teal);stroke-width:2px}.map-vertex{z-index:2;background:var(--coral);pointer-events:auto;cursor:move;border:3px solid #fff;border-radius:50%;width:30px;min-width:30px;height:30px;min-height:30px;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #10304057}.map-vertex.selected{border-color:var(--teal-dark);box-shadow:0 0 0 3px #ffffffeb,0 0 0 6px #0f8b8d73}.map-vertex:focus-visible{outline:3px solid var(--focus-ring,#71b7ff);outline-offset:4px}.map-footer{color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.map-footer span:last-child{text-align:right}.clock-location-form-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.clock-location-form-actions .checkbox-row{min-height:40px}.clock-location-form-actions .button{min-width:220px}.clock-location-empty{min-height:178px;color:var(--muted);text-align:center;background:#fbfdfe;border:1px dashed #c5d4de;border-radius:8px;align-content:center;justify-items:center;gap:10px;padding:24px;display:grid}.clock-location-empty svg{color:var(--teal)}.clock-location-empty p{max-width:240px;font-size:var(--text-body);margin:0;font-weight:700;line-height:1.35}@media (max-width:900px){.clock-location-card{width:100%}.location-list{grid-template-columns:1fr}}@media (max-width:720px){.clock-location-card{padding:16px}.clock-location-fields{grid-template-columns:1fr}.map-toolbar>.button:not(.icon-button){flex:150px}.clock-location-header{flex-direction:column;align-items:stretch}.clock-location-header .button{width:100%}.map-canvas{height:clamp(300px,52vh,420px)}.map-footer{justify-content:stretch;gap:4px;display:grid}.map-footer span:last-child{text-align:left}.clock-location-form-actions{flex-direction:column;align-items:stretch}.clock-location-form-actions .button{width:100%;min-width:0}}
.table-wrap{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:820px}.compact-table{table-layout:fixed;min-width:0}.compact-table th,.compact-table td{overflow-wrap:anywhere;padding:10px 9px}.compact-table th:first-child,.compact-table td:first-child{width:22%}.compact-table th:nth-child(2),.compact-table td:nth-child(2),.compact-table th:nth-child(3),.compact-table td:nth-child(3){width:18%}.compact-table th:nth-child(4),.compact-table td:nth-child(4){width:25%}.compact-table th:nth-child(5),.compact-table td:nth-child(5){width:17%}th,td{border-bottom:1px solid var(--line);text-align:left;font-size:var(--text-body);vertical-align:middle;padding:12px 14px}th{color:var(--muted);font-size:var(--text-sm);text-transform:uppercase;white-space:nowrap}tr:last-child td{border-bottom:0}.clickable-row{cursor:pointer}.clickable-row:hover,.clickable-row:focus{background:#f0fbfa;outline:none}.message{color:var(--ink);font-size:var(--text-md);background:#edf3f7;border-radius:8px;padding:10px 12px}.message.error{color:var(--red);background:#fff0ee}
.toast-region{z-index:80;pointer-events:none;gap:10px;width:min(420px,100vw - 36px);display:grid;position:fixed;top:18px;right:18px}.toast{color:var(--ink);pointer-events:auto;background:#fff;border:1px solid #b9e6d3;border-left:4px solid #1b8f72;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 12px 12px 14px;display:grid;box-shadow:0 18px 42px #0a1f2a2e}.toast.error{border-color:#f2b8b5 #f2b8b5 #f2b8b5 #c24135}.toast span{min-width:0;font-weight:800;line-height:1.35}.toast button{border:1px solid var(--line);width:30px;height:30px;color:var(--muted);background:#f8fbfc;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}
.payroll-compare{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.payroll-compare span{border:1px solid var(--line);color:var(--muted);font-size:var(--text-md);background:#f8fbfc;border-radius:8px;padding:8px 10px}.payroll-compare strong{color:var(--ink)}.payroll-drilldown{margin-top:14px}.payroll-drilldown h3,.payslip-document h3,.payslip-document h4{margin:0 0 8px}.payroll-drilldown pre,.payslip-document pre{max-height:240px;overflow:auto}.payslip-document{border:1px solid var(--line);break-inside:avoid;background:#fff;border-radius:8px;padding:18px}.payslip-document p{color:var(--muted);margin:4px 0}.payroll-workspace{gap:14px;display:grid}.payroll-console,.payroll-main,.payroll-empty-panel{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px;box-shadow:0 18px 42px #142d3c12}.payroll-empty-panel{border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;padding:18px 0 0}.payroll-console-head,.payroll-toolbar,.payslip-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.payroll-console h2,.payroll-run-context h2,.payroll-empty-panel h3,.audit-section h3{margin:0}.payroll-run-context{justify-content:space-between;align-items:center;gap:10px 18px;min-width:0;min-height:28px;padding:0;display:flex}.payroll-run-title{min-width:0;font-size:var(--text-title);white-space:nowrap;align-items:baseline;gap:7px;line-height:1.25;display:flex}.payroll-period-range{color:var(--muted);font-weight:750}.payroll-run-title-separator{color:var(--muted)}.payroll-header-meta{color:var(--muted);font-size:var(--text-md);white-space:nowrap;flex:none;align-items:center;gap:10px;margin-left:auto;font-weight:750;display:flex}.payroll-pay-date{align-items:center;gap:4px;display:inline-flex}.payroll-console p,.payroll-run-context p,.payroll-empty-panel p{color:var(--muted);margin:4px 0 0}.eyebrow{color:var(--muted);font-size:var(--text-xs);letter-spacing:0;text-transform:uppercase;font-weight:900;display:block}.payroll-period-panel{grid-template-columns:repeat(2,minmax(260px,1fr));align-items:end;gap:12px 14px;width:min(100%,1040px);display:grid}.payroll-preview-settings{border-top:0;gap:18px;width:min(100%,1040px);margin-top:0;padding-top:0;display:grid}.payroll-settings-card{box-shadow:none;background:0 0;border:0;border-radius:0;padding:4px 0 0}.payroll-settings-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.payroll-settings-head h3{font-size:var(--text-base);margin:0}.payroll-settings-head p{color:var(--muted);font-size:var(--text-md);margin:3px 0 0}.payroll-setting-field{gap:5px;min-width:0;display:grid}.payroll-setting-field>span{color:var(--muted);font-size:var(--text-sm);text-transform:uppercase;font-weight:900}.payroll-period-panel .optional-name{min-width:0}.payroll-period-panel .optional-name input{width:100%}.payroll-period-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;width:min(100%,1040px);padding-top:16px;display:flex}.payroll-period-footer .muted-text{flex:360px;margin:0}.segmented-control{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;padding:3px;display:inline-flex}

.segmented-control button,.payroll-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;font-weight:900}.segmented-control button{padding:9px 12px}.segmented-control button.active,.payroll-tabs button.active{color:var(--ink);background:#fff;box-shadow:0 1px 6px #10182814}.compact-field{gap:5px;min-width:0;display:grid}.compact-field span,.payroll-derived-period span,.payroll-summary-strip span{color:var(--muted);font-size:var(--text-sm);text-transform:uppercase;font-weight:900}.compact-field input,.compact-field select{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fff;border-radius:8px;min-height:42px;padding:9px 10px}.payroll-derived-period{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:66px;padding:9px 10px}.payroll-derived-period strong{font-size:var(--text-body);margin-top:3px;display:block}.payroll-manual-dates{grid-template-columns:repeat(2,minmax(120px,1fr));gap:10px;display:grid}.payroll-manual-dates.inline{margin-top:7px}.payroll-manual-dates.inline .compact-field span{font-size:var(--text-xs)}.payroll-action-note{color:#355465;background:#eef6fc;border-radius:8px;margin:12px 0 0;padding:10px 12px}.payroll-action-note.green{color:#0f6b55;background:#eefbf6}.payroll-action-note.amber{color:#805000;background:#fff7e6}.payroll-action-note.red{color:#9f1d1d;background:#fff0ef}.payroll-summary-strip{grid-template-columns:repeat(5,minmax(130px,1fr));gap:8px;display:grid}.payroll-summary-strip div{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px}.payroll-summary-strip strong{font-size:var(--text-base);margin-top:4px;display:block}.payroll-summary-strip small{color:var(--muted);margin-top:2px;display:block}.payroll-summary-strip .danger{background:#fff0ef;border-color:#f2b8b5}.payroll-summary-strip .warn{background:#fff7e6;border-color:#f3d19b}.payroll-summary-strip .ready{background:#eefbf6;border-color:#b9e6d3}.payroll-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.payroll-tabs button{border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 12px}.payroll-tabs button.active{border-bottom-color:var(--accent)}.payroll-tabs.compact,.payroll-config-inner-tabs{border-radius:10px;gap:4px;padding:4px}.payroll-tabs.compact button,.payroll-config-inner-tabs button{border-radius:7px;min-height:34px;padding:0 12px;font-weight:800}.section-tabs.payroll-tabs.issue-view-tabs{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;gap:26px;width:100%;max-width:none;margin:0;padding:0}.section-tabs.payroll-tabs.issue-view-tabs button{min-height:42px;box-shadow:none;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:0}.section-tabs.payroll-tabs.issue-view-tabs button.active,.section-tabs.payroll-tabs.issue-view-tabs button:hover{border-bottom-color:var(--teal);color:var(--teal-dark);box-shadow:none;background:0 0}
.payroll-register-layout,.payroll-adjustments-workspace{align-items:start;gap:14px;display:grid}.payroll-register-main,.exception-workspace,.rules-workspace,.export-workspace,.audit-workspace{gap:12px;display:grid}.finalization-workspace{gap:14px}.finalization-hero,.finalization-panel-section,.finalization-audit-details,.finalization-technical-trace{border:1px solid var(--line);background:#fff;border-radius:8px}.finalization-hero{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px;display:grid}.finalization-hero-main{min-width:0}.finalization-hero h3,.finalization-section-head h3{margin:0}.finalization-hero p{color:var(--muted);max-width:680px;margin:4px 0 0}.finalization-hero-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.finalization-metrics,.finalization-detail-grid{gap:10px;display:grid}.finalization-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.finalization-detail-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.86fr)}.finalization-metric,.finalization-panel-section,.finalization-audit-details{padding:14px}.finalization-metric{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;min-width:0}.finalization-metric span,.finalization-summary-row span,.finalization-evidence-row span,.finalization-step-main span,.finalization-step-main small{color:var(--muted)}.finalization-metric span{font-size:var(--text-sm);text-transform:uppercase;font-weight:850;display:block}.finalization-metric strong{font-size:var(--text-page);overflow-wrap:anywhere;margin-top:4px;display:block}.finalization-panel-section{gap:12px;display:grid}.finalization-section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.finalization-step-list,.finalization-summary-list,.finalization-evidence-list,.audit-note-list{gap:0;display:grid}.finalization-step-row{border-top:1px solid var(--line);grid-template-columns:34px minmax(0,1fr) auto minmax(160px,auto);align-items:center;gap:12px;min-height:72px;padding:12px 0;display:grid}.finalization-step-row:first-child,.finalization-summary-row:first-child,.finalization-evidence-row:first-child,.audit-note-list p:first-child{border-top:0}.finalization-step-icon{color:#486276;background:#eef5f8;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid}.finalization-step-row.done .finalization-step-icon{color:#0f6b55;background:#eefbf6}.finalization-step-row.ready .finalization-step-icon{color:#23678f;background:#eef6fc}.finalization-step-row.waiting .finalization-step-icon{color:#6c7885;background:#f3f5f7}.finalization-step-main{gap:3px;min-width:0;display:grid}.finalization-step-main strong,.finalization-evidence-row strong{overflow-wrap:anywhere}.finalization-step-main small{font-size:var(--text-sm)}.finalization-step-main .warning-text{color:#9f1d1d;font-weight:800}.finalization-step-action{justify-content:flex-end;display:flex}.finalization-step-action .button{min-width:152px}.finalization-timeline{grid-template-columns:repeat(4,minmax(0,1fr))}.finalization-summary-row,.finalization-evidence-row,.audit-note-list p{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:44px;margin:0;padding:10px 0;display:grid}.finalization-evidence-row{grid-template-columns:minmax(0,1fr) minmax(130px,auto)}.finalization-evidence-row.primary{border-left:3px solid var(--teal);padding-left:10px}.finalization-evidence-row>div,.finalization-evidence-meta,.audit-note-list p{min-width:0}.finalization-evidence-row>div:first-child{gap:2px;display:grid}.finalization-evidence-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.audit-note-list p{align-items:start}.audit-note-list p span{color:var(--muted);text-align:right}.finalization-audit-details{align-self:start}.finalization-audit-details>summary,.finalization-technical-trace summary{cursor:pointer;align-items:center;gap:7px;font-weight:850;display:inline-flex}.finalization-audit-details[open]>summary{margin-bottom:12px}.finalization-audit-detail-body{gap:12px;display:grid}.finalization-technical-trace{align-self:start;padding:14px}.payroll-toolbar{justify-content:flex-start}.register-table-section{gap:6px;display:grid}.register-result-count{color:var(--muted);font-size:var(--text-sm);margin:0;font-weight:750}.register-toolbar{grid-template-columns:minmax(140px,180px) minmax(180px,240px) minmax(180px,1fr);display:grid}.register-document-actions{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:8px;min-height:44px;display:flex}.payroll-table-wrap{max-height:62vh;container-type:inline-size}.payroll-table{table-layout:fixed;min-width:780px}.payroll-table th,.payroll-table td{padding:11px 8px}.payroll-table th{z-index:1;white-space:normal;background:#fff;line-height:1.15;position:sticky;top:0}.payroll-table .review-col-employee{width:24%}.payroll-table .review-col-branch{width:16%}.payroll-table .review-col-payable{width:11%}.payroll-table .review-col-gross,.payroll-table .review-col-deductions,.payroll-table .review-col-net{width:12%}.payroll-table .review-col-document{width:8%}.payroll-table .review-col-open{width:5%}.money-cell{text-align:right;white-space:nowrap}.payroll-total-row{background:#f8fbfc}.clickable-row.selected{background:#eef6fc}.payroll-review-employee-cell{gap:2px;min-width:0;display:grid}.payroll-review-employee-cell strong{overflow-wrap:anywhere}.payroll-review-inline-branch{color:var(--muted);font-size:var(--text-sm);font-weight:700;display:none}.payroll-table .review-col-document,.payroll-table .review-col-open{text-align:center}.payroll-table .review-col-document .button,.payroll-table .review-col-open .button{width:34px;min-width:34px;min-height:34px}@container (max-width:820px){.payroll-table{min-width:650px}.payroll-table .review-col-branch{display:none}.payroll-table .review-col-employee{width:31%}.payroll-review-inline-branch{display:block}.payroll-table .review-col-open{width:7%}}@container (max-width:560px){.payroll-table{min-width:0}.payroll-table .review-col-payable,.payroll-table .review-col-gross,.payroll-table .review-col-deductions,.payroll-table .review-col-document{display:none}.payroll-table .review-col-employee{width:60%}.payroll-table .review-col-net{width:27%}.payroll-table .review-col-open{width:13%}}.payroll-review-modal-actions{align-items:center}.payroll-review-mode{min-width:min(300px,52vw)}.warning-chip-list{flex-wrap:wrap;gap:4px;display:flex}.payroll-row-drawer{gap:18px;display:grid}.payroll-calculation-detail{gap:14px}.register-detail-body{min-height:0;padding-right:8px;overflow:auto}.payslip-grid{gap:18px;display:grid}.audit-section{border-top:1px solid var(--line);gap:2px;padding-top:12px;display:grid}.payslip-grid h4{font-size:var(--text-body);margin:0 0 8px}.payslip-grid p{justify-content:space-between;align-items:baseline;gap:10px;min-height:26px;margin:0;display:flex}.calculation-overview{border:1px solid #b8d8dc;border-left:4px solid var(--teal);background:#f5fbfb;border-radius:8px;gap:14px;padding:16px;display:grid}.calculation-overview h3,.calculation-section h3,.calculation-section h4{margin:0}.calculation-overview h3{font-size:var(--text-heading);margin-top:3px}.calculation-overview p,.calculation-section-head p{color:var(--muted);margin:4px 0 0}.calculation-equation{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.calculation-metric{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:center;gap:4px;min-width:0;padding:12px;display:grid}.calculation-metric span{color:var(--muted);font-size:var(--text-sm);font-weight:750}.calculation-metric strong{overflow-wrap:anywhere;font-size:1.05rem;font-weight:900}.calculation-metric.net{color:#08756f;background:#eaf8f6;border-color:#93ccc5}.calculation-operator{color:var(--muted);align-self:center;font-size:1.15rem;font-weight:900}.calculation-primary-grid,.calculation-supporting-grid,.calculation-time-layout{gap:12px;display:grid}.calculation-primary-grid,.calculation-supporting-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.calculation-section{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;padding:14px}.calculation-section-head{margin-bottom:10px}.calculation-section-head h3{font-size:var(--text-body)}.calculation-section-head p{font-size:var(--text-sm)}.calculation-table-wrap{min-width:0;overflow-x:auto}.calculation-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0}.calculation-table th,.calculation-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:8px 6px}.calculation-table thead th{color:var(--muted);font-size:var(--text-xs);letter-spacing:.04em;text-align:left;text-transform:uppercase;font-weight:850}.calculation-table th:first-child{width:68%}.calculation-table th[scope=row]{text-align:left;font-weight:700}.calculation-table td,.calculation-table thead th:last-child{text-align:right}.calculation-table td{overflow-wrap:anywhere;font-weight:800}.calculation-table th small{color:var(--muted);font-size:var(--text-xs);margin-top:2px;font-weight:600;display:block}.calculation-table tr.subtotal th,.calculation-table tr.subtotal td{background:#f8fbfc;font-weight:850}.calculation-table tfoot th,.calculation-table tfoot td{border-top:2px solid #b8c5cc;border-bottom:0;padding-top:10px;font-weight:900}.calculation-projection-note{background:#f5f7f9;border-radius:8px;gap:2px;margin:10px 0 0;padding:10px;display:grid}.calculation-projection-note span{color:var(--muted);font-size:var(--text-xs)}.calculation-time-layout{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));align-items:start}.calculation-salary-facts{background:#f7fafb;border-radius:8px;padding:12px}.calculation-salary-facts h4{font-size:var(--text-sm)}.calculation-salary-facts dl{gap:0;margin:8px 0;display:grid}.calculation-salary-facts dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.calculation-salary-facts dt{color:var(--muted)}.calculation-salary-facts dd{text-align:right;margin:0;font-weight:800}.calculation-salary-facts p,.calculation-empty{color:var(--muted);font-size:var(--text-sm);margin:0}.calculation-activity-summary{flex-wrap:wrap;gap:8px;display:flex}.calculation-activity-summary span{color:var(--muted);font-size:var(--text-sm);background:#f3f6f8;border-radius:999px;padding:6px 9px}.calculation-supporting-details{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;padding:14px}.calculation-supporting-details>summary{cursor:pointer;gap:2px;font-weight:850;display:grid}.calculation-supporting-details>summary small{color:var(--muted);font-weight:600}.calculation-supporting-details[open]>summary{margin-bottom:12px}.calculation-supporting-grid{align-items:start}.calculation-accruals{grid-column:1/-1}.pay-item-list{border-top:1px solid var(--line);gap:0;margin-bottom:0;display:grid}.pay-item-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 0;display:grid}.pay-item-row-main{gap:2px;min-width:0;display:grid}.pay-item-row span{color:var(--muted)}.pay-item-row-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.pay-item-form{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.pay-item-wide{grid-column:span 3}.pay-item-modal-form{min-height:0;padding-right:4px;overflow-y:auto}.adjustments-head{grid-template-columns:minmax(260px,480px) minmax(0,1fr);align-items:center;gap:18px;display:grid}.adjustments-mode-control{max-width:360px}.adjustments-selected-summary{justify-content:flex-end;align-items:center;gap:10px;min-height:44px;display:flex}.adjustments-selected-summary span{color:var(--muted)}.adjustments-pay-item-panel{border-top:1px solid var(--line);gap:18px;padding-top:16px;display:grid}.adjustments-section{gap:10px;display:grid}.adjustments-section-head{justify-content:space-between;align-items:end;gap:12px;display:flex}.adjustments-section-head h3{font-size:var(--text-base);margin:0 0 2px}.adjustments-section-head span{color:var(--muted);font-size:var(--text-sm);font-weight:750}.positive-money{font-weight:900;color:#087f5b!important}.negative-money{font-weight:900;color:#b42318!important}.technical-trace{margin-top:10px}.technical-trace summary{cursor:pointer;color:var(--muted);font-weight:900}.technical-trace pre{max-height:260px;overflow:auto}.warning-panel{background:#fff9e8;border:1px solid #f2c94c;border-radius:8px;gap:10px;padding:12px;display:grid}.warning-panel h3{font-size:var(--text-body);align-items:center;gap:8px;margin:0;display:inline-flex}.warning-group{border-left:3px solid #d99a00;padding-left:10px}.warning-group.blocking{border-left-color:#b42318}.warning-group p{margin:4px 0}.settlement-workspace{gap:16px;display:grid}.settlement-create-form{margin-bottom:14px}.settlement-actions{margin-bottom:12px}
.payroll-overview-grid,.payroll-detail-page{gap:16px;display:grid}.payroll-command-center{gap:20px;display:grid}.payroll-command-header{gap:14px}.section-tabs.payroll-workspace-tabs{border:0;border-bottom:1px solid var(--line);scrollbar-width:none;background:0 0;border-radius:0;gap:28px;width:auto;max-width:none;padding:0;display:flex;overflow-x:auto}.section-tabs.payroll-workspace-tabs::-webkit-scrollbar{display:none}.section-tabs.payroll-workspace-tabs button{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;align-items:center;gap:7px;padding:0;font-weight:800;display:inline-flex}.section-tabs.payroll-workspace-tabs button.active,.section-tabs.payroll-workspace-tabs button:hover{border-bottom-color:var(--teal);color:var(--teal-dark);background:0 0}.section-tabs.payroll-workspace-tabs button .tab-dot{background:#9aa5b1;border-radius:999px;width:8px;height:8px;margin-left:0;padding:0}.section-tabs.payroll-workspace-tabs button .tab-dot.green{background:var(--teal)}.section-tabs.payroll-workspace-tabs button .tab-dot.amber{background:#d99a00}.section-tabs.payroll-workspace-tabs button .tab-dot.red{background:#b42318}.compact-stepper{margin:0}.payroll-workspace-section{gap:12px;display:grid}.finalization-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;padding:14px;display:grid}.payroll-workspace-section{background:0 0;border:0;border-radius:0;min-width:0;padding:0;scroll-margin-top:88px}.payroll-workspace-section.active{box-shadow:none}.finalization-panel.embedded{background:0 0;border:0;border-radius:0;padding:0}
.payroll-outputs-workspace{gap:12px;display:grid}.workflow-row-status{background:#9aa5b1;border-radius:999px;width:10px;height:10px}.workflow-row-status.green{background:var(--teal)}.workflow-row-status.amber{background:#d99a00}.workflow-row-status.red{background:#b42318}.workflow-row-main{min-width:0}.workflow-row-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.workflow-row-title h3{font-size:var(--text-base);margin:0}.workflow-row-main p{color:var(--muted);margin:4px 0 0}.finalization-actions{border-top:1px solid var(--line);flex-wrap:wrap;align-items:flex-start;gap:12px;padding-top:12px;display:flex}.finalization-panel.embedded .finalization-actions{border-top:0;padding-top:0}.finalization-actions>div{gap:4px;display:grid}.detail-page-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.back-link{color:var(--teal);margin-bottom:8px;font-weight:800;text-decoration:none;display:inline-flex}.exception-search{width:min(100%,520px)}.issue-toolbar{justify-content:space-between;align-items:end;gap:12px;padding:2px 0 4px;display:flex}.exception-empty-state{text-align:center;margin:0;padding:34px 0 40px}.issue-category-strip{flex-wrap:wrap;gap:8px;display:flex}.issue-category-strip span{border:1px solid var(--line);color:var(--muted);font-size:var(--text-md);background:#f8fbfc;border-radius:999px;padding:6px 10px;font-weight:800}.issue-category-strip strong{color:var(--ink)}.exception-list{gap:10px;display:grid}.exception-row{border:1px solid var(--line);background:#fff;border-left-width:4px;border-radius:8px;padding:12px}.exception-row.critical{border-left-color:#c24135}.exception-row.warning{border-left-color:#c58a20}.exception-row-head{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:0;display:flex}.exception-row-head span{color:var(--muted);display:block}.exception-group-detail{border-top:1px solid var(--line);gap:10px;margin-top:10px;padding-top:10px;display:grid}.exception-group-detail p{margin:4px 0 0}.exception-meta,.exception-resolution,.bulk-resolution{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.exception-resolution input,.bulk-resolution input{flex:280px}.rules-head h3{margin:3px 0 4px}.rules-head p{color:var(--muted);margin:0}.rules-table td:first-child{gap:3px;min-width:260px;display:grid}.rules-table td:first-child span,.rules-table td:first-child small{color:var(--muted)}.rules-table td:first-child small{font-size:var(--text-sm)}.rules-hero-head{align-items:start}.rules-head-metrics{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.rules-head-metrics span{border:1px solid var(--line);min-width:92px;color:var(--muted);font-size:var(--text-sm);text-transform:uppercase;background:#fff;border-radius:8px;gap:2px;padding:8px 10px;display:grid}.rules-head-metrics strong{color:var(--ink);font-size:var(--text-base)}.rules-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}
.rules-toolbar p{color:var(--muted);margin:0}.rule-group-list,.rule-detail-page,.rule-detail-sections,.rule-version-list{gap:10px;display:grid}.rule-group-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(300px,1fr) minmax(130px,170px) minmax(150px,190px) auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.rule-group-main{appearance:none;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:3px;padding:0;display:grid}.rule-group-main:hover .rule-group-title{color:var(--teal)}.rule-group-title{color:var(--ink);font-weight:800}.rule-group-meta,.rule-group-description,.rule-group-current span,.rule-group-current small,.rule-group-status span{color:var(--muted)}.rule-group-description{font-size:var(--text-md)}.rule-group-current,.rule-group-status{gap:4px;display:grid}.rule-group-status small{color:var(--muted)}.rule-group-current strong{font-size:var(--text-base)}.rule-group-actions,.rule-version-actions,.rule-detail-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.rule-detail-toolbar{justify-content:space-between}.payroll-configuration-bootstrap{background:#fff8e8;border:1px solid #f4c76b;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px;display:grid}.payroll-configuration-bootstrap h3,.configuration-card-head h3{margin:0}.payroll-configuration-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.payroll-configuration-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:14px;padding:16px;display:grid}.payroll-configuration-card.red{border-color:#f0a5a0}.payroll-configuration-card.amber{border-color:#f4c76b}.payroll-configuration-card.green{border-color:#a7dec4}.configuration-card-head{justify-content:space-between;gap:14px;display:flex}.configuration-card-head p,.configuration-blockers,.configuration-coverage span{color:var(--muted)}.configuration-card-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.configuration-card-metrics div{border:1px solid var(--line);background:var(--surface-alt);border-radius:8px;padding:10px}.configuration-card-metrics dt,.configuration-coverage span{font-size:var(--text-xs);text-transform:uppercase;font-weight:800}.configuration-card-metrics dd{font-size:var(--text-base);margin:4px 0 0;font-weight:800}
.delivery-pill{color:#475467;white-space:nowrap;background:#eef5f8;border-radius:999px;align-items:center;padding:4px 8px;font-size:.72rem;font-weight:850;display:inline-flex}.delivery-pill.green{color:#177245;background:#dcfce7}.delivery-pill.amber{color:#996515;background:#fff3cd}.delivery-pill.red{color:#b42318;background:#fee2e2}.payroll-review-document{grid-template-rows:auto minmax(0,1fr);gap:12px;min-width:0;min-height:0;display:grid}.payroll-review-detail-modal.document-mode{width:min(1180px,100%)}.payroll-review-document-toolbar,.payroll-review-document-state,.payroll-review-document-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.payroll-review-document-toolbar{justify-content:space-between}.payroll-review-document-actions{justify-content:flex-end}.payslip-modal-body{min-height:0;padding-right:0;overflow:auto}.payslip-document{box-sizing:border-box;color:#161b26;max-width:816px;min-height:1056px;margin:0 auto;font-size:.84rem;line-height:1.25;position:relative;overflow:hidden}.payslip-watermark{color:#0f33441f;pointer-events:none;text-transform:uppercase;font-size:5rem;font-weight:900;position:absolute;top:165px;right:70px;transform:rotate(-18deg)}.payslip-head{border-bottom:1px solid var(--line);margin-bottom:14px;padding-bottom:10px}.payslip-period-bar,.payslip-doc-meta,.payslip-footer-note{color:#4b5563}.payslip-doc-meta{overflow-wrap:anywhere;justify-items:end;gap:3px;min-width:0;font-size:.74rem;font-weight:800;display:grid}.payslip-period-bar{border-bottom:1px solid #d8dee8;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;margin-bottom:12px;padding-bottom:10px;font-weight:800;display:flex}.payslip-status-badge{color:#996515;text-transform:uppercase;background:#fff3cd;border-radius:999px;padding:4px 8px;font-size:.68rem;font-weight:900}.payslip-status-badge.final{color:#177245;background:#dcfce7}.payslip-panel,.payslip-detail-section{background:#fff;border:1px solid #d8dee8;border-radius:4px;padding:10px}.payslip-panel h3,.payslip-detail-section h3,.payslip-hours-table h4{text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:900}.payslip-panel p{justify-content:space-between;align-items:baseline;gap:12px;margin:4px 0;display:flex}.payslip-panel .strong-row{border-top:1px solid #d8dee8;margin-top:7px;padding-top:7px}.payslip-net-panel{background:#f8fbfc}.payslip-net-total{text-align:right;border-top:2px solid #1f2937;margin-top:12px;padding-top:10px}.payslip-net-total span{text-transform:uppercase;font-size:.76rem;font-weight:900;display:block}.payslip-net-total strong{margin-top:4px;font-size:1.35rem;display:block}.payslip-hours-table{min-width:0}.payslip-hours-head,.payslip-hours-row,.payslip-line-table{grid-template-columns:minmax(0,1fr) 64px 82px;align-items:baseline;gap:6px;display:grid}.payslip-hours-head,.payslip-line-table span{color:#667085;text-transform:uppercase;font-size:.67rem;font-weight:900}.payslip-hours-row{border-top:1px solid #eef2f6;padding:4px 0}.payslip-hours-row strong,.payslip-line-table strong{text-align:right}.payslip-line-table{grid-template-columns:minmax(0,1fr) 110px}.payslip-employer-section{margin-top:12px}.payslip-footer{grid-template-columns:minmax(0,1fr) minmax(180px,260px);align-items:end;gap:20px;margin-top:42px;display:grid}.payslip-signatures{text-transform:uppercase;grid-template-columns:auto minmax(120px,1fr) auto minmax(150px,1fr);align-items:end;gap:8px;font-weight:800;display:grid}.payslip-signatures strong{border-bottom:1px solid #1f2937;min-height:22px;display:block}.payslip-footer-note{text-align:center;gap:6px;font-size:.76rem;display:grid}
.payslip-landscape{width:1056px;max-width:none;min-height:816px;padding:18px 22px;font-size:.74rem}.payslip-landscape-head{text-transform:uppercase;border-bottom:2px solid #1f2937;grid-template-columns:minmax(170px,.8fr) minmax(250px,1.1fr) minmax(240px,1fr) minmax(170px,.8fr);align-items:start;gap:12px;padding-bottom:8px;display:grid;position:relative}.payslip-company-mark{grid-column:1}.payslip-landscape-head h3,.payslip-company-mark strong,.payslip-period-title strong{color:#161b26;margin:0;font-size:.9rem;font-weight:900}.payslip-company-mark p,.payslip-period-title span,.payslip-landscape-status{color:#4b5563}.payslip-period-title{flex-wrap:wrap;grid-column:2;gap:10px;display:flex}.payslip-landscape-head h3{text-align:center;width:max-content;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.payslip-landscape-head .payslip-doc-meta{grid-column:4}.payslip-landscape-status{border-bottom:1px solid #d8dee8;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;padding:7px 0;font-weight:800;display:flex}.payslip-landscape-grid{grid-template-columns:minmax(690px,2.3fr) minmax(230px,.78fr);align-items:start;gap:12px;display:grid}.payslip-landscape-grid>*{min-width:0}.payslip-left-area,.payslip-employee-basis{gap:10px;display:grid}.payslip-receipt-blocks{grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);align-items:stretch;gap:12px;display:grid}.payslip-section-stack{grid-template-rows:repeat(2,minmax(156px,1fr));gap:12px;display:grid}.payslip-employee-line{grid-template-columns:auto minmax(80px,auto) minmax(0,1fr);align-items:baseline;gap:8px;display:grid}.payslip-employee-line span:first-child,.payslip-salary-rate span,.payslip-total-subtitle{text-transform:uppercase;font-weight:900}.payslip-salary-rate{align-items:baseline;gap:10px;display:flex}.payslip-salary-rate strong{font-size:.9rem}.payslip-landscape .payslip-hours-table,.payslip-totals-list,.payslip-adjustments-table{background:#fff;border:0;border-radius:0}.payslip-landscape .payslip-hours-table h4,.payslip-landscape .payslip-adjustments-table h4{text-align:center;border-bottom:1px solid #667085;font-size:.72rem}.payslip-section-stack>.payslip-hours-table,.payslip-section-stack>.payslip-adjustments-table{min-height:156px}.payslip-section-stack>.payslip-adjustments-table{border-bottom:0}.payslip-landscape .payslip-hours-head,.payslip-landscape .payslip-hours-row{grid-template-columns:minmax(92px,1fr) repeat(3,minmax(54px,70px));font-size:.7rem}.payslip-landscape .payslip-hours-head span,.payslip-landscape .payslip-hours-row strong{text-align:right}.payslip-hours-fallback{color:#9a6508;margin:6px 0 0;font-weight:800}

.configuration-coverage,.configuration-blockers{gap:6px;display:grid}.configuration-blockers code{background:var(--surface-alt);width:fit-content;color:var(--ink);border-radius:999px;padding:4px 8px;font-size:.75rem}.payroll-config-workspace{gap:12px}.payroll-config-editor-footer p{color:var(--muted);margin:4px 0 0}.payroll-config-layout{grid-template-columns:1fr;align-items:start;gap:0;display:grid}.payroll-config-editor{border:1px solid var(--line);background:var(--surface);border-radius:8px}.payroll-config-sidebar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:stretch;gap:2px;padding:4px 0 12px;display:flex}.payroll-config-nav-item{text-align:left;min-width:128px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:0;flex:128px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;padding:10px 12px;display:grid}.payroll-config-nav-item:hover,.payroll-config-nav-item.active{background:#eef5f8;border-color:#0000}.payroll-config-nav-dot{background:var(--muted);border-radius:999px;align-self:start;width:10px;height:10px;margin-top:5px}.payroll-config-nav-dot.red{background:#d94b3d}.payroll-config-nav-dot.amber{background:#d99a08}.payroll-config-nav-dot.green{background:#1a8f89}.payroll-config-detail{gap:12px;padding:12px 0 0;display:grid}.payroll-config-inner-tabs{justify-self:end}.payroll-config-records,.payroll-config-editor{gap:12px;display:grid}.payroll-config-editor{padding:14px}.payroll-config-records{padding:0}.payroll-rate-table-section{background:0 0;border:0;border-radius:0;gap:12px;padding:0;display:grid}.payroll-config-records .payroll-rate-table-section{background:0 0;border:0;padding:0}.payroll-rate-table-wrap{overflow-x:auto}.payroll-rate-table{border-collapse:collapse;width:100%;min-width:760px}.payroll-rate-table th,.payroll-rate-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:10px 12px}.payroll-rate-table th{color:var(--muted);font-size:var(--text-xs);text-transform:uppercase;font-weight:900}.payroll-rate-table tbody tr:last-child td{border-bottom:0}.payroll-rate-table .rate-multiplier{color:var(--ink);white-space:nowrap;font-weight:900}.payroll-rate-actions{flex-wrap:wrap;gap:8px;display:flex}.payroll-config-table-wrap{border:1px solid var(--line);border-radius:0;overflow-x:auto}.payroll-config-table{border-collapse:collapse;width:100%;min-width:980px}.payroll-config-table th,.payroll-config-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:10px 12px}.payroll-config-table th:last-child,.payroll-config-table td:last-child{border-right:0}.payroll-config-table tbody tr:last-child td{border-bottom:0}.payroll-config-table th{z-index:1;background:var(--surface-alt);color:var(--muted);font-size:var(--text-xs);text-transform:uppercase;font-weight:900;position:sticky;top:0}.payroll-config-table tbody tr:hover{background:#fbfdfe}.payroll-config-table td:first-child{width:22%}.payroll-config-table td:nth-child(2){width:110px;color:var(--ink);white-space:nowrap;font-weight:900}.payroll-config-table td:nth-child(3),.payroll-config-table td:nth-child(4){color:var(--muted)}.payroll-config-table td:nth-last-child(4),.payroll-config-table td:nth-last-child(3){white-space:nowrap}.payroll-config-table-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:180px;display:flex}.payroll-config-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.payroll-config-wide{grid-column:1/-1}.payroll-config-checkbox-grid{border:1px solid var(--line);background:var(--surface-alt);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;padding:12px;display:grid}.payroll-config-checkbox-grid label{color:var(--muted);align-items:center;gap:7px;font-weight:800;display:flex}.payroll-config-editor-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.payroll-config-modal form{gap:16px;display:grid}.payroll-config-modal{max-height:calc(100vh - 48px);overflow:auto}.readonly-field{border:1px solid var(--line);background:var(--surface-alt);border-radius:8px;justify-content:center;min-height:76px;padding:10px 12px}.readonly-field strong{margin-top:4px;font-size:1rem}.income-tax-bracket-editor{gap:10px;display:grid}.income-tax-bracket-editor label{color:var(--muted);font-weight:850}.income-tax-bracket-editor p{color:var(--muted);margin:3px 0 0}.income-tax-bracket-grid{gap:8px;display:grid}.income-tax-bracket-head{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.income-tax-bracket-head span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.income-tax-bracket-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.income-tax-bracket-row .field label{display:none}.time-pay-tier-editor{gap:10px;display:grid}.time-pay-tier-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.time-pay-tier-head label{color:var(--muted);font-weight:850}.time-pay-tier-grid{gap:8px;display:grid}.time-pay-tier-grid-head,.time-pay-tier-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.time-pay-tier-grid-head span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.time-pay-tier-row .field label{display:none}.payroll-config-subtext{color:var(--muted);margin-top:4px;font-size:.78rem;font-weight:800;display:block}.rule-detail-hero{border:1px solid var(--line);background:#fbfdfe;border-radius:8px;grid-template-columns:minmax(260px,1fr) minmax(360px,auto);align-items:start;gap:18px;padding:16px;display:grid}.rule-detail-hero h3,.rule-version-row h4{margin:0}.rule-detail-hero p,.rule-version-row p{color:var(--muted);margin:4px 0 0}.rule-detail-summary{grid-template-columns:repeat(3,minmax(90px,1fr));gap:8px;display:grid}.rule-detail-summary div{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;padding:10px;display:grid}.rule-detail-summary span,.rule-version-row dt{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:800}.rule-version-section{gap:8px;padding-top:4px;display:grid}.rule-version-section .section-heading{border-bottom:1px solid var(--line);padding-bottom:6px}.rule-version-section h4,.rule-usage-panel h4{margin:0}.compact-empty{margin:0;padding:10px 12px}.rule-version-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(260px,1fr) minmax(360px,.9fr) auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.rule-version-row dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.rule-version-row dt,.rule-version-row dd{margin:0}.rule-version-row dd{color:var(--ink)}.rule-version-row.current{background:#f6fffd;border-color:#a5d8cc}.rule-version-row.future{background:#fffaf0;border-color:#f4d48c}.rule-version-row.history{background:#fbfdfe}.rule-version-actions .muted-text{text-align:right;flex-basis:100%}.rule-usage-panel{border:1px solid var(--line);background:#fbfdfe;border-radius:8px;gap:4px;padding:14px 16px;display:grid}.rule-usage-panel p{color:var(--muted);margin:4px 0 0}@media (max-width:980px){.rule-group-row,.rule-detail-hero,.rule-version-row,.rule-version-row dl{grid-template-columns:1fr}.rule-group-actions,.rule-version-actions,.rule-detail-toolbar{justify-content:flex-start}.rule-detail-summary{grid-template-columns:1fr}.rules-toolbar,.rules-head-metrics{justify-content:flex-start;align-items:stretch}.rules-toolbar{flex-direction:column}.rule-version-actions .muted-text{text-align:left}}

.stat{align-content:start;gap:8px;display:grid}.stat-label{color:var(--muted);font-size:var(--text-md)}.stat-value{font-size:var(--text-metric);font-weight:760;line-height:1.05}.stat p{color:var(--muted);font-size:var(--text-md);margin:0;font-weight:650;line-height:1.35}@media (max-width:900px){.stats-grid.grid.cols-3{grid-template-columns:1fr;gap:10px}.stat.card{align-items:start;gap:8px;padding:14px}.stat .stat-label{font-size:var(--text-sm);line-height:1.2}.stat .stat-value{font-size:var(--text-display);line-height:1.05}.stat .badge{min-height:24px;font-size:var(--text-xs);white-space:nowrap;justify-self:start;padding:3px 8px}}
.overview-card-group{gap:12px;display:grid}.task-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.task-card{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:start;gap:10px;padding:14px;display:grid}.task-card.red{border-color:#f3b6ae}.task-card.amber{border-color:#f2c94c}.task-card.green{border-color:#b8dec9}.task-card-top{justify-content:space-between;align-items:start;gap:12px;display:flex}.task-card h3{font-size:var(--text-base);margin:0}.task-card-top strong{font-size:var(--text-display);line-height:1}.task-card p{color:var(--muted);margin:0}@media (max-width:900px){.task-card-grid{grid-template-columns:1fr}}
.payslip-totals-rail{align-content:end;gap:12px;min-width:0;min-height:470px;display:grid}.payslip-adjustments-table{border-bottom:1px solid #667085;align-content:start;align-items:baseline;gap:4px;padding-bottom:8px;display:grid}.payslip-adjustments-table h4{text-transform:uppercase;margin:0 0 2px;font-weight:900}.payslip-adjustments-head,.payslip-adjustments-row{grid-template-columns:minmax(0,1fr) minmax(54px,74px) minmax(70px,86px);align-items:baseline;gap:6px;display:grid}.payslip-adjustments-head span{color:#667085;text-transform:uppercase;font-size:.67rem;font-weight:900}.payslip-adjustments-row{border-top:1px solid #eef2f6;padding:3px 0}.payslip-adjustments-row span,.payslip-adjustments-row strong{overflow-wrap:anywhere;min-width:0}.payslip-adjustments-head span:last-child,.payslip-adjustments-row strong:last-child{text-align:right}.payslip-adjustments-total{border-top:1px solid #667085;grid-template-columns:minmax(0,1fr) minmax(70px,86px);gap:6px;margin-top:4px;padding-top:4px;display:grid}.payslip-adjustments-total span{color:#667085;text-transform:uppercase;font-weight:900}.payslip-adjustments-total strong{text-align:right}.payslip-totals-list{align-self:end;gap:3px;display:grid}.payslip-totals-list p{grid-template-columns:minmax(0,1fr) 92px;gap:8px;margin:0;display:grid}.payslip-totals-list strong{text-align:right}.payslip-totals-list .strong-row{border-top:1px solid #667085;margin-top:6px;padding-top:5px}.payslip-total-subtitle{margin-top:4px}.payslip-landscape .payslip-net-total{border-top:2px solid #1f2937;margin-top:7px;padding-top:7px}.payslip-landscape .payslip-net-total strong{font-size:var(--text-base)}.payslip-landscape .payslip-footer{margin-top:28px}
@media (max-width:1240px){.payslip-landscape{padding:14px;font-size:.68rem}.payslip-landscape-head{grid-template-columns:minmax(145px,.75fr) minmax(210px,1fr) minmax(210px,1fr) minmax(145px,.75fr);gap:8px}.payslip-landscape-grid{grid-template-columns:minmax(610px,2.2fr) minmax(205px,.74fr);gap:8px}.payslip-receipt-blocks{grid-template-columns:repeat(2,minmax(285px,1fr));gap:8px}.payslip-section-stack{grid-template-rows:repeat(2,minmax(145px,1fr));gap:8px}.payslip-section-stack>.payslip-hours-table,.payslip-section-stack>.payslip-adjustments-table{min-height:145px}.payslip-landscape .payslip-hours-head,.payslip-landscape .payslip-hours-row{grid-template-columns:minmax(78px,1fr) repeat(3,minmax(48px,62px))}}.export-table td:nth-child(2){color:var(--muted)}.audit-timeline{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.audit-timeline span{border:1px solid var(--line);border-radius:8px;padding:10px}.audit-timeline strong{display:block}@media (max-width:1180px){.payroll-register-layout{grid-template-columns:1fr}.payroll-row-drawer{position:static}}@media (max-width:860px){.payroll-print-backdrop{padding:8px}.payroll-period-panel,.register-toolbar,.finalization-hero,.finalization-metrics,.finalization-detail-grid,.finalization-timeline{grid-template-columns:1fr}.finalization-hero-actions,.finalization-step-action{justify-content:stretch}.finalization-step-row{grid-template-columns:34px minmax(0,1fr)}.finalization-step-row>.badge,.finalization-step-action{grid-column:2}.finalization-step-action .button{width:100%}.payroll-console-head,.payroll-toolbar{align-items:stretch}.payroll-toolbar,.exception-resolution,.bulk-resolution{flex-direction:column}.payroll-toolbar .button,.exception-resolution .button,.bulk-resolution .button{width:100%}.optional-name,.payroll-manual-dates{grid-column:auto}.payslip-footer{grid-template-columns:1fr}.payslip-doc-meta{text-align:left;justify-items:start}.modal-card-register{max-height:94vh;padding:16px}.payroll-review-detail-modal .modal-heading{grid-template-columns:minmax(0,1fr);display:grid}.payroll-review-detail-modal .modal-heading h2{overflow-wrap:anywhere}.payroll-review-detail-modal .modal-actions,.payroll-review-document-toolbar,.payroll-review-document-actions{width:100%;min-width:0}.payroll-review-mode{flex:1;min-width:0}.payroll-review-document-toolbar,.payroll-review-document-actions{flex-direction:column;align-items:stretch}.payroll-review-document-actions .button{box-sizing:border-box;width:100%;max-width:100%}}@media screen and (max-width:600px){.payslip-modal-body{overflow-x:hidden}.payslip-landscape{width:100%;min-height:0;padding:12px;font-size:.72rem}.payslip-landscape-head,.payslip-landscape-grid,.payslip-receipt-blocks{grid-template-columns:minmax(0,1fr)}.payslip-landscape-head{gap:8px}.payslip-company-mark,.payslip-period-title,.payslip-landscape-head .payslip-doc-meta{grid-column:1}.payslip-period-title{flex-direction:column;gap:2px}.payslip-landscape-head h3{text-align:left;width:auto;position:static;transform:none}.payslip-landscape-head .payslip-doc-meta{text-align:left;justify-items:start}.payslip-employee-line{grid-template-columns:minmax(0,1fr);gap:2px}.payslip-employee-line strong{overflow-wrap:anywhere;min-width:0}.payslip-salary-rate{flex-wrap:wrap}.payslip-section-stack{grid-template-rows:auto}.payslip-section-stack>.payslip-hours-table,.payslip-section-stack>.payslip-adjustments-table,.payslip-totals-rail{min-height:0}.payslip-landscape .payslip-hours-head,.payslip-landscape .payslip-hours-row{grid-template-columns:minmax(76px,1fr) repeat(3,minmax(42px,54px))}.payslip-landscape .payslip-footer{grid-template-columns:minmax(0,1fr)}.payslip-signatures{grid-template-columns:auto minmax(0,1fr)}}
.connector-detail{display:grid}.connector-workspace{gap:20px;display:grid}.connector-branch-list{gap:0;display:grid}.connector-list-header,.connector-branch-heading,.connector-branch-identity{align-items:center;display:flex}.connector-list-header,.connector-branch-heading{justify-content:space-between;gap:16px}.connector-list-header>div:first-child{min-width:0}.connector-list-header>.actions{flex-wrap:wrap;justify-content:flex-end}.connector-list-header h2,.connector-list-header p,.connector-branch-heading h3{margin:0}.connector-list-header p{margin-top:6px}.connector-branch-group{border-top:1px solid var(--line);gap:10px;padding:18px 0;display:grid}.connector-branch-group:last-child{border-bottom:1px solid var(--line)}.connector-branch-identity{gap:10px;min-width:0}.connector-branch-icon{width:28px;height:28px;color:var(--teal);flex:none;place-items:center;display:inline-grid}.connector-branch-empty{margin:0;padding-left:38px}.connector-branch-connectors{grid-template-columns:1fr;gap:0}.connector-list-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:4px 0 0 38px;display:grid}.connector-list-item strong{margin-bottom:7px;display:block}.connector-registration-modal{width:min(560px,100vw - 32px)}.connector-registration-secret{gap:8px;display:grid}.connector-registration-secret pre{color:#fff;background:#101828;border-radius:8px;margin:0;padding:10px;overflow:auto}.connector-hero{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:0 0 18px;display:flex}.connector-identity{align-items:flex-start;gap:12px;min-width:0;display:flex}.connector-identity strong{font-size:var(--text-base);margin-bottom:8px;display:block}.connector-icon{color:#fff;background:var(--teal);border-radius:8px;flex:none;place-items:center;width:38px;height:38px;display:inline-grid}.connector-pairing{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.connector-pairing strong,.connector-pairing span{display:block}.connector-pairing span{color:var(--muted);font-size:var(--text-sm)}.connector-pairing pre{color:#fff;background:#101828;border-radius:8px;margin:0;padding:8px 10px;overflow:auto}.connector-update-control{border:1px solid var(--line);background:var(--surface-subtle);border-radius:12px;justify-content:space-between;align-items:end;gap:16px;padding:16px;display:flex}.connector-update-control h3,.connector-update-control p{margin:0}.connector-update-control p{margin-top:5px}.connector-update-control label{color:var(--muted);font-size:var(--text-sm);gap:5px;display:grid}.connector-update-control select{min-width:120px}.connector-devices{min-width:0}.connector-device-people-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.connector-device-people-header h3,.connector-device-people-header p{margin:0}.connector-device-people-header p{color:var(--muted);font-size:var(--text-md);margin-top:4px}.connector-device-table{min-width:820px}.connector-device-table td:first-child strong,.connector-device-table td:first-child span{display:block}.connector-device-table td:first-child span,.connector-device-table small{color:var(--muted);font-size:var(--text-sm)}.connector-device-table small{max-width:260px;margin-top:5px;display:block}.connector-device-table .actions{gap:6px}.connector-device-table .button{min-height:34px;padding:0 10px}.connector-people-table{min-width:1080px}.connector-identity-groups{gap:18px;display:grid}.connector-identity-group{min-width:0}.connector-identity-group-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.connector-identity-group-header h4{margin:0}.connector-mapping-confirmation-details{gap:10px;margin:0;display:grid}.connector-mapping-confirmation-details>div{grid-template-columns:minmax(130px,.45fr) 1fr;gap:12px;display:grid}.connector-mapping-confirmation-details dt{color:var(--muted)}.connector-mapping-confirmation-details dd{margin:0;font-weight:600}.connector-retained-range{grid-template-columns:repeat(2,minmax(130px,1fr));gap:8px;width:min(100%,420px);display:grid}.connector-history-recovery{gap:.5rem;margin-top:.65rem;display:grid}.connector-history-recovery label{gap:.25rem;display:grid}.connector-history-status{gap:.35rem;margin-top:.65rem;display:grid}.connector-retained-range label{color:var(--muted);gap:4px;font-size:.78rem;display:grid}.connector-retained-range .button{grid-column:1/-1;justify-content:center}.connector-retained-counts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0;display:grid}.connector-retained-counts span{border:1px solid var(--border);color:var(--muted);border-radius:12px;gap:2px;padding:12px;display:grid}.connector-retained-counts strong{color:var(--text);font-size:1.2rem}.connector-retained-result{border:1px solid var(--border);background:var(--surface-raised,var(--surface));border-radius:14px;margin-top:14px;padding:14px}.connector-people-import{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;margin-bottom:12px;display:grid}.connector-people-import .field{min-width:0}.connector-people-import input[type=file]{min-height:40px}.connector-person-map-form{grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:8px;min-width:290px;display:grid}.connector-person-map-form select{min-height:34px}@media (max-width:760px){.connector-list-header,.connector-branch-heading{flex-direction:column;align-items:flex-start}.connector-list-header>.actions{width:100%}.connector-list-header>.actions .button{flex:1}.connector-people-import{grid-template-columns:1fr;align-items:stretch}.connector-device-people-header{flex-direction:column}.connector-mapping-confirmation-details>div{grid-template-columns:1fr;gap:2px}.connector-retained-range,.connector-retained-counts{grid-template-columns:1fr}.connector-people-import .button{justify-content:center}}
.app-loading-screen{color:#fff;background:radial-gradient(circle at 74% 18%,#ffffff1c,#0000 28%),radial-gradient(circle at 18% 84%,#d65f3d57,#0000 30%),linear-gradient(145deg,#0d3548 0%,#0d7077 58%,#10999a 100%);place-items:center;min-height:100dvh;padding:24px;display:grid}.app-loading-content{text-align:center;justify-items:center;gap:18px;display:grid}.app-loading-brand{margin:0}.app-loading-brand .brand-title{font-size:var(--text-title)}.app-loading-spinner{border:3px solid #ffffff47;border-right-color:#fff;border-radius:999px;width:34px;height:34px;animation:.9s linear infinite app-loading-spin}@keyframes app-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.app-loading-spinner{animation:none}}.login-screen{background:var(--surface);grid-template-columns:minmax(0,1.25fr) minmax(460px,.75fr);min-height:100dvh;display:grid}.login-panel{isolation:isolate;background:radial-gradient(circle at 100% 0,#0f8b8d17,#0000 34%),linear-gradient(#fbfdfd 0%,#f4f8f8 100%);align-content:center;justify-items:center;padding:clamp(32px,5vw,72px);display:grid;position:relative;overflow:hidden}.login-panel:before{content:"";z-index:-1;border:1px solid #0f8b8d24;border-radius:50%;width:280px;height:280px;position:absolute;bottom:-160px;right:-150px;box-shadow:0 0 0 34px #0f8b8d09,0 0 0 68px #0f8b8d06}.login-copy{isolation:isolate;color:#fff;background:radial-gradient(circle at 90% 92%,#d65f3de6,#0000 29%),linear-gradient(145deg,#0d3548 0%,#0d7077 54%,#10999a 100%);align-content:center;padding:clamp(48px,7vw,112px);display:grid;position:relative;overflow:hidden}.login-copy:after{content:"";z-index:-1;aspect-ratio:1;border:1px solid #ffffff21;border-radius:50%;width:min(46vw,620px);position:absolute;top:-29%;right:-24%;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff05}.login-copy-content{width:min(100%,720px)}.login-brand{margin-bottom:clamp(26px,4vh,42px)}.login-brand .brand-title{font-size:var(--text-title)}.login-brand .brand-subtitle{color:#e5f4f4c7}.login-copy h1{letter-spacing:-.035em;text-wrap:balance;max-width:720px;margin:0 0 18px;font-size:clamp(1.8rem,3.05vw,3rem);line-height:1.08}.login-copy p{color:#e5f4f4db;max-width:650px;margin:0;font-size:clamp(.92rem,1.2vw,1.08rem);line-height:1.65}.login-panel>.card{width:min(100%,440px)}.login-form-card{border-color:#0f2a3d1a;border-radius:16px;gap:18px;padding:30px;box-shadow:0 22px 55px #0f2a3d1a,0 2px 8px #0f2a3d0a}.login-form-card h2{font-size:var(--text-title);letter-spacing:-.015em;margin-bottom:4px}.login-language-switch{background:#edf3f4;border:1px solid #cbd7de;border-radius:10px;grid-template-columns:repeat(2,auto);gap:3px;width:fit-content;padding:3px;display:inline-grid}.login-language-switch button{min-height:34px;color:var(--muted);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 12px;font-weight:700}.login-language-switch button:hover{color:var(--text)}.login-language-switch button.active{color:var(--teal);background:#fff;box-shadow:0 1px 4px #0f2a3d1f}.login-language-switch button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.login-form-card .field{gap:8px}.login-form-card .field input{border-color:#cbd7de;border-radius:10px;min-height:46px;padding-inline:12px}.login-form-card .field input:hover{border-color:#9fb1bd}.login-form-card .button{border-radius:10px;min-height:46px;margin-top:2px;box-shadow:0 8px 18px #0f8b8d2e}@media (max-width:900px){.login-screen{background:#f5f8f8;grid-template-rows:auto 1fr;grid-template-columns:1fr;align-content:stretch}.login-copy{min-height:0;padding:calc(28px + env(safe-area-inset-top)) clamp(22px, 7vw, 52px) 56px;background:radial-gradient(circle at 100% 100%,#d65f3db3,#0000 32%),linear-gradient(145deg,#0d3548 0%,#0d767c 68%,#10999a 100%)}.login-copy:after{width:320px;top:-180px;right:-180px}.login-copy-content{width:min(100%,620px);margin-inline:auto}.login-brand{margin-bottom:24px}.login-brand .brand-mark{flex-basis:42px;width:42px;height:42px}.login-copy h1{max-width:600px;margin-bottom:12px;font-size:clamp(1.55rem,6vw,2.15rem);line-height:1.12}.login-copy p{max-width:590px;font-size:.9rem;line-height:1.5}.login-panel{padding:0 clamp(16px, 5vw, 36px) calc(28px + env(safe-area-inset-bottom));align-content:start;overflow:visible}.login-panel:before{display:none}.login-panel>.card{width:min(100%,620px);margin-top:-28px}.login-form-card{border-radius:16px;gap:16px;padding:clamp(22px,6vw,30px)}}@media (max-width:520px){.login-copy{padding:calc(22px + env(safe-area-inset-top)) 20px 48px}.login-brand{margin-bottom:18px}.login-brand .brand-subtitle{font-size:var(--text-xs)}.login-copy h1{margin-bottom:10px;font-size:clamp(1.42rem,7vw,1.8rem)}.login-copy p{display:none}.login-panel{padding-inline:14px}.login-panel>.card{margin-top:-24px}.login-form-card{padding:22px 20px}.login-form-card h2{font-size:1.08rem}.login-form-card .field input,.login-form-card .button{min-height:48px}}
@media (max-width:900px){.app-shell{--clock-gap:12px;--clock-copy-gap:6px;--clock-button-height:48px;--clock-summary-height:44px;--clock-content-top:clamp(16px, 3dvh, 28px);--clock-content-bottom:calc(var(--shell-mobile-tabbar-height) + 6px)}.main-clock .content{min-height:calc(100dvh - var(--shell-mobile-top-clearance) - var(--shell-mobile-tabbar-height) - 6px);padding:var(--clock-content-top) 16px var(--clock-content-bottom);gap:var(--clock-gap);align-items:stretch}.clock-screen{background:0 0;align-content:start;justify-items:center;min-height:100%;display:grid}.clock-card{width:100%;box-shadow:none;gap:var(--clock-gap);background:0 0;border:0;border-radius:0;align-content:start;padding:0}.workday-progress{background:0 0;border:0;padding:2px 0 0}.current-workday-card{background:0 0}.current-workday-main{gap:var(--clock-gap);justify-items:center}.clock-action-panel,.clock-action-panel.with-verification{justify-items:stretch;gap:var(--clock-gap);grid-template-rows:none;grid-template-columns:1fr;width:100%;max-width:394px}.clock-action-copy,.clock-action-submit,.clock-verification-card{width:100%}.clock-action-copy{gap:var(--clock-copy-gap);order:1}.clock-action-panel.with-verification .clock-action-copy,.clock-action-panel.with-verification .clock-action-submit,.clock-action-panel.with-verification .clock-verification-card,.clock-action-panel.with-verification .clock-action-alerts,.clock-action-panel.with-verification .workday-summary-strip{grid-area:auto}.clock-action-alerts{order:3;width:100%}.clock-verification-card{background:0 0;border:0;order:2;justify-self:center;gap:0;width:min(100%,394px);max-width:100%;padding:0;position:relative}.clock-action-submit{gap:var(--clock-gap);order:4}.workday-state-copy{text-align:center;order:0;justify-items:center;gap:4px}.workday-state-copy span{font-size:var(--text-sm);letter-spacing:0;text-transform:none;font-weight:700;display:none}.workday-state-copy h3{font-size:var(--text-display);color:var(--teal)}.workday-state-copy p{font-size:var(--text-body)}.workday-state-copy small{font-size:var(--text-xs);display:block}.clock-location-alert{gap:7px;padding:7px 9px}.clock-location-alert strong,.clock-location-alert span{font-size:var(--text-sm)}.clock-action-buttons{gap:var(--clock-gap);grid-template-columns:1fr;width:100%}.clock-button-primary,.clock-break-button{min-height:var(--clock-button-height);font-size:var(--text-body)}.clock-action-helper{display:none}.clock-mini-camera{justify-self:center;width:100%;max-width:none;position:relative}.clock-mini-camera-frame{aspect-ratio:4/3;border-radius:8px;width:100%;height:auto}.clock-mini-camera-frame video{object-position:center 42%}.clock-mini-camera.needs-action{background:0 0;border:0;width:100%;max-width:none;padding:0}.clock-mini-camera-close{opacity:1;width:22px;height:22px}.clock-verification-heading{display:none}.clock-verification-status{color:#fff;pointer-events:none;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;bottom:8px;left:8px;right:8px}.clock-verification-status span{color:#fff;max-width:100%;font-size:var(--text-xs);white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#07161f9e;border:1px solid #ffffff57;padding:4px 6px}.clock-verification-status small{display:none}.clock-mini-camera-status{pointer-events:none;justify-content:center;margin-top:0;position:absolute;bottom:8px;left:8px;right:8px}.clock-mini-camera-status span,.clock-mini-camera-status .compact-button,.clock-mini-camera .message.error{display:none}.clock-verification-card.ready .clock-verification-status{justify-content:center}.clock-verification-card.ready .clock-verification-status span{font-size:var(--text-xs)}.clock-verification-card.ready .clock-verification-status small{color:#fff;text-align:right;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#07161f80;border:1px solid #ffffff47;border-radius:999px;padding:4px 7px}.clock-copy-desktop,.clock-location-alert .clock-copy-desktop,.clock-action-helper .clock-copy-desktop{display:none}.clock-copy-mobile,.clock-action-helper .clock-copy-mobile{display:inline}.clock-location-alert .clock-copy-mobile{display:block}.current-workday-main,.workday-summary-strip{grid-template-columns:1fr}.workday-ring{width:216px}.workday-ring.muted{width:188px}.clock-mini-camera .compact-button{width:auto}.workday-summary-strip{order:5;gap:8px;width:100%;max-width:394px;padding-top:4px}.workday-summary-items{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:0;width:100%;max-width:394px;display:grid;overflow:hidden}.workday-summary-item{width:auto;min-height:var(--clock-summary-height);color:var(--ink);background:0 0;border:0;border-radius:0;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:center;gap:2px 7px;padding:7px 12px;display:grid}.workday-summary-item+.workday-summary-item{border-left:1px solid var(--line)}.workday-summary-title{display:none}.workday-summary-label{min-width:0;color:var(--muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;line-height:1.05;overflow:hidden}.workday-summary-item strong{color:var(--ink);font-size:var(--text-base);white-space:nowrap;grid-column:2;line-height:1.02}.workday-summary-item .legend-dot{display:none}.workday-summary-item strong,.workday-summary-label{grid-column:1}@media (max-height:700px){.app-shell{--clock-gap:6px;--clock-copy-gap:3px;--clock-button-height:44px;--clock-summary-height:38px;--clock-content-top:8px;--clock-content-bottom:calc(var(--shell-mobile-tabbar-height) + 6px)}.clock-card{gap:6px}.workday-progress{padding-top:0}.workday-state-copy h3{font-size:var(--text-page);line-height:1.08}.workday-state-copy p{font-size:var(--text-md);line-height:1.15}.clock-mini-camera-placeholder{font-size:var(--text-xs);gap:4px;padding:6px}.clock-mini-camera-status{bottom:6px}.clock-mini-camera .compact-button{min-height:26px;font-size:var(--text-xs);padding:3px 8px}.clock-verification-status span{font-size:var(--text-xs)}.clock-button-primary,.clock-break-button{min-height:var(--clock-button-height);font-size:var(--text-body)}.workday-summary-strip{gap:6px;padding-top:0}.workday-summary-item{min-height:var(--clock-summary-height);gap:1px 6px;padding:5px 10px}.workday-summary-label{font-size:var(--text-xs)}.workday-summary-item strong{font-size:var(--text-body)}}@media (min-height:701px) and (max-height:820px){.app-shell{--clock-gap:10px;--clock-copy-gap:5px;--clock-button-height:46px;--clock-summary-height:42px;--clock-content-top:clamp(12px, 2.5dvh, 20px);--clock-content-bottom:calc(var(--shell-mobile-tabbar-height) + 6px)}.clock-button-primary,.clock-break-button{min-height:var(--clock-button-height)}.workday-summary-item{min-height:var(--clock-summary-height);padding-block:6px}}@media (min-height:821px) and (max-height:879px){.app-shell{--clock-gap:8px;--clock-summary-height:42px}}@media (min-width:700px) and (max-width:900px){.app-shell{--clock-gap:12px;--clock-copy-gap:6px;--clock-button-height:48px;--clock-summary-height:44px;--clock-content-top:clamp(18px, 3dvh, 32px);--clock-content-bottom:calc(var(--shell-mobile-tabbar-height) + 10px)}.main-clock .content{justify-items:center;padding-inline:clamp(28px,7vw,72px)}.clock-card{width:min(100%,640px)}.clock-action-panel,.clock-action-panel.with-verification{max-width:520px}.clock-verification-card{width:min(100%,460px);max-width:460px}.clock-action-submit,.workday-summary-strip,.workday-summary-items{max-width:520px}.workday-summary-item{grid-template-rows:auto;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-inline:16px}.workday-summary-label,.workday-summary-item strong{grid-column:auto}.workday-summary-label{font-size:var(--text-sm)}.workday-summary-item strong{font-size:var(--text-base)}}.clock-break-button{width:100%}}
.request-item{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px}.request-list{gap:10px;display:grid}.request-item.compact{padding:12px}.request-summary-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.request-summary-main{gap:3px;min-width:0;display:grid}.request-summary-main span{min-width:0;color:var(--muted);font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.request-summary-main p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.request-summary-actions{align-items:center;gap:8px;display:inline-flex}.request-summary-actions .button{min-height:32px;padding:0 10px}.request-expanded{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.request-item p{color:var(--muted);margin:10px 0}.request-item.compact p{margin:0}.request-info-note{color:#6d4a00;background:#fff7df;border:1px solid #f1d58f;border-radius:8px;gap:4px;margin:10px 0;padding:10px 12px;display:grid}.request-info-note span{color:#6d4a00;font-size:var(--text-body);line-height:1.35}.compact-request-list{border:1px solid var(--line);background:#fff;border-radius:8px;display:grid;overflow:hidden}.compact-request-item{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:12px 14px;display:grid}.compact-request-item:last-child{border-bottom:0}.compact-request-item div{gap:3px;min-width:0;display:grid}.compact-request-item strong,.compact-request-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.compact-request-item span{color:var(--muted);font-size:var(--text-md);font-weight:700}.compact-list{margin-top:14px}@media (max-width:1320px){.requests-layout{grid-template-columns:1fr}}@media (max-width:900px){.request-detail-layout,.request-detail-layout.with-sidebar{grid-template-columns:1fr}.request-detail-sidebar{border-top:1px solid var(--line);border-left:0;grid-template-columns:1fr;padding-top:22px;padding-left:0}.request-decision-card{grid-column:auto}.section-tabs.requests-primary-tabs{gap:22px;margin:0}.requests-admin-workspace-panel{padding:14px 0 0}.request-type-panel,.request-date-grid{grid-template-columns:1fr}.requests-title-action{width:auto;min-height:32px;font-size:var(--text-md);padding:0 9px}.requests-inbox-card{gap:10px}.request-inbox-tabs button{min-height:30px;font-size:var(--text-sm)}.employee-request-details{grid-template-columns:1fr}.employee-request-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px 0}.employee-request-actions{justify-content:flex-end;gap:6px}.employee-request-main p{white-space:normal;font-size:var(--text-sm);line-height:1.25}.employee-request-main strong{font-size:var(--text-md);line-height:1.15}.employee-request-main span{font-size:var(--text-sm);line-height:1.25}.employee-request-actions .status-badge{min-height:22px;font-size:var(--text-xs);padding:2px 7px}.request-summary-row{grid-template-columns:1fr}.request-summary-actions{justify-content:space-between}.request-compose-card{padding:18px}.app-shell-requests .content{gap:12px}.request-submit-row{grid-template-columns:1fr;align-items:stretch}.request-submit-row .button{width:100%;min-height:50px}.request-submit-summary{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;grid-template-columns:1fr;padding:10px 12px}.request-submit-summary h3{color:var(--muted);font-size:var(--text-sm);margin:0;font-weight:850;display:block}.request-submit-summary span{font-size:var(--text-md);background:0 0;border:0;padding:0;display:inline}.request-submit-summary strong{margin-right:6px;display:inline}.request-compose-card .section-heading>.badge{display:none}.compact-request-item{grid-template-columns:minmax(0,1fr);align-items:start}.compact-request-item div>span,.request-summary-main>span{display:none}}@media (max-width:620px){.request-detail-header{align-items:flex-start}.request-conversation-card{padding-top:4px}.request-detail-sidebar{grid-template-columns:1fr}.request-message-meta,.request-composer-footer{flex-direction:column;align-items:flex-start}.request-composer-footer .button{width:100%}.section-tabs.requests-primary-tabs{width:auto}}
@media (max-width:900px){.attendance-review-item:not(.attendance-supervisor-review-row){grid-template-columns:1fr}.attendance-supervisor-review-row{grid-template-columns:minmax(0,1fr) minmax(150px,auto);grid-template-areas:"identity exception""timing payroll""actions actions";align-items:start;gap:14px 18px;padding:16px 0}.attendance-supervisor-exception{justify-self:end}.attendance-supervisor-actions{justify-content:flex-start}.attendance-action-popover.attendance-record-action-popover{top:auto;bottom:calc(100% + 8px);right:0;transform:none}.attendance-punch-review-grid,.attendance-punch-ring-view,.attendance-punch-map-view{grid-template-columns:1fr}.attendance-punch-map-view{gap:14px}.attendance-punch-map-plot{min-height:360px}.attendance-punch-map-list-item,.attendance-punch-map-list>span{grid-template-columns:12px 72px minmax(0,1fr);padding:12px 0}.punch-timeline-row{--timeline-icon-size:48px;--timeline-grid-columns:58px minmax(0, 1fr) 40px 64px;--timeline-grid-gap:10px;padding:14px 0}.punch-timeline-row:not(:last-child):after{top:58px;bottom:-14px}.punch-timeline-icon{width:var(--timeline-icon-size);height:var(--timeline-icon-size)}.punch-timeline-primary{grid-template-columns:1fr;gap:3px}.punch-timeline-meta{justify-content:flex-start}.punch-timeline-photo-slot{border-radius:7px;width:40px;height:40px}.punch-timeline-time{font-size:var(--text-body)}.attendance-photo-lightbox-backdrop{padding:12px}.attendance-photo-lightbox{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:12px}.attendance-photo-lightbox-stage{min-height:min(58dvh,520px)}.attendance-photo-lightbox-stage img{max-height:min(58dvh,520px)}.attendance-photo-lightbox-nav{width:40px;height:50px}.attendance-punch-ring{justify-self:start}.attendance-punch-ring-view{grid-template-columns:auto minmax(0,1fr);gap:20px;padding:18px;position:static}.attendance-detail-header-main{gap:16px;display:grid}.attendance-detail-actions{justify-content:flex-start}.attendance-ledger-controls{grid-template-columns:minmax(0,1fr) auto}.attendance-ledger-controls .field:first-child{grid-column:1/-1}.attendance-period-summary{gap:10px}.attendance-period-heading h2{font-size:var(--text-title)}.attendance-period-fact{font-size:var(--text-md)}.attendance-period-facts{gap:6px 10px}.attendance-records-section{gap:12px}.attendance-records-section .section-heading{margin-bottom:8px}.attendance-records-section .section-heading h2{margin-bottom:2px}.attendance-records-section .section-heading p{font-size:var(--text-sm);line-height:1.2}.attendance-table-shell>.table-wrap{display:none}.attendance-mobile-list{gap:0;display:grid}.attendance-compact-list{background:0 0;border:0;border-radius:0}.attendance-compact-row{border-bottom:1px solid var(--line);background:0 0;grid-template-columns:minmax(52px,auto) minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px 0}.attendance-compact-date{font-size:var(--text-body)}.attendance-compact-status-line{gap:6px}.attendance-compact-status-line strong{font-size:var(--text-body)}.attendance-record-status-pill{font-size:var(--text-md);padding:3px 7px}.attendance-compact-main span{font-size:var(--text-md)}.attendance-mobile-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;min-width:0;padding:14px;display:grid}.attendance-mobile-card-head{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.attendance-mobile-card-head div{gap:2px;min-width:0;display:grid}.attendance-mobile-card-head strong,.attendance-mobile-card-head span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.attendance-mobile-card-head span{color:var(--muted);font-size:var(--text-sm);font-weight:700}.attendance-mobile-card dl{gap:0;margin:0;display:grid}.attendance-mobile-card dl div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:8px 0;display:flex}.attendance-mobile-card dt,.attendance-mobile-card dd{font-size:var(--text-md);margin:0}.attendance-mobile-card dt{color:var(--muted);font-weight:750}.attendance-mobile-card dd{color:var(--ink);text-align:right;font-weight:800}}@media (max-width:620px){.attendance-detail-record-header{padding-bottom:16px}.attendance-detail-header-icon{width:40px;height:40px}.attendance-detail-actions{grid-template-columns:minmax(0,1fr) auto;display:grid}.attendance-detail-actions>.button:not(.icon-button),.attendance-detail-actions>.attendance-action-menu:first-child,.attendance-detail-actions>.attendance-action-menu:first-child .button{width:100%}.attendance-detail-view-navigation{gap:12px}.punch-review-tabs{gap:22px}.attendance-events-count{padding-inline:8px}.attendance-punch-ring-view{grid-template-columns:minmax(0,1fr);gap:12px}.attendance-punch-ring{justify-self:center}.section-tabs.attendance-workspace-tabs{gap:22px;width:auto;margin:0}.attendance-workspace-panel{padding:14px 0 0}.attendance-supervisor-review-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"identity""exception""timing""payroll""actions";gap:10px}.attendance-supervisor-exception{justify-self:start}.attendance-supervisor-time,.attendance-supervisor-payroll{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px}.attendance-supervisor-time span,.attendance-supervisor-payroll span{margin-top:0}.attendance-supervisor-actions{grid-template-columns:minmax(0,1fr);display:grid}.attendance-supervisor-actions .button,.attendance-supervisor-actions .attendance-record-action-menu{width:100%}.attendance-live-record-info{justify-self:start}}
@media (max-width:900px){.support-admin-filters,.support-ticket-meta{grid-template-columns:minmax(0,1fr)}.support-admin-ticket-head{flex-direction:column;align-items:flex-start}.support-admin-badges{justify-content:flex-start}.support-section-heading{flex-direction:column;align-items:stretch}}
@media (max-width:1320px){.platform-workspace .grid.cols-2,.platform-workspace .grid.cols-3,.platform-details-layout{grid-template-columns:1fr}}@media (max-width:900px){.platform-directory-heading{flex-direction:column;align-items:stretch;gap:14px}.platform-directory-heading .actions{justify-content:flex-start}.platform-company-header{flex-direction:column;align-items:stretch;gap:16px}.platform-company-header>.button{width:100%}.platform-company-facts{grid-template-columns:1fr}.platform-company-facts>div:nth-child(odd){padding-right:0}.platform-company-access-row{flex-direction:column;align-items:flex-start}.platform-company-schedule-row{grid-template-columns:auto minmax(0,1fr)}.platform-company-schedule-row>.button{grid-column:1/-1;width:100%}.platform-branch-schedule-editor-row{grid-template-columns:auto minmax(0,1fr)}.platform-branch-schedule-editor-row>.button{grid-column:1/-1;width:100%}.platform-company-access-row .actions{justify-content:space-between;width:100%}.platform-section-heading{flex-direction:column;align-items:stretch}.platform-section-heading .button{width:100%}.platform-user-heading-actions{grid-template-columns:minmax(0,1fr);width:100%;display:grid}.platform-user-editor-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start}.platform-user-editor-heading .platform-back-link{grid-column:1/-1}.platform-user-editor-section{padding:0}.platform-user-editor-actions .button{flex:1 1 0}.platform-invitation-row{grid-template-columns:1fr;align-items:start}.platform-invitation-row .actions{width:100%}.platform-invitation-row .actions .button{flex:1 1 0}.platform-permission-groups{grid-template-columns:1fr}}
@media (max-width:900px){.clock-location-layout,.location-item,.connector-list-item,.connector-hero,.connector-pairing,.connector-update-control{grid-template-columns:1fr;display:grid}.connector-hero>.actions{justify-content:flex-start}.connector-pairing pre{width:100%}.map-canvas{max-width:none;height:280px}}
@media (max-width:900px){.section-tabs.payroll-workspace-tabs{gap:22px}.payroll-run-context{flex-wrap:wrap}.payroll-header-meta{margin-left:0}.adjustments-head{grid-template-columns:minmax(0,1fr)}.adjustments-selected-summary{justify-content:space-between;min-height:0}.detail-page-header{flex-direction:column;align-items:flex-start;display:flex}.payroll-period-panel{grid-template-columns:1fr}.payroll-period-footer{flex-direction:column;align-items:stretch}.payroll-period-footer .button{width:100%}.payroll-config-layout,.payroll-config-editor-footer{grid-template-columns:1fr}.payroll-config-table-actions{justify-content:flex-start}.payroll-config-sidebar{position:static}.payroll-config-editor-grid,.payroll-config-checkbox-grid,.income-tax-bracket-head,.income-tax-bracket-row,.time-pay-tier-grid-head,.time-pay-tier-row{grid-template-columns:1fr}.income-tax-bracket-head,.time-pay-tier-grid-head{display:none}.income-tax-bracket-row,.time-pay-tier-row{border-top:1px solid var(--line);padding-top:10px}.income-tax-bracket-row .field label,.time-pay-tier-row .field label{display:block}}

@media print{body{background:#fff}.sidebar,.topbar,.mobile-appbar,.mobile-tabbar,.mobile-scope-region,.support-drawer,.toast-region,.section-tabs,.button{display:none!important}}
@page payroll-document{size:letter landscape;margin:.35in}@media print{.payslip-document,.register-detail-body{page:payroll-document}.payslip-document{page-break-inside:avoid;box-shadow:none;border:0;border-radius:0;width:100%;max-width:none;min-height:auto;padding:0}.payslip-landscape{width:100%;min-height:auto;padding:0}.payslip-landscape-head{grid-template-columns:minmax(170px,.8fr) minmax(250px,1.1fr) minmax(240px,1fr) minmax(170px,.8fr)}.payslip-landscape-grid{grid-template-columns:minmax(690px,2.3fr) minmax(230px,.78fr)}.payslip-footer{grid-template-columns:minmax(0,1fr) minmax(180px,260px)}.payslip-watermark{color:#0f334417}.payroll-print-backdrop{background:#fff;padding:0;display:block;position:static}.payroll-print-backdrop .modal-card-register{width:100%;max-height:none;box-shadow:none;border:0;padding:0}.payroll-print-backdrop .modal-heading{display:none}.payroll-print-backdrop .payslip-modal-body,.payroll-print-backdrop .register-detail-body{padding:0;overflow:visible}}
.section-tabs{border:1px solid var(--line);scrollbar-width:none;background:#fff;border-radius:12px;flex-wrap:nowrap;align-items:center;gap:6px;width:fit-content;max-width:100%;padding:6px;display:inline-flex;overflow-x:auto}.section-tabs::-webkit-scrollbar{display:none}.section-tabs button{min-height:34px;color:var(--muted);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:9px;flex:none;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:850;display:inline-flex}.section-tabs button.active,.section-tabs button:hover{background:var(--teal);color:#fff;box-shadow:none;border-color:#0000}.section-tabs button span{color:var(--muted);font-size:var(--text-sm);background:#eef5f8;border-radius:999px;margin-left:4px;padding:2px 7px}.section-tabs button.active span,.section-tabs button:hover span{color:#fff;background:#fff3}@media (max-width:620px){.section-tabs{width:100%}}
.notifications-bell{position:relative}.notifications-bell-button{background:var(--surface,#fff);border:1px solid var(--border,#d8e1e8);color:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;min-width:40px;min-height:40px;display:inline-flex;position:relative}.notifications-count{color:#fff;background:#d97706;border-radius:999px;justify-content:center;align-items:center;min-width:18px;min-height:18px;padding:0 4px;font-size:.7rem;font-weight:700;display:inline-flex;position:absolute;top:-6px;right:-6px}.notifications-popover{background:var(--surface,#fff);border:1px solid var(--border,#d8e1e8);z-index:40;border-radius:12px;gap:12px;width:min(380px,100vw - 32px);max-height:min(70vh,560px);padding:14px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 16px 40px #0f2f3d2e}.notifications-popover>header,.notifications-center-heading,.notification-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.notifications-popover>header button,.notification-item>button:last-child{color:inherit;cursor:pointer;background:0 0;border:0;padding:6px}.notifications-list{gap:8px;display:grid}.notification-item{border:1px solid var(--border,#d8e1e8);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid;overflow:hidden}.notification-item.unread{border-color:#0f8f8a;box-shadow:inset 3px 0 #0f8f8a}.notification-open{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;gap:6px;padding:12px;display:grid}.notification-open time{color:var(--muted,#60747d);white-space:nowrap;font-size:.75rem}.notifications-center{min-width:0}.notifications-center-heading{margin-bottom:16px}.notifications-center-heading p{margin:4px 0 0}.notifications-load-state{gap:12px;display:grid}@media (max-width:900px){.notifications-bell-desktop{display:none}.notifications-popover{position:fixed;top:64px;right:12px}}@media (min-width:901px){.notifications-bell-mobile{display:none}}

