:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",ui-sans-serif,system-ui,sans-serif;--font-mono:ui-monospace,"SF Mono",SFMono-Regular,"Cascadia Code","Roboto Mono",Menlo,monospace;--text-11:11px;--leading-11:14px;--text-12:12px;--leading-12:16px;--text-13:13px;--leading-13:18px;--text-14:14px;--leading-14:20px;--text-16:16px;--leading-16:24px;--text-18:18px;--leading-18:26px;--text-22:22px;--leading-22:30px;--text-28:28px;--leading-28:36px;--weight-body:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--color-canvas:#f6f8fb;--color-shell:#eef4f8;--color-surface:#ffffff;--color-surface-subtle:#f8fafc;--color-surface-muted:#f1f5f9;--color-border:#d9e3ec;--color-border-subtle:#e6edf3;--color-border-strong:#c7d5e2;--color-text:#0f1729;--color-text-soft:#334155;--color-muted:#5b6b7f;--color-muted-strong:#475569;--color-disabled:#94a3b8;--color-primary:#087fa7;--color-primary-hover:#066f93;--color-primary-active:#055f7e;--color-primary-soft:#e7f6fb;--color-primary-border:#b9e3ef;--color-action:#27b7d7;--color-success:#0d7a5f;--color-success-soft:#e7f7f1;--color-warning:#b45309;--color-warning-soft:#fff4df;--color-danger:#b42318;--color-danger-soft:#fff0ed;--color-info:#2563eb;--color-info-soft:#eff6ff;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-8:16px;--space-10:20px;--space-12:24px;--space-16:32px;--space-20:40px;--space-24:48px;--radius-4:4px;--radius-6:6px;--radius-8:8px;--radius-10:10px;--radius-12:12px;--radius-16:16px;--radius-full:999px;--shadow-none:none;--shadow-raised:0 1px 2px rgba(15,23,41,0.06);--shadow-popover:0 10px 30px rgba(15,23,41,0.12);--shadow-overlay:0 18px 45px rgba(15,23,41,0.16);--focus-ring:0 0 0 2px var(--color-surface),0 0 0 4px rgba(8,127,167,0.55);--focus-outline:2px solid #087fa7;--duration-fast:120ms;--duration-base:160ms;--duration-overlay:220ms;--ease-out:cubic-bezier(0.23,1,0.32,1);--z-nav:30;--z-sticky:40;--z-drawer:60;--z-modal:80;--z-toast:100;--green:var(--color-action);--green-soft:var(--color-primary-soft);--green-deep:var(--color-primary);--canvas:var(--color-canvas);--surface:var(--color-surface);--surface-tint:var(--color-surface-subtle);--ink:var(--color-text);--muted:var(--color-muted);--border:var(--color-border);--warning:var(--color-warning);--danger:var(--color-danger);--blue:var(--color-info);--shadow:none;--shadow-tight:none;--shadow-card:var(--shadow-raised);--shadow-card-hover:0 8px 22px rgba(15,23,41,0.08);--shadow-elevated:var(--shadow-popover);--glass-bg:rgba(255,255,255,0.86);--glass-border:rgba(217,227,236,0.6);--glass-blur:12px;--radius-lg:var(--radius-12);--radius-md:var(--radius-10);--radius-sm:7px;--transition-lift:border-color var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}:where(a,button,input,textarea,select,summary,[role=tab],[role=row],[tabindex]):focus-visible{outline:var(--focus-outline);outline-offset:2px}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:36px;border:1px solid transparent;border-radius:var(--radius-8);padding:0 var(--space-6);background:transparent;color:var(--color-text);font-size:var(--text-13);font-weight:var(--weight-semibold);line-height:var(--leading-13);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.ui-button:disabled{cursor:not-allowed;opacity:.55}.ui-button--primary{border-color:var(--color-primary);background:var(--color-primary);color:#ffffff}.ui-button--primary:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.ui-button--primary:active:not(:disabled){border-color:var(--color-primary-active);background:var(--color-primary-active)}.ui-button--secondary{border-color:var(--color-border-strong);background:var(--color-surface);color:var(--color-text)}.ui-button--secondary:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-subtle)}.ui-button--subtle{background:var(--color-surface-muted);color:var(--color-text-soft)}.ui-button--subtle:hover:not(:disabled){background:var(--color-border-subtle)}.ui-button--ghost{color:var(--color-text-soft)}.ui-button--ghost:hover:not(:disabled){background:var(--color-surface-muted)}.ui-button--danger{border-color:var(--color-danger);background:var(--color-danger);color:#ffffff}.ui-button--danger:hover:not(:disabled){background:#9a1e14;border-color:#9a1e14}.ui-button--compact{min-height:30px;padding:0 var(--space-4);font-size:var(--text-12)}.ui-button--large{min-height:44px;padding:0 var(--space-8);font-size:var(--text-14)}.ui-button--full{width:100%}.ui-icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-border);border-radius:var(--radius-8);padding:0;background:var(--color-surface);color:var(--color-text-soft);cursor:pointer;transition:background var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.ui-icon-button:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-subtle)}.ui-field{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.ui-label{color:var(--color-text-soft);font-weight:var(--weight-semibold)}.ui-help,.ui-label{font-size:var(--text-12);line-height:var(--leading-12)}.ui-help{color:var(--color-muted)}.ui-error{color:var(--color-danger);font-size:var(--text-12);line-height:var(--leading-12)}.ui-input,.ui-select,.ui-textarea{width:100%;min-height:36px;border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-3) var(--space-5);background:var(--color-surface);color:var(--color-text);font-size:var(--text-14);line-height:var(--leading-14);transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-textarea{min-height:84px;resize:vertical}.ui-input:hover,.ui-select:hover,.ui-textarea:hover{border-color:var(--color-border-strong)}.ui-input:focus-visible,.ui-select:focus-visible,.ui-textarea:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(8,127,167,.14)}.ui-input[aria-invalid=true],.ui-textarea[aria-invalid=true]{border-color:var(--color-danger)}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{background:var(--color-surface-muted);color:var(--color-disabled);cursor:not-allowed}.ui-badge{display:inline-flex;align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-6);padding:1px var(--space-3);background:var(--color-surface-subtle);color:var(--color-text-soft);font-size:var(--text-11);font-weight:var(--weight-semibold);line-height:var(--leading-11);white-space:nowrap}.ui-badge--success{border-color:rgba(13,122,95,.25);background:var(--color-success-soft);color:var(--color-success)}.ui-badge--warning{border-color:rgba(180,83,9,.25);background:var(--color-warning-soft);color:var(--color-warning)}.ui-badge--danger{border-color:rgba(180,35,24,.25);background:var(--color-danger-soft);color:var(--color-danger)}.ui-badge--info{border-color:rgba(37,99,235,.22);background:var(--color-info-soft);color:var(--color-info)}.ui-badge--primary{border-color:var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary)}.ui-surface{border:1px solid var(--color-border);border-radius:var(--radius-10);background:var(--color-surface)}.ui-surface--subtle{background:var(--color-surface-subtle)}.ui-panel{border:1px solid var(--color-border);border-radius:var(--radius-10);background:var(--color-surface);padding:var(--space-8) var(--space-10)}.ui-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.ui-table{width:100%;border-collapse:collapse;font-size:var(--text-13);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ui-table th{border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-5);color:var(--color-muted);font-size:var(--text-12);font-weight:var(--weight-semibold);text-align:left}.ui-table td{border-bottom:1px solid var(--color-border-subtle);padding:var(--space-4) var(--space-5);color:var(--color-text)}.ui-table tbody tr:hover{background:var(--color-surface-subtle)}.ui-table tbody tr[aria-selected=true]{background:var(--color-primary-soft)}.ui-table .is-numeric{text-align:right}.ui-empty{display:grid;justify-items:center;grid-gap:var(--space-3);gap:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-10);padding:var(--space-12) var(--space-10);text-align:center}.ui-empty h3,.ui-empty strong{margin:0;color:var(--color-text);font-size:var(--text-14);font-weight:var(--weight-semibold);line-height:var(--leading-14)}.ui-empty p{margin:0;max-width:400px;color:var(--color-muted)}.ui-alert,.ui-empty p{font-size:var(--text-13);line-height:var(--leading-13)}.ui-alert{display:flex;gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-5) var(--space-6);background:var(--color-surface-subtle);color:var(--color-text-soft)}.ui-alert--warning{border-color:rgba(180,83,9,.3);background:var(--color-warning-soft);color:#7c3f06}.ui-alert--danger{border-color:rgba(180,35,24,.3);background:var(--color-danger-soft);color:#8f1d13}.ui-alert--success{border-color:rgba(13,122,95,.3);background:var(--color-success-soft);color:var(--color-success)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.payroll-csv-preview{display:grid;grid-gap:var(--space-8);gap:var(--space-8)}.payroll-csv-preview .empty-state{min-height:220px}.payroll-csv-preview-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-8);border-bottom:2px solid var(--color-primary);padding-bottom:var(--space-8)}.payroll-csv-brand-block{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:var(--space-6);gap:var(--space-6);min-width:0}.payroll-csv-brand-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:var(--radius-8);background:var(--color-text);color:#ffffff;font-size:var(--text-13);font-weight:var(--weight-bold)}.payroll-csv-brand-block h2{margin:2px 0 0;font-size:var(--text-22);line-height:var(--leading-22)}.payroll-csv-brand-block p{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-13);font-weight:var(--weight-medium)}.payroll-csv-header-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-4)}.payroll-csv-summary{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:0}.payroll-csv-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin:0}.payroll-csv-metadata-item{display:grid;grid-gap:var(--space-2);gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-surface-subtle);color:var(--color-muted);font-size:var(--text-12);font-weight:var(--weight-medium)}.payroll-csv-warnings{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.payroll-csv-warning-notice{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;grid-gap:var(--space-4);gap:var(--space-4);border:1px solid rgba(180,83,9,.3);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--text-12)}.payroll-csv-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:var(--space-5);gap:var(--space-5);align-items:end;border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-6);background:var(--color-surface-muted)}.payroll-csv-control-group{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.payroll-csv-control-label{color:var(--color-muted-strong);font-size:var(--text-12);font-weight:var(--weight-semibold)}.payroll-csv-chip-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}.payroll-csv-segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid var(--color-border-strong);border-radius:var(--radius-8);overflow:hidden;background:var(--color-surface)}.payroll-csv-segmented button{min-width:40px;min-height:36px;border:0;border-right:1px solid var(--color-border);padding:var(--space-4) var(--space-5);background:var(--color-surface);color:var(--color-muted-strong);font:inherit;font-size:var(--text-12);font-weight:var(--weight-semibold);cursor:pointer}.payroll-csv-segmented button:last-child{border-right:0}.payroll-csv-segmented button[aria-pressed=true]{background:var(--color-primary);color:#ffffff}.payroll-csv-mode-select{min-height:38px;width:100%;border:1px solid var(--color-border-strong);border-radius:var(--radius-8);padding:0 var(--space-4);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-13)}.payroll-csv-search{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.payroll-csv-search-input{min-height:38px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:var(--space-3);gap:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-8);padding:0 var(--space-4);background:var(--color-surface);color:var(--color-muted)}.payroll-csv-search-input input{min-height:36px;min-width:0;border:0;padding:var(--space-4) 0;outline:0;font:inherit;color:var(--color-text);background:transparent}.payroll-csv-checkbox{display:flex;align-items:center;gap:var(--space-4);min-height:35px;color:var(--color-muted-strong);font-size:var(--text-13);font-weight:var(--weight-medium)}.payroll-csv-column-selector{border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-surface)}.payroll-csv-column-selector summary{display:flex;align-items:center;gap:var(--space-3);cursor:pointer;color:var(--color-text);font-size:var(--text-13);font-weight:var(--weight-semibold)}.payroll-csv-column-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-top:var(--space-5)}.payroll-csv-column-option{gap:var(--space-3);font-size:var(--text-12)}.payroll-csv-column-option,.payroll-csv-table-header{display:flex;align-items:center;color:var(--color-muted-strong)}.payroll-csv-table-header{justify-content:space-between;gap:var(--space-6);font-size:var(--text-13);font-weight:var(--weight-semibold)}.payroll-csv-table-wrap{max-height:520px;overflow:auto;border:1px solid var(--color-border);border-radius:var(--radius-8)}.payroll-csv-preview-table{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.payroll-csv-preview-table th{position:-webkit-sticky;position:sticky;top:0;z-index:1;border-bottom:1px solid var(--color-border);padding:var(--space-5) var(--space-6);background:var(--color-surface-muted);color:var(--color-muted-strong);font-size:var(--text-12);text-align:left;white-space:nowrap}.payroll-csv-preview-table td{border-bottom:1px solid var(--color-border-subtle);padding:var(--space-4) var(--space-6);color:var(--color-text);font-size:var(--text-13);vertical-align:top;white-space:nowrap}.payroll-csv-preview-table .payroll-csv-empty-cell{padding:var(--space-10);text-align:center;color:var(--color-muted);font-weight:var(--weight-medium)}.payroll-csv-preview-table tfoot td{position:-webkit-sticky;position:sticky;bottom:0;border-top:1px solid var(--color-border-strong);border-bottom:0;padding:var(--space-5) var(--space-6);background:var(--color-success-soft);color:var(--color-success);font-size:var(--text-12);font-weight:var(--weight-semibold);white-space:nowrap}.pay-statement-view{display:grid;grid-gap:var(--space-10);gap:var(--space-10);border:1px solid var(--color-border-strong);border-radius:var(--radius-8);padding:var(--space-12);background:var(--color-surface);color:var(--color-text)}.pay-statement-header{display:flex;justify-content:space-between;gap:var(--space-10);border-bottom:2px solid var(--color-primary);padding-bottom:var(--space-8)}.pay-statement-brand-block{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:var(--space-6);gap:var(--space-6);min-width:0}.pay-statement-brand-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:var(--radius-8);background:var(--color-primary);color:#ffffff;font-weight:var(--weight-bold)}.pay-statement-brand-block h2{margin:2px 0 0;font-size:var(--text-22);line-height:var(--leading-22)}.pay-statement-brand-block p{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-13);font-weight:var(--weight-medium)}.pay-statement-employer-meta{display:grid;grid-gap:var(--space-1);gap:var(--space-1);justify-items:end;align-content:center;color:var(--color-muted-strong);font-size:var(--text-12);font-weight:var(--weight-medium);text-align:right}.pay-statement-party-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:var(--space-6);gap:var(--space-6)}.pay-statement-party,.pay-statement-period-summary{display:grid;grid-gap:var(--space-2);gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-8);background:var(--color-surface-subtle)}.pay-statement-period-summary{background:var(--color-primary-soft)}.pay-statement-summary-list{display:grid;grid-gap:var(--space-4);gap:var(--space-4);margin:0}.pay-statement-summary-item{display:flex;justify-content:space-between;gap:var(--space-6);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-3)}.pay-statement-summary-item dd.is-emphasis{color:var(--color-success);font-weight:var(--weight-bold)}.pay-statement-section{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.pay-statement-section-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}.pay-statement-section-title h3,.pay-statement-ytd-title h3{margin:0;font-size:var(--text-16);line-height:var(--leading-16)}.pay-statement-table-wrap{overflow-x:auto}.pay-statement-table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:var(--radius-8);overflow:hidden;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pay-statement-table th{border-bottom:1px solid var(--color-border);padding:var(--space-4) var(--space-5);background:var(--color-surface-muted);color:var(--color-muted-strong);font-size:var(--text-12);text-align:left}.pay-statement-table td{border-bottom:1px solid var(--color-border-subtle);padding:var(--space-4) var(--space-5);color:var(--color-text);font-size:var(--text-13);vertical-align:top}.pay-statement-table .is-numeric{text-align:right}.pay-statement-table td.is-numeric{font-weight:var(--weight-semibold)}.pay-statement-cell-meta{display:block;margin-top:var(--space-1);font-size:var(--text-11)}.pay-statement-cell-meta,.pay-statement-empty{color:var(--color-muted);font-weight:var(--weight-medium)}.pay-statement-empty{margin:0;border:1px dashed var(--color-border-strong);border-radius:var(--radius-8);padding:var(--space-6);font-size:var(--text-13)}.pay-statement-ytd{display:grid;grid-gap:var(--space-5);gap:var(--space-5);border:1px solid rgba(13,122,95,.25);border-radius:var(--radius-8);padding:var(--space-8);background:var(--color-success-soft)}.pay-statement-ytd-title{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:var(--space-4);gap:var(--space-4);color:var(--color-success)}.pay-statement-ytd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.pay-statement-ytd-card{display:grid;grid-gap:var(--space-2);gap:var(--space-2);border:1px solid rgba(13,122,95,.25);border-radius:var(--radius-8);padding:var(--space-5);background:rgba(255,255,255,.72);color:var(--color-text)}.pay-statement-ytd-card--emphasis{background:var(--color-surface);color:var(--color-success)}.pay-statement-footer{display:flex;justify-content:space-between;gap:var(--space-6);border-top:1px solid var(--color-border);padding-top:var(--space-6);color:var(--color-muted);font-size:var(--text-11);font-weight:var(--weight-medium)}.payroll-review-table{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:var(--radius-8);overflow:hidden;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.payroll-review-table th{border-bottom:1px solid var(--color-border);padding:var(--space-5) var(--space-6);background:var(--color-surface-muted);color:var(--color-muted-strong);font-size:var(--text-12);text-align:left}.payroll-review-table td{border-bottom:1px solid var(--color-border-subtle);padding:var(--space-5) var(--space-6);color:var(--color-text);font-size:var(--text-13);vertical-align:top}.payroll-review-table .is-numeric{text-align:right}.payroll-review-table td.is-numeric{font-weight:var(--weight-semibold)}.payroll-cell-meta{display:block;margin-top:var(--space-1);color:var(--color-muted);font-size:var(--text-11);font-weight:var(--weight-medium)}.payroll-table-wrap{overflow-x:auto}.payroll-detail-stack{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.payroll-detail-stack--tight{gap:var(--space-4)}.payroll-employee-detail-backdrop{position:fixed;inset:0;z-index:var(--z-drawer);display:flex;justify-content:flex-end;background:rgba(15,23,42,.34)}.payroll-employee-detail-drawer{width:min(760px,100vw);height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr);grid-gap:0;gap:0;background:var(--color-surface);box-shadow:var(--shadow-overlay);overflow:hidden}.payroll-employee-detail-header{display:flex;justify-content:space-between;gap:var(--space-8);border-bottom:1px solid var(--color-border);padding:var(--space-10)}.payroll-employee-detail-header>div{min-width:0}.payroll-employee-detail-header h2{margin:2px 0 0;font-size:var(--text-22);line-height:var(--leading-22)}.payroll-employee-detail-header p{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-13);font-weight:var(--weight-medium)}.payroll-employee-detail-header .ui-button{align-self:flex-start}.payroll-employee-detail-tabs{display:flex;gap:var(--space-4);border-bottom:1px solid var(--color-border);padding:var(--space-5) var(--space-10);overflow-x:auto}.payroll-employee-detail-tabs button{min-height:36px;border:1px solid var(--color-border);border-radius:var(--radius-8);padding:0 var(--space-5);background:var(--color-surface-subtle);color:var(--color-muted-strong);font-size:var(--text-12);font-weight:var(--weight-semibold);white-space:nowrap;cursor:pointer}.payroll-employee-detail-tabs button[aria-selected=true]{border-color:var(--color-primary);background:var(--color-primary);color:#ffffff}.payroll-employee-detail-content{min-height:0;overflow:auto;padding:var(--space-10)}.payroll-employee-detail-content .job-context-banner{align-items:flex-start}.payroll-employee-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.payroll-employee-detail-card{display:grid;grid-gap:var(--space-2);gap:var(--space-2);border:1px solid var(--color-border-subtle);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-surface-subtle)}.payroll-employee-detail-content .empty-state{min-height:180px}.payroll-employee-warning{display:grid;grid-gap:var(--space-2);gap:var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-10);padding:var(--space-5);background:var(--color-primary-soft);color:var(--color-primary)}.payroll-employee-warning--error{border-color:rgba(180,35,24,.3);background:var(--color-danger-soft);color:var(--color-danger)}.payroll-employee-warning--warning{border-color:rgba(180,83,9,.3);background:var(--color-warning-soft);color:var(--color-warning)}.payroll-employee-audit-row{display:grid;grid-gap:var(--space-2);gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-10);padding:var(--space-5);background:var(--color-surface-subtle)}.payroll-employee-audit-row>div{display:flex;justify-content:space-between;gap:var(--space-5)}.payroll-batch-review{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.payroll-batch-review-header{display:flex;justify-content:space-between;gap:var(--space-6);align-items:flex-start}.payroll-batch-review-header h2{margin:2px 0 0}.payroll-batch-review-header p{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-13);font-weight:var(--weight-medium)}.payroll-batch-review-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-4)}.payroll-batch-review-summary{grid-template-columns:repeat(auto-fit,minmax(185px,1fr));margin-bottom:0}.payroll-batch-review-summary .metric-card.success{border-color:rgba(13,122,95,.25);background:var(--color-success-soft)}.payroll-batch-review-summary .metric-card.warning{border-color:rgba(180,83,9,.3);background:var(--color-warning-soft)}.payroll-batch-review-employees{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.payroll-batch-review-employees .empty-state{min-height:180px}.payroll-batch-review-table{min-width:1060px}.payroll-batch-review-table td{vertical-align:middle}.payroll-batch-review-table td.is-numeric,.payroll-batch-review-table th{white-space:nowrap}.payroll-review-employee-button{display:grid;grid-gap:var(--space-1);gap:var(--space-1);border:0;padding:0;background:transparent;color:var(--color-primary);font:inherit;text-align:left;cursor:pointer}.payroll-export-history-panel{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.payroll-export-history-panel .empty-state{min-height:160px}.payroll-export-history-list{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.payroll-export-history-record{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:var(--space-6);gap:var(--space-6);align-items:flex-start;border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-6);background:var(--color-surface)}.payroll-export-history-record strong{overflow-wrap:anywhere}.payroll-export-history-record>button{grid-column:1/-1;justify-content:center}.payroll-export-history-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--radius-8);background:var(--color-primary-soft);color:var(--color-primary)}.payroll-export-history-icon--warning{background:var(--color-danger-soft);color:var(--color-danger)}.payroll-export-history-body{display:grid;grid-gap:var(--space-4);gap:var(--space-4);min-width:0}.payroll-export-history-title{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4)}.payroll-export-history-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin:0}.payroll-export-history-meta-item{display:grid;grid-gap:var(--space-1);gap:var(--space-1);color:var(--color-muted);font-size:var(--text-12);font-weight:var(--weight-medium)}.payroll-export-history-warning{display:flex;gap:var(--space-3);align-items:center;color:var(--color-warning);font-size:var(--text-12);font-weight:var(--weight-medium)}.payroll-csv-export-modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:grid;place-items:center;padding:var(--space-10);background:rgba(20,32,44,.46)}.payroll-csv-export-modal{width:min(1320px,100%);max-height:min(900px,calc(100vh - 36px));display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid var(--color-border-strong);border-radius:var(--radius-10);background:var(--color-surface-muted);color:var(--color-text);box-shadow:var(--shadow-overlay)}.payroll-csv-export-modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);border-bottom:1px solid var(--color-border);padding:var(--space-8);background:var(--color-surface)}.payroll-csv-export-modal-title{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:var(--space-5);gap:var(--space-5);min-width:0}.payroll-csv-export-modal-title h2{margin:2px 0 0;font-size:var(--text-18);line-height:var(--leading-18)}.payroll-csv-export-modal-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:var(--radius-8);background:var(--color-primary-soft);color:var(--color-primary)}.payroll-csv-export-modal-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-4)}.payroll-csv-export-modal-body{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);grid-gap:var(--space-6);gap:var(--space-6);overflow:auto;padding:var(--space-6)}.payroll-csv-export-modal-body>*{min-width:0}@media (max-width:900px){.payroll-csv-export-modal{border-radius:var(--radius-12)}.payroll-csv-export-modal-body{grid-template-columns:minmax(0,1fr)}}.payroll-payment-export{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.payroll-payment-export-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.payroll-payment-export-next-action{display:grid;grid-gap:var(--space-2);gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-surface-subtle);color:var(--color-text)}.payroll-payment-export-next-action strong{font-size:var(--text-13)}.payroll-payment-export-next-action span{color:var(--color-muted);font-size:var(--text-12);line-height:var(--leading-18)}.payroll-payment-export-tile{display:grid;grid-gap:var(--space-1);gap:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-surface-subtle);color:var(--color-muted);font-size:var(--text-12);font-weight:var(--weight-medium);min-width:0}.payroll-payment-export-tile>span:first-child{color:var(--color-primary)}.payroll-payment-export-actions{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.payroll-payment-export .ui-button--full{justify-content:center}.payroll-payment-export-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin:0}.payroll-payment-export-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin:0}.payroll-payment-export-meta-item{display:grid;grid-gap:var(--space-1);gap:var(--space-1);color:var(--color-muted);font-size:var(--text-12);font-weight:var(--weight-medium);min-width:0}.payroll-payment-export-bank-form{display:grid;grid-gap:var(--space-4);gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-surface)}.payroll-payment-export-field{display:grid;grid-gap:var(--space-2);gap:var(--space-2);color:var(--color-text);font-size:var(--text-12);font-weight:var(--weight-medium)}.payroll-payment-export-message{border:1px solid var(--color-primary-border);border-radius:var(--radius-8);background:var(--color-primary-soft);color:var(--color-primary)}.payroll-payment-export-message,.payroll-payment-export-warning{padding:var(--space-4);font-size:var(--text-12);font-weight:var(--weight-medium)}.payroll-payment-export-warning{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:var(--space-4);gap:var(--space-4);border:1px solid rgba(180,83,9,.3);border-radius:var(--radius-8);background:var(--color-warning-soft);color:var(--color-warning)}.pay-statement-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-surface-subtle)}.pay-statement-actions-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4)}.pay-statement-actions-status{color:var(--color-muted);font-size:var(--text-12);font-weight:var(--weight-medium)}.payroll-approval-panel{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.payroll-approval-guard{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;grid-gap:var(--space-5);gap:var(--space-5);border:1px solid rgba(180,83,9,.3);border-radius:var(--radius-12);padding:var(--space-6);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--text-13);font-weight:var(--weight-medium)}.payroll-approval-action{min-height:36px;display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--space-3);text-align:left}.payroll-approval-reason{display:grid;grid-gap:var(--space-3);gap:var(--space-3);color:var(--color-text);font-size:var(--text-13);font-weight:var(--weight-medium)}.payroll-approval-reason textarea{width:100%;resize:vertical;border:1px solid var(--color-border);border-radius:var(--radius-10);padding:var(--space-5);color:var(--color-text);font:inherit;line-height:1.4}.payroll-approval-error{color:var(--color-danger);font-weight:var(--weight-semibold)}.payroll-approval-message{border:1px solid var(--color-primary-border);border-radius:var(--radius-10);padding:var(--space-5);background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--text-13);font-weight:var(--weight-medium)}.payroll-wizard-header h2{margin:2px 0 0}.payroll-wizard-header>div>p{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-13);font-weight:var(--weight-medium)}.payroll-wizard .payroll-locked-state{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-5);border-color:rgba(180,83,9,.3);background:var(--color-warning-soft);color:var(--color-warning)}.payroll-wizard-error{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-5);border-color:rgba(180,35,24,.3);background:var(--color-danger-soft);color:var(--color-danger)}.payroll-stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(116px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.payroll-stepper button{min-height:44px;display:flex;align-items:center;justify-content:center;gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-10);background:var(--color-surface-subtle);color:var(--color-muted-strong);font-size:var(--text-12);font-weight:var(--weight-semibold);cursor:pointer}.payroll-stepper button.is-complete{border-color:rgba(13,122,95,.25);background:var(--color-success-soft);color:var(--color-success)}.payroll-stepper button.active{border-color:var(--color-primary);background:var(--color-primary);color:#ffffff}.payroll-wizard-step{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.payroll-employee-toolbar,.payroll-wizard-footer{display:flex;justify-content:space-between;gap:var(--space-5)}.payroll-employee-toolbar{align-items:center}.payroll-helper-text{color:var(--color-muted);font-size:var(--text-12);font-weight:var(--weight-medium)}.payroll-employee-collection{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.payroll-employee-field{gap:var(--space-3);font-size:var(--text-11)}.payroll-editable-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-12);background:var(--color-surface-subtle)}.payroll-editable-table{min-width:1160px}.payroll-editable-table tr.is-contractor{background:var(--color-warning-soft);box-shadow:inset 3px 0 0 var(--color-warning)}.payroll-editable-table th[scope=row] span{display:block}.payroll-grid-input{width:112px;min-height:38px;border:1px solid var(--color-border);border-radius:var(--radius-8);padding:0 var(--space-4);background:var(--color-surface);color:var(--color-text)}.payroll-step-stack{display:grid;grid-gap:var(--space-6);gap:var(--space-6);min-width:0}.payroll-step-stack .empty-state{min-height:180px}.payroll-context-banner--success{align-items:flex-start;background:var(--color-success-soft);color:var(--color-success)}.payroll-tax-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-12);background:var(--color-surface-subtle)}.payroll-tax-table-wrap table{min-width:1040px}.payroll-tax-table-wrap th[scope=row] span{display:block}.payroll-warning-banner{min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;grid-gap:var(--space-5);gap:var(--space-5);border:1px solid rgba(180,83,9,.3);border-radius:var(--radius-12);padding:var(--space-6);background:var(--color-warning-soft);color:var(--color-warning)}.payroll-warning-banner>div{min-width:0}.payroll-warning-banner strong{display:block}.payroll-warning-banner--success{border-color:rgba(13,122,95,.25);background:var(--color-success-soft);color:var(--color-success)}.payroll-warning-banner--error{border-color:rgba(180,35,24,.3);background:var(--color-danger-soft);color:var(--color-danger)}.payroll-warning-meta{display:block;margin-top:var(--space-1);color:var(--color-muted);font-size:var(--text-12);font-weight:var(--weight-medium)}.payroll-warning-list{display:grid;grid-gap:var(--space-2);gap:var(--space-2);margin:var(--space-4) 0 0;padding-left:var(--space-10);color:var(--color-muted-strong);font-size:var(--text-12);line-height:1.35}.payroll-warning-list b{text-transform:capitalize}.payroll-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.payroll-check-card{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-8);padding:0 var(--space-5);background:var(--color-surface-subtle);color:var(--color-muted-strong)}.payroll-check-card.is-active{border-color:rgba(180,83,9,.3);background:var(--color-warning-soft);color:var(--color-warning)}.payroll-readiness-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.payroll-readiness-item{min-height:38px;display:flex;align-items:center;gap:var(--space-4);border:1px solid rgba(180,83,9,.3);border-radius:var(--radius-8);padding:0 var(--space-5);background:var(--color-warning-soft);color:var(--color-warning);font-size:var(--text-12);font-weight:var(--weight-semibold)}.payroll-readiness-item.is-ready{border-color:rgba(13,122,95,.25);background:var(--color-success-soft);color:var(--color-success)}.payroll-final-employee{border:1px solid var(--color-border);border-radius:var(--radius-10);background:var(--color-surface-subtle)}.payroll-final-employee summary{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:0 var(--space-6);cursor:pointer}.payroll-final-employee-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:var(--space-4);gap:var(--space-4);border-top:1px solid var(--color-border);padding:var(--space-6)}.payroll-review-stat{display:grid;grid-gap:var(--space-2);gap:var(--space-2);border:1px solid var(--color-border-subtle);border-radius:var(--radius-8);padding:var(--space-5);background:var(--color-surface-subtle)}.payroll-context-banner{align-items:flex-start}.payroll-context-banner--neutral{align-items:flex-start;background:var(--color-surface-muted);color:var(--color-text)}.pc-skeleton--header{min-height:56px}.pc-skeleton--card{min-height:80px}.pc-skeleton--toolbar{min-height:44px}.pc-skeleton--body{min-height:360px}.pc-locked-banner--error{border-color:rgba(180,35,24,.3);background:var(--color-danger-soft);color:var(--color-danger)}.pc-summary-copy{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.pc-muted-note{color:var(--color-muted);font-size:var(--text-13)}.pc-muted-note--padded{padding:var(--space-6) 0}.pc-rail-select{width:100%}.payroll-workspace{display:grid;grid-gap:var(--space-8);gap:var(--space-8)}.payroll-workspace .payroll-empty-state{min-height:320px}.payroll-workspace-error{color:var(--color-danger);font-weight:var(--weight-semibold)}.payroll-workspace-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));grid-gap:var(--space-6);gap:var(--space-6);align-items:flex-start}.payroll-batch-list{position:-webkit-sticky;position:sticky;top:var(--space-10);display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.payroll-batch-card>span:first-child{display:grid;grid-gap:var(--space-1);gap:var(--space-1);min-width:0}.payroll-workspace-main{display:grid;grid-gap:var(--space-6);gap:var(--space-6);min-width:0}.payroll-workspace-main .empty-state{min-height:260px}.payroll-workspace-skeleton-panel{min-height:180px;background:linear-gradient(90deg,var(--color-shell) 0,var(--color-surface-subtle) 48%,var(--color-shell) 100%);background-size:220% 100%}.payroll-workspace-skeleton-panel--tall{min-height:360px}.pc-batch-switcher-caret{flex-shrink:0;color:var(--color-muted)}.pc-batch-switcher-empty{padding:var(--space-8) var(--space-5);text-align:center;color:var(--color-muted);font-size:var(--text-13)}.pc-batch-switcher-item.is-focused{background:var(--color-primary-soft);border-color:var(--color-primary-border)}.pc-batch-switcher-item>div:first-child{display:grid;grid-gap:var(--space-1);gap:var(--space-1);min-width:0}.pc-batch-switcher-item .status-badge{flex-shrink:0}.pc-status-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-muted);flex-shrink:0}.pc-status-dot--active{background:var(--color-primary)}.pc-status-dot--complete{background:var(--color-success)}.pc-status-dot--amended{background:var(--color-warning)}.pc-status-dot--reversed{background:var(--color-danger)}.pc-rail-section-badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.pc-rail-section-badge--success{background:var(--color-success-soft);color:var(--color-success)}.pc-rail-section-badge--neutral{background:var(--color-surface-muted);color:var(--color-muted)}.pc-tab-lock{opacity:.5}.payroll-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:0}