#payrollDialog{box-sizing:border-box;width:min(1280px,96vw);max-height:94vh;overflow:auto;margin:auto;padding:24px;border:1px solid #8aa0b4;border-radius:16px;background:#f6f9fc;color:#183b51;font:14px/1.5 Arial,sans-serif}
#payrollDialog::backdrop{background:#071b2ab8}#payrollDialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}#payrollDialog h2{margin:0}
#payrollDialog .nm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}#payrollDialog label{display:block;font-weight:bold}#payrollDialog input,#payrollDialog select,#payrollDialog textarea{box-sizing:border-box;width:100%;padding:9px;background:white;color:#183b51;border:1px solid #8aa0b4;border-radius:6px}#payrollDialog input[type=checkbox]{width:auto}
#payrollDialog button{width:auto;padding:9px 12px;margin:4px;background:#19465e;color:white;border:0;border-radius:6px;cursor:pointer}#payrollDialog button:disabled{opacity:.5;cursor:wait}#payrollDialog button:focus-visible{outline:3px solid #d7a321}#nmNav{display:flex;flex-wrap:wrap;gap:3px;border-block:1px solid #b7c9d1;padding:10px 0}
#nmStatus{padding:12px;background:#e0eef4;white-space:pre-wrap}#nmPreview{overflow:auto;max-height:70vh}#nmPreview table{width:100%;border-collapse:collapse}#nmPreview th{background:#19465e;color:white}#nmPreview td,#nmPreview th{padding:8px;border-bottom:1px solid #bccbd3;text-align:left}#nmPreview tr:nth-child(even){background:#e5eff3}#payrollDialog pre{white-space:pre-wrap;max-height:250px;overflow:auto}.nm-file{border-bottom:1px solid #c3d1d8;padding:12px 0}
@media(max-width:760px){#payrollDialog .nm-grid{grid-template-columns:1fr}#payrollDialog header{display:block}}
#payrollDialog{overflow-wrap:anywhere}#payrollDialog>*{min-width:0;max-width:100%}#payrollDialog button{max-width:100%;white-space:normal}#nmPreview{width:100%;box-sizing:border-box}#nmFiles form{max-width:100%}
#payrollDialog{background:#f8fafc;color:#172b42;padding:20px;width:min(1480px,97vw)}
#payrollDialog>header{padding:16px;border-radius:12px;background:#12385b;color:#fff}
#payrollDialog .nm-workflow{padding:12px 16px;background:#e0e7ff;border-radius:8px;color:#312e81;font-weight:600}
#payrollDialog [data-color=blue]{--nm-color:#1d4ed8;--nm-light:#eff6ff}
#payrollDialog [data-color=purple]{--nm-color:#6d28d9;--nm-light:#f5f3ff}
#payrollDialog [data-color=teal]{--nm-color:#0f766e;--nm-light:#f0fdfa}
#payrollDialog [data-color=amber]{--nm-color:#92400e;--nm-light:#fffbeb}
#payrollDialog [data-color=green]{--nm-color:#166534;--nm-light:#f0fdf4}
#payrollDialog [data-color=pink]{--nm-color:#be185d;--nm-light:#fdf2f8}
#payrollDialog [data-color=slate]{--nm-color:#334155;--nm-light:#f1f5f9}
#payrollDialog [data-color=cyan]{--nm-color:#0369a1;--nm-light:#f0f9ff}
#payrollDialog #nmNav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border:0}
#payrollDialog .nm-nav-section{background:var(--nm-light);border:1px solid #cbd5e1;border-top:5px solid var(--nm-color);padding:10px;border-radius:10px;min-width:0}
#payrollDialog .nm-nav-section h3{font-size:14px;margin:0 0 7px;color:var(--nm-color)}
#payrollDialog .nm-nav-section button{background:var(--nm-color);font-size:13px;margin:3px;padding:8px 10px;box-shadow:0 1px 2px #0002}
#payrollDialog button[aria-current=page]{outline:3px solid #eab308;outline-offset:1px}
#payrollDialog button.nm-danger{background:#b91c1c;color:#fff}
#payrollDialog button.nm-back,#payrollDialog #nmClose{background:#475569;color:#fff;border:1px solid #cbd5e1}
#payrollDialog button.nm-save{background:#166534;color:#fff}
#payrollDialog button.nm-edit{background:#92400e;color:#fff}
#payrollDialog #nmClose{background:#b91c1c}
#payrollDialog button:hover:not(:disabled){filter:brightness(1.12)}
#payrollDialog #nmEditor:not(:empty){padding:16px;background:var(--nm-light,#fff);border:1px solid #cbd5e1;border-top:5px solid var(--nm-color,#1d4ed8);border-radius:10px;margin-top:12px}
#payrollDialog #nmEditor h3{color:var(--nm-color,#1d4ed8);margin:0 0 14px}
#payrollDialog .nm-table-wrap{overflow:auto;max-width:100%;max-height:62vh;border:1px solid #cbd5e1;border-radius:8px;margin:12px 0;background:#fff}
#payrollDialog table{width:100%;border-collapse:collapse;font-size:13px}
#payrollDialog th{position:sticky;top:0;background:var(--nm-color,#12385b);color:#fff;z-index:1}
#payrollDialog th,#payrollDialog td{padding:9px;text-align:left;vertical-align:top;border-bottom:1px solid #cbd5e1;min-width:80px}
#payrollDialog tr:nth-child(even){background:#f1f5f9}
#payrollDialog td input,#payrollDialog td select{min-width:100px}
#payrollDialog details{border:1px solid #cbd5e1;border-radius:8px;padding:10px;margin:8px 0;background:#fff}
#payrollDialog summary{font-weight:bold;color:#1e40af;cursor:pointer}
#payrollDialog .nm-alert{color:#991b1b;background:#fee2e2;padding:12px;border-left:5px solid #b91c1c}
#payrollDialog #nmSummary{padding:12px;background:#ede9fe;border-left:5px solid #7c3aed;border-radius:6px;margin:12px 0}
#payrollDialog #nmStatus{border-left:5px solid #0284c7;background:#e0f2fe;border-radius:6px}
#payrollDialog #nmPreview:not(:empty){padding:14px;background:#fff;border:1px solid #94a3b8;border-top:5px solid #166534;border-radius:8px}
#payrollDialog .nm-document-modal{width:min(1400px,94vw);max-height:88vh;overflow:auto;border:2px solid var(--nm-color,#15803d);border-radius:14px;padding:20px;color:#172033;background:#fff}
#payrollDialog .nm-document-modal::backdrop{background:#0f172ab3}
#payrollDialog .nm-document-modal header{position:sticky;top:-20px;z-index:5;background:#fff;border-bottom:5px solid var(--nm-color,#15803d);padding:10px;display:flex;justify-content:space-between;align-items:center}
#payrollDialog .nm-document-modal pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f5f9;padding:14px}
#payrollDialog .nm-worker-context{padding:14px;background:#fff7ed;border-left:5px solid #b45309;font-weight:700}
#payrollDialog .nm-aux{grid-column:1/-1}
#payrollDialog details[data-color]{border-left:6px solid var(--nm-color)}
#payrollDialog .nm-modal-status{white-space:pre-wrap;overflow-wrap:anywhere;color:#9a3412}
#payrollDialog [hidden]{display:none!important}
@media(max-width:1100px){#payrollDialog #nmNav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){#payrollDialog{padding:10px}#payrollDialog #nmNav{grid-template-columns:1fr}#payrollDialog .nm-grid{grid-template-columns:1fr}#payrollDialog header{display:flex;align-items:flex-start;flex-wrap:wrap}}
.nm-receipt{max-width:800px;margin:18px auto;padding:26px;background:#fff;color:#172554;border:1px solid #cbd5e1;border-radius:8px;font-size:13px}.nm-receipt>img{float:right;max-width:100px;max-height:55px}.nm-receipt h2{color:#1e3a8a}.nm-receipt-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.nm-receipt-columns h3{padding:10px;background:#dbeafe}.nm-receipt-columns .deduction h3{background:#ffedd5;color:#9a3412}.nm-receipt-columns p,.receipt-net{display:flex;justify-content:space-between;gap:12px}.nm-receipt-columns strong{white-space:nowrap}.receipt-total{border-top:1px solid #cbd5e1;padding-top:10px}.receipt-net{background:#d1fae5;padding:16px;font-size:19px;border-radius:6px}.receipt-signatures{display:flex;justify-content:space-around;gap:20px;margin:42px 0 20px}.receipt-signatures span{border-top:1px solid #64748b;padding:8px 24px}.nm-receipt small{color:#475569}@media(max-width:600px){.nm-receipt{padding:14px}.nm-receipt-columns{grid-template-columns:1fr}.receipt-signatures span{padding:8px 4px}}
#payrollDialog .nm-top-filters{grid-template-columns:minmax(200px,1.2fr) minmax(400px,2fr);align-items:start}
#payrollDialog .nm-date-filters{margin:0;grid-template-columns:repeat(3,minmax(0,1fr))}
#payrollDialog .nm-top-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}
#payrollDialog .nm-top-actions button{margin:0;flex:0 1 190px;min-width:0}
#payrollDialog .nm-jnda-alert{margin:8px 0 16px;padding:12px 16px;background:#fee2e2;border-left:5px solid #dc2626;border-radius:7px;color:#991b1b;font-weight:700;overflow-wrap:anywhere}
@media(max-width:760px){#payrollDialog .nm-top-filters{grid-template-columns:1fr}#payrollDialog .nm-date-filters{grid-template-columns:repeat(3,minmax(0,1fr))}#payrollDialog .nm-top-actions button{flex:1}}
