.businessPayroll-wrapper{background-color:#f8fafc;width:100%;min-height:100vh;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.businessPayroll-contents{width:100%;min-height:100vh}.businessPayroll-main{box-sizing:border-box;width:100%;margin-left:0;padding:5.5rem 1.5rem 2rem;overflow-y:auto}@media (min-width:1024px){.businessPayroll-main{width:80%;margin-left:20%;padding:5.5rem 2.5rem 2.5rem}}.businessPayroll-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.businessPayroll-title{color:#0f172a;margin:0 0 .25rem;font-size:1.75rem;font-weight:700}.businessPayroll-subtitle{color:#64748b;margin:0;font-size:.925rem}.businessPayroll-actions{flex-wrap:wrap;gap:.75rem;display:flex}.btn-secondary-action{color:#334155;cursor:pointer;background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:.5rem;padding:.65rem 1.15rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-secondary-action:hover{color:#0f172a;background-color:#f1f5f9;border-color:#94a3b8}.btn-primary-payroll{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.65rem 1.35rem;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #2563eb40}.btn-primary-payroll:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 6px 16px #2563eb59}.btn-primary-payroll:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.payroll-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:2rem;display:grid}.payroll-metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;justify-content:space-between;padding:1.25rem 1.5rem;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000d}.payroll-metric-card:before{content:"";background:#cbd5e1;height:4px;position:absolute;top:0;left:0;right:0}.payroll-metric-card.accent-blue:before{background:#3b82f6}.payroll-metric-card.accent-indigo:before{background:#6366f1}.payroll-metric-card.accent-emerald:before{background:#10b981}.payroll-metric-card.accent-amber:before{background:#f59e0b}.metric-label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:.5rem;font-size:.825rem;font-weight:600}.metric-value{color:#0f172a;margin-bottom:.25rem;font-size:1.65rem;font-weight:700}.metric-subtext{color:#94a3b8;font-size:.8rem}.status-badge{border-radius:9999px;align-items:center;gap:.35rem;width:fit-content;padding:.25rem .65rem;font-size:.775rem;font-weight:600;display:inline-flex}.status-badge.funded{color:#059669;background-color:#ecfdf5;border:1px solid #a7f3d0}.status-badge.shortfall{color:#b45309;background-color:#fffbeb;border:1px solid #fde68a}.payroll-tabs{border-bottom:1px solid #e2e8f0;gap:.5rem;margin-bottom:1.5rem;display:flex}.payroll-tab-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.75rem 1.25rem;font-size:.925rem;font-weight:600;transition:all .2s}.payroll-tab-btn.active{color:#2563eb;border-bottom-color:#2563eb}.payroll-tab-btn:hover:not(.active){color:#0f172a}.payroll-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.table-controls{border-bottom:1px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.search-input-box{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:.5rem;min-width:280px;padding:.5rem .85rem;display:flex}.search-input-box input{color:#0f172a;background:0 0;border:none;outline:none;width:100%;font-size:.875rem}.payroll-table{border-collapse:collapse;text-align:left;width:100%}.payroll-table th{text-transform:uppercase;letter-spacing:.05em;color:#64748b;background-color:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.85rem 1.25rem;font-size:.775rem;font-weight:600}.payroll-table td{color:#1e293b;vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:1rem 1.25rem;font-size:.875rem}.payroll-table tr:hover td{background-color:#f8fafc}.worker-name-cell{flex-direction:column;display:flex}.worker-name-cell .name{color:#0f172a;font-weight:600}.worker-name-cell .email{color:#64748b;font-size:.775rem}.dept-pill{color:#475569;background-color:#f1f5f9;border-radius:6px;padding:.2rem .55rem;font-size:.75rem;font-weight:500;display:inline-block}.salary-amount{color:#0f172a;font-weight:700}.btn-mini-pay{color:#2563eb;cursor:pointer;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:.4rem .85rem;font-size:.775rem;font-weight:600;transition:all .15s}.btn-mini-pay:hover{color:#fff;background-color:#2563eb}.payroll-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background-color:#0f172aa6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.payroll-modal{background:#fff;border-radius:16px;width:100%;max-width:600px;animation:.2s ease-out modalPop;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes modalPop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1.5rem 1.75rem;display:flex}.modal-header h3{color:#0f172a;margin:0;font-size:1.25rem;font-weight:700}.modal-close-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:1.5rem;line-height:1}.modal-body{max-height:65vh;padding:1.75rem;overflow-y:auto}.modal-footer{background-color:#f8fafc;border-top:1px solid #e2e8f0;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.75rem;display:flex}.payroll-summary-banner{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin-bottom:1.25rem;padding:1rem 1.25rem}.banner-row{color:#334155;justify-content:space-between;margin-bottom:.4rem;font-size:.875rem;display:flex}.banner-row:last-child{margin-bottom:0}.banner-row.total{color:#1e3a8a;border-top:1px solid #cbd5e1;margin-top:.5rem;padding-top:.5rem;font-size:1rem;font-weight:700}.empty-state{text-align:center;color:#64748b;padding:3rem 1.5rem}
