@charset "UTF-8";.loading-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f7fafc}.loading-spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.loading-container p{margin-top:16px;font-size:14px;color:#718096}.sidebar{position:fixed;left:0;top:0;height:100vh;width:280px;background:linear-gradient(180deg,#f0f9ff,#e0f2fe,#bae6fd);color:#0f172a;display:flex;flex-direction:column;box-shadow:2px 0 25px #00000014,0 0 0 1px #fffc;z-index:1000;overflow:hidden;border-right:1px solid rgba(186,230,253,.3)}@media (max-width: 768px){.sidebar{top:60px;height:calc(100vh - 60px)}}.sidebar-branding{padding:32px 24px 28px;border-bottom:1px solid rgba(186,230,253,.4);background:linear-gradient(135deg,#ffffffe6,#f0f9ffcc)}.sidebar-primary-brand{display:flex;align-items:center;gap:14px;cursor:pointer;text-decoration:none;color:inherit;transition:all .3s cubic-bezier(.4,0,.2,1);padding:8px 12px;border-radius:12px;margin-bottom:16px}.sidebar-primary-brand:hover{background:#3b82f614;transform:translateY(-1px)}.sidebar-ssheavy-logo{width:42px;height:42px;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px #0000001a;border:1px solid rgba(186,230,253,.5)}.sidebar-brand-text{flex:1;display:flex;flex-direction:column;justify-content:center}.sidebar-brand-title{margin:0;font-size:24px;font-weight:700;color:#0f172a;line-height:1.2;letter-spacing:-.3px;text-shadow:0 1px 2px rgba(0,0,0,.1)}.sidebar-brand-tagline{margin:4px 0 0;font-size:11px;color:#0f172ab3;font-weight:500;letter-spacing:.5px;text-transform:uppercase;line-height:1.2;opacity:.9}.sidebar-secondary-brand{margin-top:20px;padding:16px 12px;background:#3b82f614;border-radius:8px;border:1px solid rgba(59,130,246,.15)}.sidebar-app-name{margin:0;font-size:18px;font-weight:600;color:#0369a1;line-height:1.2;letter-spacing:-.2px}.sidebar-app-subtitle{margin:4px 0 0;font-size:12px;color:#0f172abf;font-weight:500;line-height:1.3;opacity:.9}.sidebar-divider{height:1px;background:linear-gradient(90deg,rgba(59,130,246,.4) 0%,rgba(59,130,246,.2) 50%,transparent 100%);margin-top:24px}.sidebar-user{display:flex;align-items:center;padding:20px 24px;gap:16px;border-bottom:1px solid rgba(186,230,253,.3);background:#fffc;margin:16px;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000000d}.user-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#0369a1,#0284c7);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#f8fafc;box-shadow:0 4px 12px #3b82f633;border:2px solid rgba(255,255,255,.8)}.user-info{flex:1}.user-name{margin:0;font-size:16px;font-weight:600;color:#0f172a;line-height:1.2}.user-role{margin:4px 0 0;font-size:12px;color:#0f172ab3;text-transform:capitalize;font-weight:500;opacity:.9}.sidebar-nav{flex:1;padding:16px 0;overflow-y:auto;overflow-x:hidden;min-height:0}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:#bae6fd1a;border-radius:2px}.sidebar-nav::-webkit-scrollbar-thumb{background:#3b82f64d;border-radius:2px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#3b82f680}.sidebar-nav ul{list-style:none;padding:0;margin:0}.sidebar-nav li{margin:0}.nav-link{display:flex;align-items:center;padding:14px 24px;margin:2px 16px;color:#0f172abf;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:8px;position:relative;font-weight:500}.nav-link:before{content:"";position:absolute;left:0;top:0;height:100%;width:3px;background:linear-gradient(180deg,#0369a1,#0284c7);border-radius:0 2px 2px 0;transform:scaleY(0);transition:transform .3s ease;transform-origin:bottom}.nav-link:hover{background:#3b82f614;color:#0f172a;transform:translate(4px);box-shadow:0 4px 12px #3b82f61f}.nav-link:hover:before{transform:scaleY(1);transform-origin:top}.nav-link.active{background:linear-gradient(135deg,#3b82f626,#2563eb1a);color:#0f172a;font-weight:600;box-shadow:0 4px 16px #3b82f626;border:1px solid rgba(59,130,246,.2)}.nav-link.active:before{transform:scaleY(1)}.nav-label{font-size:14px;letter-spacing:.2px}.sidebar-footer{padding:20px 24px;border-top:1px solid rgba(186,230,253,.3);background:#fffc;margin:0 16px 16px;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000000d}.logout-btn{width:100%;padding:14px 24px;background:linear-gradient(135deg,#ef4444,#dc2626);border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#fef2f2;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px #ef44444d;position:relative;overflow:hidden}.logout-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.logout-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 8px 20px #ef444466}.logout-btn:hover:before{left:100%}.logout-btn:active{transform:translateY(0);box-shadow:0 2px 8px #ef44444d}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:60px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-bottom:1px solid rgba(186,230,253,.4);z-index:1001;align-items:center;padding:0 16px;box-shadow:0 2px 8px #00000014}.hamburger-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;flex-direction:column;gap:5px;z-index:1002}.hamburger-line{width:24px;height:2px;background:#0f172a;transition:all .3s ease;border-radius:2px}.hamburger-line.open:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.mobile-brand{flex:1;text-align:center;margin-left:-40px}.mobile-brand h1{margin:0;font-size:18px;font-weight:700;color:#0f172a}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999}@media (max-width: 768px){.mobile-header{display:flex}.sidebar-overlay{display:block}.sidebar{transform:translate(-100%);transition:transform .3s ease;z-index:1000;top:60px;height:calc(100vh - 60px)}.sidebar.mobile-open{transform:translate(0)}.sidebar.mobile-closed{transform:translate(-100%)}.sidebar-nav{-webkit-overflow-scrolling:touch}}@media (max-width: 480px){.sidebar{width:260px}.sidebar-brand-title{font-size:20px}.sidebar-app-name{font-size:16px}.nav-link{padding:12px 20px;margin:2px 12px}.sidebar-user{padding:16px 20px;margin:12px}.user-avatar{width:40px;height:40px;font-size:18px}.user-name{font-size:14px}.sidebar-footer{padding:16px 20px;margin:0 12px 12px}}.layout-container{display:flex;min-height:100vh;background:#f3f4f6}.layout-content{flex:1;margin-left:280px;padding:0;transition:margin-left .3s ease;overflow-x:hidden}@media (max-width: 768px){.layout-content{margin-left:0;margin-top:60px}}@media (max-width: 480px){.layout-content{padding:0}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#374151,#1f2937);padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:480px;padding:48px}.login-header{text-align:center;margin-bottom:40px}.login-primary-brand{display:flex;align-items:flex-start;justify-content:center;gap:20px;margin-bottom:28px}.login-ssheavy-logo{width:80px;height:80px;object-fit:contain;border-radius:12px;box-shadow:0 4px 12px #00000026}.login-ssheavy-logo-small{width:50px;height:50px;object-fit:contain;border-radius:8px;box-shadow:0 2px 8px #0000001a}.login-brand-text{text-align:left;display:flex;flex-direction:column;justify-content:center}.login-brand-title{font-size:36px;font-weight:700;color:#1f2937;margin:0;line-height:1.2;letter-spacing:-.5px}.login-brand-tagline{font-size:11px;color:#6b7280;font-weight:500;letter-spacing:.3px;text-transform:uppercase;margin:4px 0 0;line-height:1.2}.login-brand-title-small{font-size:28px;font-weight:700;color:#1f2937;margin:0;line-height:1.2;letter-spacing:-.3px}.login-brand-tagline-small{font-size:12px;color:#6b7280;font-weight:500;letter-spacing:.2px;margin:2px 0 0;line-height:1.2}.login-secondary-brand{margin-bottom:24px}.login-app-name{font-size:28px;font-weight:600;color:#3b82f6;margin:0 0 6px;line-height:1.2}.login-app-subtitle{font-size:14px;color:#6b7280;font-weight:500;margin:0;line-height:1.2}.login-case-logo-container{margin-top:20px;padding-top:20px;border-top:1px solid rgba(59,130,246,.2)}.login-case-logo{max-width:180px;height:auto;opacity:.8;transition:opacity .3s ease}.login-case-logo:hover{opacity:1}.login-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-size:14px;font-weight:600;color:#1f2937}.form-group input{padding:14px 18px;font-size:15px;border:2px solid #E5E7EB;border-radius:10px;transition:all .3s ease;outline:none;background-color:#f9fafb;color:#1f2937}.form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a;background-color:#fff}.form-group input:disabled{background-color:var(--background-color);cursor:not-allowed;opacity:.6}.btn-primary{padding:14px 28px;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;margin-top:8px;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.login-footer{margin-top:32px;text-align:center}.login-ssheavy-bottom{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(59,130,246,.1)}.login-ssheavy-logo-bottom{width:40px;height:40px;object-fit:contain;border-radius:6px;opacity:.8}.login-ssheavy-text{display:flex;flex-direction:column;align-items:flex-start}.login-ssheavy-name{font-size:16px;font-weight:600;color:#1f2937;margin:0;line-height:1.2}.login-ssheavy-tagline{font-size:10px;color:#6b7280;font-weight:500;letter-spacing:.3px;text-transform:uppercase;margin:2px 0 0;line-height:1.2}.link-primary{color:var(--primary-sky-blue);text-decoration:none;font-weight:600}.text-muted{font-size:12px;color:var(--text-muted);margin:0}@media (max-width: 480px){.login-card{padding:32px 24px}.login-header h1{font-size:24px}}.register-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.register-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001a;width:100%;max-width:480px;padding:40px}.register-header{text-align:center;margin-bottom:32px}.register-primary-brand{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:24px}.register-ssheavy-logo-small{width:50px;height:50px;object-fit:contain;border-radius:8px;box-shadow:0 2px 8px #0000001a}.register-brand-text{text-align:left;display:flex;flex-direction:column;justify-content:center}.register-brand-title-small{font-size:28px;font-weight:700;color:#1a202c;margin:0;line-height:1.2;letter-spacing:-.3px}.register-brand-tagline-small{font-size:12px;color:#718096;font-weight:500;letter-spacing:.2px;margin:2px 0 0;line-height:1.2}.register-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#2d3748}.form-group input{padding:12px 16px;font-size:14px;border:1px solid #e2e8f0;border-radius:8px;transition:all .2s;outline:none}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background-color:#f7fafc;cursor:not-allowed;opacity:.6}.form-group input.input-error{border-color:#fc8181}.form-group input.input-error:focus{border-color:#fc8181;box-shadow:0 0 0 3px #fc81811a}.error-message{font-size:12px;color:#e53e3e;margin-top:-4px}.alert{padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:4px}.btn-primary{padding:12px 24px;font-size:14px;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;cursor:pointer;transition:all .2s;margin-top:8px}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.register-footer{margin-top:32px;text-align:center}.register-ssheavy-bottom{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(102,126,234,.1)}.register-ssheavy-logo-bottom{width:40px;height:40px;object-fit:contain;border-radius:6px;opacity:.8}.register-ssheavy-text{display:flex;flex-direction:column;align-items:flex-start}.register-ssheavy-name{font-size:16px;font-weight:600;color:#1a202c;margin:0;line-height:1.2}.register-ssheavy-tagline{font-size:10px;color:#718096;font-weight:500;letter-spacing:.3px;text-transform:uppercase;margin:2px 0 0;line-height:1.2}.register-footer p{font-size:14px;color:#718096;margin:8px 0}.link-primary{color:#667eea;text-decoration:none;font-weight:600}.link-primary:hover{text-decoration:underline}.text-muted{font-size:12px;color:#a0aec0;margin:8px 0 0}.alert.alert-info{background:#bee3f8;border-left:4px solid #3182ce;padding:16px;border-radius:6px;margin-bottom:24px}.alert.alert-info h3{margin:0 0 8px;font-size:16px;color:#2c5282}.alert.alert-info p{margin:0;font-size:14px;color:#2c5282}.info-box{background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:16px;margin-bottom:20px}.info-box h4{margin:0 0 12px;font-size:15px;color:#2d3748;font-weight:600}.info-box ol,.info-box ul{margin:0;padding-left:20px;color:#4a5568;font-size:14px}.info-box li{margin-bottom:8px}.info-box ul ul{margin-top:8px}@media (max-width: 480px){.register-card{padding:32px 24px}.register-header h1{font-size:24px}.register-form{gap:16px}}.dashboard-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.dashboard-container{padding:20px;max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:30px;display:flex;justify-content:space-between;align-items:flex-start}.header-left h1{font-size:32px;font-weight:700;color:var(--text-color);margin:0 0 8px}.header-left p{font-size:16px;color:var(--text-muted);margin:0}.header-right{display:flex;align-items:center}.logout-btn{padding:8px 16px;font-size:14px;font-weight:500;color:var(--text-color);background:var(--background-color);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s}.logout-btn:hover{background:#fee2e2;border-color:#dc2626;color:#dc2626}.dashboard-navigation{margin-bottom:40px}.dashboard-navigation h2{font-size:20px;font-weight:600;color:var(--text-color);margin:0 0 20px;padding-bottom:8px;border-bottom:2px solid var(--border-color)}.nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.nav-card{border-radius:12px;padding:20px;box-shadow:0 2px 4px #0000000f;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;cursor:pointer;transition:all .2s;text-align:left;width:100%;border:none;background:#fff}.nav-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026;border-color:var(--primary-sky-blue)}.nav-icon{width:48px;height:48px;border-radius:10px;background:#f8fafc;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;color:#475569;transition:all .3s ease}.nav-card:hover .nav-icon{background:#fff;border-color:#cbd5e1;color:#334155;transform:scale(1.05)}.nav-content h3{font-size:16px;font-weight:600;color:var(--text-color);margin:0 0 4px}.nav-content p{font-size:14px;color:var(--text-muted);margin:0;line-height:1.4}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:40px}.stat-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 6px #00000012;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;background:#f8fafc;border:2px solid #e2e8f0;color:#475569;transition:all .3s ease}.stat-card:hover .stat-icon{background:#fff;border-color:#cbd5e1;color:#334155;transform:scale(1.05)}.stat-icon.pending{border-color:#f59e0b;background:#fefce8}.stat-icon.money{border-color:#10b981;background:#ecfdf5}.stat-icon.users{border-color:#3b82f6;background:#eff6ff}.stat-icon.journey{border-color:#8b5cf6;background:#f3e8ff}.stat-content h3{font-size:28px;font-weight:700;color:var(--text-color);margin:0 0 4px}.stat-content p{font-size:14px;color:var(--text-muted);margin:0;font-weight:500}.dashboard-content{display:grid;gap:30px}.dashboard-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 6px #00000012;border:1px solid #e2e8f0}.dashboard-section h2{font-size:20px;font-weight:600;color:var(--text-color);margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--border-color)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--background-color);border-radius:8px;border:1px solid var(--border-color)}.stat-label{font-size:14px;color:var(--text-color);font-weight:500}.stat-value{font-size:18px;font-weight:700}.stat-value.approved{color:#059669}.stat-value.pending{color:#d97706}.stat-value.rejected{color:#dc2626}.stat-value.total{color:#2563eb}.spenders-list{display:flex;flex-direction:column;gap:12px}.spender-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--background-color);border-radius:8px;border:1px solid var(--border-color);transition:background-color .2s}.spender-item:hover{background:#f1f5f9}.spender-rank{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary-sky-blue),var(--primary-light-green));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.spender-info h4{font-size:16px;font-weight:600;color:var(--text-color);margin:0 0 4px}.spender-info p{font-size:14px;color:var(--text-muted);margin:0}.spender-amount{margin-left:auto;text-align:right}.spender-amount .amount{font-size:18px;font-weight:700;color:#059669;display:block}.spender-amount .count{font-size:12px;color:var(--text-muted)}.balance-list{display:flex;flex-direction:column;gap:12px}.balance-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--primary-light-green-light);border-radius:8px;border:1px solid var(--primary-light-green)}.employee-info h4{font-size:16px;font-weight:600;color:var(--text-color);margin:0 0 4px}.employee-info p{font-size:14px;color:var(--text-muted);margin:0}.balance-amount{font-size:18px;font-weight:700}.loading-spinner{display:flex;justify-content:center;align-items:center;padding:40px}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--primary-sky-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{text-align:center;padding:40px}.error-message p{color:#dc2626;margin-bottom:16px;font-size:16px}.btn-secondary{padding:8px 16px;font-size:14px;font-weight:500;color:var(--text-color);background:var(--background-color);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--primary-sky-blue-light);border-color:var(--primary-sky-blue)}.no-data{text-align:center;color:var(--text-muted);font-style:italic;padding:20px;margin:0}@media (max-width: 768px){.dashboard-container{padding:16px}.dashboard-header{flex-direction:column;align-items:flex-start;gap:16px}.header-right{align-self:flex-end}.dashboard-grid{grid-template-columns:1fr;gap:16px}.nav-grid{grid-template-columns:1fr;gap:12px}.nav-card{padding:16px}.nav-icon{width:40px;height:40px;font-size:18px}.stat-card,.dashboard-section{padding:20px}.stats-grid{grid-template-columns:1fr;gap:12px}.spender-item,.balance-item{flex-direction:column;align-items:flex-start;gap:8px}.spender-amount{margin-left:0;text-align:left}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--card-background);border-radius:8px;max-width:1100px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2{margin:0;font-size:1.625rem;color:#1a202c}.close-btn{background:none;border:none;font-size:2rem;color:#718096;cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.close-btn:hover{background:#f7fafc;color:#2d3748}.modal-body{padding:1.5rem}.info-section{margin-bottom:2rem}.info-section h3{margin:0 0 1rem;font-size:1.25rem;color:#2d3748;border-bottom:2px solid #e2e8f0;padding-bottom:.5rem}.info-section h4{margin:1rem 0 .5rem;font-size:1rem;color:#4a5568}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item label{font-size:.875rem;font-weight:600;color:#718096}.info-item span{font-size:.9rem;color:#2d3748;word-wrap:break-word;overflow-wrap:break-word}.journey-map{width:100%;height:auto;border-radius:8px;border:1px solid #e2e8f0}.distance-table{width:100%;border-collapse:collapse;margin-top:1rem}.distance-table th,.distance-table td{padding:.75rem;text-align:left;border:1px solid #e2e8f0;font-size:.875rem}.distance-table th{background:#f7fafc;font-weight:600;color:#4a5568}.distance-table tbody tr:hover{background:#f7fafc}.selected-row{background:#ebf8ff!important}.admin-distance-input{width:100%;padding:.5rem;border:1px solid #cbd5e0;border-radius:4px;font-size:.875rem}.admin-distance-input:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.variance-info{margin-top:1rem;padding:.75rem;background:#f7fafc;border-radius:4px;font-size:.875rem;word-wrap:break-word;overflow-wrap:break-word}.attachments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.attachment-item{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.proof-image{width:100%;height:150px;object-fit:cover;cursor:pointer;transition:transform .2s}.proof-image:hover{transform:scale(1.05)}.proof-link{display:block;padding:1rem;text-align:center;color:#4299e1;text-decoration:none;font-size:.875rem}.proof-link:hover{background:#f7fafc}.admin-notes-textarea{width:100%;padding:.75rem;border:1px solid #cbd5e0;border-radius:4px;font-size:.875rem;font-family:inherit;resize:vertical}.admin-notes-textarea:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.admin-notes-textarea:disabled{background:#f7fafc;cursor:not-allowed}.amount-summary{background:#f7fafc;padding:1rem;border-radius:8px;border:1px solid #e2e8f0}.amount-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.875rem}.amount-row:not(:last-child){border-bottom:1px solid #e2e8f0}.approved-amount{color:#38a169;font-size:1.125rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e2e8f0}.btn-secondary{background:#e2e8f0;color:#2d3748}.btn-secondary:hover:not(:disabled){background:#cbd5e0}.btn-success{background:#48bb78;color:#fff}.btn-success:hover:not(:disabled){background:#38a169}.btn-danger{background:#f56565;color:#fff}.btn-danger:hover:not(:disabled){background:#e53e3e}.error-message{padding:1rem;margin-bottom:1rem;background:#fed7d7;color:#742a2a;border-radius:6px;border:1px solid #fc8181;font-size:.875rem}.journey-total-section{margin-top:1.5rem;padding:1rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #0ea5e9;border-radius:8px}.journey-total-section h4{margin:0 0 1rem;color:#0c4a6e;font-size:1rem;font-weight:600}.journey-total-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.total-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:#fff;border-radius:6px;border:1px solid #e0f2fe}.total-item label{font-size:.875rem;font-weight:600;color:#64748b}.total-item .amount{font-size:1.125rem;font-weight:700;color:#0f172a}.total-item .count{font-size:.75rem;color:#64748b;font-weight:500}.total-item.approved .amount{color:#059669}.total-item.pending .amount{color:#d97706}.total-item.total-row{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;border:none}.total-item.total-row label{color:#ffffffe6}.total-item.total-row .amount{color:#fff;font-size:1.25rem}.journey-total-loading{text-align:center;padding:1rem;color:#64748b;font-style:italic}@media (max-width: 768px){.modal-content{max-height:95vh}.info-grid,.journey-total-grid{grid-template-columns:1fr}.distance-table{font-size:.75rem}.distance-table th,.distance-table td{padding:.5rem}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}}.approvals-page{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{margin:0;font-size:2rem;color:var(--text-color)}.bulk-approve-controls{display:flex;align-items:center;gap:1rem}.variance-input-group{display:flex;align-items:center;gap:.5rem}.variance-input-group label{font-size:.875rem;font-weight:600;color:var(--text-color);white-space:nowrap}.variance-input{width:80px;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.875rem;background-color:var(--card-background);color:var(--text-color)}.variance-input:focus{outline:none;border-color:var(--primary-sky-blue);box-shadow:0 0 0 3px #4299e11a}.filters-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;padding:1.5rem;background:var(--background-color);border-radius:8px;border:1px solid var(--border-color)}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:600;color:var(--text-color)}.filter-group input,.filter-group select{padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.875rem;background-color:var(--card-background);color:var(--text-color)}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--primary-sky-blue);box-shadow:0 0 0 3px #4299e11a}.table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.expenses-table{width:100%;border-collapse:collapse}.expenses-table thead{background:var(--background-color);border-bottom:2px solid var(--border-color)}.expenses-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:var(--text-color);text-transform:uppercase;letter-spacing:.05em}.expenses-table td{padding:1rem;border-bottom:1px solid var(--border-color);font-size:.875rem;color:var(--text-color)}.expenses-table tbody tr:hover{background:var(--background-color)}.clickable-row{cursor:pointer}.capitalize{text-transform:capitalize}.variance-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.variance-low{background:#c6f6d5;color:#22543d}.variance-medium{background:#fef5e7;color:#975a16}.variance-high{background:#fed7d7;color:#742a2a}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-pending{background:#fef5e7;color:#975a16}.status-approved{background:#c6f6d5;color:#22543d}.status-rejected{background:#fed7d7;color:#742a2a}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:var(--primary-sky-blue);color:#fff}.btn-primary:hover:not(:disabled){background:#2c5282}.btn-primary:disabled{background:var(--border-color);cursor:not-allowed;opacity:.6}.error-message{padding:1rem;margin-bottom:1rem;background:var(--primary-light-green-light);color:#742a2a;border-radius:6px;border:1px solid var(--primary-light-green)}.tabs-container{display:flex;margin-bottom:2rem;border-bottom:1px solid var(--border-color)}.tab-button{padding:.75rem 1.5rem;border:none;background:none;color:var(--text-muted);font-size:.875rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab-button:hover{color:var(--text-color)}.tab-button.active{color:var(--primary-sky-blue);border-bottom-color:var(--primary-sky-blue)}.expense-id{font-family:monospace;font-size:.75rem;color:var(--text-muted)}.description-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.receipt-badge{display:inline-block;padding:.25rem .5rem;background:var(--primary-light-green);color:var(--primary-dark-green);border-radius:4px;font-size:.75rem;font-weight:600}.bulk-badge{display:inline-block;padding:.25rem .5rem;background:var(--primary-sky-blue);color:#fff;border-radius:4px;font-size:.75rem;font-weight:600}.individual-badge{display:inline-block;padding:.25rem .5rem;background:var(--border-color);color:var(--text-muted);border-radius:4px;font-size:.75rem;font-weight:600}.pagination-container{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding:1rem}.page-info{font-size:.875rem;color:var(--text-muted);font-weight:600}.btn-secondary{background:var(--background-color);color:var(--text-color);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--border-color)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.approvals-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.filters-container{grid-template-columns:1fr}.tabs-container{flex-wrap:wrap}.tab-button{flex:1;text-align:center}.table-container{overflow-x:auto}.expenses-table{min-width:1200px}.pagination-container{flex-direction:column;gap:.5rem}}.journeys-page{padding:20px;max-width:1400px;margin:0 auto}.page-header p{color:#718096;font-size:1rem;margin:0}.filters-container{display:flex;gap:20px;margin-bottom:30px;padding:20px;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;min-width:150px}.filter-group label{font-weight:600;color:#4a5568;margin-bottom:8px;font-size:.875rem}.filter-group input,.filter-group select{padding:8px 12px;border:1px solid #cbd5e0;border-radius:6px;font-size:.875rem;background:#fff}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;border:1px solid #e2e8f0}.journeys-table{width:100%;border-collapse:collapse}.journeys-table th,.journeys-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e2e8f0}.journeys-table th{background:#f7fafc;font-weight:600;color:#2d3748;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;position:sticky;top:0;z-index:10}.journeys-table tbody tr:hover{background:#f7fafc}.journeys-table tbody tr:last-child td{border-bottom:none}.employee-info{display:flex;flex-direction:column}.employee-name{font-weight:600;color:#2d3748;margin-bottom:2px}.employee-id{font-size:.75rem;color:#718096}.location-cell{max-width:200px}.location-text{font-size:.875rem;color:#2d3748;margin-bottom:2px;word-wrap:break-word}.coordinates{font-size:.75rem;color:#a0aec0;font-family:Monaco,Menlo,monospace}.no-data{color:#a0aec0;font-style:italic}.status-badge{padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-active{background:#c6f6d5;color:#22543d}.status-completed{background:#bee3f8;color:#2a4365}.status-cancelled{background:#fed7d7;color:#742a2a}.status-default{background:#e2e8f0;color:#4a5568}.empty-state{padding:60px 20px;text-align:center;color:#718096}.empty-state p{font-size:1.125rem;margin:0}.loading{text-align:center;padding:40px;color:#718096;font-size:1.125rem}.error-message{background:#fed7d7;color:#742a2a;padding:12px 16px;border-radius:6px;margin-bottom:20px;border:1px solid #feb2b2}@media (max-width: 768px){.journeys-page{padding:10px}.filters-container{flex-direction:column;gap:15px}.filter-group{min-width:auto}.journeys-table{font-size:.875rem}.journeys-table th,.journeys-table td{padding:8px 12px}.location-cell{max-width:150px}}@media (max-width: 640px){.table-container{overflow-x:auto}.journeys-table{min-width:800px}}.balances-page{padding:20px;max-width:1200px;margin:0 auto}.page-header{margin-bottom:30px}.page-header h1{color:#1a202c;font-size:2rem;font-weight:700;margin-bottom:8px}.page-header p{color:#718096;font-size:1rem}.balances-content{display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:start}@media (max-width: 1024px){.balances-content{grid-template-columns:1fr}}.balance-form-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 6px -1px #0000001a}.balance-form-section h2{color:#1a202c;font-size:1.5rem;font-weight:600;margin-bottom:20px}.balance-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;color:#374151;margin-bottom:6px;font-size:.875rem}.form-group input,.form-group select{padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;color:#374151;background:#fff;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input::placeholder{color:#9ca3af}.balances-overview-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 6px -1px #0000001a}.balances-overview-section h2{color:#1a202c;font-size:1.5rem;font-weight:600;margin-bottom:20px}.balances-table-container{overflow-x:auto}.balances-table{width:100%;border-collapse:collapse;font-size:.875rem}.balances-table th,.balances-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e5e7eb}.balances-table th{background:#f9fafb;font-weight:600;color:#374151;white-space:nowrap}.balances-table tbody tr:hover{background:#f9fafb}.balance-amount{font-weight:600;font-family:Monaco,Menlo,monospace}.balance-amount.positive{color:#059669}.balance-amount.zero{color:#6b7280}.balance-amount.negative{color:#dc2626}.status-badge{padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fee2e2;color:#991b1b}.error-message,.success-message{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.error-message{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.success-message{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.no-employees{text-align:center;padding:40px 20px;color:#6b7280}.no-employees p{font-size:1.125rem;margin-bottom:8px}.no-employees span{font-size:.875rem;color:#9ca3af}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;text-align:center}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}@media (max-width: 768px){.balances-page{padding:16px}.balances-content{gap:20px}.balance-form-section,.balances-overview-section{padding:16px}.balances-table th,.balances-table td{padding:8px 12px;font-size:.8rem}.form-group input,.form-group select{padding:10px 12px;font-size:.9rem}}.employees-page{padding:2rem;max-width:1400px;margin:0 auto;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#f8fafc,#f1f5f9);min-height:100vh}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #00000014,0 1px 4px #0000000f;border:1px solid rgba(148,163,184,.1)}.page-header h1{margin:0;font-size:2.25rem;font-weight:700;color:#1e293b;letter-spacing:-.025em;background:linear-gradient(135deg,#1e293b,#334155);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.filters-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem;padding:2rem;background:#fff;border-radius:16px;border:1px solid rgba(148,163,184,.1);box-shadow:0 4px 20px #00000014,0 1px 4px #0000000f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filter-group{display:flex;flex-direction:column;gap:.75rem}.filter-group label{font-size:.875rem;font-weight:600;color:#374151;letter-spacing:.025em;text-transform:uppercase}.filter-group input,.filter-group select{padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:10px;font-size:.875rem;background-color:#f8fafc;color:#1e293b;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a,0 4px 12px #3b82f626;background-color:#fff;transform:translateY(-1px)}.filter-group input::placeholder{color:#94a3b8}.table-container{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;overflow:hidden;border:1px solid rgba(148,163,184,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.employees-table{width:100%;border-collapse:collapse;font-family:inherit}.employees-table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e2e8f0}.employees-table th{padding:1.25rem 1.5rem;text-align:left;font-size:.8125rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}.employees-table td{padding:1.25rem 1.5rem;border-bottom:1px solid #f1f5f9;font-size:.875rem;color:#334155;transition:all .2s ease}.employees-table tbody tr{transition:all .3s cubic-bezier(.4,0,.2,1)}.employees-table tbody tr:hover{background:linear-gradient(135deg,#f8fafc,#f0f9ff);transform:translate(2px);box-shadow:0 4px 16px #3b82f61a}.employee-row{cursor:pointer;position:relative}.employee-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#3b82f6,#60a5fa);transform:scaleY(0);transition:transform .3s ease;border-radius:0 2px 2px 0}.employee-row:hover:before{transform:scaleY(1)}.role-badge,.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.role-superadmin{background:#fbd38d;color:#744210}.role-admin{background:#fed7d7;color:#742a2a}.role-user,.status-badge.active{background:#c6f6d5;color:#22543d}.status-badge.inactive{background:#fed7d7;color:#742a2a}.action-buttons{display:flex;gap:.5rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;display:inline-block;text-align:center;font-family:inherit;letter-spacing:.025em;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn:hover:before{left:100%}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 20px #3b82f666}.btn-primary:disabled{background:#94a3b8;cursor:not-allowed;opacity:.6;box-shadow:none}.btn-secondary{background:#fff;color:#475569;border:2px solid #e2e8f0;box-shadow:0 2px 8px #0000000d}.btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef44444d}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 8px 20px #ef444466}.btn-small{padding:.5rem 1rem;font-size:.8125rem;border-radius:8px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:modalFadeIn .3s cubic-bezier(.4,0,.2,1)}@keyframes modalFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.modal-content{background:#fff;border-radius:20px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px #00000040,0 10px 25px #0000001a;border:1px solid rgba(148,163,184,.1);animation:modalSlideIn .4s cubic-bezier(.4,0,.2,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:20px 20px 0 0}.modal-header h2{margin:0;font-size:1.625rem;font-weight:700;color:#1e293b;letter-spacing:-.025em}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b;padding:.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;transition:all .2s ease}.modal-close:hover{color:#334155;background:#f1f5f9}.employee-form{padding:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-color)}.form-group input,.form-group select{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:.875rem;background-color:#fff;color:var(--text-color)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-sky-blue);box-shadow:0 0 0 3px #4299e11a}.form-hint{font-size:.75rem;color:var(--text-muted)}.form-section{margin-bottom:1.5rem;padding:1rem;background:var(--background-color);border-radius:6px}.form-section h3{margin:0 0 1rem;font-size:1rem;color:var(--text-color)}.checkbox-group{flex-direction:row;align-items:center}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox]{width:auto;margin:0}.generated-password{padding:1rem;background:#c6f6d5;border:1px solid #9ae6b4;border-radius:6px;margin-bottom:1rem;color:#22543d}.generated-password strong{color:#22543d}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color)}.delete-modal{max-width:400px}.delete-confirmation{padding:1.5rem}.delete-confirmation p{margin:0 0 1rem;color:var(--text-color)}.delete-warning{color:#e53e3e;font-weight:600}.empty-state{padding:3rem;text-align:center;color:var(--text-muted)}.loading{text-align:center;padding:3rem;color:var(--text-muted)}.error-message{padding:1rem;margin-bottom:1rem;background:#fed7d7;color:#742a2a;border-radius:6px;border:1px solid #feb2b2}@media (max-width: 768px){.employees-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.filters-container,.form-row{grid-template-columns:1fr}.table-container{overflow-x:auto}.employees-table{min-width:800px}.action-buttons,.form-actions{flex-direction:column}.modal-content{width:95%;margin:1rem}}.assigned-to{color:var(--primary-sky-blue);font-weight:500}.unassigned{color:#e53e3e;font-style:italic}.not-applicable{color:#a0aec0;font-style:italic}.info-message{padding:.75rem 1rem;background:#bee3f8;border-left:4px solid var(--primary-sky-blue);border-radius:4px;margin-bottom:1rem;font-size:.875rem;color:#2c5282}.info-message strong{font-weight:600}.btn-danger:disabled{background:#cbd5e0;cursor:not-allowed;opacity:.6}.name-link{background:none;border:none;color:var(--primary-sky-blue);cursor:pointer;text-decoration:underline;font-size:inherit;font-family:inherit;padding:0}.name-link:hover{color:#2c5282}.details-modal{max-width:700px}.employee-details{padding:1.5rem}.details-section{margin-bottom:2rem}.details-section h3{margin:0 0 1rem;font-size:1.25rem;color:var(--text-color);border-bottom:2px solid var(--primary-sky-blue);padding-bottom:.5rem}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item label{font-size:.875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.detail-item span{font-size:.875rem;color:#334155;padding:.75rem 1rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s ease}.detail-item span:hover{background:#f1f5f9;border-color:#cbd5e1}.password-field{display:flex;align-items:center;gap:.75rem;font-family:Courier New,monospace;letter-spacing:1px;background:#ef44440d;padding:.5rem .75rem;border-radius:8px;border:1px solid rgba(239,68,68,.1)}.password-reveal-btn{padding:.375rem .75rem!important;background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important;border:none!important;border-radius:6px!important;font-size:.75rem!important;font-weight:600!important;cursor:pointer!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;box-shadow:0 2px 4px #ef444433!important;display:flex!important;align-items:center!important;justify-content:center!important;min-width:28px!important;height:28px!important}.password-reveal-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;transform:translateY(-1px)!important;box-shadow:0 4px 8px #ef44444d!important}.password-reveal-btn:active{transform:translateY(0)!important;box-shadow:0 2px 4px #ef444433!important}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width: 400px),(max-height: 550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.reports-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.reports-page{padding:24px;max-width:1400px;margin:0 auto}.reports-header{margin-bottom:32px}.reports-header h1{font-size:32px;font-weight:700;color:#1a202c;margin-bottom:8px}.reports-header .subtitle{font-size:16px;color:#718096;margin:0}.alert{padding:16px 20px;border-radius:8px;margin-bottom:24px;display:flex;align-items:center;gap:12px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background-color:#fff5f5;border:1px solid #fc8181;color:#c53030}.alert-success{background-color:#f0fff4;border:1px solid #68d391;color:#2f855a}.alert-icon{font-size:20px}.alert-close{margin-left:auto;background:none;border:none;font-size:24px;cursor:pointer;color:inherit;opacity:.6;transition:opacity .2s}.filter-panel{background:#fff;border-radius:12px;padding:28px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.filter-panel h2{font-size:20px;font-weight:600;color:#2d3748;margin-bottom:24px}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:28px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{font-size:14px;font-weight:600;color:#4a5568}.filter-select{padding:10px 14px;border:1px solid #cbd5e0;border-radius:6px;font-size:14px;color:#2d3748;background-color:#fff;transition:border-color .2s}.filter-select:focus{outline:none;border-color:#64748b;box-shadow:0 0 0 3px #64748b1a}.date-range-inputs{display:flex;gap:16px;flex-wrap:wrap}.date-input-wrapper{flex:1;min-width:200px;display:flex;flex-direction:column;gap:6px}.date-label{font-size:13px;font-weight:500;color:#718096}.date-input{padding:10px 14px;border:1px solid #cbd5e0;border-radius:6px;font-size:14px;color:#2d3748;width:100%;transition:border-color .2s}.date-input:focus{outline:none;border-color:#64748b;box-shadow:0 0 0 3px #64748b1a}.help-text{font-size:12px;color:#a0aec0;font-style:italic}.radio-group{display:flex;gap:16px;flex-wrap:wrap}.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#4a5568;font-weight:500}.radio-label input[type=radio]{cursor:pointer;width:18px;height:18px;accent-color:#64748b}.radio-label span{-webkit-user-select:none;user-select:none}.button-group{display:flex;justify-content:center;padding-top:12px;border-top:1px solid #e2e8f0}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.btn-primary{background-color:#475569;color:#fff}.btn-primary:hover:not(:disabled){background-color:#334155;transform:translateY(-1px);box-shadow:0 4px 12px #4755694d}.btn-primary:disabled{background-color:#cbd5e0;cursor:not-allowed;opacity:.6}.btn-generate{padding:14px 32px;font-size:16px}.btn-icon{font-size:20px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.info-panel{background:#f8fafc;border:1px solid #e2e8f0;color:#334155;border-radius:12px;padding:24px;margin-bottom:24px}.info-panel h3{font-size:18px;font-weight:600;margin-bottom:16px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-size:13px;opacity:.9;font-weight:500}.info-value{font-size:14px;font-weight:600}.instructions-panel{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.instructions-panel h3{font-size:18px;font-weight:600;color:#2d3748;margin-bottom:16px}.instructions-list{margin:0 0 16px 20px;padding:0;color:#4a5568;line-height:1.8}.instructions-list li{margin-bottom:8px;font-size:14px}.note{background-color:#f8fafc;padding:12px 16px;border-radius:6px;border-left:4px solid #64748b;font-size:14px;color:#334155;margin:0}.note strong{color:#334155}.error-message{background-color:#fff5f5;border:1px solid #fc8181;color:#c53030;padding:20px;border-radius:8px;text-align:center;font-size:16px;font-weight:500}@media (max-width: 768px){.reports-page{padding:16px}.reports-header h1{font-size:24px}.filter-grid{grid-template-columns:1fr}.date-range-inputs{flex-direction:column}.radio-group{flex-direction:column;gap:12px}.info-grid{grid-template-columns:1fr}}.admin-settings-page{max-width:1200px;margin:0 auto;padding:2rem}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;color:#1a202c;margin-bottom:.5rem}.page-header .subtitle{font-size:1rem;color:#718096;margin:0}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.5rem;position:relative}.alert-error{background-color:#fed7d7;color:#c53030;border:1px solid #fc8181}.alert-success{background-color:#c6f6d5;color:#2f855a;border:1px solid #68d391}.alert-icon{font-size:1.25rem}.alert-close{position:absolute;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit;opacity:.7;transition:opacity .2s}.alert-close:hover{opacity:1}.settings-container{display:grid;gap:1.5rem;margin-bottom:2rem}.setting-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s}.setting-card:hover{box-shadow:0 4px 6px #0000001a}.setting-header h3{font-size:1.25rem;color:#2d3748;margin:0 0 .5rem}.setting-description{font-size:.875rem;color:#718096;margin:0}.setting-body{margin-top:1.5rem}.setting-input-group{margin-bottom:1rem}.setting-input-group label{display:block;font-size:.875rem;font-weight:600;color:#4a5568;margin-bottom:.5rem}.input-with-actions{display:flex;align-items:center;gap:.75rem}.input-with-actions input{flex:1;max-width:300px;padding:.75rem 1rem;border:1px solid #cbd5e0;border-radius:8px;font-size:1rem;transition:border-color .2s}.input-with-actions input:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.input-with-actions input:disabled{background-color:#f7fafc;cursor:not-allowed}.input-suffix{font-size:.875rem;color:#718096;font-weight:500;white-space:nowrap}.validation-hint{font-size:.75rem;color:#a0aec0;margin:.5rem 0 0}.setting-actions{display:flex;gap:.75rem;margin-top:1rem}.btn{padding:.625rem 1.25rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:#4299e1;color:#fff}.btn-primary:hover:not(:disabled){background-color:#3182ce;transform:translateY(-1px);box-shadow:0 4px 6px #4299e14d}.btn-secondary{background-color:#e2e8f0;color:#4a5568}.btn-secondary:hover:not(:disabled){background-color:#cbd5e0}.setting-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.last-updated{font-size:.75rem;color:#a0aec0;margin:0}.info-panel{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:12px;margin-top:2rem}.info-panel h3{font-size:1.125rem;margin:0 0 1rem}.info-panel ul{margin:0;padding-left:1.5rem;list-style-type:disc}.info-panel li{margin-bottom:.5rem;line-height:1.6}.info-panel li:last-child{margin-bottom:0}.info-panel strong{font-weight:600}.empty-state{text-align:center;padding:3rem 1rem;color:#718096}.empty-state-content{max-width:500px;margin:0 auto}.empty-state-content h3{font-size:1.5rem;color:#2d3748;margin-bottom:1rem}.empty-state-description{font-size:.875rem;color:#a0aec0;margin-bottom:2rem;line-height:1.6}.btn-large{padding:1rem 2rem;font-size:1rem;border-radius:10px;min-width:200px}.spinner.small{width:16px;height:16px;border-width:2px;margin-right:.5rem}@media (max-width: 768px){.admin-settings-page{padding:1rem}.page-header h1{font-size:1.5rem}.setting-card{padding:1rem}.input-with-actions{flex-direction:column;align-items:stretch}.input-with-actions input{max-width:100%}.setting-actions{flex-direction:column}.btn{width:100%}}@media (max-width: 480px){.admin-settings-page{padding:.75rem}.page-header h1{font-size:1.25rem}.setting-header h3{font-size:1.125rem}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-color);color:var(--text-color)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.page{min-height:100vh;padding:40px 20px;max-width:1200px;margin:0 auto}.page h1{font-size:32px;font-weight:700;color:var(--text-color);margin-bottom:16px}.page p{font-size:16px;color:var(--text-muted)}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.p-1{padding:8px}.p-2{padding:16px}.p-3{padding:24px}.p-4{padding:32px}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1a202c;background-color:#f7fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary-sky-blue: #4299e1;--primary-sky-blue-light: #ebf8ff;--primary-light-green: #48bb78;--primary-light-green-light: #f0fff4;--background-color: #f7fafc;--text-color: #1a202c;--text-muted: #718096;--border-color: #e2e8f0;--card-background: #ffffff;--shadow-color: rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}#root{width:100%;min-height:100vh}
