/* v127 payroll editor. Scoped to payroll; never changes the daily/engine logs. */
.payroll-quick-fill{--pe-bg:#fff;--pe-soft:#edf4f8;--pe-text:#142c3d;--pe-muted:#4b6271;--pe-border:#b5c6d1;--pe-accent:#153f5b;--pe-selected:#e8f3fa;background:var(--pe-bg);color:var(--pe-text);border:1px solid var(--pe-border);border-radius:10px;padding:14px;margin:12px 0;font:14px/1.35 Arial,sans-serif;box-sizing:border-box}
#payrollView>.payroll-quick-fill{width:100%;max-width:none;margin-left:auto;margin-right:auto}
.payroll-quick-fill *{box-sizing:border-box}.payroll-quick-fill [hidden]{display:none!important}
.payroll-quick-fill .pe-toolbar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.payroll-quick-fill .pe-toolbar-heading strong{display:block;font-size:18px}
.payroll-quick-fill .pe-view-switch{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.payroll-quick-fill .pe-view-switch>span{font-size:12px;font-weight:800;margin-right:2px}.payroll-quick-fill .pe-view-switch button{min-height:36px;padding:7px 10px}.payroll-quick-fill .pe-view-switch button.is-active{background:var(--pe-accent);border-color:var(--pe-accent);color:#fff}
.payroll-quick-fill .pe-toolbar-heading span{display:block;color:var(--pe-muted);font-size:13px;margin-top:3px}
.payroll-quick-fill label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700;color:var(--pe-text);margin:0;min-width:0}
.payroll-quick-fill button,.payroll-quick-fill select{font:700 13px Arial,sans-serif;min-height:40px;padding:8px 11px;border:1px solid var(--pe-border);border-radius:6px;background:var(--pe-bg);color:var(--pe-text);width:auto;box-shadow:none;cursor:pointer}
.payroll-quick-fill select{padding-right:24px;max-width:100%}.payroll-quick-fill button:hover:not(:disabled){background:var(--pe-soft)}.payroll-quick-fill button:focus-visible,.payroll-quick-fill select:focus-visible{outline:3px solid #c79525;outline-offset:2px}
.payroll-quick-fill button:disabled{opacity:.5;cursor:not-allowed}.payroll-quick-fill .pe-primary{background:var(--pe-accent);border-color:var(--pe-accent);color:#fff}.payroll-quick-fill .pe-primary:hover:not(:disabled){background:#245d81}
.payroll-quick-fill .pe-toolbar-actions{display:flex;align-items:end;gap:12px 16px;flex-wrap:wrap}.payroll-quick-fill .pe-selection b{display:block;margin-bottom:5px}.payroll-quick-fill .pe-selection>div{display:flex;gap:6px}.payroll-quick-fill .pe-range{display:flex;gap:8px}.payroll-quick-fill .pe-range select{min-width:83px}.payroll-quick-fill .pe-presets{display:flex;gap:5px;flex-wrap:wrap}.payroll-quick-fill .pe-main-actions{display:flex;gap:6px;flex-wrap:wrap}

.payroll-quick-fill .pe-method-label select{min-width:145px}.payroll-quick-fill .pe-cycle{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.payroll-quick-fill .pe-cycle[hidden]{display:none!important}.payroll-quick-fill .pe-cycle span{max-width:360px;font-size:12px;color:var(--pe-muted);padding-bottom:9px}.payroll-quick-fill .pe-custom{flex-basis:100%;border-top:1px solid var(--pe-border);padding-top:10px}.payroll-quick-fill .pe-custom>b{display:block;margin-bottom:7px}.payroll-quick-fill .pe-custom-days{display:flex;gap:5px;flex-wrap:wrap}.payroll-quick-fill .pe-custom-days button{width:40px;min-width:40px;min-height:36px;padding:6px}.payroll-quick-fill .pe-custom-days button.is-active{background:var(--pe-accent);border-color:var(--pe-accent);color:#fff}.payroll-quick-fill .pe-custom-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.payroll-quick-fill .pe-helper{margin-top:10px;color:var(--pe-muted);font-size:12px}.payroll-quick-fill .pe-warning{background:#fff5db;color:#6b4700;border:1px solid #d7b564;border-radius:6px;padding:10px;margin-top:10px}.payroll-quick-fill .pe-message:empty{display:none}.payroll-quick-fill .pe-message{padding-top:10px;font-weight:700}
.payroll-quick-fill .pe-preview{border:2px solid var(--pe-accent);border-radius:8px;padding:12px;margin-top:12px;background:var(--pe-soft)}.payroll-quick-fill .pe-preview h3{font-size:16px;margin:0 0 6px;color:var(--pe-text)}.payroll-quick-fill .pe-preview p{font-size:13px;margin:6px 0 10px}.payroll-quick-fill .pe-preview-table-wrap{max-height:220px;overflow:auto}.payroll-quick-fill .pe-preview table{border-collapse:collapse;background:var(--pe-bg);width:100%;font-size:13px}.payroll-quick-fill .pe-preview th,.payroll-quick-fill .pe-preview td{border:1px solid var(--pe-border);padding:7px;text-align:left;color:var(--pe-text)}.payroll-quick-fill .pe-preview th{background:var(--pe-soft)}.payroll-quick-fill .pe-preview-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}.payroll-quick-fill .pe-preview-actions span{font-size:12px;color:var(--pe-muted)}
#payrollTable.payroll-entry-table,.payroll-review-table.payroll-entry-table{border-collapse:separate!important;border-spacing:0;table-layout:fixed!important;width:100%!important;min-width:var(--payroll-screen-width,1623px)!important;background:#fff;color:#142c3d;filter:none;font-family:Arial,sans-serif;border:0;font-size:13px!important}
#payrollTable.payroll-entry-table :is(th,td),.payroll-review-table.payroll-entry-table :is(th,td){padding:0!important;border:0!important;border-right:1px solid #a5b7c5!important;border-bottom:1px solid #a5b7c5!important;text-align:center;vertical-align:middle;height:44px!important;min-width:0!important}
#payrollTable.payroll-entry-table th,.payroll-review-table.payroll-entry-table th{background:#e9f1f6!important;color:#153349!important;font-size:12px!important;font-weight:800;height:48px!important;line-height:1.15}
#payrollTable.payroll-entry-table :is(.pe-select),.payroll-review-table.payroll-entry-table :is(.pe-select){width:44px!important}
#payrollTable.payroll-entry-table :is(.pe-class),.payroll-review-table.payroll-entry-table :is(.pe-class){width:150px!important}
#payrollTable.payroll-entry-table :is(.pe-name),.payroll-review-table.payroll-entry-table :is(.pe-name){width:195px!important;text-align:left}
#payrollTable.payroll-entry-table :is(th.pe-name),.payroll-review-table.payroll-entry-table :is(th.pe-name){padding-left:8px!important}
#payrollTable.payroll-entry-table :is(.pe-total),.payroll-review-table.payroll-entry-table :is(.pe-total){width:56px!important;background:#f1f5f8}
.payroll-entry-table .pe-day-number{display:block;font-size:17px;font-weight:800;line-height:1.2}.payroll-entry-table .pe-weekday{display:block;font-size:10px;line-height:1.3;font-weight:600;margin-top:1px}.payroll-entry-table .pe-select-heading{font-size:9px}
#payrollTable.payroll-entry-table tbody tr,.payroll-review-table.payroll-entry-table tbody tr{height:44px!important}
#payrollTable.payroll-entry-table :is(input[type="text"],input:not([type])),.payroll-review-table.payroll-entry-table :is(input[type="text"],input:not([type])){height:43px!important;min-height:43px!important;width:100%!important;max-width:100%;box-sizing:border-box;border:0!important;border-radius:0;background:transparent!important;color:inherit!important;padding:5px 7px!important;font:13px Arial,sans-serif!important}
#payrollTable.payroll-entry-table .pe-total input,.payroll-review-table.payroll-entry-table .pe-total output{font-weight:800!important;text-align:center}
#payrollTable.payroll-entry-table .pe-cell-target,.payroll-review-table.payroll-entry-table .pe-cell-target{display:flex;align-items:center;justify-content:center;width:100%;height:44px;min-height:44px;padding:0!important;margin:0;cursor:pointer}
#payrollTable.payroll-entry-table input[type="checkbox"],.payroll-review-table.payroll-entry-table input[type="checkbox"]{appearance:auto!important;-webkit-appearance:checkbox!important;width:20px!important;height:20px!important;min-height:20px!important;max-height:20px!important;margin:0!important;padding:0!important;accent-color:#175b87;cursor:pointer}
#payrollTable.payroll-entry-table .pe-row-selected td,.payroll-review-table.payroll-entry-table .pe-row-selected td{background:#e8f3fa}
#payrollTable.payroll-entry-table .pe-second-start,.payroll-review-table.payroll-entry-table .pe-second-start{border-left:2px solid #506f83!important}
#payrollTable.payroll-entry-table .pe-invalid-date,.payroll-review-table.payroll-entry-table .pe-invalid-date{display:none!important}
.payroll-review-table-wrap,.payroll-table-wrap{overscroll-behavior-x:contain}
@media screen{
 #payrollPage{min-width:0!important;width:100%!important;max-width:none!important;box-sizing:border-box}
 #payrollTable.payroll-entry-table .pe-period-hidden,.payroll-review-table.payroll-entry-table .pe-period-hidden{display:none!important}
 #payrollTable.payroll-entry-table .pe-select,.payroll-review-table.payroll-entry-table .pe-select{position:sticky!important;left:0!important;z-index:2!important;background:#fff}
 #payrollTable.payroll-entry-table .pe-name,.payroll-review-table.payroll-entry-table .pe-name{position:sticky!important;left:44px!important;z-index:2!important;background:#fff;box-shadow:2px 0 2px #152a3b25!important}
 #payrollTable.payroll-entry-table thead :is(.pe-select,.pe-name),.payroll-review-table.payroll-entry-table thead :is(.pe-select,.pe-name){z-index:3!important}
 html[data-sbm-theme="dark"] .payroll-quick-fill{--pe-bg:#101d2c;--pe-soft:#182d40;--pe-text:#eff6fb;--pe-muted:#bfd0dd;--pe-border:#5c7487;--pe-accent:#216894}
 html[data-sbm-theme="dark"] #payrollTable.payroll-entry-table,html[data-sbm-theme="dark"] .payroll-review-table.payroll-entry-table{background:#101d2c!important;color:#f1f5f9!important;filter:none!important}
 html[data-sbm-theme="dark"] #payrollTable.payroll-entry-table :is(td,input),html[data-sbm-theme="dark"] .payroll-review-table.payroll-entry-table :is(td,input){background:#101d2c!important;color:#f1f5f9!important}
 html[data-sbm-theme="dark"] #payrollTable.payroll-entry-table th,html[data-sbm-theme="dark"] .payroll-review-table.payroll-entry-table th{background:#233c51!important;color:#f1f5f9!important}
 html[data-sbm-theme="dark"] #payrollTable.payroll-entry-table .pe-row-selected :is(td,input),html[data-sbm-theme="dark"] .payroll-review-table.payroll-entry-table .pe-row-selected :is(td,input){background:#18344b!important}
 html[data-sbm-theme="dark"] #payrollTable.payroll-entry-table input[type="checkbox"],html[data-sbm-theme="dark"] .payroll-review-table.payroll-entry-table input[type="checkbox"]{accent-color:#82c5ee;color-scheme:dark}
}
@media screen and (max-width:650px){
 .payroll-quick-fill{padding:10px}.payroll-quick-fill .pe-toolbar-heading{align-items:stretch}.payroll-quick-fill .pe-toolbar-actions{gap:10px}.payroll-quick-fill .pe-selection,.payroll-quick-fill .pe-main-actions{flex-basis:100%}.payroll-quick-fill .pe-main-actions button{flex:1 1 140px}.payroll-quick-fill button,.payroll-quick-fill select{min-height:44px}.payroll-review-dialog{padding:10px!important;box-sizing:border-box}.payroll-quick-fill .pe-presets{flex-basis:100%}
 #payrollTable.payroll-entry-table .pe-class,.payroll-review-table.payroll-entry-table .pe-class{display:none!important}
 #payrollTable.payroll-entry-table .pe-name,.payroll-review-table.payroll-entry-table .pe-name{width:160px!important}
 #payrollTable.payroll-entry-table,.payroll-review-table.payroll-entry-table{min-width:calc(var(--payroll-screen-width,1623px) - 185px)!important}
 #payrollPage .payroll-top-fields{grid-template-columns:1fr 1fr!important;padding:8px 0}#payrollPage .payroll-top-fields label{flex-direction:column;align-items:stretch;gap:2px}#payrollPage .payroll-top-fields input,#payrollPage .payroll-top-fields select{min-height:36px!important;font-size:13px!important}
}
@media print{
 .payroll-entry-ui{display:none!important}
 #payrollTable.payroll-entry-table,.payroll-review-table.payroll-entry-table{min-width:0!important;max-width:100%!important;width:100%!important;border-collapse:collapse!important;font-size:7px!important;color:#111!important;background:#fff!important}
 #payrollTable.payroll-entry-table :is(th,td),.payroll-review-table.payroll-entry-table :is(th,td){height:27px!important;border:1px solid #777!important;color:#111!important;background:#fff!important;position:static!important;left:auto!important;box-shadow:none!important}
 #payrollTable.payroll-entry-table tbody tr{height:27px!important;break-inside:avoid}
 #payrollTable.payroll-entry-table .pe-class{width:1.1in!important;display:table-cell!important}#payrollTable.payroll-entry-table .pe-name{width:1.5in!important}#payrollTable.payroll-entry-table .pe-total{width:.42in!important}
 #payrollTable.payroll-entry-table th{font-size:6.5px!important}#payrollTable.payroll-entry-table .pe-day-number{font-size:9px}#payrollTable.payroll-entry-table .pe-weekday{font-size:5.5px}
 #payrollTable.payroll-entry-table :is(input[type="text"],input:not([type])){height:26px!important;min-height:26px!important;font-size:7px!important;padding:2px!important;color:#111!important;background:#fff!important}
 #payrollTable.payroll-entry-table .pe-cell-target{height:26px!important;min-height:26px!important}#payrollTable.payroll-entry-table input[type="checkbox"]{width:10px!important;height:10px!important;min-height:10px!important;max-height:10px!important;color-scheme:light!important;accent-color:#111}
 #payrollTable.payroll-entry-table .pe-period-hidden{display:table-cell!important}#payrollTable.payroll-entry-table .pe-invalid-date{display:none!important}
}
/* html2pdf uses screen media while constructing its canvas. */
body.pdf-export .payroll-entry-ui{display:none!important}
body.pdf-export #payrollTable.payroll-entry-table{min-width:0!important;max-width:100%!important;width:100%!important;border-collapse:collapse!important;font-size:7px!important;background:#fff!important;color:#111!important}
body.pdf-export #payrollTable.payroll-entry-table :is(th,td){height:27px!important;border:1px solid #777!important;color:#111!important;background:#fff!important;position:static!important;left:auto!important;box-shadow:none!important}
body.pdf-export #payrollTable.payroll-entry-table tbody tr{height:27px!important}body.pdf-export #payrollTable.payroll-entry-table .pe-class{width:1.1in!important;display:table-cell!important}body.pdf-export #payrollTable.payroll-entry-table .pe-name{width:1.5in!important}body.pdf-export #payrollTable.payroll-entry-table .pe-total{width:.42in!important}
body.pdf-export #payrollTable.payroll-entry-table th{font-size:6.5px!important}body.pdf-export #payrollTable.payroll-entry-table .pe-day-number{font-size:9px}body.pdf-export #payrollTable.payroll-entry-table .pe-weekday{font-size:5.5px}
body.pdf-export #payrollTable.payroll-entry-table :is(input[type="text"],input:not([type])){height:26px!important;min-height:26px!important;font-size:7px!important;padding:2px!important;color:#111!important;background:#fff!important}
body.pdf-export #payrollTable.payroll-entry-table .pe-cell-target{height:26px!important;min-height:26px!important}body.pdf-export #payrollTable.payroll-entry-table input[type="checkbox"]{width:10px!important;height:10px!important;min-height:10px!important;max-height:10px!important;color-scheme:light!important;accent-color:#111}
body.pdf-export #payrollTable.payroll-entry-table .pe-period-hidden{display:table-cell!important}body.pdf-export #payrollTable.payroll-entry-table .pe-invalid-date{display:none!important}
@media print{
 /* Do not inherit the old two-tier sheet's minimum page height. */
 #payrollPage{min-height:0!important;margin:0!important;break-after:auto!important;page-break-after:auto!important}
 body.payroll-active :is(.app-topbar,.top-action-wrap,.document-tabs,.auto-save-banner,.log-lifecycle,.voyage-screen-head){display:none!important}
}
