*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100vh;margin:0}body{color:#1f2937;-webkit-font-smoothing:antialiased;background:#f5f7fb;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}button,input,select,textarea{font:inherit}button{font-family:inherit}:root{--sidebar-width:255px;--sidebar-collapsed-width:78px;--primary:#2563eb;--primary-dark:#1d4ed8;--sidebar-bg:#172033;--sidebar-hover:#212d45;--sidebar-active:#2563eb;--background:#f5f7fb;--surface:#fff;--text-primary:#1f2937;--text-secondary:#6b7280;--border:#e5e7eb}.app-layout{background:var(--background);min-height:100vh}.app-main{min-height:100vh;margin-left:var(--sidebar-width);transition:margin-left .25s}.app-main.sidebar-collapsed{margin-left:var(--sidebar-collapsed-width)}.app-content{padding:26px 30px}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);color:#fff;z-index:1000;flex-direction:column;transition:width .25s;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;height:72px;padding:0 18px;display:flex}.brand-logo{flex-shrink:0;justify-content:center;align-items:center;min-width:65px;margin-left:-12px;display:flex;overflow:hidden;width:65px!important;height:65px!important}.brand-logo img{object-fit:contain;display:block;width:65px!important;max-width:65px!important;height:65px!important;max-height:65px!important}.brand-text{white-space:nowrap;flex-direction:column;display:flex}.brand-text strong{font-size:17px}.brand-text span{color:#aeb8ca;margin-top:2px;font-size:11px}.sidebar-navigation{flex:1;padding:20px 12px;overflow-y:auto}.sidebar-section-title{color:#7f8ba3;letter-spacing:1px;padding:4px 10px 12px;font-size:10px;font-weight:700}.sidebar-menu-item{color:#c8d0de;border-radius:8px;align-items:center;gap:13px;height:46px;margin-bottom:5px;padding:0 12px;text-decoration:none;transition:background .2s,color .2s;display:flex}.sidebar-menu-item:hover{background:var(--sidebar-hover);color:#fff}.sidebar-menu-item.active{background:var(--sidebar-active);color:#fff}.menu-icon{background:#ffffff14;border-radius:7px;justify-content:center;align-items:center;width:30px;min-width:30px;height:30px;font-size:12px;font-weight:700;display:flex}.sidebar-menu-item.active .menu-icon{background:#ffffff26}.menu-title{white-space:nowrap;font-size:14px}.sidebar-footer{color:#8e99ae;border-top:1px solid #ffffff14;flex-direction:column;gap:3px;padding:17px 20px;font-size:11px;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:900;justify-content:space-between;align-items:center;height:72px;padding:0 28px;display:flex;position:sticky;top:0}.topbar-left{align-items:center;gap:18px;display:flex}.sidebar-toggle{border:1px solid var(--border);cursor:pointer;width:39px;height:39px;color:var(--text-primary);background:#fff;border-radius:8px;font-size:18px}.sidebar-toggle:hover{background:#f8fafc}.topbar-title{color:var(--text-primary);font-size:16px;font-weight:700}.topbar-subtitle{color:var(--text-secondary);margin-top:2px;font-size:11px}.topbar-right{align-items:center;gap:12px;display:flex}.user-avatar{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:39px;height:39px;font-size:12px;font-weight:700;display:flex}.user-info{flex-direction:column;min-width:100px;display:flex}.user-info strong{color:var(--text-primary);font-size:13px}.user-info span{color:var(--text-secondary);margin-top:2px;font-size:10px}.logout-button{border:1px solid var(--border);color:#dc2626;cursor:pointer;background:#fff;border-radius:7px;margin-left:8px;padding:8px 14px;font-size:12px;font-weight:600}.logout-button:hover{background:#fef2f2;border-color:#fecaca}@media (width<=768px){.user-info,.topbar-subtitle{display:none}.app-content{padding:18px}}.sidebar-menu-group{width:100%}.sidebar-group-button{text-align:left;cursor:pointer;border:none;outline:none;width:100%;font-family:inherit}.menu-chevron{margin-left:auto;font-size:18px;line-height:1;transition:transform .2s}.menu-chevron.expanded{transform:rotate(90deg)}.sidebar-submenu{animation:.18s sidebarSubmenuOpen;overflow:hidden}@keyframes sidebarSubmenuOpen{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sidebar-submenu-item{padding-left:28px}.sidebar-submenu-item .menu-title{font-size:.95em}.submenu-icon{transform:scale(.85)}.sidebar.collapsed .sidebar-group-button{color:inherit;background:0 0;justify-content:center}.sidebar.collapsed .sidebar-menu-item{justify-content:center}.sidebar.collapsed .menu-icon{margin-right:0}.sidebar.collapsed .sidebar-submenu{display:none}.sidebar-group-button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}.sidebar-group-button .menu-title{flex:1}.sidebar-group-button.group-active{background:0 0;font-weight:600}.sidebar-section-title{background:0 0}.sidebar-group-button:hover{color:inherit}.login-page{background:#f3f5f9;justify-content:center;align-items:center;min-height:100vh;font-family:Arial,sans-serif;display:flex}.login-card{background:#fff;border-radius:14px;width:100%;max-width:420px;padding:40px;box-shadow:0 10px 40px #00000014}.login-header{text-align:center;margin-bottom:30px}.login-header h1{margin-bottom:8px}.login-header p{color:#777}.form-group label{margin-bottom:7px;font-weight:600;display:block}.form-group input{box-sizing:border-box;border:1px solid #d6d9df;border-radius:7px;width:100%;padding:12px 14px;font-size:15px}.form-group input:focus{border-color:#246bfd;outline:none}.login-card button{color:#fff;cursor:pointer;background:#246bfd;border:none;border-radius:7px;width:100%;padding:13px;font-size:15px;font-weight:600}.login-card button:disabled{opacity:.7;cursor:default}.login-error{color:#b42318;background:#feecec;border-radius:6px;margin-bottom:18px;padding:11px}.dashboard-page{width:100%}.page-header{margin-bottom:24px}.page-header h1{color:#1f2937;margin:0;font-size:25px}.page-header p{color:#6b7280;margin:7px 0 0;font-size:13px}.dashboard-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:24px;display:grid}.summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:21px;box-shadow:0 2px 5px #00000008}.summary-card-header{color:#6b7280;font-size:12px;font-weight:600}.summary-card-value{color:#111827;margin-top:12px;font-size:29px;font-weight:700}.summary-card-footer{color:#9ca3af;margin-top:8px;font-size:11px}.dashboard-section{grid-template-columns:2fr 1fr;gap:18px;display:grid}.dashboard-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;min-height:270px}.panel-header{border-bottom:1px solid #e5e7eb;padding:17px 20px}.panel-header h2{color:#1f2937;margin:0;font-size:15px}.panel-empty{color:#9ca3af;text-align:center;justify-content:center;align-items:center;min-height:190px;padding:20px;font-size:12px;display:flex}@media (width<=1100px){.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=750px){.dashboard-cards,.dashboard-section{grid-template-columns:1fr}}.attendance-page{width:100%}.attendance-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.attendance-header h1{color:#1f2937;margin:0;font-size:25px}.attendance-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.attendance-generate-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:12px;font-weight:600}.attendance-generate-button:hover{background:#1d4ed8}.attendance-generate-button:disabled{opacity:.6;cursor:default}.attendance-alert{border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.attendance-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.attendance-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.attendance-generation-result{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:15px;padding:11px 14px;font-size:11px;display:flex}.attendance-summary{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin-bottom:18px;display:grid}.attendance-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:13px 15px}.attendance-summary-card span{color:#6b7280;font-size:10px;display:block}.attendance-summary-card strong{color:#111827;margin-top:4px;font-size:21px;display:block}.attendance-summary-card.present{border-left:3px solid #16a34a}.attendance-summary-card.absent{border-left:3px solid #dc2626}.attendance-summary-card.late{border-left:3px solid #d97706}.attendance-summary-card.incomplete{border-left:3px solid #7c3aed}.attendance-summary-card.rest{border-left:3px solid #6b7280}.attendance-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.attendance-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:11px;padding:15px 16px;display:flex}.attendance-filter-group{flex-direction:column;gap:5px;min-width:140px;display:flex}.attendance-filter-group.employee{min-width:250px}.attendance-filter-group.search{flex:1;min-width:220px}.attendance-filter-group label{color:#374151;font-size:10px;font-weight:600}.attendance-filter-group input,.attendance-filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:9px 10px;font-size:11px}.attendance-filter-group input:focus,.attendance-filter-group select:focus{border-color:#2563eb}.attendance-search-button{color:#fff;cursor:pointer;background:#374151;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.attendance-result-info{color:#6b7280;border-bottom:1px solid #f1f1f1;padding:10px 16px;font-size:10px}.attendance-table-wrapper{overflow-x:auto}.attendance-table{border-collapse:collapse;width:100%;min-width:1350px}.attendance-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.attendance-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:12px;font-size:10px}.attendance-table tbody tr:hover{background:#fafbfc}.attendance-table-message{text-align:center;height:150px;color:#9ca3af!important}.attendance-employee-cell{flex-direction:column;min-width:150px;display:flex}.attendance-employee-cell span{color:#9ca3af;margin-top:2px;font-size:9px}.attendance-shift-badge{color:#2563eb;background:#eff6ff;border-radius:5px;padding:4px 8px;font-weight:700}.attendance-rest-badge{color:#6b7280;background:#f3f4f6;border-radius:5px;padding:4px 8px;font-weight:700}.attendance-time-pair{color:#6b7280;flex-direction:column;gap:3px;min-width:85px;font-size:9px;display:flex}.attendance-time-pair strong{color:#374151}.attendance-time-pair.actual strong{color:#2563eb}.attendance-minutes{color:#6b7280}.attendance-minutes.warning{color:#dc2626;font-weight:700}.attendance-minutes.overtime{color:#16a34a;font-weight:700}.attendance-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700;display:inline-block}.attendance-status.present{color:#15803d;background:#dcfce7}.attendance-status.absent{color:#b91c1c;background:#fee2e2}.attendance-status.incomplete{color:#7e22ce;background:#f3e8ff}.attendance-status.rest{color:#6b7280;background:#f3f4f6}.attendance-remarks{color:#6b7280;max-width:180px;font-size:9px;display:inline-block}@media (width<=1000px){.attendance-summary{grid-template-columns:repeat(3,1fr)}}@media (width<=700px){.attendance-header{flex-direction:column;align-items:stretch;gap:15px}.attendance-summary{grid-template-columns:repeat(2,1fr)}.attendance-filters{flex-direction:column;align-items:stretch}.attendance-filter-group,.attendance-filter-group.employee,.attendance-filter-group.search,.attendance-search-button{width:100%}}.attendance-day-info{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.attendance-holiday-info{flex-direction:column;gap:2px;max-width:150px;display:flex}.attendance-holiday-info strong{color:#b45309;font-size:9px}.attendance-holiday-info span{color:#92400e;font-size:8px}.users-page{width:100%}.users-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.users-header h1{color:#1f2937;margin:0;font-size:25px}.users-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.add-user-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:13px;font-weight:600}.add-user-button:hover{background:#1d4ed8}.users-alert{border-radius:7px;margin-bottom:17px;padding:11px 14px;font-size:12px}.users-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.users-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.users-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 2px 5px #00000008}.users-toolbar{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:15px;min-height:70px;padding:15px 18px;display:flex}.search-wrapper{width:360px;max-width:100%}.search-wrapper input{border:1px solid #d1d5db;border-radius:7px;outline:none;width:100%;padding:10px 13px;font-size:13px}.search-wrapper input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.user-count{color:#6b7280;font-size:12px}.users-table-wrapper{width:100%;overflow-x:auto}.users-table{border-collapse:collapse;width:100%}.users-table th{color:#6b7280;text-align:left;text-transform:uppercase;letter-spacing:.03em;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:13px 16px;font-size:11px;font-weight:700}.users-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f0f1f3;padding:14px 16px;font-size:13px}.users-table tbody tr:hover{background:#fafbfc}.users-table tbody tr:last-child td{border-bottom:none}.table-message{text-align:center;height:150px;color:#9ca3af!important}.username-cell{align-items:center;gap:10px;display:flex}.user-mini-avatar{color:#2563eb;background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:10px;font-weight:700;display:flex}.role-list{flex-wrap:wrap;gap:5px;display:flex}.role-badge{color:#4338ca;background:#eef2ff;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:600;display:inline-block}.status-badge{border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700;display:inline-block}.status-badge.active{color:#15803d;background:#dcfce7}.status-badge.inactive{color:#6b7280;background:#f3f4f6}.action-column{width:200px;text-align:center!important}.edit-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 12px;font-size:11px;font-weight:600}.edit-button:hover{background:#eff6ff;border-color:#bfdbfe}.modal-overlay{z-index:2000;background:#11182773;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.user-modal{background:#fff;border-radius:12px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #0000002e}.modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;padding:20px 22px;display:flex}.modal-header h2{color:#1f2937;margin:0;font-size:18px}.modal-header p{color:#6b7280;margin:5px 0 0;font-size:11px}.modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;width:32px;height:32px;font-size:23px}.modal-close:hover{background:#f3f4f6}.modal-body{padding:22px}.form-group{margin-bottom:18px}.form-group:last-child{margin-bottom:0}.form-group>label:first-child{color:#374151;margin-bottom:7px;font-size:12px;font-weight:600;display:block}.form-group>input{border:1px solid #d1d5db;border-radius:7px;outline:none;width:100%;padding:10px 12px;font-size:13px}.form-group>input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.role-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.role-option{cursor:pointer;color:#374151;border:1px solid #e5e7eb;border-radius:7px;align-items:center;gap:8px;padding:10px;font-size:12px;display:flex}.role-option:hover{background:#f9fafb}.role-option input{accent-color:#2563eb}.status-toggle{cursor:pointer;color:#374151;align-items:center;gap:8px;font-size:12px;display:flex!important}.status-toggle input{accent-color:#2563eb}.modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;align-items:center;gap:9px;padding:15px 22px;display:flex}.cancel-button,.save-button{cursor:pointer;border-radius:7px;padding:9px 15px;font-size:12px;font-weight:600}.cancel-button{color:#374151;background:#fff;border:1px solid #d1d5db}.cancel-button:hover{background:#f9fafb}.save-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.save-button:hover{background:#1d4ed8}.save-button:disabled,.cancel-button:disabled{opacity:.6;cursor:default}@media (width<=700px){.users-header{flex-direction:column;align-items:flex-start;gap:15px}.add-user-button{width:100%}.users-toolbar{flex-direction:column;align-items:stretch}.search-wrapper{width:100%}.role-options{grid-template-columns:1fr}.user-info{display:none}}.action-buttons{justify-content:center;align-items:center;gap:6px;display:flex}.reset-button{color:#7c3aed;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 10px;font-size:11px;font-weight:600}.reset-button:hover{background:#f5f3ff;border-color:#ddd6fe}.reset-password-modal{max-width:430px}.form-help{color:#6b7280;margin-top:6px;font-size:10px}.departments-page{width:100%}.departments-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.departments-header h1{color:#1f2937;margin:0;font-size:25px}.departments-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.department-add-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:13px;font-weight:600}.department-add-button:hover{background:#1d4ed8}.department-alert{border-radius:7px;margin-bottom:16px;padding:11px 14px;font-size:12px}.department-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.department-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.departments-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 2px 5px #00000008}.departments-toolbar{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:15px;min-height:70px;padding:15px 18px;display:flex}.department-search{border:1px solid #d1d5db;border-radius:7px;outline:none;width:360px;max-width:100%;padding:10px 13px;font-size:13px}.department-search:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.department-count{color:#6b7280;font-size:12px}.department-table-wrapper{width:100%;overflow-x:auto}.department-table{border-collapse:collapse;width:100%}.department-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:13px 16px;font-size:11px;font-weight:700}.department-table td{color:#374151;border-bottom:1px solid #f0f1f3;padding:14px 16px;font-size:13px}.department-table tbody tr:hover{background:#fafbfc}.department-table-message{text-align:center;height:150px;color:#9ca3af!important}.department-code{color:#2563eb;background:#eff6ff;border-radius:5px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.department-status{border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700;display:inline-block}.department-status.active{color:#15803d;background:#dcfce7}.department-status.inactive{color:#6b7280;background:#f3f4f6}.department-action-column{width:100px;text-align:center!important}.department-edit-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 12px;font-size:11px;font-weight:600}.department-edit-button:hover{background:#eff6ff;border-color:#bfdbfe}.department-modal-overlay{z-index:2000;background:#11182773;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.department-modal{background:#fff;border-radius:12px;width:100%;max-width:520px;overflow:hidden;box-shadow:0 20px 50px #0000002e}.department-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;padding:20px 22px;display:flex}.department-modal-header h2{color:#1f2937;margin:0;font-size:18px}.department-modal-header p{color:#6b7280;margin:5px 0 0;font-size:11px}.department-modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;width:32px;height:32px;font-size:22px}.department-modal-close:hover{background:#f3f4f6}.department-modal-body{padding:22px}.department-form-group{margin-bottom:18px}.department-form-group:last-child{margin-bottom:0}.department-form-group>label:first-child{color:#374151;margin-bottom:7px;font-size:12px;font-weight:600;display:block}.department-form-group input[type=text],.department-form-group textarea{border:1px solid #d1d5db;border-radius:7px;outline:none;width:100%;padding:10px 12px;font-size:13px}.department-form-group input[type=text]:focus,.department-form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.department-form-group textarea{resize:vertical}.department-status-toggle{color:#374151;cursor:pointer;align-items:center;gap:8px;font-size:12px;display:flex!important}.department-status-toggle input{accent-color:#2563eb}.department-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:9px;padding:15px 22px;display:flex}.department-cancel-button,.department-save-button{cursor:pointer;border-radius:7px;padding:9px 15px;font-size:12px;font-weight:600}.department-cancel-button{color:#374151;background:#fff;border:1px solid #d1d5db}.department-save-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.department-save-button:hover{background:#1d4ed8}.department-save-button:disabled,.department-cancel-button:disabled{opacity:.6;cursor:default}@media (width<=700px){.departments-header{flex-direction:column;align-items:stretch;gap:15px}.department-add-button{width:100%}.departments-toolbar{flex-direction:column;align-items:stretch}.department-search{width:100%}}.positions-page{width:100%}.positions-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.positions-header h1{color:#1f2937;margin:0;font-size:25px}.positions-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.position-add-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:13px;font-weight:600}.position-add-button:hover{background:#1d4ed8}.position-alert{border-radius:7px;margin-bottom:16px;padding:11px 14px;font-size:12px}.position-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.position-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.positions-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.positions-toolbar{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:15px;min-height:70px;padding:15px 18px;display:flex}.position-search{border:1px solid #d1d5db;border-radius:7px;outline:none;width:360px;max-width:100%;padding:10px 13px;font-size:13px}.position-search:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.position-count{color:#6b7280;font-size:12px}.position-table-wrapper{width:100%;overflow-x:auto}.position-table{border-collapse:collapse;width:100%}.position-table th{text-align:left;color:#6b7280;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:13px 16px;font-size:11px;font-weight:700}.position-table td{color:#374151;border-bottom:1px solid #f0f1f3;padding:14px 16px;font-size:13px}.position-table tbody tr:hover{background:#fafbfc}.position-table-message{text-align:center;height:150px;color:#9ca3af!important}.position-code{color:#2563eb;background:#eff6ff;border-radius:5px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.department-badge{color:#374151;background:#f3f4f6;border-radius:5px;padding:4px 8px;font-size:11px;display:inline-block}.position-status{border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700;display:inline-block}.position-status.active{color:#15803d;background:#dcfce7}.position-status.inactive{color:#6b7280;background:#f3f4f6}.position-action-column{width:100px;text-align:center!important}.position-edit-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 12px;font-size:11px;font-weight:600}.position-edit-button:hover{background:#eff6ff;border-color:#bfdbfe}.position-modal-overlay{z-index:2000;background:#11182773;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.position-modal{background:#fff;border-radius:12px;width:100%;max-width:520px;overflow:hidden}.position-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:20px 22px;display:flex}.position-modal-header h2{margin:0;font-size:18px}.position-modal-header p{color:#6b7280;margin:5px 0 0;font-size:11px}.position-modal-close{cursor:pointer;background:0 0;border:none;width:32px;height:32px;font-size:22px}.position-modal-body{padding:22px}.position-form-group{margin-bottom:18px}.position-form-group>label:first-child{margin-bottom:7px;font-size:12px;font-weight:600;display:block}.position-form-group input[type=text],.position-form-group select,.position-form-group textarea{border:1px solid #d1d5db;border-radius:7px;width:100%;padding:10px 12px;font-size:13px}.position-form-group select{background:#fff}.position-form-group textarea{resize:vertical}.position-status-toggle{align-items:center;gap:8px;font-size:12px;display:flex!important}.position-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:9px;padding:15px 22px;display:flex}.position-cancel-button,.position-save-button{cursor:pointer;border-radius:7px;padding:9px 15px;font-size:12px;font-weight:600}.position-cancel-button{background:#fff;border:1px solid #d1d5db}.position-save-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.employment-types-page{width:100%}.employment-types-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.employment-types-header h1{color:#1f2937;margin:0;font-size:25px}.employment-types-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.employment-type-add-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:13px;font-weight:600}.employment-type-add-button:hover{background:#1d4ed8}.employment-type-alert{border-radius:7px;margin-bottom:16px;padding:11px 14px;font-size:12px}.employment-type-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.employment-type-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.employment-types-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 2px 5px #00000008}.employment-types-toolbar{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:15px;min-height:70px;padding:15px 18px;display:flex}.employment-type-search{border:1px solid #d1d5db;border-radius:7px;outline:none;width:360px;max-width:100%;padding:10px 13px;font-size:13px}.employment-type-search:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.employment-type-count{color:#6b7280;font-size:12px}.employment-type-table-wrapper{width:100%;overflow-x:auto}.employment-type-table{border-collapse:collapse;width:100%}.employment-type-table th{color:#6b7280;text-align:left;text-transform:uppercase;letter-spacing:.03em;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:13px 16px;font-size:11px;font-weight:700}.employment-type-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f0f1f3;padding:14px 16px;font-size:13px}.employment-type-table tbody tr:hover{background:#fafbfc}.employment-type-table tbody tr:last-child td{border-bottom:none}.employment-type-table-message{text-align:center;height:150px;color:#9ca3af!important}.employment-type-code{color:#2563eb;background:#eff6ff;border-radius:5px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.employment-type-status{border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700;display:inline-block}.employment-type-status.active{color:#15803d;background:#dcfce7}.employment-type-status.inactive{color:#6b7280;background:#f3f4f6}.employment-type-action-column{width:100px;text-align:center!important}.employment-type-edit-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 12px;font-size:11px;font-weight:600}.employment-type-edit-button:hover{background:#eff6ff;border-color:#bfdbfe}.employment-type-modal-overlay{z-index:2000;background:#11182773;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.employment-type-modal{background:#fff;border-radius:12px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #0000002e}.employment-type-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;padding:20px 22px;display:flex}.employment-type-modal-header h2{color:#1f2937;margin:0;font-size:18px}.employment-type-modal-header p{color:#6b7280;margin:5px 0 0;font-size:11px}.employment-type-modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;width:32px;height:32px;font-size:22px}.employment-type-modal-close:hover{background:#f3f4f6}.employment-type-modal-body{padding:22px}.employment-type-form-group{margin-bottom:18px}.employment-type-form-group:last-child{margin-bottom:0}.employment-type-form-group>label:first-child{color:#374151;margin-bottom:7px;font-size:12px;font-weight:600;display:block}.employment-type-form-group input[type=text],.employment-type-form-group textarea{border:1px solid #d1d5db;border-radius:7px;outline:none;width:100%;padding:10px 12px;font-size:13px}.employment-type-form-group input[type=text]:focus,.employment-type-form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.employment-type-form-group textarea{resize:vertical}.employment-type-status-toggle{color:#374151;cursor:pointer;align-items:center;gap:8px;font-size:12px;display:flex!important}.employment-type-status-toggle input{accent-color:#2563eb}.employment-type-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;align-items:center;gap:9px;padding:15px 22px;display:flex}.employment-type-cancel-button,.employment-type-save-button{cursor:pointer;border-radius:7px;padding:9px 15px;font-size:12px;font-weight:600}.employment-type-cancel-button{color:#374151;background:#fff;border:1px solid #d1d5db}.employment-type-cancel-button:hover{background:#f9fafb}.employment-type-save-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.employment-type-save-button:hover{background:#1d4ed8}.employment-type-save-button:disabled,.employment-type-cancel-button:disabled{opacity:.6;cursor:default}@media (width<=700px){.employment-types-header{flex-direction:column;align-items:stretch;gap:15px}.employment-type-add-button{width:100%}.employment-types-toolbar{flex-direction:column;align-items:stretch}.employment-type-search{width:100%}}.employees-page{width:100%}.employees-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.employees-header h1{color:#1f2937;margin:0;font-size:25px}.employees-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.employee-add-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:13px;font-weight:600}.employee-add-button:hover{background:#1d4ed8}.employee-alert{border-radius:7px;margin-bottom:16px;padding:11px 14px;font-size:12px}.employee-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.employee-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.employees-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.employees-toolbar{border-bottom:1px solid #e5e7eb;align-items:center;gap:12px;min-height:70px;padding:15px 18px;display:flex}.employee-search{border:1px solid #d1d5db;border-radius:7px;width:360px;padding:10px 13px}.employee-filter{background:#fff;border:1px solid #d1d5db;border-radius:7px;min-width:200px;padding:10px 12px}.employee-count{color:#6b7280;margin-left:auto;font-size:12px}.employee-table-wrapper{overflow-x:auto}.employee-table{border-collapse:collapse;width:100%}.employee-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:13px 15px;font-size:10px;font-weight:700}.employee-table td{color:#374151;border-bottom:1px solid #f0f1f3;padding:13px 15px;font-size:12px}.employee-table tbody tr:hover{background:#fafbfc}.employee-table-message{text-align:center;height:150px;color:#9ca3af!important}.employee-number{color:#2563eb;font-weight:700}.employee-name-cell{align-items:center;gap:10px;display:flex}.employee-name-cell>div:last-child{flex-direction:column;display:flex}.employee-name-cell span{color:#9ca3af;margin-top:3px;font-size:10px}.employee-avatar{color:#2563eb;background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;width:34px;min-width:34px;height:34px;font-size:10px;font-weight:700;display:flex}.salary-type-text{color:#9ca3af;margin-top:3px;font-size:9px}.employee-status{border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700;display:inline-block}.employee-status.active{color:#15803d;background:#dcfce7}.employee-status.inactive{color:#6b7280;background:#f3f4f6}.employee-action-column{width:85px;text-align:center!important}.employee-edit-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 12px;font-size:11px}.employee-modal-overlay{z-index:2000;background:#1118277a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.employee-modal{background:#fff;border-radius:13px;flex-direction:column;width:100%;max-width:850px;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 25px 60px #0003}.employee-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;padding:20px 24px;display:flex}.employee-modal-header h2{color:#1f2937;margin:0;font-size:19px}.employee-modal-header p{color:#6b7280;margin:5px 0 0;font-size:11px}.employee-modal-close{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:6px;width:32px;height:32px;font-size:22px}.employee-tabs{background:#fafafa;border-bottom:1px solid #e5e7eb;padding:0 24px;display:flex}.employee-tabs button{color:#6b7280;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:13px 16px;font-size:11px;font-weight:600}.employee-tabs button.active{color:#2563eb;border-bottom-color:#2563eb}.employee-modal form{flex-direction:column;min-height:0;display:flex}.employee-modal-body{padding:23px 24px;overflow-y:auto}.employee-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px;display:grid}.employee-form-group{min-width:0}.employee-form-group.full-width,.employee-payroll-note.full-width{grid-column:1/-1}.employee-form-group>label:first-child{color:#374151;margin-bottom:7px;font-size:11px;font-weight:600;display:block}.employee-form-group input,.employee-form-group select,.employee-form-group textarea{background:#fff;border:1px solid #d1d5db;border-radius:7px;outline:none;width:100%;padding:10px 11px;font-size:12px}.employee-form-group input:focus,.employee-form-group select:focus,.employee-form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.employee-form-group textarea{resize:vertical}.employee-form-group select:disabled{cursor:not-allowed;background:#f3f4f6}.employee-status-toggle{cursor:pointer;align-items:center;gap:8px;display:flex!important}.employee-status-toggle input{width:auto}.employee-payroll-note{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:13px 15px;font-size:11px;line-height:1.5}.employee-field-help{color:#9ca3af;margin-top:6px;font-size:10px}.employee-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:9px;padding:15px 24px;display:flex}.employee-cancel-button,.employee-save-button{cursor:pointer;border-radius:7px;padding:9px 16px;font-size:12px;font-weight:600}.employee-cancel-button{color:#374151;background:#fff;border:1px solid #d1d5db}.employee-save-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.employee-save-button:hover{background:#1d4ed8}.employee-save-button:disabled,.employee-cancel-button:disabled{opacity:.6;cursor:default}.employee-bank-note{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;flex-direction:column;gap:5px;padding:12px 14px;font-size:10px;display:flex}.employee-bank-note strong{font-size:11px}.employee-bank-note span{line-height:1.5}.employee-bank-cell{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.employee-bank-status{white-space:nowrap;border-radius:999px;align-items:center;padding:4px 8px;font-size:8px;font-weight:700;display:inline-flex}.employee-bank-status.configured{color:#15803d;background:#dcfce7}.employee-bank-status.not-configured{color:#a16207;background:#fef3c7}.employee-bank-info{flex-direction:column;gap:1px;display:flex}.employee-bank-info strong{color:#374151;font-size:9px}.employee-bank-info span{color:#6b7280;letter-spacing:.3px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:9px}@media (width<=800px){.employees-header{flex-direction:column;align-items:stretch;gap:15px}.employees-toolbar{flex-direction:column;align-items:stretch}.employee-search,.employee-filter{width:100%}.employee-count{margin-left:0}.employee-form-grid{grid-template-columns:1fr}.employee-form-group.full-width,.employee-payroll-note.full-width{grid-column:auto}.employee-tabs{padding:0 10px;overflow-x:auto}.employee-tabs button{white-space:nowrap}}.employee-form-group label.checkbox-field{cursor:pointer;width:fit-content;margin:0;align-items:center!important;display:flex!important}.employee-form-group label.checkbox-field input[type=checkbox]{flex:none;width:16px!important;height:16px!important;margin:0 10px 0 0!important}.employee-form-group label.checkbox-field span{margin:0!important;padding:0!important}.shifts-page{width:100%}.shifts-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.shifts-header h1{color:#1f2937;margin:0;font-size:25px}.shifts-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.shift-add-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:13px;font-weight:600}.shift-add-button:hover{background:#1d4ed8}.shift-alert{border-radius:7px;margin-bottom:16px;padding:11px 14px;font-size:12px}.shift-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.shift-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.shifts-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.shifts-toolbar{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:15px;min-height:70px;padding:15px 18px;display:flex}.shift-search{border:1px solid #d1d5db;border-radius:7px;outline:none;width:360px;max-width:100%;padding:10px 13px;font-size:13px}.shift-search:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.shift-count{color:#6b7280;font-size:12px}.shift-table-wrapper{overflow-x:auto}.shift-table{border-collapse:collapse;width:100%}.shift-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:13px 15px;font-size:10px;font-weight:700}.shift-table td{color:#374151;border-bottom:1px solid #f0f1f3;padding:13px 15px;font-size:12px}.shift-table tbody tr:hover{background:#fafbfc}.shift-table-message{text-align:center;height:150px;color:#9ca3af!important}.shift-code{color:#2563eb;background:#eff6ff;border-radius:5px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.shift-description{color:#9ca3af;margin-top:3px;font-size:10px}.shift-type,.shift-status{border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700;display:inline-block}.shift-type.day{color:#2563eb;background:#eff6ff}.shift-type.overnight{color:#7c3aed;background:#f5f3ff}.shift-status.active{color:#15803d;background:#dcfce7}.shift-status.inactive{color:#6b7280;background:#f3f4f6}.shift-action-column{width:85px;text-align:center!important}.shift-edit-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 12px;font-size:11px;font-weight:600}.shift-modal-overlay{z-index:2000;background:#1118277a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.shift-modal{background:#fff;border-radius:13px;width:100%;max-width:700px;max-height:92vh;overflow-y:auto;box-shadow:0 25px 60px #0003}.shift-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;padding:20px 24px;display:flex}.shift-modal-header h2{margin:0;font-size:19px}.shift-modal-header p{color:#6b7280;margin:5px 0 0;font-size:11px}.shift-modal-close{cursor:pointer;color:#6b7280;background:0 0;border:none;width:32px;height:32px;font-size:22px}.shift-modal-body{padding:23px 24px}.shift-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px;display:grid}.shift-form-group.full-width,.shift-overnight-note.full-width{grid-column:1/-1}.shift-form-group>label:first-child{color:#374151;margin-bottom:7px;font-size:11px;font-weight:600;display:block}.shift-form-group input,.shift-form-group textarea{border:1px solid #d1d5db;border-radius:7px;outline:none;width:100%;padding:10px 11px;font-size:12px}.shift-form-group input:focus,.shift-form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.shift-number-wrapper{align-items:center;gap:8px;display:flex}.shift-number-wrapper span{color:#6b7280;font-size:11px}.shift-status-toggle{cursor:pointer;align-items:center;gap:8px;display:flex!important}.shift-status-toggle input{width:auto}.shift-overnight-note{color:#6d28d9;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:7px;padding:12px 14px;font-size:11px}.shift-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:9px;padding:15px 24px;display:flex}.shift-cancel-button,.shift-save-button{cursor:pointer;border-radius:7px;padding:9px 16px;font-size:12px;font-weight:600}.shift-cancel-button{color:#374151;background:#fff;border:1px solid #d1d5db}.shift-save-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.shift-save-button:disabled,.shift-cancel-button:disabled{opacity:.6;cursor:default}@media (width<=700px){.shifts-header{flex-direction:column;align-items:stretch;gap:15px}.shift-add-button{width:100%}.shifts-toolbar{flex-direction:column;align-items:stretch}.shift-search{width:100%}.shift-form-grid{grid-template-columns:1fr}.shift-form-group.full-width,.shift-overnight-note.full-width{grid-column:auto}}.employee-schedules-page{width:100%}.employee-schedules-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.employee-schedules-header h1{color:#1f2937;margin:0;font-size:25px}.employee-schedules-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.schedule-add-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:13px;font-weight:600}.schedule-alert{border-radius:7px;margin-bottom:16px;padding:11px 14px;font-size:12px}.schedule-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.schedule-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.employee-schedules-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.schedule-toolbar{border-bottom:1px solid #e5e7eb;align-items:center;gap:12px;padding:15px 18px;display:flex}.schedule-search{border:1px solid #d1d5db;border-radius:7px;width:300px;padding:10px 12px}.schedule-filter{background:#fff;border:1px solid #d1d5db;border-radius:7px;min-width:260px;padding:10px 12px}.schedule-count{color:#6b7280;margin-left:auto;font-size:12px}.schedule-table-wrapper{overflow-x:auto}.schedule-table{border-collapse:collapse;width:100%;min-width:1150px}.schedule-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:12px 11px;font-size:10px}.schedule-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:12px 11px;font-size:11px}.schedule-table-message{text-align:center;height:150px;color:#9ca3af!important}.schedule-employee{flex-direction:column;display:flex}.schedule-employee span{color:#9ca3af;margin-top:3px;font-size:10px}.schedule-day-badge{text-align:center;border-radius:5px;min-width:45px;padding:4px 7px;font-size:9px;font-weight:700;display:inline-block}.schedule-day-badge.work{color:#2563eb;background:#eff6ff}.schedule-day-badge.rest{color:#6b7280;background:#f3f4f6}.schedule-current-badge{color:#15803d;background:#dcfce7;border-radius:20px;padding:4px 8px;font-size:9px;font-weight:700}.schedule-action-column{width:80px;text-align:center!important}.schedule-edit-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 11px}.schedule-modal-overlay{z-index:2000;background:#1118277a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.schedule-modal{background:#fff;border-radius:13px;flex-direction:column;width:100%;max-width:900px;max-height:94vh;display:flex;overflow:hidden}.schedule-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:20px 24px;display:flex}.schedule-modal-header h2{margin:0;font-size:19px}.schedule-modal-header p{color:#6b7280;margin:5px 0 0;font-size:11px}.schedule-modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;font-size:22px}.schedule-modal form{flex-direction:column;min-height:0;display:flex}.schedule-modal-body{padding:22px 24px;overflow-y:auto}.schedule-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin-bottom:25px;display:grid}.schedule-form-group label{color:#374151;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.schedule-form-group input,.schedule-form-group select{background:#fff;border:1px solid #d1d5db;border-radius:7px;width:100%;padding:10px 11px;font-size:12px}.schedule-help{color:#9ca3af;margin-top:5px;font-size:9px;display:block}.schedule-week-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.schedule-week-header h3{color:#1f2937;margin:0;font-size:14px}.schedule-week-header p{color:#9ca3af;margin:4px 0 0;font-size:10px}.schedule-quick-apply{align-items:center;gap:8px;font-size:10px;display:flex}.schedule-quick-apply select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:7px 9px;font-size:10px}.schedule-days{border:1px solid #e5e7eb;border-radius:9px;overflow:hidden}.schedule-day-row{border-bottom:1px solid #f0f0f0;grid-template-columns:110px 180px minmax(200px,1fr) 120px;align-items:center;gap:12px;padding:12px 14px;display:grid}.schedule-day-row:last-child{border-bottom:none}.schedule-day-row.rest{background:#fafafa}.schedule-day-name{color:#374151;font-size:11px;font-weight:700}.schedule-day-type{gap:12px;display:flex}.schedule-day-type label{cursor:pointer;align-items:center;gap:4px;font-size:10px;display:flex}.schedule-day-shift select{background:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:8px 9px;font-size:10px}.schedule-day-shift select:disabled{background:#f3f4f6}.schedule-day-preview{color:#6b7280;text-align:right;font-size:10px}.schedule-rest-label{color:#9ca3af;font-weight:700}.schedule-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:9px;padding:15px 24px;display:flex}.schedule-cancel-button,.schedule-save-button{cursor:pointer;border-radius:7px;padding:9px 16px;font-size:12px;font-weight:600}.schedule-cancel-button{color:#374151;background:#fff;border:1px solid #d1d5db}.schedule-save-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.schedule-save-button:disabled,.schedule-cancel-button:disabled{opacity:.6;cursor:default}@media (width<=750px){.employee-schedules-header{flex-direction:column;align-items:stretch;gap:15px}.schedule-toolbar{flex-direction:column;align-items:stretch}.schedule-search,.schedule-filter{width:100%}.schedule-count{margin-left:0}.schedule-form-grid{grid-template-columns:1fr}.schedule-week-header{flex-direction:column;align-items:stretch;gap:12px}.schedule-day-row{grid-template-columns:1fr;gap:8px}.schedule-day-preview{text-align:left}}.biometric-page{width:100%}.biometric-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.biometric-header h1{color:#1f2937;margin:0;font-size:25px}.biometric-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.biometric-add-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:13px;font-weight:600}.biometric-alert{border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.biometric-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.biometric-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.biometric-summary{grid-template-columns:repeat(3,180px);gap:12px;margin-bottom:18px;display:grid}.biometric-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:14px 16px}.biometric-summary-card span{color:#6b7280;font-size:10px;display:block}.biometric-summary-card strong{color:#111827;margin-top:5px;font-size:22px;display:block}.biometric-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.biometric-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:16px;display:flex}.biometric-filter-group{flex-direction:column;gap:5px;min-width:140px;display:flex}.biometric-filter-group.employee-filter{min-width:240px}.biometric-filter-group label{color:#374151;font-size:10px;font-weight:600}.biometric-filter-group input,.biometric-filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.biometric-filter-actions button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.biometric-result-info{color:#6b7280;border-bottom:1px solid #f0f0f0;padding:10px 16px;font-size:10px}.biometric-table-wrapper{overflow-x:auto}.biometric-table{border-collapse:collapse;width:100%;min-width:950px}.biometric-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:12px 14px;font-size:10px}.biometric-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:12px 14px;font-size:11px}.biometric-table tbody tr:hover{background:#fafbfc}.biometric-table-message{text-align:center;height:150px;color:#9ca3af!important}.biometric-id-badge{color:#2563eb;background:#eff6ff;border-radius:5px;padding:4px 8px;font-weight:700}.biometric-employee-cell{flex-direction:column;display:flex}.biometric-employee-cell span{color:#9ca3af;margin-top:2px;font-size:9px}.biometric-unmatched-text{color:#dc2626}.biometric-punch{border-radius:5px;padding:4px 8px;font-size:9px;font-weight:700}.biometric-punch.in{color:#15803d;background:#dcfce7}.biometric-punch.out{color:#b45309;background:#fef3c7}.biometric-match-status{border-radius:20px;padding:4px 8px;font-size:9px;font-weight:700}.biometric-match-status.matched{color:#15803d;background:#dcfce7}.biometric-match-status.unmatched{color:#b91c1c;background:#fee2e2}.biometric-modal-overlay{z-index:2000;background:#1118277a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.biometric-modal{background:#fff;border-radius:12px;width:100%;max-width:560px;overflow:hidden}.biometric-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:20px 22px;display:flex}.biometric-modal-header h2{margin:0;font-size:18px}.biometric-modal-header p{color:#6b7280;margin:5px 0 0;font-size:10px}.biometric-modal-close{cursor:pointer;color:#6b7280;background:0 0;border:none;font-size:22px}.biometric-modal-body{padding:22px}.biometric-form-group{margin-bottom:16px}.biometric-form-group label{color:#374151;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.biometric-form-group input,.biometric-form-group select{background:#fff;border:1px solid #d1d5db;border-radius:7px;width:100%;padding:10px 11px;font-size:12px}.biometric-form-row{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.biometric-help{color:#9ca3af;margin-top:5px;font-size:9px;display:block}.biometric-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:9px;padding:15px 22px;display:flex}.biometric-cancel-button,.biometric-save-button{cursor:pointer;border-radius:7px;padding:9px 16px;font-size:11px;font-weight:600}.biometric-cancel-button{background:#fff;border:1px solid #d1d5db}.biometric-save-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.required{color:#dc2626;margin-left:3px}@media (width<=800px){.biometric-header{flex-direction:column;align-items:stretch;gap:15px}.biometric-summary{grid-template-columns:1fr}.biometric-filters{flex-direction:column;align-items:stretch}.biometric-filter-group,.biometric-filter-group.employee-filter{width:100%}.biometric-form-row{grid-template-columns:1fr}}.adjustments-page{width:100%}.adjustments-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.adjustments-header h1{color:#1f2937;margin:0;font-size:25px}.adjustments-header p{color:#6b7280;margin:6px 0 0;font-size:12px}.adjustments-add-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 17px;font-size:12px;font-weight:600}.adjustments-alert{border-radius:7px;margin-bottom:14px;padding:11px 14px;font-size:11px}.adjustments-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.adjustments-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.adjustments-summary{grid-template-columns:repeat(4,160px);gap:12px;margin-bottom:18px;display:grid}.adjustments-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:14px 16px}.adjustments-summary-card span{color:#6b7280;font-size:10px}.adjustments-summary-card strong{margin-top:5px;font-size:21px;display:block}.adjustments-summary-card.pending{border-left:3px solid #f59e0b}.adjustments-summary-card.approved{border-left:3px solid #16a34a}.adjustments-summary-card.rejected{border-left:3px solid #dc2626}.adjustments-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.adjustments-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:11px;padding:15px;display:flex}.adjustments-filter-group{flex-direction:column;gap:5px;min-width:140px;display:flex}.adjustments-filter-group.search{flex:1;min-width:230px}.adjustments-filter-group label{color:#374151;font-size:10px;font-weight:600}.adjustments-filter-group input,.adjustments-filter-group select{border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.adjustments-search-button{color:#fff;cursor:pointer;background:#374151;border:none;border-radius:6px;padding:9px 18px;font-size:11px}.adjustments-table-wrapper{overflow-x:auto}.adjustments-table{border-collapse:collapse;width:100%;min-width:1300px}.adjustments-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px}.adjustments-table td{color:#374151;vertical-align:top;border-bottom:1px solid #f1f1f1;padding:12px;font-size:10px}.adjustments-table-message{text-align:center;height:150px;color:#9ca3af!important}.adjustments-employee{flex-direction:column;display:flex}.adjustments-employee span{color:#9ca3af;margin-top:2px;font-size:9px}.adjustments-time{white-space:nowrap;flex-direction:column;gap:3px;display:flex}.adjustments-reason{max-width:220px;display:block}.adjustments-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700}.adjustments-status.pending{color:#b45309;background:#fef3c7}.adjustments-status.approved{color:#15803d;background:#dcfce7}.adjustments-status.rejected{color:#b91c1c;background:#fee2e2}.adjustments-review-info{flex-direction:column;gap:3px;display:flex}.adjustments-review-info small{color:#9ca3af}.adjustments-review-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #2563eb;border-radius:5px;padding:6px 10px;font-size:9px}.adjustments-modal-overlay{z-index:3000;background:#11182780;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.adjustments-modal{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto}.adjustments-modal.review{max-width:520px}.adjustments-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:19px 22px;display:flex}.adjustments-modal-header h2{margin:0;font-size:18px}.adjustments-modal-header p{color:#6b7280;margin:4px 0 0;font-size:10px}.adjustments-close{cursor:pointer;background:0 0;border:none;font-size:22px}.adjustments-modal-body{padding:21px}.adjustments-form-group{margin-bottom:16px}.adjustments-form-group label{color:#374151;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.adjustments-form-group input,.adjustments-form-group select,.adjustments-form-group textarea{box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px;font-size:11px}.adjustments-form-group small{color:#6b7280;margin-top:5px;font-size:9px;display:block}.adjustments-current-record{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;margin-bottom:16px;padding:12px;font-size:10px}.adjustments-current-record strong{margin-bottom:7px;display:block}.adjustments-current-record div{margin-top:3px}.adjustments-review-detail{background:#f9fafb;border-radius:7px;margin-bottom:18px;padding:12px}.adjustments-review-detail div{flex-direction:column;gap:3px;margin-bottom:10px;display:flex}.adjustments-review-detail span{color:#6b7280;font-size:9px}.adjustments-review-detail strong{font-size:11px}.adjustments-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:9px;padding:14px 22px;display:flex}.adjustments-cancel-button,.adjustments-save-button,.adjustments-reject-button,.adjustments-approve-button{cursor:pointer;border-radius:6px;padding:9px 16px;font-size:11px;font-weight:600}.adjustments-cancel-button{background:#fff;border:1px solid #d1d5db}.adjustments-save-button,.adjustments-approve-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.adjustments-reject-button{color:#dc2626;background:#fff;border:1px solid #dc2626}@media (width<=800px){.adjustments-header{flex-direction:column;align-items:stretch;gap:14px}.adjustments-summary{grid-template-columns:repeat(2,1fr)}.adjustments-filters{flex-direction:column;align-items:stretch}.adjustments-filter-group,.adjustments-filter-group.search{width:100%}}.attendance-status.holiday{color:#b45309;background:#fef3c7}.attendance-status.leave{color:#1d4ed8;background:#dbeafe}.attendance-status.official-business{color:#4338ca;background:#e0e7ff}.holiday-page{width:100%}.holiday-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.holiday-header h1{color:#1f2937;margin:0;font-size:25px}.holiday-header p{color:#6b7280;margin-top:6px;font-size:12px}.holiday-header button,.holiday-modal button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:7px;padding:9px 15px}.holiday-alert{border-radius:7px;margin-bottom:12px;padding:10px 13px;font-size:11px}.holiday-alert.success{color:#15803d;background:#f0fdf4}.holiday-alert.error{color:#b91c1c;background:#fef2f2}.holiday-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.holiday-filters{border-bottom:1px solid #e5e7eb;gap:12px;padding:15px;display:flex}.holiday-filters>div{flex-direction:column;gap:5px;display:flex}.holiday-search{flex:1}.holiday-filters label{font-size:10px;font-weight:600}.holiday-filters input,.holiday-filters select{border:1px solid #d1d5db;border-radius:6px;padding:8px 10px}.holiday-table-wrapper{overflow-x:auto}.holiday-table{border-collapse:collapse;width:100%}.holiday-table th{text-align:left;color:#6b7280;background:#f9fafb;padding:11px;font-size:9px}.holiday-table td{border-top:1px solid #f1f1f1;padding:12px;font-size:10px}.holiday-status{border-radius:20px;padding:4px 8px;font-size:9px;font-weight:700}.holiday-status.active{color:#15803d;background:#dcfce7}.holiday-status.inactive{color:#6b7280;background:#f3f4f6}.holiday-edit{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #2563eb;border-radius:5px;padding:5px 10px}.holiday-empty{text-align:center;height:130px}.holiday-modal-overlay{z-index:3000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.holiday-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;padding:22px}.holiday-modal h2{margin-top:0}.holiday-modal form{flex-direction:column;gap:8px;display:flex}.holiday-modal label{margin-top:6px;font-size:10px;font-weight:600}.holiday-modal input,.holiday-modal select,.holiday-modal textarea{border:1px solid #d1d5db;border-radius:6px;padding:9px}.holiday-check{align-items:center;gap:8px;display:flex}.holiday-check input{width:auto}.holiday-modal-actions{justify-content:flex-end;gap:8px;margin-top:15px;display:flex}.holiday-modal-actions .cancel{color:#374151;background:#fff;border:1px solid #d1d5db}.period-page{width:100%}.period-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.period-header h1{color:#1f2937;margin:0;font-size:25px}.period-header p{color:#6b7280;margin:6px 0 0;font-size:12px}.period-header button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:7px;padding:10px 16px}.period-alert{border-radius:6px;margin-bottom:13px;padding:10px 13px;font-size:11px}.period-alert.success{color:#15803d;background:#f0fdf4}.period-alert.error{color:#b91c1c;background:#fef2f2}.period-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.period-filters{border-bottom:1px solid #e5e7eb;gap:12px;padding:15px;display:flex}.period-filters>div{flex-direction:column;gap:5px;display:flex}.period-filters label{font-size:10px;font-weight:600}.period-filters input,.period-filters select{border:1px solid #d1d5db;border-radius:6px;padding:8px 10px}.period-search{flex:1}.period-table-wrapper{overflow-x:auto}.period-table{border-collapse:collapse;width:100%}.period-table th{color:#6b7280;text-align:left;background:#f9fafb;padding:11px;font-size:9px}.period-table td{border-top:1px solid #f1f1f1;padding:12px;font-size:10px}.period-empty{text-align:center;height:130px}.period-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700}.period-status.open{color:#15803d;background:#dcfce7}.period-status.processing{color:#1d4ed8;background:#dbeafe}.period-status.finalized{color:#374151;background:#f3f4f6}.period-actions{flex-wrap:wrap;gap:5px;display:flex}.period-actions button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:5px;padding:5px 9px;font-size:9px}.period-actions .finalize{color:#15803d;border-color:#16a34a}.period-modal-overlay{z-index:3000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.period-modal{background:#fff;border-radius:12px;width:100%;max-width:520px;padding:22px}.period-modal h2{margin-top:0}.period-modal form{flex-direction:column;gap:8px;display:flex}.period-modal label{margin-top:6px;font-size:10px;font-weight:600}.period-modal input,.period-modal textarea{box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:9px}.period-form-row{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.period-checkbox{align-items:center;gap:7px;display:flex}.period-checkbox input{width:auto}.period-modal-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.period-modal-actions button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:9px 15px}.period-modal-actions .cancel{color:#374151;background:#fff;border:1px solid #d1d5db}.company-report-header{border-bottom:2px solid #1f2937;justify-content:space-between;align-items:flex-start;gap:24px;width:100%;margin-bottom:18px;padding-bottom:16px;display:flex}.company-report-brand{align-items:center;gap:15px;min-width:0;display:flex}.company-report-logo{flex-shrink:0;justify-content:center;align-items:center;width:82px;height:82px;display:flex}.company-report-logo img{object-fit:contain;width:100%;height:100%}.company-report-logo-placeholder{color:#9ca3af;border:1px solid #d1d5db;border-radius:8px;justify-content:center;align-items:center;width:72px;height:72px;font-size:10px;font-weight:600;display:flex}.company-report-company{min-width:0}.company-report-company h1{color:#111827;margin:0 0 4px;font-size:19px;font-weight:700}.company-report-trade-name{color:#374151;margin-bottom:3px;font-size:10px;font-weight:600}.company-report-detail{color:#6b7280;margin-top:2px;font-size:9px;line-height:1.4}.company-report-document{text-align:right;min-width:250px}.company-report-document h2{color:#111827;margin:0;font-size:20px;font-weight:700}.company-report-subtitle{color:#4b5563;margin-top:5px;font-size:10px}.company-report-reference{color:#6b7280;margin-top:5px;font-size:9px}.company-report-header.compact{margin-bottom:12px;padding-bottom:10px}.company-report-header.compact .company-report-logo{width:60px;height:60px}.company-report-header.compact .company-report-company h1{font-size:16px}.company-report-header.compact .company-report-document h2{font-size:17px}.payslip-print-area .company-report-header{margin-bottom:14px}.payslip-print-area .company-report-logo{width:64px;height:64px}.payslip-print-area .company-report-document{min-width:190px}@media print{.company-report-header{border-bottom:1px solid #222;gap:15px;margin-bottom:10px;padding-bottom:8px}.company-report-logo{width:55px;height:55px}.company-report-logo-placeholder{width:50px;height:50px;font-size:7px}.company-report-company h1{font-size:13px}.company-report-trade-name{font-size:7px}.company-report-detail{font-size:6.5px}.company-report-document{min-width:180px}.company-report-document h2{font-size:14px}.company-report-subtitle,.company-report-reference{font-size:7px}.payslip-print-area .company-report-header{margin-bottom:8px}.payslip-print-area .company-report-logo{width:50px;height:50px}.payslip-print-area .company-report-document{min-width:150px}}.payslip-modal-overlay{z-index:3000;background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.payslip-modal{background:#f3f4f6;border-radius:12px;flex-direction:column;width:min(900px,100%);max-height:94vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000040}.payslip-modal-toolbar{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:15px;padding:13px 16px;display:flex}.payslip-modal-toolbar>div:first-child{flex-direction:column;display:flex}.payslip-modal-toolbar strong{color:#111827;font-size:12px}.payslip-modal-toolbar span{color:#6b7280;margin-top:2px;font-size:9px}.payslip-toolbar-actions{align-items:center;gap:7px;display:flex}.payslip-print-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:8px 12px;font-size:9px;font-weight:600}.payslip-print-button:disabled{opacity:.45;cursor:default}.payslip-close-button{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:5px;width:30px;height:30px;font-size:20px}.payslip-preview-warning{color:#92400e;background:#fffbeb;border-bottom:1px solid #fde68a;padding:9px 15px;font-size:9px}.payslip-scroll{padding:20px;overflow:auto}.payslip-print-area{box-sizing:border-box;color:#111827;background:#fff;width:100%;max-width:800px;min-height:1000px;margin:0 auto;padding:36px 40px;position:relative;overflow:hidden;box-shadow:0 4px 15px #00000014}.payslip-watermark{color:#b91c1c14;pointer-events:none;font-size:80px;font-weight:800;position:absolute;top:44%;left:16%;transform:rotate(-30deg)}.payslip-title-section{justify-content:space-between;gap:20px;margin-top:18px;display:flex}.payslip-title-section>div{flex-direction:column;display:flex}.payslip-title-section span{color:#6b7280;text-transform:uppercase;font-size:8px}.payslip-title-section strong{margin-top:3px;font-size:12px}.payslip-title-section small{color:#9ca3af;margin-top:2px;font-size:8px}.payslip-period-range{color:#6b7280;margin-top:5px;font-size:9px}.payslip-employee-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:7px;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:18px;padding:14px;display:grid}.payslip-info span{color:#6b7280;font-size:8px;display:block}.payslip-info strong{margin-top:2px;font-size:9px;display:block}.payslip-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px;display:grid}.payslip-column{border:1px solid #e5e7eb;border-radius:7px;overflow:hidden}.payslip-column h3{background:#f3f4f6;margin:0;padding:9px 11px;font-size:10px}.payslip-money-row{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;gap:15px;padding:7px 11px;font-size:9px;display:flex}.payslip-money-row:last-child{border-bottom:none}.payslip-money-row.total{background:#f9fafb;padding-top:9px;padding-bottom:9px;font-weight:700}.payslip-net-pay{color:#fff;background:#111827;border-radius:8px;justify-content:space-between;align-items:center;margin-top:20px;padding:16px;display:flex}.payslip-net-pay span{font-size:11px;font-weight:600}.payslip-net-pay strong{font-size:21px}.payslip-attendance,.payslip-employer-section{margin-top:20px}.payslip-attendance h3,.payslip-employer-section h3{border-bottom:1px solid #e5e7eb;margin:0 0 10px;padding-bottom:7px;font-size:10px}.payslip-attendance-grid{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.payslip-employer-grid{grid-template-columns:repeat(4,1fr);gap:11px;display:grid}.payslip-footer{color:#9ca3af;border-top:1px solid #e5e7eb;justify-content:space-between;margin-top:28px;padding-top:10px;font-size:7px;display:flex}@media (width<=700px){.payslip-print-area{padding:25px}.payslip-columns{grid-template-columns:1fr}.payslip-employee-section,.payslip-attendance-grid,.payslip-employer-grid{grid-template-columns:repeat(2,1fr)}}@media print{body *{visibility:hidden!important}.payslip-print-area,.payslip-print-area *{visibility:visible!important}.payslip-print-area{width:100%;max-width:none;min-height:auto;box-shadow:none;margin:0;padding:20mm;position:absolute;top:0;left:0}.payslip-modal-overlay,.payslip-modal,.payslip-scroll{background:#fff;padding:0;position:static;overflow:visible}@page{size:A4;margin:0}}.payroll-processing-page{width:100%}.payroll-processing-header{margin-bottom:20px}.payroll-processing-header h1{color:#1f2937;margin:0;font-size:25px}.payroll-processing-header p{color:#6b7280;margin:6px 0 0;font-size:12px}.payroll-processing-alert{border-radius:7px;margin-bottom:14px;padding:11px 14px;font-size:11px}.payroll-processing-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.payroll-processing-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.payroll-processing-control-card{background:#fff;border:1px solid #e5e7eb;border-radius:11px;margin-bottom:18px;padding:17px}.payroll-processing-control-grid{grid-template-columns:130px minmax(260px,2fr) minmax(140px,1fr) minmax(140px,1fr);gap:12px;display:grid}.payroll-processing-field{flex-direction:column;gap:5px;display:flex}.payroll-processing-field label{color:#374151;font-size:10px;font-weight:600}.payroll-processing-field input,.payroll-processing-field select,.payroll-processing-field textarea{box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:9px 10px;font-size:11px}.payroll-processing-field small{color:#9ca3af;font-size:8px}.payroll-processing-field.remarks{margin-top:14px}.payroll-processing-period-info{background:#f9fafb;border-radius:7px;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:14px;padding:12px;display:grid}.payroll-processing-period-info div{flex-direction:column;gap:3px;display:flex}.payroll-processing-period-info span{color:#6b7280;font-size:9px}.payroll-processing-period-info strong{color:#1f2937;font-size:11px}.payroll-processing-control-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.payroll-processing-control-actions button{cursor:pointer;border-radius:6px;padding:9px 16px;font-size:11px;font-weight:600}.payroll-processing-control-actions .generate{color:#fff;background:#2563eb;border:none}.payroll-processing-control-actions .finalize{color:#fff;background:#16a34a;border:none}.payroll-processing-control-actions button:disabled{opacity:.55;cursor:default}.payroll-processing-summary{grid-template-columns:repeat(5,1fr);gap:11px;margin-bottom:18px;display:grid}@media (width<=1200px){.payroll-processing-summary{grid-template-columns:repeat(2,1fr)}}.payroll-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:14px 16px}.payroll-summary-card span{color:#6b7280;font-size:9px;display:block}.payroll-summary-card strong{color:#111827;margin-top:5px;font-size:18px;display:block}.payroll-summary-card.deduction{border-left:3px solid #dc2626}.payroll-summary-card.net{border-left:3px solid #16a34a}.payroll-processing-table-card{background:#fff;border:1px solid #e5e7eb;border-radius:11px;overflow:hidden}.payroll-processing-table-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:15px;padding:14px 16px;display:flex}.payroll-processing-table-header>div{flex-direction:column;gap:2px;display:flex}.payroll-processing-table-header strong{font-size:12px}.payroll-processing-table-header span{color:#6b7280;font-size:9px}.payroll-processing-table-header input{border:1px solid #d1d5db;border-radius:6px;width:260px;padding:8px 10px;font-size:10px}.payroll-processing-table-wrapper{overflow-x:auto}.payroll-processing-table{border-collapse:collapse;width:100%;min-width:1650px}.payroll-processing-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:10px 11px;font-size:8px}.payroll-processing-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:11px;font-size:9px}.payroll-processing-table tbody tr:hover{background:#fafafa}.payroll-processing-empty{text-align:center;height:150px;color:#9ca3af!important}.payroll-employee,.payroll-salary,.payroll-attendance{flex-direction:column;gap:2px;display:flex}.payroll-employee{min-width:150px}.payroll-employee span,.payroll-salary span{color:#6b7280}.payroll-employee small{color:#9ca3af;font-size:8px}.payroll-attendance{color:#4b5563;min-width:80px}.payroll-attendance.warning strong{color:#b45309}.payroll-attendance.danger{color:#b91c1c}.payroll-money-sub{color:#dc2626;margin-top:3px;font-size:8px;display:block}.money{white-space:nowrap;text-align:right}.money.negative{color:#b91c1c}.money.positive,.money.net{color:#15803d}.payroll-not-generated{color:#374151;background:#fff;border:1px dashed #d1d5db;border-radius:10px;flex-direction:column;align-items:center;gap:5px;padding:35px;display:flex}.payroll-not-generated span{color:#9ca3af;font-size:10px}@media (width<=1100px){.payroll-processing-control-grid,.payroll-processing-period-info,.payroll-processing-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.payroll-processing-control-grid,.payroll-processing-period-info,.payroll-processing-summary{grid-template-columns:1fr}.payroll-processing-table-header{flex-direction:column;align-items:stretch}.payroll-processing-table-header input{width:100%}.payroll-processing-control-actions{flex-direction:column}}.payroll-contribution-setting{background:#eff6ff;border:1px solid #dbeafe;border-radius:7px;margin-top:14px;padding:12px 14px}.payroll-contribution-setting label{color:#1e3a8a;align-items:center;gap:8px;font-size:10px;font-weight:600;display:flex}.payroll-contribution-setting input{width:auto}.payroll-contribution-setting small{color:#64748b;margin-top:5px;margin-left:22px;font-size:9px;display:block}.payroll-expand-cell{text-align:center;width:35px}.payroll-expand-button{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:5px;width:24px;height:24px;padding:0;font-size:14px}.payroll-expand-button:hover{color:#2563eb;border-color:#2563eb}.payroll-detail-row td{background:#f8fafc;padding:0!important}.payroll-detail-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px 22px;display:grid}.payroll-detail-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:14px}.payroll-detail-section h4{color:#1f2937;margin:0 0 12px;font-size:11px}.payroll-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.payroll-detail-item{min-width:0}.payroll-detail-item span{color:#6b7280;margin-bottom:3px;font-size:8px;display:block}.payroll-detail-item div,.payroll-detail-item strong{color:#111827;font-size:10px;display:block}.payroll-detail-item strong{color:#15803d;font-size:11px}.payroll-summary-card.employer{border-left:3px solid #2563eb}@media (width<=900px){.payroll-detail-panel{grid-template-columns:1fr}}@media (width<=600px){.payroll-detail-grid{grid-template-columns:1fr}}.payroll-validation-overlay{z-index:2000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.payroll-validation-modal{background:#fff;border-radius:12px;flex-direction:column;width:min(760px,100%);max-height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.payroll-validation-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;gap:15px;padding:18px 20px;display:flex}.payroll-validation-header h2{color:#111827;margin:0;font-size:18px}.payroll-validation-header p{color:#6b7280;margin:4px 0 0;font-size:10px}.payroll-validation-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;width:30px;height:30px;font-size:20px}.payroll-validation-close:hover{background:#f3f4f6}.payroll-validation-body{padding:18px 20px;overflow-y:auto}.payroll-validation-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;flex-direction:column;gap:4px;padding:18px;display:flex}.payroll-validation-success strong{font-size:12px}.payroll-validation-success span{font-size:9px}.payroll-validation-section{margin-bottom:18px}.payroll-validation-section-title{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.payroll-validation-section-title strong{font-size:11px}.payroll-validation-section-title span{text-align:center;border-radius:999px;min-width:25px;padding:3px 7px;font-size:9px}.payroll-validation-section-title.error{color:#b91c1c}.payroll-validation-section-title.error span{background:#fee2e2}.payroll-validation-section-title.warning{color:#b45309}.payroll-validation-section-title.warning span{background:#fef3c7}.payroll-validation-list{flex-direction:column;gap:7px;display:flex}.payroll-validation-item{border-radius:7px;gap:10px;padding:11px 12px;display:flex}.payroll-validation-item.error{background:#fef2f2;border:1px solid #fecaca}.payroll-validation-item.warning{background:#fffbeb;border:1px solid #fde68a}.payroll-validation-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:flex}.payroll-validation-item.error .payroll-validation-icon{color:#b91c1c;background:#fee2e2}.payroll-validation-item.warning .payroll-validation-icon{color:#b45309;background:#fef3c7}.payroll-validation-content{min-width:0}.payroll-validation-employee{align-items:center;gap:6px;margin-bottom:3px;display:flex}.payroll-validation-employee strong{color:#111827;font-size:10px}.payroll-validation-employee span{color:#6b7280;font-size:8px}.payroll-validation-message{color:#374151;font-size:9px;line-height:1.5}.payroll-validation-code{color:#9ca3af;margin-top:3px;font-size:7px}.payroll-validation-blocked{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;padding:11px 12px;font-size:9px}.payroll-validation-warning-note{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:7px;padding:11px 12px;font-size:9px}.payroll-validation-footer{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.payroll-validation-footer button{cursor:pointer;border-radius:6px;padding:9px 15px;font-size:10px;font-weight:600}.payroll-validation-cancel{color:#374151;background:#fff;border:1px solid #d1d5db}.payroll-validation-finalize{color:#fff;background:#16a34a;border:none}.payroll-validation-finalize:disabled,.payroll-validation-cancel:disabled{opacity:.55;cursor:default}@media (width<=600px){.payroll-validation-overlay{padding:10px}.payroll-validation-modal{max-height:92vh}.payroll-validation-footer{flex-direction:column-reverse}.payroll-validation-footer button{width:100%}}.payroll-payslip-cell{white-space:nowrap;text-align:center}.payroll-view-payslip-button{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:5px;padding:6px 9px;font-size:8px;font-weight:600}.payroll-view-payslip-button:hover{background:#dbeafe;border-color:#2563eb}.payroll-view-payslip-button:disabled{opacity:.55;cursor:default}.payroll-premium-breakdown{white-space:nowrap;flex-direction:column;gap:4px;min-width:150px;display:flex}.payroll-premium-breakdown span{justify-content:space-between;gap:12px;display:flex}.payroll-premium-breakdown strong{font-weight:600}.payroll-leave-paid{color:#15803d;font-weight:700}.payroll-leave-unpaid{color:#b45309;font-weight:700}.payroll-adjustments-page{width:100%}.payroll-adjustments-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.payroll-adjustments-header h1{color:#1f2937;margin:0;font-size:24px}.payroll-adjustments-header p{color:#6b7280;margin:5px 0 0;font-size:11px}.payroll-adjustment-add{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:9px 15px;font-size:10px;font-weight:600}.payroll-adjustment-add:disabled{opacity:.5;cursor:default}.payroll-adjustment-alert{border-radius:6px;margin-bottom:12px;padding:10px 13px;font-size:10px}.payroll-adjustment-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.payroll-adjustment-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.payroll-adjustment-filter-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;margin-bottom:15px;padding:15px}.payroll-adjustment-filter-grid{grid-template-columns:100px minmax(230px,2fr) minmax(230px,2fr) minmax(200px,1fr);gap:10px;display:grid}.payroll-adjustment-field{flex-direction:column;gap:5px;display:flex}.payroll-adjustment-field label{color:#374151;font-size:9px;font-weight:600}.payroll-adjustment-field input,.payroll-adjustment-field select,.payroll-adjustment-field textarea{box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:8px 9px;font-size:10px}.payroll-adjustment-field.full-width{grid-column:1/-1}.payroll-adjustment-finalized-note{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;margin-top:10px;padding:9px 11px;font-size:9px}.payroll-adjustment-summary{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px;display:grid}.payroll-adjustment-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:13px 14px}.payroll-adjustment-summary-card span{color:#6b7280;font-size:8px;display:block}.payroll-adjustment-summary-card strong{color:#111827;margin-top:4px;font-size:16px;display:block}.payroll-adjustment-summary-card strong.positive{color:#15803d}.payroll-adjustment-summary-card strong.negative{color:#b91c1c}.payroll-adjustment-table-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;overflow:hidden}.payroll-adjustment-table-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:13px 15px;display:flex}.payroll-adjustment-table-header strong{font-size:11px}.payroll-adjustment-table-header span{color:#6b7280;font-size:9px}.payroll-adjustment-table-wrapper{overflow-x:auto}.payroll-adjustment-table{border-collapse:collapse;width:100%;min-width:1100px}.payroll-adjustment-table th{text-align:left;color:#6b7280;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:9px 10px;font-size:8px}.payroll-adjustment-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:10px;font-size:9px}.payroll-adjustment-table td small{color:#9ca3af;margin-top:2px;font-size:8px;display:block}.payroll-adjustment-table tr.inactive{opacity:.55;background:#f9fafb}.payroll-adjustment-table .money{white-space:nowrap;text-align:right}.payroll-adjustment-empty{text-align:center;height:120px;color:#9ca3af!important}.payroll-adjustment-type{border-radius:999px;padding:4px 7px;font-size:8px}.payroll-adjustment-type.earning{color:#15803d;background:#dcfce7}.payroll-adjustment-type.deduction{color:#b91c1c;background:#fee2e2}.payroll-adjustment-status{border-radius:999px;padding:4px 7px;font-size:8px}.payroll-adjustment-status.active{color:#15803d;background:#dcfce7}.payroll-adjustment-status.inactive{color:#6b7280;background:#f3f4f6}.payroll-adjustment-actions{gap:5px;display:flex}.payroll-adjustment-actions button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:5px;padding:5px 8px;font-size:8px}.payroll-adjustment-actions button.deactivate{color:#b91c1c;border-color:#fecaca}.payroll-adjustment-modal-overlay{z-index:2000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.payroll-adjustment-modal{background:#fff;border-radius:10px;width:min(650px,100%);overflow:hidden;box-shadow:0 20px 60px #0003}.payroll-adjustment-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:16px 18px;display:flex}.payroll-adjustment-modal-header h2{margin:0;font-size:16px}.payroll-adjustment-modal-header p{color:#6b7280;margin:4px 0 0;font-size:9px}.payroll-adjustment-modal-header button{cursor:pointer;background:0 0;border:none;width:28px;height:28px;font-size:18px}.payroll-adjustment-modal-body{padding:18px}.payroll-adjustment-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.payroll-adjustment-checkbox{align-items:center;gap:7px;flex-direction:row!important;display:flex!important}.payroll-adjustment-checkbox input{width:auto;margin:0}.payroll-adjustment-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:7px;padding:13px 18px;display:flex}.payroll-adjustment-modal-footer button{cursor:pointer;border-radius:6px;padding:8px 14px;font-size:9px;font-weight:600}.payroll-adjustment-modal-footer .cancel{color:#374151;background:#fff;border:1px solid #d1d5db}.payroll-adjustment-modal-footer .save{color:#fff;background:#2563eb;border:none}@media (width<=900px){.payroll-adjustment-filter-grid,.payroll-adjustment-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.payroll-adjustment-filter-grid,.payroll-adjustment-summary,.payroll-adjustment-form-grid{grid-template-columns:1fr}.payroll-adjustment-field.full-width{grid-column:auto}}.thirteenth-month-page{width:100%}.thirteenth-month-header{justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;display:flex}.thirteenth-month-header h1{color:#111827;margin:0;font-size:24px}.thirteenth-month-header p{color:#6b7280;margin:4px 0 0;font-size:11px}.thirteenth-month-header-actions{gap:8px;display:flex}.thirteenth-month-header-actions button{cursor:pointer;color:#fff;border:none;border-radius:6px;padding:9px 14px;font-size:10px;font-weight:600}.thirteenth-generate-button{background:#2563eb}.thirteenth-finalize-button{background:#16a34a}.thirteenth-paid-button{background:#7c3aed}.thirteenth-month-header-actions button:disabled{opacity:.55;cursor:default}.thirteenth-alert{border-radius:6px;margin-bottom:12px;padding:10px 12px;font-size:10px}.thirteenth-alert.success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.thirteenth-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.thirteenth-filter-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:120px minmax(250px,1fr) 150px;align-items:end;gap:12px;margin-bottom:14px;padding:14px;display:grid}.thirteenth-field{flex-direction:column;gap:5px;display:flex}.thirteenth-field label{color:#374151;font-size:9px;font-weight:600}.thirteenth-field input,.thirteenth-field select,.thirteenth-field textarea{box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:8px 9px;font-size:10px}.thirteenth-field small{color:#6b7280;font-size:8px}.thirteenth-status-container{flex-direction:column;gap:5px;display:flex}.thirteenth-status-container>span{font-size:9px;font-weight:600}.thirteenth-status{border-radius:999px;width:fit-content;padding:5px 8px;font-size:8px}.thirteenth-status.computed{color:#1d4ed8;background:#dbeafe}.thirteenth-status.finalized{color:#15803d;background:#dcfce7}.thirteenth-status.paid{color:#6d28d9;background:#ede9fe}.thirteenth-status.none{color:#6b7280;background:#f3f4f6}.thirteenth-summary{grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:14px;display:grid}.thirteenth-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:13px}.thirteenth-summary-card.highlight{background:#eff6ff;border-color:#bfdbfe}.thirteenth-summary-card.highlight strong{color:#1d4ed8}.thirteenth-table-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.thirteenth-table-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:12px 14px;display:flex}.thirteenth-table-header strong{font-size:11px}.thirteenth-table-header span{color:#6b7280;font-size:9px}.thirteenth-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:9px 10px;font-size:8px}.thirteenth-table td strong{display:block}.thirteenth-table td small{color:#9ca3af;margin-top:2px;font-size:8px;display:block}.thirteenth-table td.money{white-space:nowrap;text-align:right}.thirteenth-table td.money.final{color:#1d4ed8;font-weight:700}.thirteenth-table td.positive{color:#15803d}.thirteenth-table td.negative{color:#b91c1c}.thirteenth-edit-button{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:5px;padding:5px 9px;font-size:8px}.thirteenth-meta{color:#9ca3af;text-align:right;margin-top:10px;font-size:8px}.thirteenth-modal-overlay{z-index:3000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.thirteenth-modal{background:#fff;border-radius:10px;width:min(550px,100%);overflow:hidden;box-shadow:0 20px 60px #0003}.thirteenth-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:15px 17px;display:flex}.thirteenth-modal-header h2{margin:0;font-size:16px}.thirteenth-modal-header p{color:#6b7280;margin:3px 0 0;font-size:9px}.thirteenth-modal-header button{cursor:pointer;background:0 0;border:none;width:28px;height:28px;font-size:18px}.thirteenth-modal-body{padding:17px}.thirteenth-computation-preview{background:#f9fafb;border-radius:7px;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:15px;padding:12px;display:grid}.thirteenth-computation-preview span{color:#6b7280;font-size:8px;display:block}.thirteenth-computation-preview strong{margin-top:3px;font-size:14px;display:block}.thirteenth-modal-body .thirteenth-field{margin-top:12px}.thirteenth-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:7px;padding:13px 17px;display:flex}.thirteenth-modal-footer button{cursor:pointer;border-radius:6px;padding:8px 13px;font-size:9px;font-weight:600}.thirteenth-modal-footer .cancel{background:#fff;border:1px solid #d1d5db}.thirteenth-modal-footer .save{color:#fff;background:#2563eb;border:none}@media (width<=900px){.thirteenth-summary{grid-template-columns:repeat(2,1fr)}.thirteenth-filter-card{grid-template-columns:1fr 1fr}}@media (width<=600px){.thirteenth-month-header{flex-direction:column;align-items:flex-start}.thirteenth-filter-card,.thirteenth-summary{grid-template-columns:1fr}}.leave-page{width:100%}.leave-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.leave-header h1{color:#1f2937;margin:0;font-size:25px}.leave-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.leave-alert{border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.leave-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.leave-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.leave-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:18px;overflow:hidden}.leave-card h3{color:#1f2937;border-bottom:1px solid #e5e7eb;margin:0;padding:15px 16px;font-size:13px;font-weight:700}.leave-form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:11px;padding:15px 16px;display:grid}.leave-field{flex-direction:column;gap:5px;min-width:140px;display:flex}.leave-field.reason{grid-column:span 2}.leave-field label{color:#374151;font-size:10px;font-weight:600}.leave-field input,.leave-field select{color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;min-height:35px;padding:9px 10px;font-size:11px}.leave-field input:focus,.leave-field select:focus{border-color:#2563eb}.leave-field input:disabled,.leave-field select:disabled{color:#9ca3af;cursor:default;background:#f9fafb}.leave-actions{justify-content:flex-end;gap:8px;padding:0 16px 15px;display:flex}.leave-actions button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.leave-actions button:hover{background:#1d4ed8}.leave-actions button:disabled{opacity:.6;cursor:default}.leave-toolbar{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:11px;margin-bottom:0;padding:15px 16px;display:flex}.leave-toolbar>div{flex-direction:column;gap:3px;margin-right:auto;display:flex}.leave-toolbar>div strong{color:#1f2937;font-size:12px;font-weight:700}.leave-toolbar input,.leave-toolbar select{color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;min-height:35px;padding:9px 10px;font-size:11px}.leave-toolbar input{min-width:220px}.leave-toolbar select{min-width:130px}.leave-toolbar input:focus,.leave-toolbar select:focus{border-color:#2563eb}.leave-table-wrapper{overflow-x:auto}.leave-table{border-collapse:collapse;width:100%;min-width:1000px}.leave-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.leave-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:12px;font-size:10px}.leave-table tbody tr:hover{background:#fafbfc}.leave-table tbody tr:last-child td{border-bottom:none}.leave-table td strong{color:#1f2937;font-size:10px}.leave-table td div{color:#9ca3af;margin-top:2px;font-size:9px}.leave-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700;display:inline-block}.leave-status.pending{color:#b45309;background:#fef3c7}.leave-status.approved{color:#15803d;background:#dcfce7}.leave-status.rejected{color:#b91c1c;background:#fee2e2}.leave-status.cancelled{color:#6b7280;background:#f3f4f6}.leave-row-actions{flex-wrap:wrap;gap:6px;display:flex}.leave-row-actions button{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:5px;padding:6px 10px;font-size:9px;font-weight:600}.leave-row-actions button:hover{background:#f9fafb}.leave-row-actions button:first-child{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.leave-row-actions button:first-child:hover{background:#dcfce7}.leave-table td[colspan]{text-align:center;color:#9ca3af;height:150px}@media (width<=1000px){.leave-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.leave-header{flex-direction:column;align-items:stretch;gap:15px}.leave-form-grid{grid-template-columns:1fr}.leave-field.reason{grid-column:span 1}.leave-toolbar{flex-direction:column;align-items:stretch}.leave-toolbar>div{margin-right:0}.leave-toolbar input,.leave-toolbar select{width:100%}.leave-actions{justify-content:stretch}.leave-actions button{width:100%}}.leave-balance-self-summary{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:18px;display:grid}.leave-balance-self-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #16a34a;border-radius:9px;padding:13px 15px}.leave-balance-self-card span{color:#6b7280;font-size:10px;display:block}.leave-balance-self-card strong{color:#15803d;margin-top:4px;font-size:21px;display:block}.leave-balance-self-card small{color:#6b7280;margin-top:3px;font-size:9px;display:block}.leave-balance-self-used{color:#9ca3af;margin-top:7px;font-size:9px}.leave-balance-self-empty{color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:13px 15px;font-size:10px}.leave-row-actions .approve{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.leave-row-actions .approve:hover{background:#dcfce7}.leave-row-actions .reject{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.leave-row-actions .reject:hover{background:#fee2e2}.leave-row-actions .cancel{color:#6b7280;background:#fff;border:1px solid #d1d5db}.leave-row-actions .cancel:hover{background:#f3f4f6}.leave-request-summary{grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin-bottom:18px;display:grid}.leave-request-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:13px 15px}.leave-request-summary-card span{color:#6b7280;font-size:10px;display:block}.leave-request-summary-card strong{color:#111827;margin-top:4px;font-size:21px;display:block}.leave-request-summary-card:first-child{border-left:3px solid #2563eb}.leave-request-summary-card.pending{border-left:3px solid #d97706}.leave-request-summary-card.approved{border-left:3px solid #16a34a}.leave-request-summary-card.rejected{border-left:3px solid #dc2626}.leave-request-summary-card.cancelled{border-left:3px solid #6b7280}@media (width<=1000px){.leave-request-summary{grid-template-columns:repeat(3,1fr)}}@media (width<=700px){.leave-request-summary{grid-template-columns:repeat(2,1fr)}}.leave-balance-page{width:100%}.leave-balance-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.leave-balance-header h1{color:#1f2937;margin:0;font-size:25px}.leave-balance-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.leave-balance-alert{border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.leave-balance-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.leave-balance-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.leave-balance-summary{grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-bottom:18px;display:grid}.leave-balance-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:13px 15px}.leave-balance-summary-card span{color:#6b7280;font-size:10px;display:block}.leave-balance-summary-card strong{color:#111827;margin-top:4px;font-size:21px;display:block}.leave-balance-summary-card.entitled{border-left:3px solid #2563eb}.leave-balance-summary-card.used{border-left:3px solid #d97706}.leave-balance-summary-card.available{border-left:3px solid #16a34a}.leave-balance-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:18px;overflow:hidden}.leave-balance-card-title{border-bottom:1px solid #e5e7eb;flex-direction:column;gap:3px;padding:13px 16px;display:flex}.leave-balance-card-title strong{color:#1f2937;font-size:12px}.leave-balance-card-title span{color:#6b7280;font-size:9px}.leave-balance-form{grid-template-columns:repeat(4,minmax(150px,1fr));gap:11px;padding:15px 16px;display:grid}.leave-balance-field{flex-direction:column;gap:5px;display:flex}.leave-balance-field.employee{grid-column:span 2}.leave-balance-field label{color:#374151;font-size:10px;font-weight:600}.leave-balance-field input,.leave-balance-field select{color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:9px 10px;font-size:11px}.leave-balance-field input:focus,.leave-balance-field select:focus{border-color:#2563eb}.leave-balance-field input:disabled,.leave-balance-field select:disabled{color:#9ca3af;cursor:default;background:#f9fafb}.leave-balance-field.active{justify-content:flex-end}.leave-balance-checkbox{cursor:pointer;align-items:center;gap:8px;min-height:35px;display:flex}.leave-balance-checkbox input{width:15px;height:15px;margin:0;padding:0}.leave-balance-checkbox span{color:#374151;font-size:11px;font-weight:400}.leave-balance-form-actions{justify-content:flex-end;gap:8px;padding:0 16px 15px;display:flex}.leave-balance-form-actions button{cursor:pointer;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.leave-balance-form-actions .save{color:#fff;background:#2563eb}.leave-balance-form-actions .save:hover{background:#1d4ed8}.leave-balance-form-actions .cancel{color:#374151;background:#fff;border:1px solid #d1d5db}.leave-balance-form-actions .cancel:hover{background:#f9fafb}.leave-balance-form-actions button:disabled{opacity:.6;cursor:default}.leave-balance-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:11px;padding:15px 16px;display:flex}.leave-balance-filter-group{flex-direction:column;gap:5px;min-width:140px;display:flex}.leave-balance-filter-group.employee{min-width:260px}.leave-balance-filter-group.search{flex:1;min-width:220px}.leave-balance-filter-group label{color:#374151;font-size:10px;font-weight:600}.leave-balance-filter-group input,.leave-balance-filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:9px 10px;font-size:11px}.leave-balance-filter-group input:focus,.leave-balance-filter-group select:focus{border-color:#2563eb}.leave-balance-result-info{color:#6b7280;border-bottom:1px solid #f1f1f1;padding:10px 16px;font-size:10px}.leave-balance-table-wrapper{overflow-x:auto}.leave-balance-table{border-collapse:collapse;width:100%;min-width:1050px}.leave-balance-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.leave-balance-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:12px;font-size:10px}.leave-balance-table tbody tr:hover{background:#fafbfc}.leave-balance-table-message{text-align:center;height:150px;color:#9ca3af!important}.leave-balance-employee,.leave-balance-type{flex-direction:column;min-width:140px;display:flex}.leave-balance-employee strong,.leave-balance-type strong{color:#374151;font-size:10px}.leave-balance-employee span,.leave-balance-type span{color:#9ca3af;margin-top:2px;font-size:9px}.leave-balance-table td.number{text-align:right;font-variant-numeric:tabular-nums}.leave-balance-table td.positive{color:#15803d}.leave-balance-table td.negative{color:#b91c1c}.leave-balance-table td.used{color:#b45309}.leave-balance-table td.available{color:#15803d}.leave-balance-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700;display:inline-block}.leave-balance-status.active{color:#15803d;background:#dcfce7}.leave-balance-status.inactive{color:#6b7280;background:#f3f4f6}.leave-balance-row-actions{flex-wrap:wrap;gap:6px;display:flex}.leave-balance-row-actions button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:5px;padding:6px 10px;font-size:9px;font-weight:600}.leave-balance-row-actions .edit{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.leave-balance-row-actions .edit:hover{background:#dbeafe}.leave-balance-row-actions .deactivate{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.leave-balance-row-actions .deactivate:hover{background:#fee2e2}@media (width<=1000px){.leave-balance-summary,.leave-balance-form{grid-template-columns:repeat(2,1fr)}.leave-balance-field.employee{grid-column:span 2}}@media (width<=700px){.leave-balance-header{flex-direction:column;align-items:stretch;gap:15px}.leave-balance-summary{grid-template-columns:repeat(2,1fr)}.leave-balance-form{grid-template-columns:1fr}.leave-balance-field.employee{grid-column:span 1}.leave-balance-filters{flex-direction:column;align-items:stretch}.leave-balance-filter-group,.leave-balance-filter-group.employee,.leave-balance-filter-group.search{width:100%}.leave-balance-form-actions{flex-direction:column-reverse}.leave-balance-form-actions button{width:100%}}.leave-type-page{width:100%}.leave-type-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.leave-type-header h1{color:#1f2937;margin:0;font-size:25px}.leave-type-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.leave-type-alert{border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.leave-type-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.leave-type-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.leave-type-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:18px;overflow:hidden}.leave-type-card-title{border-bottom:1px solid #e5e7eb;padding:13px 16px}.leave-type-card-title strong{color:#1f2937;font-size:12px}.leave-type-form{grid-template-columns:repeat(4,minmax(150px,1fr));gap:11px;padding:15px 16px;display:grid}.leave-type-field{flex-direction:column;gap:5px;display:flex}.leave-type-field.name{grid-column:span 2}.leave-type-field.description{grid-column:span 3}.leave-type-field label{color:#374151;font-size:10px;font-weight:600}.leave-type-field input,.leave-type-field select{color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:9px 10px;font-size:11px}.leave-type-field input:focus,.leave-type-field select:focus{border-color:#2563eb}.leave-type-field input:disabled,.leave-type-field select:disabled{color:#9ca3af;cursor:default;background:#f9fafb}.leave-type-checkbox{cursor:pointer;align-items:center;gap:8px;min-height:35px;display:flex}.leave-type-checkbox input{width:15px;height:15px;margin:0;padding:0}.leave-type-checkbox span{color:#374151;font-size:11px;font-weight:400}.leave-type-form-actions{justify-content:flex-end;gap:8px;padding:0 16px 15px;display:flex}.leave-type-form-actions button{cursor:pointer;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.leave-type-form-actions .save{color:#fff;background:#2563eb}.leave-type-form-actions .save:hover{background:#1d4ed8}.leave-type-form-actions .cancel{color:#374151;background:#fff;border:1px solid #d1d5db}.leave-type-form-actions .cancel:hover{background:#f9fafb}.leave-type-form-actions button:disabled{opacity:.6;cursor:default}.leave-type-filters{border-bottom:1px solid #e5e7eb;align-items:flex-end;gap:11px;padding:15px 16px;display:flex}.leave-type-filter-group{flex-direction:column;gap:5px;display:flex}.leave-type-filter-group.search{flex:1;min-width:260px}.leave-type-filter-group label{color:#374151;font-size:10px;font-weight:600}.leave-type-filter-group input{background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:9px 10px;font-size:11px}.leave-type-filter-group input:focus{border-color:#2563eb}.leave-type-result-info{color:#6b7280;border-bottom:1px solid #f1f1f1;padding:10px 16px;font-size:10px}.leave-type-table-wrapper{overflow-x:auto}.leave-type-table{border-collapse:collapse;width:100%;min-width:900px}.leave-type-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.leave-type-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:12px;font-size:10px}.leave-type-table tbody tr:hover{background:#fafbfc}.leave-type-table-message{text-align:center;height:150px;color:#9ca3af!important}.leave-type-code{color:#2563eb;background:#eff6ff;border-radius:5px;padding:4px 8px;font-size:9px;font-weight:700;display:inline-block}.leave-type-pay{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700;display:inline-block}.leave-type-pay.paid{color:#15803d;background:#dcfce7}.leave-type-pay.unpaid{color:#b45309;background:#fef3c7}.leave-type-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700;display:inline-block}.leave-type-status.active{color:#15803d;background:#dcfce7}.leave-type-status.inactive{color:#6b7280;background:#f3f4f6}.leave-type-description{color:#6b7280;font-size:9px}.leave-type-row-actions{flex-wrap:wrap;gap:6px;display:flex}.leave-type-row-actions button{cursor:pointer;border-radius:5px;padding:6px 10px;font-size:9px;font-weight:600}.leave-type-row-actions .edit{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe}.leave-type-row-actions .edit:hover{background:#dbeafe}.leave-type-row-actions .deactivate{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.leave-type-row-actions .deactivate:hover{background:#fee2e2}@media (width<=1000px){.leave-type-form{grid-template-columns:repeat(2,1fr)}.leave-type-field.name,.leave-type-field.description{grid-column:span 2}}@media (width<=700px){.leave-type-header{flex-direction:column;align-items:stretch;gap:15px}.leave-type-form{grid-template-columns:1fr}.leave-type-field.name,.leave-type-field.description{grid-column:span 1}.leave-type-filters{flex-direction:column;align-items:stretch}.leave-type-filter-group.search{width:100%}.leave-type-form-actions{flex-direction:column-reverse}.leave-type-form-actions button{width:100%}}.my-attendance-page{width:100%}.my-attendance-header{margin-bottom:20px}.my-attendance-header h1{color:#1f2937;margin:0;font-size:25px}.my-attendance-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.my-attendance-alert{border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.my-attendance-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.my-attendance-summary{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin-bottom:18px;display:grid}.my-attendance-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:13px 15px}.my-attendance-summary-card span{color:#6b7280;font-size:10px;display:block}.my-attendance-summary-card strong{color:#111827;margin-top:4px;font-size:21px;display:block}.my-attendance-summary-card small{color:#9ca3af;font-size:9px}.my-attendance-summary-card.present{border-left:3px solid #16a34a}.my-attendance-summary-card.absent{border-left:3px solid #dc2626}.my-attendance-summary-card.leave{border-left:3px solid #2563eb}.my-attendance-summary-card.late{border-left:3px solid #d97706}.my-attendance-summary-card.undertime{border-left:3px solid #ea580c}.my-attendance-summary-card.overtime{border-left:3px solid #7c3aed}.my-attendance-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.my-attendance-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:11px;padding:15px 16px;display:flex}.my-attendance-filter-group{flex-direction:column;gap:5px;min-width:160px;display:flex}.my-attendance-filter-group label{color:#374151;font-size:10px;font-weight:600}.my-attendance-filter-group input{background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;padding:9px 10px;font-size:11px}.my-attendance-filter-group input:focus{border-color:#2563eb}.my-attendance-search-button{color:#fff;cursor:pointer;background:#374151;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.my-attendance-search-button:disabled{opacity:.6;cursor:default}.my-attendance-result-info{color:#6b7280;border-bottom:1px solid #f1f1f1;padding:10px 16px;font-size:10px}.my-attendance-table-wrapper{overflow-x:auto}.my-attendance-table{border-collapse:collapse;width:100%;min-width:1200px}.my-attendance-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.my-attendance-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:12px;font-size:10px}.my-attendance-table tbody tr:hover{background:#fafbfc}.my-attendance-table-message{text-align:center;height:150px;color:#9ca3af!important}.my-attendance-day{flex-direction:column;gap:3px;min-width:130px;display:flex}.my-attendance-day strong{color:#374151;font-size:10px}.my-attendance-holiday{color:#b45309;font-size:8px}.my-attendance-shift-badge{color:#2563eb;background:#eff6ff;border-radius:5px;padding:4px 8px;font-size:9px;font-weight:700}.my-attendance-rest-badge{color:#6b7280;background:#f3f4f6;border-radius:5px;padding:4px 8px;font-size:9px;font-weight:700}.my-attendance-time{color:#6b7280;flex-direction:column;gap:3px;min-width:90px;font-size:9px;display:flex}.my-attendance-time strong{color:#374151}.my-attendance-time.actual strong{color:#2563eb}.my-attendance-table td.warning{color:#dc2626;font-weight:700}.my-attendance-ot{color:#6b7280;flex-direction:column;gap:3px;min-width:90px;font-size:9px;display:flex}.my-attendance-ot strong{color:#16a34a}.my-attendance-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700;display:inline-block}.my-attendance-status.present{color:#15803d;background:#dcfce7}.my-attendance-status.absent{color:#b91c1c;background:#fee2e2}.my-attendance-status.incomplete{color:#7e22ce;background:#f3e8ff}.my-attendance-status.restday{color:#6b7280;background:#f3f4f6}.my-attendance-status.leave{color:#1d4ed8;background:#dbeafe}.my-attendance-status.holiday{color:#b45309;background:#fef3c7}.my-attendance-status.officialbusiness{color:#047857;background:#ecfdf3}.my-attendance-remarks{color:#6b7280;max-width:180px;font-size:9px;display:inline-block}@media (width<=1000px){.my-attendance-summary{grid-template-columns:repeat(3,1fr)}}@media (width<=700px){.my-attendance-summary{grid-template-columns:repeat(2,1fr)}.my-attendance-filters{flex-direction:column;align-items:stretch}.my-attendance-filter-group,.my-attendance-search-button{width:100%}}.my-payslips-page{width:100%}.my-payslips-header{margin-bottom:20px}.my-payslips-header h1{color:#1f2937;margin:0;font-size:25px}.my-payslips-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.my-payslips-alert{border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.my-payslips-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.my-payslips-summary{grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin-bottom:18px;display:grid}.my-payslips-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #64748b;border-radius:9px;padding:13px 15px}.my-payslips-summary-card span{color:#6b7280;font-size:10px;display:block}.my-payslips-summary-card strong{color:#111827;margin-top:5px;font-size:20px;display:block}.my-payslips-summary-card.gross{border-left-color:#2563eb}.my-payslips-summary-card.deductions{border-left-color:#d97706}.my-payslips-summary-card.net{border-left-color:#16a34a}.my-payslips-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.my-payslips-filters{border-bottom:1px solid #e5e7eb;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.my-payslips-filter-group{flex-direction:column;gap:5px;width:150px;display:flex}.my-payslips-filter-group label{color:#374151;font-size:10px;font-weight:600}.my-payslips-filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.my-payslips-refresh-button{color:#fff;cursor:pointer;background:#374151;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.my-payslips-refresh-button:disabled{opacity:.6;cursor:default}.my-payslips-result-info{color:#6b7280;border-bottom:1px solid #f1f1f1;padding:10px 16px;font-size:10px}.my-payslips-table-wrapper{overflow-x:auto}.my-payslips-table{border-collapse:collapse;width:100%;min-width:1000px}.my-payslips-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.my-payslips-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:12px;font-size:10px}.my-payslips-table tbody tr:hover{background:#fafbfc}.my-payslips-message{text-align:center;height:150px;color:#9ca3af!important}.my-payslip-period{flex-direction:column;gap:3px;display:flex}.my-payslip-period strong{color:#111827;font-size:11px}.my-payslip-period span{color:#6b7280;font-size:9px}.my-payslip-cutoff{flex-direction:column;gap:2px;display:flex}.my-payslip-cutoff small{color:#9ca3af;font-size:8px}.my-payslip-money{white-space:nowrap;font-weight:600}.my-payslip-money.deduction{color:#b45309}.my-payslip-money.net{color:#15803d;font-weight:700}.my-payslip-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700;display:inline-block}.my-payslip-status.finalized{color:#15803d;background:#dcfce7}.my-payslip-view-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #2563eb;border-radius:6px;padding:7px 11px;font-size:9px;font-weight:700}.my-payslip-view-button:hover{background:#eff6ff}.my-payslip-view-button:disabled{opacity:.6;cursor:default}@media (width<=900px){.my-payslips-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.my-payslips-summary{grid-template-columns:1fr}.my-payslips-filters{flex-direction:column;align-items:stretch}.my-payslips-filter-group,.my-payslips-refresh-button{width:100%}}.dtr-report-page{width:100%}.dtr-report-header{margin-bottom:20px}.dtr-report-header h1{color:#1f2937;margin:0;font-size:25px}.dtr-report-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.dtr-report-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.dtr-summary{grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin-bottom:18px;display:grid}.dtr-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #64748b;border-radius:9px;padding:13px 15px}.dtr-summary-card span{color:#6b7280;font-size:10px;display:block}.dtr-summary-card strong{color:#111827;margin-top:4px;font-size:21px;display:block}.dtr-summary-card small{color:#9ca3af;font-size:9px}.dtr-summary-card.present{border-left-color:#16a34a}.dtr-summary-card.absent{border-left-color:#dc2626}.dtr-summary-card.leave{border-left-color:#2563eb}.dtr-report-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.dtr-report-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.dtr-filter-group{flex-direction:column;gap:5px;min-width:150px;display:flex}.dtr-filter-group.employee{min-width:260px}.dtr-filter-group label{color:#374151;font-size:10px;font-weight:600}.dtr-filter-group input,.dtr-filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.dtr-search-button{color:#fff;cursor:pointer;background:#374151;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.dtr-search-button:disabled{opacity:.6;cursor:default}.dtr-result-info{color:#6b7280;border-bottom:1px solid #f1f1f1;padding:10px 16px;font-size:10px}.dtr-table-wrapper{overflow-x:auto}.dtr-table{border-collapse:collapse;width:100%;min-width:1450px}.dtr-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.dtr-table td{color:#374151;vertical-align:middle;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.dtr-table tbody tr:hover{background:#fafbfc}.dtr-message{text-align:center;height:150px;color:#9ca3af!important}.dtr-employee{flex-direction:column;gap:2px;min-width:120px;display:flex}.dtr-employee strong{color:#111827}.dtr-employee span{color:#6b7280;font-size:9px}.dtr-table td.warning{color:#dc2626;font-weight:700}.dtr-status{border-radius:20px;padding:4px 9px;font-size:9px;font-weight:700;display:inline-block}.dtr-status.present{color:#15803d;background:#dcfce7}.dtr-status.absent{color:#b91c1c;background:#fee2e2}.dtr-status.leave{color:#1d4ed8;background:#dbeafe}.dtr-status.holiday{color:#b45309;background:#fef3c7}.dtr-status.restday{color:#6b7280;background:#f3f4f6}.dtr-status.incomplete{color:#7e22ce;background:#f3e8ff}.dtr-status.officialbusiness{color:#047857;background:#ecfdf3}@media (width<=900px){.dtr-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.dtr-summary{grid-template-columns:1fr}.dtr-report-filters{flex-direction:column;align-items:stretch}.dtr-filter-group,.dtr-filter-group.employee,.dtr-search-button{width:100%}}.dtr-export-button{color:#15803d;cursor:pointer;background:#fff;border:1px solid #15803d;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.dtr-export-button:hover{background:#f0fdf4}.dtr-export-button:disabled{opacity:.5;cursor:default}.dtr-filter-group.department{min-width:220px}.dtr-print-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #2563eb;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.dtr-print-button:hover{background:#eff6ff}.dtr-print-button:disabled{opacity:.5;cursor:default}@media print{@page{size:landscape;margin:10mm}body *{visibility:hidden!important}.dtr-print-view,.dtr-print-view *{visibility:visible!important}.dtr-print-view{color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;width:100%;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.dtr-print-header{border-bottom:2px solid #222;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:10px;display:flex}.dtr-print-header h1{margin:0;font-size:20px}.dtr-print-header p{margin:3px 0 0;font-size:10px}.dtr-print-generated{font-size:8px}.dtr-print-information{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;display:grid}.dtr-print-information>div{border:1px solid #ccc;padding:6px 8px}.dtr-print-information span{text-transform:uppercase;margin-bottom:3px;font-size:7px;display:block}.dtr-print-information strong{font-size:9px}.dtr-print-summary{grid-template-columns:repeat(9,1fr);gap:4px;margin-bottom:10px;display:grid}.dtr-print-summary>div{text-align:center;border:1px solid #ccc;padding:5px}.dtr-print-summary span{text-transform:uppercase;font-size:6px;display:block}.dtr-print-summary strong{margin-top:2px;font-size:9px;display:block}.dtr-print-table{border-collapse:collapse;width:100%;font-size:7px}.dtr-print-table th{text-align:left;text-transform:uppercase;background:#eee;border:1px solid #555;padding:5px 3px;font-size:6.5px}.dtr-print-table td{vertical-align:top;border:1px solid #aaa;padding:4px 3px}.dtr-print-table small{font-size:6px}.dtr-print-table tr{page-break-inside:avoid}.dtr-print-signatures{text-align:center;grid-template-columns:repeat(2,220px);justify-content:end;gap:30px;margin-top:30px;display:grid}.dtr-print-signatures span{margin-bottom:25px;font-size:7px;display:block}.dtr-signature-line{border-top:1px solid #333;margin-bottom:4px}.dtr-print-signatures strong{font-size:8px}}.dtr-print-view{display:none}.dtr-print-header{margin-bottom:10px}.dtr-print-view .company-report-header{margin-bottom:8px}.dtr-print-view .company-report-logo{width:58px;height:58px}.dtr-print-view .company-report-document{min-width:210px}.dtr-print-generated{color:#6b7280;text-align:right;margin-top:4px;font-size:7px}.dtr-print-information{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:10px;display:grid}.dtr-print-information>div{border:1px solid #d1d5db;border-radius:4px;padding:6px 8px}.dtr-print-information span{color:#6b7280;margin-bottom:2px;font-size:6.5px;display:block}.dtr-print-information strong{color:#111827;font-size:8px;font-weight:600}.dtr-print-summary{grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;margin-bottom:10px;display:grid}.dtr-print-summary>div{text-align:center;border:1px solid #d1d5db;padding:5px 4px}.dtr-print-summary span{color:#6b7280;font-size:5.5px;display:block}.dtr-print-summary strong{color:#111827;margin-top:2px;font-size:7.5px;display:block}.dtr-print-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:6px}.dtr-print-table th{color:#111827;text-align:center;vertical-align:middle;background:#f3f4f6;border:1px solid #555;padding:4px 3px;font-size:5.5px;font-weight:700}.dtr-print-table td{color:#111827;text-align:center;vertical-align:middle;overflow-wrap:anywhere;border:1px solid #aaa;padding:4px 3px}.dtr-print-table td:first-child{text-align:left}.dtr-print-table td strong{font-size:6px}.dtr-print-table td small{color:#4b5563;font-size:5px}.dtr-print-table tr{page-break-inside:avoid}.dtr-print-table th:first-child,.dtr-print-table td:first-child{width:12%}.dtr-print-table th:nth-child(2),.dtr-print-table td:nth-child(2){width:7%}.dtr-print-table th:nth-child(3),.dtr-print-table td:nth-child(3){width:8%}.dtr-print-table th:nth-child(4),.dtr-print-table td:nth-child(4),.dtr-print-table th:nth-child(5),.dtr-print-table td:nth-child(5),.dtr-print-table th:nth-child(6),.dtr-print-table td:nth-child(6),.dtr-print-table th:nth-child(7),.dtr-print-table td:nth-child(7){width:6%}.dtr-print-table th:nth-child(8),.dtr-print-table td:nth-child(8),.dtr-print-table th:nth-child(9),.dtr-print-table td:nth-child(9),.dtr-print-table th:nth-child(10),.dtr-print-table td:nth-child(10),.dtr-print-table th:nth-child(11),.dtr-print-table td:nth-child(11){width:5%}.dtr-print-table th:nth-child(12),.dtr-print-table td:nth-child(12){width:7%}.dtr-print-table th:nth-child(13),.dtr-print-table td:nth-child(13){width:11%}.dtr-print-signatures{text-align:center;grid-template-columns:repeat(2,220px);justify-content:end;gap:30px;margin-top:30px;display:grid}.dtr-print-signatures>div span{margin-bottom:25px;font-size:7px;display:block}.dtr-signature-line{border-top:1px solid #333;margin-bottom:4px}.dtr-print-signatures strong{font-size:8px}@media print{@page{size:landscape;margin:7mm}body *{visibility:hidden!important}.dtr-print-view,.dtr-print-view *{visibility:visible!important}.dtr-print-view{color:#000;background:#fff;width:100%;margin:0;padding:0;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.dtr-print-header{margin-bottom:7px}.dtr-print-view .company-report-header{margin-bottom:5px;padding-bottom:6px}.dtr-print-view .company-report-logo{width:48px;height:48px}.dtr-print-view .company-report-document{min-width:180px}.dtr-print-generated{margin-top:2px;font-size:6px}.dtr-print-information{gap:4px;margin-bottom:7px}.dtr-print-information>div{padding:4px 6px}.dtr-print-information span{font-size:5.5px}.dtr-print-information strong{font-size:7px}.dtr-print-summary{gap:3px;margin-bottom:7px}.dtr-print-summary>div{padding:4px 2px}.dtr-print-summary span{font-size:5px}.dtr-print-summary strong{font-size:7px}.dtr-print-table{font-size:5.5px}.dtr-print-table th{padding:3px 2px;font-size:5px}.dtr-print-table td{padding:3px 2px;font-size:5.5px}.dtr-print-table td strong{font-size:5.5px}.dtr-print-table td small{font-size:4.5px}.dtr-print-signatures{grid-template-columns:repeat(2,180px);gap:25px;margin-top:25px}.dtr-print-signatures>div span{margin-bottom:20px;font-size:6px}.dtr-print-signatures strong{font-size:7px}}.payroll-register-page{width:100%}.payroll-register-header{margin-bottom:20px}.payroll-register-header h1{color:#1f2937;margin:0;font-size:25px}.payroll-register-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.payroll-register-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.payroll-register-summary{grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;margin-bottom:18px;display:grid}.payroll-register-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:13px 15px}.payroll-register-summary-card span{color:#6b7280;font-size:10px;display:block}.payroll-register-summary-card strong{color:#111827;margin-top:4px;font-size:19px;display:block}.payroll-register-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.payroll-register-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.payroll-register-filter{flex-direction:column;gap:5px;min-width:210px;display:flex}.payroll-register-filter.employee{min-width:260px}.payroll-register-filter label{color:#374151;font-size:10px;font-weight:600}.payroll-register-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.payroll-register-search,.payroll-register-export{cursor:pointer;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.payroll-register-search{color:#fff;background:#374151;border:none}.payroll-register-export{color:#15803d;background:#fff;border:1px solid #15803d}.payroll-register-search:disabled,.payroll-register-export:disabled{opacity:.5;cursor:default}.payroll-register-table-wrapper{overflow-x:auto}.payroll-register-table{border-collapse:collapse;width:100%;min-width:1500px}.payroll-register-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.payroll-register-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.payroll-register-table td span{color:#6b7280;font-size:9px}.payroll-register-net{font-weight:700;color:#15803d!important}.payroll-register-empty{text-align:center;height:150px;color:#9ca3af!important}.payroll-register-print{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #2563eb;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.payroll-register-print:hover:not(:disabled){background:#eff6ff}.payroll-register-print:disabled{opacity:.5;cursor:default}.payroll-register-print-view{display:none}.payroll-register-print-view .company-report-header{margin-bottom:8px;padding-bottom:8px}.payroll-register-print-view .company-report-logo{width:56px;height:56px}.payroll-register-print-view .company-report-document{min-width:210px}.payroll-register-print-info{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:8px;display:grid}.payroll-register-print-info>div{border:1px solid #d1d5db;border-radius:4px;padding:6px 8px}.payroll-register-print-info span{color:#6b7280;margin-bottom:2px;font-size:6.5px;display:block}.payroll-register-print-info strong{color:#111827;font-size:8px;font-weight:600;display:block}.payroll-register-generated{color:#6b7280;text-align:right;margin:4px 0 8px;font-size:6.5px}.payroll-register-print-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-bottom:9px;display:grid}.payroll-register-print-summary>div{text-align:center;border:1px solid #d1d5db;padding:5px 4px}.payroll-register-print-summary span{color:#6b7280;font-size:5.5px;display:block}.payroll-register-print-summary strong{color:#111827;margin-top:2px;font-size:7.5px;display:block}.payroll-register-print-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:5.8px}.payroll-register-print-table th{color:#111827;text-align:center;vertical-align:middle;background:#f3f4f6;border:1px solid #555;padding:4px 2px;font-size:5.2px;font-weight:700}.payroll-register-print-table td{color:#111827;text-align:right;vertical-align:middle;overflow-wrap:anywhere;border:1px solid #aaa;padding:4px 2px}.payroll-register-print-table td:first-child,.payroll-register-print-table td:nth-child(2){text-align:left}.payroll-register-print-table td strong{font-size:5.8px}.payroll-register-print-table tr{page-break-inside:avoid}.payroll-register-print-table th:first-child,.payroll-register-print-table td:first-child{width:12%}.payroll-register-print-table th:nth-child(2),.payroll-register-print-table td:nth-child(2){width:10%}.payroll-register-print-table th:nth-child(3),.payroll-register-print-table td:nth-child(3),.payroll-register-print-table th:nth-child(4),.payroll-register-print-table td:nth-child(4),.payroll-register-print-table th:nth-child(5),.payroll-register-print-table td:nth-child(5){width:8%}.payroll-register-print-table th:nth-child(6),.payroll-register-print-table td:nth-child(6),.payroll-register-print-table th:nth-child(7),.payroll-register-print-table td:nth-child(7),.payroll-register-print-table th:nth-child(8),.payroll-register-print-table td:nth-child(8),.payroll-register-print-table th:nth-child(9),.payroll-register-print-table td:nth-child(9){width:7%}.payroll-register-print-table th:nth-child(10),.payroll-register-print-table td:nth-child(10){width:9%}.payroll-register-print-table th:nth-child(11),.payroll-register-print-table td:nth-child(11){width:8%}.payroll-register-print-table th:nth-child(12),.payroll-register-print-table td:nth-child(12){width:9%}.payroll-register-print-signatures{text-align:center;grid-template-columns:repeat(2,200px);justify-content:end;gap:30px;margin-top:30px;display:grid}.payroll-register-print-signatures>div span{margin-bottom:25px;font-size:7px;display:block}.payroll-register-signature-line{border-top:1px solid #333;margin-bottom:4px}.payroll-register-print-signatures strong{font-size:8px}@media print{@page{size:landscape;margin:7mm}body *{visibility:hidden!important}.payroll-register-print-view,.payroll-register-print-view *{visibility:visible!important}.payroll-register-print-view{color:#000;background:#fff;width:100%;margin:0;padding:0;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.payroll-register-print-view .company-report-header{margin-bottom:6px;padding-bottom:6px}.payroll-register-print-view .company-report-logo{width:46px;height:46px}.payroll-register-print-view .company-report-document{min-width:180px}.payroll-register-print-info{gap:4px;margin-bottom:6px}.payroll-register-print-info>div{padding:4px 5px}.payroll-register-print-info span{font-size:5.5px}.payroll-register-print-info strong{font-size:7px}.payroll-register-generated{margin:3px 0 6px;font-size:5.5px}.payroll-register-print-summary{gap:3px;margin-bottom:6px}.payroll-register-print-summary>div{padding:4px 2px}.payroll-register-print-summary span{font-size:5px}.payroll-register-print-summary strong{font-size:6.8px}.payroll-register-print-table{font-size:5.2px}.payroll-register-print-table th{padding:3px 2px;font-size:4.8px}.payroll-register-print-table td{padding:3px 2px;font-size:5.2px}.payroll-register-print-table td strong{font-size:5.2px}.payroll-register-print-signatures{grid-template-columns:repeat(2,180px);gap:25px;margin-top:24px}.payroll-register-print-signatures>div span{margin-bottom:20px;font-size:6px}.payroll-register-print-signatures strong{font-size:7px}}.sss-report-page{width:100%}.sss-report-header{margin-bottom:20px}.sss-report-header h1{color:#1f2937;margin:0;font-size:25px}.sss-report-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.sss-report-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.sss-report-summary{grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;margin-bottom:18px;display:grid}.sss-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:13px 15px}.sss-summary-card span{color:#6b7280;font-size:10px;display:block}.sss-summary-card strong{color:#111827;margin-top:4px;font-size:19px;display:block}.sss-report-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.sss-report-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.sss-filter{flex-direction:column;gap:5px;min-width:120px;display:flex}.sss-filter.department{min-width:220px}.sss-filter.employee{min-width:260px}.sss-filter label{color:#374151;font-size:10px;font-weight:600}.sss-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.sss-search-button,.sss-export-button,.sss-print-button{cursor:pointer;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.sss-search-button{color:#fff;background:#374151;border:none}.sss-export-button{color:#15803d;background:#fff;border:1px solid #15803d}.sss-print-button{color:#2563eb;background:#fff;border:1px solid #2563eb}.sss-search-button:disabled,.sss-export-button:disabled,.sss-print-button:disabled{opacity:.5;cursor:default}.sss-table-wrapper{overflow-x:auto}.sss-table{border-collapse:collapse;width:100%;min-width:1050px}.sss-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.sss-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.sss-table td span{color:#6b7280;font-size:9px}.sss-total{font-weight:700;color:#15803d!important}.sss-empty{text-align:center;height:150px;color:#9ca3af!important}.sss-print-view{display:none}.sss-print-view .company-report-header{margin-bottom:8px}.sss-print-view .company-report-logo{width:56px;height:56px}.sss-print-view .company-report-document{min-width:220px}.sss-print-generated{color:#6b7280;text-align:right;margin:4px 0 9px;font-size:7px}@media print{@page{size:landscape;margin:10mm}body *{visibility:hidden!important}.sss-print-view,.sss-print-view *{visibility:visible!important}.sss-print-view{color:#000;background:#fff;width:100%;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.sss-print-header{border-bottom:2px solid #222;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;display:flex}.sss-print-header h1{margin:0;font-size:20px}.sss-print-header p,.sss-print-generated{font-size:8px}.sss-print-information{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px;display:grid}.sss-print-information>div{border:1px solid #bbb;padding:6px}.sss-print-information span{text-transform:uppercase;font-size:6px;display:block}.sss-print-information strong{font-size:8px}.sss-print-summary{grid-template-columns:repeat(6,1fr);gap:4px;margin-bottom:10px;display:grid}.sss-print-summary>div{text-align:center;border:1px solid #bbb;padding:5px}.sss-print-summary span{font-size:6px;display:block}.sss-print-summary strong{font-size:9px}.sss-print-table{border-collapse:collapse;width:100%;font-size:7px}.sss-print-table th{background:#eee;border:1px solid #555;padding:5px 4px;font-size:6px}.sss-print-table td{border:1px solid #aaa;padding:5px 4px}.sss-print-signatures{text-align:center;grid-template-columns:repeat(2,220px);justify-content:end;gap:30px;margin-top:30px;display:grid}.sss-print-signatures span{margin-bottom:25px;font-size:7px;display:block}.sss-signature-line{border-top:1px solid #333;margin-bottom:4px}.sss-print-signatures strong{font-size:8px}.sss-print-view .company-report-header{margin-bottom:6px;padding-bottom:6px}.sss-print-view .company-report-logo{width:46px;height:46px}.sss-print-view .company-report-document{min-width:180px}.sss-print-generated{margin-bottom:6px;font-size:5.5px}}.philhealth-report-page{width:100%}.philhealth-report-header{margin-bottom:20px}.philhealth-report-header h1{color:#1f2937;margin:0;font-size:25px}.philhealth-report-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.philhealth-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.philhealth-summary{grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px;margin-bottom:18px;display:grid}.philhealth-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:13px 15px}.philhealth-summary-card span{color:#6b7280;font-size:10px;display:block}.philhealth-summary-card strong{color:#111827;margin-top:4px;font-size:19px;display:block}.philhealth-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.philhealth-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.philhealth-filter{flex-direction:column;gap:5px;min-width:120px;display:flex}.philhealth-filter.department{min-width:220px}.philhealth-filter.employee{min-width:260px}.philhealth-filter label{color:#374151;font-size:10px;font-weight:600}.philhealth-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.philhealth-search,.philhealth-export,.philhealth-print{cursor:pointer;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.philhealth-search{color:#fff;background:#374151;border:none}.philhealth-export{color:#15803d;background:#fff;border:1px solid #15803d}.philhealth-print{color:#2563eb;background:#fff;border:1px solid #2563eb}.philhealth-search:disabled,.philhealth-export:disabled,.philhealth-print:disabled{opacity:.5;cursor:default}.philhealth-table-wrapper{overflow-x:auto}.philhealth-table{border-collapse:collapse;width:100%;min-width:950px}.philhealth-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.philhealth-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.philhealth-table td span{color:#6b7280;font-size:9px}.philhealth-total{font-weight:700;color:#15803d!important}.philhealth-empty{text-align:center;height:150px;color:#9ca3af!important}.philhealth-print-view{display:none}.philhealth-print-view .company-report-header{margin-bottom:8px}.philhealth-print-view .company-report-logo{width:56px;height:56px}.philhealth-print-view .company-report-document{min-width:230px}.philhealth-print-generated{color:#6b7280;text-align:right;margin:4px 0 9px;font-size:7px}@media print{@page{size:landscape;margin:10mm}body *{visibility:hidden!important}.philhealth-print-view,.philhealth-print-view *{visibility:visible!important}.philhealth-print-view{color:#000;background:#fff;width:100%;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.philhealth-print-header{border-bottom:2px solid #222;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;display:flex}.philhealth-print-header h1{margin:0;font-size:20px}.philhealth-print-header p,.philhealth-print-generated{font-size:8px}.philhealth-print-information{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px;display:grid}.philhealth-print-information>div{border:1px solid #bbb;padding:6px}.philhealth-print-information span{text-transform:uppercase;font-size:6px;display:block}.philhealth-print-information strong{font-size:8px}.philhealth-print-summary{grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:10px;display:grid}.philhealth-print-summary>div{text-align:center;border:1px solid #bbb;padding:5px}.philhealth-print-summary span{font-size:6px;display:block}.philhealth-print-summary strong{font-size:9px}.philhealth-print-table{border-collapse:collapse;width:100%;font-size:7px}.philhealth-print-table th{background:#eee;border:1px solid #555;padding:5px 4px;font-size:6px}.philhealth-print-table td{border:1px solid #aaa;padding:5px 4px}.philhealth-print-table tr{page-break-inside:avoid}.philhealth-print-signatures{text-align:center;grid-template-columns:repeat(2,220px);justify-content:end;gap:30px;margin-top:30px;display:grid}.philhealth-print-signatures span{margin-bottom:25px;font-size:7px;display:block}.philhealth-signature-line{border-top:1px solid #333;margin-bottom:4px}.philhealth-print-signatures strong{font-size:8px}.philhealth-print-view .company-report-header{margin-bottom:6px;padding-bottom:6px}.philhealth-print-view .company-report-logo{width:46px;height:46px}.philhealth-print-view .company-report-document{min-width:190px}.philhealth-print-generated{margin-bottom:6px;font-size:5.5px}}.pagibig-report-page{width:100%}.pagibig-report-header{margin-bottom:20px}.pagibig-report-header h1{color:#1f2937;margin:0;font-size:25px}.pagibig-report-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.pagibig-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.pagibig-summary{grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px;margin-bottom:18px;display:grid}.pagibig-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:13px 15px}.pagibig-summary-card span{color:#6b7280;font-size:10px;display:block}.pagibig-summary-card strong{color:#111827;margin-top:4px;font-size:19px;display:block}.pagibig-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.pagibig-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.pagibig-filter{flex-direction:column;gap:5px;min-width:120px;display:flex}.pagibig-filter.department{min-width:220px}.pagibig-filter.employee{min-width:260px}.pagibig-filter label{color:#374151;font-size:10px;font-weight:600}.pagibig-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.pagibig-search,.pagibig-export,.pagibig-print{cursor:pointer;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.pagibig-search{color:#fff;background:#374151;border:none}.pagibig-export{color:#15803d;background:#fff;border:1px solid #15803d}.pagibig-print{color:#2563eb;background:#fff;border:1px solid #2563eb}.pagibig-search:disabled,.pagibig-export:disabled,.pagibig-print:disabled{opacity:.5;cursor:default}.pagibig-table-wrapper{overflow-x:auto}.pagibig-table{border-collapse:collapse;width:100%;min-width:950px}.pagibig-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.pagibig-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.pagibig-table td span{color:#6b7280;font-size:9px}.pagibig-total{font-weight:700;color:#15803d!important}.pagibig-empty{text-align:center;height:150px;color:#9ca3af!important}.pagibig-print-view{display:none}.pagibig-print-view .company-report-header{margin-bottom:8px}.pagibig-print-view .company-report-logo{width:56px;height:56px}.pagibig-print-view .company-report-document{min-width:220px}.pagibig-print-generated{color:#6b7280;text-align:right;margin:4px 0 9px;font-size:7px}@media print{@page{size:landscape;margin:8mm}body *{visibility:hidden!important}.pagibig-print-view,.pagibig-print-view *{visibility:visible!important}.pagibig-print-view{color:#000;background:#fff;width:100%;margin:0;padding:0;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.pagibig-print-view .company-report-header{margin-bottom:6px;padding-bottom:6px}.pagibig-print-view .company-report-logo{width:46px;height:46px}.pagibig-print-view .company-report-document{min-width:180px}.pagibig-print-generated{margin-bottom:6px;font-size:5.5px}.pagibig-print-view table{border-collapse:collapse;width:100%;font-size:7px}.pagibig-print-view th{color:#111827;text-align:center;background:#f3f4f6;border:1px solid #555;padding:5px;font-size:6.5px;font-weight:700}.pagibig-print-view td{color:#111827;vertical-align:middle;border:1px solid #aaa;padding:5px;font-size:7px}.pagibig-print-view tr{page-break-inside:avoid}}.tax-report-page{width:100%}.tax-report-header{margin-bottom:20px}.tax-report-header h1{color:#1f2937;margin:0;font-size:25px}.tax-report-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.tax-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.tax-summary{grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px;margin-bottom:18px;display:grid}.tax-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:13px 15px}.tax-summary-card span{color:#6b7280;font-size:10px;display:block}.tax-summary-card strong{color:#111827;margin-top:4px;font-size:19px;display:block}.tax-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.tax-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.tax-filter{flex-direction:column;gap:5px;min-width:120px;display:flex}.tax-filter.department{min-width:220px}.tax-filter.employee{min-width:260px}.tax-filter label{color:#374151;font-size:10px;font-weight:600}.tax-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.tax-search,.tax-export,.tax-print{cursor:pointer;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.tax-search{color:#fff;background:#374151;border:none}.tax-export{color:#15803d;background:#fff;border:1px solid #15803d}.tax-print{color:#2563eb;background:#fff;border:1px solid #2563eb}.tax-search:disabled,.tax-export:disabled,.tax-print:disabled{opacity:.5;cursor:default}.tax-table-wrapper{overflow-x:auto}.tax-table{border-collapse:collapse;width:100%;min-width:950px}.tax-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.tax-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.tax-table td span{color:#6b7280;font-size:9px}.tax-total{font-weight:700;color:#15803d!important}.tax-empty{text-align:center;height:150px;color:#9ca3af!important}.tax-print-view{display:none}.tax-print-view .company-report-header{margin-bottom:8px}.tax-print-view .company-report-logo{width:56px;height:56px}.tax-print-view .company-report-document{min-width:220px}.tax-print-generated{color:#6b7280;text-align:right;margin:4px 0 9px;font-size:7px}@media print{@page{size:landscape;margin:8mm}body *{visibility:hidden!important}.tax-print-view,.tax-print-view *{visibility:visible!important}.tax-print-view{color:#000;background:#fff;width:100%;margin:0;padding:0;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.tax-print-view .company-report-header{margin-bottom:6px;padding-bottom:6px}.tax-print-view .company-report-logo{width:46px;height:46px}.tax-print-view .company-report-document{min-width:180px}.tax-print-generated{margin-bottom:6px;font-size:5.5px}.tax-print-view table{border-collapse:collapse;width:100%;font-size:7px}.tax-print-view th{color:#111827;text-align:center;background:#f3f4f6;border:1px solid #555;padding:5px;font-size:6.5px;font-weight:700}.tax-print-view td{color:#111827;vertical-align:middle;border:1px solid #aaa;padding:5px;font-size:7px}.tax-print-view tr{page-break-inside:avoid}}.bank-payroll-page{width:100%}.bank-payroll-header{margin-bottom:20px}.bank-payroll-header h1{color:#1f2937;margin:0;font-size:25px}.bank-payroll-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.bank-payroll-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.bank-payroll-summary{grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;margin-bottom:18px;display:grid}.bank-payroll-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:13px 15px}.bank-payroll-summary-card span{color:#6b7280;font-size:10px;display:block}.bank-payroll-summary-card strong{color:#111827;margin-top:4px;font-size:18px;display:block}.bank-payroll-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.bank-payroll-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.bank-payroll-filter{flex-direction:column;gap:5px;min-width:200px;display:flex}.bank-payroll-filter.employee{min-width:260px}.bank-payroll-filter label{color:#374151;font-size:10px;font-weight:600}.bank-payroll-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.bank-payroll-search,.bank-payroll-export,.bank-payroll-print{cursor:pointer;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.bank-payroll-search{color:#fff;background:#374151;border:none}.bank-payroll-export{color:#15803d;background:#fff;border:1px solid #15803d}.bank-payroll-print{color:#2563eb;background:#fff;border:1px solid #2563eb}.bank-payroll-search:disabled,.bank-payroll-export:disabled,.bank-payroll-print:disabled{opacity:.5;cursor:default}.bank-payroll-table-wrapper{overflow-x:auto}.bank-payroll-table{border-collapse:collapse;width:100%;min-width:1300px}.bank-payroll-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px}.bank-payroll-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.bank-payroll-table td span{font-size:9px}.bank-account-number{font-family:monospace}.bank-net-pay{font-weight:700;color:#15803d!important}.bank-status{border-radius:999px;padding:4px 8px;font-size:9px;font-weight:700;display:inline-block}.bank-status.ready{color:#15803d;background:#dcfce7}.bank-status.not-ready{color:#b91c1c;background:#fee2e2}.bank-validation-error{color:#b91c1c!important}.bank-payroll-empty{text-align:center;height:150px;color:#9ca3af!important}.bank-payroll-print-view{display:none}.bank-payroll-print-view .company-report-header{margin-bottom:8px}.bank-payroll-print-view .company-report-logo{width:56px;height:56px}.bank-payroll-print-view .company-report-document{min-width:220px}.bank-payroll-print-generated{color:#6b7280;text-align:right;margin:4px 0 9px;font-size:7px}@media print{@page{size:landscape;margin:10mm}body *{visibility:hidden!important}.bank-payroll-print-view,.bank-payroll-print-view *{visibility:visible!important}.bank-payroll-print-view{color:#000;background:#fff;width:100%;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.bank-payroll-print-view h1{margin-bottom:2px;font-size:20px}.bank-payroll-print-view p{margin-top:0;margin-bottom:15px;font-size:9px}.bank-payroll-print-view table{border-collapse:collapse;width:100%;font-size:7px}.bank-payroll-print-view th{background:#eee;border:1px solid #555;padding:5px}.bank-payroll-print-view td{border:1px solid #aaa;padding:5px}.bank-payroll-print-view tr{page-break-inside:avoid}.bank-payroll-print-view .company-report-header{margin-bottom:6px;padding-bottom:6px}.bank-payroll-print-view .company-report-logo{width:46px;height:46px}.bank-payroll-print-view .company-report-document{min-width:180px}.bank-payroll-print-generated{margin-bottom:6px;font-size:5.5px}}.thirteenth-report-page{width:100%}.thirteenth-report-header{margin-bottom:20px}.thirteenth-report-header h1{color:#1f2937;margin:0;font-size:25px}.thirteenth-report-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.thirteenth-report-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.thirteenth-report-summary{grid-template-columns:repeat(3,minmax(170px,1fr));gap:10px;margin-bottom:18px;display:grid}.thirteenth-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:13px 15px}.thirteenth-summary-card span{color:#6b7280;font-size:10px;display:block}.thirteenth-summary-card strong{color:#111827;margin-top:4px;font-size:18px;display:block}.thirteenth-report-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.thirteenth-report-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.thirteenth-filter{flex-direction:column;gap:5px;min-width:130px;display:flex}.thirteenth-filter.department{min-width:230px}.thirteenth-filter.employee{min-width:280px}.thirteenth-filter label{color:#374151;font-size:10px;font-weight:600}.thirteenth-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.thirteenth-filter select:disabled{color:#9ca3af;background:#f9fafb}.thirteenth-search{color:#fff;cursor:pointer;background:#374151;border:none;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.thirteenth-search:disabled{opacity:.5;cursor:default}.thirteenth-report-info{background:#f9fafb;border-bottom:1px solid #e5e7eb;grid-template-columns:repeat(4,minmax(140px,1fr));gap:8px;padding:12px 16px;display:grid}.thirteenth-report-info span{color:#6b7280;font-size:9px;display:block}.thirteenth-report-info strong{color:#111827;margin-top:3px;font-size:11px;display:block}.thirteenth-table-wrapper{overflow-x:auto}.thirteenth-table{border-collapse:collapse;width:100%;min-width:1200px}.thirteenth-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px;font-weight:700}.thirteenth-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.thirteenth-table td span{color:#6b7280;font-size:9px}.thirteenth-final{font-weight:700;color:#15803d!important}.thirteenth-empty{text-align:center;height:150px;color:#9ca3af!important}.thirteenth-export,.thirteenth-print{cursor:pointer;background:#fff;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.thirteenth-export{color:#15803d;border:1px solid #15803d}.thirteenth-print{color:#2563eb;border:1px solid #2563eb}.thirteenth-export:disabled,.thirteenth-print:disabled{opacity:.5;cursor:default}.thirteenth-print-view{display:none}@media print{@page{size:landscape;margin:10mm}body *{visibility:hidden!important}.thirteenth-print-view,.thirteenth-print-view *{visibility:visible!important}.thirteenth-print-view{color:#000;background:#fff;width:100%;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.thirteenth-print-header{border-bottom:2px solid #222;justify-content:space-between;margin-bottom:10px;padding-bottom:10px;display:flex}.thirteenth-print-header h1{margin:0;font-size:20px}.thirteenth-print-header p{margin:3px 0 0;font-size:8px}.thirteenth-print-summary{grid-template-columns:repeat(5,1fr);gap:5px;margin-bottom:10px;display:grid}.thirteenth-print-summary>div{text-align:center;border:1px solid #bbb;padding:6px}.thirteenth-print-summary span{font-size:6px;display:block}.thirteenth-print-summary strong{font-size:9px}.thirteenth-print-table{border-collapse:collapse;width:100%;font-size:7px}.thirteenth-print-table th{background:#eee;border:1px solid #555;padding:5px;font-size:6px}.thirteenth-print-table td{border:1px solid #aaa;padding:5px}.thirteenth-print-table tr{page-break-inside:avoid}.thirteenth-print-signatures{text-align:center;grid-template-columns:repeat(2,220px);justify-content:end;gap:30px;margin-top:35px;display:grid}.thirteenth-print-signatures span{margin-bottom:25px;font-size:7px;display:block}.thirteenth-signature-line{border-top:1px solid #333;margin-bottom:4px}.thirteenth-print-signatures strong{font-size:8px}}.leave-report-page{width:100%}.leave-report-header{margin-bottom:20px}.leave-report-header h1{color:#1f2937;margin:0;font-size:25px}.leave-report-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.leave-report-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.leave-report-summary{grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;margin-bottom:18px;display:grid}.leave-report-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:13px 15px}.leave-report-summary-card span{color:#6b7280;font-size:10px;display:block}.leave-report-summary-card strong{color:#111827;margin-top:4px;font-size:18px;display:block}.leave-report-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.leave-report-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.leave-report-filter{flex-direction:column;gap:5px;min-width:120px;display:flex}.leave-report-filter.department,.leave-report-filter.leave-type{min-width:220px}.leave-report-filter.employee{min-width:270px}.leave-report-filter label{color:#374151;font-size:10px;font-weight:600}.leave-report-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.leave-report-search,.leave-report-export,.leave-report-print{cursor:pointer;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.leave-report-search{color:#fff;background:#374151;border:none}.leave-report-export{color:#15803d;background:#fff;border:1px solid #15803d}.leave-report-print{color:#2563eb;background:#fff;border:1px solid #2563eb}.leave-report-search:disabled,.leave-report-export:disabled,.leave-report-print:disabled{opacity:.5;cursor:default}.leave-report-table-wrapper{overflow-x:auto}.leave-report-table{border-collapse:collapse;width:100%;min-width:1350px}.leave-report-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px}.leave-report-table td{color:#374151;border-bottom:1px solid #f1f1f1;padding:11px 12px;font-size:10px}.leave-report-table td span{color:#6b7280;font-size:9px}.leave-available{font-weight:700;color:#15803d!important}.leave-report-empty{text-align:center;height:150px;color:#9ca3af!important}.leave-report-print-view{display:none}.leave-report-print-generated{color:#6b7280;text-align:right;margin:4px 0 9px;font-size:7px}.leave-report-print-view .company-report-header{margin-bottom:8px}.leave-report-print-view .company-report-logo{width:56px;height:56px}.leave-report-print-view .company-report-document{min-width:220px}@media print{@page{size:landscape;margin:10mm}body *{visibility:hidden!important}.leave-report-print-view,.leave-report-print-view *{visibility:visible!important}.leave-report-print-view{color:#000;background:#fff;width:100%;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.leave-report-print-view h1{margin-bottom:2px;font-size:20px}.leave-report-print-view p{margin-top:0;font-size:9px}.leave-print-summary{grid-template-columns:repeat(5,1fr);gap:5px;margin:10px 0;display:grid}.leave-print-summary>div{text-align:center;border:1px solid #bbb;padding:5px;font-size:6px}.leave-print-summary strong{margin-top:2px;font-size:9px;display:block}.leave-report-print-view table{border-collapse:collapse;width:100%;font-size:6.5px}.leave-report-print-view th{background:#eee;border:1px solid #555;padding:5px}.leave-report-print-view td{border:1px solid #aaa;padding:5px}.leave-report-print-view tr{page-break-inside:avoid}.leave-report-print-view .company-report-header{margin-bottom:6px;padding-bottom:6px}.leave-report-print-view .company-report-logo{width:46px;height:46px}.leave-report-print-view .company-report-document{min-width:180px}.leave-report-print-generated{margin-bottom:6px;font-size:5.5px}}.leave-history-page{width:100%}.leave-history-header{margin-bottom:20px}.leave-history-header h1{color:#1f2937;margin:0;font-size:25px}.leave-history-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.leave-history-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.leave-history-summary{grid-template-columns:repeat(7,minmax(110px,1fr));gap:8px;margin-bottom:18px;display:grid}.leave-history-summary-card{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #2563eb;border-radius:9px;padding:12px 13px}.leave-history-summary-card span{color:#6b7280;font-size:9px;display:block}.leave-history-summary-card strong{color:#111827;margin-top:4px;font-size:17px;display:block}.leave-history-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.leave-history-filters{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:15px 16px;display:flex}.leave-history-filter{flex-direction:column;gap:5px;min-width:130px;display:flex}.leave-history-filter.department,.leave-history-filter.leave-type{min-width:210px}.leave-history-filter.employee{min-width:260px}.leave-history-filter label{color:#374151;font-size:10px;font-weight:600}.leave-history-filter input,.leave-history-filter select{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:9px 10px;font-size:11px}.leave-history-search,.leave-history-export,.leave-history-print{cursor:pointer;border-radius:6px;padding:9px 18px;font-size:11px;font-weight:600}.leave-history-search{color:#fff;background:#374151;border:none}.leave-history-export{color:#15803d;background:#fff;border:1px solid #15803d}.leave-history-print{color:#2563eb;background:#fff;border:1px solid #2563eb}.leave-history-search:disabled,.leave-history-export:disabled,.leave-history-print:disabled{opacity:.5;cursor:default}.leave-history-table-wrapper{overflow-x:auto}.leave-history-table{border-collapse:collapse;width:100%;min-width:1800px}.leave-history-table th{color:#6b7280;text-align:left;text-transform:uppercase;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:11px 12px;font-size:9px}.leave-history-table td{color:#374151;vertical-align:top;border-bottom:1px solid #f1f1f1;padding:10px 12px;font-size:10px}.leave-history-table td span,.leave-history-table td small{color:#6b7280;font-size:9px}.leave-history-status{border-radius:999px;padding:4px 8px;font-weight:700;display:inline-block}.leave-history-status.approved{background:#dcfce7;color:#15803d!important}.leave-history-status.pending{background:#fef3c7;color:#a16207!important}.leave-history-status.rejected{background:#fee2e2;color:#b91c1c!important}.leave-history-status.cancelled{background:#f3f4f6;color:#4b5563!important}.leave-history-empty{text-align:center;height:150px;color:#9ca3af!important}.leave-history-print-view{display:none}.leave-history-print-view .company-report-header{margin-bottom:8px}.leave-history-print-view .company-report-logo{width:56px;height:56px}.leave-history-print-view .company-report-document{min-width:230px}.leave-history-print-generated{color:#6b7280;text-align:right;margin:4px 0 10px;font-size:7px}@media print{@page{size:landscape;margin:8mm}body *{visibility:hidden!important}.leave-history-print-view,.leave-history-print-view *{visibility:visible!important}.leave-history-print-view{color:#000;background:#fff;width:100%;font-family:Arial,sans-serif;position:absolute;top:0;left:0;display:block!important}.leave-history-print-view h1{margin-bottom:2px;font-size:19px}.leave-history-print-view p{margin-top:0;margin-bottom:12px;font-size:8px}.leave-history-print-view table{border-collapse:collapse;width:100%;font-size:6px}.leave-history-print-view th{background:#eee;border:1px solid #555;padding:4px}.leave-history-print-view td{vertical-align:top;border:1px solid #aaa;padding:4px}.leave-history-print-view tr{page-break-inside:avoid}.leave-history-print-view .company-report-header{margin-bottom:6px;padding-bottom:6px}.leave-history-print-view .company-report-logo{width:46px;height:46px}.leave-history-print-view .company-report-document{min-width:190px}.leave-history-print-generated{margin-bottom:7px;font-size:5.5px}}.company-settings-page{width:100%}.company-settings-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.company-settings-header h1{color:#1f2937;margin:0;font-size:25px}.company-settings-header p{color:#6b7280;margin:6px 0 0;font-size:13px}.company-settings-save{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:7px;padding:10px 20px;font-size:11px;font-weight:600}.company-settings-save:disabled{opacity:.5;cursor:default}.company-settings-alert{border-radius:7px;margin-bottom:15px;padding:11px 14px;font-size:12px}.company-settings-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.company-settings-alert.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.company-settings-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.company-settings-section{border-bottom:1px solid #e5e7eb;grid-template-columns:240px 1fr;gap:30px;padding:24px;display:grid}.company-settings-section:last-child{border-bottom:none}.company-settings-section-title h2{color:#111827;margin:0;font-size:14px}.company-settings-section-title p{color:#6b7280;margin:6px 0 0;font-size:10px;line-height:1.5}.company-settings-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:15px;display:grid}.company-settings-field{flex-direction:column;gap:6px;display:flex}.company-settings-field.wide{grid-column:1/-1}.company-settings-field label{color:#374151;font-size:10px;font-weight:600}.company-settings-field .required{color:#dc2626;margin-left:3px}.company-settings-field input{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px 11px;font-size:11px}.company-settings-field input:focus{border-color:#2563eb;outline:none}.company-settings-footer{color:#9ca3af;margin-top:10px;font-size:9px}@media (width<=900px){.company-settings-section,.company-settings-grid{grid-template-columns:1fr}.company-settings-field.wide{grid-column:auto}.company-logo-settings{flex-direction:column}.company-logo-preview{width:160px;height:110px}}.company-logo-settings{align-items:flex-start;gap:24px;display:flex}.company-logo-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;justify-content:center;align-items:center;width:180px;height:120px;display:flex;overflow:hidden}.company-logo-preview img{object-fit:contain;box-sizing:border-box;width:100%;height:100%;padding:10px}.company-logo-placeholder{color:#9ca3af;justify-content:center;align-items:center;width:100%;height:100%;font-size:11px;display:flex}.company-logo-controls{flex:1;padding-top:4px}.company-logo-file-input{display:none}.company-logo-buttons{align-items:center;gap:8px;display:flex}.company-logo-choose,.company-logo-upload{cursor:pointer;border-radius:6px;padding:9px 16px;font-size:11px;font-weight:600}.company-logo-choose{color:#374151;background:#fff;border:1px solid #d1d5db}.company-logo-upload{color:#fff;background:#2563eb;border:none}.company-logo-choose:disabled,.company-logo-upload:disabled{opacity:.5;cursor:default}.company-logo-selected{color:#4b5563;margin-top:10px;font-size:10px}.company-logo-help{color:#9ca3af;margin:8px 0 0;font-size:9px;line-height:1.5}.statutory-page{color:#1f2937;padding:4px}.statutory-page-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.statutory-page-header h1{margin:0;font-size:20px;font-weight:700}.statutory-page-header p{color:#6b7280;margin:5px 0 0;font-size:10px}.statutory-tabs{border-bottom:1px solid #e5e7eb;gap:4px;margin-bottom:16px;display:flex}.statutory-tabs button{color:#6b7280;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 18px;font-size:10px;font-weight:600}.statutory-tabs button:hover{color:#111827}.statutory-tabs button.active{color:#2563eb;border-bottom-color:#2563eb}.statutory-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:16px}.statutory-toolbar{align-items:flex-end;gap:12px;padding:14px;display:flex}.statutory-field{flex-direction:column;gap:5px;min-width:260px;display:flex}.statutory-field label{color:#4b5563;font-size:9px;font-weight:600}.statutory-field select,.statutory-field input{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;height:34px;padding:0 10px;font-size:10px}.statutory-field select:focus,.statutory-field input:focus{border-color:#2563eb}.statutory-search{min-width:220px}.statutory-summary{grid-template-columns:2fr repeat(4,1fr);gap:10px;margin-bottom:16px;display:grid}.statutory-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:5px;padding:12px 14px;display:flex}.statutory-summary-card span{color:#6b7280;text-transform:uppercase;font-size:8px;font-weight:600}.statutory-summary-card strong{color:#111827;font-size:11px}.statutory-status{border-radius:999px;width:fit-content;padding:3px 8px;font-size:8px!important}.statutory-status.active{color:#15803d;background:#dcfce7}.statutory-status.inactive{color:#b91c1c;background:#fee2e2}.statutory-description{color:#1e40af;background:#eff6ff;border:1px solid #dbeafe;border-radius:7px;margin-bottom:16px;padding:10px 12px;font-size:9px}.statutory-section-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.statutory-section-header h2{margin:0;font-size:13px}.statutory-section-header p{color:#6b7280;margin:4px 0 0;font-size:9px}.statutory-record-count{color:#4b5563;background:#f3f4f6;border-radius:999px;padding:4px 8px;font-size:8px;font-weight:600}.statutory-table-wrapper{width:100%;overflow-x:auto}.statutory-table{border-collapse:collapse;width:100%;min-width:1450px}.statutory-table th{color:#4b5563;text-align:left;white-space:nowrap;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:9px 10px;font-size:8px;font-weight:700}.statutory-table td{color:#374151;white-space:nowrap;border-bottom:1px solid #f3f4f6;padding:9px 10px;font-size:9px}.statutory-table tbody tr:hover{background:#f9fafb}.statutory-table tbody tr:last-child td{border-bottom:0}.statutory-table td.money{text-align:right;font-variant-numeric:tabular-nums}.statutory-table td.highlight{background:#f8fafc;font-weight:700}.statutory-table td.total{color:#1d4ed8;background:#eff6ff;font-weight:700}.statutory-range{font-weight:600}.statutory-empty{color:#6b7280!important;text-align:center!important;padding:28px!important}.statutory-alert{border-radius:6px;margin-bottom:14px;padding:10px 12px;font-size:10px}.statutory-alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.statutory-coming-soon{text-align:center;background:#fff;border:1px dashed #d1d5db;border-radius:8px;padding:30px}.statutory-coming-soon strong{margin-bottom:7px;font-size:13px;display:block}.statutory-coming-soon p{color:#6b7280;max-width:520px;margin:auto;font-size:10px;line-height:1.6}@media (width<=1000px){.statutory-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.statutory-toolbar{flex-direction:column;align-items:stretch}.statutory-field,.statutory-search{width:100%;min-width:0}.statutory-summary{grid-template-columns:1fr}}.philhealth-table{min-width:1100px}.statutory-philhealth-summary{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px;display:grid}.pagibig-table{min-width:1150px}.statutory-pagibig-summary{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px;display:grid}.statutory-header-actions{align-items:center;gap:8px;display:flex}.statutory-primary-button,.statutory-secondary-button{cursor:pointer;border-radius:6px;min-height:32px;padding:0 12px;font-size:9px;font-weight:600}.statutory-primary-button{color:#fff;background:#2563eb;border:1px solid #2563eb}.statutory-primary-button:hover{background:#1d4ed8}.statutory-primary-button:disabled,.statutory-secondary-button:disabled{cursor:not-allowed;opacity:.6}.statutory-secondary-button{color:#374151;background:#fff;border:1px solid #d1d5db}.statutory-modal-backdrop{z-index:9999;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.statutory-modal{background:#fff;border-radius:10px;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 45px #0f172a38}.statutory-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.statutory-modal-header h2{margin:0;font-size:15px}.statutory-modal-header p{color:#6b7280;margin:5px 0 0;font-size:9px;line-height:1.5}.statutory-modal-close{color:#6b7280;cursor:pointer;background:0 0;border:0;font-size:22px;line-height:1}.statutory-modal-body{padding:18px}.statutory-form-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.statutory-form-group{flex-direction:column;gap:5px;display:flex}.statutory-form-group.full-width{grid-column:1/-1}.statutory-form-group label{color:#374151;font-size:9px;font-weight:600}.statutory-form-group input,.statutory-form-group textarea{color:#111827;box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;outline:none;width:100%;padding:8px 10px;font-size:10px}.statutory-form-group input{height:35px}.statutory-form-group textarea{resize:vertical}.statutory-form-group input:focus,.statutory-form-group textarea:focus{border-color:#2563eb}.statutory-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.statutory-sss-import-modal{max-width:1050px}.statutory-field-help{color:#6b7280;font-size:8px;line-height:1.5}.statutory-import-actions{justify-content:flex-end;margin-top:14px;display:flex}.statutory-import-preview{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.statutory-import-status{border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:9px;display:flex}.statutory-import-status.valid{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.statutory-import-status.invalid{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.statutory-import-errors{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-top:12px;padding:12px;font-size:9px}.statutory-import-errors ul{margin:8px 0 0;padding-left:18px}.statutory-import-errors li{margin-bottom:4px}.statutory-import-preview-table{border:1px solid #e5e7eb;border-radius:7px;max-height:360px;margin-top:12px;overflow:auto}.statutory-import-preview-table table{border-collapse:collapse;width:100%;min-width:900px}.statutory-import-preview-table th{color:#4b5563;text-align:left;white-space:nowrap;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:8px;font-size:8px;position:sticky;top:0}.statutory-import-preview-table td{color:#374151;white-space:nowrap;border-bottom:1px solid #f3f4f6;padding:8px;font-size:8px}.statutory-import-preview-table td.money{text-align:right}.bir-table{min-width:1050px}.statutory-form-group select{color:#111827;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:6px;outline:none;width:100%;height:35px;padding:0 10px;font-size:10px}.statutory-form-group select:focus{border-color:#2563eb}@media (width<=700px){.statutory-form-grid{grid-template-columns:1fr}.statutory-form-group.full-width{grid-column:auto}}@media (width<=1000px){.statutory-pagibig-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.statutory-pagibig-summary{grid-template-columns:1fr}}@media (width<=1000px){.statutory-philhealth-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.statutory-philhealth-summary{grid-template-columns:1fr}}
