.app{display:flex;flex-direction:column;min-height:100vh}.container{margin:0 auto;max-width:1200px;padding:0 15px;width:100%}.btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 15px;transition:all .2s ease-in-out}.btn-primary{background-color:#3498db}.btn-primary:hover{background-color:#2980b9}.form-group{margin-bottom:15px}.form-group label{color:#34495e;display:block;font-weight:500;margin-bottom:5px}.form-control{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;transition:border-color .2s;width:100%}.form-control:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.login-container{align-items:center;display:flex;height:100vh;justify-content:center;padding:10px}.login-form{background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a;margin:0;max-width:400px;padding:20px;width:100%}.login-form h2{color:#2c3e50;font-size:1.5em;margin:0 0 15px;text-align:center}.login-logo{margin-bottom:15px;text-align:center}.login-logo img{border-radius:8px;height:auto;max-width:100px}.password-container{position:relative}.password-container input{padding-right:35px;width:100%}.password-toggle{background:none;border:none;color:#6c757d;cursor:pointer;font-size:16px;margin:0;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);z-index:10}.remember-me{align-items:center;display:flex;margin:10px 0}.remember-me input{margin-right:6px}.remember-me label{color:#495057;font-size:.85em}.btn-login{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1em;margin-top:10px;padding:10px;transition:background-color .2s;width:100%}.btn-login:hover{background-color:#2980b9}.security-notice{background-color:#fff3cd;border-left:3px solid #ffeeba;border-radius:4px;color:#856404;font-size:.8em;line-height:1.3;margin:10px 0;padding:10px}.security-notice strong{color:#664d03}.security-notice p{margin:5px 0}.login-info{background-color:#e2f0fb;border-left:3px solid #0d6efd;border-radius:4px;font-size:.8em;margin-top:12px;padding:10px}.login-info ul{margin:5px 0;padding-left:18px}.login-info li{margin-bottom:3px}.utility-buttons{display:flex;gap:8px;justify-content:space-between;margin-top:12px}.utility-btn{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;flex:1 1;font-size:.75em;padding:8px 10px;text-align:center;transition:background-color .15s}.utility-btn:hover{background-color:#e9ecef}.utility-btn-warning{background-color:#fff3cd;border-color:#ffecb5;color:#664d03}.dashboard{display:flex;flex-direction:column;min-height:100vh}.dashboard-header{background-color:#fff;box-shadow:0 2px 5px #0000001a;padding:12px 0}.header-container{justify-content:space-between}.header-container,.logo{align-items:center;display:flex}.logo{gap:10px}.logo img{height:40px;width:auto}.logo h1{color:#2c3e50;font-size:1.2rem;margin:0}.main-nav ul{display:flex;gap:20px;list-style-type:none;margin:0;padding:0}.main-nav a{color:#34495e;font-weight:500;padding:5px 0;text-decoration:none;transition:color .2s}.main-nav a:hover{color:#3498db}.main-nav li.active a{border-bottom:2px solid #3498db;color:#3498db}.user-menu{align-items:center;display:flex;gap:15px}.username{color:#2c3e50;font-weight:500}.logout-btn{background:none;border:1px solid #e74c3c;border-radius:4px;color:#e74c3c;cursor:pointer;font-size:.85rem;padding:5px 12px;transition:all .2s}.logout-btn:hover{background-color:#e74c3c;color:#fff}.dashboard-content{flex:1 1;padding:30px 0}.welcome-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;margin-bottom:30px;padding:20px}.welcome-card h2{color:#2c3e50;font-size:1.5rem;margin-bottom:10px;margin-top:0}.welcome-card p{color:#7f8c8d;margin:0}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.dashboard-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;cursor:pointer;padding:20px;transition:transform .2s,box-shadow .2s}.dashboard-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-5px)}.card-icon{font-size:2rem;margin-bottom:15px}.dashboard-card h3{color:#2c3e50;margin-bottom:10px;margin-top:0}.dashboard-card p{color:#7f8c8d;font-size:.9rem;margin:0}.dashboard-footer{background-color:#2c3e50;color:#fff;padding:15px 0;text-align:center}@media (max-width:768px){.header-container{flex-direction:column;gap:15px}.main-nav ul{align-items:center;flex-direction:column;gap:10px}.user-menu{margin-top:10px}.dashboard-grid{grid-template-columns:1fr}}.admin-page{display:flex;flex-direction:column;min-height:100vh}.admin-content{flex:1 1;padding:30px 0}.admin-panel{background-color:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a}.admin-tabs{border-bottom:1px solid #e1e5eb;display:flex;padding:0 15px}.tab-btn{background:none;border:none;color:#6c757d;cursor:pointer;font-size:14px;font-weight:500;padding:15px 20px;position:relative;transition:color .2s}.tab-btn.active,.tab-btn:hover{color:#3498db}.tab-btn.active:after{background-color:#3498db;bottom:-1px;content:"";height:2px;left:0;position:absolute;width:100%}.admin-tab-content{padding:20px}.panel-actions,.panel-header{align-items:center}.panel-actions{gap:10px}.search-container{position:relative}.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:200px;padding:8px 10px}.table-responsive{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table td,.data-table th{border-bottom:1px solid #e1e5eb;padding:12px 15px;text-align:left}.data-table th{color:#2c3e50;font-weight:600}.data-table tbody tr:hover,.data-table th{background-color:#f8f9fa}.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.inactive{background-color:#f8d7da;color:#721c24}.action-buttons{display:flex;gap:5px}.action-btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:4px 8px}.action-btn.edit{background-color:#e2f0fb;color:#0d6efd}.action-btn.edit:hover{background-color:#cfe2ff}.action-btn.delete{background-color:#f8d7da;color:#dc3545}.action-btn.delete:hover{background-color:#f5c2c7}@media (max-width:768px){.panel-header{align-items:flex-start;flex-direction:column;gap:10px}.panel-actions{flex-direction:column;width:100%}.search-container,.search-input{width:100%}.admin-tabs{flex-wrap:wrap}}.search-form{background-color:#f8f9fa;border-radius:5px;margin-bottom:20px;padding:15px}.search-form .form-row{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:15px}.search-form .form-group{flex:1 1;min-width:200px}.search-form label{display:block;font-weight:600;margin-bottom:5px}.search-form input,.search-form select{border:1px solid #ddd;border-radius:4px;padding:8px;width:100%}.search-actions{display:flex;gap:10px}.btn-search{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 15px}.btn-search:hover{background-color:#218838}.btn-search:disabled{background-color:#6c757d;cursor:not-allowed}.btn-reset{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 15px}.btn-reset:hover{background-color:#5a6268}.btn-reset:disabled{cursor:not-allowed;opacity:.7}.documents-list{margin-top:20px}.document-item{align-items:center;background-color:#f8f9fa;border-left:4px solid #28a745;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:10px;padding:15px}.document-details{flex:1 1}.document-actions .btn-view{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:6px 12px}.document-actions .btn-view:hover{background-color:#0069d9}.error-message{color:#dc3545;margin-bottom:15px}.no-results{background-color:#f8f9fa;border-radius:4px;color:#6c757d;padding:15px}@media (max-width:768px){.search-form .form-row{flex-direction:column;gap:10px}.search-actions{flex-direction:column;width:100%}.btn-reset,.btn-search{width:100%}.document-item{align-items:flex-start;flex-direction:column}.document-actions{margin-top:10px;width:100%}.document-actions .btn-view{width:100%}}.sub-tabs{border-bottom:1px solid #ddd;display:flex;margin-bottom:20px}.sub-tab-btn{background:none;border:none;color:#6c757d;cursor:pointer;font-weight:500;padding:10px 20px;position:relative}.sub-tab-btn.active,.sub-tab-btn:hover{color:#0d6efd}.sub-tab-btn.active:after{background-color:#0d6efd;bottom:-1px;content:"";height:2px;left:0;position:absolute;width:100%}.upload-section{margin-top:20px}.upload-form{background-color:#f8f9fa;border-radius:5px;margin-bottom:20px;padding:20px}.form-text{color:#6c757d;display:block;font-size:.875rem;margin-top:5px}.form-actions{margin-top:20px}.btn-primary{background-color:#0d6efd;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 15px}.btn-primary:hover{background-color:#0b5ed7}.btn-primary:disabled{background-color:#6c757d;cursor:not-allowed}.btn-secondary{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 15px}.btn-secondary:hover{background-color:#5a6268}.btn-secondary:disabled{cursor:not-allowed;opacity:.7}.upload-result{background-color:#f8f9fa;border-left:4px solid #28a745;border-radius:5px;margin-top:20px;padding:20px}.result-details{margin-top:15px}.user-created-info{background-color:#e2f0fb;border-radius:4px;margin-top:15px;padding:10px}.success-text{color:#28a745;font-weight:500}.error-text{color:#dc3545;font-weight:500}.upload-details-list{list-style:none;margin-top:10px;padding:0}.upload-detail-item{background-color:#fff;border-left:4px solid #ddd;border-radius:4px;margin-bottom:10px;padding:10px}.upload-detail-item.success{border-left-color:#28a745}.upload-detail-item.error{border-left-color:#dc3545}.detail-file{font-weight:500;margin-bottom:5px}.detail-info{color:#6c757d}.detail-error{color:#dc3545}.success-badge{background-color:#28a745;border-radius:4px;color:#fff;display:inline-block;font-size:.9em;margin-right:5px;padding:2px 8px}input[type=file].form-control{padding:6px}@media (max-width:768px){.sub-tabs{flex-wrap:wrap}.upload-form{padding:15px}}.upload-tab-btn{background-color:#f0f7ff;border:1px dashed #0d6efd;color:#0d6efd;font-weight:700;position:relative;transition:all .2s}.upload-tab-btn:before{content:"⬆️";margin-right:5px}.upload-tab-btn.active,.upload-tab-btn:hover{background-color:#e6f0ff}.upload-tab-btn.active{border:1px solid #0d6efd}.btn-upload{background-color:#f0f7ff;border:1px dashed #0d6efd;border-radius:4px;color:#0d6efd;cursor:pointer;font-weight:700;margin-right:10px;padding:8px 15px}.btn-upload:hover{background-color:#e6f0ff}.floating-upload-btn{align-items:center;background-color:#0d6efd;border-radius:50%;bottom:30px;box-shadow:0 4px 10px #0003;color:#fff;cursor:pointer;display:flex;font-size:24px;height:60px;justify-content:center;position:fixed;right:30px;transition:all .3s;width:60px;z-index:1000}.floating-upload-btn:hover{background-color:#0b5ed7;transform:scale(1.1)}@media (max-width:768px){.floating-upload-btn{bottom:20px;font-size:20px;height:50px;right:20px;width:50px}}.change-password-page{display:flex;flex-direction:column;min-height:100vh}.change-password-content{flex:1 1;padding:30px 0}.password-form-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;margin:0 auto;max-width:600px;padding:25px}.password-form-container h2{color:#2c3e50;font-size:1.5rem;margin-bottom:20px;margin-top:0;text-align:center}.password-requirements{background-color:#f8f9fa;border-left:3px solid #6c757d;border-radius:4px;font-size:.85em;margin:15px 0;padding:12px}.password-requirements p{font-weight:500;margin-bottom:5px;margin-top:0}.password-requirements ul{margin:5px 0;padding-left:20px}.password-requirements li{color:#6c757d;margin-bottom:3px}.password-requirements li.requirement-met{color:#28a745;font-weight:500}.password-requirements li.requirement-met:before{color:#28a745;content:"✓ "}.form-buttons{display:flex;gap:10px;justify-content:space-between;margin-top:20px}.btn-cancel{background-color:#e9ecef;border:1px solid #ced4da;color:#495057;flex:1 1}.btn-cancel:hover{background-color:#dee2e6}.btn-submit{background-color:#3498db;color:#fff;flex:2 1}.btn-submit:hover{background-color:#2980b9}.btn-cancel:disabled,.btn-submit:disabled{cursor:not-allowed;opacity:.65}.salary-page{display:flex;flex-direction:column;min-height:100vh}.salary-content{flex:1 1;padding:30px 0}.salary-panel{background-color:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:20px}.panel-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.panel-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.panel-actions{align-items:flex-end;display:flex;flex-direction:column;gap:15px}.btn-upload-slip{align-items:center;background-color:#f0f7ff;border:1px dashed #0d6efd;border-radius:4px;color:#0d6efd;cursor:pointer;display:flex;font-weight:500;gap:5px;padding:8px 15px;transition:all .2s}.btn-upload-slip:hover{background-color:#e6f0ff;transform:translateY(-2px)}.filter-section{display:flex;gap:15px}.filter-group{align-items:center;display:flex;gap:8px}.filter-group label{color:#34495e;font-weight:500}.filter-select{border:1px solid #ddd;border-radius:4px;color:#2c3e50;font-size:14px;padding:8px 10px}.filter-select:focus{border-color:#3498db;outline:none}.no-data{color:#6c757d;font-style:italic;padding:20px;text-align:center}.action-btn.view{background-color:#e2f0fb;color:#0d6efd}.action-btn.view:hover{background-color:#cfe2ff}.action-btn.download{background-color:#d1e7dd;color:#0f5132}.action-btn.download:hover{background-color:#badbcc}.salary-info{margin-top:30px}.info-card{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:15px}.info-card h3{color:#2c3e50;font-size:1.1rem;margin-bottom:10px;margin-top:0}.info-card ul{margin:0;padding-left:20px}.info-card li{color:#495057;margin-bottom:5px}.alert{border-radius:4px;margin-bottom:15px;padding:10px 15px}.alert-danger{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.loading-screen{align-items:center;color:#3498db;display:flex;font-size:1.2rem;height:100vh;justify-content:center}@media (max-width:768px){.filter-section{flex-direction:column;gap:10px}.filter-group{width:100%}.filter-select{flex:1 1}}.admin-menu{position:relative}.admin-menu>a{align-items:center;display:flex}.admin-menu>a:after{content:"▼";font-size:10px;margin-left:5px}.admin-submenu{background-color:#fff;border-radius:4px;box-shadow:0 2px 10px #0000001a;display:none;left:0;min-width:180px;padding:10px 0;position:absolute;top:100%;z-index:100}.admin-menu:hover .admin-submenu{display:block}.admin-submenu a{color:#2c3e50;display:block;padding:8px 15px;text-decoration:none;transition:all .2s}.admin-submenu a:hover{background-color:#f8f9fa;color:#0d6efd}.admin-submenu a.highlight-upload{background-color:#f0f7ff;border-left:3px solid #0d6efd;color:#0d6efd;font-weight:500}.admin-submenu a.highlight-upload:hover{background-color:#e6f0ff}.admin-floating-menu{bottom:30px;position:fixed;right:30px;z-index:1000}.admin-floating-button{align-items:center;background-color:#0d6efd;border-radius:50%;box-shadow:0 4px 15px #0003;cursor:pointer;display:flex;height:80px;justify-content:center;transition:all .3s;width:80px}.admin-floating-button span{color:#fff;font-size:18px;font-weight:700}.admin-floating-button:hover{transform:scale(1.05)}.admin-floating-submenu{background-color:#fff;border-radius:8px;bottom:90px;box-shadow:0 2px 10px #0000001a;display:none;min-width:220px;padding:10px 0;position:absolute;right:0;z-index:100}.admin-floating-menu:hover .admin-floating-submenu{display:block}.admin-floating-submenu a{color:#2c3e50;display:block;font-weight:500;padding:12px 20px;text-decoration:none;transition:all .2s}.admin-floating-submenu a:hover{background-color:#f8f9fa;color:#0d6efd}.admin-floating-submenu a.highlight-upload{background-color:#f0f7ff;border-left:4px solid #0d6efd;color:#0d6efd;font-weight:700;padding-left:16px}.admin-floating-submenu a.highlight-upload:hover{background-color:#e6f0ff}@media (max-width:768px){.admin-floating-menu{bottom:20px;right:20px}.admin-floating-button{height:60px;width:60px}.admin-floating-submenu{bottom:70px}}.admin-upload-panel{background-color:#f8f9fa;border:1px solid #dce4ec;border-left:4px solid #0d6efd;border-radius:6px;box-shadow:0 2px 4px #0000000d;margin-bottom:25px;padding:20px}.admin-upload-panel h3{color:#0d6efd;font-size:1.2rem;margin-bottom:15px;margin-top:0}.upload-form-content{display:flex;flex-direction:column;gap:15px}.admin-upload-panel .form-row{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:15px}.admin-upload-panel .form-group{flex:1 1;min-width:200px}.admin-upload-panel label{color:#34495e;display:block;font-weight:500;margin-bottom:5px}.admin-upload-panel .form-control{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.admin-upload-panel .form-control:focus{border-color:#0d6efd;box-shadow:0 0 0 2px #0d6efd40;outline:none}.admin-upload-panel .form-actions{display:flex;gap:10px;margin-top:20px}.admin-upload-panel .btn-primary{background-color:#0d6efd;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s}.admin-upload-panel .btn-primary:hover{background-color:#0b5ed7}.admin-upload-panel .btn-primary:disabled{background-color:#74a8fe;cursor:not-allowed}.admin-upload-panel .btn-secondary{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s}.admin-upload-panel .btn-secondary:hover{background-color:#5a6268}.admin-upload-panel .btn-secondary:disabled{background-color:#a8adb1;cursor:not-allowed}@media (max-width:768px){.admin-upload-panel .form-row{flex-direction:column;gap:10px}.admin-upload-panel .form-group{width:100%}.admin-upload-panel .form-actions{flex-direction:column}.admin-upload-panel .btn-primary,.admin-upload-panel .btn-secondary{width:100%}}.admin-upload-banner{background-color:#0d6efd;box-shadow:0 3px 10px #0000001a;color:#fff;margin-bottom:20px;padding:15px 0}.upload-banner-content{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between}.upload-banner-content h2{flex:1 1;font-size:1.3rem;margin:0;min-width:200px}.upload-banner-content p{flex:2 1;font-size:.95rem;margin:0;min-width:300px;opacity:.9}.admin-upload-banner-btn{background-color:#fff;border:none;border-radius:4px;color:#0d6efd;cursor:pointer;font-size:1rem;font-weight:700;padding:10px 20px;transition:all .2s}.admin-upload-banner-btn:hover{background-color:#f0f0f0;transform:translateY(-2px)}@media (max-width:768px){.upload-banner-content{align-items:flex-start;flex-direction:column;text-align:left}.admin-upload-banner-btn{width:100%}}.user-role{background-color:#0000001a;border-radius:10px;font-size:.8rem;margin-left:5px;opacity:.8;padding:2px 6px}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#f5f7fa,#e4edf5);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100%;margin:0;overflow-x:hidden;padding:0}*{box-sizing:border-box}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
/*# sourceMappingURL=main.706e1748.css.map*/