.payroll-validation-dialog .text-center{text-align:center!important}.payroll-validation-dialog .text-left{text-align:left!important}.payroll-validation-dialog .text-right{text-align:right!important}.payroll-validation-dialog md-dialog-content{padding:24px!important;background-color:#f5f7fa}.payroll-validation-dialog md-toolbar.md-primary{background:#2c3e50;box-shadow:0 2px 8px rgba(0,0,0,.15)}.payroll-validation-dialog md-toolbar.md-primary .md-toolbar-tools h2{margin:0;font-size:20px;font-weight:700;flex:0 0 auto;color:#fff;letter-spacing:.3px}.payroll-validation-dialog md-toolbar.md-primary .md-toolbar-tools md-button{color:#fff!important;margin:0}.payroll-validation-dialog md-toolbar.md-primary .md-toolbar-tools md-button md-icon{color:#fff}.payroll-validation-dialog md-toolbar.md-primary .md-toolbar-tools md-button:hover{background-color:rgba(255,255,255,.15)}.payroll-validation-dialog .validation-summary{display:flex;justify-content:space-between;align-items:stretch;padding:0;background:#fff;border-radius:4px;margin-bottom:24px;box-shadow:0 2px 6px rgba(0,0,0,.08);overflow:hidden}.payroll-validation-dialog .validation-summary .summary-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;flex:1;padding:20px 16px;border-right:1px solid #ecf0f1}.payroll-validation-dialog .validation-summary .summary-card:last-child{border-right:none}.payroll-validation-dialog .validation-summary .summary-card .summary-label{font-size:11px;font-weight:700;color:#7f8c8d;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.payroll-validation-dialog .validation-summary .summary-card .summary-value{font-size:42px;font-weight:900;line-height:1}.payroll-validation-dialog .validation-summary .summary-card.summary-total .summary-value{color:#2c3e50}.payroll-validation-dialog .validation-summary .summary-card.summary-ready .summary-value{color:#27ae60}.payroll-validation-dialog .validation-summary .summary-card.summary-problems .summary-value{color:#e74c3c}.payroll-validation-dialog .validation-summary .summary-card md-divider{display:none}.payroll-validation-dialog .validation-progress{margin-bottom:24px;background:#fff;padding:16px;border-radius:4px;box-shadow:0 2px 6px rgba(0,0,0,.08)}.payroll-validation-dialog .validation-progress .progress-label{font-size:11px;font-weight:700;color:#7f8c8d;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px;display:block}.payroll-validation-dialog .validation-progress md-progress-linear{margin:0!important;height:8px;background-color:#ecf0f1!important}.payroll-validation-dialog .validation-progress md-progress-linear .md-progress-fill{background-color:#27ae60!important}.payroll-validation-dialog .validation-table-container{max-height:550px;overflow-y:auto;border:none;border-radius:4px;margin-bottom:24px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.08)}.payroll-validation-dialog .validation-table-container md-data-table-container{min-height:auto;box-shadow:none}.payroll-validation-dialog .validation-table-container table{width:100%;border-collapse:collapse}.payroll-validation-dialog .validation-table-container table thead{background-color:#34495e;position:sticky;top:0;z-index:10}.payroll-validation-dialog .validation-table-container table .header-titles{border-bottom:1px solid #2c3e50}.payroll-validation-dialog .validation-table-container table .header-filters{background-color:#3d5368;border-bottom:2px solid #2c3e50}.payroll-validation-dialog .validation-table-container table th{padding:12px 14px;font-size:11px;font-weight:700;color:#fff;text-align:left;text-transform:uppercase;letter-spacing:.5px;border:none}.payroll-validation-dialog .validation-table-container table th:first-child{width:80px}.payroll-validation-dialog .validation-table-container table th .filter-select{font-size:12px;padding:6px 8px;margin:0;height:auto;min-height:30px;background-color:rgba(255,255,255,.12);color:#fff;border-radius:2px;border:1px solid rgba(255,255,255,.25);width:100%}.payroll-validation-dialog .validation-table-container table th .filter-select:hover{background-color:rgba(255,255,255,.18)}.payroll-validation-dialog .validation-table-container table th .filter-select .md-select-label{color:#fff!important;font-weight:600;font-size:12px}.payroll-validation-dialog .validation-table-container table th .filter-select md-option{font-size:13px}.payroll-validation-dialog .validation-table-container table th.text-center{text-align:center}.payroll-validation-dialog .validation-table-container table td{padding:14px;border-bottom:1px solid #ecf0f1;vertical-align:middle;font-size:13px;color:#2c3e50}.payroll-validation-dialog .validation-table-container table td:first-child{text-align:center}.payroll-validation-dialog .validation-table-container table tbody tr{transition:background-color .15s ease}.payroll-validation-dialog .validation-table-container table tbody tr:hover{background-color:#f8fafb}.payroll-validation-dialog .validation-table-container table tbody tr:last-child td{border-bottom:none}.payroll-validation-dialog .validation-status{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:18px;font-weight:700;box-shadow:0 2px 4px rgba(0,0,0,.15)}.payroll-validation-dialog .validation-status.status-ready{background-color:#d5f4e6;color:#27ae60}.payroll-validation-dialog .validation-status.status-problem{background-color:#fadbd8;color:#c0392b}.payroll-validation-dialog .validation-field{font-size:13px;font-weight:500;color:#34495e}.payroll-validation-dialog .validation-field.field-complete{color:#27ae60;font-weight:700}.payroll-validation-dialog .validation-field.field-empty{color:#7f8c8d}.payroll-validation-dialog .validation-field-value{background-color:#d6eaf8;color:#1e5a96;padding:7px 12px;border-radius:3px;font-weight:700;font-size:12px;display:inline-block;min-width:60px;text-align:left;border-left:4px solid #1e5a96;line-height:1.4}.payroll-validation-dialog .validation-field-missing{background-color:#fadbd8;color:#c0392b;padding:7px 12px;border-radius:3px;font-weight:700;font-size:12px;display:inline-block;border-left:4px solid #c0392b;line-height:1.4}.payroll-validation-dialog .validation-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.payroll-validation-dialog .validation-chips md-chip{font-size:12px;padding:6px 12px;height:auto;line-height:1.3;border-radius:2px;margin:0}.payroll-validation-dialog .validation-chips md-chip.md-warn{background-color:#fadbd8!important;color:#c0392b!important;font-weight:700}.payroll-validation-dialog .validation-loading{display:flex;align-items:center;justify-content:center;min-height:400px;color:#5a6c7d;flex-direction:column;gap:20px}.payroll-validation-dialog .validation-loading md-progress-circular{margin:0}.payroll-validation-dialog .validation-loading .loading-text{font-size:15px;font-weight:600;color:#34495e}.payroll-validation-dialog .validation-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#7f8c8d;gap:16px}.payroll-validation-dialog .validation-empty md-icon{font-size:64px;width:64px;height:64px;color:#bdc3c7}.payroll-validation-dialog .validation-empty .empty-text{font-size:16px;font-weight:600;color:#5a6c7d}@media(max-width:768px){.payroll-validation-dialog md-dialog-content{padding:16px!important}.payroll-validation-dialog .validation-summary{flex-direction:column}.payroll-validation-dialog .validation-summary .summary-card{border-right:none;border-bottom:1px solid #ecf0f1;padding:16px}.payroll-validation-dialog .validation-summary .summary-card:last-child{border-bottom:none}.payroll-validation-dialog .validation-progress{padding:14px}.payroll-validation-dialog .validation-table-container{max-height:400px}.payroll-validation-dialog .validation-table-container table th{font-size:10px;padding:12px 10px}.payroll-validation-dialog .validation-table-container table td{font-size:12px;padding:10px}.payroll-validation-dialog .validation-chips{gap:6px}.payroll-validation-dialog .validation-chips md-chip{font-size:11px;padding:4px 10px;height:auto;line-height:1.2}.payroll-validation-dialog .validation-status{width:28px;height:28px;font-size:14px}}